Mundarija:
- Ta'minotlar
- 1-qadam: HC-SR04-ni ulash
- 2 -qadam: Mosquitto va Paho MQTT
- 3 -qadam: Ultrasonik sensor uchun Python dasturi
- 4-qadam: tugun-RED
- 5 -qadam: ma'lumotlarni ro'yxatga olish
- 6 -qadam: tartib
- 7 -qadam: Xulosa
Video: Axlat tizimi: 7 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Biz chiqindilar chiqindilarini yanada samaraliroq qilish uchun mahalla aholisining axlat yig'ilishini kuzatishni yoki mahalladagi har bir axlatdagi sensorni kuzatishga qaror qildik. Biz yuk mashinasi har ikki haftada yig'ish uchun kelsa, men yoki qo'shnim ozgina tashlab yuborsa nima bo'ladi, deb o'yladik. Mahallaning yarmi axlat qutilarini to'liq yubormagan yuk mashinasini yuborish samarasiz bo'larmidi? Agar qo'shnimizning axlatini to'ldirishini ko'rish, agar meniki to'lgan bo'lsa, ularniki bo'sh bo'lsa, aksincha ularning axlatini ishlatish mumkin bo'lsa yaxshi bo'lardi. Biz ushbu loyihani hal qilish uchun HC-SR04 ultratovush sensori va malina pi bilan birgalikda foydalanishga qaror qildik.
Ta'minotlar
Ultrasonik sensor (HC-SR04)
Raspberry Pi (biz Pi 4 Model B dan foydalanganmiz)
Non paneli
Jumper kabellari
Bir necha rezistorlar (3 x 1k ohm)
1-qadam: HC-SR04-ni ulash
Biz Raspberry Pi -dan foydalanayotganimiz uchun, biz faqat 3.3v ga ruxsat bergani uchun, Pi -ning GPIO pimlariga kiradigan kuchlanishni tartibga solish uchun kuch ajratgichdan foydalanishimiz kerak. HC-SR04 5V dan foydalanadi, lekin uni Pi ga ulashda 3.3V ga tushirish kerak. O'z navbatida 5V va topraklama pimlarini ulang va sizning dasturingizga binoan hurmatli pimlarga echo va tetik pinlarini ulang. Bizning dasturimizda mos ravishda echo va tetik uchun 23 va 24 -pinlardan foydalanilgan.
2 -qadam: Mosquitto va Paho MQTT
Ultrasonik sensorni Pi bilan ishlash uchun Python-da dasturlashni boshlashdan oldin, biz Node-RED dasturiy ta'minoti bilan aloqa qilish uchun ultrasonik sensorni olish uchun ushbu ilovalarni o'rnatishimiz kerak. Mosquitto - bu MQTT vositachisi, siz uni Pi -da ishlatishingiz mumkin, Paho MQTT - bu sensorni MQTT brokeri bilan bog'lanish uchun Python -da kodlash imkonini beradigan kutubxona. Ularning ikkalasini ham o'rnatish uchun siz Pi terminaliga ushbu buyruqlarni kiritasiz
sudo apt yangilash
sudo apt install -y chivin chivin -mijozlari
sudo apt-get python3-pip ni o'rnating
sudo pip3 paho-mqtt ni o'rnating
3 -qadam: Ultrasonik sensor uchun Python dasturi
Bu men sensordan kelgan ma'lumotlarni o'qish va MQTT brokeriga nashr qilish uchun ishlatgan dastur.
4-qadam: tugun-RED
Ba'zi tugunlar dasturda oldindan o'rnatilmagan, shuning uchun uni palitralardan o'rnatish kerak bo'ladi. O'rnatish kerak bo'lganlar tugun-qizil asboblar paneli va tugun-qizil-tugun-sqlite.
Bu erda biz dasturiy ta'minot va sensordan foydalanishni boshlaymiz. Sizga kerak bo'lgan birinchi tugun-bu MQTT-in tugunidir va bu bizga dasturni yuqoridan boshqaruvchi sensordan foydalanib, ushbu dasturiy ta'minotga ma'lumotlarni yuborish imkonini beradi. Biz qo'llagan diapazon tugunlari bizda mavjud bo'lgan qiymatlarni o'zgartiradi (ya'ni 5 sm dasturdan to'lgan, shuning uchun biz uni 100%ga buramiz). Diapazon tugunidan keyin bizda ikkita funktsional tugun bor, biri xabarni asboblar paneliga, ikkinchisi esa axlat to'lganligini ko'rsatadi. Funktsiya tugunlari uchun dastur biriktirilgan.
Iloji bo'lsa, bu oqim bir nechta ultrasonik sensorlar uchun ishlatilishi mumkin edi. Ammo bizning loyihamiz uchun biz simulyatsiya ma'lumotlarini olishimiz kerak edi, chunki biz qo'llarimizni boshqa datchiklar bilan ta'minlay olmadik. Biz qilgan usul juda o'xshash, lekin bizda har bir axlatga axlatning 1-10 foizini tasodifiy qo'shish uchun foydalanuvchi bosadigan tugmalar mavjud. Biz ikkita tugmani ishlatdik, biri axlat qo'shish uchun, ikkinchisi tozalash uchun. Ko'rsatkich, xabarlar va indikator hali ham axlatni hisoblash va hisobga olish kodi bilan bir xil bo'lsa -da, bir oz boshqacha.
5 -qadam: ma'lumotlarni ro'yxatga olish
Yuk mashinasi chiqindilarni bo'shatish uchun kelganida, axlat qanchalik to'lganligini yozib qo'yish yaxshi bo'lardi, deb qaror qildik. Sqlite tuguni yordamida biz ma'lumotlarni o'qish va yozish imkoniyatiga egamiz, bu uni Pi ga saqlaydi. Siz ilgari aytganimdek, bu tugunni o'rnatishingiz kerak bo'ladi.
Ma'lumotlarni yaratish va ro'yxatga olish bosqichlari quyidagicha:
1. Ma'lumotlar bazasini yarating
2. Ma'lumotlarni qayd qiling
3. Ma'lumotlar panelida ko'rsatish uchun ma'lumotlarni torting
4. Ma'lumotlarni tozalash va o'chirish
SQL -ning ishlash usuli shundaki, siz "JADVALNI YO'ZLASH", "INSERT INO", "SELECT FROM" va "DELETE FROM" mavzularini bajarishingiz kerak. Vaqt tamg'asi tugunlari yordamida biz har bir funktsiyani bajaradigan (yaratish, kiritish, tanlash va o'chirish) sqlite tuguniga mavzularni bajarishimiz mumkin. Ma'lumotlar bazasini faqat bir marta yaratishimiz kerak va uni tugatgandan so'ng biz unga ma'lumotlarni kiritishimiz mumkin. Ma'lumotlar bazasi yaratilgandan so'ng, biz ma'lumotlarni yozib olamiz va yuk mashinasi kelganda tizimga kirish uchun foydalanuvchi ma'lumotlarini qayta ishlatardik. Biz shunday qildikki, siz yuk mashinasiga ruxsat berilmaguncha ma'lumotlarni kirita olmaysiz - 80% sig'imdagi 5 ta axlat (to'liq deb hisoblanadi). Shuningdek, biz 500 tugmachasini 0-100%gacha qayta o'lchash uchun diapazon tugunidan foydalandik. Agar xohlasak, bizda ma'lumotlar bazasidan barcha ma'lumotlarni o'chirish imkoniyati bor. UI jadval tuguni - bu jadvalni asboblar panelida yaxshi formatlangan tarzda ko'rishimizga imkon beradigan tugun.
6 -qadam: tartib
Bularning barchasi tugagandan so'ng, siz Node-RED yordamida kerakli sxemani yaratishingiz mumkin. Yon varaqda siz xohlaganingizcha bo'sh joy qoldirishingiz mumkin va sizda moslashtirishning boshqa variantlari mavjud. Mening butun dasturim uchun oqimim ham biriktirilgan.
7 -qadam: Xulosa
Ushbu loyihani tugatgandan so'ng, biz dasturni yanada rivojlantirishni ko'rishimiz mumkin bo'lgan joylar bor. Men hech qachon jurnalni avtomatik ravishda yozib olishning yo'lini topa olmadim, chunki biz buni faqat vaqt oralig'ida yozishimiz mumkin edi va agar axlat mashinasi bir marta kelgan bo'lsa, bizga boshqa raqamlar kerak bo'lmaydi. O'ylaymanki, bu qisman biz uni funktsional tugunlarga va dasturlashga bog'liq qilishga qaror qilganimiz bilan bog'liq, chunki biz bu dasturlashda qulayroqmiz. Tugatganimizdan so'ng, hamma narsa uchun tugunlar borligi aniq edi va agar biz ilgari kalit va rbe tugunlari funktsiyasini topgan bo'lsak, hayotni ancha osonlashtirishi mumkin edi. Ultrasonik sensorlar uchun biz ishlab chiqmagan tugun ham bor edi. Bu ishni osonlashtirgan bo'lar edi, chunki MQTT yoki Python dasturiga hojat qolmasdi, chunki bu faqat tetik va echo pinlari bo'lgan tugun. Biz yuqorida ko'rib turganingizdek Python dasturini tuzib, uning ustida ishlashga qaror qildik. Node-RED-ga kirishni istaganlar uchun katta maslahat shundaki, siz har bir oqim ishlayotganini va kerakli/kerakli narsani chiqarayotganini aniqlash uchun ko'plab disk raskadrovka tugunlaridan foydalanishingiz kerak.
Tavsiya:
ML bilan Pi axlat tasniflagichini yarating!: 8 qadam (rasmlar bilan)
ML bilan Pi axlat tasniflagichini yarating: "Qayerga ketadi?!" Deb nomlangan, axlatni tasniflagich loyihasi narsalarni tezroq va ishonchli tashlab yuborish uchun mo'ljallangan. Bu loyihada Machine Learning (ML) modeli qo'llaniladi. Lobada o'qitilgan, yangi boshlanuvchilar uchun qulay (kod yo'q!)
Arduino, ultratovush sensori va servo dvigatel yordamida aqlli axlat qutisi: 3 qadam
Arduino, Ultrasonik sensorlar va servo dvigatel yordamida aqlli axlat qutisi: Ushbu loyihada men sizga Arduino yordamida axlat qutisini qanday yasashni ko'rsataman, u erda axlat qutisiga yaqinlashganda axlat qutisi qopqog'i avtomatik ravishda ochiladi. Bu Smart axlat qutisini yasash uchun ishlatiladigan boshqa muhim komponentlar HC-04 Ultrasonik Sen
Aqlli axlat qutisi: 6 qadam
Aqlli Dustbin: Salom bolalar !!! Men Vedaansh Verdanman. Va bugun men sizga o'z qo'llaringiz bilan aqlli axlat qutisini qanday yasashni ko'rsataman. Keyingi loyiham haqida ma'lumot olish uchun meni instagramda kuzatib boring. Boshlaylik !!!! Instragram hisob: --- robotics_08
Magicbit -dan aqlli axlat qutisi: 5 qadam
Magicbit -dan aqlli axlat qutisi: Ushbu qo'llanmada biz Magicbit dev yordamida aqlli axlat qutisini qanday yasashni bilib olamiz. Arduino IDE bilan karta. Boshlaylik
Avtomobil bilan aqlli axlat qutisi: 5 qadam
Avtomobil bilan aqlli axlat qutisi: Bu ultrasonik sensor, mashina va tugmachali aqlli axlat qutisi, shuning uchun uni bosganingizda oldinga siljiydi. Bu loyiha https://www.instructables.com/id/DIY-Smart-Dustbin-With-Arduino/ dan ilhomlangan.Mana men o'zgartirgan bir nechta qismlar: 4 g'ildirak