INHOUDSOPGAWE:
- Stap 1: Kry die SIM800l aan die werk
- Stap 2: Laat die RTC DS1307 met DS18B20 -sensor werk
- Stap 3: Kry die Thermistor NTC MF52AT aan die werk
- Stap 4: Laat almal saamwerk
- Stap 5: Dit het gewerk
Video: Stuur 'n sms met tyd: 5 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Die idee is om 'n temperatuur sms van my vaders huis te kry.
Daar is niks anders as om die onderdele vinnig saam te voeg nie.
Die onderdele is:
- Geekcreit® ATmega328P Nano V3 Controller Board Compatible Arduino
- DIY NANO IO Shield V1. O Uitbreidingskaart vir Arduino
- DS1307 Gebaseerde RTC IIC / I2C Real Time Clock Module en DS18b20
- SIM800L Quad-band GSM / GPRS
- LM2596 Mini DC-DC-omskakelaar verstelbare kragonderbrekingsmodule
- Thermistor NTC MF52AT temperatuur
Eerstens baie om af te lees en te soek.
Voordat ek uiteindelik die Geekcreit® Nano gebruik, toets ek alle dele met 'n Arduino Uno.
Stap 1: Kry die SIM800l aan die werk
Een hoofpunt is die krag van die Sim800L.
Ek gebruik 'n LM2596 Mini DC-DC-omskakelaar, aangepas op 3,7 volt en 'n aparte kragtoevoer.
Om die verbinding met AT+ -opdragte te toets, is hierdie kant baie bruikbaar:
Quickstart SIM800 (SIM800L) met Arduino
Met die deaktivering van pin -kode met behulp van gsm -modem by opdragte, het ek die sim -pin -kode gekry.
Die volgende oorweging watter biblioteek. Die internet bied verskillende oplossings.
My oplossing is die biblioteek van Mattias Aabmets: AspenSIM800
Sy voorbeeld: Send_SMS.ino gebruik I as basiese program en verbind een vir een al die ander dele met mekaar.
Die Tx -pen en Rx -pen is kode na:
RX_PIN 10 van Arduino. Moet gekoppel wees aan die TX -pen van die SIM800 -module. TX_PIN 11 van Arduino. Moet gekoppel wees aan die RX -pen van die SIM800 -module
Dit is altyd 'n goeie idee om die *.ccp- en *.h -lêers in die biblioteke te lees.
Dit bevat baie interessante wenke en kennis.
Stap 2: Laat die RTC DS1307 met DS18B20 -sensor werk
Ek het hierdie sykant gebruik: simtronyx - die blog vir die DS1307 en DS18B20.
Die klok het 'n I2C -busverbinding en dit is vir die Arduino Uno: A4 (SDA) - A5 (SCL)
Die DS18B20 het ek aan D3 gekoppel.
Ek lees dat u nie net Floats String in 'n SMS kan stuur nie, dus moes ek floats na string vertaal.
Dit het ek met hierdie kodefragment gedoen:
n
MyString1 = String (currentTemp, 2); // Skakel float om na string
MyString1 = (MyString1 + "C - Kamertemperatuur:)");
// omskakel string na char begin hier
// Lengte (met een ekstra karakter vir die nul terminator)
int str_len1 = MyString1.length () + 1; // Berei die karakterreeks (die buffer) voor
char char_array1 [str_len1]; // Kopieer dit oor
MyString1.toCharArray (char_array1, str_len1); // verander string in char eindig haar
Ek sal eerlik wees, ek weet nie hoe dit werk nie, maar dit werk.
Stap 3: Kry die Thermistor NTC MF52AT aan die werk
Ek het voor met 'n termistor gewerk, so dit was die maklike deel.
Maar ook hier kan u verskillende oplossings vind.
In die finale kode kan u myne vind.
U kan ook die vertaling Floats to String vind.
'N Paar draad en die 10 k ohm weerstand aan die termistor gesoldeer.
Stap 4: Laat almal saamwerk
Ek het dus alle programdele saam geskryf.
Nou moes ek agterkom hoe om elke dag op dieselfde tyd een SMS te stuur.
Ek lees oor verskillende idees, sommige met 'n TimerAlarm en ander benadering.
Maar ek het 'n eenvoudige oplossing op die arduino -forum gevind:
as (nou.uur () == 8 && nou.minute () == 00 && nou.sekonde () == 59)
{
SIM.smsSend (addr, char_array); // termistor
vertraging (500); SIM.smsSend (addr, char_array1); // DS18B20}
Maar hoekom nou.sekonde = 59 omdat dit 'n hele minuut SMS stuur. Dit doen vir my, maar probeer self.
Na 'n toets het ek die program na die Geekcreit® Nano gelaai.
Dit is miskien nie die beste programskrywing nie:), maar dit doen die gewenste.
Omdat die Geekcreit® ATmega328P Nano 'n paar Arduino IDE -probleme het, laai ek per terminal op (Linux Mint) die USBtinyisp hiermee: avrdude -c usbtiny -p atmega328p -U flits: w: SomeHexFile.hex
Stap 5: Dit het gewerk
Ja, dit het uitgewerk en dit word in die huis geplaas.
Elke dag om 06:00 kry ek 'n SMS met die temperatuur.
Aanbeveel:
Stuur 'n SMS met behulp van 'n ESP8266: 5 stappe
Stuur 'n SMS met 'n ESP8266: Hierdie instruksies neem u deur die stappe om 'n SMS -boodskap via die internet vanaf 'n ESP8266 NodeMCU -modulebord na 'n selfoon te stuur. Om die boodskap te kan stuur, moet u die stappe volg om 'n virtuele telefoonnommer van
Stuur SMS met Arduino -- TC35 GSM -module: 5 stappe
Stuur SMS met Arduino || TC35 GSM -module: In hierdie klein projek sal ek jou wys hoe om 'n TC35 GSM -module behoorlik te gebruik en hoe om dit met 'n Arduino Uno te gebruik om 'n SMS daarmee te stuur
Hoe om SIM800L te gebruik om SMS'e te stuur en relais per SMS te stuur: 3 stappe
Hoe om SIM800L te gebruik om SMS'e te stuur en 'n relais per SMS te stuur: Beskrywing: Hierdie handleiding wys hoe u SIM800L kan gebruik om sms'e te stuur en sms'e te stuur om die relais te beheer. Die SIM800L -module is klein en kan gebruik word om met Arduino in verbinding te tree om sms'e te stuur, sms'e te ontvang, te bel, te bel en nog meer. In hierdie tutoriaal
Dag van die week, kalender, tyd, humiditeit/temperatuur met batterysparing: 10 stappe (met foto's)
Dag van die week, kalender, tyd, humiditeit/temperatuur met batterybesparing: die kragbesparingsmodus onderskei hierdie instruksie van ander voorbeelde van die dag van die week, maand, dag van die maand, tyd, humiditeit en temperatuur. Dit is hierdie vermoë wat hierdie projek van 'n battery laat loop sonder
Stuur e -pos outomaties met foto uit 'n bondel lêer met behulp van ou lessenaar en XP: 4 stappe
Stuur e -pos outomaties met foto uit 'n bondel -lêer met behulp van ou lessenaar en XP: ek is baie gelukkig om 'n wonderlike uitsig te hê vanuit my venster op my kantoor. As ek weg is, wil ek sien wat ek mis en is ek gereeld weg. Ek het vroeër my eie webwerf en 'n tuisweerstasie gehad wat al die weer via ftp sou oplaai