Spåra din buss och reservera en plats för dig bult IoT TECHNICHE (7 / 7 steg)
Steg 7: Och här kommer hela koden.
för en utan stil och som laddar snabbare
Kontrollera tillgänglighet för seat 1 LED_stat
GPS_DATA
SEND_DATA
RECV_DATA
INLEDANDE UPPGIFTER
OCH EN MED STIL OCH TAR TID FÖR BILDERNA ATT BELASTNING EFTERSOM GPS TAR CONSIDERABLES MÄNGD INTERNET VILKET GÖR DET FÖR LÅNGSAMT
Buss statusInloggad som
Buss 1Bus 2
Exempelmappning som att bläddra
BUSS 1 Status buss 2 StatusTack!
LED_ON
LED_stat
GPS_DATA
SEND_DATA
RECV_DATA
INLEDANDE UPPGIFTER
INLOGGNINGSSIDANAnvändarnamn:
Lösenord:
lämna in
Och arduino programmet som vi seriell beräknas med iot är
#include
SoftwareSerial mySerial (10, 11); RX, TX
#include
#include
#define TRIGGER_PIN 6 / / Arduino PIN-kod knuten till utlösa pin på ultrasonic sensor.
#define ECHO_PIN 5 / / Arduino PIN-kod knuten till echo pin på ultrasonic sensor.
#define MAX_DISTANCE 200 / / maximalt avstånd vi vill skicka ping (i centimeter). Maximal sensorn avståndet är dimensionerade för 400-500cm.
int pin2 = 2;
int pin9 = 9.
NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); NewPing inställning av stift och maximalt avstånd.
/ * Denna exempelkod visar normal användning av ett TinyGPS-objekt.
Det kräver användning av SoftwareSerial och aSerialumes som du har en
4800-baud serial GPS enhet ansluten på stift 4(rx) och 3(tx).
*/
TinyGPS gps;
;
void setup()
{
Serial.BEGIN (9600
);
Serial.BEGIN(9600);
Serial.BEGIN(9600); Seriella monitor
mySerial.begin(9600); Bolt Rx-Tx
pinMode (13, OUTPUT);
pinMode(pin2,OUTPUT);
pinMode(pin9,INPUT); Serial.BEGIN(115200); Öppna seriell monitor på 115200 baud se ping resultat.
}
char x;
Sträng cmd;
void loop()
{
Serial.println(sonar.ping_cm());
IF(((int)sonar.ping_cm()) < 15 & & ((int)sonar.ping_cm()) > 0)
{
{digitalWrite(pin2,HIGH);
}
}
annat
{
digitalWrite(pin2,LOW);
}
om (mySerial.available() > 0)
{
CMD = "";
samtidigt (mySerial.available() > 0)
{
x = mySerial.read();
Serial.println(x);
CMD += String(x);
}
float platt, flon;
osignerade långa ålder;
GPS.f_get_position (& platt, och flon, och ålder);
mySerial.print ((sträng) platt + "" + (sträng) flon);
cmd.trim();
cmd.toLowerCase();
}
bool newData = false;
osignerade långa tecken;
osignerad korta meningar, misslyckades.
För en sekund vi tolka GPS data och rapportera vissa nyckelvärden
för (osignerade långa start = millis(); millis() - start < 1000;)
{
samtidigt (Serial.available())
{
char c = Serial.read();
Serial.write(c); avkommentera den här raden om du vill se GPS data flödar
om (gps.encode(c)) / / kom en ny giltig mening?
newData = sant;
}
}
om (newData)
{
float platt, flon;
osignerade långa ålder;
GPS.f_get_position (& platt, och flon, och ålder);
Serial.Print("lat=");
Serial.Print (platt == TinyGPS::GPS_INVALID_F_ANGLE? 0,0: platt, 6);
Serial.Print ("LON =");
Serial.Print (flon == TinyGPS::GPS_INVALID_F_ANGLE? 0,0: flon, 6);
Serial.Print ("lör =");
Serial.Print(GPS.Satellites() == TinyGPS::GPS_INVALID_SATELLITES? 0: gps.satellites());
Serial.Print ("PREC =");
Serial.Print(GPS.HDOP() == TinyGPS::GPS_INVALID_HDOP? 0: gps.hdop());
}
GPS.stats (& tecken, och dömer, och misslyckades);
Serial.Print ("tecken =");
Serial.Print(Chars);
Serial.Print ("meningar =");
Serial.Print(sentences);
Serial.Print ("CSUM ERR =");
Serial.println(Failed);
om (tecken == 0)
Serial.println ("** inga tecken från GPS: kontrollera ledningar **");
}
Av,
facchas IIT GUWAHATI, Oskar, vamsi krishna, vikas, Karins