Përmbajtje:
- Hapi 1: Programimi i ATTINY 85
- Hapi 2: Ngarkimi i Programit në ATTINY85
- Hapi 3: Drejtimi i programit tuaj
- Hapi 4: Përfundimi
Video: Sinjalizimet e Tempit të Tekstit SMS Nga një GSM ATTINY85 dhe A1: 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:20
Ky udhëzues ju tregon se si të kapni temperaturën nga një sensor i thjeshtë i temperaturës dhe ta dërgoni atë me SMS në telefonin tuaj celular. Për të thjeshtuar gjërat, unë dërgoj temperaturën në një interval të caktuar, por gjithashtu tregoj se si kjo mund të bëhet vetëm me përjashtime / paralajmërime. Pajisja është me kosto shumë të ulët, më pak se 10 dollarë, megjithëse ka kosto të përsëritura të sms që duhen marrë parasysh.
Ngarkesa e rëndë ndërmerret nga ATTINY 85 e thjeshtë por e fuqishme e cila kap të dhënat e temperaturës dhe më pas shkakton një SMS që të dërgohet përmes një moduli AI-Thinker A6 GSM.
Me pak fjalë, ju shkruani kodin ATTINY85 në mjedisin Arduino IDE dhe e digjni atë në ATTINY85 duke përdorur një serial USBASV/konvertues USB. Unë kam mbuluar ngritjen e modulit AI-Thinker A6 GSM dhe Arduino IDE në dy mësime të mëparshme. Ajo që është e ndryshme këtu është ndërlidhja e modulit ATTINY dhe A6 GSM duke përdorur komunikimet serike.
www.instructables.com/id/How-to-Send-an-SM…https://www.instructables.com/id/15-Dollar-Attiny8…
Pas programimit, ATTINY lexon të dhënat e temperaturës nga një sensor termometri - Dallas 18B20- dhe më pas i dërgon të dhënat dhe komandat me anë të lidhjes serike në modulin A6 GSM i cili më pas i dërgon ato si një tekst SMS në celularin / telefonin tuaj inteligjent.
Ja çfarë ju nevojitet:
1. Konvertuesi USB serik/USB.
2. ATTINIA 85.
3. Moduli i AI-Thinker A6 GSM 6 (me një sim që ka kredite SMS).
4. Furnizimi me energji 3.3v i bukës për ATTINY85.
5. 3.3.v Furnizimi me energji USB për modulin AI-Thinker A6 GSM.
6. Sensori i temperaturës Dallas 18B20..
7. Rezistencë 4.7k për sensorin 18B20.
8. Breadboard dhe kabllo.
9. Arduino IDE (Kam përdorur versionin 1.8.5. Për këtë).
10. Laptopi Windows X (kam përdorur versionin 10) me një port usb falas.
Hapi 1: Programimi i ATTINY 85
Këtu keni kodin Arduino IDE (Ju do të duhet të ndryshoni numrin e telefonit në të cilin dëshironi të dërgoni SMS.)
#përfshi #përfshi #përfshi
// *** // *** Përcaktoni kunjat RX dhe TX. Zgjidhni çdo dy kunja // *** që janë të papërdorura. Mundohuni të shmangni D0 (pin 5) // *** dhe D2 (pin 7) nëse planifikoni të përdorni I2C. // *** #define RX 3 // *** D3, Pin 2 #define TX 4 // *** D4, Pin 3
// *** // *** Përcaktoni portën serike të bazuar në softuer. Përdorimi i emrit // *** Serial në mënyrë që kodi të mund të përdoret në platforma të tjera // *** që mbështesin serialin e bazuar në harduer. Në çipat // *** që mbështesin serinë e harduerit, thjesht // *** komentoni këtë linjë. // ***
SoftwareSerial mySerial = SoftwareSerial (RX, TX);
// *** // *** Pinout ATtiny25/45/85: // *** PDIP/SOIC/TSSOP // *** ================== =================================================== ======================== // *** // *** (PCINT5/RESET/ADC0/dW) PB5 [1]*[8] VCC // *** (PCINT3/XTAL1/CLKI/OC1B/ADC3) PB3 [2] [7] PB2 (SCK/USCK/SCL/ADC1/T0/INT0/PCINT2) // *** (PCINT4/ XTAL2/CLKO/OC1B/ADC2) PB4 [3] [6] PB1 (MISO/DO/AIN1/OC0B/OC1A/PCINT1) // *** GND [4] [5] PB0 (MOSI/DI/SDA/AIN0 /OC0A/OC1A/AREF/PCINT0) // *** // Frekuenca ATTINY 85 e vendosur në 8 MHz të brendshme
// *** // *** Kunja në të cilën është lidhur tela OneWire // ***. // *** #përcakto ONE_WIRE_BUS 1
// *** // *** Vendosni një shembull oneWire për të komunikuar me çdo pajisje OneWire // *** (jo vetëm IC -të e temperaturës Maxim/Dallas). // *** OneWire _oneWire = OneWire (ONE_WIRE_BUS);
// *** // *** Kaloni referencën tonë në OneWire në Temperaturën e Dallasit. // *** DallasTemperature _sensors = DallasTemperature (& _ oneWire);
void setup () {// *** // *** Filloni portën Seriale // *** mySerial.begin (115200); vonesë (60000);
// *** Filloni bibliotekën. _sensors.begin (); }
lak void () {
// *** // *** Merrni temperaturën aktuale dhe shfaqeni atë. // *** _sensors.requestTemperatura (); vonesa (2000); temp e dyfishtëC = _sensors.getTempCByIndex (0); temp i dyfishtë = _sensors.getTempFByIndex (0); // kontrolloni për gabime - ndonjëherë në fillim, temperatura tregohet si 85C
nëse (tempC 14 && tempC 18 && tempC = 23 && error_temperature) {SMS_temp (tempC, "Shumë e ngrohtë");}}
SMS_temp i pavlefshëm (mytemp dyfishtë, String myalert) {mySerial.println ("AT+CMGF = 1"); // vendosur në vonesën e modalitetit SMS (1000); mySerial.println ("AT+CMGF = 1"); // vendosur në vonesën e modalitetit SMS (1000); //mySerial.println("AT+CMGS=\"+ NUMRI YT / ""); // vendosni numrin e telefonit (të mbështjellë me thonjëza të dyfishta) vonesë (1000); mySerial.print (mytemp, 1); mySerial.print (myalert); vonesa (1000); mySerial.write (0x1A); // dërgon ctrl+z fundin e vonesës së mesazhit (1000); mySerial.write (0x0D); // Kthimi i Transportit në Vonesë Hex (1000); mySerial.write (0x0A); vonesë (1000000); // 17 minuta - përshtateni për t'iu përshtatur aplikacionit tuaj}
Hapni mjedisin Arduino IDE - Unë kam përshkruar se si t’ju gjej në këtë mënyrë në detaje në udhëzimet e mia të mëparshme, për të cilat kam aluduar më herët.
Ju do të keni nevojë për bibliotekat e mëposhtme
SoftwareSerial.h
OneWire.h
DallasTemperature.h
Tjetra, konfiguroni kunjat RX dhe TX në ATTINY85 të cilat ju nevojiten për t'u lidhur me Mendimtarin A1. ATTINY 85 ka 8 kunja, katër në secilën anë dhe është rreshtuar duke përdorur pikën në sipërfaqe si një referencë. Pin 1 ose RESET pin është pranë kësaj pike.
(në këtë rast unë zgjodha Pin2 dhe 3 - Këto janë në të njëjtën anë me kunjin RESET i cili është pranë pikës në sipërfaqen e ATTINY 85. Pin 2 është kunja tjetër së bashku me kunjin RESET ndërsa Pin 3 është midis Pin 2 dhe GROUND)
Tjetra, duhet të konfiguroni sensorin e temperaturës -
#përcakto ONE_WIRE_BUS 1
OneWire _oneWire = OneWire (ONE_WIRE_BUS);
DallasTemperature _sensors = DallasTemperature (& _ oneWire);
Pastaj vendosni portën serike të softuerit
mySerial.begin (115200);
vonesë (60000);
dhe pastaj telefononi sensorët me _sensors.begin ();
Tjetra, ekziston lak, i cili sondazhon në një kohë të paracaktuar, regjistron temperaturën dhe dërgon një mesazh / alarm në varësi të vlerës. Ai përdor një funksion SMS_temp i cili gjithashtu është vendi ku vendosni kohën e lakut
void loop () {sensorë.kërkoTemperaturat (); vonesa (2000);
temp e dyfishtëC = _sensors.getTempCByIndex (0);
temp i dyfishtë = _sensors.getTempFByIndex (0);
nëse (tempC <= 14) {SMS_temp (tempC, "FOTO RREZIKSHME");}
if (tempC> 14 && tempC <= 18) {SMS_temp (tempC, "Ftohtë Ftohtë");}
if (tempC> 18 && tempC <23) {SMS_temp (tempC, "Temp Just right");}
nëse (tempC> = 23 && error_temperature) {SMS_temp (tempC, "Shumë e ngrohtë");}
}
==============
Tjetra, vendosni Arduino IDE për t'u përgatitur për ngarkim në ATTINY85.
Një numër gjërash që duhen vënë re
1- Nëse nuk keni bordet e familjes ATTINY, shtoni url-në e mëposhtme https://raw.githubusercontent.com/damellis/attiny/… në File/Preferences/Additional Boards Manager URL, Tjetra, brenda Arduio IDE klikoni në Tools/Board/Board Manager dhe kërkoni ATTINY dhe instaloni bordin e ri. Ndryshoni procesorin në Attiny85.
Hapi 2: Ngarkimi i Programit në ATTINY85
Gjithashtu, referojuni udhëzimit tim të mëparshëm për këtë-https://www.instructables.com/id/15-Dollar-Attiny8…
ATTINY85 ka dy mënyra, përkatësisht mënyrën e programimit dhe funksionimit. M MONYRA E PROGRAMIMIT Së pari, identifikoni kunjat në ATTINY85. Për ta bërë këtë, gjeni shkallën e vogël në sipërfaqen e çipit e cila është pranë kunjit RST/RESET. Duke përdorur këtë si një pikë referimi, ju mund të identifikoni pjesën tjetër të kunjave. I gjithë ky informacion jepet në fletën e të dhënave A85 -https://ww1.microchip.com/downloads/en/DeviceDoc/At…
USBasp dhe ATTINY85 duhet të lidhen siç tregohet në imazhin e mësipërm.
Tjetra, në Arduino IDE, vendosni programuesin në USBasp dhe frekuencën në 8Mhz të brendshme.
Lidhni USBasp me një port USB në laptopin tuaj (Në Windows 10, nëse nuk keni drejtuesin USBasp përdorni Zadig sipas uebfaqes
Tjetra, me USBasp të lidhur, zgjidhni nga Arduino IDE Sketch/upload dhe shpresojmë se do të shihni përparimin e ngarkimit të treguar me shkronja të kuqe të Arduino IDE dhe duke përfunduar me avrdude done. Faleminderit.
Çdo gabim në këtë fazë shoqërohet zakonisht me kabllo të lirshëm ose drejtues të gabuar.
Hapi 3: Drejtimi i programit tuaj
Së pari, diçka në lidhje me sensorin e termometrit Dallas 18b20. Ka 3 kunja, Ground (G), të dhëna (D) dhe VCC siç tregohet në imazhin e mësipërm. Për funksionim, ajo kërkon tejkalimin e D dhe VCC me një rezistencë 4.7k. G dhe VCC janë të lidhura me polet përkatëse ndërsa D është i lidhur me një ATTINY 85, pin - [6] PB1, siç është konfiguruar në kod.
Tjetra, lidhni ATTINY me A6 GSM si më poshtë (dhe treguar më lart)
ATTINY TX A6 UART_RXdATTINY RX A6 UART_TXd
ATTINY GND A6 GND
dhe në vetë A6, A6 PWR A6 VCC 5.0A6 RST A6 GND (Mos u lidhni ende me tokën !!!!!)
Tani ndizni të dyja pajisjet dhe pas disa sekondash, prekni përkohësisht pinin e tokëzimit A6 me kabllon të lidhur me kunjin A6 RST. A6 do të fiket dhe ndizet dhe me shpresë, së shpejti do të merrni të dhëna të temperaturës në telefonin tuaj.
Hapi 4: Përfundimi
Ky udhëzues mund të duket mjaft i thjeshtë, por ideja është të ilustroni atë që mund të arrihet me përbërës me kosto të ulët. Natyrisht, nëse keni qasje në wi-fi ose një shpërndarës BLE, atëherë ka zgjidhje më të përshtatshme.
Unë nuk mbulova funksione të tjera të tilla si dërgimi i një SMS në telefon për të filluar regjistrimin / transmetimin e temperaturës etj.
Recommended:
Pajisja e Sigurisë së Grave Me Gjurmimin GPS dhe Sinjalizimet Duke Përdorur Arduino: 6 Hapa
Pajisja e Sigurisë së Grave me Gjurmimin GPS dhe Sinjalizimet duke Përdorur Arduino: Me gjithë teknologjinë që kemi në dispozicion kohët e fundit, nuk është e vështirë të ndërtosh një pajisje sigurie për gratë e cila jo vetëm që do të gjenerojë një alarm urgjence, por gjithashtu do të dërgojë një mesazh te miqtë, familja juaj. , ose personi i interesuar. Këtu do të ndërtojmë një grup
Krijimi-Sinjalizimi-Përdorimi-Ubidots-ESP32+Sensori i Tempit dhe Lagështisë: 9 Hapa
Krijimi-Paralajmërimi-Përdorimi-Ubidots-ESP32+Sensori i Temp dhe Lagështisë: Në këtë tutorial, ne do të masim të dhëna të ndryshme të temperaturës dhe lagështisë duke përdorur sensorin Temp dhe lagështi. Ju gjithashtu do të mësoni se si t'i dërgoni këto të dhëna në Ubidots. Kështu që ju mund ta analizoni nga kudo për aplikime të ndryshme. Gjithashtu duke krijuar emai
Sinjalizimet me email të dridhjeve dhe temperaturës duke përdorur Nyjen-KUQ: 33 hapa
Sinjalizimet me email të dridhjeve dhe temperaturës duke përdorur Node-RED: Prezantimi i sensorit të dridhjeve dhe temperaturës së wireless të Rrjetit të Largët IoT të NCD, i cili mburret deri në një distancë prej 2 kilometrash duke përdorur strukturën e rrjetit me rrjetë pa tel. Përfshirë një sensor dridhjeje dhe temperature të saktë 16-bit, kjo pajisje kalon
Llamba e valës - Moti dhe sinjalizimet: 7 hapa (me fotografi)
Llamba e Valeve - Moti dhe Paralajmërimet: Ndërsa shfletoja nëpër thingiverse, pashë këtë Llambë Vala absolutisht të mahnitshme dhe Kisha për ta ndërtuar atë. https://www.thingiverse.com/thing:774456 Llamba është e dizajnuar shumë mirë dhe printon pa asnjë mbështetëse (duhet të printohet anash) Gjithashtu, ka
Ndërtoni një kompjuter me teatër në shtëpi nga një laptop i prishur dhe një Tivo: 10 hapa
Ndërtoni një kompjuter me teatër në shtëpi nga një laptop i prishur dhe një Tivo: Në këtë udhëzues, unë do t'ju tregoj se si të bëni një kompjuter me teatër në shtëpi nga një laptop (disi) i prishur dhe një shasi kryesisht bosh Tivo. Kjo është një mënyrë e shkëlqyeshme për të shënuar një kompjuter teatri në shtëpi (ose zgjerues) që duket i mrekullueshëm dhe funksionon më mirë se një