pessoal, boa noite,

eu estou montando um quadcopter para min e me deparei com um problema.

eu comprei meu motor brushless e para poder faze-lo funcionar comprei esse ESC

LINK REMOVIDO POR DESCUMPRIR OS TERMOS DE USO

porem quando liguei o ESC ao motor e a fonte de energia ( um transformador) e o arduino. Ele nao funciona, fica apenas dando uma sequencia de 2 beeps curtos.

Esse ESC me veio sem manual e me parece que é a programação dele o problema. mas se vocês tiverem mais informação que poderá me ajudar por favor, como eu posso fazer o meu motor funcuinar?

obrigado

Exibições: 3420

Responder esta

Respostas a este tópico

Olá, garagista! Eu comprei uns dois desses e não tive problema. No próprio link tem um fórum lá em baixo e diz que esses bipes são para configurações: http://club.dx.com/forums/forums.dx/threadid.562449

olá, eu dei uma olhada no forum, no entanto la mostra como fazer a configuração usando um controle de radio, o qual não é meu caso, onde só uso o ESC + motor + Arduino

obrigado

ih.. então tem que fazer uma rotina no Arduino... Vou dar uma olhada para ver se posso te ajudar.

salve!

Sei do que vc está falando. Na realidade é bem simples pra resolver. Vc só tem que programar o seu arduino para gerar um sinal PWM de mínimo e máximo para o ESC aprender os limites a que será submetido.
Recomendo efusivamente usar a biblioteca servo.h para isso, e aí é so setar a saída em 0° e em 90° - mantenha-se nesses limites por via das dúvidas! São neles que os controles trabalham. Usar uma saída PWM nativa com valores entre 0 e 255 dará problema, quer pelo fato de 0 ser desligado e 255 ser ligado direto (ou seja, não ser um sinal PWM), quer pelo fato de trabalhar numa frequencia bem mais elevada que o PWM dos controles para os quais o ESC foi projetado.
Outra coisa:
Seu sketch tem que colocar essa saída em 0° por dois segundos na inicialização do ESC todas as vezes que o energizar para habilitá-lo, caso contrário ele entra em modo de programação e aí "a porca torce o rabo"

Espero ter lhe ajudado.

olá Marcelo, boa noite.

você poderia me ajudar com o código?

eu peguei o cod exemplo do arduino e anexei uma linha com "delay (3000)" isso antes do void loop.

isso ta certo?

// Sweep
// by BARRAGAN a href="http://barraganstudio.com>" target="_blank">http://barraganstudio.com>;
// This example code is in the public domain.


#include <Servo.h>

Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created

int pos = 0; // variable to store the servo position

void setup()
{
delay(2500);
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}


void loop()
{
for(pos = 0; pos < 90; pos += 5) // goes from 0 degrees to 90 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
}

obrigado.

Não é bem isso... a idéia é zerar a saída para o ESC toda vez que ele for ser ligado à força e só depois fazer o que quiser.

Adaptei o código para você:

// Sweep
// by BARRAGAN a href="http://barraganstudio.com>" target="_blank">http://barraganstudio.com>;;
// This example code is in the public domain.


#include <Servo.h>

Servo myservo; // create servo object to control a servo
               // a maximum of eight servo objects can be created

int pos = 0; // variable to store the servo position

void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
myservo.write(0);
delay(3000);
}

void loop()
{
for(pos = 0; pos < 90; pos += 5) // goes from 0 degrees to 90 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}

delay(3000);

for(pos = 90; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}

delay(3000);
}

o setup cuida de habilitar o ESC, e o loop fica variando do mínimo até o máximo para ele aprender os limites. Basta um ciclo para o ESC ser programado. Nos demais ele vai acelerar o motor até o máximo, segurar ali por 3 segundos, reduzir gradativamente até parar, aguardar mais 3 segundos e repetir tudo indefinidamente.

Ah sim, só precisa programar o ESC uma vez, nas demais ele vai ser habilitado e já vai energizar o motor.

Bom projeto!

obrigado farei o teste!

o amigo td bom?

então eu fiz o teste aqui e não deu certo, continua dando os 2 beeps curtos!

:(

O ESQ tem uma proteção para o motor não ligar acelerado. Quando ele está ligado a um controle remoto ele só inicializa se quando for alimentado o "acelerador" estiver no mínimo. Isso é questão de segurança para quando você alimentar o motor não começar a girar imediatamente e provocar um acidente.

Portando o valor de "aceleração" tem que ficar no mínio quando alimentar até o ESQ terminar a checagem. Se tudo estiver certo ele vai fazer uma sequencia difente de apitos.

Olá. Encontrei um tutorial simples. Deve te ajudar: http://csacomani.wordpress.com/2012/10/27/arduino-controlando-um-mo...

ESC - também me interesso por isso.

Ainda pretendo um dia, montar um Quadricópetro.

Uma pegunta : existe algum ESC que não usa PWM ?

Por exemplo um ESC (Eeltronic speed controller), que comunica-se através de uma outra interface (por exemplo I2C ou SPI)? Acho muito defasado esse sistema de PWM para ESC.

Não tenho conhecimento de nenhum comercial, mas fundamentalmente, pode existir. Um ESC nada mais é que uma placa com três pontes H, alguns filtros e um microcontrolador que comanda isso de acordo com o que recebe de uma porta, no caso, PWM ou mais especificamente, PPM. O microcontrolador tem um software rodando que entende isso, mas nada impediria que ele fosse programado para responder à I2C, SPI, serial careta, até mesmo tensão caso o microcontrolador tenha uma porta analógica disponível.

Os ESCs à venda respondem a PWM porque é esse o formato tradicionalmente utilizado nos radiocontroles. Novos sistemas de rádio já estão surgindo tendo em vista maior desempenho no que diz respeito ao tempo de resposta. Nos servos, basta procurar pelos digitais mais avançados e já vemos exemplos disso. Em ESCs, dei uma olhada rápida dos sites de material para aeromodelismo mas em princípio não achei nada.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço