Sadržaj:

Šalje SMS s uključenom temperaturom: 5 koraka (sa slikama)
Šalje SMS s uključenom temperaturom: 5 koraka (sa slikama)

Video: Šalje SMS s uključenom temperaturom: 5 koraka (sa slikama)

Video: Šalje SMS s uključenom temperaturom: 5 koraka (sa slikama)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Srpanj
Anonim
Šalje SMS s temperaturom na vrijeme
Šalje SMS s temperaturom na vrijeme

Ideja je dobiti temperaturni sms iz kuće mojih očeva.

Ništa prelijepo, samo brzo sastavljanje dijelova.

Dijelovi su:

  • Arduino kompatibilan s Geekcreit® ATmega328P Nano V3 upravljačkom pločom
  • DIY NANO IO Shield V1. O ploča za proširenje za Arduino
  • DS1307 bazirani RTC IIC / I2C modul sata u stvarnom vremenu i DS18b20
  • SIM800L Četveropojasni GSM / GPRS
  • LM2596 Mini DC-DC pretvarač podesivi modul napajanja za stepenice
  • Termistor NTC MF52AT temperatura

U početku puno o čitanju i traženju.

Prije nego napokon upotrijebim Geekcreit® Nano, sve dijelove testiram s Arduino Uno.

Korak 1: Uključite SIM800l

Uključite SIM800l
Uključite SIM800l

Jedna od glavnih točaka je snaga za Sim800L.

Koristim LM2596 Mini DC-DC pretvarač, podešen na 3,7 volti i zasebno napajanje.

Za testiranje veze s AT+ naredbama ova strana je vrlo upotrebljiva:

Brzi početak SIM800 (SIM800L) s Arduinom

Uz Disable pin code using gsm modem na naredbama dobio sam vožnju sim pin koda.

Sljedeće razmatranje koja knjižnica. Internet nudi različita rješenja.

Moje rješenje je knjižnica Mattiasa Aabmetsa: AspenSIM800

Njegov ispit: Send_SMS.ino koristio sam I kao osnovni program i jedan po jedan povezivao sve ostale dijelove zajedno.

Tx pin i Rx pin su kodovi za:

RX_PIN 10 iz Arduina. Mora biti spojen na TX pin modula SIM800. TX_PIN 11 iz Arduina. Mora biti spojen na RX pin SIM800 modula

Uvijek je dobro pročitati datoteke *.ccp i *.h u knjižnicama.

Sadrže mnogo zanimljivih savjeta i znanja.

Korak 2: Uključite RTC DS1307 sa senzorom DS18B20

Uključite RTC DS1307 sa senzorom DS18B20
Uključite RTC DS1307 sa senzorom DS18B20

Koristio sam ovu stranu: simtronyx - blog za DS1307 i DS18B20.

Sat ima vezu sa sabirnicom I2C, a to je za Arduino Uno: A4 (SDA) - A5 (SCL)

DS18B20 I spojen je na D3.

Pročitao sam da u SMS -u ne možete slati Floats samo String, pa sam morao prevesti plovke u niz.

To što radim s ovim isječkom koda pronašao sam:

n

MyString1 = String (currentTemp, 2); // Pretvori float u String

MyString1 = (MyString1 + "C - RoomTemperatur:)");

// ovdje pretvara niz u char

// Duljina (s jednim dodatnim znakom za null terminator)

int str_len1 = MyString1.length () + 1; // Priprema niza znakova (međuspremnik)

char char_array1 [str_len1]; // Kopirajte ga

MyString1.toCharArray (char_array1, str_len1); // pretvara niz u char

Bit ću iskren ne znam kako to funkcionira, ali radi.

Korak 3: Uključite termistor NTC MF52AT

Uključite termistor NTC MF52AT
Uključite termistor NTC MF52AT

Radio sam prije s termistorom pa je to bio lakši dio.

Ali i ovdje možete pronaći drugačije rješenje.

U konačnom kodu možete pronaći moje.

Također možete pronaći prijevod Floats to String.

Lemio je žicu i otpornik od 10 k ohma na termistor.

Korak 4: Potaknite sve da rade zajedno

Tako sam zajedno napisao sve dijelove programa.

Sad sam morao smisliti kako slati jedan SMS svaki dan, u isto vrijeme.

Čitao sam o različitim idejama, neke s TimerAlarm i drugim pristupom.

Ali našao sam jednostavno rješenje na arduino forumu:

if (now.hour () == 8 && now.minute () == 00 && now.second () == 59)

{

SIM.smsSend (addr, char_array); // termistor

kašnjenje (500); SIM.smsSend (addr, char_array1); // DS18B20}

Ali zašto sad.second = 59 jer šalje cijelu minutu SMS -a. Meni se čini, ali probajte sami.

Nakon nekog testa prenio sam program na Geekcreit® Nano.

Možda ovo nije najbolje pisanje programa:), ali radi željeno.

Budući da Geekcreit® ATmega328P Nano ima nekih problema s Arduino IDE -om, prenosim putem terminala (Linux Mint) i bacam USBtinyisp sa ovim: avrdude -c usbtiny -p atmega328p -U bljeskalica: w: SomeHexFile.hex

Korak 5: Uspjelo je

Da, uspjelo je i nalazi se u kući.

Svaki dan u 6:00 ujutro dobivam SMS s temperaturom.

Preporučeni: