Innholdsfortegnelse:
- Trinn 1: Få SIM800l til å fungere
- Trinn 2: Få RTC DS1307 med DS18B20 -sensor til å fungere
- Trinn 3: Få Thermistor NTC MF52AT til å fungere
- Trinn 4: Få alle til å jobbe sammen
- Trinn 5: Det fungerte
Video: Sender en SMS med temperatur i tide: 5 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Tanken er å få en temperatur -sms fra fedrehuset mitt.
Ikke noe fancy bare å sette sammen deler raskt.
Delene er:
- Geekcreit® ATmega328P Nano V3 Controller Board Compatible Arduino
- DIY NANO IO Shield V1. O utvidelseskort for Arduino
- DS1307 Basert RTC IIC / I2C sanntidsklokke modul og DS18b20
- SIM800L Quad-band GSM / GPRS
- LM2596 Mini DC-DC-omformer Justerbar trinnvis strømforsyningsmodul
- Termistor NTC MF52AT temperatur
Først og fremst mye av å lese og søke.
Før jeg endelig bruker Geekcreit® Nano, tester jeg alle delene med en Arduino Uno.
Trinn 1: Få SIM800l til å fungere
Et hovedpoeng er kraften til Sim800L.
Jeg bruker en LM2596 Mini DC-DC-omformer, justert til 3,7 volt og en separat strømforsyning.
For å teste tilkobling med AT+ -kommandoer er denne siden veldig brukbar:
Hurtigstart SIM800 (SIM800L) med Arduino
Med Deaktiver pin -kode ved bruk av gsm -modem på kommandoer fikk jeg kjøre med sim -pin -koden.
Den neste vurderingen hvilket bibliotek. Internett tilbyr forskjellige løsninger.
Min løsning er biblioteket fra Mattias Aabmets: AspenSIM800
Eksemplet hans: Send_SMS.ino brukte I som grunnprogram og en etter en kobler alle de andre delene sammen.
Tx -pinnen og Rx -pinnen er kode til:
RX_PIN 10 av Arduino. Må være koblet til TX -pinnen til SIM800 -modulen. TX_PIN 11 av Arduino. Må være koblet til RX -pinnen på SIM800 -modulen
Det er alltid en god idé å lese *.ccp og *.h filene i bibliotekene.
De inneholder mange interessante hint og kunnskap.
Trinn 2: Få RTC DS1307 med DS18B20 -sensor til å fungere
Jeg brukte denne siden: simtronyx - bloggen for DS1307 og DS18B20.
Klokken har en I2C -bussforbindelse, og den er for Arduino Uno: A4 (SDA) - A5 (SCL)
DS18B20 koblet jeg til D3.
Jeg leste at i en SMS kan du ikke sende Floats only String, så jeg måtte oversette floats til string.
Det jeg gjør med denne kodebiten fant jeg:
n
MyString1 = String (currentTemp, 2); // Konverter float til streng
MyString1 = (MyString1 + "C - Romtemperatur:)");
// konverter streng til char starter her
// Lengde (med ett ekstra tegn for null -terminatoren)
int str_len1 = MyString1.length () + 1; // Forbered tegnmatrisen (bufferen)
char char_array1 [str_len1]; // Kopier den over
MyString1.toCharArray (char_array1, str_len1); // konvertere streng til char ender henne
Jeg skal være ærlig, jeg vet ikke hvordan det fungerer, men det fungerer.
Trinn 3: Få Thermistor NTC MF52AT til å fungere
Jeg jobbet før med en termistor, så det var den enkle delen.
Men også her kan du finne en annen løsning.
I den endelige koden kan du finne min.
Her kan du også finne oversettelsen Floats to String.
Loddet litt ledning og 10 k ohm motstanden til termistoren.
Trinn 4: Få alle til å jobbe sammen
Så jeg skrev alle programdelene sammen.
Nå måtte jeg finne ut hvordan sende en SMS hver dag, samtidig.
Jeg leste om forskjellige ideer, noen med TimerAlarm og annen tilnærming.
Men jeg fant en enkel løsning et sted i arduino -forumet:
hvis (nå. time () == 8 && nå. minutt () == 00 && nå. sekund () == 59)
{
SIM.smsSend (addr, char_array); // termistor
forsinkelse (500); SIM.smsSend (addr, char_array1); // DS18B20}
Men hvorfor nå. Sekund = 59 fordi den sender en hel minutt SMS. Det gjør det for meg, men prøv selv.
Etter noen tester lastet jeg opp programmet til Geekcreit® Nano.
Dette er kanskje ikke den beste programskriving:) men det gjør det ønsket.
Fordi Geekcreit® ATmega328P Nano har noen Arduino IDE -problemer, laster jeg opp via terminal (Linux Mint) kaster USBtinyisp med dette: avrdude -c usbtiny -p atmega328p -U flash: w: SomeHexFile.hex
Trinn 5: Det fungerte
Ja det ordnet seg og det er plassert i huset.
Hver dag kl. 06.00 får jeg en SMS med temperaturen.
Anbefalt:
Sender SMS med Arduino -- TC35 GSM -modul: 5 trinn
Sender SMS med Arduino || TC35 GSM -modul: I dette lille prosjektet vil jeg vise deg hvordan du bruker en TC35 GSM -modul riktig og hvordan du bruker den med en Arduino Uno for å sende en SMS med den
Nodemcu sender temperatur- og fuktighetsdata til Thingspeak: 7 trinn
Nodemcu sender temperatur- og fuktighetsdata til Thingspeak: Her i denne opplæringen har vi koblet til nodemcu med dht11 -sensor og sender temperatur- og fuktighetsdata til thingspeak -serveren. Her har vi også plottet grafen over temperatur og fuktighet til thingspeak server
Sender IoT trådløs temperatur- og fuktighetssensordata til trådløst område til Google Sheet: 39 trinn
Sender IoT Long Range trådløs temperatur- og fuktighetssensordata til Google Sheet: Vi bruker NCDs temperatur- og fuktighetssensor her, men trinnene forblir like for ethvert av ncd -produktene, så hvis du har andre trådløse ncd -sensorer, er det gratis å observere ved siden av i tillegg. Ved å stoppe denne teksten, må du
Arduino sender temperatur- og fuktighetsdata til MySQL Server (PHPMYADMIN): 5 trinn
Arduino sender temperatur- og fuktighetsdata til MySQL Server (PHPMYADMIN): I dette prosjektet har jeg koblet DHT11 til arduino, og deretter sender jeg data fra dht11 som er fuktighet og temperatur til phpmyadmin -databasen. Her bruker vi ett PHP -skript for å skyve data til phpmyadmin -databasen
Tiny Moon Tide Clock: 5 trinn (med bilder)
Tiny Moon Tide Clock: Dette er et prosjekt som gjøres med Alaska SeaLife Center. De var interessert i et sjørelatert prosjekt som skulle involvere elevene i elektronisk konstruksjon og overvåking av havmiljøet. Designet er relativt billig å bygge