Bom dia pessoal!
Estou com um problema, talvez muuuito básico para alguns. Estou tentando usar um servo e não consigo fazer ele girar de nenhuma forma até 180º. Ele gira apenas 90º, já fiz testes com valores negativos ex: servo.write(-180)... (-90)... (90)... (180) e ele apenas gira de 0 a 90º. Não sei o que posso estar fazendo errado, para teste já troquei a biblioteca por uma versão mais velha e o resultado ainda é o mesmo. O código de teste peguei na internet, ja vi vários códigos mas todos são iguais, inclusive nos vídeos é visível que o servo gira 180º...
Tenho dois servos, um SG90 e um SG5010. Ambos giram somente 90º. Estou usando um ESP8266 01S, uso um conversor de nível lógico (pois o servo trabalha em 5v).
Testei com valores negativos pois no datasheet diz que ele é 180º (90 em cada direção). Mas sem sucesso.
O código de teste está disponível aqui: https://pastebin.com/S3bLHDPW
Alguém tem alguma ideia do que pode estar acontecendo? :/
EDIT: Tenho um arduino pro micro aqui comigo, testei o mesmo código no arduino pro micro e funciona direitinho, gira os 180º. Só no ESP não gira, alguém sabe como corrigir? O que devo fazer? Gostaria de usar o ESP pois queria utilizar NTP para conseguir usar hora e data sem ter um modulo RTC.
EDIT2: No ESP32 funciona normalmente também, mas utilizando a biblioteca ESP32Servo.h; Então de qualquer forma, vou usar um ESP32 embora o ESP01 é bem mais compacto e se alguém tiver uma sugestão, posta ai. Obrigado a todos!
Tags:
Boa tarde MD, (se não gosta que te chame pelas iniciais, avise),
Teste seu código aqui com o ESP8266-12E, e funcionou corretamente no servo que tenho (SG90).
Não usei conversor de nível lógico.
Não tenho este modelo de ESP8266-01S.
Funcionou com este código.
RV mineirin
Oi RV, boa tarde!
Sim, esse meu mesmo código funciona com o ESP32, Arduino Pro Micro (testei aqui antes e funcionou com os dois servos nos dois modelos). Só não funciona com o ESP8266-01S, removi o conversor de nível lógico e testei e ficou na mesma, girando apenas até 90º.
Deve ser alguma incompatibilidade com o ESP 01S. Mas não é um problema, vou usar o ESP32 em função do NTP que preciso. Achei super estranho isso. No ESP32 estou usando com o conversor de nível lógico e está funcionando normal!
OBS.: A biblioteca deve ser diferente pro ESP32, a mesma não funciona pro ESP8266 e nem pro Arduino.
Obrigado!
Boa tarde MD, (se não gosta que te chame pelas iniciais, avise),
Eu testei com ESP8266-12E.
"A biblioteca deve ser diferente pro ESP32, a mesma não funciona pro ESP8266 e nem pro Arduino."
Qual biblioteca você está usando em cada caso?
ESP8266-01S?
ESP8266?
ESP32?
Arduino?
RV mineirin
No ESP8266-01S uso a da própria IDE <Servo.h>;
No arduino pro micro uso a da própria IDE <Servo.h>;
No ESP32 uso a span>ESP32Servo.h>;
Não tenho aqui comigo o ESP8266-12 (tenho na minha casa, posso testar amanhã).
A biblioteca ESP32Servo não funciona no ESP8266-01S e nem no arduino pro micro, da erro de compilação.
A biblioteca Servo.h não funciona no ESP32, da erro de compilação.
Oi, to com o mesmo problema, ja conseguiu solucionar?
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por