Indholdsfortegnelse:

Smart B.A.L (tilsluttet postkasse): 4 trin
Smart B.A.L (tilsluttet postkasse): 4 trin

Video: Smart B.A.L (tilsluttet postkasse): 4 trin

Video: Smart B.A.L (tilsluttet postkasse): 4 trin
Video: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, November
Anonim
Smart B. A. L (tilsluttet postkasse)
Smart B. A. L (tilsluttet postkasse)

Du er træt af at tjekke hver gang din postkasse, mens der ikke er noget indeni. Du vil vide, om du modtager din mail eller en pakke under en rejse. Så den tilsluttede postkasse er noget for dig. Det giver dig besked, hvis postbudet har deponeret en mail eller en pakke, direkte på din smartphone ved hjælp af en e -mail, takket være de nyeste teknologier, LORAWAN har lavet i Frankrig. Vi går trin for trin hvordan vi designer en prototype i hele denne instruerbare.

Trin 1: Udstyr

Udstyr
Udstyr

Brugte sprog: C/C ++

Grundlæggende viden inden for digital elektronik.

Hardware krav:

Grove-3-Axis Digital Gyro:

Kit sigfox-modul med antenne:

Tilfældig trykknap (vælg hvad du vil have).

Nucleo F030R8:

Softwarekrav:

En computer med en god browser til at arbejde med Mbed compiler.

Trin 2: Forbered din enhed

Forbered din enhed
Forbered din enhed

Først skal vi forbinde alle modulerne til chippen.

Forsyn Sigfox -modulet og gyroskopet med 3,3 spænding! Tilslut derefter UART -ledningerne til Sigfox -modulet (PA_9, PA_10) og I2C -ledningerne til gyroskopet (PB_10; PB_11). Tilslut knappen med PB_3 ben. når du er færdig, skal du kompilere koden herunder.

Du kan teste prototypen ved at placere gyroen på en postkasse og få nogle værdier relateret til bevægelsen og dermed kontrollere, om det er en pakke, der er deponeret eller et brev.

#include "mbed.h" #include "ITG3200.h" // ---------------------------------- -// Hyperterminal konfiguration // 9600 bauds, 8-bit data, ingen paritet // ------------------------------ ------ Seriel pc (SERIAL_TX, SERIAL_RX); Seriel sigfox (PA_9, PA_10, NULL, 9600); InterruptIn bouton (PB_3); ITG3200 gyro (PB_11, PB_10); flygtig 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; // Indstil højeste båndbredde. gyro.setLpBandwidth (LPFBW_42HZ); forkulningsbuffer [20]; bouton.fall (& lol); bouton.mode (PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode(PullDown); pc.printf ("påbegyndelse / r / n"); mens (1) {app = 0; x = gyro.getGyroX (); y = gyro.getGyroY (); z = gyro.getGyroZ (); hvis (x> 5000) {t.start (); pc.printf ("debutminut / r / n"); mens (t.read () <10); pc.printf ("fin temps / r / n"); //pc.printf("app= %d / r / n ", app); hvis (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");*/}}

Trin 3: Montering af printkort

Den tidligere prototype er for stor til at sætte den på postkasse. Her nogle Gerber -filer til at udskrive dit kredsløb og samle din komponent.

Trin 4: Back-end-websted

Back-end websted
Back-end websted
Back-end websted
Back-end websted

Vi har baseret vores backend -arkitektur på IBM Cloud (IBM IoT Watson Platform og NodeRED) og på API REST -anmodninger. IBM Cloud blev brugt til at styre kommunikationen mellem forskellige dele af vores system. Som du kan se på vores NodeRED -flow, kontrollerer vi alle anmodninger, der modtages fra Sigfox API (der sender meddelelserne fra vores enhed) og fra vores Wix -websted (til registrering af en ny enhed). Cloud er også ansvarlig for at sende meddelelses-e-mailen til klienten og for at registrere en ny klient, hvis oplysninger vil blive gemt i vores skybaserede database (MongoDB). Således administrerer NodeRED grundlæggende API REST -anmodninger og databasespørgsmål (INSERT og SELECT) for at sikre, at den rigtige meddelelse sendes til den rigtige klient til tiden.

Anbefalede: