Inhoudsopgave:

Smart B.A.L (verbonden mailbox): 4 stappen
Smart B.A.L (verbonden mailbox): 4 stappen
Anonim
Smart B. A. L (verbonden mailbox)
Smart B. A. L (verbonden mailbox)

Je bent het zat om elke keer je mailbox te controleren terwijl er niets in zit. Je wilt weten of je tijdens een reis je post of pakket ontvangt. Dan is de connected mailbox iets voor jou. Het zal u op de hoogte stellen als de postbode een post of een pakket heeft gedeponeerd, rechtstreeks op uw smartphone door middel van een e-mail, dankzij de nieuwste technologieën die LORAWAN in Frankrijk heeft gemaakt. We gaan stap voor stap hoe we een prototype in deze instructable kunnen ontwerpen.

Stap 1: Uitrusting

Uitrusting
Uitrusting

Gebruikte talen: C/C++

Basiskennis digitale elektronica.

Hardwarevereisten:

Grove - 3-assige digitale gyro:

Kit sigfox-module met antenne:

Willekeurige drukknop (kies wat je wilt).

Nucleo F030R8:

Softwarevereisten:

Een computer met een goede browser om met Mbed compiler te werken.

Stap 2: Bereid uw apparaat voor

Bereid uw apparaat voor
Bereid uw apparaat voor

Eerst moeten we alle modules op de chip aansluiten.

Voed de Sigfox-module en de gyroscoop met 3.3voltage! Sluit vervolgens de UART-draden aan op de Sigfox-module (PA_9, PA_10) en de I2C-draden op de gyroscoop (PB_10; PB_11). Verbind de knop met PB_3 pinnen. als u klaar bent, compileert u de onderstaande code.

Je kunt het prototype testen door de gyro op een brievenbus te plaatsen en wat waarden te krijgen die betrekking hebben op het uurwerk en zo te controleren of het een gestort pakket is of een brief.

#include "mbed.h" #include "ITG3200.h" //---------------------------------- -- // Hyperterminal-configuratie // 9600 bauds, 8-bit data, geen pariteit //------------------------------ ------ Seriële pc (SERIAL_TX, SERIAL_RX); Seriële sigfox (PA_9, PA_10, NULL, 9600); OnderbrekenIn bouton(PB_3); ITG3200-gyroscoop (PB_11, PB_10); vluchtige int-app; int-factuur=0; Timer t; AnalogIn-batterij (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; //Stel de hoogste bandbreedte in. gyro.setLpBandbreedte(LPFBW_42HZ); char-buffer [20]; bouton.fall(&lol); bouton.mode(PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode (PullDown); pc.printf("begin\r\n"); while(1) { app=0; x = gyro.getGyroX(); y = gyro.getGyroY(); z = gyro.getGyroZ(); if(x > 5000) { t.start(); pc.printf("debuutminuut\r\n"); while(t.lees() <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 if\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 wacht (10); sigfox.printf("AT$P=1"); wacht (10); sigfox.printf("AT$P=0\r\n");*/ } }

Stap 3: Montage PCB

Het vorige prototype is te groot om op brievenbus te zetten. Hier enkele Gerber-bestanden om uw circuit te printen en uw component te monteren.

Stap 4: Back-endwebsite

Back-end website
Back-end website
Back-end website
Back-end website

We hebben onze backend-architectuur gebaseerd op IBM Cloud (IBM IoT Watson Platform en NodeRED) en op API REST-verzoeken. De IBM Cloud werd gebruikt om de communicatie tussen verschillende delen van ons systeem te beheren. Zoals je kunt zien in onze NodeRED-stroom, beheren we alle verzoeken die worden ontvangen van de Sigfox API (die de berichten van ons apparaat verzendt) en van onze Wix-website (voor het registreren van een nieuw apparaat). De cloud is ook verantwoordelijk voor het verzenden van de notificatie-e-mail naar de klant en voor het registreren van een nieuwe klant wiens informatie wordt opgeslagen in onze cloudgebaseerde database (MongoDB). NodeRED beheert dus in principe de API REST-verzoeken en databasequery's (INSERT en SELECT) om ervoor te zorgen dat de juiste melding op tijd naar de juiste klant wordt verzonden.

Aanbevolen: