Configurei em meu código para o Mini Wemos Esp8266 para ser um Acess Point e com isto posso acessar ele e enviar dois tipos de comandos “L” e “R” para que assim possa ter controle da rotação de um motor de passo, mas o problema é que quando envio o comando para o Esp8266 ele me retorna as mensagens client.println(“Comando Sentido Horario”); então isto quer dizer que o código esta funcionando mas o principal que é a movimentação do motor de passo não esta no lugar certo.
Estou usando as funções que funcionam se Eu colocar sozinha como no exemplo abaixo:
void loop()
{
myStepper.step(stepsPerRevolution);
//myStepper.step(-stepsPerRevolution);
}
A pergunta é como faço para enviar o comando para o Esp8266 e assim fazer o motor de passo girar em conformidade com a direção desejada.
Código abaixo para analise
#include <Stepper.h>
#include <ESP8266WiFi.h>
const char* ssid = "Host_Churrasco";
const char* password = "12345678";
WiFiServer server(80);
const int stepsPerRevolution = 500;
Stepper myStepper(stepsPerRevolution, D1, D2, D5, D6);
void setup()
{
Serial.begin(115200);
IPAddress staticIP(192, 168, 4, 2); // IP set to Static
IPAddress gateway(192, 168, 4, 1);// gateway set to Static
IPAddress subnet(255, 255, 255, 0);// subnet set to Static
WiFi.mode(WIFI_AP);
WiFi.softAP(ssid, password, 2, 0);
WiFi.config(staticIP, gateway, subnet);
server.begin();
Serial.println("Server started");
Serial.println(WiFi.softAPIP());
myStepper.setSpeed(60);
}
void loop()
{
tcpCleanup();
WiFiClient client = server.available();
if (!client) {
return;
}
while (!client.available()) {
delay(1);
}
String req = client.readStringUntil('\r');
req = req.substring(req.indexOf("/") + 1, req.indexOf("HTTP") - 1);
Serial.println(req);
client.flush();
if (req.indexOf("L") != -1)
{
client.println("Comando Sentido Horario ");
for(int i = 0; i < 100
myStepper.step(stepsPerRevolution);
}
else if (req.indexOf("R") != -1)
{
client.println("Comando Sentido Anti-Horario ");
myStepper.step(-stepsPerRevolution);
}
else {
client.print("Invalid Request");
client.flush();
client.stop();
return;
}
client.print("HTTP/1.1 200 OK\n\n");
client.flush();
tcpCleanup();
}