Cov txheej txheem:

Kev Muaj Tsev Nyob Simulator thiab Kev Tswj Xyuas Kev Ruaj Ntseg: 6 Kauj Ruam (nrog Duab)
Kev Muaj Tsev Nyob Simulator thiab Kev Tswj Xyuas Kev Ruaj Ntseg: 6 Kauj Ruam (nrog Duab)

Video: Kev Muaj Tsev Nyob Simulator thiab Kev Tswj Xyuas Kev Ruaj Ntseg: 6 Kauj Ruam (nrog Duab)

Video: Kev Muaj Tsev Nyob Simulator thiab Kev Tswj Xyuas Kev Ruaj Ntseg: 6 Kauj Ruam (nrog Duab)
Video: Saib Mis paub Poj niam (hluas nkauj) tus yam ntxwv lub siab 2024, Lub Xya hli ntuj
Anonim
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom
Tsev Muaj Simulator thiab Kev Ruaj Ntseg Tswj Xyuas Khoom

Txoj haujlwm no tso cai rau peb sim ua kom pom thiab kuaj pom kev txav chaw hauv peb lub tsev.

Peb tuaj yeem teeb tsa lub network ntawm cov cuab yeej teeb tsa hauv chav sib txawv ntawm peb lub tsev txhua tus ntawm lawv tswj los ntawm lub cuab yeej tseem ceeb.

Txoj haujlwm no suav nrog cov yam ntxwv no ntawm ib lub cuab yeej (DUAB 1):

  1. Nws yog qhov muaj nyob sim: lub cuab yeej hloov thiab tua ib lub teeb (DUAB 1) thiab siv IR xa (duab 2) xa 38 KHz IR tswj cov lej rau IR tswj cov cuab yeej (TV, VCR, teeb, …)
  2. Nws yog lub ntsuas hluav taws xob: lub cuab yeej tau txais lub PIR sensor txhawm rau txheeb xyuas kev txav chaw (DUAB 3)

Tag nrho cov kab ke tau tswj hwm los ntawm tus tswv cuab uas xa cov cim rau lwm tus qhev khoom siv nthuav tawm hauv lub network kom qhib thiab tua lub teeb thiab kom qhib kev tswj hwm IR cov cuab yeej raws li lub sijhawm tau sim sim.

Cov yam ntxwv tseem ceeb ntawm tus tswv ntaus ntawv yog cov hauv qab no:

  • Nws siv sijhawm teem sijhawm ruaj ntseg ntawm cov lus txib los tswj hwm txhua tus cuab yeej qhev. Piv txwv li: lub teeb nyob hauv chaw ua haujlwm qhev 1 yuav hloov pauv txhua hnub thaum lub sijhawm tsis raug lossis lub chaw haujlwm qhev 2 yuav hloov pauv hauv TV thiab yuav hloov pauv channel tom qab lub sijhawm.
  • Nws tau txais cov cim los ntawm cov chaw ua qhev thaum pom muaj kev txav chaw thiab xa peb thiab e-mail
  • Nws teeb tsa Lub Vev Xaib los tswj thiab hloov kho tag nrho cov kab ke nyob deb ntawm Huab

Kuv vam tias koj nyiam thiab muaj txiaj ntsig zoo rau qee leej.

Kauj Ruam 1: Ua Lub Tsev Qhua

Tsim Ib Qho Khoom Siv
Tsim Ib Qho Khoom Siv
Tsim Ib Qho Khoom Siv
Tsim Ib Qho Khoom Siv
Tsim Ib Qho Khoom Siv
Tsim Ib Qho Khoom Siv

Txhawm rau tsim cov cuab yeej qhev peb yuav xav tau cov hauv qab no:

  • Lub thawv hluav taws xob
  • ARDUINO NANO lossis sib xws ARDUINO NANO microcontroller
  • Protoboard 480 Cov
  • Relay
  • 38 KHz IR transmitter
  • PIR sensor yog
  • nRF24L01 module + kav hlau txais xov
  • Adapter rau nRF24L01 module
  • Fais fab mov 5V, 0.6 A.
  • Teeb lub teeb
  • Lub teeb
  • Cov kab
  • Terminal thaiv

Cov kauj ruam rau mount nws yog cov hauv qab no (saib Fritzing daim duab rau txhua tus pin txuas):

  1. DUAB 1: qhib lub qhov nyob rau hauv lub thawv hluav taws xob rau tus tuav lub teeb
  2. Daim duab 2: teeb tsa lub protoboard 480 nrog NANO microcontroller, IR transmitter thiab lub zog xa khoom
  3. PHOOJ YWG 3: txuas tus neeg xyuas pib lub teeb ntawm lub teeb rau NC lub davhlau ya nyob twg ntawm kev xa tawm thiab tus neeg xyuas pib nruab nrab mus rau qhov nruab nrab cov tswv yim hauv lub davhlau ya nyob twg thaiv. Tom qab ntawd, txuas lub davhlau ya nyob twg ib txwm ntawm kev xa mus rau theem tus neeg xyuas pib ntawm cov tswv yim hauv lub davhlau ya nyob twg thaiv
  4. Duab 4: txuas lub IR transmitter thiab PIR sensor mus rau NANO microcontroller. Saib cov kauj ruam 3 txhawm rau teeb tsa IR cov lej rau lub cuab yeej koj xav tswj
  5. Duab 5: nruab nRF24L01 adapter sab nraum lub thawv hluav taws xob thiab txuas nws mus rau NANO microcontroller. Raws li koj tuaj yeem pom hauv daim duab no cov kab hluav taws xob nkag mus rau hauv lub thawv hluav taws xob los ntawm lub qhov uas nws kuj tseem siv los txuas USB lub xov tooj cua programming mus rau NANO microcontroller

Kauj Ruam 2: Txhim Kho Tus Thawj Coj Ntaus Ntawv

Txhim Kho Tus Thawj Coj
Txhim Kho Tus Thawj Coj
Txhim Kho Tus Thawj Coj
Txhim Kho Tus Thawj Coj
Txhim Kho Tus Thawj Coj
Txhim Kho Tus Thawj Coj

Txhawm rau tsim tus tswv cuab peb yuav xav tau cov hauv qab no:

  • Lub thawv hluav taws xob
  • ARDUINO MEGA 2560 R3 lossis sib xws ARDUINO MEGA 2560 R3 microcontroller
  • WiFi NodeMCU Lua Amica V2 ESP8266 module
  • TSO DS3231
  • Protoboard 170
  • Relay
  • 38 KHz IR transmitter
  • PIR sensor yog
  • nRF24L01 module + kav hlau txais xov
  • Adapter rau nRF24L01 module
  • Fais fab mov 5V, 0.6 A.
  • Teeb lub teeb
  • Lub teeb
  • Cov kab
  • Terminal thaiv

Cov kauj ruam txhawm rau txhim kho nws zoo ib yam li yav dhau los vim tias cov cuab yeej siv tswv yim yog cov cuab yeej siv tseem ceeb nrog ntau yam ntxiv (saib Fritzing daim duab rau txhua tus pin txuas):

  • DUAB 1: qhib lub qhov nyob rau hauv lub thawv hluav taws xob rau tus tuav lub teeb
  • DUAB 2, Duab 3: teeb tsa ESP8266 tus qauv hauv tus tiv thaiv 170 thiab tso nws hla MEGA 2560 microcontroller raws li koj tuaj yeem pom hauv cov duab
  • DUAB 4: muab ib daim ntoo tso rau hauv lub thawv eletric. Dhau ntawm daim ntoo nruab MEGA 2560 microcontroller nrog ESP8266, lub moos module DS3231 thiab nRF24L01 adapter
  • DUAB 5: teeb tsa lub hwj chim thiab qhov tseeb. Txuas tus neeg xyuas pib theem ntawm tus tuav lub teeb mus rau NC lub davhlau ya nyob twg ntawm kev xa tawm thiab tus neeg xyuas pib nruab nrab mus rau qhov nruab nrab nruab nrab hauv cov davhlau ya nyob twg. Tom qab ntawd, txuas lub davhlau ya nyob twg ib txwm ntawm kev xa mus rau theem tus neeg xyuas pib ntawm cov tswv yim hauv lub davhlau ya nyob twg thaiv.

Kauj Ruam 3: Kho Tus Xib Hwb thiab Cov Khoom Siv Qhev

Kev teeb tsa tus Xib Hwb thiab Qhua Devices
Kev teeb tsa tus Xib Hwb thiab Qhua Devices

Txhawm rau teeb tsa cov cuab yeej koj yuav tsum ua cov kauj ruam tom ntej:

KAUJ RUAM 3.1 (ob qho khoom siv)

Nruab IRremote, RF24Network, RF24, DS3231 thiab Lub sijhawm qiv hauv koj li ARDUINO IDE

KAUJ RUAM 3.2 (tsuas yog rau cov cuab yeej qhev)

Kho qhov chaw nyob hauv lub network. Tsuas yog saib rau cov cai hauv qab no hauv daim duab "muaj_slave.ino" thiab muab qhov chaw nyob hauv octal format. Tsuas yog siv chaw nyob ntau dua 0 vim tias qhov chaw nyob 0 tau tshwj tseg rau tus tswv ntaus ntawv

const uint16_t this_node = 01; // Chaw nyob ntawm peb cov cuab yeej qhev nyob hauv Octal format

Thauj cov duab "muaj_slave.ino" rau hauv microcontroller.

KAUJ RUAM 3.3 (tsuas yog rau cov cuab yeej siv tswv yim) (QHOV TSEEM CEEB IR tswj hwm CODES)

Yog tias koj yuav siv lub cuab yeej tswj hwm los ntawm 38KHz IR tswj cov lej txhawm rau sim ua kom pom, koj yuav tsum paub qee qhov ntawm lawv.

Txwv tsis pub, koj yuav tsum tau txais IR cov lej tswj hwm los ntawm koj lub cuab yeej.

Txhawm rau ua qhov ntawd, koj yuav xav tau 38KHz IR tus txais, thauj khoom hauv ib qho NANO microcontroller kos duab "ir_codes.ino" thiab txuas txhua yam raws li koj tuaj yeem pom hauv daim duab 1

Tom qab ntawd, taw tes koj cov chaw taws teeb tswj mus rau tus neeg txais IR, thawb ib lub pob thiab koj yuav pom hauv cov ntawv saib ib yam zoo ib yam li:

(12 khoom) Decoded SONY: A90 (HEX), 101010010000 (BIN) // POWER khawm

(12 khoom) Decoded SONY: C10 (HEX), 110000010000 (BIN) // 4 khawm (12 khoom) Decoded SONY: 210 (HEX), 1000010000 (BIN) // 5 khawm

Hauv qhov no cov chaw taws teeb tswj siv SONY IR raws tu qauv thiab thaum peb thawb lub zog khawm ntawm cov chaw taws teeb tswj peb tau txais IR code "0xA90" ntawm qhov ntev 12 ntsis lossis thaum peb thawb lub pob 4 ntawm cov chaw taws teeb tswj, peb tau txais IR code "0xC10".

Kuv pom zoo tsawg kawg saib rau lub hwj chim thiab ob peb lub khawm tus lej IR tswj tus lej txhawm rau sim ua kom pom.

Tom qab koj tau txais IR cov lej ua ntej, koj yuav tsum qhia lawv raws li hauv qab no:

Thawj txoj kev

Yog tias koj tau teeb tsa lub network wifi koj tuaj yeem ua nws siv lub vev xaib (Saib cov kauj ruam: Web Server)

Txoj Kev Ob

Txwv tsis pub, koj yuav tsum nrhiav tus lej tom ntej hauv cov ntaub ntawv "ir_codes.ino" thiab hloov kho cov ntaub ntawv. Hauv cov cai hauv qab no koj tuaj yeem pom yuav ua li cas peb tuaj yeem qhia cov ntaub ntawv tau txais saum toj no tsuas yog rau tus tswv cuab (chaw nyob = 0)

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

/******* IR tswj cov cai ***************** / /******************** **********************/ // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus tswv ntaus ntawv (chaw nyob = 0) SONY, 12, 0xA90, 0xC10, 0x210, 0, 0, 0, 0, 0, 0, 0, // raws tu qauv_id, tus lej_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 1) tsis paub, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 2) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //, raws tu qauv _id, tus lej_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 4) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /************ ********************************* / / ********* Xaus IR tswj cov lej ** ************ / / ************************************** *********/

Cov duab kos tau teeb tsa los ua haujlwm nrog cov txheej txheem IR hauv qab no:

  • NEC
  • SONY
  • RC5
  • RC6
  • LG
  • JVC
  • VIM LI CAS
  • SAMSUNG
  • SHARP
  • DISH
  • DENON
  • LEGO_PF

Hauv cov ntawv "ir_codes.ino" koj tuaj yeem pom qee qhov IR tswj cov lej rau SAMSUNG thiab SONY cov kev cai.

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

// Qee IR_PROTOCOLS THIAB CODES // (SAMSUNG, tus lej_of_bits, khawm POWER, khawm 1, 2, 3) // SAMSUNG, 32, 0xE0E010EF, 0xE0E020DF, 0xE0E0609F, 0xE0E0A05F // (SONY, naj npawb_of_bits, 3, 4, 5, 6, 7, 8, 9, 0) // SONY, 12, 0xA90, 0x010, 0x810, 0x410, 0xC10, 0xC10, 0x210, 0xA10, 0x610, 0xE10, 0x110, 0x910 /***** ********************************************************** ****** **********************************/

TSEEM CEEB: Thawj IR txoj cai tswj hwm tau qhia yuav tsum yog IR txoj cai tswj hwm kom hloov lub cuab yeej. Nws yuav xa los ntawm tus tswv mus rau cov qhev thaum tsis muaj ib qho kev nqis tes npaj rau lub cuab yeej ntawd

Yog tias qee lub cev paub lossis qee tus neeg tau txais qee qhov kev tswj hwm IR ntawm qee qhov kev cai teev tseg saum toj no, thov tshaj tawm cov lus pom hauv cov lus qhia no nrog cov ntaub ntawv hauv qab no: tus txheej txheem id, raws tu qauv ntev thiab IR cov lej tswj.

KAUJ RUAM 3.4 (tsuas yog rau cov cuab yeej siv tswv yim) (QHOV TSEEB NTAWV YUAV TSUM PAUB TSEEM CEEB YUAV TSHUAJ

Koj tuaj yeem qhia txog kev npaj ua sim sim nyob hauv txoj hauv qab no:

Thawj txoj kev

Yog tias koj tau teeb tsa lub network wifi koj tuaj yeem ua nws siv lub vev xaib (Saib cov kauj ruam: Web Server)

Txoj Kev Ob

Koj yuav tsum nrhiav tus lej tom ntej hauv cov ntaub ntawv "ir_codes.ino" thiab hloov kho cov ntaub ntawv.

Lub xub ntiag simulation hom phiaj npaj yog cov hauv qab no:

(hour_init_interval1), (hour_end_interval1), (hour_init_interval2), (hour_end_interval2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light)

/************ TSEEM CEEB TSHUAJ TSEEM CEEB TSHAJ PLAWS ************/

7, 8, 17, 3, 5, 60, 10, 40, // master device (chaw nyob = 0) 0, 0, 17, 23, 3, 30, 5, 10, // qhev ntaus ntawv (chaw nyob = 1) 0, 0, 0, 0, 0, 0, 0, 0, 0, // qhev ntaus ntawv (chaw nyob = 2) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // qhev ntaus ntawv (chaw nyob = 3) 0, 0, 0, 0, 0, 0, 0, 0, 0 // qhev ntaus ntawv (chaw nyob = 4) /************ Xaus Lub Caij Nyoog Simulator ********** **********/

Hauv qhov piv txwv saum toj no lub xub ntiag simulation npaj rau tus tswv cuab yog cov hauv qab no:

  • (hour_init_interval1 = 7) Thawj qhov kev sim ua ntu zus yuav pib thaum 7:00 teev sawv ntxov txhua hnub
  • (hour_end_interval1 = 8) Thawj qhov kev sim ua ntu zus yuav xaus thaum 8:00 teev sawv ntxov ntawm tib hnub
  • (hour_init_interval2 = 17) Kev sim zaum thib ob yuav pib thaum 17:00 teev tsaus ntuj niaj hnub
  • (hour_end_interval2 = 3) Qhov kev sim zaum thib ob yuav xaus thaum 3:00 teev sawv ntxov ntawm hnub tom ntej
  • (min_delay_ir = 5) (max_delay_ir = 60) Lub sijhawm ncua sij hawm hauv feeb ntawm kev xa random ntawm IR tswj cov lej yog tus lej random ntawm 5 thiab 60
  • (min_delay_light = 10) (max_delay_light = 40) Lub sijhawm ncua sijhawm feeb hauv nruab nrab ntawm lub teeb hloov mus thiab tawm yog tus lej tsis raug ntawm 10 txog 40

thiab qhov kev npaj ua sim sim rau cov cuab yeej qhev nrog chaw nyob 2 yog cov hauv qab no:

  • (teev_init_interval1

    = 0) Muaj tsis yog thawj zaug simulation simulation txhais

  • (hour_end_interval1 = 0) Muaj tsis yog thawj zaug simulation simulation txhais
  • (hour_init_interval2 = 17) Kev simulation yuav pib thaum 17:00 teev tsaus ntuj niaj hnub
  • (hour_end_interval2 = 23) Kev sim yuav xaus thaum 23:00 teev tsaus ntuj ntawm tib hnub
  • (min_delay_ir = 3)

    (max_delay_ir

    = 30) Lub sijhawm qeeb hauv feeb ntawm kev xa random ntawm IR tswj cov lej yog tus lej tsis sib xws ntawm 3 thiab 30

    (min_delay_light = 5)

    (max_delay_light

    = 10) Lub sijhawm qeeb hauv feeb ntawm qhov hloov hluav taws xob qhib thiab tawm yog tus lej tsis sib xws ntawm 5 thiab 10

KAUJ RUAM 3.5 (tsuas yog rau cov cuab yeej siv tswv) (teeb tsa Lub Sijhawm Tiag Tiag)

Ib qho tseem ceeb ntawm txoj haujlwm no yog lub sijhawm. Peb yuav tsum teev sijhawm ntawm ARDUINO thaum cov duab kos pib ua haujlwm. Txhawm rau ua qhov ntawd peb xav tau lub sijhawm teev sijhawm tiag tiag. Ib lub moos qauv yog DS3231 uas txhawb nqa yog lub roj teeb thaub qab lub teeb nyem, uas tuaj yeem siv tau tshwj tsis yog txuas nrog lub microcontroller nrog peb cov ntaub ntawv xov tooj siv I2C raws tu qauv.

Yav dhau los txhawm rau siv DS3231 koj yuav tsum teeb tsa lub sijhawm hauv cov qauv no. Txhawm rau ua qhov ntawd, koj yuav tsum tau khiav hauv tus tswv cuab lub cuab yeej kos duab "DS3231_set.ino".

KAUJ RUAM 3.6 (tsuas yog rau cov cuab yeej siv tswv) (teeb tsa ESP8266 MODULE)

Cov duab kos ua haujlwm hauv cov qauv no sim txuas rau koj lub network wifi hauv zos thiab teeb tsa lub web server.

Yog li peb yuav tsum hloov kho cov ntaub ntawv hauv qab no hauv qhov kos duab "muaj_ebeb.ino" txhawm rau nkag mus rau koj lub network wifi hauv cheeb tsam thiab teeb tsa Gmail chaw nyob e-mail los ntawm qhov twg ESP8266 yuav xa cov txav txav los ntawm txhua lub cuab yeej hauv lub network thiab e-mail chaw nyob uas koj xav tau txais cov ntawv ceeb toom (ESP8266 Gmail Sender qhia paub)

const char* ssid = "ssid ntawm koj lub network wifi hauv zos";

const char* password = "password ntawm koj lub network wifi hauv zos"; const char* to_email = "e-mail qhov uas koj xav tau txais cov ntawv ceeb toom ntawm kev kuaj pom lub zog"; WiFiServer server (80); // qhov chaw nres nkoj siv los mloog

thiab cov ntaub ntawv hauv qab no hauv daim duab "Gsender.h".

const char*EMAILBASE64_LOGIN = "*** koj li Gmail tus lej nkag mus nkag rau hauv BASE64 ***";

const char*EMAILBASE64_PASSWORD = "*** koj li Gmail lo lus zais nkag rau hauv BASE64 ***"; const char*FROM = "*** koj li gmail chaw nyob ***";

TSEEM CEEB: cov cai no tsis ua haujlwm nrog ESP8266 core rau Arduino version 2.5.0. Rau kev daws teeb meem ib ntus siv cov tub ntxhais version 2.4.2

KAUJ RUAM 3.7 (tsuas yog rau tus tswv ntaus ntawv)

Tom qab ua cov kauj ruam dhau los 3.3, 3.4, 3.5 thiab 3.6 ntsaws qhov kos duab "វត្តមាន_master.ino" hauv NANO microcontroller thiab kos duab "វត្តមាន_web.ino" hauv ESP8266 module

Kauj Ruam 4: Xeem Qhov System

Txhawm rau sim yog txhua yam ua haujlwm raws li peb xav tau, kos duab "វត្តមាន_master.ino" tuaj yeem ua haujlwm hauv kev sim.

Koj tuaj yeem sim cov cuab yeej tshwj xeeb hauv ob txoj hauv kev:

Thawj txoj kev: yog tias koj tsis siv lub network wifi, koj yuav tsum nrhiav tus lej tom ntej hauv cov ntawv "វត្តមាន_master.ino", hloov mus rau "qhov tseeb" tus nqi pib rau "bool_test_activated" hloov pauv thiab hloov chaw nyob ntawm ib ntaus ntawv los ntsuas kab kab tom ntej thiab thauj cov duab kos rau hauv ARDUINO microcontroller hauv tus tswv cuab.

boolean bool_test_activated = tsis tseeb; // hloov mus rau qhov tseeb rau kev sim pib hom

int ntaus_to_test = 0; // qhev ntaus ntawv chaw nyob los sim

Tsis txhob hnov qab hloov tus nqi kom tsis raug thaum koj xav tawm ntawm txoj kev sim thiab rov ua dua daim duab

Txoj Kev Thib Ob: Yog tias koj siv lub network wifi, koj tuaj yeem siv lub vev xaib los qhib kev sim. Saib cov kauj ruam "Web Server"

Yog tias lub cuab yeej ntsuas yuav xa IR cov lej tswj hwm, tso tus tswv lossis tus cuab yeej cuab tam rau pem hauv ntej ntawm IR tswj cov cuab yeej (TV, xov tooj cua…).

Hom no ua haujlwm raws li hauv qab no:

  • TESTING LIGHT. Lub teeb ntawm lub cuab yeej tshwj xeeb yuav tsum qhib thiab kaw txhua 10 vib nas this.
  • Kuaj IR IR CODES. Daim duab yuav xaiv qhov tsis raug cai IR tus lej yav dhau los tau qhia thiab nws yuav xa mus rau IR tswj cov cuab yeej txhua 10 vib nas this. Yog li koj yuav tsum ntsuas yog tias lub cuab yeej ntawd tau ua qhov sib xws rau IR code tau txais
  • Kuaj TUS TSHUAJ TIV THAIV KAB MOB Yog tias lub cuab yeej ntsuas pom txav mus los ntawm nws lub PIR sensor, nws yuav xa lub teeb liab mus rau tus tswv cuab thiab nws lub teeb yuav tsum pib nyem ntau zaus

Hauv cov vis dis aus qhov kawg ntawm cov lus qhia no koj tuaj yeem pom hom kev sim ua haujlwm.

Kauj ruam 5: Web Server

Lub Web Server
Lub Web Server
Lub Web Server
Lub Web Server
Lub Web Server
Lub Web Server

Txhawm rau tswj cov kab ke thiab ntsuas yog txhua yam ua haujlwm tau zoo, ESP8266 module tau teeb tsa ua Web Server. Koj tsis xav tau lwm yam software ntxiv rau nkag mus rau hauv lub network, tsuas yog ntaus hauv lub vev xaib tus IP ntawm koj lub router. Hauv koj lub router koj tau teeb tsa chaw nres nkoj xa mus yav dhau los kom nkag mus rau ESP8266 tus qauv siv tus IP zoo li qub hauv zos teeb tsa los ntawm koj.

Cov qauv no txuas nrog ARDUINO microcontroller siv I2C raws tu qauv.

Koj tuaj yeem pom thawj lub vev xaib hauv DAWB 1:

  • SYSTEM STATE ntu qhia peb cov ntaub ntawv hais txog qhov system:

    • Hnub tim thiab sijhawm ntawm qhov system. Nws yog ib qho tseem ceeb heev uas hnub tim thiab sijhawm yog raws sijhawm
    • Lub xeev ntawm lub xub ntiag sim (qhib lossis xiam oob qhab), hnub tim thiab sijhawm ntawm qhov ua zaum kawg thiab qhov chaw nyob ntawm lub cuab yeej uas tau ua tiav qhov kev ua (DUAB 2)
    • Lub xeev ntawm lub zog ntsuas (qhib lossis xiam oob qhab) thiab keeb kwm ntawm kev txav txav los ntawm lub cuab yeej: lub txee thiab hnub tim thiab lub sijhawm ntawm kev tshawb pom lub zog kawg (DUAB 3) Hauv daim duab no peb tuaj yeem pom tias hauv lub cuab yeej nrog chaw nyob 1 tau kuaj pom 1 txav mus thiab qhov kawg yog thaum 16:50:34
  • COMMANDS seem tso cai rau peb ua cov hauv qab no:

    • Txhawm rau qhib lub xub ntiag simulator
    • Txhawm rau qhib lub zog ntsuas
    • Txhawm rau xaiv lub cuab yeej los pib thiab nres qhov kev sim (DUAB 4)
  • PRESENCE COMMAND seem tso cai rau peb ua cov hauv qab no:

    Txhawm rau qhia lossis hloov kho qhov kev npaj ua ntej simulation rau ib lub cuab yeej tshwj xeeb. Hauv PICTURE 5 koj tuaj yeem pom yuav hloov kho qhov kev npaj ua ntej simulation rau qhov chaw nyob li cas 1. Cov hlua kab ntawv yog cov hauv qab no: (addr_device), (hour_init1), (end_init1), (hour_init2), (end_init2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light). Tag nrho cov zauv yog cov zauv zauv. Yog tias koj tau tshaj tawm txoj hlua siv tau koj yuav pom qhov kev npaj ua ntej simulation ua ntej cov ntawv "LAST", txwv tsis pub koj yuav pom cov lus "LAST: NOT VALID"

  • IR CODE COMMAND ntu tso cai rau peb ua cov hauv qab no:

    Txhawm rau qhia lossis hloov kho IR txoj cai tswj hwm rau cov cuab yeej tshwj xeeb. Hauv PICTURE 6 koj tuaj yeem pom yuav hloov kho tshiab lossis qhia IR txoj cai tswj hwm tshiab rau qhov chaw nyob li cas 1. Cov hlua kab ntawv yog cov hauv qab no: (addr_device), (IR_protocol), (protocol_bits_length), (index_IR_control_code), (IR_control_code). Qhov (IR_protocol) yog ib txoj hauv kev nruj uas tsuas lees txais qhov txiaj ntsig tom ntej (SONY, NEC, RC5, RC6, LG, JVC, WHYNTER, SAMSUNG, DISH, DENON, SHARP, LEGO_PF) thiab (IR_control_code) yog tus lej hexadecimal. Vim tias lub kaw lus tau teeb tsa kom khaws 10 IR tswj cov lej, (index_IR_control_code) yog tus lej naj npawb nruab nrab ntawm 1 thiab 10. Raws li ua ntej, yog tias koj tau tshaj tawm txoj hlua zoo siv tau koj yuav pom tus lej IR tswj tshiab ua ntej ntawv "LAST", txwv tsis pub koj yuav pom cov lus "LAST: NOT VALID"

Txhawm rau nkag mus rau nplooj ntawv web no los ntawm koj lub network wifi hauv zos, tsuas yog ntaus tus IP uas koj lub router tau muab rau ESP8266 hauv lub vev xaib. Hauv txhua daim duab koj tuaj yeem pom tias tus IP muab los ntawm kuv tus router yog 192.168.43.120.

Txhawm rau nkag mus rau sab nraud ntawm koj lub network wifi hauv zos koj yuav tsum teeb tsa hauv koj lub router qhov chaw nres nkoj koj yuav siv los mloog cov ntaub ntawv nkag thiab xa rov mus rau ESP8266 hauv koj lub network. Tom qab ntawd tsuas yog ntaus tus IP ntawm koj lub router hauv lub vev xaib.

Kauj Ruam 6: Ib qho piv txwv los piav qhia txhua yam

Image
Image
Ib qho piv txwv los Qhia Txhua Yam
Ib qho piv txwv los Qhia Txhua Yam

Kuv tau tsim tus piv txwv tshwj xeeb los piav qhia txhua yam

Kuv tau tsim cov cuab yeej hauv qab no (DUAB 2)

  • Ib qho IR tswj cov cuab yeej siv NANO microcontroller, RGB coj sab hauv pob ping-pong thiab ib qho IR tus qauv txais (Duab 1). Thaum peb thawb lub khawm tswj ntawm 1 txog 7 ntawm IR chaw taws teeb, pob ping-pong hloov nws cov xim.
  • Tus tswv ntaus ntawv (chaw nyob 0)
  • Ib qho cuab yeej qhev (chaw nyob 1)

Nrog txhua qhov saum toj no peb yuav sim tag nrho cov yam ntxwv ntawm txoj haujlwm. Lub xub ntiag simulation kev npaj yuav yog:

  1. Pob uas tswj los ntawm cov cuab yeej qhev yuav hloov nws cov xim txij thaum 17:00 teev tsaus ntuj rau 23:00 teev tsaus ntuj thiab thaum sawv ntxov txij 7:00 teev sawv ntxov txog 8:00 teev sawv ntxov txhua lub sijhawm sib txawv ntawm feeb ntawm 1 thiab 1.
  2. Lub teeb tswj los ntawm cov cuab yeej qhev yuav qhib thiab kaw txij 17:00 teev tsaus ntuj rau 23:00 teev tsaus ntuj thiab thaum sawv ntxov txij 7:00 teev sawv ntxov txog 8:00 teev sawv ntxov txhua lub sijhawm sib txawv ntawm feeb ntawm 1 thiab 2
  3. Lub teeb tswj los ntawm tus tswv cuab yuav qhib thiab kaw txij 16:00 teev tsaus ntuj txog 1:00 teev sawv ntxov ntawm hnub tom ntej txhua lub sijhawm sib txawv ntawm feeb ntawm 1 thiab 2

Tom qab ua tiav daim duab "ir_codes.ino" peb tau hais ob qho tib si tias IR raws tu qauv siv los ntawm IR chaw taws teeb yog "NEC", qhov ntev ntawm IR cov lej yog 32 khoom thiab IR tswj cov lej rau cov nyees khawm ntawm 1 txog 7 hauv hexadecimal format yog:

Khawm 1 = FF30CF

Khawm 2 = FF18E7

Khawm 3 = FF7A85

Khawm 4 = FF10EF

Khawm 5 = FF38C7

Khawm 6 = FF5AA5

Khawm 7 = FF42BD

Koj tuaj yeem teeb tsa qhov system hauv ob txoj hauv kev:

Thawj txoj kev: siv lub vev xaib (saib cov vis dis aus tom kawg ntawm cov lus qhia no)

ZOO TSHAJ PLAWS: hloov kho cov ntaub ntawv "ir_codes.ino" thiab xa nws tom qab:

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

/******* IR tswj cov cai ***************** / /******************** **********************/ // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus tswv ntaus ntawv (chaw nyob = 0) NEC, 32, 0xFF30CF, 0xFF18E7, 0xFF7A85, 0xFF10EF, 0xFF38C7, 0xFF5AA5, 0xFF42BD, 0, 0, 0, // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 1) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 2) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //, raws tu qauv _id, tus lej_of_bits, 10 IR tswj cov lej rau tus qhev ntaus ntawv (chaw nyob = 4) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /************ ********************************* / / ********* Xaus IR tswj cov lej ** ************ / / ************************************** *********/

/************ TSEEM CEEB TSHUAJ TSEEM CEEB TSHAJ PLAWS ************/

0, 0, 16, 1, 0, 0, 1, 2, // master device (chaw nyob = 0) 7, 8, 17, 23, 1, 1, 1, 2, // qhev ntaus ntawv (chaw nyob = 1) RGB pob 0, 0, 0, 0, 0, 0, 0, 0, // qhev ntaus ntawv (chaw nyob = 2) 0, 0, 0, 0, 0, 0, 0, 0, 0, //, qhev ntaus ntawv (chaw nyob = 3) 0, 0, 0, 0, 0, 0, 0, 0, 0 // qhev ntaus ntawv (chaw nyob = 4) /************ Xaus Lub Caij Nyoog Simulator ******** ************/

Pom zoo: