Агуулгын хүснэгт:

Хүүхдийн унтлагын сургалтын цаг: 6 алхам (зурагтай)
Хүүхдийн унтлагын сургалтын цаг: 6 алхам (зурагтай)

Видео: Хүүхдийн унтлагын сургалтын цаг: 6 алхам (зурагтай)

Видео: Хүүхдийн унтлагын сургалтын цаг: 6 алхам (зурагтай)
Видео: Enji - Boom Boom (Music Video) - Cover 2024, Долдугаар сарын
Anonim
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг
Хүүхдийн унтах сургалтын цаг

Надад 4 настай ихрүүдээ бага зэрэг унтаж сурахад нь туслах цаг хэрэгтэй байсан (бямба гаригийн өглөө 5:30 цагт босоход хангалттай байсан), гэхдээ тэд одоохондоо цаг уншиж чадахгүй байна. Маш алдартай худалдааны сайт дээр цөөн хэдэн зүйлийг үзэж байгаад "Зүгээр л үүнийг хийхэд ямар хэцүү байх бол ?!"

Тиймээс би энэ төсөлд оролцохыг хүссэн зүйлээ энд оруулав. Энэ нь гурван өөр өнгийг харуулахын тулд зарим RGB LED -ийг ашигладаг (ихэнх нь надад өөр төслөөс тавь орчим нь байдаг). Улаан бол буцаад унтана гэсэн үг, сэрэхэд эрт байна. Шар гэдэг нь тэд босоод өрөөндөө чимээгүйхэн тоглож болно гэсэн үг юм. Ногоон гэдэг нь мэдээж та босч чадна гэсэн үг юм. Би бас цагийг тохируулахыг хүсч байсан, учир нь би зарим өдрүүдэд удаан унтмаар байна (Амралтын өдрүүд/Баярын өдрүүд гэх мэт ажлын өдрүүдэд гэх мэт).

Хангамж

Raspberry Pi Zero W

Хоёр RGB LED

220 Ом эсэргүүцэлтэй зургаан ширхэг

Файлууд (.stl, python, html) эндээс олдсон

Янз бүрийн жижиг эрэг, утас, жижиг хэсгүүдийг шаардлагатай бол.

Алхам 1: 3D хэвлэх

3D хэвлэх
3D хэвлэх
3D хэвлэх
3D хэвлэх
3D хэвлэх
3D хэвлэх

Охин маань үнэхээр ганц эвэрт эвэрт дуртай тул энэ төслийн хувьд би Riven02-ийн Unicorn Nightlight-ийг remix хийсэн нь Apachcreation-ийн Unicorn Trophy-ийн ремикс бөгөөд үүнийг Thingiverse.com дээрээс олж, Creative Commons-ийн арилжааны бус лицензийн дагуу ашиглаж болно. Би ганц эвэрт баазыг бөөрөлзгөнө pi тэгний тэжээлийн утсанд тааруулан өөрчилсөн. Би AMZ3D Red PLA -ийг тойрон хэвтэж байсан тул ганц эвэрт бааз, толгой нь улаан болно. Би эвэрт тунгалаг/тунгалаг PLA ашигласан. Миний ашиглаж байсан.stl файлууд болон тохиргоо нь:

Unicorn.stl

  • Давхаргын өндөр: 0.02
  • Ханын зузаан:.8
  • Ханын шугамын тоо: 2
  • Дүүргэлт: 15%
  • Дүүргэлтийн загвар: Сүлжээ

UnicornBase.stl

  • Давхаргын өндөр: 0.02
  • Ханын зузаан:.8
  • Ханын шугамын тоо: 2
  • Дүүргэлт: 15%
  • Дүүргэлтийн загвар: сүлжээ

Horn.stl

  • Давхаргын өндөр: 0.02
  • Ханын зузаан: 0.8
  • Ханын шугамын тоо: 3
  • Дүүргэлт: 0

Алхам 2: Хэлхээ

Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ

Хэлхээ нь маш хялбар байдаг. Би RGB -ийн янз бүрийн өнгийг асаах/унтраахыг хянахын тулд зургаан өөр GPIO зүү сонгосон. Эдгээр тээглүүр ба харгалзах LED өнгө нь:

  • 11 -ийг RGB 1 RED руу залга
  • 13 -ийг RGB 1 GREEN руу залга
  • 15 -ийг RGB 1 BLUE руу залга
  • 16 -г RGB 2 RED руу залга
  • 18 -ийг RGB 2 GREEN руу залга
  • 36 -г RGB 2 BLUE руу залга
  • Газар руу 39 зүү

Зүү бүрийг 220 Ом гүйдлийн хязгаарлах резистороор дамжуулан резистортой холбож өгдөг (мэдээжийн газраас бусад тохиолдолд).

Алхам 3: Raspberry Pi бэлтгэх

Би вэб интерфэйсийг ашиглан унтах дасгалжуулагчийн цагийг тохируулахыг хүсч байсан. Тиймээс би Raspberry Pi дээр Apache болон PHP сервер суулгах шаардлагатай болсон. Raspberry Pi дээр шинэ програм суулгахдаа хийх ёстой хамгийн эхний зүйл бол үүнийг бичиж өгөөрэй.

sudo apt-get update

Үүний дараа бид үнэхээр бизнесээ эхлүүлж чадна. Бид үүнийг Apache2 суулгаснаар хийх болно.

sudo apt -get apache2 -y суулгана уу

Энэ нь Apache вэб серверийг суулгах ёстой. Та үүнийг Raspberry pi дээрх хөтөч ашиглан шалгаж, дараах руу очиж үзээрэй.

localhost/

эсвэл өөр компьютерын хөтчөөс Raspberry Pi -ийн ip хаяг руу шилжих замаар. IP хаягийнхаа төрлийг олохын тулд:

хостын нэр

Эдгээрийг хийснээр Apache вэб серверийн анхдагч хуудас руу хөтлөх болно. Үүнийг/var/www/html/директорт байрлах index.html -ийг орлуулах замаар өөрчилж болно. Үүнийг өөрийн index.html файлаар орлуулж болно.

Дараа нь бид Apache вэб серверийг PHP файлуудыг ажиллуулахаар тохируулах болно. Бичиж эхлээрэй:

sudo apt-get php libapache2-mod-php -y суулгана уу

Та одоо sleepset.php файлыг/var/www/html дотор index.html файлтай хамт байрлуулах боломжтой байх ёстой.

Энэ хуудсыг өөрийн сүлжээнд ашиглахын тулд та Raspberry Pi -г статик IP хаягаар тохируулах хэрэгтэй болно (эсвэл сүлжээгээ шинэчлэх үед та шинэ IP хаягийг олохыг оролдож болно). Үүнийг ажиллуулахын тулд та хэд хэдэн файлыг засах хэрэгтэй болно. Та /etc/dhcpcd.conf файлыг дараах байдлаар засах хэрэгтэй болно.

wlan0 интерфэйс

статик ip_address = 192.168.1. статик чиглүүлэгчид = 192.168.1.1 статик домэйны_ нэр_серверүүд = 192.168.1.1

Сүлжээний мэдээллээ солино уу. Одоо хийх ёстой цорын ганц зүйл бол дахин ачаалах явдал юм.

sudo дахин ачаална уу

Google драйвын холбоосоос файлуудыг байрлуулах нь дараахь байдлаар байх ёстой.

  • index.html болон sleepset.php файлуудыг/var/www/html директорт байрлуулах ёстой
  • sleepset.txt болон sleeptrainer1_1.py файлуудыг/home/pi/pythoncode лавлах санд байрлуулах ёстой (зөвлөгөө: та энэ лавлахыг үүсгэх хэрэгтэй болно)

Эдгээр файлыг зөв директорт байрлуулсны дараа rc.local файлыг өөрчлөх үед sleeptrainer1_1.py програмыг ажиллуулах шаардлагатай. Rc.local файлыг өөрчлөхийн тулд танд root түвшний хандалт хэрэгтэй болно.

sudo нано /etc/rc.local

Редактор дээр доош гүйлгээд 0 мөрөөс гарахын өмнөхөн дараахийг нэмнэ үү.

python /home/pi/pythoncode/sleeptrainer1_1.py &

Энд хоёр зүйлийг санаж байх хэрэгтэй.

  1. Линукс нь sleeptraner1_1.py файлыг rc.local -тэй ижил директор дотор байрладаг гэж бодохгүй байхын тулд туйлын файлын замыг ашиглаарай.
  2. Төгсгөлд нь амперсанд (&) оруулахаа бүү мартаарай. Энэ нь LINUX -д энэ файлыг цаана нь ажиллуулж, үргэлжлүүлэн ачаалах боломжийг олгоно.

Одоо файлыг хадгалахын тулд ctrl-x, дараа нь y гэж бичээд ENTER оруулна уу.

Дараа нь sudo reboot гэж бичнэ үү.

Та passwd командыг ашиглан Raspberry Pi -ийн нууц үгийг (хамгийн багадаа) өөрчлөх ёстой гэж энд дурдсан байх ёстой. Хэрэв та үүнийг хараахан хийгээгүй бол одоо сайхан цаг байх болно.

Алхам 4: Код

Дараахь нь sleeptrainer1_1.py файлын код юм. Би datetime объектыг ашиглан sleepset.txt файлд уншсан хүмүүстэй цагийг харьцуулж үзсэн. Текст файл нь ердөө хоёр мөр бөгөөд эхнийх нь цагийн хувьд, хоёр дахь нь минутынх юм. sleeptrainer1_1.py процессорыг холбохгүйн тулд давталтын хооронд нэг минут унтдаг. Ногоон гэрэл анхнаасаа хэт тод байсан тул би импульсийн өргөний модуляцийг ашиглан улаан өнгийг шар болгоход бүдэгрүүлэв.

Python код:

RPi. GPIO -г GPIO болгон импортлох

datetime -аас импорт хийх хугацааг dt импортлох цаг болгон оруулах GPIO.setup (red2, GPIO. OUT) GPIO.setup (green1, GPIO. OUT) GPIO.setup (green2, GPIO. OUT) GPIO.setup (blue1, GPIO. OUT) GPIO.setup (blue2, GPIO. OUT) p1 = GPIO. PWM (green1, 100) p2 = GPIO. PWM (green2, 100) def readset (): setfile = open ("/home/pi/pythoncode/sleepset.txt", 'r') a = setfile. readline () b = setfile.readline () a = int (a) b = int (b) буцах a, b def ledlight (color): if (color == "red"): GPIO.output (red1, GPIO. HIGH) GPIO.output (red2, GPIO. HIGH) p1.stop () p2.stop () GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (color == "blue")): GPIO.output (red1, GPIO. LOW) GPIO.output (red2, GPIO. LOW) p1.stop () p2.stop () GPIO.output (blue1, GPIO. HIGH) GPIO.output (blue2, GPIO. HIGH) elif (color == "ногоон"): GPIO.output (red1, GPIO. LOW) GPIO.output (red2, GPIO. LOW) p1.start (100) p2.start (100) GPIO.output (blue1), GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (color == "yellow"): p1.start (60) p2.start (60) GPIO.output (red1, GPIO. HIGH) GPIO.output (red2, GPIO. HIGH) GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (color == "off"): GPIO.output (red1, GPIO. LOW) GPIO.output (red2, GPIO. LOW) GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) p1.stop () p2.stop () байхад True: settime = readset () цаг, минут = тохирох цаг if минут == 0: хэрэв dt (dt.now (). жил, dt.now (). сар, dt.now (). өдөр, цаг-2) <dt.now () <dt (dt.now ()), жил, одоо (). сар, одоо ()), сар, одоо (). өдөр, цаг-1, минут+30) <одоо (одоо). өдөр, цаг, минут): гэрэл ("шар") elif dt (dt.now (). жил, dt.now (). сар, dt.now (). өдөр, цаг, минут) <dt.now () <dt (яг одоо () dt (dt.now (). жил, dt.now (). сар, dt.now (). өдөр, ho ur-2) <dt.now () <dt (dt.now (). жил, dt.now (). сар, dt.now (). өдөр, цаг, минут-30): гэрэл ("улаан") elif dt (dt.now (). жил, dt.now (). сар, dt.now (). өдөр, цаг, минут-30) <dt.now () <dt (dt.now (). жил, одоо, одоо өдөр. "ногоон") өөр: гэрэл ("унтраалттай") цаг. унтах (60)

Index.html файл нь HTML дээр бүтээгдсэн үндсэн хэлбэр юм. Энэ нь хоёр текст хайрцгийн агуулгыг авч, маягтыг зохицуулахын тулд sleepset.php файл руу дамжуулдаг. PHP файл нь sleepset.txt файлыг шинэчилсэн мэдээллээр дарж бичдэг.

Алхам 5: Бүгдийг нэгтгэх

Бүгдийг хамтад нь оруулах
Бүгдийг хамтад нь оруулах
Бүгдийг хамтад нь оруулах
Бүгдийг хамтад нь оруулах
Бүгдийг хамтад нь оруулах
Бүгдийг хамтад нь оруулах

Кодлох ажил дуусч, бүх эд ангиудыг хэвлэсний дараа угсрах цаг болжээ. Би бүгдийг нэгтгэхийн тулд дараах алхмуудыг хийсэн.

  1. Эвэрний доод хэсэгт RGB LED -ийн хэмжээтэй хоёр жижиг цооног өрөмдөж, LED -ийг эдгээр нүхэнд байрлуулна.
  2. Эвэрийг ганц эвэрт толгойн нүхэнд хийж, нягт болтол нь татна. Эвэрийг бэхлэхийн тулд дотор талаас цавуу хэрэглэ.
  3. Raspberry Pi Zero W -ийг ганц эвэрт толгойн дотор талд бэхлээрэй. (Халуун цавуу буу ашиглаж магадгүй)
  4. Нэг эвэрт толгойг ганц эвэрт сууринд бэхлээрэй.
  5. Цахилгааны утсыг холбож, угсралтыг бүхэлд нь хананд холбоно уу.
  6. Цагийг залгаарай.

Энэ үед надад хүүхдийн унтлагын дасгалжуулагчийн цаг ажиллаж байна.

Алхам 6: Нэг жилийн дараа …

Нэг жилийн дараа …
Нэг жилийн дараа …

Нэг жилийн дараа:

Охидууд маань арай удаан унтаж байна. Бид өрөөндөө байгаа бяцхан хүүхдүүдийг "Аав аа, гэрэл ногоон байна" гэж сэрээдэг болсон. мөн энэ бол гайхалтай. Урт түүхийн товчхондоо, бид бямба гаригт өглөөний 5:30 цагт л сэрэх төлөвлөгөөтэй байгаа.

Цаашид сайжруулахаар төлөвлөж буй зүйлүүд:

  • Зарим мэдрэгч эсвэл микрофон, чанга яригч гэх мэт бусад зүйлсийг нэмж болно.
  • Хүүхдүүд маань удахгүй сургуульд орох гэж байгаа тул сэрүүлгийн цаг болгон ашиглахын тулд чанга яригчтай ажиллах кодыг засварлаж болно.

Зөвлөмж болгож буй: