Mundarija:
- Ta'minotlar
- 1 -qadam: SD -kartani miltillash
- 2 -qadam: Pi ichiga SSH
- 3 -qadam: Wi -Fi -ni sozlash
- 4 -qadam: qismlarni chop etish
- 5 -qadam: qismlarni yig'ish (kirish)
- 6 -qadam: yuqori qismini yig'ish (dispenser)
- 7 -qadam: yuqori qismini yig'ish (konteyner)
- 8 -qadam: pastki qismini yig'ish
- 9 -qadam: elektronika, sensorlar va aktuatorlar
- 10 -qadam: Elektronika, Raspberry Pi
- 11 -qadam: elektronikani sinab ko'rish
- 12 -qadam: tugatish
- 13 -qadam: Qo'shimcha: Chrome kengaytmasi
- 14 -qadam: dasturiy ta'minot
Video: Loyihani oziqlantiruvchi: 14 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Siz hech qachon uydan uzoqda yoki divaningizda bo'lganingizda uy hayvonlarini boqishni xohlaganmisiz? Agar shunday bo'lsa, bu loyiha siz uchun! Project Feeder - bu uy hayvonlarini avtomatik yoki qo'lda telefon yoki kompyuterdan boqish imkonini beradigan ochiq manbali loyihadir. Shuningdek, siz jonli efirni kuzatishingiz va uy hayvoningizning ovqatlanishini kuzatishingiz mumkin.
Boshlashdan oldin!
Bu loyiha kollej uchun qilingan va vaqt bilan bog'liq bo'lgan vazifadir, shuning uchun bu "bajarilayotgan ish". Shuning uchun men yaxshilanadigan va kelajakda yangilanadigan narsalar borligini bilaman. Men sizni ijodiy bo'lishga, ushbu kontseptsiyani takomillashtirishga va kengaytirishga taklif qilaman.
Boshlash uchun biz ushbu loyihani tuzish talablarini ko'rib chiqamiz. Sizga haqiqatan ham quyida keltirilgan ko'nikmalar va vositalar kerak bo'ladi.
Ishlab chiqaruvchining mahorati:
- 3D-bosib chiqarish yoki bosib chiqarish xizmatiga kirish
- Lehimlash
- Elektronika bo'yicha asosiy bilimlar
Asboblar:
- 3D-printer
- Lehimlash temir
- Issiq yopishtiruvchi qurol yoki 3D-printerda filamentli birikmalar bilan ishlaydigan boshqa elim
- Tornavidalar
Ta'minotlar
Loyihani qurishning umumiy qiymati - bu qismni qaerdan sotib olishingizga va qanday chegirmalarga ega bo'lishingizga qarab 120 evro atrofida.
Muhim:
Ba'zi qismlar "Noyob" bilan belgilanadi, bu uning konstruktiv dizayniga xos ekanligini anglatadi va sizga bu qismning aniq nusxasi kerak bo'ladi.
Raspberry Pi 4 Model B / 2GB + 16GB (minimal talab) Micro SD karta
Rasberry Pi aktsiyalari hozircha juda cheklangan, shuning uchun atrofga qarash kerak bo'ladi.
12V 60W quvvat manbai adapteri
www.banggood.com/AC-100-240V-to-DC-12V-5A-…
5,5 mm X 2,1 mm DC quvvat manbai Jek soketi (noyob)
www.banggood.com/10pcs-5_5-x-2_1mm-DC-Powe…
DC-DC 12V dan 5V 3A gacha kuch-quvvat moduli (noyob)
www.banggood.com/LM2596-DC-DC-Voltage-Regu…
42 mm 12V Nema 17 Ikki fazali step motor
www.banggood.com/42mm-12V-Nema-17-Two-Phas…
L298N Dual H ko'prigi moduli
www.banggood.com/Wh Wholesale-L298N-Dual-H-Br…
GY6180 VL6180X Parvoz masofasi sensori vaqti
www.banggood.com/GY6180-VL6180X-Time-Of-Fl…
Infraqizil to'siqlardan qochish sensori (x3)
www.banggood.com/3Pcs-Infrared-Obstacle-Av…
USB kamera
www.banggood.com/Electronic-Camera-Module-…
Orqa yorug'lik 16 × 2 LCD, 8051 mikrokontroller I2C
www.hobbyelectronica.nl/product/1602-lcd-d…
Ikki tomonlama darajadagi o'tish moslamasi
www.banggood.com/nl/Two-Channel-IIC-I2C-Lo…
Umumiy qiymatli rezistorlar (10k, 220R, 470R)
www.banggood.com/Wh Wholesale-Geekcreit-600pc…
LEDlar (x2)
Diodlar (x2)
12V ON/OFF tugmasi (yagona)
www.banggood.com/5pcs-12V-Round-Rocker-Tog…
Yong'oqlar: 3x8mm, 3x10mm, 3x12mm
1 -qadam: SD -kartani miltillash
Buni amalga oshirish uchun siz SD -kartani ko'rsatilgan rasm bilan o'chirishingiz kerak bo'ladi:
thomy.stackstorage.com/s/KbCfVgoU0t8gU3C
Rasm oldindan o'rnatilgan apache veb-serveri, ma'lumotlar bazasi va oziqlantiruvchi bilan bog'lanish uchun kod bilan jihozlangan. Shunday qilib, siz dasturiy ta'minotni sozlashni o'z ichiga oladigan hech narsa qilishingiz shart emas.
Agar siz kodni ko'rib chiqmoqchi bo'lsangiz, siz barcha kerakli kodlarni olishingiz mumkin:
github.com/VanIseghemThomas/ProjectFeeder
SD -kartani qanday to'g'ri yondirish kerakligini biling yoki jarayonni to'xtatmang, chunki bu buzilgan kartaga olib kelishi mumkin. Kartani o'chirish uchun Win32DiskManager dasturidan foydalanardim. Men biladigan boshqa dastur ishlaydi va foydalanuvchilarga nisbatan ancha qulayroqdir, Ethcer. Ikkalasi ham bir xil darajada yaxshi ishlaydi.
2 -qadam: Pi ichiga SSH
Yonish tugagach, endi siz SD -kartani pi -ga qo'yib, uni yoqishingiz mumkin. Ethernet kabeli yordamida pi -ga ulanganingizga ishonch hosil qiling. Endi siz unga SSH yordamida ip 169.254.10.1 yordamida ulanishingiz kerak. Men PuTTY deb nomlangan dasturdan foydalanaman, lekin agar siz dasturiy ta'minotni o'rnatishni xohlamasangiz, har doim buyruq satriga quyidagi buyruqni kiritishingiz mumkin:
ssh [email protected]
Endi sessiyani oching. Birinchi marta ulanganda, siz ogohlantirishga duch kelasiz, buni e'tiborsiz qoldirib, davom ettirishingiz mumkin. Sizdan foydalanuvchi sifatida tizimga kirishingiz so'raladi va shundan so'ng parol uchun bu rasm uchun quyidagi hisob ma'lumotlaridan foydalaning:
- Foydalanuvchi: oziqlantiruvchi
- Parol: Redeef1
"Pi" foydalanuvchisi ham faol, lekin siz tizimga kira olmaysiz. Buning sababi shundaki, u avtomatik ravishda tizimga kirish va dasturni ishga tushirish uchun sozlangan. Shu sababli, tizimga kirishda quyidagilarga duch kelasiz:
feederpi uchun [sudo] paroli:
Faqat crtl+c tugmalarini bosing va sizda qobiq bo'lishi kerak.
Endi quyidagilarni kiriting:
sudo -i
Endi siz root sifatida tizimga kirgansiz.
3 -qadam: Wi -Fi -ni sozlash
Endi siz root sifatida kirgansiz va yozishingiz mumkin:
wpa_passphrase "Sizning SSID" "Parolingiz" >> /etc/wpa_supplicant/wpa_supplicant.conf
Sizning konfiguratsiyangiz to'g'ri qo'shilganligini tekshirish uchun quyidagilarni kiriting. Agar xohlasangiz, xavfsizlik uchun oddiy matnli parolni o'chirib tashlashingiz mumkin, lekin chiqishda o'zgarishlarni saqlaganingizga ishonch hosil qiling.
nano /etc/wpa_supplicant/wpa_supplicant.conf
Endi siz pi ni qayta ishga tushirishingiz mumkin:
hozir qayta yoqing
Endi siz Wi -Fi tarmog'iga ulanishingiz bor -yo'qligini bilish uchun pi -ni yuklash va SSH -ga avvalgidek qayta kirishga biroz vaqt bering:
ip a
Wlan0 interfeysi ostida siz IP-manzilga o'xshash narsani ko'rishingiz kerak, demak siz Wi-Fi tarmog'iga muvaffaqiyatli ulangansiz. Keyinchalik hamma narsa ulanganda, dasturiy ta'minot LCD displeyda aks etadi.
4 -qadam: qismlarni chop etish
Loyiha uchun sizga kerak bo'ladigan qismlar bu erda:
www.thingiverse.com/thing:4459996
Bu qismlarni chop etish biroz vaqt talab etadi, shuning uchun sizga biroz sabr -toqat kerak bo'ladi.
Bu men ishlatgan sozlamalar (PLA):
- Qatlam balandligi: 0,3 mm
- Bosib chiqarish tezligi: 50-60 mm/s
- Burun harorati: 200 ° C
- To'shak harorati: 60 ° C
Bu haqda aytadigan ko'p narsa yo'q, faqat bosib chiqarishdan zavqlaning.
5 -qadam: qismlarni yig'ish (kirish)
Xo'sh, endi biz hamma narsani yig'ishga o'tamiz. Hammasini tushuntirishdan oldin, men yodda tutishim kerak bo'lgan ba'zi narsalarni ko'rib chiqaman va bu sizga bu ishni bajarishga yordam beradi.
Maslahat 1:
Men 3 mm dan 3 mm gacha bo'lgan barcha teshiklarni murvat kabi 2,5 mm qilib qo'yishga qaror qildim. Shunday qilib, siz murvatlarni burab, ipni tegizishingiz va yong'oqlarga bo'lgan ehtiyojni yo'q qilishingiz mumkin. Boltni o'rnatish juda qiyin, lehimlash temiridan foydalanib, tepani kengaytiring, bu murvatni burab olishni osonlashtiradi.
Maslahat 2:
Agar siz menga o'xshab murvat bilan ishlay olmasangiz, faqat diagonalli juftlarni burang. Bu ularning ko'pini tejaydi va yaxshi ishlaydi.
6 -qadam: yuqori qismini yig'ish (dispenser)
Qismlar rasmdagi kabi joylashtirilgan.
Ular "plastinka" deb nomlangan narsalarga yopishib oladilar. Plitalardan biri sizning qadam motoringizga yig'iladi.
Boltlarning yuqori qismi sirt bilan tekis ekanligiga ishonch hosil qiling, aks holda oziqlanish bloklanadi. Buning uchun 3x8 mm boltlardan foydalanish kerak va "Stepper_offset" modeli qadam va plastinkaning tashqi tomoni o'rtasida.
Endi tegirmonni qadamga qo'ying, bu juda oson davom etishi kerak. Aks holda, siz vazelindan foydalanishingiz mumkin.
Qolganlari oldinga siljiydi, faqat teshikni topadigan vintni oling.
7 -qadam: yuqori qismini yig'ish (konteyner)
Bu erda siz mening idishni qanday yasaganimni ko'rasiz. Kanister asli quritilgan birlashma bo'laklari uchun ishlatiladi.
Yuqorida siz TOF sensorini ulashni xohlaysiz, bu konteynerda qancha ovqat qolganini o'lchash uchun ishlatiladi. Rasmlarda siz uni qanday biriktirganimni ko'rishingiz mumkin. Birinchidan, men payvand choki bilan pinlar uchun teshiklarni eritdim, keyin kabellar ulanganda sensorni issiq elim bilan yopishtirdim.
Konteynerni yopish uchun men lehim bilan 2 teshik ochdim va 2 murvat bilan burab qo'ydim. Uni yopish uchun rezina tasma, fermuar yoki simdan foydalanish mumkin.
8 -qadam: pastki qismini yig'ish
Turli xil modullarni joylashtirish uchun rasmlarga havola qilinadi, ular o'z -o'zidan tushunarli. Bu rasmlarning bir qismida allaqachon simlar bor, siz hozircha o'tmishga qarashingiz kerak. Loyihani ishlab chiqish paytida olingan rasmlar. Dastlab reja yuk kamerasiga joylashtirilib, ovqatni tortish edi, lekin oxirgi paytlarda yuk ko'tarish kamerasining kuchaytirgichi buzilgani uchun men bu xususiyatni olib tashlab, uni jonli video oqim bilan almashtirishga majbur bo'ldim. Tanlov har doim yuk xujayrasini qo'shish uchun mavjud, lekin siz kodni o'rganib, ba'zi narsalarni tahrir qilishingiz kerak bo'ladi.
9 -qadam: elektronika, sensorlar va aktuatorlar
Endi lehimlanadigan temirni qo'yish vaqti keldi. Men sizga nima qilish kerakligi haqida 2 ta ko'rsatma berdim, bitta standart elektr sxemasi, bitta vizual tasvir. Men sizga elektr sxemasidan foydalanishni tavsiya qilaman, chunki u hamma narsaning qanday ishlashi va bir -biri bilan bog'liqligi haqida ko'proq ma'lumot beradi. Ikkinchisining bu erda bo'lishining yagona sababi, bu majburiy edi. Buni aytishimning sababi shundaki, kabellar uchun juda ko'p joy yo'q, shuning uchun siz GND, +5V va boshqalarni samarali ishlatishingiz kerak bo'ladi, bu sizning kabellaringizni qanday ishlatishni xohlashingizga bog'liq. Shunday qilib, hamma narsani sxematik tarzda bir -biriga bog'lamang, u ishlaydi, lekin mos kelmaydi.
Kommutator uchun men 3 ta simni sim bilan bog'laganimni ko'rishingiz mumkin, chunki bu kalit o'rnatilgan LED bilan ta'minlangan, bu quvvat yoqilganligini ko'rsatadi. 2 ta rangsiz simlar kalit vazifasini bajaradi, rangli sim GND ga o'tadi.
Umuman olganda, men hamma narsani bog'ladim:
- Quvvat bo'limi: quvvat rozetkasi, h-ko'prik, kuchaytirgichli konvertor, kalit
- Raspberry Pi (Qo'shimcha ma'lumot olish uchun keyingi bosqichga qarang)
- IQ-sensorlar
- LEDlar
- Stepper kirishlari
- I2C qismi: 3.3V, SDA, SCL
Menga o'xshab lehimlash uchun kompyuterning prototipini o'rnatish muhim emas, lekin foydali.
Shuningdek, kamerani pi -ning USB portiga ulashni unutmang.
Muhim:
Devrenning 5V qismini ulashdan oldin, kuchaytirgichli konvertorni 5V ga sozlaganingizga ishonch hosil qiling. Aks holda, hamma narsani qovurish xavfi bor. Buni sozlash uchun siz potansiyometrni burab, ekrandagi kuchlanish ko'rsatkichiga qaraysiz.
10 -qadam: Elektronika, Raspberry Pi
Sxemani chizish uchun dasturiy ta'minotdagi cheklovlar tufayli men malina pi ni qanday ulashni chiza olmadim.
+5V uchun siz 5 -pinli pinni ulashingiz mumkin, lekin bu sug'urta kabi xavfsizlikni chetlab o'tadi. Agar siz pastki qismga qarasangiz, siz TPxx deb belgilangan tagliklarni ko'rishingiz kerak, bizda TP1 yoki TP2 qidiramiz. +5V kuchlanishli lehimni ulardan biriga ulang, lekin ehtiyot bo'ling va boshqa izlar bilan aloqa qilmang. Bu, ehtimol, kafolatni ham bekor qiladi. Men shaxsan uni ikkala sinov maydonchasiga ulashni sinab ko'rdim va xulosaga keldim, bu TP2 -ni ishlatish eng oson va eng xavfsiz, boshqa ochiq prokladkalardan uzoqda va uning atrofida juda ko'p izlar yo'q.
GND uchun sxematik shoular singari tepadagi pinlardan birini oling, hozir bu juda yaxshi.
11 -qadam: elektronikani sinab ko'rish
Agar hamma narsa to'g'ri ulangan bo'lsa, hamma narsani to'liq yig'ishdan oldin hamma narsani sinab ko'rish yaxshi bo'ladi.
Bu erda nazorat ro'yxati:
- IPV4 manzili LCD displeyda ko'rsatiladi
- Brauzer orqali IP -ga ulanish imkoniyati
- "Oziqlantirish" orqali qadamni burish va LEDning yonishini ko'rish
- Konteyner holati o'qiladi va yangilanadi
- Kameradan jonli translyatsiya
- Ovqatlanish hodisalarini aniqlash
Muammolarni bartaraf qilish; nosozliklarni TUZATISH:
Bu erda men duch kelgan ba'zi muammolarni va ularni qanday hal qilishni sanab o'taman.
- LCD displeyim yonadi, lekin hech narsa ko'rsatmaydi:
1) Buni yozish paytida, pi -ni to'liq yuklash uchun taxminan 2 daqiqa vaqt kerak bo'ladi, shuning uchun unga qo'shimcha vaqt berish kerak.
2) Siz LCD -ni to'g'ri ulamadingiz. Siz qobiqqa quyidagi buyruqni yozib, uni to'g'ri ulaganingizni ko'rishingiz mumkin:
sudo i2cdetect -y 1
Bu 2 manzilni qaytarishi kerak: 0x27 (= LCD) va 0x29 (= TOF sensori). Agar 0x27 ko'rinmasa, siz LCD kabelini tekshirishingiz kerak. Agar ikkalasi ham ko'rinmasa, siz SDA va SCL pinlarining simlarini tekshirishingiz kerak. Masalan, tasodifan ikkalasini almashtirganingizni tekshiring. Eng yomoni, siz ikkita alohida komponent bilan noto'g'ri ish qildingiz yoki biror narsa buzildi.
- Mening LCD displeyim "Wi -Fi tarmog'iga ulanishda" qolib ketgan.
Bu shuni anglatadiki, sizning pi ulanishni sozlagan tarmoqlardan biriga ulanmoqchi. Bu shuni anglatadiki, siz kirish nuqtasida emassiz yoki konfiguratsiya paytida noto'g'ri ish qilgansiz. xato. Bunday holda, "Wi -Fi -ni sozlash" -ga qayting va uni qayta ko'rib chiqing.
Dastur, shuningdek, "192.168" bilan boshlanadigan IP -manzili bo'lgan uy tarmoqlariga ulanish uchun o'rnatiladi. Agar sizning tarmog'ingiz "10.0" yoki "172.16" kabi boshqa shaxsiy diapazon bilan o'rnatilgan bo'lsa, siz /home/pi/project/main.py saytiga kirishingiz va get_ips () funktsiyasini o'zgartirishingiz kerak bo'ladi: agar "192.168" ip agar "bu erda sizning shaxsiy diapazoningiz" bo'lsa.
- Mening LCD displeyimda ip ko'rsatiladi, lekin ulana olmayapman:
1) 192.168. X. X ip -ga ulanganingizga ishonch hosil qiling, boshqa ip -169.254.10.1 har doim chekilgan tarmoq orqali kompyuteringizga ulanishi uchun tuzilgan. Agar siz tarmoqqa ulanmagan bo'lsangiz, bu ishlamaydi.
2) Siz bir xil tarmoqqa ulanganligingizga ishonch hosil qiling yoki agar siz tarmoqqa tashqaridan oziqlantiruvchiga kirishni xohlasangiz, tarmog'ingizda portni yo'naltirishni yoqdingiz.
- Stepper titradi va burilmadi:
Bu shuni anglatadiki, siz ikkita H-ko'prikning kirish yoki chiqishini to'g'ri ulamadingiz. U ishlamaguncha ularni almashtirishga harakat qiling.
12 -qadam: tugatish
Endi siz hamma narsani qanday hal qilishni bilib oldingiz, hamma narsani birlashtirish vaqti keldi. Men 2 qismni lenta bilan birlashtirishga majbur bo'ldim, chunki teshiklarning dizayni keskinlikni ushlab turishga etarlicha mustahkam emas va men uchun yorilib ketdi. Bu kelajakda yaxshilanishi kerak bo'lgan asosiy narsadir. Toza variant - bu ikki qismni bir -biriga yopishtirishdir, lekin ichkarida biror narsa buzilganda va siz ichkariga kirishni xohlasangiz, bu muammo bo'lishi mumkin. Shuning uchun men yaxshi eski elektr tasmasi bilan bordim.
Veb -saytga kirganingizda, sizni qo'lda oziqlantirish, holatini tekshirish, ma'lumotlarni ko'rib chiqish va oldindan sozlash qo'shish kabi ishlarni bajaradigan asboblar paneli kutib oladi.
13 -qadam: Qo'shimcha: Chrome kengaytmasi
Agar siz asboblar paneliga kirishni xohlamasangiz va holatini yoki tasmasini tezda tekshirishni xohlasangiz, Chrome kengaytmasidan foydalanishingiz mumkin. Rasmiy Chrome veb -do'konida bo'lmaganligi sababli, siz bunday paketni ishlab chiqgandek yuklashingiz kerak bo'ladi.
Avval oziqlantiruvchi kengaytmasi papkasini github katalogidan yuklab olganingizga ishonch hosil qiling:
github.com/VanIseghemThomas/ProjectFeeder
Quyidagi URL manziliga o'ting:
chrome: // kengaytmalar/
U erda, ishlab chiquvchi rejimini yoqing va kengaytma papkasini yuklang. Endi u kengaytma sifatida ko'rinishi kerak.
Agar u Chrome panelida ko'rinmasa, uni Chrome menyusidan topishingiz mumkin.
14 -qadam: dasturiy ta'minot
Agar siz dasturiy ta'minot haqida o'ylashni yaxshi ko'rsangiz yoki biron sababga ko'ra faylning yangi nusxasi kerak bo'lsa, sizga kerak bo'lgan barcha fayllar men tayyorlagan GitHub omborida topiladi:
Agar siz API-ga xususiyatlar qo'shishni xohlasangiz, men ma'lumotlar bazasi uchun EER-sxemasini taqdim qildim. Ma'lumotlar bazasi chiqindisini GitHub omborida ham topish mumkin. Barcha orqa kod Python -da yozilgan. Flask marshrutlash uchun ishlatiladi va veb -rozetkalar uchun Socket.io.
Tavsiya:
Itlarni avtomatik oziqlantiruvchi !!: 4 qadam
Itlarni avtomatik oziqlantiruvchi !!: oson, foydali va sog'lom
Avtomatik oziqlantiruvchi: 3 qadam
Avtomatik oziqlantiruvchi: Bizning loyihamiz nima haqida? Bizning loyihamiz itlar uchun avtomatik oziqlantiruvchi. Bu itni ovqatlantirishning oddiy usuli. Masalan, siz sayohat qilmoqchi bo'lganingizda va siz uchun itingizni boqadigan hech kimni tanimaysiz. Avtomatik oziqlantiruvchi javobgar bo'ladi
Empatik dizayn: Arduino avtomatik kalamushlarni oziqlantiruvchi: 18 qadam
Empatik dizayn: Arduino avtomatik kalamushlarni oziqlantiruvchi: Bu ko'rsatma kalamush yoki shunga o'xshash kattalikdagi uy hayvonlari uchun avtomatik boqish moslamasini yaratishda keng qamrovli qo'llanma bo'lib xizmat qiladi. Ushbu loyihaga ilhom opamning kalamushidan kelib chiqqan bo'lib, uni aynan 4 ta oziq -ovqat granulalari bilan boqish kerak
Yangi loyihani qanday boshlash kerak: 7 qadam
Yangi loyihani qanday boshlash kerak: Salom o'quvchi, bu mening darsligim, siz yangi mikrokontroller loyihasidan boshlashingiz kerak
Aqlli oziqlantiruvchi: 4 qadam
Aqlli oziqlantiruvchi: Uy hayvoniga ega bo'lish - juda qiziq. Qachonki siz qiziqarli ta'tilga borishni xohlasangiz va o'zingiz bilan eng yaqin do'stingizni olib kela olmasangiz, uy hayvoningizga ovqat beradigan odamni topishingiz kerak bo'ladi. Men bu masalani juda ko'p boshdan kechirdim va o'z uy hayvonlarim uchun o'zimning shaxsiy uyimni yaratish g'oyasini oldim