Tillförlitlig, säker, anpassningsbar SMS fjärrstyrning (Arduino/pfodApp) - ingen kodning krävs (2 / 4 steg)
Steg 2: Mer detaljer
pfodDesigner
PfodDesigner kommer att generera all kod måste du slå fast form eller några andra relä på och av, men SMS anslutningen i pfodParser bibliotek stöder alla pfod skärmar så när du kommer igång kan du lägga till undermenyer, numeriska reglagen, flera text reglagen, text input skärmar, data loggning och rita allt via SMS. Kolla in pfodSpecification.pdf för alla skärmar och meddelanden som stöds.
Den genererade koden är här. Den har ingen fråga och bara en enda växel att hålla meddelandet kort. Långa menyer är skicka via flera SMS-meddelanden som tar längre tid att komma fram. Om du har en lång meny, hanterar sms anslutning koden i pfodParser biblioteket allt detta för dig.
Om du vill lägga till ett lösenord till din SMS anslutning ändra raden
parser.connect(&pfodSMS); ansluta parser till SMS ström
till något som
parser.connect (& pfodSMS, F("173057F7A706AF9BBE65D51122A14CEE")),
men Använd ditt eget lösenord av högst 32 hexadecimala tecken, 0..9 A.. F. lösenord kortare sedan 32 hex siffror är stoppad med 0 är. Se en enkel Wifi/Internet pfodDevice med 128-bitars säkerhet (Arduino) för att generera ett slumpmässigt lösenord och mata den till en QR-kod för lätt ingång till din Android. Se även pfodAppForAndroidGettingStarted.pdf
PfodDesigner kommer att också generera koden för bluetooth och wifi-anslutningar via seriell och Ethernet via SPI alla med valfria 128 bitars säkerhet
pfodApp
Den första sak att inse är att SMS är sloooow och inte kan komma dit alls eller anländer i rätt ordning. Så när du ansluter med pfodApp att det finnas viss fördröjning innan det finns ett SMS svar. Om meddelandet fick förlorat eller försenad, pfodApp kommer att automatiskt skicka det igen efter 3mins. Efter 5 sådana försök berättar pfodApp du anslutningen förloras. Du kan justera den 3mins tiden i den pfodApp anslutningen redigera skärmen.
Om du lägger till ett lösenord så finns en sex SMS-meddelanden (tre varje sätt) innan huvudmenyn tas emot av pfodApp. Dessa extra meddelanden endast ske vid den första anslutningen efter som det finns inga extra meddelanden när du använder ett lösenord. Så börja utan ett lösenord för att se att allt fungerar och sedan lägga till lösenord senare.
SMS/GPRS sköld
Eventuella problem är SIM-kort skyddas av pin-koder eller har behörighet inte för att ansluta till nätverket. Pfod biblioteket automatiskt befogenheter upp GPRS sköld och ser för "Ring redo" svar. Om svar inte kommer fram bibliotek befogenheter ner och försöker igen, så om du ser strömlampan på GPRS sköld gå för 20 SEK och sedan gå av, det är problem med att ansluta till nätverket. Ta ut SIM-kortet och prova det i en vanlig telefon. Kontrollera inte efterfrågas en pin-kod.
Om detta inte är problemet har du till vända på den nystartade felsökning, som beskrivs nedan, för att se vad som händer.
Driver Mega / GPRS sköld
Skölden ritar till 2A pulsade och upp till 0.5a kontinuerligt. Förutsatt att en 12V batteri leverans, överskrider den 0.5a kapaciteten på Mega ombord på strömförsörjningen. Så bör denna sköld inte drivas från 7V 12V ingång på Mega. Alternativet är att driva Mega och sköld via USB-anslutningen. Jag använde en 1A USB-leverans. För att testa använde jag ett Belkin drivs nav (F4U020) för att förhindra ritning överdriven ström från datorns USB-port.
En 12V batteri leverans, jag föreslår att du använder en kvalitet Automotive USB 5V laddare, 1A, eller högre. En kvalitet Automotive USB 5V leverans bör utformas för att hantera över spänningstoppar inträffar i bil elsystem och så bör vara lämplig för de flesta 12V avgiftssystem.
Solid State-relä
Eftersom detta exempel projekt kontrollerar en varmvattenberedare, (en resistiv last), en Solid State-relä är perfekt. Om du vill byta motorer eller inaktivera, starta generatorer etc, tala med din elektriker om ett lämpligt relä för jobbet. Om du behöver en hög effekt relä kan du en liten relä enhet av arduino styrelsen slå lastrelä på och av.
Det finns många versioner solid state-relä. Se till att du köper på som kan hantera laddspänning och laddström för din värmare och kan styras med 5V dc och några milliampere tillgängliga från utgångsstiftet Arduino. Den som används här, FOTEK SSR-40 DA, växlar upp till 380VAC på 40Amps och styrs av något mer sedan 3V dc och tar mindre än 7mA.
Måste du använda en kylfläns och du måste använda ett TUNT utstryk av kylfläns förening eller termiska fett på baksidan av solid state-relä innan bultning det till kylflänsen. Tanken är att helt täcka ytan med det tunnaste lagret av huvudet diskho förening att fylla i de mikroskopiska Dalarna i den metall yta. När påslagen droppar växeln halvledar-1.6V som genererar 16Watts för värme vid 10Amps. Kylflänsen är behovet av att bli av med denna värme så det måste monteras i fri luft inte inne i en plastlåda.
Förseningar är onda
GPRS-skölden levererar SMS-meddelanden via seriell anslutning när som helst och din huvudsakliga loop() måste syna
cmd = parser.parse();
ofta att bearbeta den seriella data innan 64 byte buffert i Arduino bibliotek koden fylls och data går förlorade.
Så du måste hålla din huvudsakliga loop() igång snabbt. Du bör aldrig använda delay() och bör kontrollera att ingen av de bibliotek som du använder har förseningar i dem. Använder standard 19200 baud-hastighet av SIM900 via seriell hårdvara, har jag inte funnit det nödvändigt att öka buffertstorleken i Arduino bibliotek koden. Jag använder inte seriella programvara, endast följetong och Serial1, hårdvara seriella anslutningar, och nästan alla meddelanden pfodApp skickar är mycket små, 10 eller 12 byte. Men du kan öka den Arduino buffertstorleken, om du önskar, genom att ändra definiera i HardwareSerial.h från
#define SERIAL_BUFFER_SIZE 64
till
#define SERIAL_BUFFER_SIZE 128
Men vad jag fann var att om jag aktiverat felsökning utgång, som beskrivs nedan, jag var tvungen att ha mycket snabb överföringshastigheten för terminalanslutning annars förseningen infördes genom skicka debug meddelanden till terminalen orsakade delar av SMS-meddelanden att missa.
Installation
Jag la en skruv terminal sköld så jag hade något att ansluta Solid State relay trådarna. Jag har inte haft min elektriker installera registeransvarige ännu. Det måste sättas i en isolerad låda, men med kylfläns som sticker ut genom en kortplats och wired till varmvatten strömkabeln.