Tungkol sa motion sensor at pagkonekta nito sa Arduino. GSM home security system batay sa Arduino Arduino uno car alarm scanner


Ang mga infrared (IR) sensor ay karaniwang ginagamit upang sukatin ang mga distansya, ngunit maaari rin itong gamitin upang makakita ng mga bagay. Sa pamamagitan ng pagkonekta ng ilang IR sensor sa Arduino, makakagawa tayo alarma ng magnanakaw.

Balik-aral

Ang mga infrared (IR) sensor ay karaniwang ginagamit upang sukatin ang mga distansya, ngunit maaari rin itong gamitin upang makakita ng mga bagay. Ang mga IR sensor ay binubuo ng isang infrared transmitter at isang infrared na receiver. Ang transmitter ay naglalabas ng mga pulso infrared radiation habang nakikita ng receiver ang anumang pagmuni-muni. Kung ang receiver ay nakakita ng isang pagmuni-muni, nangangahulugan ito na mayroong ilang bagay sa ilang distansya sa harap ng sensor. Kung walang repleksyon, walang bagay.

Ang IR sensor na gagamitin namin sa proyektong ito ay nakakakita ng pagmuni-muni sa loob ng isang partikular na saklaw. Ang mga sensor na ito ay may maliit linear na aparato charge-coupled device (CCD), na nakikita ang anggulo kung saan bumalik ang IR radiation sa sensor. Tulad ng ipinapakita sa figure sa ibaba, ang sensor ay nagpapadala ng isang infrared pulse sa espasyo, at kapag ang isang bagay ay lumitaw sa harap ng sensor, ang pulso ay makikita pabalik sa sensor sa isang anggulo na proporsyonal sa distansya sa pagitan ng bagay at ang sensor. Ang sensor receiver ay nakakakita at naglalabas ng anggulo at gamit ang halagang ito maaari mong kalkulahin ang distansya.

Sa pamamagitan ng pagkonekta ng ilang IR sensor sa Arduino, makakagawa tayo ng simpleng alarma sa seguridad. Mag-i-install kami ng mga sensor sa frame ng pinto at sa pamamagitan ng wastong pag-align ng mga sensor ay matutukoy namin kapag may dumaan sa pinto. Kapag nangyari ito, magbabago ang output ng IR sensor at makikita natin ang pagbabagong ito sa pamamagitan ng patuloy na pagbabasa ng output ng mga sensor gamit ang Arduino. SA sa halimbawang ito alam namin na ang isang bagay ay dumadaan sa pinto kapag ang IR sensor output reading ay lumampas sa 400. Kapag nangyari ito, ang Arduino ay magti-trigger ng alarma. Upang i-reset ang alarma, maaaring pindutin ng user ang isang button.

Mga accessories

  • 2 x IR distance sensor;
  • 1 x Arduino Mega 2560;
  • 1 x buzzer;
  • 1 x na pindutan;
  • 1 x 470 Ohm risistor;
  • 1 x NPN transistor;
  • mga tumatalon.

Diagram ng koneksyon

Ang diagram para sa proyektong ito ay ipinapakita sa figure sa ibaba. Ang mga output ng dalawang IR sensor ay konektado sa mga pin A0 at A1. Ang iba pang dalawang pin ay konektado sa 5V at GND pin. Ang 12-volt buzzer ay konektado sa pin 3 sa pamamagitan ng isang transistor, at ang button na ginamit upang patahimikin ang alarma ay konektado sa pin 4.


Ipinapakita ng larawan sa ibaba kung paano namin idinikit ang mga sensor sa isang frame ng pinto para sa eksperimentong ito. Siyempre, kung regular mong ginagamit ito, iba ang pagkaka-install mo ng mga sensor.


Pag-install

  1. Ikonekta ang 5V at GND pin ng Arduino board sa power at GND pin ng mga sensor. Maaari mo ring bigyan sila ng panlabas na kapangyarihan.
  2. Ikonekta ang mga output pin ng mga sensor sa A0 at A1 pin ng Arduino board.
  3. Ikonekta ang pin 3 ng Arduino sa base ng transistor sa pamamagitan ng 1k ohm risistor.
  4. Ilapat ang 12V sa kolektor ng transistor.
  5. Ikonekta ang positibong lead ng 12-volt buzzer sa emitter at ang negatibong lead sa ground bus.
  6. Ikonekta ang pin 4 sa pin 5V sa pamamagitan ng isang button. Para sa mga kadahilanang pangkaligtasan, upang maiwasan ang daloy ng malaking kasalukuyang, palaging mas mahusay na gawin ito sa pamamagitan ng isang karagdagang maliit na risistor.
  7. Ikonekta ang Arduino board sa iyong computer sa pamamagitan ng USB cable at i-load ang program sa microcontroller gamit ang Arduino IDE.
  8. Paganahin ang Arduino board gamit ang power supply, baterya, o USB cable/

Code

const int buzzer=3; // pin 3 ang output sa buzzer const int pushbutton=4; // ang pin 4 ay ang input para sa button na void setup() ( pinMode(buzzer,OUTPUT); // itakda ang pin 3 sa output pinMode(pushbutton,INPUT); // itakda ang pin 4 sa input ) void loop() ( / / basahin ang output ng parehong sensor at ihambing ang resulta sa halaga ng threshold int sensor1_value = analogRead(A0 int sensor2_value = analogRead(A1 kung (sensor1_value > 400 || sensor2_value > 400) ( while(true) ( ​​​​); digitalWrite(buzzer,HIGH) ; // i-on ang alarm kung(digitalRead(pushbutton) == HIGH) break;

Video

Ang tagsibol, tulad ng alam mo, ay sinamahan ng lahat ng uri ng mga paglala, at ngayon ang pangunahing "paglala" ay gumapang palabas ng mga butas nito papunta sa kalye upang maiangkop para sa sarili kung ano ang hindi pag-aari nito. Nangangahulugan ito na ang paksa ng pagprotekta sa iyong ari-arian ay nagiging mas nauugnay kaysa dati.
Ang site ay mayroon nang ilang mga pagsusuri ng mga gawang bahay. Ang mga ito ay siyempre functional, ngunit lahat ay mayroon pangkalahatang katangian- pagtitiwala sa labasan. Kung ito ay hindi isang problema sa isang ari-arian kung saan ang elektrisidad ay ibinibigay na, kung gayon paano ang isang ari-arian kung saan ang labasan ay malayo o ang nakapaligid na lugar ay ganap na de-energized? Nagpasya akong kumuha ng ibang ruta - upang mag-ipon ng isang pangmatagalang aparato na kasing simple hangga't maaari at independiyente sa kapangyarihan ng mains, na matutulog sa lahat ng oras, at kapag nakapasok ang mga magnanakaw, ito ay magsisimula at tatawag sa telepono ng may-ari, pagbibigay ng senyas sa isang simpleng tawag sa alarma.

Suriin ang mga Item

Binili:
1. Development board single sided 5x7 cm: getinaks- o payberglas
* - Ang fiberglass ay mas mahusay na kalidad kaysa sa getinax.
2. Neoway M590 module - na may antenna sa PCB -
3. Arduino Pro Mini "RobotDyn" ATmega168PA 8MHz 3.3V -
4. Lithium charge-discharge control board -

Nakuha mula sa mga guho ng sibilisasyon:
1. Mga rack para sa mga board, gupitin mula sa mga housing ng aparato - 6 na mga PC.
2. Lithium flat na baterya 1300mAh
3. Mga staple na ginamit upang i-secure ang cable sa dingding
4. Pambura ng stationery
5. Kawad na tanso 1.5mm ang kapal
6. Pabahay ng instrumento mula sa lokal na merkado ng radyo - 1.5$
7. Pares ng mga LED iba't ibang kulay(kinuha mula sa VHS player)
8. Antenna at button na may cap (kinuha mula sa Wi-Fi router)
9. 4-pin terminal block (kinuha mula sa dimmer)
10. Power connector (kinuha mula sa isang lumang charger para sa 18650)
11. 6-pin connector (kinuha mula sa DVD drive)
12. Pwede(mula sa kape halimbawa)

Arduino Pro Mini "RobotDyn" Atmega 168PA 3.3V 8MHz

Mga pagtutukoy:
Microcontroller: ATMega168PA
Direktang operating boltahe:.8 - 5.5 V
Operating boltahe sa pamamagitan ng stabilizer LE33: 3.3 V o 5 V (depende sa modelo)
Temperatura ng pagpapatakbo:-40°C… 105°C
Input na boltahe: 3.35-12V (3.3V model) o 5-12V (5V model)
Mga Digital na Input/Output: 14 (6 sa mga ito ay maaaring gamitin bilang mga PWM output: 3, 5, 6, 9, 10, at 11)
Mga analog input: 6
Mga timer-counter: dalawang 8-bit at isang 16-bit
Mga Mode ng Pagtitipid ng Enerhiya: 6
DC kasalukuyang sa pamamagitan ng input/output: 40 mA
Flash memory: 16 KB (2 ginagamit para sa bootloader)
RAM: 1 KB
EEPROM: 512 byte
Pag-record ng memorya/pagbubura ng mapagkukunan: 10,000 Flash/100,000 EEPROM
Dalas ng orasan: 8 MHz (3.3 V model) o 16 MHz (5 V model)
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK)
I2C: A4 (SDA) at A5 (SCL)
UART TTL: 0 (RX) at 1 (TX)
Datasheet:

Ang pagpili ay nahulog sa atmega na ito nang hindi sinasadya. sa isang forum kung saan tinalakay ang mga proyektong matipid sa enerhiya, sa mga komento ay mayroong payo na gamitin ang ika-168 atmega.
Gayunpaman, kinailangan kong maghanap ng ganoong board, dahil kadalasan ang lahat ng mga lote ay puno ng 328 atmeg sa dalas na 16 MHz, na tumatakbo mula sa 5V. Para sa aking proyekto, ang mga naturang katangian ay kalabisan at hindi maginhawa mula pa sa simula, at ang paghahanap ay naging mas kumplikado.
Bilang resulta, nakatagpo ako ng 3.3-volt na bersyon ng Pro Mini sa Atmega 168PA sa eBay, at hindi lamang isang simpleng Chinese, ngunit sa ilalim ng tatak ng RobotDyn mula sa isang developer ng Russia. Oo, noong una, tulad mo, nagkaroon din ako ng butil ng pagdududa. Ngunit walang kabuluhan. Nang mabuo na ang proyekto, at ipinakilala ng AliExpress ang mandatoryong bayad na paghahatid para sa murang mga kalakal (pagkatapos nito ay nagsimulang mawala nang mas madalas ang mga parsela), kalaunan ay nag-order ako ng isang regular na Pro Mini Atmega168 (nang walang PA) 3.3V 8MHz. Nag-eksperimento ako ng kaunti sa mga mode ng pag-save ng kuryente na may parehong mga board, na nag-flash ng isang espesyal na sketch sa bawat isa na lumubog sa microcontroller sa maximum na mode ng pag-save ng kuryente, at ito ang lumabas:
1) Arduino Pro Mini "RobotDyn": ~250µA
2) Arduino Pro Mini "Walang Pangalan": kapag ang kapangyarihan ay inilapat sa boltahe stabilizer (RAW pin) at ang LED ay soldered, ang kasalukuyang pagkonsumo ay ~3.92mA




- tulad ng naiintindihan mo, ang pagkakaiba sa pagkonsumo ng enerhiya ay halos 16 na beses, lahat dahil ang NoName's Pro Mini ay gumagamit ng kumbinasyon ng Atmega168+, kung saan ang MK mismo ay kumakain lamang 20uA kasalukuyang (sinuri ko ito nang hiwalay), ang lahat ng natitirang katakawan ay isinasaalang-alang ng AMS1117 linear voltage converter - kinukumpirma lamang ito ng datasheet:


Sa kaso ng board mula sa RobotDyn, ang kumbinasyon ay medyo naiiba - ito ang Atmega168PA+ - dito ginagamit ang ibang LDO stabilizer, na ang mga katangian sa mga tuntunin ng pag-save ng enerhiya ay naging mas kaaya-aya:


Hindi ko na-desolder ito, kaya hindi ko masasabi kung gaano karaming kasalukuyang natupok ang Atmega168PA sa dalisay nitong anyo. Sa kasong ito, sapat na ako ~250µA kapag pinapagana ng Nokia baterya ng lithium. Gayunpaman, kung i-unsolder mo ang AMS1117 mula sa NoName" motherboard, kung gayon ang regular na ATmega168, sa dalisay nitong anyo, tulad ng sinabi ko sa itaas, ay kumonsumo 20uA.
Ang mga LED na may power supply ay maaaring matanggal gamit ang isang matalim na bagay. Hindi ito problema. Ang stabilizer ay na-desoldado gamit ang isang hairdryer. Gayunpaman, hindi lahat ay may hair dryer at ang mga kasanayan upang gumana dito, kaya ang parehong mga opsyon sa itaas ay may karapatang umiral.

Neoway M590E module

Mga pagtutukoy:
Mga frequency: EGSM900/DCS1800 Dual-band, o GSM850/1900 o Quad-band
Sensitivity:-107dBm
Pinakamataas na kapangyarihan ng pagpapadala: EGSM900 Class4(2W), DCS1800 Class1(1W)
Pinakamataas na kasalukuyang: 2A
Kasalukuyang gumagana: 210mA
Kasalukuyang pagtulog: 2.5mA
Temperatura ng pagpapatakbo:-40°C… +85°C
Operating boltahe: 3.3V…4.5V (inirerekomenda ang 3.9V)
Mga Protocol: GSM/GPRS Phase2/2+, TCP/IP, FTP, UDP atbp.
Internet: GPRS CLASS 10
Datasheet:

Ang pinakamurang module ng GSM na makikita sa merkado ay karaniwang second-hand, hindi palaging ibinebenta mula sa kagamitan sa pamamagitan ng maliksi na mga kamay ng Chinese. Bakit hindi laging matalino? Oo, lahat dahil sa desoldering na may hairdryer - madalas na natatanggap ng mga tao ang mga module na ito na may shorted plus at minus, na isa sa mga dahilan ng kanilang kawalan ng kakayahang magamit. Samakatuwid, ang unang hakbang ay upang suriin ang mga contact ng kapangyarihan para sa isang maikling circuit.

Tandaan. Nais kong tandaan ang isang hiwalay na mahalagang punto, sa palagay ko, na ang mga module na ito ay maaaring sumama sa isang bilog na coaxial connector para sa antena, na nagbibigay-daan sa iyong hiwalay na mag-order ng isang mas seryosong antena at ikonekta ito sa module nang hindi sumasayaw gamit ang isang tamburin. O maaaring dumating sila nang walang connector na ito. Ito ay kung pag-uusapan natin ang tungkol sa mga pinakamurang set. Kung hindi mo nais na umasa sa isang masayang aksidente, pagkatapos ay mayroong bahagyang mas mahal na mga hanay kung saan ang connector na ito ay naroroon + ang kit ay may kasamang panlabas na antenna sa isang textolite board.

Ang module na ito ay pabagu-bago rin pagdating sa power supply, dahil sa peak ay kumokonsumo ito ng hanggang 2A current, at ang diode na kasama sa kit ay tila idinisenyo upang babaan ang boltahe mula sa 5V (kaya naman sinasabing 5V sa board mismo ) hanggang 4.2V, ngunit sa paghusga sa Ayon sa mga reklamo ng mga tao, lumilikha ito ng mas maraming problema kaysa sa nararapat.
Sabihin nating na-assemble mo na ang modyul na ito, at sa halip na isang diode, isang jumper ang ibinebenta, dahil hindi kami magbibigay ng boltahe na 5V dito, ngunit bibigyan ito ng kapangyarihan nang direkta mula sa isang baterya ng lithium, na nasa loob ng pinapayagan. mga limitasyon ng boltahe ng 3.3-4.2V.
Kakailanganin na kahit papaano ay ikonekta ito sa computer at suriin para sa pag-andar. Para sa kasong ito, mas mahusay na bumili ng isa para sa iyong sarili nang maaga - sa pamamagitan nito makikipag-usap kami sa module at Arduino boards sa pamamagitan ng UART serial interface (USART).
Ang koneksyon ay ipinapakita sa ibaba sa larawan (iginuhit ko ito sa abot ng aking makakaya):
TX modem >>> RX converter
RX modem<<< TX конвертера
Baterya plus - Modem plus
Ang negatibo ng baterya ng lithium ay pinagsama sa GND ng modem at GND ng converter
Upang simulan ang modem, ilapat ang BOOT pin sa pamamagitan ng 4.7 kOhm risistor sa GND


Pansamantala, patakbuhin ang program sa iyong computer. Bigyang-pansin ang mga setting:
1) Piliin ang COM port kung saan nakakonekta ang TTL converter, sa aking kaso ito ay COM4, ​​​​maaaring iba ang sa iyo.
2) Piliin ang bilis ng paglilipat ng data. (May isang nuance dito, dahil ang mga module mismo ay maaaring i-configure para sa iba't ibang mga bilis, kadalasang 9600 baud o 115200 baud. Dito kailangan mong piliin ito nang empirically, pagpili ng ilang bilis, pagkonekta, at pagpapadala ng AT command, kung dumating ang mga bitak bilang tugon, pagkatapos ay madidiskonekta ito, pumili ng ibang bilis at ulitin ang utos at iba pa hanggang ang sagot ay OK).
3) Piliin ang haba ng packet (sa kasong ito 8 bits), parity bit disabled (wala), stop bit (1).
4) Tiyaking lagyan ng tsek ang kahon +CR, at pagkatapos ay awtomatikong idadagdag ang isang character sa pagbabalik ng karwahe sa bawat utos na ipinapadala namin sa module sa dulo - naiintindihan lamang ng module ang mga command gamit ang character na ito sa dulo.
5) Koneksyon, ang lahat ay malinaw dito, i-click at maaari naming magtrabaho kasama ang module.

Kung nag-click ka sa "Koneksyon" at pagkatapos ay simulan ang module sa pamamagitan ng paglalapat ng BOOT sa pamamagitan ng isang 4.7K na risistor sa lupa, pagkatapos ay ipapakita muna ng terminal ang inskripsyon na "MODEM:STARTUP", pagkatapos, pagkaraan ng ilang sandali, ang inskripsyon na "+PBREADY", ibig sabihin, ang numero ng telepono ay nabasa nang libro, kahit na ito ay maaaring walang laman:

Sa ilalim ng spoiler na ito ay ang mga AT command na may mga halimbawa

Nag-print kami ng AT command - bilang tugon ay ipinapadala sa amin ng module ang aming command, dahil pinagana ang echo mode, at OK:

Suriin natin ang status ng modem gamit ang AT+CPAS command - ang tugon ay muli ang ating command, +CPAS: 0 at OK.
0 ay nangangahulugan na ang module ay handa na para sa operasyon, ngunit depende sa sitwasyon ay maaaring mayroong iba pang mga numero, halimbawa 3 - papasok na tawag, 4 - sa mode ng koneksyon, 5 - mode ng pagtulog. Wala akong mahanap na anumang impormasyon sa 1 at 2.

Ang pagpapalit ng rate ng paglilipat ng data sa pamamagitan ng UART ay ginagawa gamit ang command na AT+IPR=9600 - ito ay kung kailangan mo ng bilis na 9600. Kung iba pa, katulad ng AT+IPR=19200, halimbawa, o AT+IPR=115200.

Suriin natin ang signal ng network. AT+CSQ, ang tugon ay dumating +CSQ: 22.1 - ang halaga bago ang decimal point ay may saklaw na 0... 31 (115... 52 dBl) - ito ang antas ng signal, mas mataas ang mas mahusay. Ngunit ang 99 ay nangangahulugan ng kawalan nito. Ang halaga pagkatapos ng decimal point ay ang kalidad ng signal 0... 7 - narito ito sa kabaligtaran, mas mababa ang numero, mas mabuti.

I-disable natin ang echo mode sa pamamagitan ng pagpapadala ng ATE0 command para hindi makagambala ang mga duplicate na command. Ibinalik ang mode na ito gamit ang command na ATE1.

Tingnan ang bersyon ng firmware na AT+GETVERS



Ang mga ito at marami pang ibang mga utos ay maaaring matingnan

Pag-align ng mga board

Kung ang paghihinang ng Pro Mini sa isang breadboard ay hindi mahirap, kung gayon sa GSM module ang sitwasyon ay medyo mas kumplikado, dahil ang contact comb nito ay matatagpuan lamang sa isang gilid, at kung ihinang mo lang ito, ang kabilang panig ng board ay mananatili lamang sa hangin. Pagkatapos, muli, kailangan kong mag-drill ng karagdagang 3 butas sa pamamagitan ng mata malapit sa tatlong sulok sa board. Ang mga lugar sa paligid ng bawat butas ay tinakpan. Para sa kaginhawahan, inilagay ko ang mga nakadiskonektang lead mula sa suklay sa isang walang solder na breadboard (puti) at, sa pag-install ng GSM module board sa mga ito, ibinenta ang mga ito nang normal:

Nang maglaon, kailangan kong gumawa ng isa pang butas, sa aking kaso sa titik na "I", kung saan nakasulat ang "Made In China", mula sa gilid ng board.


Ito ay lumabas na ang idinagdag na contact, na mahalagang GND, ay matatagpuan sa tabi ng GND ng Pro Mini board, at sa gayon naging posible na ikonekta ang ground ng GSM module at ang Pro Mini na may isang drop ng solder (ang mahabang pin sa gitna at ang Pro Mini pin sa kanan nito) - Minarkahan ko sila ng mga arrow. Siyempre ito ay naging medyo baluktot, ngunit ngayon ito ay ligtas na humahawak:



May ilang puwang na natitira sa pagitan ng mga board - sa loob nito ay naglagay ako ng lithium discharge charge control board na may pre-soldered microUSB connector at soldered wires.

Ang scarf ay umaangkop doon nang mahigpit, at ang ningning ng mga LED sa gilid ay malinaw na makikita sa pamamagitan ng isang maliit na butas sa kaso.



Mga rack ng card

Upang ligtas na mai-mount ang board sa loob ng case, kailangan kong gumugol ng ilang araw sa pag-iisip kung paano ito maipapatupad. Ang opsyon na may hot-melt adhesive ay hindi isinasaalang-alang para sa maraming mga kadahilanan - maaari itong mahulog, maging deformed, at higit sa lahat, ang istraktura ay mahirap i-disassemble.
Nakarating ako sa konklusyon na ang pinakasimpleng at pinakatamang opsyon dito ay ang paggamit ng mga rack, na natural na wala ako. Gayunpaman, mayroong isang pares ng mga hindi gumaganang charger, kung saan ang isang mahabang stand na may sinulid para sa self-tapping screws ay pinutol. Ang bawat stand ay sawn sa kalahati at isinampa pababa sa tungkol sa 9.5 mm - ito ay sa taas na ito na ang baterya na matatagpuan sa ilalim ng board ay may sapat na margin na mga 2 mm - ito ay ginagawa upang ang mga soldered contact ng board na may kanilang mga tip ay gawin huwag hawakan ito at sa gayon ay posible na maglagay ng isang piraso sa pagitan ng mga ito foam para sa pagkapirmi.
Tulad ng para sa paglakip ng board nang direkta sa kaso, dito pinutol ko ang apat na piraso mula sa isang lata ng kape, nag-drill ng isang butas sa mga dulo kung saan, pagkatapos ay sinigurado ang mga ito sa parehong mga turnilyo na naka-screwed sa mga rack. Tingnan sa larawan sa ibaba kung ano ang hitsura nito.
Ang susunod na hakbang ay upang i-tornilyo ang isang pares ng mga stand sa kabilang panig ng board, iyon ay, sa itaas, upang kapag ang kaso ay sarado, ang takip ay nakapatong nang bahagya sa mga stand na ito, na lumilikha ng karagdagang pag-aayos. Maya-maya, para sa layuning ito, nakatagpo ako ng isang pabahay mula sa isang radyo ng propaganda ng Sobyet (kung ito ay natagpuan nang mas maaga, kinuha ko ang lahat ng mga kinatatayuan mula rito), kung saan nakakita ako ng ilang higit pa o hindi gaanong angkop na taas, ngunit una kong binantasan ang mga ito sa gitna gamit ang isang drill sa ilalim ng self-tapping screws Pagkatapos ay pinutol ko ang mga ito at tinapos ko rin ang mga ito gamit ang isang file, inaalis ang labis. Narito ako ay nakaisip ng isang subtlety - sa larawan makikita mo na ang isang puting stand ay naka-screwed sa getinaks board mula sa gilid, at ang isa pang puti ay naka-screwed nang direkta sa module board, dahil mula sa isang gilid ang modem board ay ganap na sumasakop sa ilalim na board, at mula sa kabaligtaran na gilid - sa kabaligtaran - ang ilalim ay sumisilip na. Kasabay nito, ang mga karagdagang butas ay kailangang i-drill sa parehong mga board upang ang mga ulo ng mga turnilyo ay malayang makapasa.
At sa wakas, nananatili itong tiyakin na ang board ay palaging kahanay sa katawan - ang mga staple na ginagamit upang ayusin ang mga wire at cable sa dingding ay perpekto para sa gawaing ito dati kong tinanggal ang mga kuko mula sa kanila. Ang mga bracket ay kumakapit nang maayos sa board na may malukong na gilid nang walang anumang karagdagang mga aparato, ang tanging bagay ay nasa kanan ng SIM card, ang lapad ng bracket ay naging labis at kailangan ko ring buhangin ito.
Ang lahat ng mga detalye ay inayos ayon sa mata at eksperimento, sa ibaba ay isang larawan ng lahat ng nasa itaas:



Mga konektor. mga LED. Pindutan.

Dahil naubusan ako ng suklay, kailangan kong tanggalin ang 6-pin connector mula sa DVD drive board, na pagkatapos ay ibinenta ko sa Pro Mini, ito ay para sa kaginhawaan ng pag-flash ng board. Sa malapit ay nagsolder ako ng isang bilog na connector (Nokiev 3.5mm) para sa pag-charge ng lithium.

Ang katawan ng 6-pin connector ay bahagyang natapos sa isang file, dahil ang mga gilid nito ay bahagyang nakausli sa itaas ng katawan. Ang charging socket ay akmang akma sa dingding ng case.

Sa kabilang panig ng board, nag-solder ako ng isang pindutan upang i-reboot ang device at dalawang LED para sa pag-debug ng firmware - ang pulang LED ay konektado sa GSM module, ang pangalawang berdeng LED ay konektado sa ika-10 pin ng Pro Mini - ito ay mas madali para sa akin na i-debug ang program.

Pagbabago ng baterya

Ang flat na baterya ng Nokia mula sa mga teleponong Nokia ay hindi gaanong karaniwan kaysa sa 18650, ngunit marami ang tumatangging gamitin ito dahil sa abala ng pagkonekta sa mga contact, na nakatago nang malalim sa baterya mismo. Hindi kanais-nais na maghinang sa kanila, kaya napagpasyahan na gamitin ang pamamaraan na iminungkahi ng mga ito, ibig sabihin, gumawa ng isang bloke ng contact sa iyong sarili mula sa isang pambura ng opisina at tansong kawad (1.5 mm ang kapal).
Una, tinusok ko ang isang piraso ng pambura na may dalawang wire na may mga pre-stripped na dulo, at inayos ang mga ito sa mga contact ng baterya upang ang distansya sa pagitan ng mga ito ay magkasabay,
Baluktot ko ang mga dulo, tinned ang mga ito ng isang panghinang na bakal, at hinila ang mga ito pabalik nang bahagya sa mahahabang dulo upang ang mga resultang contact ay maipasok sa pambura.



Pagsubok sa isang baterya:

Maaari mong i-secure ang contact block gamit ang isang rubber band o balutin ito ng asul na electrical tape, na kung ano ang natapos kong gawin.

Assembly.

Ang pangunahing bahagi ng gawain ay tapos na, ang natitira lamang ay ang tipunin at itala ito.
Naglagay ako ng isang piraso ng foam rubber sa pagitan ng baterya at ng board para hindi ito gumalaw sa loob ng case mamaya. Nagbebenta rin ako ng 2200 µF capacitor para mapagana ang module.

Kapag nakakonekta ang pag-charge:

Frame. Panlabas na terminal block.

Ang kaso ay magagamit sa lokal na merkado ng radyo para sa humigit-kumulang $1.5, kung iko-convert sa dolyar, na may sukat na 95x60x25mm, halos kasing laki ng isang pakete ng sigarilyo. Nag-drill ako ng ilang butas dito. Una para sa 4-pin terminal block, na kinuha mula sa hindi gumaganang dimmer.
Ganap kong pinalaya ang dalawang panlabas na contact mula sa mga bolts na may mga spacer, mga drilled hole para sa mas mahabang bolts, na hahawak sa buong terminal block sa katawan. Sa kaso mismo, siyempre, ang dalawang panlabas na butas ay magiging malaki, at ang dalawa sa gitna ay magiging mas maliit - magkakaroon sila ng mga contact na sinulid sa kanila, ang isa ay konektado sa VCC Pro Mini, at ang pangalawang contact sa pin. 2.

Ang mga butas ng pagbabarena, kahit na isang simpleng gawain sa unang sulyap, ay hindi pa rin gaanong matrabaho, napakadaling makaligtaan, kaya ginawa ko muna ito sa isang drill ng isang mas maliit na diameter, pagkatapos ay sa isang mas malaki.

Para sa tact button, pinili ko ang isang takip na may bahagyang malukong tuktok, upang ito ay madaling maabot gamit ang isang tugma o clip ng papel sa pamamagitan ng isang makitid na butas sa kaso.

Isakay sa isang case na may nakakonektang USB-TTL converter cable:

Tungkol sa antena.
Ang antenna, tulad ng napansin mo sa buong pagsusuri, ay patuloy na nagbabago habang nag-eeksperimento ako sa iba't ibang mga homemade na antenna. Sa una, mayroong isang bilog na coaxial connector sa module board, ngunit sa ikalimang beses na ginamit ito para sa isang panlabas na antenna, ito ay nahulog lamang, kaya tandaan na ito ay manipis. Bilang resulta, pinunit ko ang antenna sa PCB mula sa lumang router, at ibinenta ito sa module board, dahil... nahuhuli nito ang lambat ng kaunti kaysa sa tagsibol at alambre.

Well, ganap na naka-assemble na may nakakonektang pag-charge, ganito ang hitsura:

Pagsubok. Paano ito gumagana:

Bilang karagdagan sa mga pagsubok na may mga antenna, sinuri ko kung paano kikilos ang alarma sa labas, sa -15 frost. Upang gawin ito, inilagay ko lamang ang buong loob sa isang lalagyan at iniwan ito sa balkonahe sa magdamag, ang alarma ay hindi nagsimula, ang dahilan ay naging halata sa pangkalahatan - hindi gusto ng lithium ang hamog na nagyelo. Ito ay nakumpirma ng isa pang pagsubok, kung saan iniwan ko ang baterya sa bahay, at kinuha ang board sa labas sa pamamagitan ng mahabang mga wire at iniwan ito nang ganoon sa isang araw sa parehong hamog na nagyelo - gumana ito na parang walang nangyari. Sa kabilang banda, kakaiba kung hindi gagana ang alarma dahil... Sa mga datasheet para sa Atmega, para sa mga module, at para sa kuwarts, ang pinapayagang temperatura ng pagpapatakbo ay hanggang -40 degrees.

Ang prinsipyo ng operasyon ay isinaayos gamit ang isang panlabas na interrupt, sa una ang pin 2 ay sarado sa VCC at sa gayon ang lohikal na 1 ay pinananatili sa pin, at ang controller ay natutulog. Sa sandaling masira ang contact at lumitaw ang 0 sa pin 2, nagising ang microcontroller, ibinababa ang 3rd pin (kung saan nakakonekta ang BOOT ng modem sa pamamagitan ng isang risistor) sa ground - magsisimula ang module, pana-panahong sinusuri ng MK ang module para sa kahandaan, at sa sandaling mahuli nito ang network, agad itong nagpapadala ng tawag sa numero ng telepono ng may-ari na tinukoy sa code. Pagkatapos tanggihan ang tawag, mag-o-off ang device nang hindi nagpapadala ng anumang walang katapusang mga tawag, na siyang problema sa maraming Chinese alarm.

Karagdagang impormasyon

#isama #isama // UART software library SoftwareSerial gsm(7, 6); // RX(7), TX(6) void wakeUp()() // walang laman na interrupt handler ///////////////////////// /////////////// void gsmOFF())( // PORTD|=(1<<3); // ВЫКЛЮЧЕНИЕ МОДУЛЯ _delay_ms(10); // gsm.println("AT+CPWROFF"); // ПЕЧАТАЕМ КОМАНДУ OFF PORTB &=~ (1<<2); // выключить LED 10 } // //========================================= void gsmON(){ // PORTD|=(1<<6); // 6-му порту (TX) назначить 1 PORTD &= ~(1<<3); // ЗАПУСК МОДУЛЯ _delay_ms(10); // while(!gsm.find("+PBREADY")); // ждём прочтения тел. книги PORTB |= (1<<2); // включить LED 10 _delay_ms(100); // while(1){ // gsm.println("AT+CREG?"); // проверяем в сети ли модуль if (gsm.find("0,1")) break; // если сеть есть, выходим из цикла _delay_ms(400); // проверка раз в 0,4 сек } // } // /////////////////////////////////////////// // void sleepNow(){ // функция засыпания ADCSRA = 0x00; // отключить подсистему АЦП (экономия 140 мкА) PORTD&=~(1<<6); // в вывод TX поставить 0 _delay_ms(100); // set_sleep_mode(SLEEP_MODE_PWR_DOWN); // режим сна PWR_DOWN sleep_enable(); // включение сна attachInterrupt(0, wakeUp, LOW); // включить прерывания sleep_mode(); // sleep_disable(); // detachInterrupt(0); // отключить прерывания } void setup(){ gsm.begin(9600); // скорость работы UART DDRD = B01001000; // 3-й и 6-й выводы на выход DDRB |= (1<<2); // вывод 10 на выход gsmON(); // запуск модуля для теста gsmOFF(); // выключаем модуль } void loop(){ if (!(PIND&(1<<2))){ // если на 0-ом прерывании появился 0 gsmON(); gsm.println("ATD+79xxxxxxxxx;"); // отзваниваемся, в ответ приходит OK и CONNECT _delay_ms(100); if (gsm.find("OK")) while(1){ // ожидание сброса вызова gsm.println("AT+CPAS"); // при каждой итерации опрашиваем модуль if (gsm.find("0")) break; // если 0, то выходим из цикла while _delay_ms(100); // проверка раз в 0,1 сек } for (char i=0; i<14; i++){ PORTB|=(1<<2); // LED 10 ON _delay_ms(200); PORTB&=~(1<<2); // LED 10 OFF _delay_ms(200); } gsmOFF(); // выключить модуль _delay_ms(10); while(1); // блокируем программу } else { sleepNow(); // укладываем контроллер спать } }

Circuit diagram (walang charge-discharge control board)



Mga konklusyon at kaisipan. Mga plano.

Ang alarma ay ginagamit sa dacha, nasiyahan ako sa trabaho, gayunpaman, sa karagdagang pag-aaral ng AVR, parami nang parami ang mga ideya na lumalabas para sa karagdagang pagbabago. Ang Arduino na may pseudo-language Wiring nito ay talagang nagalit sa akin, dahil... Isang hindi kasiya-siyang sandali ang natuklasan sa trabaho. Kapag ginamit ko ang port functions digitalWrite(); o pinMode(); - sa ilang kadahilanan ang GSM module ay madalas na nagyelo. Ngunit sulit na palitan ang mga ito ng mga trick tulad ng DDRB|=(1<Tanging ang operasyon ng direktang pag-access sa mga port ang nagpagana sa device ayon sa nilalayon.

Sa pagtitipid ng enerhiya...
Ang naka-assemble na device ay gumana nang apat na buong buwan nang hindi nagre-recharge at patuloy na gumagana, bagama't mas tamang sabihing "sleep." Maaari itong suriin sa pamamagitan lamang ng pag-reboot sa pamamagitan ng puting pindutan. Sa konsumo ng kuryente na 250 μA (sa pamamagitan ng LE33 stabilizer) at isang baterya na ~1430 mAh, bagaman okay, dahil sa pagiging bago ng baterya, iikot namin ito hanggang sa 1000 mAh, lumalabas na ang aparato ay maaaring matulog para sa mga 5.5 na buwan nang hindi nagre-recharge. Kung aalisin mo pa rin ang stabilizer, ang oras ng pagpapatakbo ay maaaring ligtas na ma-multiply ng 10 beses. Ngunit sa aking kaso ay hindi na kailangan para dito, dahil kailangan mo pa ring gastusin ang balanse mula sa SIM card isang beses bawat tatlong buwan, sa parehong oras ang aparato ay maaaring suriin at muling magkarga.
Ang halimbawa ng pag-save ng enerhiya na ibinigay sa pagsusuri ay malayo sa limitasyon, dahil sa paghusga sa impormasyon mula sa datasheet, maaari mong babaan ang dalas ng orasan ng microcontroller (at ginagawa ito sa pamamagitan ng pag-install ng mga piyus) sa 1 MHz at, kung ilalapat mo ang 1.8 V boltahe, ang pagkonsumo ay bababa sa ibaba ng 1 μA bar sa aktibong mode . Napakaganda! Ngunit kung ang MK ay na-clock mula sa panloob na RC oscillator, pagkatapos ay lilitaw ang isa pang problema - ang hangin ng UART ay barado ng mga basura at mga error, lalo na kung ang controller ay pinainit o pinalamig.

Nang matapos...
1) Ang isang ordinaryong wire na naka-install upang masira ay hindi masyadong maginhawa, plano kong mag-eksperimento sa isang sensor ng Hall at isang switch ng tambo, kahit na sinasabi nila tungkol sa huli na hindi ito masyadong maaasahan, dahil ang mga contact sa loob nito ay maaaring dumikit.
2) Mas mainam na magdagdag ng kakayahang baguhin ang "numero ng may-ari" nang walang paglahok ng isang computer at pag-flash nito. Kakailanganin mong magtrabaho kasama ang EEPROM.
3) Subukan ang mga pagkaantala mula sa watchdog timer, ngunit hindi lamang para sa kapakanan ng pag-usisa, ngunit upang ang microcontroller ay pana-panahong gumising sa sarili nitong, sukatin ang boltahe ng baterya at ipadala ang resultang halaga sa pamamagitan ng SMS upang malaman kung gaano kababa ang baterya.
4) Ang isang solar panel ay maaaring ganap na maalis ang pangangailangan na muling magkarga ng aparato; ito ay magiging totoo lalo na para sa mga mababang kapasidad na baterya.
5) Sa loob ng mahabang panahon ay nais kong bumili ng mga baterya ng LiFePo4, na, ayon sa mga pagsusuri, ay makatiis ng hamog na nagyelo, ngunit habang naghahanap ako ng angkop na lote, tahimik na dumating ang tagsibol.
6) Magtrabaho sa bahagi ng aesthetic

Aling Pro Mini ang dapat mong bilhin?
Kung wala kang hair dryer, pagkatapos ay ang Pro Mini "RobotDyn" Atmega168PA 3.3V, tanggalin ang LED na may matalas na bagay at mayroon kang ~250 µA.
Kung mayroon kang hair dryer, pagkatapos ay anumang board, maghinang ang stabilizer at ang LED para sa power supply - makakakuha ka ng ~20 µA ng kasalukuyang pagkonsumo.

Iyon lang sa ngayon, sana ay naging kawili-wili at kapaki-pakinabang ang pagsusuri.

Nagpaplanong bumili ng +174 Idagdag sa mga paborito Nagustuhan ko ang pagsusuri +143 +278 Sa nakalipas na dekada, sinakop ng mga pagnanakaw ng sasakyan ang isa sa mga pinakamahalagang lugar sa istruktura ng mga krimen na ginawa sa mundo. Ito ay hindi dahil sa partikular na bigat ng kategoryang ito ng pagnanakaw na may kaugnayan sa kabuuang bilang ng mga krimen, ngunit sa kahalagahan ng pinsalang dulot ng mataas na halaga ng mga sasakyan. Ang mahinang bisa ng mga hakbang na ginawa sa larangan ng paglaban sa pagnanakaw ng sasakyan sa pagtatapos ng 90s ay humantong sa paglikha ng mga matatag na grupo na nagdadalubhasa sa paggawa ng mga krimeng ito at pagkakaroon ng mga natatanging katangian ng organisadong krimen; Marahil ay narinig mo na ang terminong "black auto business." Ang fleet ng sasakyan ng mga bansang European taun-taon ay kulang ng ≈ 2% ng mga sasakyan na nagiging paksa ng mga kriminal na pag-atake. Samakatuwid, nakaisip ako ng ​paggawa ng GSM alarm para sa aking sasakyan batay sa Arduino Uno.

Magsimula na tayo!

Ano ang kukunin natin?

Kailangan nating piliin ang puso ng ating sistema. Sa palagay ko, para sa gayong pagbibigay ng senyas ay walang mas mahusay kaysa sa Arduino Uno. Ang pangunahing criterion ay isang sapat na bilang ng mga "pin" at presyo.


Mga Pangunahing Tampok ng Arduino Uno

Microcontroller - ATmega328
Boltahe sa pagpapatakbo - 5 V
Input na boltahe (inirerekomenda) - 7-12 V
Input na boltahe (limitasyon) - 6-20 V
Mga Digital Input/Output - 14 (6 sa mga ito ay maaaring gamitin bilang mga PWM output)
Mga analog na input - 6
DC kasalukuyang sa pamamagitan ng input/output - 40 mA
Patuloy na kasalukuyang para sa output 3.3V - 50mA
Flash memory - 32 KB (ATmega328) kung saan 0.5 KB ang ginagamit para sa bootloader
RAM - 2 KB (ATmega328)
EEPROM - 1 KB (ATmega328)
Dalas ng orasan - 16 MHz


Angkop!

Ngayon ay kailangan mong pumili ng isang GSM module, dahil ang aming sistema ng alarma ay dapat na maabisuhan ang may-ari ng kotse. Kaya, kailangan mong "Google"... Dito, isang mahusay na sensor - SIM800L, ang laki ay kahanga-hanga lamang.


Napaisip ako at inorder ito sa China. Gayunpaman, ang lahat ay naging hindi gaanong kulay-rosas. Tumanggi lang ang sensor na irehistro ang SIM card sa network. Lahat ng posible ay sinubukan - ang resulta ay zero.
May mga mababait na tao na nagbigay sa akin ng mas cool na bagay - Sim900 Shield. Ngayon ito ay isang seryosong bagay. Ang Shield ay may parehong mikropono at headphone jack, na ginagawa itong isang ganap na telepono.


Mga Pangunahing Tampok ng Sim900 Shield

4 na pamantayan ng dalas ng pagpapatakbo 850/ 900/ 1800/ 1900 MHz
GPRS multi-slot class 10/8
GPRS mobile station class B
Sumusunod sa GSM phase 2/2+
Class 4 (2 W @850/ 900 MHz)
Class 1 (1 W @ 1800/1900MHz)
Kontrolin gamit ang mga AT command (GSM 07.07, 07.05 at SIMCOM extended AT command)
Mababang paggamit ng kuryente: 1.5mA(sleep mode)
Saklaw ng temperatura ng pagpapatakbo: -40°C hanggang +85°C


Angkop!

Ok, ngunit kailangan mong kumuha ng mga pagbabasa mula sa ilang mga sensor upang maabisuhan ang may-ari. Kung ang kotse ay hinila palayo, kung gayon ang posisyon ng kotse ay malinaw na magbabago sa kalawakan. Kumuha tayo ng accelerometer at gyroscope. Mahusay. Ok, naghahanap kami ngayon ng sensor.

Sa tingin ko ay tiyak na magkasya ang GY-521 MPU6050. Ito ay lumabas na mayroon din itong sensor ng temperatura. Dapat din natin itong gamitin, magkakaroon ng ganitong "killer feature". Ipagpalagay natin na ipinarada ito ng may-ari ng kotse sa ilalim ng kanyang bahay at umalis. Ang temperatura sa loob ng kotse ay magbabago nang "smoothly". Ano ang mangyayari kung ang isang nanghihimasok ay sumubok na pumasok sa kotse? Halimbawa, mabubuksan niya ang pinto. Ang temperatura sa kotse ay magsisimulang magbago nang mabilis habang ang hangin sa cabin ay nagsisimulang humalo sa ambient air. Sa tingin ko ito ay gagana.


Pangunahing Tampok ng GY-521 MPU6050

3-axis gyroscope + 3-axis accelerometer module GY-521 sa isang MPU-6050 chip. Binibigyang-daan kang matukoy ang posisyon at paggalaw ng isang bagay sa espasyo, angular na bilis sa panahon ng pag-ikot. Mayroon din itong built-in na sensor ng temperatura. Ito ay ginagamit sa iba't ibang mga modelo ng copters at sasakyang panghimpapawid;

Chip - MPU-6050
Supply boltahe - mula 3.5V hanggang 6V (DC);
Saklaw ng Gyro - ±250 500 1000 2000°/s
Saklaw ng Accelerometer - ±2±4±8±16g
Interface ng komunikasyon - I2C
Sukat - 15x20 mm.
Timbang - 5 g


Angkop!

Magagamit din ang isang vibration sensor. Bigla nilang sinubukang buksan ang kotse gamit ang "brute force", o sa paradahan ng isa pang kotse ang tumama sa iyong sasakyan. Kunin natin ang vibration sensor SW-420 (adjustable).


Pangunahing katangian ng SW-420

Supply boltahe - 3.3 - 5V
Output signal - digital High/Low (karaniwang sarado)
Ginagamit ang sensor - SW-420
Ang ginamit na comparator ay LM393
Mga sukat - 32x14 mm
Bukod pa rito - Mayroong isang risistor ng pagsasaayos.


Angkop!

I-screw ang module ng SD memory card. Magsusulat din kami ng log file.


Mga pangunahing katangian ng module ng SD memory card

Binibigyang-daan ka ng module na iimbak, basahin at isulat sa isang SD card ang data na kinakailangan para sa pagpapatakbo ng isang device batay sa isang microcontroller. Ang paggamit ng device ay may kaugnayan kapag nag-iimbak ng mga file mula sa sampu-sampung megabytes hanggang dalawang gigabytes. Naglalaman ang board ng SD card container, card power stabilizer, at connector plug para sa interface at power lines. Kung kailangan mong gumamit ng audio, video o iba pang malakihang data, halimbawa, upang mag-log ng mga kaganapan, data ng sensor o mag-imbak ng impormasyon sa web server, gagawing posible ng module ng SD memory card para sa Arduino na gumamit ng SD card para sa mga ito. mga layunin. Gamit ang module, maaari mong pag-aralan ang mga feature ng SD card.
Supply boltahe - 5 o 3.3 V
Kapasidad ng memorya ng SD card - hanggang 2 GB
Mga Dimensyon - 46 x 30 mm


Angkop!

At magdagdag tayo ng isang servo drive; kapag ang mga sensor ay na-trigger, ang servo drive na may video recorder ay liliko at kukunan ng isang video ng insidente. Kunin natin ang MG996R servo drive.


Pangunahing Tampok ng MG996R Servo Drive

Matatag at maaasahang proteksyon laban sa pinsala
- Metal drive
- Double row ball bearing
- Haba ng wire 300 mm
- Mga sukat 40x19x43mm
- Timbang 55 g
- Anggulo ng pag-ikot: 120 degrees.
- Bilis ng pagpapatakbo: 0.17sec/60 degrees (4.8V walang load)
- Bilis ng pagpapatakbo: 0.13sec/60 degrees (6V walang load)
- Panimulang torque: 9.4kg/cm sa 4.8V power supply
- Panimulang torque: 11kg/cm sa 6V power supply
- Operating boltahe: 4.8 - 7.2V
- Lahat ng bahagi ng drive ay gawa sa metal


Angkop!

Kinokolekta namin

Mayroong isang malaking bilang ng mga artikulo sa Google tungkol sa pagkonekta sa bawat sensor. At wala akong pagnanais na mag-imbento ng mga bagong bisikleta, kaya mag-iiwan ako ng mga link sa simple at gumaganang mga opsyon. Sa nakalipas na dekada, sinakop ng mga pagnanakaw ng sasakyan ang isa sa mga pinakamahalagang lugar sa istruktura ng mga krimen na ginawa sa mundo. Ito ay hindi dahil sa partikular na bigat ng kategoryang ito ng pagnanakaw na may kaugnayan sa kabuuang bilang ng mga krimen, ngunit sa kahalagahan ng pinsalang dulot ng mataas na halaga ng mga sasakyan. Ang mahinang bisa ng mga hakbang na ginawa sa larangan ng paglaban sa pagnanakaw ng sasakyan sa pagtatapos ng 90s ay humantong sa paglikha ng mga matatag na grupo na nagdadalubhasa sa paggawa ng mga krimeng ito at pagkakaroon ng mga natatanging katangian ng organisadong krimen; Marahil ay narinig mo na ang terminong "black auto business." Ang fleet ng sasakyan ng mga bansang European taun-taon ay kulang ng ≈ 2% ng mga sasakyan na nagiging paksa ng mga kriminal na pag-atake. Samakatuwid, nakaisip ako ng ​paggawa ng GSM alarm para sa aking sasakyan batay sa Arduino Uno.

Magsimula na tayo!

Ano ang kukunin natin?

Kailangan nating piliin ang puso ng ating sistema. Sa palagay ko, para sa gayong pagbibigay ng senyas ay walang mas mahusay kaysa sa Arduino Uno. Ang pangunahing criterion ay isang sapat na bilang ng mga "pin" at presyo.


Mga Pangunahing Tampok ng Arduino Uno

Microcontroller - ATmega328
Boltahe sa pagpapatakbo - 5 V
Input na boltahe (inirerekomenda) - 7-12 V
Input na boltahe (limitasyon) - 6-20 V
Mga Digital Input/Output - 14 (6 sa mga ito ay maaaring gamitin bilang mga PWM output)
Mga analog na input - 6
DC kasalukuyang sa pamamagitan ng input/output - 40 mA
Patuloy na kasalukuyang para sa output 3.3V - 50mA
Flash memory - 32 KB (ATmega328) kung saan 0.5 KB ang ginagamit para sa bootloader
RAM - 2 KB (ATmega328)
EEPROM - 1 KB (ATmega328)
Dalas ng orasan - 16 MHz


Angkop!

Ngayon ay kailangan mong pumili ng isang GSM module, dahil ang aming sistema ng alarma ay dapat na maabisuhan ang may-ari ng kotse. Kaya, kailangan mong "Google"... Dito, isang mahusay na sensor - SIM800L, ang laki ay kahanga-hanga lamang.


Napaisip ako at inorder ito sa China. Gayunpaman, ang lahat ay naging hindi gaanong kulay-rosas. Tumanggi lang ang sensor na irehistro ang SIM card sa network. Lahat ng posible ay sinubukan - ang resulta ay zero.
May mga mababait na tao na nagbigay sa akin ng mas cool na bagay - Sim900 Shield. Ngayon ito ay isang seryosong bagay. Ang Shield ay may parehong mikropono at headphone jack, na ginagawa itong isang ganap na telepono.


Mga Pangunahing Tampok ng Sim900 Shield

4 na pamantayan ng dalas ng pagpapatakbo 850/ 900/ 1800/ 1900 MHz
GPRS multi-slot class 10/8
GPRS mobile station class B
Sumusunod sa GSM phase 2/2+
Class 4 (2 W @850/ 900 MHz)
Class 1 (1 W @ 1800/1900MHz)
Kontrolin gamit ang mga AT command (GSM 07.07, 07.05 at SIMCOM extended AT command)
Mababang paggamit ng kuryente: 1.5mA(sleep mode)
Saklaw ng temperatura ng pagpapatakbo: -40°C hanggang +85°C


Angkop!

Ok, ngunit kailangan mong kumuha ng mga pagbabasa mula sa ilang mga sensor upang maabisuhan ang may-ari. Kung ang kotse ay hinila palayo, kung gayon ang posisyon ng kotse ay malinaw na magbabago sa kalawakan. Kumuha tayo ng accelerometer at gyroscope. Mahusay. Ok, naghahanap kami ngayon ng sensor.

Sa tingin ko ay tiyak na magkasya ang GY-521 MPU6050. Ito ay lumabas na mayroon din itong sensor ng temperatura. Dapat din natin itong gamitin, magkakaroon ng ganitong "killer feature". Ipagpalagay natin na ipinarada ito ng may-ari ng kotse sa ilalim ng kanyang bahay at umalis. Ang temperatura sa loob ng kotse ay magbabago nang "smoothly". Ano ang mangyayari kung ang isang nanghihimasok ay sumubok na pumasok sa kotse? Halimbawa, mabubuksan niya ang pinto. Ang temperatura sa kotse ay magsisimulang magbago nang mabilis habang ang hangin sa cabin ay nagsisimulang humalo sa ambient air. Sa tingin ko ito ay gagana.


Pangunahing Tampok ng GY-521 MPU6050

3-axis gyroscope + 3-axis accelerometer module GY-521 sa isang MPU-6050 chip. Binibigyang-daan kang matukoy ang posisyon at paggalaw ng isang bagay sa espasyo, angular na bilis sa panahon ng pag-ikot. Mayroon din itong built-in na sensor ng temperatura. Ito ay ginagamit sa iba't ibang mga modelo ng copters at sasakyang panghimpapawid;

Chip - MPU-6050
Supply boltahe - mula 3.5V hanggang 6V (DC);
Saklaw ng Gyro - ±250 500 1000 2000°/s
Saklaw ng Accelerometer - ±2±4±8±16g
Interface ng komunikasyon - I2C
Sukat - 15x20 mm.
Timbang - 5 g


Angkop!

Magagamit din ang isang vibration sensor. Bigla nilang sinubukang buksan ang kotse gamit ang "brute force", o sa paradahan ng isa pang kotse ang tumama sa iyong sasakyan. Kunin natin ang vibration sensor SW-420 (adjustable).


Pangunahing katangian ng SW-420

Supply boltahe - 3.3 - 5V
Output signal - digital High/Low (karaniwang sarado)
Ginagamit ang sensor - SW-420
Ang ginamit na comparator ay LM393
Mga sukat - 32x14 mm
Bukod pa rito - Mayroong isang risistor ng pagsasaayos.


Angkop!

I-screw ang module ng SD memory card. Magsusulat din kami ng log file.


Mga pangunahing katangian ng module ng SD memory card

Binibigyang-daan ka ng module na iimbak, basahin at isulat sa isang SD card ang data na kinakailangan para sa pagpapatakbo ng isang device batay sa isang microcontroller. Ang paggamit ng device ay may kaugnayan kapag nag-iimbak ng mga file mula sa sampu-sampung megabytes hanggang dalawang gigabytes. Naglalaman ang board ng SD card container, card power stabilizer, at connector plug para sa interface at power lines. Kung kailangan mong gumamit ng audio, video o iba pang malakihang data, halimbawa, upang mag-log ng mga kaganapan, data ng sensor o mag-imbak ng impormasyon sa web server, gagawing posible ng module ng SD memory card para sa Arduino na gumamit ng SD card para sa mga ito. mga layunin. Gamit ang module, maaari mong pag-aralan ang mga feature ng SD card.
Supply boltahe - 5 o 3.3 V
Kapasidad ng memorya ng SD card - hanggang 2 GB
Mga Dimensyon - 46 x 30 mm


Angkop!

At magdagdag tayo ng isang servo drive; kapag ang mga sensor ay na-trigger, ang servo drive na may video recorder ay liliko at kukunan ng isang video ng insidente. Kunin natin ang MG996R servo drive.


Pangunahing Tampok ng MG996R Servo Drive

Matatag at maaasahang proteksyon laban sa pinsala
- Metal drive
- Double row ball bearing
- Haba ng wire 300 mm
- Mga sukat 40x19x43mm
- Timbang 55 g
- Anggulo ng pag-ikot: 120 degrees.
- Bilis ng pagpapatakbo: 0.17sec/60 degrees (4.8V walang load)
- Bilis ng pagpapatakbo: 0.13sec/60 degrees (6V walang load)
- Panimulang torque: 9.4kg/cm sa 4.8V power supply
- Panimulang torque: 11kg/cm sa 6V power supply
- Operating boltahe: 4.8 - 7.2V
- Lahat ng bahagi ng drive ay gawa sa metal


Angkop!

Kinokolekta namin

Mayroong isang malaking bilang ng mga artikulo sa Google tungkol sa pagkonekta sa bawat sensor. At wala akong pagnanais na mag-imbento ng mga bagong bisikleta, kaya mag-iiwan ako ng mga link sa simple at gumaganang mga opsyon.

Ang proyektong ito ay may kinalaman sa pagbuo at pagpapabuti ng isang sistema upang maiwasan/makontrol ang anumang mga pagtatangka sa paglusot ng mga magnanakaw. Gumagamit ang binuong security device ng naka-embed na system (kabilang ang isang hardware microcontroller gamit ang open source software at isang gsm modem) batay sa teknolohiya ng GSM (Global System for Mobile Communications).

Ang isang aparatong panseguridad ay maaaring mai-install sa bahay. Ang intrusion alarm interface sensor ay konektado din sa controller-based security system.
Kapag sinubukang tumagos, magpapadala ang system ng mensahe ng babala (halimbawa, sms) sa mobile phone ng may-ari o sa anumang pre-configure na mobile phone para sa karagdagang pagproseso.

Ang sistema ng seguridad ay binubuo ng isang Arduino Uno microcontroller at isang karaniwang SIM900A modem batay sa GSM/GPRS. Ang buong sistema ay maaaring paandarin ng anumang 12V 2A power supply/baterya.

Nasa ibaba ang isang diagram ng isang Arduino-based na sistema ng seguridad.

Ang pagpapatakbo ng system ay napaka-simple at hindi nangangailangan ng paliwanag. Kapag ang kapangyarihan ay ibinibigay sa system, ito ay napupunta sa standby mode. Kapag ang mga J2 connector pin ay na-short, isang pre-programmed na mensahe ng babala ay ipapadala sa kinakailangang numero ng mobile. Maaari mong ikonekta ang anumang intrusion detector (tulad ng light guard o motion sensor) sa J2 input connector. Tandaan na ang isang active-low (L) na signal sa pin 1 ng connector J2 ay mag-a-activate sa burglar alarm.

Bukod dito, ang isang opsyonal na "call-alarm" na aparato ay idinagdag sa system. Ina-activate nito ang isang tawag sa telepono kapag pinindot ng user ang S2 button (o kapag ang isa pang electronic unit ay nagpasimula ng alarma). Pagkatapos ng pagpindot sa pindutan ng "tawag" (S2), ang tawag ay maaaring kanselahin sa pamamagitan ng pagpindot sa isa pang pindutan S3 - ang pindutan ng "pagtatapos". Maaaring gamitin ang opsyong ito upang makabuo ng alarma na "hindi nasagot na tawag" kung sakaling makapasok.

Ang circuit ay napaka-flexible, kaya maaari itong gumamit ng anumang SIM900A modem (at, siyempre, ang Arduino Uno board). Mangyaring basahin nang mabuti ang dokumentasyon ng modem bago simulan ang pagpupulong. Gagawin nitong mas madali at mas kasiya-siya ang proseso ng pagmamanupaktura ng system.

Listahan ng mga radioelement

Pagtatalaga Uri Denominasyon Dami TandaanMamiliNotepad ko
Arduino board

Arduino Uno

1 Sa notepad
GSM/GPRS modemSIM900A1 Sa notepad
IC1 Linear na regulator

LM7805

1 Sa notepad
C1 100uF 25V1 Sa notepad
C2 Electrolytic kapasitor10uF 16V1 Sa notepad
R1 Resistor

1 kOhm

1 Sa notepad
LED1 LED 1 Sa notepad
S1 PindutanSa pag-aayos1