Components and supplies
ESP32
Apps and platforms
rogerbit.
Project description
Code
source code
c
source code
1#include <WiFi.h> 2#include <Servo.h> 3const char* ssid = "xxxxxxxx";//Clave wifi 4const char* password = "xxxxxxxx";//Contraseña wifi 5WiFiServer server(80); 6Servo servoPin12; 7Servo servoPin14; 8Servo servoPin27; 9Servo servoPin26; 10int pin2 = 2; 11void setup() 12{ 13Serial.begin(115200); 14// Pines de control servo y led onboard esp32 15servoPin12.attach(12); 16servoPin14.attach(14); 17servoPin27.attach(27); 18servoPin26.attach(26); 19pinMode(pin2, OUTPUT); 20digitalWrite(pin2, LOW); 21delay(10); 22 // Comenzamos conectándonos a una red WiFi 23 Serial.println(); 24 Serial.println(); 25 Serial.print("Conectando a "); 26 Serial.println(ssid); 27 WiFi.begin(ssid, password); 28 while (WiFi.status() != WL_CONNECTED) { 29 delay(500); 30 Serial.print("."); 31 } 32 Serial.println(""); 33 Serial.println("Conectado a red Wifi."); 34 Serial.println("Dirección IP "); 35 Serial.println(WiFi.localIP()); 36 server.begin(); 37 digitalWrite(pin2, HIGH); 38} 39int value = 0; 40void loop(){ 41 WiFiClient client = server.available(); // Escuchando a los clientes entrantes 42 if (client) { // Si hay un cliente, 43 Serial.println("Nuevo cliente"); // Imprime un mensaje en el puerto serie 44 String currentLine = ""; // String para contener datos entrantes del cliente 45 while (client.connected()) { // Bucle mientras el cliente está conectado 46 if (client.available()) { // Si hay bytes para leer del cliente, 47 char c = client.read(); // Lee un caracter 48 Serial.write(c); // Lo imprimimos en el monitor serial 49 if (c == '\n') { // Si el byte es un carácter de nueva línea 50 if (currentLine.length() == 0) { 51 client.println("HTTP/1.1 200 OK"); 52 client.println("Content-type:text/html"); 53 client.println(); 54 // Contenido HTML 55 client.print("Click <a href=\"/avanzar\">Avanzar</a> Para Avanzar.<br>");//Avanzar 56 client.print("Click <a href=\"/atras\">Retroceder</a> Para Retroceder.<br>");//Retroceder 57 client.print("Click <a href=\"/derecha\">Derecha</a> Para ir a la derecha.<br>");//Avanzar 58 client.print("Click <a href=\"/izquierda\">Izquierda</a> Para ir a la Izquierda.<br>");//Izquierda 59 client.print("Click <a href=\"/parar\">Parar</a> Para Detener.<br>");//Parar 60 client.println(); 61 // Salir del ciclo while: 62 break; 63 } else { // si tienes una nueva línea, borra currentLine: 64 currentLine = ""; 65 } 66 } else if (c != '\r') { 67 currentLine += c; 68 } 69 //Avanzar 70 if (currentLine.endsWith("GET /avanzar")) { 71 servoPin12.write(0);// 72 servoPin14.write(180);// 73 servoPin27.write(0);// 74 servoPin26.write(180);// 75 } 76 //----Atrás---- 77 if (currentLine.endsWith("GET /atras")) { 78 servoPin12.write(180);// 79 servoPin14.write(0);// 80 servoPin27.write(180);// 81 servoPin26.write(0);// 82 } 83 //----Gira a la derecha--- 84 if (currentLine.endsWith("GET /derecha")) { 85 servoPin12.write(180);// 86 servoPin14.write(180);// 87 servoPin27.write(180);// 88 servoPin26.write(180);// 89 } 90 //----Girar en la izquierda---- 91 if (currentLine.endsWith("GET /izquierda")) { 92 servoPin12.write(0); 93 servoPin14.write(0); 94 servoPin27.write(0); 95 servoPin26.write(0); 96 } 97 //----Parar---- 98 if (currentLine.endsWith("GET /parar")) { 99 servoPin12.write(90); 100 servoPin14.write(90); 101 servoPin27.write(90); 102 servoPin26.write(90); 103 } 104 } 105 } 106 // Cierra la conexión 107 client.stop(); 108 Serial.println("Cliente desconectado"); 109 } 110}
Comments
Only logged in users can leave comments
carlosvolt
8 Followers
•25 Projects
1
0