Innehållsförteckning:

Smart B.A.L (ansluten brevlåda): 4 steg
Smart B.A.L (ansluten brevlåda): 4 steg

Video: Smart B.A.L (ansluten brevlåda): 4 steg

Video: Smart B.A.L (ansluten brevlåda): 4 steg
Video: Kamera-LAMPA med spårning och identifiering av en person. 2024, Juli
Anonim
Smart B. A. L (ansluten brevlåda)
Smart B. A. L (ansluten brevlåda)

Du är trött på att kontrollera varje gång din brevlåda medan det inte finns något inuti. Du vill veta om du får din post eller ett paket under en resa. Så den anslutna brevlådan är för dig. Det meddelar dig om brevbäraren har deponerat ett mail eller ett paket, direkt på din smartphone med hjälp av ett e -postmeddelande, tack vare den senaste tekniken som LORAWAN tillverkat i Frankrike. Vi går steg för steg hur man utformar en prototyp genom hela denna instruerbara.

Steg 1: Utrustning

Utrustning
Utrustning

Språk som används: C/C ++

Grundläggande kunskaper inom digital elektronik.

Hårdvarukrav:

Grove-3-Axis Digital Gyro:

Kit sigfox-modul med antenn:

Slumpmässig tryckknapp (välj vad du vill ha).

Nucleo F030R8:

Programvarukrav:

En dator med en bra webbläsare för att arbeta med Mbed -kompilator.

Steg 2: Förbered din enhet

Förbered din enhet
Förbered din enhet

Först måste vi ansluta alla moduler till chipet.

Driv Sigfox -modulen och gyroskopet med 3,3 spänning! Anslut sedan UART -ledningarna till Sigfox -modulen (PA_9, PA_10) och I2C -ledningarna till gyroskopet (PB_10; PB_11). Anslut knappen med PB_3 -stift. när du är klar kompilerar du koden nedan.

Du kan testa prototypen genom att placera gyro på en brevlåda och få några värden relaterade till rörelsen och därmed kontrollera om det är ett paket som har deponerats eller ett brev.

#include "mbed.h" #include "ITG3200.h" // ---------------------------------- -// Hyperterminal konfiguration // 9600 bauds, 8-bitars data, ingen paritet // ------------------------------ ------ Seriell dator (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 ("batteriet fel! / r / n"); }*/ int main () {int x, y, z; // Ställ in högsta bandbredd. gyro.setLpBandwidth (LPFBW_42HZ); rödingbuffert [20]; bouton.fall (& lol); bouton.mode (PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode(PullDown); pc.printf ("start / r / n"); medan (1) {app = 0; x = gyro.getGyroX (); y = gyro.getGyroY (); z = gyro.getGyroZ (); om (x> 5000) {t.start (); pc.printf ("debutminut / r / n"); medan (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", buffert); pc.printf ("%s / r / n", buffert); } pc.printf ("fin if / r / n"); t.stop (); t.reset (); } /* if (batterie.read () <= (2.8* ref_batt.read () /1.23)) pc.printf ("batteriet är fel / r / n"); sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 vänta (10); sigfox.printf ("AT $ P = 1"); vänta (10); sigfox.printf ("AT $ P = 0 / r / n");*/}}

Steg 3: Montering av kretskort

Den tidigare prototypen är för stor för att lägga den i brevlådan. Här några Gerber -filer för att skriva ut din krets och montera din komponent.

Steg 4: Back-end-webbplats

Back-end-webbplats
Back-end-webbplats
Back-end-webbplats
Back-end-webbplats

Vi har baserat vår backend -arkitektur på IBM Cloud (IBM IoT Watson Platform och NodeRED) och på API REST -begäranden. IBM Cloud användes för att hantera kommunikationen mellan olika delar av vårt system. Som du kan se på vårt NodeRED -flöde kontrollerar vi alla förfrågningar som tas emot från Sigfox API (som skickar meddelanden från vår enhet) och från vår Wix -webbplats (för registrering av en ny enhet). Molnet ansvarar också för att skicka e-postmeddelandet till klienten och för att registrera en ny klient vars information kommer att lagras i vår molnbaserade databas (MongoDB). Således hanterar NodeRED i princip API REST -begäranden och databasfrågor (INSERT och SELECT) för att säkerställa att rätt avisering skickas till rätt klient i tid.

Rekommenderad: