Sewer'Sway: 3 trinn
Sewer'Sway: 3 trinn
Anonim
Sewer'Sway
Sewer'Sway

Den nåværende prosessen med rensing av kloakkledninger er reaktiv i stedet for proaktiv. Telefonsamtaler registreres ved tilstoppet avløpsledning i et område. Videre er det vanskelig for manuelle åtsende å nullstille seg på feilpunktet. De bruker hit-and-trial-metoden for å utføre rengjøringsprosessen i flere kummer i det berørte området, og kaster bort mye tid. I tillegg fører den høye konsentrasjonen av de giftige gassene til irritabilitet, hodepine, tretthet, bihulebetennelse, bronkitt, lungebetennelse, tap av matlyst, dårlig hukommelse og svimmelhet.

Løsningen er å designe en prototype, som er en liten enhet - med en formfaktor av en penn - innebygd på lokket på et kum. Den nedre delen av enheten som er utsatt for innsiden av kumet mens lokket er lukket - består av sensorer som oppdager vanninnholdet i kloakken og konsentrasjonen av gasser som inkluderer metan, karbonmonoksid, karbondioksid og nitrogenoksider. Dataene blir samlet til en hovedstasjon, som kommuniserer med disse enhetene som er installert på hver kum over LoRaWAN, og sender dataene til en skyserver, som er vert for et dashbord for overvåkingsformål. Videre bygger dette broen mellom kommunale myndigheter som er ansvarlige for kloakkvedlikehold og søppeloppsamling. Installasjon av disse enhetene i hele byen vil tillate en forebyggende løsning for å identifisere og identifisere plasseringen av tilstoppet avløpsledning før avløpsvannet når overflaten.

Rekvisita

1. Ultralydsensor - HC -SR04

2. Gassføler - MQ -4

3. LoRa gateway - Bringebær pi 3

4. LoRa -modul - Semtech SX1272

5. NodeMCU

6. Summer -modul

7. 500mAh, 3.7V Li-ion batteri

Trinn 1:

Bilde
Bilde
Bilde
Bilde
Bilde
Bilde
Bilde
Bilde

For den første prototypen brukte jeg en tic-tac (eske med friske mynter) som kabinett. Festingen av ultralydsensorer ble gjort på en slik måte at den pekte Tx og Rx mot kloakkstrømmen. Tilkoblinger til ultralydsensoren og gassensoren er veldig enkle. Bare trenger å drive de enkelte sensorene og bruke hvilken som helst av de 8 digitale pinnene som er tilgjengelige i NodeMCU for å lese data. Jeg har trukket sammenhengene for bedre forståelse.

Trinn 2: Bli kjent med SEMTECH SX1272

Vårt neste trinn ville være å installere bibliotekene på vår NodeMCU.

Du finner bibliotekene til Semtech LoRa -modulen i denne lenken:

Slik installerer du dette biblioteket:

  • Installer det ved hjelp av Arduino Library manager ("Sketch" -> "Include Library" -> "Manage Libraries …"), eller
  • Last ned en zip -fil fra github ved hjelp av "Last ned ZIP" -knappen og installer den ved hjelp av IDE ("Sketch" -> "Include Library" -> "Add. ZIP Library …"
  • Klon dette git -depotet i mappen skissebok/bibliotek.

For å få dette biblioteket til å fungere, bør ditt Arduino (eller hvilket som helst Arduino-kompatibelt kort du bruker) være koblet til senderen. De eksakte tilkoblingene er litt avhengige av transceiverkortet og Arduino som brukes, så denne delen prøver å forklare hva hver tilkobling er for og i hvilke tilfeller det er (ikke) nødvendig.

Vær oppmerksom på at SX1272 -modulen går på 3,3V og sannsynligvis ikke liker 5V på pinnene (selv om databladet ikke sier noe om dette, og senderen min ikke åpenbart gikk i stykker etter at jeg ved et uhell brukte 5V I/O i noen timer). For å være trygg, må du bruke en nivåskifter eller en Arduino som kjører på 3.3V. Semtech evalueringstavle har 100 ohm motstander i serie med alle datalinjer som kan forhindre skade, men jeg ville ikke stole på det.

SX127x -mottakerne trenger en forsyningsspenning mellom 1,8V og 3,9V. Å bruke en 3.3V -forsyning er typisk. Noen moduler har en enkelt strømpinne (som HopeRF -modulene, merket 3.3V), men andre viser flere strømpinner for forskjellige deler (som Semtech -evalueringskortet som har VDD_RF, VDD_ANA og VDD_FEM), som alle kan kobles sammen. Eventuelle GND -pinner må kobles til Arduino GND -pinnen (e).

Den primære måten å kommunisere med transceiveren er gjennom SPI (Serial Peripheral Interface). Denne bruker fire pins: MOSI, MISO, SCK og SS. De tre tidligere må kobles direkte: så MOSI til MOSI, MISO til MISO, SCK til SCK. Hvor disse pinnene er plassert på din Arduino varierer, se for eksempel delen "Tilkoblinger" i Arduino SPI -dokumentasjonen. SS (slave select) -forbindelsen er litt mer fleksibel. På SPI -slavesiden (transceiveren) må denne kobles til pinnen (vanligvis) merket NSS. På SPI -master (Arduino) -siden kan denne pinnen kobles til en hvilken som helst I/O -pinne. De fleste Arduinoer har også en pinne merket "SS", men dette er bare relevant når Arduino fungerer som en SPI -slave, noe som ikke er tilfelle her. Uansett hvilken pin du velger, må du fortelle biblioteket hvilken pin du brukte gjennom pin -kartleggingen (se nedenfor).

DIO (digitale I/O) pinnene på mottakerkortet kan konfigureres for forskjellige funksjoner. LMIC -biblioteket bruker dem til å få umiddelbar statusinformasjon fra senderen. For eksempel, når en LoRa -overføring starter, er DIO0 -pinnen konfigurert som en TxDone -utgang. Når overføringen er fullført, blir DIO0 -pinnen høy av senderen, som kan detekteres av LMIC -biblioteket. LMIC -biblioteket trenger bare tilgang til DIO0, DIO1 og DIO2, de andre DIOx -pinnene kan stå frakoblet. På Arduino -siden kan de koble til en hvilken som helst I/O -pinne, siden den nåværende implementeringen ikke bruker avbrudd eller andre spesielle maskinvarefunksjoner (selv om dette kan legges til i funksjonen, se også "Timing" -delen).

I LoRa -modus brukes DIO -pinnene som følger:

  • DIO0: TxDone og RxDone
  • DIO1: RxTimeoutIn

FSK -modus de brukes som følger::

  • DIO0: PayloadReady og PacketSent
  • DIO2: TimeOut

Begge modusene trenger bare 2 pinner, men transiveren tillater ikke å kartlegge dem på en slik måte at alle nødvendige avbryter kartet til de samme 2 pinnene. Så hvis både LoRa og FSK -modusene brukes, må alle tre pinnene være tilkoblet. Pinnene som brukes på Arduino -siden, bør konfigureres i pin -kartleggingen i skissen din (se nedenfor). Tilbakestill Transceiveren har en tilbakestillingsnål som kan brukes til eksplisitt å tilbakestille den. LMIC -biblioteket bruker dette for å sikre at brikken er i en konsistent tilstand ved oppstart. I praksis kan denne pinnen stå frakoblet, siden transceiveren allerede vil være i en fornuftig tilstand når den slås på, men tilkobling kan i noen tilfeller forhindre problemer. På Arduino -siden kan en hvilken som helst I/O -pinne brukes. Pin -nummeret som brukes må konfigureres i pin -kartleggingen (se nedenfor).

Transceiveren inneholder to separate antenneforbindelser: En for RX og en for TX. Et typisk mottakerkort inneholder en antennebryterbrikke, som gjør det mulig å bytte en enkelt antenne mellom disse RX- og TX -tilkoblingene. En slik antennebryter kan vanligvis bli fortalt hvilken posisjon den skal være gjennom en inngangspinne, ofte merket RXTX. Den enkleste måten å kontrollere antennebryteren på er å bruke RXTX -pinnen på SX127x -mottakeren. Denne pinnen settes automatisk høyt under TX og lavt under RX. For eksempel ser det ut til at HopeRF -kortene har denne forbindelsen på plass, slik at de ikke avslører noen RXTX -pinner, og pinnen kan merkes som ubrukt i pinnekartleggingen. Noen kort avslører antennebryterpinnen, og noen ganger også SX127x RXTX -pinnen. For eksempel kaller SX1272 evalueringstavle den tidligere FEM_CTX og sistnevnte RXTX. Igjen, bare å koble disse sammen med en startkabel er den enkleste løsningen. Alternativt, eller hvis SX127x RXTX -pinnen ikke er tilgjengelig, kan LMIC konfigureres til å styre antennebryteren. Koble antennebryterens kontrollpinne (f.eks. FEM_CTX på Semtech -evalueringskortet) til en hvilken som helst I/O -pinne på Arduino -siden, og konfigurer pinnen som brukes på pinnekartet (se nedenfor). Det er imidlertid ikke helt klart hvorfor ikke vil at mottakeren skal kontrollere antennen direkte.

Trinn 3: 3D -utskrift av en vedlegg

3D -utskrift av et vedlegg
3D -utskrift av et vedlegg
3D -utskrift av et vedlegg
3D -utskrift av et vedlegg

Når jeg hadde alt i gang, bestemte jeg meg for å skrive ut et etui for modulen for å få et bedre design.

Med sluttproduktet i hånden var det enkelt å installere i mannhullet og oppnå sanntidsresultater på et dashbord. Gasskonsentrasjonene i sanntid med vannstandsindikasjonen tillot myndighetene en proaktiv tilnærming sammen med en sikrere måte å løse problemet på.

Anbefalt: