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

Raspberry Pi Smart NightLight: 5 алхам
Raspberry Pi Smart NightLight: 5 алхам

Видео: Raspberry Pi Smart NightLight: 5 алхам

Видео: Raspberry Pi Smart NightLight: 5 алхам
Видео: How To Make Simple Automatic Night Lamp With BC547 Transistor LED Night Light LDR Project 2024, Долдугаар сарын
Anonim
Raspberry Pi ухаалаг шөнийн гэрэл
Raspberry Pi ухаалаг шөнийн гэрэл

Би саяхан эрт боссон, гадаа олон удаа харанхуй байсан ч эхнэрийнхээ амралтад нөлөөлөхийн тулд гэрлээ асаахыг хүсэхгүй байгаа болохоор шөнийн гэрэл худалдаж авах талаар бодож байсан. Би шөнийн гэрэлтүүлэг хийдэг олон дэлгүүр хайсан боловч үүнийг хүсээгүй гэж бодож байна, гэхдээ Raspberry Pi -ийн удирддаг Амазон дахь дэлгүүрт DockerPi нэртэй шөнийн гэрэл харсан. Энэ нь маш сайн бөгөөд DIY функцуудыг хангаж чадна. Би энэ бүтээгдэхүүний вики тайлбарыг уншсан, үүнийг командын мөрөөр шууд удирдах боломжтой, Линукс системийг ашигладаг програмистын хувьд энэ нь маш дажгүй санагдсан тул би үүнийг буцааж худалдаж аваад энэ төслийг эхлүүлсэн.

Алхам 1: Алхам 1: Бүх зүйлийг бэлтгэ

Алхам 1: Бүх зүйлийг бэлтгэ
Алхам 1: Бүх зүйлийг бэлтгэ

Хайрцгийг задалсны дараа би нийлэг хавтан дээрх хамгаалалтын тагийг аваад дараа нь энэ DockerPi модулийг бөөрөлзгөнө, зэс модоор миний Raspberry Pi дээр холбоно. тогтвортой тогтоосон.

Алхам 2: Алхам2: Rasbpian OS -ийн хамгийн сүүлийн үеийн дүрсийг SD карт руу флаш хийнэ үү

Алхам 2: Rasbpian OS -ийн хамгийн сүүлийн үеийн зургийг SD карт руу шилжүүлэх
Алхам 2: Rasbpian OS -ийн хамгийн сүүлийн үеийн зургийг SD карт руу шилжүүлэх
Алхам 2: Rasbpian OS -ийн хамгийн сүүлийн үеийн дүрсийг SD карт руу шилжүүлэх
Алхам 2: Rasbpian OS -ийн хамгийн сүүлийн үеийн дүрсийг SD карт руу шилжүүлэх
Алхам 2: Rasbpian OS -ийн хамгийн сүүлийн үеийн зургийг SD карт руу шилжүүлэх
Алхам 2: Rasbpian OS -ийн хамгийн сүүлийн үеийн зургийг SD карт руу шилжүүлэх

Би хамгийн сүүлийн үеийн Raspbian зургийг https://www.raspberrypi.org/downloads/raspbian/ дээрээс татаж авдаг.

дараа нь: etcher гэж нэрлэгддэг програмаар дамжуулан зургийг анивч

эндээс татаж авах боломжтой:

gzip багцаас зургийн файлыг задлахад та *.img файлыг авах болно, зургийг сонгоод таны компьютер TF картыг хүлээн зөвшөөрсөн драйверыг сонгоод "Flash" дээр дараад хэдэн минут хүлээнэ үү.

дараа нь TF картаа аваад Raspberry Pi дээрээ оруулаад асаагаарай.

Алхам 3: Алхам 3: Raspi-config-аас I2C функцийг асаана уу

Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу
Алхам 3: Raspi-config-аас I2C функцийг асаана уу

Raspberry pi ажиллаж эхлэхэд би терминал нээгээд sudo raspi-config гэсэн тушаалыг бичэв

"Interfacing Options" руу очоод "I2C" -ийг сонгоод идэвхжүүлэв. яагаад би энэ тушаалыг ашиглах ёстой вэ?

DockerPi -ийн шөнийн гэрэлтүүлгийн модуль нь Raspberry Pi -тай харилцах I2C протоколыг ашигладаг тул.

Алхам 4: Алхам 4: Нийлэг хавтанг үүрэнд нь залгаарай

Алхам 4: Нийлэг хавтанг үүрэнд залгаарай
Алхам 4: Нийлэг хавтанг үүрэнд залгаарай
Алхам 4: Нийлэг хавтанг үүрэнд залгаарай
Алхам 4: Нийлэг хавтанг үүрэнд залгаарай
Алхам 4: Нийлэг хавтанг үүрэнд залгаарай
Алхам 4: Нийлэг хавтанг үүрэнд залгаарай

Энэ нь үүрэнд маш сайн тохирсон бөгөөд нийлэг хавтан нь үүрэнд үлдэх боломжтой зургийг харж болно.

Дараагийн алхам бол тест зөв ажиллаж байгаа эсэхийг шалгах явдал юм.

Би github -аас энэ кодыг raspberry Pi терминалд оруулах замаар татаж авсан.

cd ~

git clone

cd dockerpi/Шөнийн гэрэл/

sudo./ Nightlighth.sh

тэгээд миний шөнийн гэрэл асаж, гялалзана.

Би викигийн зааврыг уншаад бүх LED гэрлийн регистрийн газрын зургийн хүснэгтийг оллоо.

Дараагийн алхам бол хамгийн хөгжилтэй хэсэг байх болно, би хүний биед хэт улаан туяаны пироэлектрик мэдрэгч нэмэхийг хүсч байна.

Алхам 5: Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу

Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу
Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу
Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу
Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу
Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу
Алхам 5: Хэт улаан туяаны пироэлектрик мэдрэгчийг тохируулна уу

Энд бид PIR хөдөлгөөн мэдрэгч ашиглаж байна. PIR нь идэвхгүй хэт улаан туяаны товчлол юм. Энэхүү хөдөлгөөн мэдрэгч нь фрезел линз, хэт улаан туяаны детектор, дэмжигч илрүүлэх хэлхээнээс бүрдэнэ. Мэдрэгчийн линз нь эргэн тойронд байгаа хэт улаан туяаны цацрагийг хэт улаан туяаны детектор руу чиглүүлдэг. Бидний бие хэт улаан туяа үүсгэдэг бөгөөд үүний үр дүнд энэ дулааныг хөдөлгөөн мэдрэгчээр авдаг. Мэдрэгч хүн байгаа эсэхийг илрүүлмэгц нэг минутын хугацаанд 5В дохио гаргадаг. Энэ нь ойролцоогоор 6-7 метр орчим илрүүлэх урьдчилсан хүрээг санал болгодог бөгөөд маш мэдрэмтгий байдаг. PIR хөдөлгөөн мэдрэгч нь хүнийг илрүүлэхдээ GPIO -ээр дамжуулан Raspberry Pi -д 5V дохио өгдөг бөгөөд бид Raspberry Pi нь Python кодчилолоор халдагчийг илрүүлэхийн тулд юу хийх ёстойг тодорхойлдог. Энд бид зүгээр л "Халдагчийг илрүүлэв" гэж хэвлэж байна.

Та Raspberry Pi -ээ тохируулсны дараа бид одоо түүний GPIO тээглүүрээр эмх замбараагүй ажиллаж эхэлнэ. Энд бид Python скрипт ашиглан LED -ийг анивчихыг хичээх болно. Дараах кодыг хуулж аваад Raspberry Pi дээрээ оруулна уу. Та үүнийг Raspberry Pi дээрх "leafpad" текст засварлагчийг нээж, энэ кодыг түүнд хуулж, үүнийг Python файл болгон хадгалах замаар хийж болно: nightlight.py:

#импортлогчид.

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

импортлох хугацаа

smbus импортлох

DEVICE_BUS = 1

DEVICE_ADDR = 0x15

GPIO.setwarnings (Худал)

GPIO.setmode (GPIO. BOARD)

GPIO.setup (11, GPIO. IN) #PIR хөдөлгөөн мэдрэгчийн унших гаралт

bus = smbus. SMBus (DEVICE_BUS) i2c төхөөрөмжийн smbus -ийн жишээ нь шөнийн гэрэл гэсэн үг юм.

үнэн байхад:

оролдоно уу:

i = GPIO. оролт (11)

if i == 0: #Хөдөлгөөн мэдрэгчийн гаралт LOW байхад

хэвлэх ("Халдлагагүй хүмүүс", i)

i -ийн хувьд (1, 25):

bus.write_byte_data (DEVICE_ADDR, i, 0x00) #LED унтраах

цаг унтах (0.2)

цаг унтах (0.1)

elif i == 1: #Хөдөлгөөн мэдрэгчийн гаралт өндөр байх үед

хэвлэх ("Халдагчийг илрүүлсэн", i)

i -ийн хувьд (1, 25):

bus.write_byte_data (DEVICE_ADDR, i, 0xFF) #LED унтраах

цаг унтах (0.2)

цаг унтах (0.1)

KeyboardInterrupt -ээс бусад тохиолдолд e:

хэвлэх ("Гогцооноос гарах")

дараа нь үүнийг хадгалж, бөөрөлзгөнө pi ачаалах үед ажиллуулаарай.

sudo vim.tiny /etc/rc.local

0 гарахаас өмнө энэ мөрийг нэмнэ үү.

sudo python /home/pi/nightlight.py &

дараа нь хадгалаад Pi -ээ дахин ачаална уу, энэ нь зөв ажиллах болно …

Үзсэнд баярлалаа ~

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