Arduino im T3

Aus T3-Pedia
Wechseln zu: Navigation, Suche

noch in Arbeit - Projektstatus

Hier werden aktuell Inforamtion/Basiswissen gesammelt um einen Arduino im T3 zu nutzen.

Wozu das Ganze?

  • Standheizung mit dem Handy starten
  • Türen und Innenraum Überwachung (Alarmanlage)
  • GPS Tracking vom Fahrzeug
  • und viele weitere Ideen

Ziel des Ganzen

Eine einfache und simple Anleitung zu schaffen, um auch Busfahrern die mit dem "PC-Zeugs" nix am Hut haben die Möglichkeit zu geben einen Arduino im T3 nutzen zu können.

Hardware

folgt

Code

#include <SoftwareSerial.h>
char inchar;
SoftwareSerial SIM900(7, 8);
int SIM = 5;
int led = 10;
int led1 =2;
int led2 =3;
int led3 =4;
char a=0;
char b=0;
char c=0;
char d=0;
int e=0;
int f=0;
int g=0;
int h=0;
int i=0;
int k=0;
int l=0;
int m=0;
int n=0;
char x=0;
char y=0;
int Minuten=0;
int Zeit=0;
void setup()
{
 Serial.begin(19200);
 // set up the digital pins to control
 pinMode(led, OUTPUT);
 digitalWrite(led, LOW);
 digitalWrite(led1, LOW);
 digitalWrite(led2, LOW);
 digitalWrite(led3, LOW);
 SIM900.begin(19200);
 delay(20000);
 SIM900.print("AT+CMGF=1\r");
 delay(100);
 SIM900.print("AT+CNMI=2,2,0,0,0\r");
 delay(100);
 Serial.println("Ready...");
}
void loop()
{
 if(SIM900.available() >0)
 {
   inchar=SIM900.read();
   Serial.print(inchar);
   if (inchar=='#')
   {
     delay(10);
     inchar=SIM900.read();
     a=inchar;
     delay(10);
     inchar=SIM900.read();
     b=inchar;
     delay(10);
     inchar=SIM900.read();
     c=inchar;
     delay(10);
     inchar=SIM900.read();
     d=inchar;
     delay(10);
     e=(int)a;
     f=(int)b;
     g=(int)c;
     h=(int)d;
     zeit();     
   }
 }
}
void zeit()
{
 k=e-48;
 l=f-48;
 m=g-48;
 n=h-48;
 Minuten=(k*10)+l;
 Zeit=(m*10)+n;
 x=(char)Minuten;
 y=(char)Zeit;
 Serial.println("MINTUEN");
 Serial.println(Minuten);
 Serial.println("ZEIT");
 Serial.println(Zeit);
 sendSMS();
 delay(Minuten*60000);
 Serial.println(Minuten);
 digitalWrite(led,HIGH);
 digitalWrite(led1, HIGH);
 digitalWrite(led2, HIGH);
 digitalWrite(led3, HIGH);
 delay(Zeit*60000);
 Serial.println(Zeit);
 digitalWrite(led,LOW);
 digitalWrite(led1, LOW);
 digitalWrite(led2, LOW);
 digitalWrite(led3, LOW);
 a=0;
 b=0;
 c=0;
 d=0;
 e=0;
 f=0;
 g=0;
 h=0;
 k=0;
 l=0;
 m=0;
 n=0;
}
void sendSMS() {
 SIM900.print("AT+CMGF=1\r"); 
 delay(100);
 SIM900.println("AT + CMGS = \"+491.........\""); 
 delay(100);
 SIM900.print("Die Heizung wird in "); 
 SIM900.print(Minuten); 
 SIM900.print(" Minuten fuer "); 
 SIM900.print(Zeit); 
 SIM900.print(" Minuten angeschaltet"); 
 delay(100);
 SIM900.println((char)26); 
 delay(100);
 SIM900.println();
 delay(1000); 
}