Cuprins:

Sewer'Sway: 3 pași
Sewer'Sway: 3 pași

Video: Sewer'Sway: 3 pași

Video: Sewer'Sway: 3 pași
Video: Witcher 3: What Happens if You Find Junior Peacefully? 2024, Noiembrie
Anonim
Sewer'Sway
Sewer'Sway

Procesul actual de curățare a canalelor de canalizare este mai degrabă reactiv decât proactiv. Apelurile telefonice sunt înregistrate în cazul unei linii de canalizare înfundate într-o zonă. Mai mult decât atât, este dificil ca scavengerii manuali să ajungă la zero în punctul de eroare. Aceștia folosesc metoda de încercare și încercare pentru a efectua procesul de curățare în mai multe guri de vizitare din zona afectată, pierzând mult timp. În plus, concentrația mare de gaze toxice duce la iritabilitate, dureri de cap, oboseală, infecții ale sinusurilor, bronșită, pneumonie, pierderea poftei de mâncare, memorie slabă și amețeli.

Soluția este de a proiecta un prototip, care este un dispozitiv mic - cu un factor de formă al unui stilou - încorporat pe capacul unei guri de vizitare. Secțiunea inferioară a dispozitivului care este expusă în interiorul căminului de vizitare în timp ce capacul este închis - cuprinde senzori care detectează nivelul apei din canalizare și concentrația gazelor care includ metan, monoxid de carbon, dioxid de carbon și oxizi de azot. Datele sunt colectate către o stație principală, care comunică cu aceste dispozitive instalate la fiecare gura de vizitare prin LoRaWAN și trimite datele către un server cloud, care găzduiește un tablou de bord pentru monitorizare. În plus, acest lucru acoperă decalajul dintre autoritățile municipale responsabile cu întreținerea canalelor și colectarea gunoiului. Instalarea acestor dispozitive în întregul oraș va permite o soluție preventivă pentru identificarea și identificarea locației liniei de canalizare înfundate înainte ca apele uzate să ajungă la suprafață.

Provizii

1. Senzor cu ultrasunete - HC-SR04

2. Senzor de gaz - MQ-4

3. Gateway LoRa - Raspberry pi 3

4. Modul LoRa - Semtech SX1272

5. NodeMCU

6. Modul buzzer

7. 500mAh, baterie Li-ion de 3,7V

Pasul 1:

Imagine
Imagine
Imagine
Imagine
Imagine
Imagine
Imagine
Imagine

Pentru primul prototip, am folosit un tic-tac (cutie de mentă proaspătă) drept incintă. Atașarea senzorilor cu ultrasunete a fost realizată în așa fel încât să îndrepte Tx și Rx către fluxul de canalizare. Conexiunile la senzorul cu ultrasunete și senzorul de gaz sunt foarte ușoare. Trebuie doar să alimentați senzorii individuali și să utilizați oricare dintre cei 8 pini digitali disponibili în NodeMCU pentru citirea datelor. Am trasat conexiunile pentru o mai bună înțelegere.

Pasul 2: Familiarizarea cu SEMTECH SX1272

Următorul nostru pas ar fi instalarea bibliotecilor pe NodeMCU.

Puteți găsi bibliotecile către modulul Semtech LoRa în acest link:

Pentru a instala această bibliotecă:

  • Instalați-l folosind managerul Arduino Library („Schiță” -> „Includeți biblioteca” -> „Gestionați bibliotecile …”) sau
  • Descărcați un fișier zip din github folosind butonul „Descărcați ZIP” și instalați-l folosind IDE („Sketch” -> „Include Library” -> „Add. ZIP Library …”
  • Clonați acest depozit git în dosarul de schițe / biblioteci.

Pentru ca această bibliotecă să funcționeze, arduino (sau orice placă compatibilă cu Arduino pe care o utilizați) ar trebui să fie conectată la transceiver. Conexiunile exacte sunt puțin dependente de placa transceiver-ului și de Arduino utilizate, așa că această secțiune încearcă să explice la ce servește fiecare conexiune și în ce cazuri este (nu) necesară.

Rețineți că modulul SX1272 funcționează la 3,3V și probabil că nu-i place 5V pe pinii săi (deși foaia tehnică nu spune nimic despre acest lucru, iar transmițătorul meu nu s-a rupt în mod evident după ce am folosit accidental I / O timp de câteva ore). Pentru a fi în siguranță, asigurați-vă că utilizați un schimbător de nivel sau un Arduino care rulează la 3,3V. Placa de evaluare Semtech are rezistențe de 100 ohmi în serie cu toate liniile de date care ar putea preveni deteriorarea, dar nu m-aș baza pe asta.

Transmițătoarele SX127x au nevoie de o tensiune de alimentare între 1,8V și 3,9V. Folosirea unei surse de 3.3V este tipică. Unele module au un singur pin de alimentare (cum ar fi modulele HopeRF, etichetate 3.3V), dar altele expun mai mulți pini de alimentare pentru diferite părți (cum ar fi placa de evaluare Semtech care are VDD_RF, VDD_ANA și VDD_FEM), care pot fi conectate toate împreună. Orice pini GND trebuie conectați la pinii Arduino GND.

Modul principal de comunicare cu transceiverul este prin SPI (Serial Peripheral Interface). Aceasta folosește patru pini: MOSI, MISO, SCK și SS. Primii trei trebuie să fie conectați direct: deci MOSI la MOSI, MISO la MISO, SCK la SCK. În cazul în care acești pini sunt localizați pe Arduino variază, consultați de exemplu secțiunea „Conexiuni” din documentația Arduino SPI. Conexiunea SS (selecție slave) este puțin mai flexibilă. Pe partea slave SPI (emițător-receptor), aceasta trebuie conectată la pinul (tipic) etichetat NSS. Pe partea SPI master (Arduino), acest pin se poate conecta la orice pin I / O. Majoritatea Arduino-urilor au și un pin etichetat „SS”, dar acest lucru este relevant doar atunci când Arduino funcționează ca un sclav SPI, ceea ce nu este cazul aici. Indiferent de pinul pe care îl alegeți, trebuie să spuneți bibliotecii ce pin ați folosit prin maparea pinului (vedeți mai jos).

Pinii DIO (I / O digitali) de pe placa transceiverului pot fi configurați pentru diferite funcții. Biblioteca LMIC le folosește pentru a obține informații de stare instantanee de la transceiver. De exemplu, atunci când pornește o transmisie LoRa, pinul DIO0 este configurat ca o ieșire TxDone. Când transmisia este finalizată, pinul DIO0 este ridicat de transceptor, care poate fi detectat de biblioteca LMIC. Biblioteca LMIC are nevoie doar de acces la DIO0, DIO1 și DIO2, ceilalți pini DIOx pot fi lăsați deconectați. Pe partea Arduino, se pot conecta la orice pin I / O, deoarece implementarea curentă nu folosește întreruperi sau alte caracteristici hardware speciale (deși acest lucru ar putea fi adăugat în caracteristică, consultați și secțiunea „Timing”).

În modul LoRa pinii DIO sunt utilizați după cum urmează:

  • DIO0: TxDone și RxDone
  • DIO1: RxTimeoutIn

Modul FSK sunt utilizate după cum urmează:

  • DIO0: PayloadReady și PacketSent
  • DIO2: TimeOut

Ambele moduri au nevoie doar de 2 pini, dar transmițătorul nu permite maparea acestora în așa fel încât toate întreruperile necesare să se întrerupă la aceeași 2 pini. Deci, dacă sunt utilizate atât modurile LoRa, cât și FSK, trebuie conectați toți cei trei pini. Pinii utilizați pe partea Arduino ar trebui să fie configurați în maparea pinilor din schița dvs. (a se vedea mai jos). Resetare Transmițătorul are un pin de resetare care poate fi folosit pentru a-l reseta în mod explicit. Biblioteca LMIC folosește acest lucru pentru a se asigura că cipul se află într-o stare consecventă la pornire. În practică, acest pin poate fi lăsat deconectat, deoarece transceiverul va fi deja într-o stare sănătoasă la pornire, dar conectarea acestuia ar putea preveni probleme în unele cazuri. Pe partea Arduino, poate fi utilizat orice pin I / O. Numărul pinului utilizat trebuie configurat în maparea pinului (vezi mai jos).

Transmițătorul conține două conexiuni de antenă separate: una pentru RX și una pentru TX. O placă de emisie-recepție tipică conține un cip de comutare a antenei, care permite comutarea unei singure antene între aceste conexiuni RX și TX. Un astfel de comutator de antenă poate fi de obicei spus despre ce poziție ar trebui să fie printr-un pin de intrare, adesea etichetat RXTX. Cel mai simplu mod de a controla comutatorul antenei este să utilizați pinul RXTX de pe transmițătorul SX127x. Acest pin este setat automat în timpul TX și scăzut în timpul RX. De exemplu, plăcile HopeRF par să aibă această conexiune la locul lor, deci nu expun niciun pin RXTX și pinul poate fi marcat ca neutilizat în maparea pinilor. Unele plăci expun pinul comutatorului antenei și uneori pinul SX127x RXTX. De exemplu, placa de evaluare SX1272 apelează fostul FEM_CTX și cel de-al doilea RXTX. Din nou, simpla conectare a acestora împreună cu un fir jumper este cea mai ușoară soluție. Alternativ sau dacă pinul SX127x RXTX nu este disponibil, LMIC poate fi configurat pentru a controla comutatorul antenei. Conectați pinul de control al comutatorului antenei (de ex. FEM_CTX pe placa de evaluare Semtech) la orice pin I / O de pe partea Arduino și configurați pinul utilizat în harta pinului (vezi mai jos). Totuși, nu este clar de ce nu ar dori ca transmițătorul să controleze direct antena.

Pasul 3: Imprimarea 3D a unei incinte

Imprimarea 3D a unei incinte
Imprimarea 3D a unei incinte
Imprimarea 3D a unei incinte
Imprimarea 3D a unei incinte

Odată ce am pus totul în funcțiune, am decis să imprim 3D o carcasă pentru modul pentru un design mai aspectuos.

Cu produsul final în mână, instalarea în orificiul pentru om și obținerea de rezultate în timp real pe un tablou de bord a fost ușoară. Valorile concentrației de gaze în timp real, cu indicația nivelului apei, au permis autorităților o abordare proactivă, împreună cu o modalitate mai sigură de abordare a problemei.

Recomandat: