Satura rādītājs:

Mājas klātbūtnes simulators un drošības kontroles ierīce: 6 soļi (ar attēliem)
Mājas klātbūtnes simulators un drošības kontroles ierīce: 6 soļi (ar attēliem)

Video: Mājas klātbūtnes simulators un drošības kontroles ierīce: 6 soļi (ar attēliem)

Video: Mājas klātbūtnes simulators un drošības kontroles ierīce: 6 soļi (ar attēliem)
Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024, Jūlijs
Anonim
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce
Mājas klātbūtnes simulators un drošības kontroles ierīce

Šis projekts ļauj mums simulēt klātbūtni un noteikt kustības mūsu mājās.

Mēs varam konfigurēt ierīču tīklu, kas uzstādīts dažādās mūsu mājas telpās, un tās visas kontrolē galvenā ierīce.

Šis projekts apvieno šīs funkcijas vienā ierīcē (1.attēls):

  1. Tas ir klātbūtnes simulators: ierīce ieslēdz un izslēdz vienu spuldzi (1. ATTĒLS) un izmanto IR raidītāju (2. ATTĒLS), lai nosūtītu 38 KHz IR vadības kodus uz IR vadāmām ierīcēm (televizors, videomagnetofons, lampas, …)
  2. Tas ir kustības detektors: ierīcei ir PIR sensors kustību noteikšanai (3. ATTĒLS)

Visu sistēmu kontrolē galvenā ierīce, kas sūta signālus citām tīkla vergu ierīcēm, lai ieslēgtu un izslēgtu gaismas un aktivizētu kontrolētās IR ierīces saskaņā ar plānoto klātbūtnes simulāciju.

Galvenās ierīces galvenās iezīmes ir šādas:

  • Tas izmanto plānoto komandu secību, lai kontrolētu katru vergu ierīci. Piemēram: gaisma vergu stacijā 1 iedegas katru dienu nejaušā laika periodā vai vergu stacija 2 ieslēgs televizoru un pēc kāda laika mainīs kanālu.
  • Tā saņem signālus no vergu stacijām, kad tiek konstatēta kustība, un nosūta mums un e-pastu
  • Tas konfigurē tīmekļa serveri, lai vadītu un atjauninātu visu sistēmu attālināti no mākoņa

Es ceru, ka jums patīk un kādam esat noderīgs.

1. darbība: vergu ierīces izveide

Vergu ierīces izveide
Vergu ierīces izveide
Vergu ierīces izveide
Vergu ierīces izveide
Vergu ierīces izveide
Vergu ierīces izveide

Lai izveidotu vergu ierīci, mums būs nepieciešams:

  • Elektriskā kaste
  • ARDUINO NANO vai saderīgs ARDUINO NANO mikrokontrolleris
  • Protoboard 480
  • Stafete
  • 38 KHz IR raidītājs
  • PIR sensors
  • nRF24L01 modulis + antena
  • Adapteris modulim nRF24L01
  • Barošanas avots 5V, 0,6 A
  • Lampas turētājs
  • Spuldze
  • Kabeļi
  • Termināla bloks

Tās uzstādīšanas soļi ir šādi (skatiet katra tapas savienojuma Fritzing zīmējumu):

  1. 1. ATTĒLS: atveriet caurumu lampas turētāja elektriskajā kastē
  2. 2. ATTĒLS: uzstādiet protoboard 480 ar NANO mikrokontrolleru, IS raidītāju un barošanas avotu
  3. 3. ATTĒLS: savienojiet luktura turētāja fāzes vadītāju ar releja NC spaili un nulles vadītāju pie spaiļu bloka neitrālās ieejas. Pēc tam savienojiet releja kopējo spaili ar spaiļu bloka ieejas fāzes vadītāju
  4. 4. ATTĒLS: savienojiet IR raidītāju un PIR sensoru ar NANO mikrokontrolleri. Skatiet 3. darbību, lai konfigurētu IR kodus ierīcei, kuru vēlaties kontrolēt
  5. 5. ATTĒLS: uzstādiet nRF24L01 adapteri ārpus elektrības kastes un pievienojiet to NANO mikrokontrolleram. Kā redzat šajā attēlā, kabeļi iekļūst elektriskajā kastē caur caurumu, ko izmanto arī, lai savienotu USB programmēšanas kabeli ar NANO mikrokontrolleri

2. darbība. Galvenās ierīces izveide

Galvenās ierīces izveide
Galvenās ierīces izveide
Galvenās ierīces izveide
Galvenās ierīces izveide
Galvenās ierīces izveide
Galvenās ierīces izveide

Lai izveidotu galveno ierīci, mums būs nepieciešams:

  • Elektriskā kaste
  • ARDUINO MEGA 2560 R3 vai saderīgs ARDUINO MEGA 2560 R3 mikrokontrolleris
  • WiFi NodeMCU Lua Amica V2 ESP8266 modulis
  • RTC DS3231
  • Protoboards 170
  • Stafete
  • 38 KHz IR raidītājs
  • PIR sensors
  • nRF24L01 modulis + antena
  • Adapteris modulim nRF24L01
  • Barošanas avots 5V, 0,6 A
  • Lampas turētājs
  • Spuldze
  • Kabeļi
  • Termināla bloks

Tās uzstādīšanas darbības ir ļoti līdzīgas iepriekšējai, jo galvenā ierīce būtībā ir vergu ierīce ar vairākām funkcijām (skatiet katra tapas savienojuma Fritzing zīmējumu):

  • 1. ATTĒLS: atveriet caurumu lampas turētāja elektriskajā kastē
  • 2. ATTĒLS, 3. ATTĒLS: instalējiet ESP8266 moduli protoboardā 170 un novietojiet to virs MEGA 2560 mikrokontrollera, kā redzams attēlos
  • 4. ATTĒLS: ielīmējiet koka gabalu elektriskās kastes iekšpusē. Virs koka gabala uzstādiet MEGA 2560 mikrokontrolleru ar ESP8266, pulksteņa moduli DS3231 un adapteri nRF24L01
  • 5. ATTĒLS: uzstādiet barošanas avotu un patiesi. Pievienojiet luktura turētāja fāzes vadītāju releja NC spailei un nulles vadītāju spaiļu bloka neitrālajai ieejai. Pēc tam savienojiet releja kopējo spaili ar spaiļu bloka ieejas fāzes vadītāju.

3. darbība. Galveno un palīgierīču konfigurēšana

Galveno un palīgierīču konfigurēšana
Galveno un palīgierīču konfigurēšana

Lai konfigurētu ierīces, jums jāveic šādas darbības:

SOLIS 3.1 (abas ierīces)

Instalējiet IRremote, RF24Network, RF24, DS3231 un Time bibliotēkas savā ARDUINO IDE

3.2. SOLIS (tikai vergu ierīcei)

Konfigurējiet adresi tīklā. Vienkārši meklējiet šo kodu skicē "klātbūtne_slave.ino" un norādiet adresi oktāla formātā. Izmantojiet tikai adreses, kas ir lielākas par 0, jo adrese 0 ir rezervēta galvenajai ierīcei

const uint16_t šis_mezgls = 01; // Mūsu vergu ierīces adrese oktāla formātā

Ielādējiet skici "klātbūtne_slave.ino" mikrokontrollerī.

3.3. SOLIS (tikai galvenajai ierīcei) (IEVADOT IR KONTROLES KODUS)

Ja jūs izmantosit ierīci, kuru kontrolē 38KHz IR vadības kodi, lai simulētu klātbūtni, jums ir jāzina daži no tiem.

Pretējā gadījumā IR vadības kodi ir jāiegūst no ierīces.

Lai to izdarītu, jums būs nepieciešams 38KHz IR uztvērējs, vienā NANO mikrokontrollerī ielādējiet skici "ir_codes.ino" un savienojiet visu, kā redzams 1.

Pēc tam pavērsiet tālvadības pulti uz IR uztvērēju, nospiediet jebkuru pogu un sērijveida monitorā redzēsiet kaut ko līdzīgu:

(12 biti) SONY dekodēts: A90 (HEX), 101010010000 (BIN) // POWER poga

(12 biti) SONY dekodēts: C10 (HEX), 110000010000 (BIN) // 4 poga (12 biti) Dekodēts SONY: 210 (HEX), 1000010000 (BIN) // 5 poga

Šajā gadījumā tālvadības pults izmanto SONY IR protokolu, un, nospiežot tālvadības pults barošanas pogu, mēs iegūstam 12 bitu IR kodu "0xA90" vai, nospiežot tālvadības pults pogu 4, iegūstam IR kods "0xC10".

Es ieteiktu vismaz meklēt jaudas un vairāku pogu numuru IR vadības kodu, lai simulētu klātbūtni.

Kad IR kodi ir iegūti iepriekš, tie jāievada šādā veidā:

PIRMAIS VEIDS

Ja esat konfigurējis wifi tīklu, varat to izdarīt, izmantojot tīmekļa lapu (skatiet soli: Web serveris)

OTRAIS VEIDS

Pretējā gadījumā jums ir jāmeklē nākamais kods failā "ir_codes.ino" un jāatjaunina informācija. Zemāk redzamajā kodā varat redzēt, kā mēs varam ieviest iepriekš iegūto informāciju tikai par galveno ierīci (adrese = 0)

/******************************************/

/******* IR vadības kodi ***************** / /******************** **********************/ // protokols_id, bitu skaits, 10 galvenās ierīces IR vadības kodi (adrese = 0) SONY, 12, 0xA90, 0xC10, 0x210, 0, 0, 0, 0, 0, 0, 0, // Protocol_id, bitu skaits, 10 IR vadības kodi vergu ierīcei (adrese = 1) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protokola_id, bitu skaits, 10 IR vadības kodi vergu ierīcei (adrese = 2) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protokola_id, bitu_skaitlis, 10 IR vadības kodi vergu ierīcei (adrese = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id,_b_bit_ numurs, 10 IR vadības kodi vergu ierīcei (adrese = 4) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /************ ******************************** / / ********* Beigu IR vadības kodi ** ************ / / *********************************** *********/

Skice ir konfigurēta darbam ar šādiem IR protokoliem:

  • NEC
  • SONY
  • RC5
  • RC6
  • LG
  • JVC
  • WHYNTER
  • SAMSUNG
  • AŠS
  • Trauki
  • DENON
  • LEGO_PF

Failā "ir_codes.ino" varat atrast dažus IS vadības kodus SAMSUNG un SONY protokoliem.

/***************************************************************************/

// DAŽI IR_PROTOKOLI UN KODI // (SAMSUNG, bitu skaits, poga POWER, 1., 2., 3. poga) // SAMSUNG, 32, 0xE0E010EF, 0xE0E020DF, 0xE0E0609F, 0xE0E0A05F // (SONY, pogas 2, poga, 1 poga, 3, 4, 5, 6, 7, 8, 9, 0) // SONY, 12, 0xA90, 0x010, 0x810, 0x410, 0xC10, 0x210, 0xA10, 0x610, 0xE10, 0x110, 0x910 /***** ************************************************* *******************/

SVARĪGI: pirmajam ievadītajam IR vadības kodam ir jābūt IR vadības kodam, lai izslēgtu ierīci. Meistars to nosūtīs vergiem, kad šai ierīcei netiks plānota darbība

Ja kāda iestāde zina vai kāds ir ieguvis dažus IR kontroles kodus dažiem iepriekš uzskaitītajiem protokoliem, lūdzu, ievietojiet komentāru šajā pamācībā ar šādu informāciju: protokola ID, protokola garums un IR vadības kodi.

3.4. SOLIS (tikai galvenajai ierīcei)

Klātbūtnes simulācijas plānošanu var ieviest šādā veidā:

PIRMAIS VEIDS

Ja esat konfigurējis wifi tīklu, varat to izdarīt, izmantojot tīmekļa lapu (skatiet soli: Web serveris)

OTRAIS VEIDS

Failā "ir_codes.ino" jāmeklē nākamais kods un jāatjaunina informācija.

Klātbūtnes simulācijas plānošanas formāts ir šāds:

[stundu_init_interval1], [hour_end_interval1], [hour_init_interval2], [hour_end_interval2], [min_delay_ir], [max_delay_ir], [min_delay_light], [max_delay_light]

/************ APLIECĪBAS SIMULĀCIJAS PLĀNOŠANA ************/

7, 8, 17, 3, 5, 60, 10, 40, // galvenā ierīce (adrese = 0) 0, 0, 17, 23, 3, 30, 5, 10, // vergu ierīce (adrese = 1) 0, 0, 0, 0, 0, 0, 0, 0, // vergu ierīce (adrese = 2) 0, 0, 0, 0, 0, 0, 0, 0, // vergu ierīce (adrese = 3) 0, 0, 0, 0, 0, 0, 0, 0 // vergu ierīce (adrese = 4) /************ BEIGĀŠANAS SIMULATORS ********** **********/

Iepriekš minētajā piemērā galvenās ierīces klātbūtnes simulācijas plānošana ir šāda:

  • (hour_init_interval1 = 7) Pirmā intervāla simulācija sāksies katru dienu pulksten 7:00
  • (hour_end_interval1 = 8) Pirmā intervāla simulācija beigsies tās pašas dienas pulksten 8:00
  • (hour_init_interval2 = 17) Otrā intervāla simulācija sāksies pulksten 17:00. katru dienu
  • (hour_end_interval2 = 3) Otrā intervāla simulācija beigsies nākamās dienas 3:00
  • (min_delay_ir = 5) (max_delay_ir = 60) Aizkaves laiks minūtēs starp izlases veida IR vadības kodu nosūtīšanu ir nejaušs skaitlis no 5 līdz 60
  • (min_delay_light = 10) (max_delay_light = 40) Aiztures laiks minūtēs starp gaismas ieslēgšanu un izslēgšanu ir nejaušs skaitlis no 10 līdz 40

un vergu ierīces ar adresi 2 klātbūtnes simulācijas plānošana ir šāda:

  • (hour_init_interval1

    = 0) Nav definēta pirmā intervāla simulācija

  • (hour_end_interval1 = 0) Nav definēta pirmā intervāla simulācija
  • (hour_init_interval2 = 17) Simulācija sāksies pulksten 17:00. katru dienu
  • (hour_end_interval2 = 23) Simulācija beigsies pulksten 23:00. no tās pašas dienas
  • (min_delay_ir = 3)

    (max_delay_ir

    = 30) Aizkavēšanās laiks minūtēs starp izlases veida IR vadības kodu nosūtīšanu ir nejaušs skaitlis no 3 līdz 30

    (min_delay_light = 5)

    (max_delay_light

    = 10) Aiztures laiks minūtēs starp gaismas ieslēgšanu un izslēgšanu ir nejaušs skaitlis no 5 līdz 10

SOLIS 3.5 (tikai galvenajai ierīcei) (REĀLĀ LAIKA PULKSTENA KONFIGURĒŠANA)

Viens no šī projekta galvenajiem elementiem ir laiks. Mums ir jāiestata ARDUINO laiks, kad skice sāk darboties. Lai to izdarītu, mums ir nepieciešams reālā laika pulksteņa modulis. Viens pulksteņa modulis ir DS3231, kas atbalsta rezerves akumulatora lādētāju, ko var izmantot, ja vien tas nav savienots ar mikrokontrolleri ar trim datu kabeļiem, izmantojot I2C protokolu.

Lai izmantotu DS3231, šajā modulī ir jāiestata laiks. Lai to izdarītu, galvenajā ierīcē jāpalaiž skice "DS3231_set.ino".

3.6. SOLIS (tikai galvenajai ierīcei) (ESP8266 MODULA KONFIGURĒŠANA)

Skice, kas darbojas šajā modulī, mēģina izveidot savienojumu ar vietējo wifi tīklu un konfigurēt tīmekļa serveri.

Tāpēc mums ir jāatjaunina šāda informācija skicē "klātbūtne_web.ino", lai piekļūtu vietējam wifi tīklam un konfigurētu Gmail e-pasta adresi, no kuras ESP8266 sūtīs visas tīkla ierīču noteiktās kustības. un e-pasta adresi, uz kuru vēlaties saņemt paziņojumus (norādāms Gmail sūtītājs ESP8266)

const char* ssid = "jūsu vietējā wifi tīkla ssid";

const char* password = "jūsu vietējā wifi tīkla parole"; const char* to_email = "e-pasts, kurā vēlaties saņemt paziņojumus par kustību noteikšanu"; WiFi servera serveris (80); // osta, ko mēdza klausīties

un šādu informāciju skicē "Gsender.h".

const char*EMAILBASE64_LOGIN = "*** jūsu Gmail pieteikšanās kods BASE64 ***";

const char*EMAILBASE64_PASSWORD = "*** jūsu Gmail paroles kodējums BASE64 ***"; const char*FROM = "*** jūsu gmail adrese ***";

SVARĪGI: šis kods nedarbojas ar ESP8266 kodolu Arduino versijai 2.5.0. Pagaidu risinājumam izmantojiet pamatversiju 2.4.2

3.7. SOLIS (tikai galvenajai ierīcei)

Pēc iepriekšējās 3.3., 3.4., 3.5. Un 3.6. Darbības veikšanas ielādējiet skici "klātbūtne_master.ino" NANO mikrokontrollerī un skici "klātbūtne_web.ino" modulī ESP8266.

4. darbība: sistēmas pārbaude

Lai pārbaudītu, vai viss darbojas tā, kā mēs vēlamies, skice "klātbūtne_master.ino" var darboties testa režīmā.

Jūs varat pārbaudīt konkrētu ierīci divos veidos:

PIRMAIS veids: ja neizmantojat wifi tīklu, jums jāmeklē nākamais kods failā "klātbūtnes_master.ino", mainiet mainīgā "bool_test_activated" sākotnējo vērtību uz "true" un atjauniniet viena adresi ierīci, lai pārbaudītu nākamajā koda rindiņā un ielādētu skici galvenās ierīces ARDUINO mikrokontrollerī.

Būla bool_test_activated = false; // mainīt uz true uz init testa režīmu

int device_to_test = 0; // verdzes ierīces adrese testēšanai

Neaizmirstiet mainīt vērtību uz nepatiesu, ja vēlaties iziet no testa režīma un atkārtoti ielādēt skici

OTRĀS VEIDS: Ja izmantojat wifi tīklu, varat izmantot tīmekļa lapu, lai aktivizētu testa režīmu. Skatiet soli "Tīmekļa serveris"

Ja testējamā ierīce sūtīs IR vadības kodus, novietojiet galveno vai palīgierīci IR vadāmās ierīces (TV, radio …) priekšā.

Šis režīms darbojas šādi:

  • GAISMAS TESTĒŠANA. Konkrētās ierīces gaismai jāieslēdzas un jāizslēdzas ik pēc 10 sekundēm.
  • IR KODU PĀRBAUDE. Skice nejauši izvēlas iepriekš ievadīto IR kodu un ik pēc 10 sekundēm nosūtīs to uz IR kontrolēto ierīci. Tātad jums ir jāpārbauda, vai šī ierīce veic darbību, kas atbilst saņemtajam IR kodam
  • KUSTĪBU DETEKTORA TESTĒŠANA. Ja ierīce nosaka kustību PIR sensora priekšā, tā nosūtīs signālu galvenajai ierīcei, un tās gaismai jāsāk mirgot vairākas reizes

Šīs pamācības beigās redzamajā video varat redzēt, kā darbojas testa režīms.

5. darbība: tīmekļa serveris

Tīmekļa serveris
Tīmekļa serveris
Tīmekļa serveris
Tīmekļa serveris
Tīmekļa serveris
Tīmekļa serveris

Lai kontrolētu sistēmu un pārbaudītu, vai viss darbojas pareizi, ESP8266 modulis ir konfigurēts kā tīmekļa serveris. Lai attālināti piekļūtu tīklam, jums nav nepieciešama cita papildu programmatūra, vienkārši ievadiet maršrutētāja IP tīmekļa pārlūkprogrammā. Maršrutētājā jūs iepriekš esat konfigurējis portu pāradresāciju, lai piekļūtu modulim ESP8266, izmantojot jūsu konfigurētu statisku vietējo IP.

Šis modulis ir savienots ar ARDUINO mikrokontrolleru, izmantojot I2C protokolu.

Sākotnējo tīmekļa lapu varat redzēt 1. ATTĒLĀ:

  • Sadaļā SISTĒMAS STĀVOKLIS tiek parādīta informācija par sistēmu:

    • Sistēmas datums un laiks. Ir ļoti svarīgi, lai datums un laiks būtu savlaicīgi
    • Klātbūtnes simulatora stāvoklis (iespējots vai atspējots), pēdējās klātbūtnes darbības datums un laiks, kā arī tās ierīces adrese, kura ir veikusi darbību (2. ATTĒLS)
    • Kustību detektora stāvoklis (iespējots vai atspējots) un kustību noteikšanas vēsture pēc ierīces: skaitītājs un pēdējās kustības noteikšanas datums un laiks (3. ATTĒLS) Šajā attēlā redzams, ka ierīcē ar adresi 1 ir konstatēts 1 kustība un pēdējā bija 16:50:34
  • Sadaļa KOMANDAS ļauj mums rīkoties šādi:

    • Lai aktivizētu klātbūtnes simulatoru
    • Lai aktivizētu kustības detektoru
    • Lai izvēlētos ierīci testa sākšanai un apturēšanai (4. ATTĒLS)
  • Sadaļa PRESENCE COMMAND ļauj mums rīkoties šādi:

    Lai ieviestu vai atjauninātu konkrētas ierīces klātbūtnes simulācijas plānošanu. 5. ATTĒLĀ varat redzēt, kā atjaunināt klātbūtnes simulācijas plānošanu adreses ierīcei 1. Virknes formāts ir šāds: (addr_device), (hour_init1), (end_init1), (hour_init2), (end_init2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light). Visi skaitļi ir veseli skaitļi. Ja esat ieviesis derīgu virkni, pirms teksta "LAST" redzēsit jauno klātbūtnes simulācijas plānošanu, pretējā gadījumā jūs redzēsit ziņojumu "LAST: NOT VALID"

  • Sadaļa IR KODA KOMANDA ļauj mums rīkoties šādi:

    Lai ieviestu vai atjauninātu IR vadības kodu konkrētai ierīcei. Attēlā 6 varat redzēt, kā atjaunināt vai ieviest jaunu IR vadības kodu adreses ierīcei 1. Virknes formāts ir šāds: (addr_device), (IR_protokols), (protocol_bits_length), (index_IR_control_code), (IR_control_code). [IR_protokols] ir reģistrjutīga virkne, kas pieņem tikai nākamās vērtības (SONY, NEC, RC5, RC6, LG, JVC, WHYNTER, SAMSUNG, DISH, DENON, SHARP, LEGO_PF) un (IR_control_code) ir heksadecimāls skaitlis. Tā kā sistēma ir konfigurēta 10 IR vadības kodu glabāšanai, (index_IR_control_code) ir vesels skaitlis no 1 līdz 10. Tāpat kā iepriekš, ja esat ieviesis derīgu virknes formātu, jauno teksta vadības kodu redzēsit pirms teksta "LAST", pretējā gadījumā jūs redzēsit ziņojumu "PĒDĒJAIS: NEDERĪGS"

Lai piekļūtu šai vietnei no sava vietējā wifi tīkla, vienkārši ierakstiet IP, kuru maršrutētājs tīmekļa pārlūkprogrammā ir piešķīris ESP8266. Visos attēlos var redzēt, ka mana maršrutētāja piešķirtais IP ir 192.168.43.120.

Lai piekļūtu attālināti ārpus vietējā wifi tīkla, maršrutētājā jākonfigurē ports, kuru izmantosit, lai klausītos ienākošos datus un novirzītu to uz vietējā tīkla ESP8266. Pēc tam tīmekļa pārlūkprogrammā vienkārši ierakstiet maršrutētāja IP.

6. darbība. Piemērs visu skaidrošanai

Image
Image
Piemērs visu skaidrošanai
Piemērs visu skaidrošanai

Es esmu izstrādājis konkrētu piemēru, lai visu izskaidrotu

Esmu izveidojis šādas ierīces (2. ATTĒLS)

  • Viena ierīce ar IR vadību, izmantojot NANO mikrokontrolleru, RGB vadība galda tenisa bumbā un viens IR uztvērēja modulis (1. ATTĒLS). Kad mēs nospiežam vadības pogu no 1 līdz 7 IR tālvadības pultī, galda tenisa bumbiņa maina savu krāsu.
  • Galvenā ierīce (adrese 0)
  • Viena vergu ierīce (1. adrese)

Ar visu iepriekš minēto mēs pārbaudīsim visas projekta iezīmes. Klātbūtnes simulācijas plānošana varētu būt šāda:

  1. Bumba, ko kontrolē vergu ierīce, mainīs krāsas no pulksten 17:00. līdz 23:00. un no rīta no 7:00 līdz 8:00 katru nejaušu minūšu intervālu starp 1 un 1.
  2. Gaisma, ko kontrolē vergu ierīce, ieslēgsies un izslēgsies no pulksten 17:00. līdz 23:00. un no rīta no 7:00 līdz 8:00 katru nejaušu minūšu intervālu starp 1 un 2
  3. Gaisma, ko kontrolē galvenā ierīce, ieslēgsies un izslēgsies no pulksten 16:00. līdz nākamās dienas pulksten 1:00 katru nejaušu minūšu intervālu starp 1 un 2

Pēc skices "ir_codes.ino" izpildes mēs esam noskaidrojuši, ka IR tālvadības pults izmantotais IR protokols ir "NEC", IR kodu garums ir 32 biti un IR vadības kodi pogām no 1 līdz 7 heksadecimālā formātā ir:

1. POGA = FF30CF

2. POGA = FF18E7

3. POGA = FF7A85

4. POGA = FF10EF

POGA 5 = FF38C7

6. POGA = FF5AA5

7. POGA = FF42BD

Sistēmu var konfigurēt divos veidos:

PIRMAIS veids: tīmekļa lapas izmantošana (skatiet videoklipu šīs pamācības beigās)

OTRAIS veids: faila "ir_codes.ino" atjaunināšana un augšupielāde pēc:

/******************************************/

/******* IR vadības kodi ***************** / /******************** **********************/ // protokols_id, bitu skaits, 10 galvenās ierīces IR vadības kodi (adrese = 0) NEC, 32, 0xFF30CF, 0xFF18E7, 0xFF7A85, 0xFF10EF, 0xFF38C7, 0xFF5AA5, 0xFF42BD, 0, 0, 0, // protokola_id, bitu skaits, 10 verdzības ierīces IR vadības kodi (adrese = 1) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protokola_id, bitu skaits, 10 verdzības ierīces IR vadības kodi (adrese = 2) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protokola_id, bitu_skaitlis, 10 IR vadības kodi vergu ierīcei (adrese = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id,_b_bit_ numurs, 10 IR vadības kodi vergu ierīcei (adrese = 4) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /************ ******************************** / / ********* Beigu IR vadības kodi ** ************ / / *********************************** *********/

/************ APLIECĪBAS SIMULĀCIJAS PLĀNOŠANA ************/

0, 0, 16, 1, 0, 0, 1, 2, // galvenā ierīce (adrese = 0) 7, 8, 17, 23, 1, 1, 1, 2, // vergu ierīce (adrese = 1) RGB lodīte 0, 0, 0, 0, 0, 0, 0, 0, // vergu ierīce (adrese = 2) 0, 0, 0, 0, 0, 0, 0, 0, // vergu ierīce (adrese = 3) 0, 0, 0, 0, 0, 0, 0, 0 // vergu ierīce (adrese = 4) /************ BEIGAS PRESENCE SIMULATOR ******** ************/

Ieteicams: