Hej, kære læser! Dagens artikel handler om at skabe en simpel hjemmesystem sikkerhed ved brug af tilgængelige komponenter. Denne lille og billige enhed hjælper dig med at beskytte dit hjem mod indtrængen. Arduino hjælp, bevægelsessensor, display og højttaler. Enheden kan få strøm fra et batteri eller en computers USB-port.
Så lad os begynde!
Ligene af varmblodede dyr udsender infrarød stråling, som er usynlig for menneskelige øjne, men kan detekteres ved hjælp af sensorer. Sådanne sensorer er lavet af et materiale, der spontant kan polarisere, når de udsættes for varme, hvilket gør det muligt at detektere udseendet af varmekilder inden for sensorens rækkevidde.
Til et bredere udvalg anvendes Fresnel-linser, som opsamler infrarød stråling fra forskellige retninger og koncentrere det om selve sensoren.
Figuren viser, hvordan linsen forvrænger de stråler, der falder på den.
Det er værd at bemærke, at robotter uden særligt varme dele og koldblodede dele udsender meget lidt infrarød stråling, så sensoren fungerer muligvis ikke, hvis Boston Dynamics-ansatte eller krybdyr beslutter sig for at omringe dig.
Når der er en ændring i niveauet af IR-stråling i området, vil dette blive behandlet på Arduino, hvorefter status vil blive vist på LCD-displayet, LED vil blinke, og højttaleren vil bippe.
Forresten, hvis du ikke ønsker at købe alle disse dele separat, anbefaler vi, at du er opmærksom på vores. Alt hvad du skal bruge og endnu mere er for eksempel i vores startsæt.
Tilslutning af en bevægelsessensor er meget enkel:
Lad os nu forbinde LED og højttaler. Det er lige så enkelt her:
Og nu den sværeste del - LCD tilslutning 1602-skærm til Arduino. Vi har en skærm uden I2C, så vi skal bruge mange Arduino-output, men resultatet vil være det værd. Diagrammet er præsenteret nedenfor:
Vi behøver kun en del af kredsløbet (vi vil ikke have kontrastjustering med et potentiometer). Derfor skal du kun gøre følgende:
Nu ved du, hvordan du forbinder en 1602-skærm til Arduino UNO R3 (såvel som til enhver version af Arduino fra Mini til Mega).
Det er tid til at gå videre til programmering. Nedenfor er koden, som du blot skal udfylde, og hvis du har samlet det hele rigtigt, er enheden klar!
#omfatte
God eftermiddag Igen, en multi-gennemgang af kinesiske elektroniske komponenter, som sædvanlig om lidt af hvert, jeg vil prøve at holde det kort, men vil det virke? Så mød GSM alarm koster op til 700 kr. Interessant? Brug venligst "klip"!
Lad os komme igang! Før du starter, anbefaler jeg at tage et kig på denne, færre komponenter og større autonomi. Så de "tekniske specifikationer", de grundlæggende krav til signalering:
1) Giv besked, når sensorer udløses.
2) I tilfælde af strømsvigt skal der gives en vis autonomi.
3) Alarmstyring via SMS og opkald.
På grund af det faktum, at processen med at oprette en alarm tog flere måneder, og nogle sælgere ikke længere sælger de komponenter, der blev købt hos dem, vil links blive opdateret til produkter fra andre sælgere, der har det maksimale eller tæt på det maksimale antal produktsalg og den bedste pris. Priserne i anmeldelsen er gældende på den dato, den blev skrevet.
Liste over hvad du skal bruge:
Liste over ændringer
GSM_03_12_2016-14-38.hex- fast betjening af enheden med M590-modemet.
GSM_05_12_2016-13-45.hex- tilføjet memtest-konsolkommando, optimering af RAM-brug.
GSM_2016_12_06-15-43.hex- tilføjet output af kommandoresultater til konsollen, hukommelsesoptimering. Optaget: 49% SRAM.
GSM_2016_12_07-10-59.hex- nu tilføjes og fjernes telefonnumre korrekt. Optaget: 49 % SRAM, 74 % Flash-hukommelse.
GSM_2016_12_07-15-38.hex- tilføjet muligheden for at tilslutte en bevægelsessensor, tilslutte til pin A0 (in I dette tilfælde ben A0 bruges som digital). Tilføjede SMS-kommandoer PIROn, PIROff. Optaget: 48 % SRAM, 76 % Flash-hukommelse.
GSM_2016_12_08-13-53.hex- Nu, efter at have udført en kommando, der ikke sender en SMS-besked som svar, blinker enheden den blå LED én gang. Nu, efter en forkert udførelse af en kommando, der ikke sender en SMS-besked som svar, blinker enheden den blå LED to gange. Nu, efter initialisering af enhedsparametrene, hvis "stille" tilstand er aktiveret (SendSms = 0), blinker enheden den blå LED ofte i 2 sekunder. Rettede en fejl på grund af, at nummeret ikke altid blev slettet fra hukommelsen ved hjælp af kommandoen DeletePhone. Optaget: 48 % SRAM, 78 % Flash-hukommelse.
GSM_2016_12_11-09-12.hex- Tilføjet konsol kommandoer AddPhone og DeletePhone, syntaksen ligner SMS-kommandoer. Hukommelsesoptimering. Optaget: 43 % SRAM, 79 % Flash-hukommelse.
GSM_2017_01_03-22-51.hex- Der er implementeret understøttelse af lignende I/O-portudvidelser på PCF8574-chippen til tilslutning af yderligere 8 sensorer, inklusive reed-switche. Automatisk adressesøgning og automatisk modulkonfiguration. Standardnavnene på sensorer og det logiske niveau af deres respons ændres ved hjælp af EditSensor-kommandoen. Indholdet af alarm-SMS'en for hovedsensoren (pin D0) er ændret: “Alarm! Hovedsensor! og bevægelsessensor (ben A0) “Alarm! PIR sensor! Tilføjet EditSensor og I2CScan kommandoer. Optaget: 66% SRAM, 92% Flash-hukommelse.
GSM_2017_01_15-23-26.hex- Understøttelse af A6_Mini-modem. Overvågning af tilstedeværelsen af ekstern strøm (ben D7). Tilføjede SMS-kommandoer WatchPowerOn, WatchPowerOff. Tilføjede konsolkommandoer ListConfig, ListSensor. Nu fungerer EditSensor SMS-kommandoen korrekt. Outputtet af fejlfindingsoplysninger til portmonitoren er blevet en smule reduceret. Optaget: 66% SRAM, 95% Flash-hukommelse.
GSM_2017_01_16-23-54.hex- Nu i svarmeddelelsen til SMS-kommandoen "Info" rapporteres også status for bevægelsessensoren. Rettede en fejl på grund af, at tomme svar-SMS-beskeder nogle gange blev sendt. Nu giver enheden besked ikke kun om en nedlukning, men også om genoptagelse af ekstern strøm. Alle modemer begyndte at skravle mindre, og nu er portmonitoren lidt renere. Optaget: 66% SRAM, 95% Flash-hukommelse.
GSM_2017_02_04-20-23.hex- Rettede fejlen "Se strømmen tændt". Nu, efter frakobling, er "alarmstiften" slukket. Nu, efter sletning af et nummer, vises de korrekte oplysninger i konsollen. Muligvis rettet en fejl, på grund af hvilken tomme svar-SMS-beskeder nogle gange blev sendt. Optaget: 66 % SRAM, 90 % Flash-hukommelse.
GSM_2017_02_14-00-03.hex- Nu sendes SMS-beskeder som standard, SendSms-parameteren er igen lig med 1. Nu, når kontakterne på hoved-reed-sensoren lukkes (lukker døren), blinker enheden med en blå LED i 2 sekunder, hvilket indikerer normal drift af sensoren. Optaget: 66 % SRAM, 90 % Flash-hukommelse.
GSM_2017_03_01-23-37.hex- WatchPowerOn-kommandoen er blevet fjernet. Tilføjet konsolkommando WatchPowerOff, identisk med SMS-kommandoen. Tilføjet WatchPowerOn1, WatchPowerOn2 kommandoer. WatchPowerOn1 - ekstern strømovervågning er aktiveret, hvis alarmen er aktiveret, WatchPowerOn2 - ekstern strømovervågning er altid aktiveret. Implementeret til- og frakoblingsfunktion eksterne enheder, ben A1(D15) og A2(D16) bruges til dette. Alarmen til-/frakobles, når den vises på ben A1(D15) højt niveau+5V eller ved ben A2(D16) lavt niveau GND. Ben A1(D15) trækkes op til GND, ben A2(D16) trækkes op til +5V gennem 20 (10) kOhm modstande. Tilføjet GuardButtonOn og GuardButtonOff kommandoer. Nu, efter tilkobling, blinker den røde LED, indtil integriteten af hoved-reed-afbryderkredsløbet er kontrolleret. Hvis kredsløbet er intakt, lyser den røde LED. Optaget: 66% SRAM, 95% Flash-hukommelse.
GSM_2017_03_12-20-04.hex- Nu er konsollen blevet endnu renere, men hvis testtilstanden "TestOn" er aktiveret, vises yderligere information i konsollen. "Sendt!"-fejlen er blevet rettet; information om afsendelse af beskeder vises nu korrekt i konsollen. Rettede fejlen "gentaget falsk opkald". Nu burde balanceanmodningen fungere korrekt på alle modemer. Optaget: 67 % SRAM, 95 % Flash-hukommelse.
GSM_2017_04_16-12-00.hex- Rettet. Nu vil Info og Money kommandoerne altid sende en svar SMS. GuardButtonOn kommandoen er blevet erstattet af GuardButtonOn1 og GuardButtonOn2 kommandoerne. Optaget: 67 % SRAM, 99 % Flash-hukommelse.
GSM_2017_04_21-09-43.hex - anbefales ikke til brug, kun til testformål, tak for at identificere fejl :) - Nu påvirker sendsms-parameteren ikke afsendelsen af SMS-beskeder til elnetovervågning. Tilføjet SMS-kommando DelayBeforeGuard ansvarlig for forsinkelsen ved tilkobling, værdien må ikke overstige 255 sekunder. Tilføjet SMS-kommando DelayBeforeAlarm, som er ansvarlig for at forsinke afsendelsen af notifikationer og aktivere "alarmpinden", når sensorer udløses; værdien må ikke overstige 255 sekunder. ClearSMS-kommandoer er blevet fjernet, beskeder slettes nu automatisk ved modtagelse. Optaget: 68% SRAM, 100% Flash-hukommelse.
GSM_2017_04_22-20-42.hex- Flere fejl rettet. ClearSMS-kommandoer er igen til stede i firmwaren. Hukommelsesoptimering. Optaget: 68 % SRAM, 98 % Flash-hukommelse.
GSM_2017_04_23-17-50.hex- Nu skulle balanceanmodningen fungere korrekt på alle modemer. Til- og frakobling med eksterne enheder fungerer nu korrekt. SMS-svarbeskeder fra Info-kommandoen må ikke være tomme. Hukommelsesoptimering. Optaget: 68 % SRAM, 98 % Flash-hukommelse.
GSM_2017_04_24-13-22.hex- Sender nu konsolkommandoer til GSM modul udføres kun, hvis testtilstand er aktiveret. Nu er der ingen opdeling mellem SMS-kommandoer og konsolkommandoer; alle eksisterende kommandoer kan transmitteres både via SMS og via konsollen. En fejl med kommandoen Info kan være blevet rettet. Hukommelsesoptimering. Optaget: 68 % SRAM, 94 % Flash-hukommelse.
GSM_2017_04_25-20-54.hex- Rettede en fejl, hvor ListConfig-kommandoen ændrede værdien af den sidste hændelse. Nu, når du indtaster kommandoer gennem konsollen, sendes unødvendige SMS-beskeder ikke. En fejl med kommandoen Info kan være blevet rettet. Hukommelsesoptimering. Optaget: 66 % SRAM, 94 % Flash-hukommelse.
GSM_2017_04_30-12-57.hex- Aktiverede midlertidigt output af yderligere information til konsollen ved afsendelse af SMS-beskeder og generering af et svar på Info-kommandoen. En fejl med kommandoen Info kan være blevet rettet. Hukommelsesoptimering. Optaget: 66% SRAM, 92% Flash-hukommelse.
GSM_2017_05_06-11-52.hex- Rettet med DelayBeforeAlarm funktion. Optaget: 66% SRAM, 93% Flash-hukommelse.
GSM_2017_05_23-21-27.hex- Outputtet af information til konsollen er blevet lidt ændret. Tilføjet understøttelse af portudvidelsesmoduler på PCF8574A med adresser fra 0x38 til 0x3f inklusive. Rettet fejl c. Nu genstarter enheden automatisk efter FullReset, ResetConfig, ResetPhone-kommandoerne, og hvis MemTest-kommandoen er udført. Tilføjet WatchPowerTime-kommando. Det er nu muligt at indstille det tidspunkt, hvorefter en SMS-besked vil blive sendt, der angiver, at den eksterne strømkilde er slukket. Optaget: 67 % SRAM, 94 % Flash-hukommelse.
GSM_2017_05_26-20-22.hex- Initialisering af udvidelseskortsensorhukommelse er blevet rettet. AddPhone-kommandosyntaksen er blevet ændret. Tilføjet EditMainPhone-kommando. Funktionsprincippet for notifikationssystemet er ændret, når sensoren udløses, sendes SMS-beskeder først, hvorefter der foretages taleopkald. Alarm SMS-beskeder vil blive sendt til telefonnumre med tegnet "S" (SMS). Taleopkald vil blive foretaget til numre med "R" (ringe)-tegnet. Meddelelser om at slukke/tænde den eksterne strømkilde vil blive sendt til telefonnumre med tegnet "P" (Power). Tilføjet RingTime-kommando. Det er nu muligt at indstille varigheden af et alarmerende taleopkald; parameteren kan have en værdi fra 10 til 255 sekunder. RingOn/RingOff-kommandoen aktiverer/deaktiverer nu taleopkaldsalarmer globalt. Tilføjet ResetSensor-kommando. Optaget: 68% SRAM, 99% Flash-hukommelse.
GSM_2017_06_02-17-43.hex- Parameteren "I" (Info) er blevet tilføjet til kommandoerne AddPhone og EditMainPhone, som er ansvarlig for SMS-besked om til- eller frakobling af enheden. Nu efter tilføjelse af hovednummeret, genstarter enheden automatisk. Nu kan du indtaste identiske numre i enhedens hukommelse. Når du tilføjer det andet og efterfølgende duplikatnummer, vil attributterne "M", "S", "P" og "I" automatisk blive fjernet fra dem. Disse numre vil blive brugt til gentagne taleopkald, når sensorerne udløses. En fejl med forkert konsoloutput efter udførelse af AddPhone-kommandoen er blevet rettet; nu vises information ikke automatisk efter tilføjelse af et nummer. Tilføjet genstartskommando. Optaget: 69 % SRAM, 99 % Flash-hukommelse.
GSM_2017_06_11-00-07.hex- Nu igen, når kontakterne på hoved-reed-sensoren er lukket (lukker døren), blinker enheden med en blå LED i 2 sekunder, hvilket indikerer normal drift af sensoren, men den tager ikke højde for, om enheden er tilkoblet eller afvæbnet. RingOn/RingOff kommandoer er blevet fjernet. Nu kan enheden frakobles under et alarmopkald; nu foretages de i baggrunden. Optaget: 69 % SRAM, 99 % Flash-hukommelse.
GSM_2017_07_04-21-52.hex- Nu sender Pause-kommandoen ikke en svar-SMS. Kommandoerne TestOn og TestOff er blevet fjernet. Management-attributten er blevet fjernet fra alle numre. Optaget: 68% SRAM, 96% Flash-hukommelse.
GSM_2017_07_24-12-02.hex- Tilføjet ReedSwitchOn/ReedSwitchOff-kommandoer til overvågning af hoved-reed-sensoren, nu kan den tændes/slukkes på samme måde som en bevægelsessensor. Rettede en fejl i Info-kommandoen. Kommandoerne TestOn og TestOff er igen til stede i firmwaren. Optaget: 68% SRAM, 96% Flash-hukommelse.
GSM_2017_07_26-10-03.hex- Tilføjet ModemID-kommando. Automatisk detektering af modemmet udføres kun, hvis værdien af denne parameter er 0. Efter indstilling af parameterværdien til 0, genstartes enheden automatisk. Optaget: 68 % SRAM, 98 % Flash-hukommelse.
GSM_2017_08_03-22-03.hex- Nu kan alarmen styre eksterne enheder. Til styring anvendes analog udgang A3 (D17 - bruges som digital). Det logiske udgangsniveau (+5V eller GND) kan ændres; efter at have ændret niveauet via konfigurationskommandoen, genstarter enheden automatisk. Varigheden af det eksterne enhedskontrolsignal kan ændres. Tilføjet kommandoer ExtDeviceLevelLow, ExtDeviceLevelHigh, ExtDeviceTime, Open. Nogle ændringer i logikken for kontrolkommandoer. Hukommelsesoptimering. Optaget: 68% SRAM, 99% Flash-hukommelse.
GSM_2017_08_10-12-17.hex- Kommandoerne SmsOn/SmsOff, ReedSwitchOn/ReedSwitchOff, PIROn/PIROff og alt forbundet med dem er blevet fjernet. Kommandoen DelayBeforeAlarm er blevet erstattet med udvidede kommandoer. Ændrede output fra Info-kommandoen. Outputtet af ListConfig-kommandoen til konsollen er blevet optimeret. Nu kan alle digitale sensorer med høje eller lave responsniveauer, inklusive reed-kontakter, tilsluttes ben D6 og A0. Ben D6 og A0 skal forbindes til jord (GND) gennem en modstand på 10 (20) kOhm. Hvis sensoren er indstillet til et lavt responsniveau (aktiveret i reed switch-tilstand), kontrolleres kredsløbets integritet. Det logiske udløsningsniveau på indgangene D6 og A0 (+5V eller GND) kan ændres; efter ændring af det logiske niveau genstarter enheden automatisk. For hver af sensorerne (hoved-, sekundær-, PCF-udvidelseskort) kan dens egen tid indstilles, når den udløses, hvorefter der vil blive givet besked (SMS og/eller taleopkald). "PIR-sensor" er blevet omdøbt til "Anden sensor". Rettede driften af udvidelseskortet, en fejl på grund af hvilken enheden altid underrettede, når sensorer blev udløst, uanset om enheden var tilkoblet eller ej. Nu kan du vælge en driftstilstand, hvor enheden kan overvåge udvidelseskortets sensorer både i tilkoblet tilstand (GuardOn) og i deaktiveret tilstand (GuardOff). Tilføjede kommandoer PCFForceOn/PCFForceOff, MainSensorLevelHigh/MainSensorLevelLow/MainSensorLevelOff, SecondSensorLevelHigh/SecondSensorLevelLow/SecondSensorLevelOff, MainDelayBeforeAlarm, SecondDelayBeforeAlarm, PCFDelay. Optaget: 68% SRAM, 99% Flash-hukommelse.
*Efterfølgende firmwareversioner inkluderer ændringer fra tidligere versioner.
Arduino Nano v3 porte brugt
D4- udgang af en "alarm"-pin; når sensoren udløses, indstilles et højniveausignal på denne pin
D5- omvendt udgang af "alarm" stiften; når sensoren udløses, indstilles et lavt niveau signal på denne stift
D6- reed sensor. Fra version GSM_2017_08_10-12-17.hex kan alle digitale sensorer med høje eller lave responsniveauer, inklusive reed-kontakter, tilsluttes ben D6. Ben D6 skal trækkes til jord (GND) gennem en modstand på 10 (20) kOhm.
D7- tilsluttet en spændingsdeler fra en ekstern +5V strømkilde. Overarm 2,2 kOhm, underarm 3,3 kOhm.
Spændingsdeler
D8- TX modem
D9- RX modem
D10- rød LED
D11- blå LED
D12- grøn LED
Perifer forbindelse:
A0- Bevægelsessensor. Fra version GSM_2017_08_10-12-17.hex kan alle digitale sensorer med et højt eller lavt responsniveau, inklusive reed-kontakter, tilsluttes ben A0. Ben A0 skal trækkes til jord (GND) gennem en modstand på 10 (20) kOhm.
A1- Log ind for ekstern kontrol. Alarmen til-/frakobles, når der vises et højt niveau på +5V ved indgangen.
A2- Omvendt input til ekstern styring. Alarmen til-/frakobles, når et lavt GND-niveau vises ved indgangen.
A3- Konfigurerbar (+5V eller GND) udgang til styring af eksterne enheder. Når en kontrolkommando modtages, ændres værdien ved denne udgang afhængigt af, hvad der blev indstillet for en bestemt tidsperiode.
A4- SDA I2C
A5- SLC I2C
, til tilslutning af yderligere 8 sensorer.
Kontrolkommandoer til hex-firmware
Opmærksomhed! Hold dedikerede med fed skrift kan kun udføres fra hovednummeret, da de er ansvarlige for enhedskonfigurationen. Andre kommandoer kan udføres fra tal med attributten "Management".
SMS - kontrolkommandoer skelner ikke mellem store og små bogstaver:
Tilføj Telefon- Tilføj et telefonnummer. I alt kan der ikke tilføjes mere end 9 numre + 1 hovednummer, som automatisk gemmes i hukommelsen første gang du ringer til enheden efter nulstilling til fabriksindstillinger ved hjælp af kommandoer Nulstil Telefon eller Fuld nulstilling. De der. Den, der først ringede til enheden efter at have nulstillet den til fabriksindstillingerne, er "master", dette nummer indtastes i den første hukommelsescelle og kan ikke ændres eller slettes via SMS. Det er ikke muligt at tilføje to ens tal.
Eksempel på kommando:
Kommandosyntaks:
Tilføj Telefon- hold
: - afgrænsning
5 - skriv til den femte hukommelsescelle
+71234567890 - telefonnummer
Op til version GSM_2017_05_26-20-22.hex:
a - "Alarm" parameter - SMS beskeder vil blive sendt til numre med denne parameter - beskeder om alarm aktivering og beskeder om til- eller frakobling.
Fra version GSM_2017_05_26-20-22.hex:
m - "Management" parameter - alarmstyring er aktiveret
s - "SMS" parameter - en SMS besked vil blive sendt, når sensorerne udløses
r - "Ring" parameter - et taleopkald vil blive foretaget, når sensorerne udløses
p - "Power" parameter - en SMS-besked vil blive sendt, når den eksterne strøm tændes/slukkes
i - "Info" parameter - en SMS-besked vil blive sendt ved til- eller frakobling
Hvis parametrene "m", "s", "r", "p", "i" mangler, er telefonen gemt i hukommelsen, men den bruges ikke på nogen måde.
Kommandosyntaks:
SletTelefon - kommando
: - afgrænsning
+71234567891 - telefonnummer
Kommandosyntaks:
EditMainPhone - kommando
: - afgrænsning
srpi - parametre
Kommandosyntaks:
BalanceNum - kommando
: - afgrænsning
#103# - saldoanmodningsnummer
L24 - Længden (len) af det videresendte svar er 24 tegn, vi afskærer spam fra saldoanmodningen.
EditSensor:1+Datchik dvizheniya v koridore#h
Kommandosyntaks:
EditSensor - kommando
: - afgrænsning
1 - skriv til den første hukommelsescelle
+ - separator
Datchik dvizheniya v koridore - navnet på sensoren må ikke overstige 36 tegn, inklusive mellemrum.
#h - Tegn på et højt logisk niveau fra sensoren, ved modtagelse af hvilket en alarm vil blive udløst. Hvis "#h" mangler, vil alarmen blive udløst, når et lavt logisk niveau modtages fra sensoren.
Kommandosyntaks:
SleepTime - kommando
: - afgrænsning
20 - 20 minutters "søvn".
Kommandosyntaks:
AlarmPinTime - kommando
: - afgrænsning
30 - 30 sekunder for at tænde/slukke for alarmstiften.
Kommandosyntaks:
DelayBeforeGuard - kommando
: - afgrænsning
25 - 25 sekunder før tilkobling
Kommandosyntaks:
DelayBeforeAlarm - kommando
: - afgrænsning
40 - 40 sekunder, før du sender en "alarm"-meddelelse
Kommandosyntaks:
WatchPowerTime - kommando
: - afgrænsning
5 - 5 minutter før afsendelse af SMS-besked
Kommandosyntaks:
Ringetid - kommando
: - afgrænsning
40 - 40 vil opkaldets varighed være 40 sekunder, hvorefter næste abonnent ringes op.
Kommandosyntaks:
ModemID - kommando
: - afgrænsning
2 - Modem ID.
Kommandosyntaks:
ExtDeviceTime- kommando
: - afgrænsning
5-5 sekunder
NulstilSensor- nulstil portudvidelsessensorer
Nulstil Konfig- nulstil indstillinger til fabriksindstillinger
Nulstil Telefon- sletning af alt fra hukommelsen telefonnumre
Fuld nulstilling- nulstil indstillinger, slet alle telefonnumre fra hukommelsen, gendan standardværdien for kommandoen BalanceNum.
RingOn- aktiver meddelelse ved at ringe til "hoved"-nummeret, der er registreret i den første hukommelsescelle, når sensoren udløses. Fjernet fra version GSM_2017_06_11-00-07.hex
Ring Off- sluk for meddelelsen ved at ringe, når sensoren udløses. Fjernet fra version GSM_2017_06_11-00-07.hex
SmsOn- aktiver SMS-besked, når sensoren udløses. Fjernet fra version GSM_2017_08_10-12-17.hex
SmsOff- slå SMS-besked fra, når sensoren udløses. Fjernet fra version GSM_2017_08_10-12-17.hex
PIROn- muliggør bevægelsessensorbehandling
PIROff- deaktiver bevægelsessensorbehandling
ReedSwitchOn- muliggør behandling af den primære reed-sensor
ReedSwitchOff- sluk for behandlingen af den primære reed-sensor
WatchPowerOn- aktiver ekstern strømstyring, en SMS-besked om at slukke for den eksterne strøm vil blive sendt, forudsat at alarmsystemet er tilkoblet. Fjernet fra version GSM_2017_03_01-23-37.
WatchPowerOn1- aktiver ekstern strømstyring, en SMS-besked om at slukke for den eksterne strøm vil blive sendt, forudsat at alarmsystemet er tilkoblet.
WatchPowerOn2- aktiver ekstern strømstyring, en SMS-besked om at slukke for den eksterne strøm vil under alle omstændigheder blive sendt
WatchPowerOff- Sluk for ekstern strømstyring
GuardButtonOn- alarmstyring af eksterne enheder eller knap er aktiveret. Fjernet fra version GSM_2017_04_16-12-00.
Guard ButtonOn1- funktion indstilling eller fjernelse beskyttelse af eksterne enheder eller knap er aktiveret
Guard ButtonOn2- funktion kun produktioner tilkoblet af eksterne enheder, eller knappen er tændt; frakobling sker ved at ringe til enheden eller bruge en SMS-kommando.
GuardButtonOff- alarmkontrol af eksterne enheder eller knap er deaktiveret
PCForceOn- konstant overvågning af en gruppe af alle udvidelsesmodulsensorer
PCFForceOff- kun overvågning af en gruppe af alle udvidelsesmodulsensorer, når enheden er tilkoblet
Hovedsensorniveau Høj- en alarmmeddelelse vil blive sendt, når et højt niveau signal (+5 V) vises ved indgangen (D6) fra sensoren
MainSensorLevelLow- en alarmmeddelelse vil blive sendt, når et lavniveausignal (GND) vises ved indgangen (D6) fra sensoren
MainSensorLevelOff- sensorindgangsbehandling (D6) er deaktiveret
SecondSensorLevelHøj- en alarmmeddelelse vil blive sendt, når et højt niveau signal (+5 V) vises ved indgangen (A0) fra sensoren
SecondSensorLevelLow- en alarmmeddelelse vil blive sendt, når et lavniveausignal (GND) vises ved indgangen (A0) fra sensoren
SecondSensorLevelOff- behandling af sensorindgangen (A0) er deaktiveret
MainDelayBeforeAlarm- tid, hvorefter en "alarm" SMS-besked vil blive sendt, når hovedsensoren (D6) udløses, hvis alarmen ikke er blevet frakoblet i denne periode. Syntaksen er den samme som kommandoen DelayBeforeAlarm.
SecondDelayBeforeAlarm- tid, hvorefter en "alarm" SMS-besked vil blive sendt, når en ekstra sensor (A0) udløses, hvis alarmen ikke er blevet frakoblet i denne periode. Syntaksen er den samme som kommandoen DelayBeforeAlarm.
PCFDelayBeforeAlarm- det tidspunkt, hvorefter en "alarm" SMS-besked vil blive sendt, når udvidelseskortsensorerne (PCF8574) udløses, hvis alarmen ikke er blevet frakoblet i denne periode. Syntaksen er den samme som kommandoen DelayBeforeAlarm.
GuardOn - arm
GuardOff - fjern afskærmning
Åbn - ekstern enhedskontrolkommando
Info - tjek status, som svar på denne besked vil der blive sendt en SMS med information om hvilket nummer sikkerheden blev slået til/fra
Pause - pauser systemet i den tid, der er indstillet af sleeptime-kommandoen i minutter; systemet reagerer ikke på sensorudløsere.
TestOn - testtilstand er slået til, den blå LED blinker.
TestOff - testtilstand er slået fra.
LedOff - slukker standby-LED'en.
LedOn - tænder standby-LED'en.
Penge - saldo anmodning.
ClearSms - Slet alle sms'er fra hukommelsen
Konsolkommandoer (op til version GSM_2017_04_24-13-22.hex) - indtastet i Arduino IDE-portmonitoren:
AddPhone - svarende til AddPhone-sms-kommandoen
DeletePhone - svarende til SletPhone sms-kommandoen
EditSensor - svarende til EditSensor sms-kommandoen
ListPhone - output til portmonitoren en liste over telefoner gemt i hukommelsen
ResetConfig - svarende til ResetConfig sms-kommandoen
ResetPhone - svarende til ResetPhone sms-kommandoen
FullReset - svarende til FullReset sms-kommandoen
ClearSms - svarende til ClearSms sms-kommandoen
WatchPowerOn1 - svarende til WatchPowerOn1 sms-kommandoen
WatchPowerOn2 - svarende til WatchPowerOn2 sms-kommandoen
WatchPowerOff - svarende til WatchPowerOff sms-kommandoen
GuardButtonOn - svarende til GuardButtonOn sms-kommandoen. Fjernet fra version GSM_2017_04_16-12-00
GuardButtonOn1 - ligner GuardButtonOn1 sms-kommandoen
GuardButtonOn2 - ligner GuardButtonOn2 sms-kommandoen
GuardButtonOff - ligner GuardButtonOff sms-kommandoen
Memtest - test af enhedens ikke-flygtige hukommelse; alle enhedsindstillinger nulstilles, svarende til FullReset-kommandoen.
I2CScan - søg og initialiser understøttede enheder på I2C-bussen.
ListConfig - viser den aktuelle enhedskonfiguration til portmonitoren.
ListSensor - output til portmonitoren for den aktuelle sensorkonfiguration.
UPD. Ved brug af en bevægelsessensor, for at undgå falske positiver under modemdrift, er det nødvendigt mellem stifter GND Og A0 Arduino gøre modstand, tak kammerat
AllowPhone = ("70001234501", "70001234502", "70001234503", "70001234504", "70001234505") - Numre, der har tilladelse til at administrere sikkerhed.
AlarmPhone = ("70001234501", "70001234502") - Numre til afsendelse af SMS-beskeder, når sensoren udløses, og meddelelser om frakobling eller tilkobling. Det første nummer på listen vil blive kaldt, når sensoren udløses, hvis RingOn-kommandoen udføres; som standard er denne mulighed aktiveret. Dette gøres, fordi SMS-beskeder kan ankomme med en vis forsinkelse, men opkaldet bør gå igennem med det samme.
Hvis der modtages et opkald fra et autoriseret nummer eller en SMS-besked med GuardOn/GuardOff-kommandoen, vil der, afhængigt af den aktuelle sikkerhedsstatus, blive sendt en SMS-besked om til- eller frakobling til de numre, der er angivet i AlarmPhone-arrayet, og en SMS-besked vil også blive sendt til det nummer, som opkaldet kom fra.
Når sensoren udløses SMS-beskeder sendes til alle numre fra AlarmPhone-arrayet (listen), og der foretages et taleopkald til det første nummer fra dette array.
Lysindikation:
LED'en lyser rødt - den er tilkoblet.
LED'en lyser grønt - frakoblet, tændt/slukket med SMS-kommando LedOn/LedOff.
LED'en blinker konstant blåt - det signalerer, at alt er i orden med Arduino, kortet er ikke frosset, det bruges udelukkende til fejlretning, det tændes/slukkes af TestOn/TestOff SMS-kommandoen.
* Koden indeholder LedTest()-funktionen, den blinker med en blå LED, den er kun lavet til at overvåge Arduino, blinker - det betyder, at den virker, blinker ikke - den er frosset. Har ikke lagt på endnu :)
Ikke relevant!
Tilslutning af 2 eller flere sensorer til åben firmware (gælder kun denne firmware sketch_02_12_2016.ino)
For at tilslutte yderligere reed-sensorer bruger vi gratis digitale ben D2, D3, D5 eller D7. Tilslutningsdiagram med ekstra sensor på D7.
Nødvendige ændringer i firmware
... #define DoorPin 6 // Indgangsnummer forbundet til hovedsensoren int8_t DoorState = 0; // Variabel til lagring af hovedsensorens tilstand int8_t DoorFlag = 1; // Variabel til lagring af hovedsensorens tilstand #define BackDoorPin 7 // Indgangsnummer forbundet til den ekstra sensor int8_t BackDoorState = 0; // Variabel til lagring af den ekstra sensors tilstand int8_t BackDoorFlag = 1; // Variabel for at gemme tilstanden for den ekstra sensor...
void setup() ( ... pinMode(DoorPin, INPUT); pinMode(BackDoorPin, INPUT); ...
... void Detect() ( // Læs værdier fra sensorer DoorState = digitalRead(DoorPin); BackDoorState = digitalRead(BackDoorPin); // Behandler hovedsensoren hvis (DoorState == LOW && DoorFlag == 0) ( DoorFlag = 1; delay(100); if (LedOn == 1) digitalWrite(GLed, LOW); Alarm(); ) if (DoorState == HIGH && DoorFlag == 1)( DoorFlag = 0; delay(100); ) //Behandler yderligere sensor if (BackDoorState == LOW && BackDoorFlag == 0) ( BackDoorFlag = 1; delay(100); if (LedOn == 1) digitalWrite(GLed, LOW); Alarm(); ) if (BackDoorState = = HIGH && BackDoorFlag == 1)( BackDoorFlag = 0; delay(100); ) ) ...
Og en ting mere:
1. Det er bedre at bruge dioder, der er normeret til en strøm på 2 A, da modulet har en strøm på 1 A, og vi stadig mangler at forsyne Arduinoen og modemet med noget. Denne instans bruger 1N4007 dioder; hvis de fejler, skal du erstatte dem med 2 A.
2. Jeg brugte alle modstande til LED'en på 20 kOhm, for ikke at oplyse hele korridoren om natten.
3. Jeg anbragte også en 20 kOhm-modstand på reed-sensoren mellem GND-stiften og D6-stiften.
Det er alt for nu. Tak for din opmærksomhed! :)
Jeg planlægger at købe +207 Tilføj til favoritter Jeg kunne godt lide anmeldelsen +112 +243Goddag :) I dag taler vi om alarmer. Servicemarkedet er fyldt med virksomheder og organisationer, der installerer og vedligeholder sikkerhedssystemer. Disse virksomheder tilbyder køberen bredt vælge alarm. Men deres omkostninger er langt fra billige. Men hvad skal en person gøre, der ikke har mange personlige midler at bruge på en sikkerhedsalarm? Jeg synes, konklusionen tyder på sig selv - gør alarm deres hænder. Denne artikel giver et eksempel på, hvordan du kan lave dit eget kodede sikkerhedssystem ved hjælp af et Arduino uno-kort og flere magnetiske sensorer.
Systemet kan deaktiveres ved at indtaste adgangskoden fra tastaturet og trykke på knappen ' * ’. Hvis du vil ændre den nuværende adgangskode, kan du gøre dette ved at trykke på '-tasten B’, og hvis du vil springe over eller afbryde handlingen, kan du gøre dette ved at trykke på tasten ‘#’. Systemet har en buzzer til at afspille forskellige lyde, når du udfører en bestemt handling.
Systemet aktiveres ved at trykke på 'A'-knappen. Systemet giver 10 sekunder til at forlade rummet. Efter 10 sekunder vil alarmen blive aktiveret. Antallet af magnetiske sensorer vil afhænge af dit eget ønske. Projektet involverer 3 sensorer (til to vinduer og en dør). Når vinduet åbnes, aktiveres systemet, og alarmsignalet, der kommer fra summeren, aktiveres. Systemet kan deaktiveres ved at indtaste en adgangskode. Når døren åbnes, giver alarmen den der kommer ind 20 sekunder til at indtaste adgangskoden. Systemet bruger ultralydssensor, som kan registrere bevægelse.
Video af enhedens drift
Håndværk Lavet til informations-/uddannelsesformål. Hvis du vil bruge det derhjemme, skal du ændre det. Indkap kontrolenheden i en metalkasse og beskyt strømledningen mod mulig beskadigelse.
Lad os begynde!
Hvis du vil bygge et system uden at bruge Arduino, skal du også bruge følgende:
Og en kasse til at pakke det hele i!
Værktøjer:
Tilslutningsdiagrammet er ret simpelt.
Lille afklaring:
LCD med høj kontrast:
Tastatur 4x4:
Fra venstre mod højre:
Trinet præsenterer koden, der bruges af den indbyggede !
Download kodebender-plugin. Klik på "Kør"-knappen i Arduino og flash dit board med dette program. Det er alt. Du har lige programmeret din Arduino! Hvis du vil foretage ændringer i koden, skal du klikke på knappen "Rediger".
Bemærk: Hvis du ikke vil bruge Codebender IDE til at programmere dit Arduino-kort, skal du installere yderligere biblioteker i Arduino IDE.
Efter vellykket samlet og testet nyt projekt baseret på Arduino uno, kan du begynde at lave dit eget board.
Et par tips til mere vellykket afslutning tilsagn:
Foråret er som bekendt ledsaget af alle mulige forværringer, og nu er den største "forværring" kravlet ud af sine huller på gaden for at tilegne sig det, der ikke hører til. Det betyder, at emnet beskyttelse af din ejendom bliver mere relevant end nogensinde.
Siden har allerede flere anmeldelser af hjemmelavede. De er selvfølgelig funktionelle, men det har alle generelle træk- afhængighed af stikkontakten. Hvis dette ikke er et problem med en ejendom, hvor der allerede er leveret strøm, hvad så med en ejendom, hvor stikkontakten er langt væk, eller hvor det omkringliggende område er helt strømløst? Jeg besluttede at tage en anden vej - at samle en langtidsholdbar enhed, der er så enkel som muligt og uafhængig af lysnettet, som vil sove hele tiden, og når røvere bryder ind, vil den starte op og ringe til ejerens telefon, signalering med et simpelt alarmopkald.
Udvundet fra civilisationens ruiner:
1.
Stativ til brædder, skåret fra apparathuse - 6 stk.
2.
Fladt lithium batteri 1300mAh
3.
Hæfteklammer bruges til at fastgøre kablet til væggen
4.
Viskelæder for papirvarer
5.
Kobbertråd 1,5 mm tyk
6.
Instrumenthus fra det lokale radiomarked - 1.5$
7.
Par LED'er anden farve(taget fra VHS-afspiller)
8.
Antenne og knap med hætte (taget fra Wi-Fi-router)
9.
4-benet klemrække (taget fra lysdæmperen)
10.
Strømstik (taget fra en gammel oplader til 18650)
11.
6-benet stik (taget fra dvd-drev)
12.
Kan(fra kaffe for eksempel)
Valget faldt på denne atmega helt ved et uheld. På et forum, hvor energieffektive projekter blev diskuteret, var der i kommentarerne råd til at bruge den 168. atmega.
Jeg var dog nødt til at pille for at finde sådan et bræt, da alle partierne ofte var fyldt med 328 atmeg ved en frekvens på 16 MHz, opererende fra 5V. For mit projekt var sådanne egenskaber overflødige og ubelejlige fra begyndelsen, og søgningen blev mere kompliceret.
Som et resultat faldt jeg over en 3,3-volt version af Pro Mini på Atmega 168PA på eBay, og ikke bare en simpel kinesisk, men under RobotDyn-mærket fra en russisk udvikler. Ja, til at begynde med var jeg ligesom dig også i tvivl. Men forgæves. Da projektet allerede var samlet, og AliExpress introducerede obligatorisk betalt levering for billige varer (hvorefter pakker begyndte at gå tabt meget oftere), bestilte jeg senere en almindelig Pro Mini Atmega168 (uden PA) 3,3V 8MHz. Jeg eksperimenterede lidt med strømbesparende tilstande med begge boards, og blinkede en speciel skitse ind i hver, der satte mikrocontrolleren i maksimal strømsparetilstand, og dette er, hvad der kom ud:
1) Arduino Pro Mini "RobotDyn": ~250µA
2) Arduino Pro Mini "NoName": når strømforsyningen til spændingsstabilisatoren (RAW pin) og LED'en er loddet, er strømforbruget ~3,92mA
- som du forstår, er forskellen i energiforbrug næsten 16 gange, alt sammen fordi NoNames Pro Mini bruger en Atmega168+ kombination, som MK'en selv kun spiser af 20uA strøm (jeg tjekkede dette separat), alt det øvrige frådseri står for AMS1117 lineær spændingsomformer - dataarket bekræfter kun dette:
I tilfældet med boardet fra RobotDyn er kombinationen noget anderledes - det er Atmega168PA+ - her bruges en anden LDO stabilisator, hvis egenskaber med hensyn til energibesparelse viste sig at være mere behagelige:
Jeg afloddede det ikke, så jeg kan ikke sige, hvor meget strøm Atmega168PA forbruger i sin rene form. I dette tilfælde fik jeg nok ~250µA når den drives af et Nokia-lithium-batteri. Men hvis du aflodder AMS1117 fra NoName" bundkortet, så bruger den almindelige ATmega168 i sin rene form, som jeg sagde ovenfor, 20uA.
LED'er med strømforsyning kan slås af med noget skarpt. Det er ikke et problem. Stabilisatoren blev afloddet med en hårtørrer. Det er dog ikke alle, der har en hårtørrer og evnerne til at arbejde med den, så begge ovenstående muligheder har ret til at eksistere.
Det billigste GSM-modul, der kan findes på markedet, normalt brugt, loddet ikke altid af dygtige med kinesiske hænder fra udstyr. Hvorfor ikke altid fingernem? Ja, alt sammen på grund af aflodning med en hårtørrer - ofte modtager folk disse moduler med forkortet plus og minus, hvilket er en af årsagerne til deres ubrugelighed. Derfor er det første skridt at kontrollere strømkontakterne for en kortslutning.
Bemærk. Jeg vil gerne bemærke en særskilt vigtig pointe, efter min mening, at disse moduler kan komme med et rundt koaksialstik til antennen, som giver dig mulighed for separat at bestille en mere seriøs antenne og tilslutte den til modulet uden at danse med en tamburin. Eller de kan komme uden dette stik. Dette er, hvis vi taler om de billigste sæt. Hvis du ikke vil stole på en lykkelig ulykke, så er der lidt dyrere sæt, hvor dette stik er til stede + sættet inkluderer en ekstern antenne på et textolite-kort.
Hvis du klikker på "Connection" og derefter starter modulet ved at anvende BOOT gennem en 4,7K modstand til jord, så vil terminalen først vise inskriptionen "MODEM:STARTUP", derefter, efter et stykke tid, inskriptionen "+PBREADY", hvilket betyder, at telefonnummeret er blevet læst bog, selvom det kan være tomt:
Under denne spoiler er AT-kommandoer med eksempler
Vi udskriver AT-kommandoen - som svar sender modulet os vores kommando, da ekkotilstanden er aktiveret, og OK:
Lad os tjekke modemets status med kommandoen AT+CPAS - svaret er igen vores kommando, +CPAS: 0 og OK.
0 betyder, at modulet er klar til drift, men afhængigt af situationen kan der være andre numre, for eksempel 3 – indgående opkald, 4 – i forbindelsestilstand, 5 – dvaletilstand. Jeg kunne ikke finde nogen information om 1 og 2.
Ændring af dataoverførselshastigheden via UART sker med kommandoen AT+IPR=9600 - dette er hvis du har brug for en hastighed på 9600. Hvis noget andet, som f.eks. AT+IPR=19200, eller AT+IPR=115200.
Lad os tjekke netværkssignalet. AT+CSQ, svaret kommer +CSQ: 22.1 - værdien før decimaltegnet har et interval på 0... 31 (115... 52 dBl) - dette er signalniveauet, jo højere jo bedre. Men 99 betyder dets fravær. Værdien efter decimaltegnet er signalkvaliteten 0...7 - her er det omvendt, jo lavere tal, jo bedre.
Lad os deaktivere ekkotilstand ved at sende ATE0-kommandoen, så duplikerede kommandoer ikke forstyrrer. Denne tilstand aktiveres igen ved hjælp af ATE1-kommandoen.
Se firmwareversion AT+GETVERS
Senere måtte jeg lave endnu et hul, i mit tilfælde på bogstavet "I", hvor der står "Made In China", fra kanten af brættet.
Det viste sig, at den tilføjede kontakt, som i det væsentlige er GND, blev placeret ved siden af GND på Pro Mini-kortet, og dermed blev det muligt at forbinde jorden på GSM-modulet og Pro Mini med en dråbe lodning (den lange stift i midten og Pro Mini stiften til højre for den) - jeg markerede dem med pile. Den blev selvfølgelig lidt skæv, men nu holder den sikkert:
Der var lidt plads tilbage mellem pladerne - i det placerede jeg et lithium-udladnings-ladningskontrolkort med et forloddet microUSB-stik og loddede ledninger.
Tørklædet sidder meget tæt derind, og lyset fra LED'erne på siden vil være tydeligt synligt gennem et lille hul i kabinettet.
Kroppen af det 6-benede stik var en smule færdig med en fil, fordi dens kanter stak lidt ud over kroppen. Opladningsstikket passer perfekt mod væggen i etuiet.
På den anden side af kortet loddede jeg en knap for at genstarte enheden og to LED'er til fejlretning af firmwaren - den røde LED er forbundet til GSM-modulet, den anden grønne LED er forbundet til den 10. ben på Pro Mini - det er nemmere for mig at fejlfinde programmet.
Prøver på et batteri:
Du kan sikre kontaktblokken med et gummibånd eller vikle den med blåt elektrisk tape, hvilket jeg gjorde til sidst.
Når opladning er tilsluttet:
Boring af huller, selvom det er en simpel opgave ved første øjekast, er stadig ikke mindre arbejdskrævende, det er meget nemt at gå glip af, så jeg gjorde det først med et bor med en mindre diameter, derefter med en større.
Til taktknappen valgte jeg en kasket med en let konkav top, så den ville være nem at nå med en tændstik eller papirclips gennem det smalle hul i etuiet.
Kort i etui med tilsluttet USB-TTL-konverterkabel:
Om antennen.
Antennen, som du måske har bemærket gennem hele anmeldelsen, ændrede sig konstant, da jeg eksperimenterede med forskellige hjemmelavede antenner. I starten var der et rundt koaksialstik på modulkortet, men femte gang det blev brugt til en ekstern antenne, faldt det simpelthen fra hinanden, så husk på, at det er spinkelt. Det resulterede i, at jeg rev antennen ud på printkortet fra den gamle router og loddede den til modulkortet, fordi... den fanger nettet lidt bedre end fjeder og wire.
Nå, helt samlet med opladningen tilsluttet ser det sådan ud:
Funktionsprincippet er organiseret ved hjælp af en ekstern afbrydelse, i første omgang er pin 2 lukket til VCC og dermed bibeholdes logisk 1 ved pinden, og controlleren er i dvale. Så snart kontakten er brudt, og 0 vises på ben 2, vågner mikrocontrolleren, sænker den 3. pin (som modemets BOOT er tilsluttet gennem en modstand) til jord - modulet starter, MK'en poller med jævne mellemrum modulet for klarhed, og så snart den fanger netværket, sender den straks opkald til ejerens telefonnummer, der er angivet i koden. Efter at have afvist opkaldet, slukker enheden uden at sende flere endeløse opkald, hvilket er problemet med mange kinesiske alarmsystemer.
Yderligere Information
#omfatte
Kredsløbsdiagram (uden lade-afladningskontrolkort)
Om energibesparelse...
Den samlede enhed fungerede i fire hele måneder uden genopladning og fortsætter med at fungere, selvom det ville være mere korrekt at sige "søvn". Dette kan kontrolleres ved blot at genstarte via den hvide knap. Med et strømforbrug på 250 μA (gennem LE33-stabilisatoren) og et batteri på ~1430 mAh, selvom det er okay, lad os på grund af batteriets nyskabelse runde det op til 1000 mAh, viser det sig, at enheden kan sove i ca. 5,5 måned uden genopladning. Hvis du stadig fjerner stabilisatoren, kan driftstiden sikkert ganges med 10 gange. Men i mit tilfælde er der ikke behov for dette, for du skal stadig bruge saldoen fra SIM-kortet en gang hver tredje måned, samtidig kan enheden tjekkes og genoplades.
Eksemplet på energibesparelse givet i anmeldelsen er langt fra grænsen, fordi at dømme efter informationen fra databladet, kan du sænke mikrocontrollerens clock-frekvens (og dette gøres ved at installere sikringer) til 1 MHz, og hvis du anvender 1,8 V spænding, vil forbruget falde til under 1 μA-baren i aktiv tilstand . Meget fint! Men hvis MK er clocket fra den interne RC-oscillator, så vil et andet problem dukke op - UART-luften vil være tilstoppet med affald og fejl, især hvis controlleren opvarmes eller afkøles.
Ved afslutningen...
1)
En almindelig ledning installeret til at bryde er ikke særlig praktisk, jeg planlægger at eksperimentere med en Hall-sensor og en reed-kontakt, selvom de siger om sidstnævnte, at den ikke er særlig pålidelig, fordi kontakterne inde i den kan holde sig fast.
2)
Det ville være rart at tilføje muligheden for at ændre "ejernummeret" uden deltagelse af en computer og blinke det. Du bliver nødt til at arbejde med EEPROM.
3)
Prøv afbrydelser fra watchdog-timeren, men ikke kun for nysgerrighedens skyld, men så mikrocontrolleren med jævne mellemrum vågner af sig selv, måler batterispændingen og sender den resulterende værdi via SMS for at være opmærksom på, hvor lavt batteriet er.
4)
Et solpanel kan helt eliminere behovet for at genoplade enheden; dette vil især være tilfældet for batterier med lav kapacitet.
5)
Jeg har længe ønsket at købe LiFePo4-batterier, som ifølge anmeldelser godt kan tåle frost, men mens jeg ledte efter et passende parti, var foråret allerede stille og roligt ankommet.
6)
Arbejd med den æstetiske komponent
Hvilken Pro Mini skal du købe?
Hvis du ikke har en hårtørrer, så Pro Mini "RobotDyn" Atmega168PA 3.3V, tag LED'en af med noget skarpt, og du har ~250 µA.
Hvis du har en hårtørrer, så ethvert bord, lod stabilisatoren og LED'en til strømforsyning - du får ~20 µA strømforbrug.
Det var alt for nu, jeg håber, at anmeldelsen var interessant og nyttig.
Planlægger at købe +174 Tilføj til favoritter Jeg kunne godt lide anmeldelsen +143 +278Dens forfatter ønskede at lave et hjemmelavet projekt, så det ville være billigt og trådløst.
Dette hjemmelavede produkt bruger en PIR-bevægelsessensor, og information transmitteres ved hjælp af et RF-modul.
Forfatteren ønskede at bruge det infrarøde modul, men da det har en begrænset rækkevidde, plus kan det fungere kun sigtelinje med modtageren, så han valgte et RF-modul, hvormed han kan opnå en rækkevidde på cirka 100 meter.
Alt hvad forfatteren havde brug for var:
Derefter tjekkede jeg sensorens funktion
Senere, når bevægelsessensoren registrerer bevægelse foran dig, vil LED'en lyse, og du vil også kunne se en tilsvarende besked på skærmen.
Etape 2.
Modtagerkredsløb:
Sender software.
Før du uploader firmwarekoden til kortet, indstillede forfatteren følgende IDE-parametre:
- Board -> Arduino Nano (eller det board du bruger);
- Seriel port ->
Modtager software
Forfatteren gentager de samme trin for det modtagende bord:
- Board -> Arduino UNO (eller det board du bruger);
- Seriel port -> COM XX (tjek den com-port, som dit kort er tilsluttet).
Etape 4.
Dernæst, efter at have downloadet softwaren, besluttede forfatteren at kontrollere, om alt fungerede korrekt. Forfatteren tilsluttede strømforsyningerne og førte sin hånd foran sensoren, og buzzeren begyndte at virke, hvilket betyder, at alt fungerer, som det skal.
Først skar han et hul ud til kontakten, samt et rundt hul til bevægelsessensoren, og limede det derefter til kroppen.