Sadržaj:
- Supplies
- Korak 1: Povezivanje HC-SR04
- Korak 2: Mosquitto i Paho MQTT
- Korak 3: Python program za ultrazvučni senzor
- Korak 4: Node-RED
- Korak 5: Zapisivanje podataka
- Korak 6: Raspored
- Korak 7: Zaključak
Video: Sistem za smeće: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Odlučili smo pokušati pronaći način da pratimo ispunjenje smeća u zajednici ili senzor u svakom smeću u susjedstvu kako bismo pokušali učiniti odlaganje smeća efikasnijim. Mislili smo da ako kamion dolazi svake dvije sedmice radi preuzimanja, šta ako smo ja ili moj komšija samo malo izbacili. Zar ne bi bilo neučinkovito poslati kamion u kojem polovina susjedstva nije poslala pune kante za smeće? Bilo bi sjajno kad bi bilo moguće vidjeti komšijinu kantu za smeće kako bi napunila, a zatim upotrijebiti njihovo smeće ako je moja bila puna, a njihova prazna i obrnuto. Odlučili smo upotrijebiti ultrazvučni senzor, HC-SR04 zajedno s malinom pi kako bismo pokušali pristupiti ovom projektu.
Supplies
Ultrazvučni senzor (HC-SR04)
Raspberry Pi (koristili smo Pi 4 model B)
Breadboard
Premosni kablovi
Par otpornika (3 x 1k ohm)
Korak 1: Povezivanje HC-SR04
Budući da koristimo Raspberry Pi, moramo koristiti razdjelnik napona za regulaciju napona koji ulazi u Pi -ove GPIO pinove jer oni dopuštaju samo 3,3 V. HC-SR04 koristi 5V, ali ga je prilikom spajanja na Pi potrebno spustiti na 3.3V. Priključite pinove 5V i uzemljenje, a prema vašem programu priključite pinove eha i okidača na odgovarajuće pinove. U našem programu koristili smo pin 23 i 24 za eho i okidač.
Korak 2: Mosquitto i Paho MQTT
Prije nego počnemo programirati na Pythonu kako bi ultrazvučni senzor radio s Pi, trebali bismo instalirati ove aplikacije kako bi ultrazvučni senzor komunicirao s našim softverom za programiranje Node-RED. Mosquitto je MQTT posrednik koji možete koristiti na Pi -u, dok je Paho MQTT biblioteka koja vam omogućuje kodiranje u Pythonu kako bi senzor komunicirao s MQTT posrednikom. Da biste instalirali oboje, upišite ove naredbe na svoj Pi terminal
sudo apt update
sudo apt install -y komaranti komaraca -klijenti
sudo apt-get install python3-pip
sudo pip3 install paho-mqtt
Korak 3: Python program za ultrazvučni senzor
Ovo je program koji sam koristio za čitanje ulaznih podataka sa senzora i objavljivanje u MQTT brokeru.
Korak 4: Node-RED
Neki čvorovi nisu unaprijed instalirani u programu pa ćete ih možda morati instalirati iz paleta. One koje trebate instalirati su node-red-dashboard i node-red-node-sqlite.
Tu počinjemo koristiti naš softver za programiranje i senzor. Prvi čvor koji vam je potreban je MQTT-in čvor koji nam omogućava da pomoću našeg senzora pokrećemo program odozgo za slanje podataka ovom softveru. Čvor raspona koji smo koristili okreće vrijednosti koje imamo (tj. 5 cm je puno iz programa pa ga okrećemo na 100%). Prateći čvor raspona, imamo dva funkcijska čvora, jedan za prikaz poruke na našoj nadzornoj ploči i jedan za prikaz vizualno da je smeće puno. Priloženi su programi za čvorove funkcija.
Ako je moguće, ovaj tok bi se mogao koristiti za više ultrazvučnih senzora. Za naš projekt, međutim, morali smo napraviti simulacijske podatke jer nismo bili u mogućnosti dohvatiti više senzora. Način na koji smo to učinili je vrlo sličan, ali imamo gumbe koje korisnik može kliknuti da nasumično doda 1-10 posto smeća u svako od smeća. Koristili smo 2 dugmeta, jedno za dodavanje smeća, a jedno za čišćenje. Mjerač, poruke i indikator su i dalje potpuno isti, kod za brojanje i brojanje smeća je ipak malo drugačiji.
Korak 5: Zapisivanje podataka
Odlučili smo da bi bilo dobro da zabilježimo koliko je punih rublja kada kamion dođe isprazniti džakove. Uz pomoć sqlite čvora možemo čitati i pisati podatke koji ih također spremaju u Pi. Morali biste instalirati ovaj čvor kao što sam već rekao.
Koraci za stvaranje i evidentiranje podataka idu na sljedeći način:
1. Kreirajte bazu podataka
2. Zapišite podatke
3. Povucite podatke za prikaz na našoj nadzornoj ploči
4. Obrišite i izbrišite podatke
Način na koji SQL funkcionira je da trebate stvoriti izvršavanje teme koje su CREATE TABLE, INSERT INTO, SELECT FROM i DELETE FROM. Koristeći čvorove vremenske oznake možemo izvršiti teme za sqlite čvor koji obavlja svaku od tih funkcija (kreiranje, umetanje, odabir i brisanje). Samo jednom moramo stvoriti bazu podataka i kad to učini, možemo u nju evidentirati podatke. Kada se baza podataka stvori, možemo evidentirati podatke i ponovo smo koristili korisnički unos za evidentiranje kada je kamion došao. Uspjeli smo tako da ne možete bilježiti podatke sve dok kamionu ne bude dozvoljeno da dođe, što čini 5 smeća pri 80% kapaciteta (smatra se punim). Također smo ponovo koristili čvor raspona za skaliranje 500 na 0-100%. Tada imamo mogućnost brisanja svih podataka iz baze podataka ako želimo. Čvor tablice korisničkog sučelja čvor je koji nam omogućuje da vidimo tablicu na lijepo oblikovan način na našoj nadzornoj ploči.
Korak 6: Raspored
Nakon što sve ovo završi, moći ćete kreirati izgled koji želite uz pomoć Node-RED-a. Na bočnoj kartici moći ćete ih smjestiti kako god želite i imate još mnogo mogućnosti prilagođavanja. U prilogu je i moj tok za cijeli moj program.
Korak 7: Zaključak
Po završetku ovog projekta postoje područja u kojima možemo vidjeti daljnji razvoj programa. Nikada nisam pronašao način za automatsko bilježenje dnevnika jer je jedini način na koji smo to mogli učiniti bio da se on zapisuje u određenom intervalu i ne bi nam trebali nikakvi ponavljajući brojevi ako je kamion za smeće došao jednom. Mislim da je to dijelom posljedica toga kako smo odlučili da se u velikoj mjeri oslanja na čvorove funkcija i programiranje jer nam je to programiranje ugodnije. Nakon istraživanja nakon što smo završili, bilo je jasno da postoje čvorovi napravljeni za sve i da bi to moglo uvelike olakšati život da smo ranije pronašli funkciju switch i rbe čvorova. Postojao je i čvor za ultrazvučne senzore koji nismo uspjeli raditi. To bi olakšalo stvari jer ne bi bilo potrebe za MQTT -om ili Python programom jer je to samo čvor sa pinovima za okidanje i odjek. Odlučili smo zaobići to tako što smo napravili Python program kao što ste vidjeli gore. Ogroman savjet za svakoga tko želi zaroniti u Node-RED je da biste trebali koristiti mnogo čvorova za otklanjanje grešaka kako biste shvatili radi li svaki tok i ispisuje ono što želite/trebate.
Preporučuje se:
AUTOMATSKA LIMA ZA SMEĆE ILI KORA. ZA SPASAVANJE PLANETE .: 19 koraka (sa slikama)
AUTOMATSKA LIMA ZA SMEĆE ILI KORA. DA SPASITE PLANETU. Prije nego što počnemo, preporučio bih vam da prije čitanja pogledate prvi video zapis jer je vrlo koristan. Zdravo, moje ime je Jacob i živim u Velikoj Britaniji. Recikliranje je veliki problem tamo gdje živim. Vidim puno smeća na poljima i moglo bi biti štetno. Th
Pametna kanta za smeće s automobilom: 5 koraka
Pametna kanta za smeće s automobilom: Ovo je pametna kanta za smeće s ultrazvučnim senzorom, automobilom i gumbom, pa se pomiče prema naprijed kada je pritisnete. Ovaj projekt je inspiriran https://www.instructables.com/id/DIY-Smart-Dustbin-With-Arduino/ Evo nekoliko dijelova koje sam napravio: 4 kotača
Automatska kanta za smeće: 7 koraka
Automatska kanta za otpatke: Ovo je automatsko otvaranje kante za otpatke. Ima WiFi vezu i šalje tekstualnu poruku kad je puna. Ovo je napravljeno za ECE -297DP na Univerzitetu Massachusetts - Amherst. Glavni cilj ovog tečaja bio je stjecanje iskustva
Automatska kanta za smeće: 6 koraka
Automatska kanta za smeće: Ovo je vjerovatno najprikladnija kanta za smeće, dizajnirana je za lijene ljude poput nas .;) Korištenjem ove kante za smeće ne morate više dodirivati poklopac kante za smeće. Ponekad poklopac kante može biti prljav, koji sadrži bakterije i viruse koje ne uklanjamo
Arduino kanta za smeće protiv pasa: 6 koraka (sa slikama)
Arduino kanta za smeće protiv pasa: U ovom projektu ću vam pokazati kako izgraditi smiješnu, ali radnu metodu kako biste spriječili svoje dosadne pse da uđu u vašu kantu za smeće