Talaan ng mga Nilalaman:

Smart B.A.L (konektadong Mailbox): 4 na Hakbang
Smart B.A.L (konektadong Mailbox): 4 na Hakbang

Video: Smart B.A.L (konektadong Mailbox): 4 na Hakbang

Video: Smart B.A.L (konektadong Mailbox): 4 na Hakbang
Video: "НЕТ РАБОТЫ" БЕСПЛАТНО $ 500 + НИЧЕГО НЕ ДЕЛАЯ ?! (Заработай... 2024, Hulyo
Anonim
Smart B. A. L (konektadong Mailbox)
Smart B. A. L (konektadong Mailbox)

Pagod ka na bang suriin tuwing ang iyong mailbox habang wala sa loob. Nais mong malaman kung natanggap mo ang iyong mail o isang parsela sa panahon ng isang paglalakbay. Kaya ang nakakonektang mailbox ay para sa iyo. Aabisuhan ka nito kung ang kartero ay nagdeposito ng isang mail o isang parsela, direkta sa iyong smartphone sa pamamagitan ng isang email, salamat sa pinakabagong mga teknolohiya na ginawa ng LORAWAN sa Pransya. Pupunta kami hakbang-hakbang kung paano mag-disenyo ng isang prototype sa buong pagtuturo na ito.

Hakbang 1: Equipement

Kagamitan
Kagamitan

Mga wikang ginamit: C / C ++

Pangunahing kaalaman sa digital electronics.

Mga kinakailangan sa hardware:

Grove - 3-Axis Digital Gyro:

Module ng kit sigoks na may antena:

Random push button (piliin kung ano ang gusto mo).

Nucleo F030R8:

Mga kinakailangan sa software:

Isang computer na may mahusay na browser upang gumana kasama ang Mbed compiler.

Hakbang 2: Ihanda ang Iyong Device

Ihanda ang Iyong Device
Ihanda ang Iyong Device

Una, kailangan naming ikonekta ang lahat ng mga module sa maliit na tilad.

Lakasin ang module ng Sigoks at ang gyroscope na may 3.3voltage! Pagkatapos ay ikonekta ang mga wire ng UART sa module na Siganduan (PA_9, PA_10) at ang I2C wires sa gyroscope (PB_10; PB_11). Ikonekta ang pindutan gamit ang mga PB_3 na pin. kapag natapos na, Compile ang code sa ibaba.

Maaari mong subukan ang prototype sa pamamagitan ng paglalagay ng gyro sa isang mailbox at makakuha ng ilang mga halagang nauugnay sa paggalaw at sa gayon suriin kung ito ay isang pakete na na-deposito o isang sulat.

# isama ang "mbed.h" # isama ang "ITG3200.h" // ---------------------------------- - // Hyperterminal config // //0000 bauds, 8-bit data, walang pagkakapareho // ------ Serial pc (SERIAL_TX, SERIAL_RX); Serial sigox (PA_9, PA_10, NULL, 9600); InterruptIn bouton (PB_3); ITG3200 gyro (PB_11, PB_10); pabagu-bago int app; int facteur = 0; Timer t; AnalogIn batterie (A3); AnalogIn ref_batt (ADC_VREF); walang bisa lol () {pc.printf ("appui / r / n"); app = 1; } / * void batt () {pc.printf ("batterie faible! / r / n"); } * / int pangunahing () {int x, y, z; // Itakda ang pinakamataas na bandwidth. gyro.setLpBandwidth (LPFBW_42HZ); char buffer [20]; bouton.fall (& lol); bouton.mode (PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode(PullDown); pc.printf ("pagsisimula / r / n"); habang (1) {app = 0; x = gyro.getGyroX (); y = gyro.getGyroY (); z = gyro.getGyroZ (); kung (x> 5000) {t.start (); pc.printf ("debut minuto / r / n"); habang (t.read () <10); pc.printf ("fin temps / r / n"); //pc.printf("app=% d / r / n ", app); kung (app == 0) {sigelp.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 sigorta.scanf ("% s", buffer); pc.printf ("% s / r / n", buffer); } pc.printf ("fin kung / r / n"); t.stop (); t.reset (); } / * kung (batterie.read () <= (2.8 * ref_batt.read () / 1.23)) pc.printf ("batterie faible / r / n"); sigorta.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 maghintay (10); sigorta.printf ("AT $ P = 1"); maghintay (10); sigorta.printf ("AT $ P = 0 / r / n"); * /}}

Hakbang 3: Assembly PCB

Ang nakaraang prototype ay masyadong malaki upang ilagay ito sa mailbox. Narito ang ilang mga file ng Gerber upang mai-print ang iyong circuit at i-assemble ang iyong sangkap.

Hakbang 4: Back-end Website

Back-end Website
Back-end Website
Back-end Website
Back-end Website

Nakabatay kami sa aming arkitekturang backend sa IBM Cloud (IBM IoT Watson Platform at NodeRED) at sa mga kahilingan sa API REST. Ginamit ang IBM Cloud upang pamahalaan ang komunikasyon sa pagitan ng iba't ibang bahagi ng aming system. Tulad ng nakikita mo sa aming daloy ng NodeRED, kinokontrol namin ang lahat ng mga kahilingang natanggap mula sa Sigorta API (na nagpapadala ng mga mensahe mula sa aming aparato) at mula sa aming website ng Wix (para sa pagrehistro ng isang bagong aparato). Gayundin, responsable ang cloud para sa pagpapadala ng email ng notification sa kliyente at para sa pagrehistro ng isang bagong kliyente na ang mga impormasyon ay maiimbak sa aming cloud-based database (MongoDB). Kaya, pinamamahalaan talaga ng NodeRED ang mga kahilingan sa API REST at mga query sa database (INSERT at SELECT) upang matiyak na ang tamang abiso ay ipapadala sa tamang kliyente sa oras.

Inirerekumendang: