Satura rādītājs:

Postino: Vai pastnieks kaut ko piegādāja?: 6 soļi (ar attēliem)
Postino: Vai pastnieks kaut ko piegādāja?: 6 soļi (ar attēliem)

Video: Postino: Vai pastnieks kaut ko piegādāja?: 6 soļi (ar attēliem)

Video: Postino: Vai pastnieks kaut ko piegādāja?: 6 soļi (ar attēliem)
Video: Жена_Рассказ_Слушать 2024, Jūlijs
Anonim
Postino: Vai pastnieks kaut ko piegādāja?
Postino: Vai pastnieks kaut ko piegādāja?

Nav manas idejas: kādu dienu draugs man jautāja, kā attālināti pārbaudīt, vai viņa pastkastītē nav pasta. Pastkastīte neatrodas uz gājēju celiņa līdz viņa durvīm, tāpēc, tā kā viņš ir slinks zēns, viņš prātoja, vai tehnoloģiju sīkrīkam vajadzētu brīdināt viņu par jebkuru vēstuli pastkastē. Es paskatījos tirgū un nevarēju atrast nevienu gatavu ierīci, kas būtu piemērota viņa vajadzībām, tāpēc es izvirzīju sev izaicinājumu: kāpēc gan to neprojektēt un neuzbūvēt?

Ierobežojumi bija:

  • ar akumulatoru darbināms ar saprātīgu kalpošanas laiku starp bateriju nomaiņām;
  • WiFi komunikācija;
  • pārbaudiet tikai vienu reizi dienā, vai bija pasts vai nē;

Galvenais jautājums bija: kāda veida sensors varētu atbilst manām prasībām? Tuvuma sensors nevarēja darboties, jo pārbaude bija jāveic tikai vienu reizi dienā, nevis reāllaikā; arī svara sensors, jo tas būtu radījis sarežģītības un jutīguma problēmas (papīra lapa varētu būt ļoti viegla). Mana izvēle tika veikta uz lidojuma laika (mikrolāzera) sensora. Kad tas ir kalibrēts pastkastes izmēram, viss, kas atrodas vidū, būtu iedarbinājis sensoru! Ņemot vērā 3 ierobežojumus, es nolēmu mērīšanai izmantot ESP8266 (palaižot programmatūru un izveidot savienojumu ar WiFi), VL6180 lidojuma laika sensoru un DS3231 reālā laika pulksteni, lai vienu reizi dienā aktivizētu visas shēmas. Postino ir dzimis!

1. darbība: detaļas un sastāvdaļas

  • ESP8266-01 (vai ESP-12E NodeMCU)
  • VL6108 Lidojuma laika sensors
  • DS3231 Pulkstenis reālā laikā
  • IRLZ44 N-kanālu MosFET
  • BC547 tranzistors
  • Rezistori
  • CR123 akumulators

2. solis: sensors

Sensors
Sensors

Sistēmas sirds ir VL6180 sensors. Šī ir revolucionāra tehnoloģija, kas ļauj izmērīt absolūtu attālumu neatkarīgi no mērķa atstarošanas. Tā vietā, lai novērtētu attālumu, mērot no objekta atstarotās gaismas daudzumu (ko būtiski ietekmē krāsa un virsma), VL6180X precīzi mēra laiku, kas nepieciešams gaismai, lai nokļūtu tuvākajā objektā un atspoguļotos atpakaļ uz sensoru (laiks -no lidojuma). Apvienojot infrasarkano staru izstarotāju, diapazona sensoru un apkārtējās gaismas sensoru trīs vienā vienā lietošanai gatavā, atkārtoti uzpildāmā iepakojumā, VL6180X ir viegli integrējams un ietaupa galaprodukta veidotāja garu un dārgu optisko un mehānisko konstrukciju optimizāciju.

Modulis ir paredzēts darbam ar mazu jaudu. Es izmantoju Pololu sadalīšanas paneli, kurā ir sprieguma regulatori, kas ļauj darboties ieejas sprieguma diapazonā no 2,7 V līdz 5,5 V.

Sensors pieļauj 3 derīgus mērogošanas koeficientus, kas nosaka maksimālo mērījumu diapazonu no 20 līdz 60 cm ar dažādām jutībām. Konfigurējot diapazona mērogošanas koeficientu, sensora iespējamo maksimālo diapazonu var palielināt par zemākas izšķirtspējas cenu. Mērogošanas koeficienta iestatīšana uz 2 nodrošina līdz 40 cm diapazonu ar 2 mm izšķirtspēju, savukārt mērogošanas koeficients 3 nodrošina līdz 60 cm diapazonu ar 3 mm izšķirtspēju. Jums ir jāpārbauda 3 skalas ar pastkastes izmēriem. Tā kā mans bija 25 cm (H), es izmantoju mēroga koeficientu = 1.

3. darbība: pulksteņa pielāgošana reāllaikam

RTC es izmantoju DS3231 sadalīšanas paneli, kas ietver EEPROM (manam nolūkam nederīgu) un monētas izmēra akumulatoru. Tā kā es nolēmu barot RTC caur galvenās ierīces akumulatoru (3v CR123), es izņēmu monētas akumulatoru; lai taupītu enerģiju, es arī noņēmu EEPROM (rūpīgi nogriežot tā tapas) un iebūvēto vadu.

Monētu akumulators man nebija noderīgs, jo man nebija nepieciešams saglabāt reālā laika datumu/stundu/minūti/sekundi, bet RTC bija jāskaita tikai 24 stundas un pēc tam jāieslēdz modinātājs, lai ieslēgtu ierīci.

4. solis: citi dažādi uz kuģa

Citi dažādi uz kuģa
Citi dažādi uz kuģa
Citi dažādi uz kuģa
Citi dažādi uz kuģa

Ierīces ieslēgšanu veic tranzistors un MosFET ķēde, ko iedarbina RTC trauksme. Kad trauksme ir atiestatīta, ķēde pārtrauc ierīces barošanu vēl 24 stundu ciklam. Kad tiek sasniegts trauksmes signāls, DS3231 pārslēdz tapu no augstas uz zemu: normālos apstākļos tranzistors ir piesātināts un noslēdzas zem zemes MosFET vārtiem. Tiklīdz trauksme noved pie tranzistora bāzes pie zemes, tā atveras un ļauj MosFET slēgt ķēdi un nodrošināt strāvu pārējiem komponentiem.

Turklāt es pievienoju “test-1M” džemperi. Šī slēdža mērķis ir - ja tas ir aktivizēts - mainīt ciklu no vienas reizes dienā uz vienu reizi minūtē, lai veiktu izvietošanas testus. Lai mainītu intervālu no vienas dienas uz vienu minūti, vispirms uz apmēram 15 sekundēm jāaizver džemperis “Test-C”, lai apietu pulksteņa modinātāja aktivizācijas periodu un ieslēgtu ierīci. Kad testi ir veikti, atveriet džemperus un atiestatiet ierīci (cikla jauda).

5. solis: shematisks

Shematisks
Shematisks

6. darbība: programmatūra un loģika

Pārbaužu laikā es (praktisku iemeslu dēļ) izmantoju NodeMCU kontrolieri, tāpēc programmatūra par to parūpējas, iestatot CHIP mainīgo uz “NodeMCU” vai “esp8266”.

Skice ievieš WiFiManager bibliotēku, lai ļautu ierīcei izveidot savienojumu ar derīgu WiFi AP jau pirmās palaišanas laikā. Šādā gadījumā ierīce pāriet AP režīmā, ļaujot tai izveidot savienojumu un izvēlēties pareizo WiFi tīklu, lai pievienotos. Pēc tam tīkla konfigurācija tiek saglabāta EPROM nākamajiem cikliem.

Mainīgais REST_MSG satur http ziņojumu, kas jānosūta, kad sensors pastkastē atrod objektu. Manā gadījumā tas nosūta ziņojumu uz dominējošu REST serveri, bet jūs varat to mainīt pēc savas izvēles: Telegram BOT ziņojumu, IFTTT WebHook notikumu utt.

Pārējā skice ir iestatīšanas () funkcijā, jo cilpa nekad netiek sasniegta. Pēc vairākām bibliotēkām nepieciešamajām konfigurācijām programmatūra iestata pulksteņa laiku uz 00:00:01 un modinātāju uz vienu reizi dienā (vai reizi minūtē, ja ir aktivizēts džemperis “test-1M”). Tad tas veic pasākumu, nosūta paziņojumu (ja pastkastē tiek atrasts kāds objekts) un atiestata trauksmes tapu, izslēdzot ierīci. Cikla beigās tiek ieslēgts tikai RTC, skaitot 24 stundas. Džemperis Test-1M ir pievienots ESP8266 RX tapai, ko izmanto kā GPIO-3, izmantojot iestatījumu: setMode (PIN, FUNCTION_3). Šī iemesla dēļ jūs nevarat izmantot seriālo monitoru, kamēr darbojas ESP8266: līnija “#define DEBUG” (kas atļauj visas skices sērijveida izdrukas) tiek izmantota tikai tad, ja ESP8266 vietā ir instalēts NodeMCU.

ESP8266 apstrādā I2C sakarus ar RTC un sensoru, izmantojot tapas GPIO-0 un GPIO-2, kas inicializētas Wire bibliotēkā.

Pilnu kodu var lejupielādēt no šīs saites.

Palīgtehnikas konkurss
Palīgtehnikas konkurss
Palīgtehnikas konkurss
Palīgtehnikas konkurss

Otrās vietas palīgtehnikas konkursā

Ieteicams: