Sisällysluettelo:

Smart B.A.L (yhdistetty postilaatikko): 4 vaihetta
Smart B.A.L (yhdistetty postilaatikko): 4 vaihetta

Video: Smart B.A.L (yhdistetty postilaatikko): 4 vaihetta

Video: Smart B.A.L (yhdistetty postilaatikko): 4 vaihetta
Video: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, Heinäkuu
Anonim
Smart B. A. L (yhdistetty postilaatikko)
Smart B. A. L (yhdistetty postilaatikko)

Olet kyllästynyt tarkistamaan joka kerta postilaatikkosi, kun sisällä ei ole mitään. Haluatko tietää, vastaanotatko postisi tai paketin matkan aikana, joten yhdistetty postilaatikko on sinua varten. Se ilmoittaa sinulle, jos postimies on tallettanut postin tai paketin suoraan älypuhelimeesi sähköpostitse, Ranskassa valmistetun uusimman LORAWAN -tekniikan ansiosta. Menemme askel askeleelta kuinka suunnitella prototyyppi koko tämän ohjeen mukaan.

Vaihe 1: Varustus

Varusteet
Varusteet

Käytetyt kielet: C/C ++

Digitaalisen elektroniikan perustiedot.

Laitteistovaatimukset:

Grove-3-akselinen digitaalinen gyro:

Paketti sigfox-moduuli antennilla:

Satunnainen painike (valitse mitä haluat).

Nucleo F030R8:

Ohjelmistovaatimukset:

Tietokone, jolla on hyvä selain Mbed -kääntäjän kanssa.

Vaihe 2: Valmistele laite

Valmistele laite
Valmistele laite

Ensinnäkin meidän on yhdistettävä kaikki moduulit siruun.

Kytke Sigfox -moduuliin ja gyroskooppiin virta 3,3 voltilla! Liitä sitten UART -johdot Sigfox -moduuliin (PA_9, PA_10) ja I2C -johdot gyroskooppiin (PB_10; PB_11). Liitä painike PB_3 -nastoilla. Kun olet valmis, koota alla oleva koodi.

Voit testata prototyyppiä asettamalla gyron postilaatikkoon ja saada joitakin liikkeeseen liittyviä arvoja ja siten tarkistaa, onko kyseessä talletettu paketti vai kirje.

#Sisällytä "mbed.h" #Sisällytä "ITG3200.h" // ---------------------------------- -// Hyperterminal-kokoonpano // 9600 baudia, 8-bittinen data, ei pariteettia // ------------------------------ ------ Sarja PC (SERIAL_TX, SERIAL_RX); Sarja -sigfox (PA_9, PA_10, NULL, 9600); InterruptIn bouton (PB_3); ITG3200 gyro (PB_11, PB_10); haihtuva int -sovellus; int facteur = 0; Ajastin t; AnalogIn -akku (A3); AnalogIn ref_batt (ADC_VREF); void lol () {pc.printf ("appui / r / n"); sovellus = 1; } /* void batt () {pc.printf ("batterie faible! / r / n"); }*/ int main () {int x, y, z; // Aseta suurin kaistanleveys. gyro.setLpBandwidth (LPFBW_42HZ); hiilipuskuri [20]; bouton.fall (& lol); bouton.mode (PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode(PullDown); pc.printf ("alku / r / n"); kun taas (1) {app = 0; x = gyro.getGyroX (); y = gyro.getGyroY (); z = gyro.getGyroZ (); jos (x> 5000) {t.start (); pc.printf ("debyytti minuutti / r / n"); kun taas (t.luku () <10); pc.printf ("fin temps / r / n"); //pc.printf("app= %d / r / n ", sovellus); if (app == 0) {sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 sigfox.scanf ("%s", puskuri); pc.printf ("%s / r / n", puskuri); } pc.printf ("fin jos / r / n"); t.stop (); t.reset (); } /* jos (batterie.read () <= (2.8* ref_batt.read () /1.23)) pc.printf ("batterie faible / r / n"); sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 odota (10); sigfox.printf ("AT $ P = 1"); odota (10); sigfox.printf ("AT $ P = 0 / r / n");*/}}

Vaihe 3: PCB: n kokoaminen

Edellinen prototyyppi on liian suuri postitettavaksi postilaatikkoon. Tässä muutamia Gerber -tiedostoja piirin tulostamiseen ja komponentin kokoamiseen.

Vaihe 4: Tausta-sivusto

Tausta-sivusto
Tausta-sivusto
Takaosan verkkosivusto
Takaosan verkkosivusto

Olemme perustaneet tausta -arkkitehtuurimme IBM Cloudiin (IBM IoT Watson Platform ja NodeRED) ja API REST -pyyntöihin. IBM Cloudia käytettiin järjestelmän eri osien välisen viestinnän hallintaan. Kuten NodeRED -kulustamme näet, hallitsemme kaikkia Sigfox -sovellusliittymästä (joka lähettää viestejä laitteeltamme) ja Wix -verkkosivustoltamme (uuden laitteen rekisteröinti) vastaanotettuja pyyntöjä. Pilvi vastaa myös ilmoitussähköpostin lähettämisestä asiakkaalle ja uuden asiakkaan rekisteröimisestä, jonka tiedot tallennetaan pilvipohjaiseen tietokantaamme (MongoDB). Siten NodeRED hallitsee periaatteessa API REST -pyyntöjä ja tietokantakyselyitä (INSERT ja SELECT) varmistaakseen, että oikea ilmoitus lähetetään oikealle asiakkaalle ajoissa.

Suositeltava: