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!

Exibições: 469

Responder esta

Respostas a este tópico

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.

sketch_dec27b.ino

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?

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço