VKontakte Facebook Twitter Mlisho wa RSS

Kengele ya nyumbani au kutumia kitambuzi cha mwendo na kichunguzi cha LCD kwa kutumia Arduino. Kuhusu kitambuzi cha mwendo na kuiunganisha kwa Arduino Scheme ya mfumo rahisi wa kengele kwenye Arduino

Katika muongo mmoja uliopita, wizi wa magari umechukua sehemu muhimu sana katika muundo wa uhalifu unaofanywa ulimwenguni. Hii haichangiwi sana na uzito maalum wa kitengo hiki cha wizi unaohusiana na jumla ya idadi ya uhalifu, lakini kwa umuhimu wa uharibifu unaosababishwa na gharama kubwa ya magari. Ufanisi hafifu wa hatua zilizochukuliwa katika uwanja wa kupambana na wizi wa magari hadi mwisho wa miaka ya 90 ulisababisha kuundwa kwa vikundi thabiti vilivyobobea katika kutekeleza uhalifu huu na kumiliki. sifa tofauti uhalifu uliopangwa; Pengine umesikia neno "biashara nyeusi ya magari." Meli za magari za nchi za Ulaya kila mwaka hazina ≈ 2% ya magari ambayo huwa mada ya mashambulizi ya uhalifu. Kwa hivyo, nilipata wazo la kutengeneza kengele ya GSM kwa gari langu kulingana na Arduino Uno.

Hebu tuanze!

Tutakusanya kutoka kwa nini?

Tunahitaji kuchagua moyo wa mfumo wetu. Kwa maoni yangu, kwa kuashiria vile hakuna kitu bora kuliko Arduino Uno. Kigezo kuu ni idadi ya kutosha ya "pini" na bei.


Vipengele muhimu vya Arduino Uno

Kidhibiti kidogo - ATmega328
Voltage ya kufanya kazi - 5 V
Voltage ya pembejeo (inapendekezwa) - 7-12 V
Pembejeo ya voltage (kikomo) - 6-20 V
Pembejeo/Zao za Kidijitali - 14 (6 kati yake zinaweza kutumika kama matokeo ya PWM)
Pembejeo za analogi - 6
Sasa mara kwa mara kwa njia ya pembejeo / pato - 40 mA
Sasa ya mara kwa mara kwa pato 3.3V - 50mA
Kumbukumbu ya Flash - 32 KB (ATmega328) ambayo 0.5 KB inatumika kwa bootloader
RAM - 2 KB (ATmega328)
EEPROM - KB 1 (ATmega328)
Mzunguko wa saa - 16 MHz


Inafaa!

Sasa unahitaji kuchagua moduli ya GSM, kwa sababu mfumo wetu wa kengele lazima uweze kumjulisha mmiliki wa gari. Kwa hivyo, unahitaji "Google"... Hapa, sensor bora - SIM800L, saizi ni nzuri tu.


Nilifikiria na kuagiza kutoka China. Walakini, kila kitu kiligeuka kuwa sio laini sana. Sensor ilikataa tu kusajili SIM kadi kwenye mtandao. Kila kitu kinachowezekana kilijaribiwa - matokeo yalikuwa sifuri.
Kulikuwa na watu wema ambao walinipa kitu baridi - Sim900 Shield. Sasa hili ni jambo zito. The Shield ina kipaza sauti na jack ya kipaza sauti, na kuifanya kuwa simu kamili.


Sifa Muhimu za Sim900 Shield

Viwango 4 vya masafa ya uendeshaji 850/900/1800/1900 MHz
GPRS multi-slot darasa 10/8
Kituo cha rununu cha GPRS darasa B
Inakubaliana na GSM awamu ya 2/2+
Darasa la 4 (2 W @850/ 900 MHz)
Darasa la 1 (W 1 @ 1800/1900MHz)
Dhibiti kwa kutumia amri za AT (GSM 07.07, 07.05 na SIMCOM zilizopanuliwa amri za AT)
Matumizi ya chini ya nishati: 1.5mA (hali ya kulala)
Kiwango cha joto cha kufanya kazi: -40°C hadi +85°C


Inafaa!

Sawa, lakini unahitaji kusoma kutoka kwa baadhi ya vitambuzi ili kumjulisha mmiliki. Ikiwa gari limevutwa, basi msimamo wa gari utabadilika wazi katika nafasi. Hebu tuchukue accelerometer na gyroscope. Kubwa. Sawa, sasa tunatafuta kihisi.

Nadhani GY-521 MPU6050 hakika itafaa. Ilibadilika kuwa pia ina sensor ya joto. Tunapaswa kuitumia pia, kutakuwa na "kipengele cha muuaji". Hebu tuchukulie kwamba mwenye gari aliiegesha chini ya nyumba yake na kuondoka. Joto ndani ya gari litabadilika "laini". Nini kitatokea ikiwa mvamizi anajaribu kuingia ndani ya gari? Kwa mfano, atakuwa na uwezo wa kufungua mlango. Hali ya joto ndani ya gari itaanza kubadilika kwa kasi wakati hewa katika cabin huanza kuchanganya na hewa mazingira. Nadhani itafanya kazi.


Vipengele kuu vya GY-521 MPU6050

Gyroscope ya mhimili 3 + moduli ya kuongeza kasi ya mhimili 3 GY-521 kwenye chip MPU-6050. Inakuruhusu kuamua nafasi na harakati ya kitu katika nafasi, kasi ya angular wakati wa kuzunguka. Pia ina sensor ya joto iliyojengwa. Inatumika katika copters mbalimbali na mifano ya ndege; mfumo wa kukamata mwendo unaweza pia kuunganishwa kulingana na sensorer hizi.

Chip - MPU-6050
Ugavi wa voltage - kutoka 3.5V hadi 6V (DC);
Msururu wa Gyro - ±250 500 1000 2000°/s
Kiwango cha kipima kasi - ± 2±4±8±16g
Kiolesura cha mawasiliano - I2C
Ukubwa - 15x20 mm.
Uzito - 5 g


Inafaa!

Sensor ya vibration pia itakuja kwa manufaa. Ghafla wanajaribu kufungua gari kwa "nguvu kali", au katika kura ya maegesho gari jingine linapiga gari lako. Hebu tuchukue sensor ya vibration SW-420 (inayoweza kubadilishwa).


Tabia kuu za SW-420

Ugavi wa voltage - 3.3 - 5V
Mawimbi ya pato - Dijiti ya Juu/Chini (kawaida imefungwa)
Sensorer iliyotumika - SW-420
Kilinganishi kinachotumika ni LM393
Vipimo - 32x14 mm
Zaidi ya hayo - Kuna upinzani wa marekebisho.


Inafaa!

Sarufi kwenye moduli ya kadi ya kumbukumbu ya SD. Pia tutaandika faili ya kumbukumbu.


Tabia kuu za moduli ya kadi ya kumbukumbu ya SD

Moduli inakuwezesha kuhifadhi, kusoma na kuandika kwa kadi ya SD data inayohitajika kwa uendeshaji wa kifaa kulingana na microcontroller. Matumizi ya kifaa ni muhimu wakati wa kuhifadhi faili kutoka kwa makumi ya megabytes hadi gigabytes mbili. Ubao una kontena la kadi ya SD, kidhibiti cha nguvu cha kadi, na plagi ya kiunganishi cha kiolesura na nyaya za umeme. Ikiwa unahitaji kufanya kazi na sauti, video au data nyingine kubwa, kwa mfano, kuweka matukio, data ya sensor au kuhifadhi habari ya seva ya wavuti, basi moduli ya kadi ya kumbukumbu ya SD ya Arduino itafanya iwezekanavyo kutumia kadi ya SD kwa haya. makusudi. Kwa kutumia moduli, unaweza kusoma vipengele vya kadi ya SD.
Ugavi wa voltage - 5 au 3.3 V
Uwezo wa kumbukumbu ya kadi ya SD - hadi 2 GB
Vipimo - 46 x 30 mm


Inafaa!

Na hebu tuongeze gari la servo wakati sensorer zinasababishwa, gari la servo na rekodi ya video itageuka na kupiga video ya tukio hilo. Wacha tuchukue kiendesha servo cha MG996R.


Sifa Kuu za MG996R Servo Drive

Imara na ulinzi wa kuaminika kutoka kwa uharibifu
- Metal drive
- Mstari wa kuzaa mpira wa safu mbili
- Urefu wa waya 300 mm
- Vipimo 40x19x43mm
- Uzito 55 g
- Pembe ya mzunguko: digrii 120.
- Kasi ya uendeshaji: 0.17sec/60 digrii (4.8V hakuna mzigo)
- Kasi ya kufanya kazi: 0.13sec/60 digrii (6V hakuna mzigo)
- Torque ya kuanzia: 9.4kg/cm kwa usambazaji wa umeme wa 4.8V
- Torque ya kuanzia: 11kg/cm kwa usambazaji wa umeme wa 6V
- Voltage ya uendeshaji: 4.8 - 7.2V
- Sehemu zote za gari zimetengenezwa kwa chuma


Inafaa!

Tunakusanya

Kuna idadi kubwa ya makala kwenye Google kuhusu kuunganisha kila kihisi. Na sina hamu ya kuvumbua baiskeli mpya, kwa hivyo nitaacha viungo kwa chaguzi rahisi na za kufanya kazi.

Wao ni majukwaa maalum ya vifaa kwa misingi ambayo unaweza kuunda mbalimbali vifaa vya elektroniki, ikijumuisha na. Vifaa vya aina hii vinatofautishwa na muundo wao rahisi na uwezo wa kupanga algorithms yao ya kufanya kazi. Shukrani kwa hili, iliyoundwa kwa kutumia Arduino Kengele ya GSM, inaweza kubinafsishwa kwa kiwango cha juu kwa kitu ambacho kitalinda.

Moduli ya Arduino ni nini?

Arduinos inatekelezwa kwa namna ya bodi ndogo ambazo zina microprocessor na kumbukumbu zao. Bodi pia ina seti ya mawasiliano ya kazi ambayo unaweza kuunganisha vifaa mbalimbali vya umeme, ikiwa ni pamoja na sensorer zinazotumiwa kwa mifumo ya usalama.

Programu ya Arduino inakuwezesha kupakia programu iliyoandikwa na mtumiaji mwenyewe. Kuunda yako mwenyewe algorithm ya kipekee, inawezekana kuhakikisha hali bora za uendeshaji kengele za usalama kwa vitu tofauti na kwa hali tofauti matumizi na kazi zinazopaswa kutatuliwa.

Je, ni vigumu kufanya kazi na Arduino?

Moduli za Arduino ni maarufu sana kati ya watumiaji wengi. Hii iliwezekana kwa sababu ya urahisi na ufikiaji wake.

Programu za kusimamia moduli zimeandikwa kwa kutumia C ++ ya kawaida na nyongeza katika fomu kazi rahisi dhibiti michakato ya pembejeo/pato kwenye anwani za moduli. Kwa kuongeza, programu ya bure ya Arduino IDE inayofanya kazi chini ya Windows, Linux au Mac OS inaweza kutumika kwa programu.

Na moduli za Arduino, utaratibu wa kukusanyika vifaa umerahisishwa sana. Mfumo wa kengele wa GSM kwenye Arduino unaweza kuundwa bila ya haja ya chuma cha soldering - mkutano unafanyika kwa kutumia bodi ya mkate, jumpers na waya.

Jinsi ya kuunda kengele kwa kutumia Arduino?

Mahitaji ya kimsingi ambayo mfumo wa kengele wa DIY gsm ulioundwa kwenye Arduino lazima utimize ni pamoja na:

  • mjulishe mmiliki wa kituo kuhusu kuingia au kuingia;
  • msaada kwa mifumo ya nje kama vile siren ya sauti, taa za onyo;
  • udhibiti wa kengele kupitia SMS au simu;
  • Uendeshaji wa uhuru bila usambazaji wa umeme wa nje.

Ili kuunda kengele utahitaji:

  • moduli ya Arduino;
  • seti ya sensorer ya kazi;
  • au modem;
  • chanzo cha nguvu cha uhuru;
  • watendaji wa nje.

Kipengele tofauti cha moduli za Arduino ni matumizi ya bodi maalum za upanuzi. Wanasaidia kuunganisha kila mtu vifaa vya ziada kwa Arduino, ambayo inahitajika ili kukusanya usanidi mfumo wa usalama. Bodi kama hizo zimewekwa juu ya moduli ya Arduino kwa namna ya "sandwich", na vifaa vya msaidizi vinavyolingana vinaunganishwa na bodi wenyewe.

Je, hii inafanyaje kazi?

Wakati moja ya sensorer iliyounganishwa inapochochewa, ishara hupitishwa kwa processor ya moduli ya Arduino. Kwa kutumia programu ya mtumiaji iliyopakuliwa, microprocessor huichakata kulingana na algorithm maalum. Kama matokeo ya hili, amri ya kuendesha actuator ya nje inaweza kuzalishwa, ambayo hupitishwa kwake kupitia bodi inayolingana ya upanuzi-interface.

Ili kuhakikisha uwezo wa kutuma ishara za onyo kwa mmiliki wa nyumba au ghorofa ambayo inalindwa, moduli maalum ya GSM imeunganishwa kwenye moduli ya Arduino kupitia bodi ya upanuzi. SIM kadi kutoka kwa mmoja wa watoa huduma imewekwa ndani yake mawasiliano ya seli.

Kwa kutokuwepo kwa adapta maalum ya GSM, mtu wa kawaida anaweza kutekeleza jukumu lake. simu ya mkononi. Mbali na kutuma ujumbe wa SMS onyo la kengele na upigaji simu, uwepo wa unganisho la rununu utakuruhusu kudhibiti mfumo wa kengele wa GSM kwenye Arduino kwa mbali, na pia kufuatilia hali ya kitu kwa kutuma maombi maalum.

“Kuweni makini!

Ili kuwasiliana na mmiliki wa kitu, pamoja na moduli za GSM, modemu za kawaida zinaweza kutumika, ambazo hutoa mawasiliano kupitia mtandao.

Katika kesi hii, wakati sensor inasababishwa, ishara iliyosindika na processor inapitishwa kupitia modem kwenye portal maalum au tovuti. Na kutoka kwa tovuti, SMS ya onyo au barua pepe kwa barua pepe iliyounganishwa hutolewa moja kwa moja.

Hitimisho

Utumiaji wa moduli za Arduino utawaruhusu watumiaji kuunda kengele za GSM kwa uhuru ambazo zinaweza kufanya kazi na vihisi tofauti vya kufanya kazi na kudhibiti. vifaa vya nje. Shukrani kwa uwezekano wa kutumia sensorer mbalimbali, kazi za kengele zinaweza kupanuliwa kwa kiasi kikubwa na tata inaweza kuundwa ambayo itafuatilia sio tu usalama wa kitu, lakini pia hali yake. Kwa mfano, itawezekana kudhibiti hali ya joto kwenye kituo, kugundua uvujaji wa maji na gesi, kuzima usambazaji wao katika hali ya dharura, na mengi zaidi.

Habari, leo tutaangalia kifaa kinachoitwa sensor ya mwendo. Wengi wetu tumesikia kuhusu jambo hili, wengine hata wameshughulikia kifaa hiki. Sensor ya mwendo ni nini? Wacha tujaribu kuigundua, kwa hivyo:

Sensor ya mwendo au kitambuzi cha kuhamisha - kifaa (kifaa) kinachotambua harakati za vitu vyovyote. Mara nyingi vifaa hivi hutumiwa katika mifumo ya usalama, kengele na ufuatiliaji. Kuna aina nyingi za sababu za vitambuzi hivi, lakini tutazingatia moduli ya kihisi mwendo ili kuunganishwa kwenye bodi Arduino,na hasa kutoka kwa kampuni RobotDyn. Kwa nini kampuni hii? Sitaki kutangaza duka hili na bidhaa zake, lakini ni bidhaa za duka hili ambazo zilichaguliwa kama sampuli za maabara kwa sababu ya uwasilishaji wa hali ya juu wa bidhaa zao kwa watumiaji wa mwisho. Kwa hiyo, tunakutana - sensor ya mwendo(Sensorer ya PIR) kutoka kwa RobotDyn:


Sensorer hizi ni ndogo kwa ukubwa, hutumia nguvu kidogo na ni rahisi kutumia. Kwa kuongeza, sensorer za mwendo za RobotDyn pia zina mawasiliano ya hariri, bila shaka hii ni jambo ndogo, lakini la kupendeza sana. Naam, wale wanaotumia sensorer sawa, lakini tu kutoka kwa makampuni mengine, hawapaswi kuwa na wasiwasi - wote wana utendaji sawa, na hata kama mawasiliano hayajawekwa alama, pinout ya sensorer vile ni rahisi kupata kwenye mtandao.

Msingi vipimo vya kiufundi kitambuzi cha mwendo (Sensorer ya PIR):

Eneo la uendeshaji wa sensor: kutoka mita 3 hadi 7

Pembe ya kufuatilia: hadi 110 o

Voltage ya uendeshaji: 4.5 ... 6 Volts

Matumizi ya sasa: hadi 50 µA

Kumbuka: Utendaji wa kawaida wa kitambuzi unaweza kupanuliwa kwa kuunganisha kitambuzi cha mwanga kwenye pini za IN na GND, kisha kihisi cha mwendo kitafanya kazi gizani tu.

Kuanzisha kifaa.

Inapowashwa, kihisi huchukua karibu dakika moja kuanzisha. Katika kipindi hiki, sensor inaweza kutoa ishara za uwongo; hii inapaswa kuzingatiwa wakati wa kupanga microcontroller na sensor iliyounganishwa nayo, au katika nyaya za actuator ikiwa uunganisho unafanywa bila kutumia microcontroller.

Pembe ya kugundua na eneo.

Pembe ya kugundua(kufuatilia) ni digrii 110, umbali wa kugundua ni kutoka mita 3 hadi 7, kielelezo hapa chini kinaonyesha yote:

Marekebisho ya unyeti (umbali wa kugundua) na kuchelewa kwa wakati.

Jedwali hapa chini linaonyesha marekebisho kuu ya sensor ya mwendo; upande wa kushoto kuna mdhibiti wa kuchelewa kwa muda, kwa mtiririko huo, katika safu ya kushoto kuna maelezo ya mipangilio inayowezekana. Safu wima ya kulia inaelezea marekebisho ya umbali wa kutambua.


Muunganisho wa sensor:

  • Sensorer ya PIR - Arduino Nano
  • Sensor ya PIR - Arduino Nano
  • Sensor ya PIR - Arduino Nano
  • Sensor ya PIR - kwa sensor ya mwanga
  • Sensor ya PIR - kwa sensor ya mwanga

Mchoro wa uunganisho wa kawaida unaonyeshwa kwenye mchoro hapa chini; kwa upande wetu, sensor inaonyeshwa kwa kawaida kutoka upande wa nyuma na kushikamana na bodi ya Arduino Nano.

Mchoro unaoonyesha uendeshaji wa sensor ya mwendo (tunatumia programu):

/* * Sensor ya PIR -> Arduino Nano * Sensor ya PIR -> Arduino Nano * PIR Sensor -> Arduino Nano */ usanidi wa utupu() ( // Anzisha muunganisho kwa kichunguzi cha bandari Serial.begin(9600); ) kitanzi batili( ) ( // Soma thamani ya kizingiti kutoka kwa bandari A0 // kwa kawaida ni ya juu kuliko 500 ikiwa kuna ishara ikiwa(analogRead(A0) > 500) ( //Ishara kutoka kwa kitambuzi cha mwendo Serial.println("Kuna harakati! !!"); ) mwingine ( /No signal Serial.println("Kila kitu kimya...");

Mchoro ni mtihani wa kawaida wa uendeshaji wa sensor ya mwendo;

  1. Kengele zinazowezekana za uwongo; sensor inahitaji kujianzisha ndani ya dakika moja.
  2. Kufunga kwa uthabiti kwa kichunguzi cha bandari, hakuna viamilishi vya kutoa (relay, king'ora, kiashirio cha LED)
  3. Sana muda mfupi ishara kwenye pato la sensor, wakati mwendo unagunduliwa, ni muhimu kuchelewesha ishara kwa muda mrefu.

Kwa kuchanganya mzunguko na kupanua utendaji wa sensor, unaweza kuepuka hasara zilizoelezwa hapo juu. Ili kufanya hivyo, utahitaji kuongeza mzunguko na moduli ya relay na kuunganisha taa ya kawaida ya 220-volt kupitia moduli hii. Moduli ya relay yenyewe itaunganishwa kwa pin 3 kwenye ubao wa Arduino Nano. Kwa hivyo mchoro wa kimkakati:

Sasa ni wakati wa kuboresha kidogo mchoro uliojaribu kihisi cha mwendo. Ni katika mchoro ambapo ucheleweshaji wa kuzima relay utatekelezwa, kwa kuwa sensor ya mwendo yenyewe ina muda mfupi sana wa ishara kwenye pato inapoanzishwa. Programu hutumia kucheleweshwa kwa sekunde 10 wakati kihisi kimewashwa. Ikiwa unataka, wakati huu unaweza kuongezeka au kupunguzwa kwa kubadilisha thamani ya kutofautiana Thamani ya Kuchelewa. Chini ni mchoro na video ya mzunguko mzima uliokusanyika katika hatua:

/* * Sensor ya PIR -> Arduino Nano * Sensorer ya PIR -> Sensorer ya Arduino Nano * PIR -> Arduino Nano * Moduli ya Relay -> Arduino Nano */ //relout - pini (ishara ya pato) kwa moduli ya relay const int relout = 3 ; //prevMillis - kutofautisha kwa kuhifadhi wakati wa mzunguko wa skanning wa programu uliopita // muda - muda wa muda wa kuhesabu sekunde kabla ya kuzima relay isiyosajiliwa kwa muda mrefu prevMillis = 0; muda wa int = 1000; //DelayValue - kipindi ambacho relay inatunzwa kwenye on state int DelayValue = 10; //initSecond - Uanzishaji kitanzi iteration variable int intSecond = 60; //countDelayOff - muda wa muda counter static int countDelayOff = 0; // trigger - sensor mwendo trigger bendera tuli bool trigger = uongo; usanidi wa utupu () ( // Utaratibu wa kawaida wa kuanzisha bandari ambayo moduli ya relay imeunganishwa // MUHIMU !!! - ili moduli ya relay ibaki katika hali ya awali // na sio kusababisha wakati wa kuanzishwa, unahitaji kuandika //thamani ya JUU kwa mlango wa pembejeo/towe , hii itaepuka "kubonyeza" kwa uwongo, na itahifadhi // hali ya upeanaji mkondo kama ilivyokuwa kabla ya kuwasha pinMode nzima ya mzunguko(relout, OUTPUT) relout, HIGH); //Kila kitu ni rahisi hapa - tunangojea hadi mizunguko 60 iishe (initSecond variable) //kudumu kwa sekunde 1, wakati ambapo sensor "inajianzisha" kwa (int i = 0; i.< initSecond; i ++) { delay(1000); } } void loop() { //Считать значение с аналогового порта А0 //Если значение выше 500 if(analogRead(A0) >500) ( //Weka bendera ya kichochezi cha kitambua mwendo ikiwa(!trigger) ( trigger = true; ) ) //Wakati bendera ya kichochezi cha kitambua mwendo imewekwa huku(kichochezi) ( //Tekeleza maagizo yafuatayo //Hifadhi kwenye currMillis kutofautiana //thamani ya milisekunde ilipita tangu //kuanza kwa utekelezaji wa programu bila kusainiwa kwa muda mrefu currMillis = millis(); //Linganisha na thamani ya awali ya milisekunde //ikiwa tofauti ni kubwa kuliko muda uliobainishwa, basi: if(currMillis); - prevMillis > muda) ( //Hifadhi thamani ya sasa ya milisekunde kwa kigeuzi prevMillis prevMillis = currMillis; //Angalia kihesabu kucheleweshwa kwa kukilinganisha na thamani ya kipindi //wakati ambao upeanaji mkondo unapaswa kuwekwa katika hali ya ON if(countDelayOff >= DelayValue) ( //Ikiwa thamani ni sawa, basi: //weka upya kichochezi cha harakati ya bendera ya kuwezesha kihisio = si kweli; //Weka upya kihesabu cha kuchelewaDelayOff = 0; //Zima relay digitalWrite( relout, HIGH); //Katisha mapumziko ya kitanzi;

//Weka relay katika hali ya kidijitaliAndika(relout, LOW);

)))

Mpango huo una muundo ufuatao:

...

haijasainiwa kwa muda mrefu prevMillis = 0;

muda wa int = 1000;

{

unsigned long currMillis = millis();

....

if(currMillis - prevMillis > muda)

....

}

prevMillis = currMillis; // Shughuli zetu zimefungwa kwenye mwili wa muundo Ili kufafanua, iliamuliwa kutoa maoni tofauti juu ya muundo huu. Kwa hiyo, muundo huu hukuruhusu kufanya kazi sambamba katika programu. Mwili wa muundo umeanzishwa takriban mara moja kwa pili, hii inawezeshwa na kutofautiana muda. Kwanza, kutofautiana currMillis thamani iliyorejeshwa wakati wa kupiga kazi imepewa currMillis milli () . Kazi hurejesha idadi ya milisekunde ambayo imepita tangu mwanzo wa programu. Ikiwa tofauti muundo huu currMillis - prevMillis muda kubwa kuliko thamani ya kutofautisha basi hii inamaanisha kuwa zaidi ya sekunde tayari imepita tangu kuanza kwa utekelezaji wa programu, na unahitaji kuokoa thamani ya kutofautisha. katika kutofautiana . Kazi prevMillis muundo huu kisha fanya shughuli zilizomo katika mwili wa muundo. Ikiwa tofauti

chini ya thamani ya kutofautiana

, basi pili bado haijapita kati ya mzunguko wa skanning ya programu, na shughuli zilizomo kwenye mwili wa muundo zimerukwa.

Habari za mchana Tena, mapitio mengi ya vipengele vya elektroniki vya Kichina, kama kawaida kuhusu kidogo ya kila kitu, nitajaribu kuiweka fupi, lakini itafanya kazi? Kwa hivyo, kutana na mfumo wa kengele wa GSM unaogharimu hadi ₽ 700. Inavutia? Tafadhali tumia "kata"!

Hebu tuanze! Kabla ya kuanza, ninapendekeza uangalie hii moja, vipengele vichache na uhuru mkubwa zaidi. Kwa hivyo, "maelezo ya kiufundi", mahitaji ya msingi ya kuashiria:

1) Arifu wakati vitambuzi vimeanzishwa.
2) Katika tukio la kushindwa kwa nguvu, uhuru fulani lazima utolewe.
3) Udhibiti wa kengele kupitia SMS na simu.

Kwa sababu ya ukweli kwamba mchakato wa kuunda kengele ulichukua miezi kadhaa na wauzaji wengine hawauzi tena vifaa ambavyo vilinunuliwa kutoka kwao, viungo vitasasishwa kwa bidhaa kutoka kwa wauzaji wengine ambao wana kiwango cha juu au karibu na idadi ya juu ya mauzo ya bidhaa. na bei nzuri zaidi. Bei katika ukaguzi ni za sasa kuanzia tarehe ya kuandikwa.

Orodha ya kile utahitaji:

Orodha ya mabadiliko

GSM_03_12_2016-14-38.hex- operesheni ya kudumu ya kifaa na modem ya M590.
GSM_05_12_2016-13-45.hex- Aliongeza amri ya koni ya memtest, kuongeza utumiaji wa RAM.
GSM_2016_12_06-15-43.hex- aliongeza matokeo ya amri kwa console, uboreshaji wa kumbukumbu. Inachukuliwa: 49% SRAM.
GSM_2016_12_07-10-59.hex- sasa nambari za simu zinaongezwa na kuondolewa kwa usahihi. Inatumika: 49% SRAM, 74% ya Kumbukumbu ya Flash.
GSM_2016_12_07-15-38.hex- aliongeza uwezo wa kuunganisha sensor ya mwendo, iliyounganishwa na pini A0 (katika kesi hii, pini A0 inatumika kama dijiti). Amri za SMS zilizoongezwa PIROn, PIROff. Inatumika: 48% SRAM, 76% ya Kumbukumbu ya Flash.
GSM_2016_12_08-13-53.hex- Sasa, baada ya kutekeleza amri kwa ufanisi ambayo haitumi ujumbe wa SMS kwa kujibu, kifaa huangaza LED ya bluu mara moja. Sasa, baada ya utekelezaji usio sahihi wa amri ambayo haitumi ujumbe wa SMS kwa kujibu, kifaa huangaza LED ya bluu mara mbili. Sasa, baada ya kuanzisha vigezo vya kifaa, ikiwa hali ya "kimya" imewezeshwa (TumaSms = 0), kifaa huwaka LED ya bluu mara kwa mara kwa sekunde 2. Imerekebisha hitilafu kwa sababu nambari haikufutwa kila wakati kutoka kwa kumbukumbu kwa kutumia amri ya DeletePhone. Inatumika: 48% SRAM, 78% ya Kumbukumbu ya Flash.
GSM_2016_12_11-09-12.hex- Amri za koni zilizoongezwa AddPhone na DeletePhone, syntax ni sawa na amri za SMS. Uboreshaji wa kumbukumbu. Inatumika: 43% SRAM, 79% ya Kumbukumbu ya Flash.
GSM_2017_01_03-22-51.hex- Usaidizi umetekelezwa kwa vipanuzi vya bandari vya I/O sawa kwenye chipu ya PCF8574, kwa kuunganisha vihisi 8 vya ziada, ikijumuisha swichi za mwanzi. Utafutaji wa anwani otomatiki na usanidi wa moduli otomatiki. Majina ya kawaida ya vitambuzi na kiwango cha kimantiki cha majibu yao hubadilishwa kwa kutumia amri ya EditSensor. Yaliyomo kwenye SMS ya kengele ya sensor kuu (pin D0) yamebadilishwa: "Kengele! Sensor kuu! na kihisi mwendo (pini A0) “Kengele! Sensor ya PIR! Aliongeza EditSensor na amri I2CScan. Inatumika: 66% SRAM, 92% ya Kumbukumbu ya Flash.
GSM_2017_01_15-23-26.hex- Msaada kwa modem ya A6_Mini. Kufuatilia uwepo wa nguvu za nje (pini D7). Amri za SMS zilizoongezwa WatchPowerOn, WatchPowerOff. Amri za kiweko zilizoongezwa ListConfig, ListSensor. Sasa amri ya SMS ya EditSensor inafanya kazi kwa usahihi. Matokeo ya maelezo ya utatuzi kwa kichunguzi cha bandari yamepunguzwa kidogo. Inachukuliwa: 66% SRAM, 95% ya Kumbukumbu ya Flash.
GSM_2017_01_16-23-54.hex- Sasa katika ujumbe wa majibu kwa amri ya SMS "Maelezo" hali ya sensor ya mwendo pia inaripotiwa. Imerekebisha hitilafu kutokana na ambayo jibu tupu la SMS zilitumwa wakati mwingine. Sasa kifaa kinajulisha sio tu kuhusu kuzima, lakini pia kuhusu kuanza tena kwa nguvu za nje. Modem zote zilianza kuzungumza kidogo, na sasa mfuatiliaji wa bandari ni safi zaidi. Inachukuliwa: 66% SRAM, 95% ya Kumbukumbu ya Flash.
GSM_2017_02_04-20-23.hex- Imerekebisha hitilafu ya "Tazama nguvu imewashwa". Sasa, baada ya kuondoa silaha, "pini ya kengele" imezimwa. Sasa, baada ya kufuta nambari, maelezo sahihi yanaonyeshwa kwenye console. Inawezekana kurekebisha hitilafu kutokana na jibu tupu ujumbe wa SMS ulitumwa wakati mwingine. Inatumika: 66% SRAM, 90% ya Kumbukumbu ya Flash.
GSM_2017_02_14-00-03.hex- Sasa ujumbe wa SMS hutumwa kwa chaguo-msingi, parameter ya SendSms ni sawa tena na 1. Sasa, wakati mawasiliano ya sensor kuu ya mwanzi imefungwa (kufunga mlango), kifaa huangaza na LED ya bluu kwa sekunde 2, ikiashiria. operesheni ya kawaida sensor Inatumika: 66% SRAM, 90% ya Kumbukumbu ya Flash.
GSM_2017_03_01-23-37.hex- Amri ya WatchPowerOn imeondolewa. Amri ya kiweko iliyoongezwa WatchPowerOff, sawa na amri ya SMS. Imeongeza WatchPowerOn1, amri za WatchPowerOn2. WatchPowerOn1 - ufuatiliaji wa nishati ya nje umewashwa ikiwa kengele iko na silaha, WatchPowerOn2 - ufuatiliaji wa nishati ya nje huwashwa kila wakati. Kazi ya kuweka silaha na kupokonya silaha kwa vifaa vya nje inatekelezwa kwa hili; Kengele hubeba/huondoa silaha inapoonekana kwenye pini A1(D15) kiwango cha juu+5V au kwa pini A2(D16) kiwango cha chini GND. Pin A1(D15) inavutwa hadi GND, pini A2(D16) inavutwa hadi +5V kupitia vipinga 20 (10) kOhm. Amri za GuardButtonOn na GuardButtonOff zimeongezwa. Sasa, baada ya kuweka silaha, LED nyekundu inaangaza hadi uadilifu wa mzunguko wa kubadili mwanzi uangaliwe. Ikiwa mzunguko ni mzima, LED nyekundu inawaka. Inachukuliwa: 66% SRAM, 95% ya Kumbukumbu ya Flash.
GSM_2017_03_12-20-04.hex- Sasa koni imekuwa safi zaidi, lakini ikiwa hali ya majaribio ya "TestOn" imewezeshwa, maelezo ya ziada yanaonyeshwa kwenye koni. Hitilafu ya “Imetumwa!” imerekebishwa; Imerekebisha hitilafu ya "simu ya uwongo inayorudiwa". Sasa ombi la usawa linapaswa kufanya kazi kwa usahihi kwenye modem zote. Inachukuliwa: 67% SRAM, 95% ya Kumbukumbu ya Flash.
GSM_2017_04_16-12-00.hex- Imesahihishwa. Sasa maagizo ya Taarifa na Pesa yatatuma SMS ya majibu kila wakati. Amri ya GuardButtonOn imebadilishwa na amri za GuardButtonOn1 na GuardButtonOn2. Inachukuliwa: 67% SRAM, 99% ya Kumbukumbu ya Flash.
GSM_2017_04_21-09-43.hex - haipendekezi kwa matumizi, kwa madhumuni ya kupima tu, shukrani kwa kutambua makosa :) - Sasa parameter ya sendsms haiathiri utumaji wa ujumbe wa SMS kwa ufuatiliaji wa gridi ya nguvu. Amri ya SMS iliyoongezwa ya DelayBeforeGuard inawajibika kwa kucheleweshwa wakati wa kuweka silaha, thamani haiwezi kuzidi sekunde 255. Amri ya SMS iliyoongezwa DelayBeforeAlarm, ambayo inawajibika kwa kuchelewesha kutuma arifa na kuwasha "pini ya kengele" wakati vitambuzi vinapoanzishwa; Maagizo ya ClearSMS yameondolewa, ujumbe sasa unafutwa kiotomatiki baada ya kupokelewa. Inachukuliwa: 68% SRAM, 100% ya Kumbukumbu ya Flash.
GSM_2017_04_22-20-42.hex- Mende nyingi zimewekwa. Amri za ClearSMS zipo tena kwenye programu dhibiti. Uboreshaji wa kumbukumbu. Inatumika: 68% SRAM, 98% ya Kumbukumbu ya Flash.
GSM_2017_04_23-17-50.hex- Sasa ombi la usawa linapaswa kufanya kazi kwa usahihi kwenye modem zote. Kuweka silaha na kuondoa silaha kwa vifaa vya nje sasa hufanya kazi kwa usahihi. Ujumbe wa majibu ya SMS kutoka kwa amri ya Maelezo haupaswi kuwa tupu. Uboreshaji wa kumbukumbu. Inatumika: 68% SRAM, 98% ya Kumbukumbu ya Flash.
GSM_2017_04_24-13-22.hex- Sasa amri za kiweko hutumwa kwa moduli ya GSM ikiwa tu hali ya majaribio imewashwa. Sasa hakuna mgawanyiko kati ya amri za SMS na amri za console zinaweza kupitishwa kwa njia ya SMS na kupitia console. Hitilafu iliyo na amri ya Maelezo inaweza kuwa imerekebishwa. Uboreshaji wa kumbukumbu. Inatumika: 68% SRAM, 94% ya Kumbukumbu ya Flash.
GSM_2017_04_25-20-54.hex- Ilirekebisha hitilafu ambapo amri ya ListConfig ilibadilisha thamani yake tukio la mwisho. Sasa, wakati wa kuingiza amri kwa njia ya console, ujumbe wa SMS usiohitajika haujatumwa. Hitilafu iliyo na amri ya Maelezo inaweza kuwa imerekebishwa. Uboreshaji wa kumbukumbu. Inatumika: 66% SRAM, 94% ya Kumbukumbu ya Flash.
GSM_2017_04_30-12-57.hex- Toleo limewezeshwa kwa muda maelezo ya ziada kwa koni wakati wa kutuma ujumbe wa SMS na kutoa jibu kwa amri ya Maelezo. Hitilafu iliyo na amri ya Maelezo inaweza kuwa imerekebishwa. Uboreshaji wa kumbukumbu. Inatumika: 66% SRAM, 92% ya Kumbukumbu ya Flash.
GSM_2017_05_06-11-52.hex- Zisizohamishika na kazi ya DelayBeforeAlarm. Inatumika: 66% SRAM, 93% ya Kumbukumbu ya Flash.
GSM_2017_05_23-21-27.hex- Pato la habari kwa koni imebadilishwa kidogo. Usaidizi umeongezwa kwa moduli za upanuzi wa bandari kwenye PCF8574A na anwani kutoka 0x38 hadi 0x3f zikiwa zimejumuishwa. Kutatua hitilafu c. Sasa kifaa huwashwa upya kiotomatiki baada ya maagizo ya FullReset, ResetConfig, ResetPhone na kama amri ya MemTest itatekelezwa kwa mafanikio. Amri ya WatchPowerTime imeongezwa. Sasa inawezekana kuweka muda ambao baada ya hapo ujumbe wa SMS utatumwa kuonyesha kwamba chanzo cha nguvu cha nje kimezimwa. Inatumika: 67% SRAM, 94% ya Kumbukumbu ya Flash.
GSM_2017_05_26-20-22.hex- Uanzishaji wa kumbukumbu ya sensor ya bodi ya upanuzi imerekebishwa. Sintaksia ya amri ya AddPhone imebadilishwa. Aliongeza EditMainPhone amri. Kanuni ya uendeshaji wa mfumo wa arifa imebadilishwa; SMS za kengele zitatumwa kwa nambari za simu na ishara "S" (SMS). Simu za sauti zitapigwa kwa nambari zilizo na ishara ya "R" (Mlio). Ujumbe kuhusu kuzima/kuwasha chanzo cha nishati ya nje utatumwa kwa nambari za simu kwa ishara "P" (Nguvu). Amri ya RingTime imeongezwa. Sasa inawezekana kuweka muda wa simu ya kutisha; parameter inaweza kuwa na thamani kutoka sekunde 10 hadi 255. Amri ya RingOn/RingOff sasa inawezesha/kuzima arifa za simu za sauti ulimwenguni kote. Amri ya Kuweka upyaSensor imeongezwa. Inachukuliwa: 68% SRAM, 99% ya Kumbukumbu ya Flash.
GSM_2017_06_02-17-43.hex- Kigezo cha "I" (Maelezo) kimeongezwa kwa amri za AddPhone na EditMainPhone, ambayo inawajibika kwa arifa ya SMS kuhusu kuweka silaha au kuzima kifaa. Sasa baada ya kuongeza nambari kuu, kifaa kitaanza upya kiotomatiki. Sasa unaweza kuingiza nambari zinazofanana kwenye kumbukumbu ya kifaa. Wakati wa kuongeza nambari mbili za pili na zinazofuata, sifa "M", "S", "P" na "I" zitaondolewa kiotomatiki kutoka kwao. Nambari hizi zitatumika kwa simu zinazorudiwa za sauti wakati vitambuzi vimewashwa. Hitilafu iliyo na pato lisilo sahihi la kiweko baada ya kutekeleza amri ya AddPhone imerekebishwa, sasa habari haionyeshwi kiotomatiki baada ya kuongeza nambari. Aliongeza Anzisha upya amri. Inachukuliwa: 69% SRAM, 99% ya Kumbukumbu ya Flash.
GSM_2017_06_11-00-07.hex- Sasa tena, wakati mawasiliano ya sensor kuu ya mwanzi imefungwa (kufunga mlango), kifaa huangaza na LED ya bluu kwa sekunde 2, ikionyesha operesheni ya kawaida ya sensor, lakini haizingatii ikiwa kifaa kina silaha. au kupokonywa silaha. Amri za RingOn/RingOff zimeondolewa. Sasa kifaa kinaweza kupokonywa silaha wakati wa simu ya kengele; sasa zinafanywa nyuma. Inachukuliwa: 69% SRAM, 99% ya Kumbukumbu ya Flash.
GSM_2017_07_04-21-52.hex- Sasa amri ya Sitisha haitumi SMS ya majibu. Amri za TestOn na TestOff zimeondolewa. Sifa ya Usimamizi imeondolewa kwenye nambari zote. Inachukuliwa: 68% SRAM, 96% ya Kumbukumbu ya Flash.
GSM_2017_07_24-12-02.hex- Amri za ReedSwitchOn/ReedSwitchOff zimeongezwa za kufuatilia kihisi kikuu cha mwanzi, sasa kinaweza kuwashwa/kuzimwa kwa njia sawa na kihisi cha mwendo. Imerekebisha hitilafu katika amri ya Maelezo. Amri za TestOn na TestOff zipo tena kwenye programu dhibiti. Inachukuliwa: 68% SRAM, 96% ya Kumbukumbu ya Flash.
GSM_2017_07_26-10-03.hex- Amri ya ModemID iliyoongezwa. Ugunduzi wa moja kwa moja wa modem unafanywa tu ikiwa thamani ya parameter hii ni 0. Baada ya kuweka thamani ya parameter kwa 0, kifaa kinarejeshwa moja kwa moja. Inatumika: 68% SRAM, 98% ya Kumbukumbu ya Flash.
GSM_2017_08_03-22-03.hex- Sasa kengele inaweza kudhibiti vifaa vya nje. Kwa udhibiti, pato la analog A3 hutumiwa (D17 - inatumika kama dijiti). Kiwango cha pato la mantiki (+5V au GND) kinaweza kubadilishwa; baada ya kubadilisha kiwango kupitia amri ya usanidi, kifaa kitaanza upya kiotomatiki. Muda wa ishara ya udhibiti wa kifaa cha nje unaweza kubadilishwa. Imeongezwa ExtDeviceLevelLow, ExtDeviceLevelHigh, ExtDeviceTime, Fungua amri. Baadhi ya mabadiliko katika mantiki ya amri za udhibiti. Uboreshaji wa kumbukumbu. Inachukuliwa: 68% SRAM, 99% ya Kumbukumbu ya Flash.
GSM_2017_08_10-12-17.hex- Amri za SmsOn/SmsOff, ReedSwitchOn/ReedSwitchOff, PIROn/PIROff na kila kitu kilichounganishwa nazo kimeondolewa. Amri ya DelayBeforeAlarm imebadilishwa na amri zilizopanuliwa. Ilibadilisha matokeo ya amri ya Info. Matokeo ya amri ya ListConfig kwenye kiweko yameboreshwa. Sasa vihisi vyovyote vya dijiti vilivyo na viwango vya juu au vya chini vya majibu, ikijumuisha swichi za mwanzi, vinaweza kuunganishwa kwenye pini D6 na A0. Pini D6 na A0 zinapaswa kushikamana na ardhi (GND) kupitia upinzani wa 10 (20) kOhm. Ikiwa sensor imewekwa kwa kiwango cha chini cha majibu (kuwezeshwa katika hali ya kubadili mwanzi), basi uadilifu wa mzunguko unachunguzwa. Kiwango cha kusababisha mantiki katika pembejeo D6 na A0 (+5V au GND) inaweza kubadilishwa baada ya kubadilisha kiwango cha mantiki, kifaa kitaanza upya kiotomatiki. Kwa kila sensorer (ubao kuu, wa pili, wa upanuzi wa PCF), wakati unasababishwa, wakati wake unaweza kuweka, baada ya hapo taarifa itafanywa (SMS na/au simu ya sauti). "Sensor ya PIR" imepewa jina la "Second sensor". Imerekebisha utendakazi wa kadi ya upanuzi, hitilafu kutokana na ambayo kifaa kiliarifiwa kila wakati vitambuzi vilipoanzishwa, bila kujali kama kifaa kilikuwa na silaha au la. Sasa unaweza kuchagua hali ya uendeshaji ambayo kifaa kinaweza kufuatilia sensorer ya kadi ya upanuzi wote katika hali ya silaha (GuardOn) na katika hali ya walemavu (GuardOff). Amri zilizoongezwa PCFForceOn/PCFForceOff, MainSensorLevelHigh/MainSensorLevelLow/MainSensorLevelOff, SecondSensorLevelHigh/SecondSensorLevelLow/SecondSensorLevelOff, MainDelayBeforeAlarm, SecondDelayBeforeAlarmBeforeAlarm, PCFAlarm. Inachukuliwa: 68% SRAM, 99% ya Kumbukumbu ya Flash.

*Matoleo yanayofuata ya programu dhibiti yanajumuisha mabadiliko kutoka kwa matoleo ya awali.


Bandari za Arduino Nano v3 zimetumika

D4- pato la pini ya "kengele" wakati sensor inasababishwa, ishara ya kiwango cha juu imewekwa kwenye pini hii
D5- pato la kinyume cha pini ya "kengele" wakati sensor inasababishwa, ishara ya kiwango cha chini imewekwa kwenye pini hii

D6- sensor ya mwanzi. Kuanzia toleo la GSM_2017_08_10-12-17.hex, vitambuzi vyovyote vya dijiti vilivyo na viwango vya juu au vya chini vya mwitikio, ikijumuisha swichi za mwanzi, vinaweza kuunganishwa kwa pin D6. Pin D6 inapaswa kuvutwa chini (GND) kupitia upinzani wa 10 (20) kOhm.
D7- kushikamana na mgawanyiko wa voltage kutoka kwa chanzo cha nguvu cha nje +5V. Mkono wa juu 2.2 kOhm, mkono wa chini 3.3 kOhm.

Mgawanyiko wa voltage


D8- Modem ya TX
D9- Modem ya RX

D10- LED nyekundu
D11- LED ya bluu
D12- LED ya kijani

Uunganisho wa pembeni:
A0- sensor ya mwendo. Kuanzia toleo la GSM_2017_08_10-12-17.hex, vitambuzi vyovyote vya dijiti vilivyo na kiwango cha juu au cha chini cha majibu, ikijumuisha swichi za mwanzi, vinaweza kuunganishwa kwa pin A0. Pin A0 inapaswa kuvutwa chini (GND) kupitia upinzani wa 10 (20) kOhm.

A1- Ingizo la udhibiti wa nje. Silaha za kengele / huzima wakati kiwango cha juu cha +5V kinaonekana kwenye pembejeo.
A2- Ingizo kinyume kwa udhibiti wa nje. Silaha za kengele/huzima wakati kiwango cha chini cha GND kinapoonekana kwenye pembejeo.

A3- Pato linaloweza kusanidiwa (+5V au GND) kwa kudhibiti vifaa vya nje. Wakati amri ya udhibiti inapokewa, thamani katika pato hili hubadilika kulingana na kile kilichowekwa kwa muda uliowekwa.

A4- SDA I2C
A5- SLC I2C
, kwa kuunganisha sensorer 8 za ziada.


Amri za kudhibiti kwa firmware ya hex

Tahadhari! Timu zilizojitolea kwa herufi nzito inaweza tu kutekelezwa kutoka kwa nambari kuu, kwani wanawajibika kwa usanidi wa kifaa. Amri zingine zinaweza kutekelezwa kutoka kwa nambari zilizo na sifa ya "Usimamizi".

SMS - amri za udhibiti sio nyeti kwa ukubwa:
AddPhone- Ongeza nambari ya simu. Kwa jumla, hakuna nambari zaidi ya 9 zinaweza kuongezwa + nambari 1 kuu, ambayo huhifadhiwa kiotomatiki kwenye kumbukumbu mara ya kwanza unapoita kifaa baada ya kuiweka upya kwa mipangilio ya kiwanda kwa kutumia amri. Weka upyaSimu au Reset Kamili. Wale. aliyeita kifaa kwanza baada ya kuiweka upya kwa mipangilio ya kiwanda ni "bwana", nambari hii imeingia kwenye kiini cha kwanza cha kumbukumbu na haiwezi kubadilishwa au kufutwa kupitia SMS. Haiwezekani kuongeza nambari mbili zinazofanana.
Amri ya mfano:



Syntax ya amri:

AddPhone- timu
: - kitenganishi
5 - andika kwa seli ya kumbukumbu ya tano
+71234567890 - nambari ya simu
Hadi toleo la GSM_2017_05_26-20-22.hex:
a - kigezo cha "Kengele" - Ujumbe wa SMS utatumwa kwa nambari zilizo na kigezo hiki - jumbe kuhusu kuwezesha kengele na ujumbe kuhusu kuweka silaha au kupokonya silaha.
Kuanzia toleo la GSM_2017_05_26-20-22.hex:
m - parameta ya "Usimamizi" - usimamizi wa kengele umewezeshwa
s - kigezo cha "SMS" - ujumbe wa SMS utatumwa wakati vihisi vinapoanzishwa
r - "Piga" parameta - simu ya sauti itapigwa wakati vitambuzi vinapoanzishwa
p - parameta ya "Nguvu" - ujumbe wa SMS utatumwa wakati nguvu ya nje imezimwa / kuzimwa
i - kigezo cha "Maelezo" - ujumbe wa SMS utatumwa wakati wa kuweka silaha au kupokonya silaha
Ikiwa vigezo "m", "s", "r", "p", "i" havipo, simu huhifadhiwa kwenye kumbukumbu, lakini haitumiwi kwa njia yoyote.


FutaSimu- Futa nambari ya simu.
Amri ya mfano:

Syntax ya amri:

DeletePhone - amri
: - kitenganishi
+71234567891 - nambari ya simu


EditMainPhone- Badilisha vigezo "s", "r", "p", "i" vya simu kuu, nambari hii imehifadhiwa kwenye seli ya kumbukumbu ya kwanza.
Amri ya mfano:

Syntax ya amri:

EditMainPhone - amri
: - kitenganishi
srpi - vigezo


MizaniNambari- Kubadilisha nambari ya ombi la usawa na kushughulikia urefu wa jibu la ombi. Thamani chaguo-msingi ya Beeline: #100#L22.
Amri ya mfano:

Syntax ya amri:

BalanceNum - amri
: - kitenganishi
#103# - nambari ya ombi la usawa
L24 - Urefu (len) wa jibu lililotumwa ni herufi 24, tunakata barua taka kutoka kwa ombi la usawa.


BadilishaSensor- Badilisha jina la sensor na kiwango cha majibu cha kimantiki. Hakuwezi kuwa na zaidi ya sensorer 8 za ziada kwa jumla. Baada ya kubadilisha vigezo, kifaa lazima kianzishwe tena.
Amri ya mfano:
Sensor ya Kuhariri:1+Datchik dvizheniya v koridore#h

Syntax ya amri:

EditSensor - amri
: - kitenganishi
1 - andika kwa seli ya kumbukumbu ya kwanza
+ - kitenganishi
Datchik dvizheniya v koridore - jina la sensor, haiwezi kuzidi wahusika 36, ​​ikiwa ni pamoja na nafasi.
#h - Ishara ya kiwango cha juu cha kimantiki kutoka kwa kitambuzi, baada ya kupokea ambayo kengele itawashwa. Ikiwa "#h" haipo, kengele itawashwa wakati kiwango cha chini cha mantiki kitapokewa kutoka kwa kitambuzi.


Wakati wa Kulala- Wakati wa kengele "kulala" wakati wa kupokea amri ya SMS "Sitisha" unaonyeshwa kwa dakika. Thamani chaguo-msingi: 15, haiwezi kuwa chini ya 1 au zaidi ya 60.
Amri ya mfano:

Syntax ya amri:

SleepTime - amri
: - kitenganishi
Dakika 20-20 za "usingizi".


AlarmPinTime- Muda ambao kengele/pini ya kinyume huwashwa/kuzimwa huonyeshwa kwa sekunde. Thamani chaguo-msingi: 60, haiwezi kuwa chini ya sekunde 1 na zaidi ya sekunde 43200 (saa 12).
Amri ya mfano:

Syntax ya amri:

AlarmPinTime - amri
: - kitenganishi
Sekunde 30 - 30 ili kuwasha/kuzima pini ya kengele.


DelayBeforeGuard- Muda kabla ya kuweka silaha kwenye kifaa, baada ya kupokea amri inayolingana.
Amri ya mfano:

Syntax ya amri:

DelayBeforeGuard - amri
: - kitenganishi
Sekunde 25-25 kabla ya kuweka silaha


DelayBeforeAlarm- Muda ambao baada ya hapo arifa ya "kengele" ya SMS itatumwa ikiwa kengele haijaondolewa katika kipindi hiki cha muda. Imebadilishwa na amri zilizopanuliwa kuanzia toleo la GSM_2017_08_10-12-17.hex
Amri ya mfano:

Syntax ya amri:

DelayBeforeAlarm - amri
: - kitenganishi
Sekunde 40 - 40 kabla ya kutuma arifa ya "kengele".


WatchPowerTime- Muda kwa dakika baada ya hapo ujumbe wa SMS utatumwa kuhusu kuzima chanzo cha nguvu cha nje. Ikiwa nishati ya nje itarejeshwa kabla ya muda uliowekwa kuisha, ujumbe hautatumwa.
Amri ya mfano:

Syntax ya amri:

WatchPowerTime - amri
: - kitenganishi
Dakika 5-5 kabla ya kutuma ujumbe wa SMS


Muda wa Kupigia simu- Muda wa simu ya kutisha ya sauti, kigezo kinaweza kuwa na thamani kutoka sekunde 10 hadi 255.
Amri ya mfano:

Syntax ya amri:

Muda wa Kupigia - amri
: - kitenganishi
40 - 40 muda wa simu utakuwa sekunde 40, baada ya hapo mteja anayefuata ataitwa.


ModemID- Ufungaji wa kulazimishwa wa mfano wa modem inayotumiwa. Thamani zinazowezekana: 0 - modem auto-detection, 1 - M590, 2 - SIM800l, 3 - A6_Mini.
Amri ya mfano:

Syntax ya amri:

ModemID - amri
: - kitenganishi
2 - Kitambulisho cha Modem.


ExtDeviceTime- Idadi ya sekunde ambazo kiwango cha ishara kwenye pato la udhibiti wa kifaa cha nje kitabadilika.
Amri ya mfano:

Syntax ya amri:

ExtDeviceTime- amri
: - kitenganishi
Sekunde 5-5


ExtDeviceLevelLow- Kifaa cha nje kilichounganishwa na pato A3 kinadhibitiwa na kiwango cha chini cha mawimbi (GND). Toleo litakuwa chaguomsingi kwa kiwango cha juu cha +5V hadi amri ya udhibiti kutoka kwa kifaa cha nje ipokewe
ExtDeviceLevelHigh- Kifaa cha nje kilichounganishwa na pato A3 kinadhibitiwa na kiwango cha juu cha ishara (+5V). Toleo litakuwa la chini kwa GND hadi amri ya udhibiti wa kifaa cha nje ipokewe.

Weka upya Sensorer- weka upya sensorer za kupanua bandari

Weka upyaConfig- weka upya mipangilio kwa mipangilio ya kiwanda

Weka upyaSimu- kufuta nambari zote za simu kutoka kwa kumbukumbu

Reset Kamili- upya mipangilio, futa nambari zote za simu kutoka kwa kumbukumbu, urejesha thamani ya default ya amri ya BalanceNum.

Washa- Wezesha arifa kwa kupiga nambari "kuu" iliyorekodiwa kwenye seli ya kumbukumbu ya kwanza wakati sensor inapoanzishwa. Imeondolewa kuanzia toleo la GSM_2017_06_11-00-07.hex
RingOff- kuzima taarifa kwa kupigia wakati sensor inasababishwa. Imeondolewa kuanzia toleo la GSM_2017_06_11-00-07.hex

SmsOn- Wezesha arifa ya SMS wakati kihisi kimewashwa. Imeondolewa kuanzia toleo la GSM_2017_08_10-12-17.hex
SmsOff- Zima arifa ya SMS wakati kihisi kimewashwa. Imeondolewa kuanzia toleo la GSM_2017_08_10-12-17.hex

PIROn- Wezesha usindikaji wa sensor ya mwendo
PIROff- Zima usindikaji wa sensor ya mwendo

ReedSwitchOn- Wezesha usindikaji wa sensor kuu ya mwanzi
ReedSwitchOff- kuzima usindikaji wa sensor kuu ya mwanzi

WatchPowerOn- Wezesha udhibiti wa nguvu za nje, ujumbe wa SMS kuhusu kuzima nguvu za nje utatumwa mradi mfumo wa kengele una silaha. Imeondolewa kuanzia toleo la GSM_2017_03_01-23-37.

WatchPowerOn1- Wezesha udhibiti wa nguvu za nje, ujumbe wa SMS kuhusu kuzima nguvu za nje utatumwa mradi mfumo wa kengele una silaha.
WatchPowerOn2- Wezesha udhibiti wa nguvu za nje, ujumbe wa SMS kuhusu kuzima nguvu za nje utatumwa kwa hali yoyote

WatchPowerOff- kuzima udhibiti wa nguvu za nje

GuardButtonOn- udhibiti wa kengele kwa vifaa vya nje au kitufe umewezeshwa. Imeondolewa kuanzia toleo la GSM_2017_04_16-12-00.
GuardButtonOn1- kazi kuweka au kuondoa ulinzi na vifaa vya nje au kitufe umewezeshwa
GuardButtonOn2- kazi uzalishaji pekee silaha na vifaa vya nje au kifungo kimewashwa;
GuardButtonOff- Udhibiti wa kengele na vifaa vya nje au kitufe kimezimwa

PCForceOn- ufuatiliaji wa mara kwa mara wa kikundi cha sensorer zote za moduli za upanuzi
PCFFForceOff- ufuatiliaji wa kikundi cha sensorer zote za moduli za upanuzi tu wakati kifaa kina silaha

MainSensorLevelHigh- arifa ya kengele itatumwa wakati ishara ya kiwango cha juu (+5 V) inaonekana kwenye pembejeo (D6) kutoka kwa sensor.
MainSensorLevelLow- arifa ya kengele itatumwa wakati ishara ya kiwango cha chini (GND) inaonekana kwenye pembejeo (D6) kutoka kwa sensor.
MainSensorLevelOff- usindikaji wa pembejeo wa sensor (D6) umezimwa

SecondSensorLevelHigh- arifa ya kengele itatumwa wakati ishara ya kiwango cha juu (+5 V) inaonekana kwenye pembejeo (A0) kutoka kwa sensor.
SecondSensorLevelLow- arifa ya kengele itatumwa wakati ishara ya kiwango cha chini (GND) inaonekana kwenye pembejeo (A0) kutoka kwa sensor.
SecondSensorLevelOff- usindikaji wa pembejeo ya sensor (A0) imezimwa

MainDelayBeforeAlarm- wakati ambapo arifa ya "kengele" ya SMS itatumwa wakati kihisi kikuu (D6) kimeanzishwa, ikiwa kengele haijaondolewa katika kipindi hiki cha muda. Sintaksia ni sawa na amri ya DelayBeforeAlarm.
SecondDelayBeforeAlarm- muda ambao baada ya hapo arifa ya "kengele" ya SMS itatumwa wakati kihisi cha ziada (A0) kinapoanzishwa, ikiwa kengele haijaondolewa katika kipindi hiki cha muda. Sintaksia ni sawa na amri ya DelayBeforeAlarm.
PCFDelayBeforeAlarm- wakati ambapo arifa ya SMS ya "kengele" itatumwa wakati sensorer za bodi ya upanuzi (PCF8574) zimeanzishwa, ikiwa kengele haijaondolewa katika kipindi hiki cha muda. Sintaksia ni sawa na amri ya DelayBeforeAlarm.

GuardOn - mkono
GuardOff - ondoa walinzi

Fungua - amri ya udhibiti wa kifaa cha nje

Habari - angalia hali, kwa kujibu ujumbe huu SMS itatumwa na habari kuhusu nambari ambayo usalama uliwashwa/kuzimwa.

Sitisha - husimamisha mfumo kwa muda uliowekwa na amri ya wakati wa usingizi katika dakika mfumo haujibu kwa vichochezi vya sensorer.

TestOn - hali ya mtihani imewashwa, LED ya bluu inawaka.
TestOff - hali ya majaribio imezimwa.

LedOff - huzima LED ya kusubiri.
LedOn - inawasha LED ya kusubiri.

Pesa - ombi la usawa.

ClearSms - Futa sms zote kutoka kwa kumbukumbu

Amri za Console (hadi toleo la GSM_2017_04_24-13-22.hex) - imeingizwa kwenye ufuatiliaji wa bandari ya Arduino IDE:

AddPhone - sawa na amri ya sms ya AddPhone

DeletePhone - sawa na amri ya sms ya DeletePhone

EditSensor - sawa na EditSensor sms amri

ListPhone - pato kwa bandari kufuatilia orodha ya simu zilizohifadhiwa kwenye kumbukumbu

ResetConfig - sawa na ResetConfig sms amri

ResetPhone - sawa na ResetPhone sms amri

FullReset - sawa na amri ya sms ya FullReset

ClearSms - sawa na amri ya sms ya ClearSms

WatchPowerOn1 - sawa na amri ya sms ya WatchPowerOn1
WatchPowerOn2 - sawa na amri ya sms ya WatchPowerOn2
WatchPowerOff - sawa na amri ya sms ya WatchPowerOff

GuardButtonOn - sawa na amri ya sms ya GuardButtonOn. Imeondolewa kuanzia toleo la GSM_2017_04_16-12-00
GuardButtonOn1 - sawa na amri ya sms ya GuardButtonOn1
GuardButtonOn2 - sawa na amri ya sms ya GuardButtonOn2
GuardButtonOff - sawa na amri ya sms ya GuardButtonOff

Memtest - mtihani wa kumbukumbu isiyo na tete ya kifaa mipangilio yote ya kifaa itawekwa upya, sawa na amri ya FullReset.

I2CScan - tafuta na uanzishe vifaa vinavyotumika kwenye basi la I2C.

ListConfig - inaonyesha usanidi wa kifaa wa sasa kwa kichunguzi cha mlango.

OrodhaSensor - pato kwa mfuatiliaji wa bandari ya usanidi wa sasa wa sensor.

UPD. Wakati wa kutumia sensor ya mwendo, ili kuepuka vyema vya uongo wakati wa uendeshaji wa modem, ni muhimu kati pini GND Na A0 Arduino kuweka upinzani, asante comrade
AllowPhone = (“70001234501”, “70001234502”, “70001234503”, “70001234504”, “70001234505”) - Nambari zinazoruhusiwa kudhibiti usalama.
AlarmPhone = (“70001234501”, “70001234502”) - Nambari za kutuma arifa za SMS wakati kihisi kimewashwa na arifa kuhusu kupokonya silaha au kuweka silaha. Nambari ya kwanza katika orodha itaitwa wakati sensor inasababishwa ikiwa amri ya RingOn inatekelezwa kwa default, chaguo hili linawezeshwa. Hii inafanywa kwa sababu ujumbe wa SMS unaweza kufika kwa kuchelewa, lakini simu inapaswa kupigwa mara moja.

Ikiwa simu itapokelewa kutoka kwa nambari iliyoidhinishwa au ujumbe wa SMS wenye amri ya GuardOn/GuardOff, basi, kulingana na hali ya sasa ya usalama, ujumbe wa SMS kuhusu kuweka silaha au kupokonya silaha utatumwa kwa nambari zilizoorodheshwa katika safu ya AlarmPhone, na Ujumbe wa SMS pia utatumwa kwa nambari ambayo simu ilitoka.

Wakati sensor inawashwa Ujumbe wa SMS hutumwa kwa nambari zote kutoka kwa safu ya Simu ya Alarm (orodha) na simu ya sauti inapigwa kwa nambari ya kwanza kutoka kwa safu hii.

Kiashiria cha mwanga:
LED inawasha nyekundu - ina silaha.
LED inawaka kijani- kupokonywa silaha, kuwezeshwa / kulemazwa kwa amri ya SMS LedOn/LedOff.
LED mara kwa mara huangaza bluu - inaonyesha kuwa kila kitu kiko sawa na Arduino, bodi haijahifadhiwa, inatumiwa pekee kwa utatuzi, imewashwa / kuzima kwa amri ya SMS ya TestOn/TestOff.
* Nambari hiyo ina kazi ya LedTest(), inameta na taa ya bluu, inafanywa tu kufuatilia Arduino, kufumba - inamaanisha kuwa inafanya kazi, haipepesi - imeganda. Bado sijakata simu :)

SI MUHIMU!

Inaunganisha vitambuzi 2 au zaidi kwa programu dhibiti iliyofunguliwa (inatumika tu kwa mchoro huu wa programu dhibiti_02_12_2016.ino)
Ili kuunganisha vitambuzi vya ziada vya mwanzi, tunatumia pini za dijiti zisizolipishwa D2, D3, D5 au D7. Mchoro wa uunganisho na sensor ya ziada kwenye D7.

Mabadiliko ya lazima katika firmware
... #fafanua Mlango 6 // Nambari ya kuingiza iliyounganishwa kwenye kihisi kikuu int8_t DoorState = 0; // Tofauti kwa ajili ya kuhifadhi hali ya sensor kuu int8_t DoorFlag = 1; // Kigezo cha kuhifadhi hali ya kihisi kikuu #fafanua BackDoorPin 7 // Nambari ya kuingiza iliyounganishwa na sensor ya ziada int8_t BackDoorState = 0; // Tofauti ya kuhifadhi hali ya sensor ya ziada int8_t BackDoorFlag = 1; // Inaweza kubadilika ili kuhifadhi hali ya kihisi cha ziada...
usanidi utupu() ( ... pinMode(DoorPin, INPUT); pinMode(BackDoorPin, INPUT); ...
... void Tambua() ( // Soma thamani kutoka kwa vitambuzi DoorState = digitalRead(DoorPin); BackDoorState = digitalRead(BackDoorPin); // Inachakata kitambuzi kikuu ikiwa (DoorState == LOW && DoorFlag == 0) ( DoorFlag = 1; kuchelewa (100); ikiwa (LedOn == 1) DijitaliWrite(GLed, LOW); ikiwa (DoorState == JUU && DoorFlag == 1)( DoorFlag = 0; kuchelewesha (100); ) //Kuchakata kitambuzi cha ziada; ikiwa (BackDoorState == LOW && BackDoorFlag == 0) ( BackDoorFlag = 1; delay(100); ikiwa (LedOn == 1) digitalWrite(Gled, LOW); Alarm(); ) ikiwa (BackDoorState == HIGH && BackDoorFlag = = 1)( BackDoorFlag = 0; delay(100); ) ) ...

Na jambo moja zaidi:
1. Ni bora kutumia diode zilizopimwa kwa sasa ya 2 A, kwa kuwa moduli hubeba sasa ya 1 A na bado tunahitaji kuwasha Arduino na modem na kitu. Mfano huu hutumia diode za 1N4007 ikiwa hazifaulu, zibadilishe na 2 A.
2. Nilitumia vipinga vyote kwa LED saa 20 kOhm, ili si kuangaza ukanda mzima usiku.
3. Pia niliweka kontena 20 kOhm kwenye sensor ya mwanzi kati ya pini ya GND na pini ya D6.

Ni hayo tu kwa sasa. Asante kwa umakini wako! :)

Ninapanga kununua +207 Ongeza kwa vipendwa Nilipenda uhakiki +112 +243

Mwandishi wake alitaka kufanya mradi wa kujitengenezea nyumbani ili uwe wa bei nafuu na usiotumia waya.
Bidhaa hii ya kujitengenezea nyumbani hutumia kitambuzi cha mwendo cha PIR, na taarifa hupitishwa kwa kutumia moduli ya RF.

Mwandishi alitaka kutumia moduli ya infrared, lakini kwa kuwa ina upeo mdogo, pamoja na inaweza kufanya kazi pekee mstari wa kuona na mpokeaji, kwa hivyo alichagua moduli ya RF ambayo anaweza kufikia anuwai ya takriban mita 100.


Ili kuifanya iwe rahisi zaidi kwa wageni kutazama mkusanyiko wa kengele, niliamua kugawa kifungu hicho katika hatua 5:
Hatua ya 1: Kuunda transmita.
Hatua ya 2: Unda kipokeaji.
Hatua ya 3: Usakinishaji wa programu.
Hatua ya 4: Majaribio ya moduli zilizokusanywa.
Hatua ya 5: Kukusanya kesi na kusakinisha moduli ndani yake.

Mwandishi alihitaji tu:
- 2 ARDUINO UNO/ARDUINO MINI/ARDUINO NANO bodi kwa ajili ya kupokea na transmitter;
- moduli ya transceiver ya RF (433 MHZ);
- sensor ya mwendo wa PIR;
- betri 9V (vipande 2) na viunganisho kwao;
- Buzzer;
- LED;
- Resistor na upinzani wa 220 Ohms;
- Bodi ya Maendeleo;
- Jumpers / waya / jumpers;
- Bodi ya mzunguko;
- Viunganishi vya siri vya bodi-kwa-bodi;
- Swichi;
- Nyumba za mpokeaji na mtoaji;
- karatasi ya rangi;
- mkanda wa kuweka;
- Typesetting scalpel;
- Moto gundi bunduki;
- chuma cha soldering;
- Wakataji wa waya / zana ya kutengenezea insulation;
- Mikasi ya chuma.


Hatua ya 1.
Wacha tuanze kuunda kisambazaji.
Chini ni mchoro wa jinsi sensor ya mwendo inavyofanya kazi.


Transmitter yenyewe inajumuisha:
- Sensor ya mwendo;
- bodi za Arduino;
- Moduli ya kisambazaji.


Sensor yenyewe ina matokeo matatu:
- VCC;
- GND;
- NJE.

Baada ya hapo, niliangalia uendeshaji wa sensor


Tahadhari!!!
Kabla ya kupakua firmware, mwandishi anahakikisha kwamba bodi ya sasa na bandari ya serial imewekwa kwa usahihi katika mipangilio ya Arduino IDE. Kisha nikapakia mchoro:

Baadaye, wakati sensor ya mwendo inatambua harakati mbele yako, LED itawaka, na pia utaweza kuona ujumbe unaofanana kwenye kufuatilia.


Kulingana na mchoro hapa chini.


Kisambazaji kina pini 3 (VCC, GND, na Data), ziunganishe:
- VCC> 5V pato kwenye ubao;
- GND > GND ;
- Data > pini 12 ubaoni.

Hatua ya 2.


Mpokeaji mwenyewe ana:
- moduli ya mpokeaji wa RF;
- bodi za Arduino
- Buzzer (msemaji).

Mzunguko wa Mpokeaji:


Mpokeaji, kama kisambazaji, ana pini 3 (VCC, GND, na Data), ziunganishe:
- VCC> 5V pato kwenye ubao;
- GND > GND ;
- Data > pini 12 ubaoni.


Hatua ya 3.
Mwandishi alichagua maktaba za faili kama msingi wa firmware nzima. Niliipakua na kuiweka kwenye folda ya maktaba ya Arduino.

Programu ya kisambazaji.
Kabla ya kupakia msimbo wa firmware kwenye ubao, mwandishi aliweka vigezo vifuatavyo vya IDE:
- Bodi -> Arduino Nano (au bodi unayotumia);
- Bandari ya serial ->


Baada ya kuweka vigezo, mwandishi alipakua faili ya firmware ya Wireless_tx na kuipakia kwenye ubao:

Programu ya mpokeaji
Mwandishi anarudia hatua zile zile za ubao wa kupokea:
- Bodi -> Arduino UNO (au bodi unayotumia);
- Bandari ya Serial -> COM XX (angalia bandari ya com ambayo bodi yako imeunganishwa).



Baada ya mwandishi kuweka vigezo, anapakua faili ya wireless_rx na kuipakia kwenye ubao:


Baadaye, kwa kutumia programu ambayo inaweza kupakuliwa, mwandishi alitoa sauti kwa buzzer.

Hatua ya 4.
Kisha, baada ya kupakua programu, mwandishi aliamua kuangalia ikiwa kila kitu kilikuwa kikifanya kazi vizuri. Mwandishi aliunganisha vifaa vya nguvu na kupitisha mkono wake mbele ya sensor, na buzzer ilianza kufanya kazi, ambayo inamaanisha kila kitu kinafanya kazi kama inavyopaswa.


Hatua ya 5.
Mkutano wa mwisho wa transmitter
Kwanza, mwandishi alikata miongozo inayojitokeza kutoka kwa mpokeaji, transmitter, bodi za arduino, nk.


Baada ya hapo, niliunganisha bodi ya arduino na sensor ya mwendo na transmitter ya RF kwa kutumia jumpers.


Ifuatayo, mwandishi alianza kutengeneza nyumba kwa kisambazaji.

Kwanza, alikata shimo kwa kubadili, pamoja na shimo la pande zote kwa sensor ya mwendo, na kisha akaiweka kwenye mwili.




Kisha mwandishi akakunja karatasi ya rangi na kuiweka kwenye kifuniko cha mbele cha picha ili kuficha sehemu za ndani za bidhaa iliyotengenezwa nyumbani.


Baada ya hapo, mwandishi alianza kuingiza kujaza elektroniki ndani ya kesi kwa kutumia mkanda wa pande mbili.



Mkutano wa mwisho wa mpokeaji
Mwandishi aliamua kuunganisha Bodi ya Arduino na bodi ya mzunguko na bendi ya mpira, na pia kufunga mpokeaji wa RF.


Ifuatayo, mwandishi hukata mashimo mawili kwenye kesi nyingine, moja kwa buzzer, nyingine kwa kubadili.


Na vijiti.


Baada ya hapo, mwandishi huweka jumpers kwenye sehemu zote.




Kisha mwandishi huingiza bodi iliyokamilishwa kwenye kesi hiyo na kuiweka salama kwa gundi ya pande mbili.

2024 Kuhusu starehe nyumbani. Mita za gesi. Mfumo wa joto. Ugavi wa maji. Mfumo wa uingizaji hewa