Innholdsfortegnelse:

Smart B.A.L (tilkoblet postkasse): 4 trinn
Smart B.A.L (tilkoblet postkasse): 4 trinn

Video: Smart B.A.L (tilkoblet postkasse): 4 trinn

Video: Smart B.A.L (tilkoblet postkasse): 4 trinn
Video: BTT - Manta M8P - TMC2208 2024, November
Anonim
Smart B. A. L (tilkoblet postkasse)
Smart B. A. L (tilkoblet postkasse)

Du er lei av å sjekke hver gang postkassen din er mens det ikke er noe inne. Du vil vite om du mottar posten din eller en pakke under en reise. Så den tilkoblede postkassen er noe for deg. Det vil varsle deg om postbudet har deponert en post eller en pakke, direkte på smarttelefonen din ved hjelp av en e -post, takket være den nyeste teknologien LORAWAN laget i Frankrike. Vi går trinn for trinn hvordan vi designer en prototype gjennom hele denne instruerbare.

Trinn 1: Utstyr

Utstyr
Utstyr

Språk som brukes: C/C ++

Grunnleggende kunnskap innen digital elektronikk.

Krav til maskinvare:

Grove-3-Axis Digital Gyro:

Kit sigfox-modul med antenne:

Tilfeldig trykknapp (velg hva du vil).

Nucleo F030R8:

Programvarekrav:

En datamaskin med en god nettleser for å jobbe med Mbed -kompilatoren.

Trinn 2: Klargjør enheten

Klargjør enheten
Klargjør enheten

Først må vi koble alle modulene til brikken.

Koble Sigfox -modulen og gyroskopet med 3,3 volt! Koble deretter UART -ledningene til Sigfox -modulen (PA_9, PA_10) og I2C -ledningene til gyroskopet (PB_10; PB_11). Koble til knappen med PB_3 pins. når du er ferdig, kompilerer du koden nedenfor.

Du kan teste prototypen ved å plassere gyroen på en postkasse og få noen verdier knyttet til bevegelsen og dermed kontrollere om det er en pakke som er deponert eller et brev.

#include "mbed.h" #include "ITG3200.h" // ---------------------------------- -// Hyperterminal konfigurasjon // 9600 bauds, 8-biters data, ingen paritet // ------------------------------ ------ Seriell pc (SERIAL_TX, SERIAL_RX); Seriell sigfox (PA_9, PA_10, NULL, 9600); InterruptIn bouton (PB_3); ITG3200 gyro (PB_11, PB_10); flyktig int app; int facteur = 0; Timer t; AnalogIn batterie (A3); AnalogIn ref_batt (ADC_VREF); void lol () {pc.printf ("appui / r / n"); app = 1; } /* void batt () {pc.printf ("batterie faible! / r / n"); }*/ int main () {int x, y, z; // Angi høyeste båndbredde. gyro.setLpBandwidth (LPFBW_42HZ); røyebuffer [20]; bouton.fall (& lol); bouton.mode (PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode(PullDown); pc.printf ("oppstart / r / n"); mens (1) {app = 0; x = gyro.getGyroX (); y = gyro.getGyroY (); z = gyro.getGyroZ (); hvis (x> 5000) {t.start (); pc.printf ("debutminutt / r / n"); mens (t.read () <10); pc.printf ("fin temps / r / n"); //pc.printf("app= %d / r / n ", app); if (app == 0) {sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 sigfox.scanf ("%s", buffer); pc.printf ("%s / r / n", buffer); } pc.printf ("fin hvis / r / n"); t.stop (); t.reset (); } /* if (batterie.read () <= (2.8* ref_batt.read () /1.23)) pc.printf ("batterie faible / r / n"); sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 vent (10); sigfox.printf ("AT $ P = 1"); vent (10); sigfox.printf ("AT $ P = 0 / r / n");*/}}

Trinn 3: Montering av PCB

Den forrige prototypen er for stor til å sette den i postkassen. Her noen Gerber -filer for å skrive ut kretsen og montere komponenten din.

Trinn 4: Back-end nettsted

Back-end nettsted
Back-end nettsted
Back-end nettsted
Back-end nettsted

Vi har basert backend -arkitekturen vår på IBM Cloud (IBM IoT Watson Platform og NodeRED) og på API REST -forespørsler. IBM Cloud ble brukt til å administrere kommunikasjonen mellom forskjellige deler av systemet vårt. Som du kan se på vår NodeRED -flyt, kontrollerer vi alle forespørsler som mottas fra Sigfox API (som sender meldingene fra enheten vår) og fra vårt Wix -nettsted (for registrering av en ny enhet). Skyen er også ansvarlig for å sende varsel-e-posten til klienten og for å registrere en ny klient hvis informasjon vil bli lagret i vår skybaserte database (MongoDB). Dermed administrerer NodeRED i utgangspunktet API REST -forespørslene og databasespørringene (INSERT og SELECT) for å sikre at riktig varsel blir sendt til riktig klient i tide.

Anbefalt: