Popis knihovny ArduinotechGSMShield
Tato knihovna je určená pro tento shield:
http://www.arduinotech.cz/produkt/gsm-shield-arduinotech/, podrobnosti naleznete v článku:
http://www.arduinotech.cz/inpage/jak-jednoduse-na-gsm-v-dil-arduinotech-gsm-shield/
Třída AGS
Název třídy: AGS (zkratka ArduinotechGSMShield)
Vstupní parametry: debug mód -> 1=zapnutý, 0=vypnutý, debug mód vypisuje podrobnosti na sériový kanál u něterých funkcí.
Výstupní parametry: žádné
Příklad:
vytvoření instance třídy ve sketchi:
AGS modul(1); //debug mód povolen
AGS modul(0); //debug mód zakázán
begin();
Popis: inicializuje shield, definuje softwareSerial na portech RX=2, TX=3, rychlost 9600 b/s, inicializuje sériový kanál Arduina na rychlosti 9600b/s, spouští konfigurační proces SIM800Init()
Vstupní parametry: žádné
Výstupní parametry: žádné
Příklad:
modul.begin();
SIM800Init();
Popis: Konfigurační procedura pro SIM800 modul, lze použít samostatně např. pro inicializaci v případě zjištění nekorektního chování v určitých pasážích kódu. Tato procedura je zahrnuta do funkce begin();
Vstupní parametry: žádné
Výstupní parametry: žádné
Příklad:
modul.SIM800Init();
checkCallAndSMS();
Popis: Provádí otestování, zda je přítomen příchozí hovor nebo nová SMSka. Doporučuji vložit do hlavní smyčky
Vstupní parametry: žádné
Výstupní parametry: 0 = žádný hovor nebo nová SMS, 1 = nový hovor, 2 = nová SMS
Příklad:
loop()
{
infoStatus = modul.checkCallAndSMS();
if (infoStatus == 1)
{
//akce při detekci volání
}
if (infoStatus == 2)
{
//akce při detekci SMS
}
}
callEnd();
Popis: Vyšle příkaz do SIM800 pro ukončení stávajícího hovoru – zavěšení
Vstupní parametry: žádné
Výstupní parametry: žádné
Příklad:
modul.callEnd();
makeCall(String callNumber);
Popis: Provede vytočení čísla – sestaví hlasový hovor
Vstupní parametry: String telefonní číslo v národním nebo mezinárodním tvaru bez +
Výstupní parametry: žádné
Příklad:
modul.makeCall(“739822476“);
getNumber();
Popis: Vrátí řetězec s telefonním číslem voljícího nebo účastníka, který poslal SMS. Obvykle je tento dotaz realizován bezprostředně po vyhodnocení stavu checkCallAndSMS() funkce.
Vstupní parametry: žádné
Výstupní parametry: String telefonní číslo
Příklad:
infoStatus = modul.checkCallAndSMS();
if (infoStatus == 1) Serial.println(“Volajici ucastnik:” + modul.getNumber());
if (infoStatus == 2) Serial.println(“SMS od:” + modul.getNumber());
getSMSContent();
Popis: Zjištění obsahu přijaté SMS
Vstupní parametry: žádné
Výstupní parametry: String obsah SMS
Příklad:
if (infoStatus == 2)
{
Serial.println(“SMS od:” + modul.getNumber());
Serial.println(“Obsah SMS:” + modul.getSMSContent());
}
sendSMS(String number,String sms);
Popis: funkce pro odeslání SMS na dané číslo s daným obsahem
Vstupní parametry: String číslo příjemce a String obsah SMS
Výstupní parametry: žádné
Příklad:
modul.sendSMS(“73982246”,”Ahoj!”);
getProviderName();
Popis: Vrací řetězec se jménem operátora GSM, které je prezentováno v rámci GSM sítě
Vstupní parametry: žádné
Výstupní parametry: String jméno operátora
Příklad:
Serial.println(“GSM operator:” + getProviderName());
getQuality();
Popis: Vrací řetězec s kvalitou GSM signálu dle momentálního měření. Kvalita signálu je parametr vypočtený ze síly, latence a jiných parametrů, není to jen síla signálu! Tento parametr se pohybuje od 1 do 30, 0 = není signál, 31 = přebuzení signál
Vstupní parametry: žádné
Výstupní parametry: String kvalita signálu
Příklad:
Serial.println(“GSM signal quality:” + getQuality());
timeStamp();
Popis: Vrací řetězec s časovou značkou obdrženou ze sítě GSM, tedy s poměrně přesným časem
Vstupní parametry: žádné
Výstupní parametry: String časová značka
Příklad:
Serial.println(“GSM time:” + timeStamp());
GPRSInit(String APN)
Popis: Inicializuje GPRS dle zadaného APN
Vstupní parametry: String APN
Výstupní parametry: bool, 1 = úspěšný attach GPRS
Příklad:
modul.GPRSInit("internet.t-mobile.cz");
sendDataGPRS(String dataToSend)
Popis: odešle data pomocí GPRS metodou HTTP GET
Vstupní parametry: String data k odeslání - nejčastějí link na HTTP
Výstupní parametry: String s vrácenými daty po HTTP GET, pokud se komunikace nezdařila, bude návratová hodnota COMMUNICATION FAILURE
Příklad:
modul.sendDataGPRS("api.thingspeak.com/update?api_key=54DLXE3I1PETR61C&field1=25");