Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define ENA 14 // Enable/speed motors Right GPIO14(D5)
- #define ENB 12 // Enable/speed motors Left GPIO12(D6)
- #define IN_1 15 // L298N in1 motors Right GPIO15(D8)
- #define IN_2 13 // L298N in2 motors Right GPIO13(D7)
- #define IN_3 2 // L298N in3 motors Left GPIO2(D4)
- #define IN_4 0 // L298N in4 motors Left GPIO0(D3)
- #include <ESP8266WiFi.h>
- #include <WiFiClient.h>
- #include <ESP8266WebServer.h>
- #define FLAME D1
- #define FLAME2 D0
- String command; //String to store app command state.
- int speedCar = 800; // 400 - 1023.
- int speed_Coeff = 3;
- const char* ssid = "404_NOT_FOUND";
- ESP8266WebServer server(80);
- void setup() {
- pinMode(ENA, OUTPUT);
- pinMode(ENB, OUTPUT);
- pinMode(IN_1, OUTPUT);
- pinMode(IN_2, OUTPUT);
- pinMode(IN_3, OUTPUT);
- pinMode(IN_4, OUTPUT);
- Serial.begin(115200);
- Serial.begin(9600);
- // Connecting WiFi
- WiFi.mode(WIFI_AP);
- WiFi.softAP(ssid);
- IPAddress myIP = WiFi.softAPIP();
- Serial.print("AP IP address: ");
- Serial.println(myIP);
- // Starting WEB-server
- server.on ( "/", HTTP_handleRoot );
- server.onNotFound ( HTTP_handleRoot );
- server.begin();
- Serial.println("Robojax.com Fire Module Test");
- pinMode(FLAME, INPUT);//define FLAME input pin
- }
- void goAhead(){
- digitalWrite(IN_1, LOW);
- digitalWrite(IN_2, HIGH);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, LOW);
- digitalWrite(IN_4, HIGH);
- analogWrite(ENB, speedCar);
- }
- void goBack(){
- digitalWrite(IN_1, HIGH);
- digitalWrite(IN_2, LOW);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, HIGH);
- digitalWrite(IN_4, LOW);
- analogWrite(ENB, speedCar);
- }
- void goRight(){
- digitalWrite(IN_1, HIGH);
- digitalWrite(IN_2, LOW);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, LOW);
- digitalWrite(IN_4, HIGH);
- analogWrite(ENB, speedCar);
- }
- void goLeft(){
- digitalWrite(IN_1, LOW);
- digitalWrite(IN_2, HIGH);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, HIGH);
- digitalWrite(IN_4, LOW);
- analogWrite(ENB, speedCar);
- }
- void goAheadRight(){
- digitalWrite(IN_1, LOW);
- digitalWrite(IN_2, HIGH);
- analogWrite(ENA, speedCar/speed_Coeff);
- digitalWrite(IN_3, LOW);
- digitalWrite(IN_4, HIGH);
- analogWrite(ENB, speedCar);
- }
- void goAheadLeft(){
- digitalWrite(IN_1, LOW);
- digitalWrite(IN_2, HIGH);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, LOW);
- digitalWrite(IN_4, HIGH);
- analogWrite(ENB, speedCar/speed_Coeff);
- }
- void goBackRight(){
- digitalWrite(IN_1, HIGH);
- digitalWrite(IN_2, LOW);
- analogWrite(ENA, speedCar/speed_Coeff);
- digitalWrite(IN_3, HIGH);
- digitalWrite(IN_4, LOW);
- analogWrite(ENB, speedCar);
- }
- void goBackLeft(){
- digitalWrite(IN_1, HIGH);
- digitalWrite(IN_2, LOW);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, HIGH);
- digitalWrite(IN_4, LOW);
- analogWrite(ENB, speedCar/speed_Coeff);
- }
- void stopRobot(){
- digitalWrite(IN_1, LOW);
- digitalWrite(IN_2, LOW);
- analogWrite(ENA, speedCar);
- digitalWrite(IN_3, LOW);
- digitalWrite(IN_4, LOW);
- analogWrite(ENB, speedCar);
- }
- void firecar()
- {
- int fire = digitalRead(FLAME);// read FLAME sensor
- int fire2 = digitalRead(FLAME2);
- if( fire == LOW)
- {
- Serial.println("Fire! Fire!");
- goAhead();
- }
- else if( fire2 == LOW)
- {
- Serial.println("Fire! Fire!");
- goBack();
- }
- else{
- Serial.println("Peace");
- stopRobot();
- // Flame sensor code for Robojax.com
- }
- }
- void loop() {
- server.handleClient();
- command = server.arg("State");
- firecar();
- if (command == "F") goAhead();
- else if (command == "B") goBack();
- else if (command == "L") goLeft();
- else if (command == "R") goRight();
- else if (command == "I") goAheadRight();
- else if (command == "G") goAheadLeft();
- else if (command == "J") goBackRight();
- else if (command == "H") goBackLeft();
- else if (command == "0") speedCar = 400;
- else if (command == "1") speedCar = 470;
- else if (command == "2") speedCar = 540;
- else if (command == "3") speedCar = 610;
- else if (command == "4") speedCar = 680;
- else if (command == "5") speedCar = 750;
- else if (command == "6") speedCar = 820;
- else if (command == "7") speedCar = 890;
- else if (command == "8") speedCar = 960;
- else if (command == "9") speedCar = 1023;
- else if (command == "S") stopRobot();
- }
- void HTTP_handleRoot(void) {
- if( server.hasArg("State") ){
- Serial.println(server.arg("State"));
- }
- server.send ( 200, "text/html", "" );
- delay(1);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement