quinta-feira, 24 de outubro de 2013

Implementando controle PID no self-balancing robot...

Começamos a implementar um controle PID no nosso self-balancing robot....
De inicio testamos com apenas um motor e funcionou, agora falta incluir o outro motor e testar o trabalhoso robô, perdemos muito tempo no sensor giroscópio, no MMA7361 foi tudo mais tranks....rs
Baixamos a biblioteca PID do site Arduíno e estamos por enquanto estudando o código básico...


Uma breve definição de PID:
 
PROPORCIONAL: AMPLITUDE DE CORREÇÃO É PROPORCIONAL A AMPLITUDE DO DESVIO. (GANHO DE CORREÇÃO É PROPORCIONAL AO ERRO)
 
INTERGRAL: VELOCIDADE DE CORREÇÃO É PROPORCIONAL A AMPLITUDE DE DESVIO. (QUANTO MAIOR O ERRO MAIOR MAIS RÁPIDA  INTEGRAÇÃO)
 
DERIVATIVO: VELOCIDADE DE CORREÇÃO É PROPORCIONAL A VELOCIDADE DO DESVIO  (antecipativo)
 

sexta-feira, 18 de outubro de 2013

Substituição de sensor giroscópio para acelerometro MMA 7361

Estavamos tendo muitos problemas com o sensor giroscópio L3G4200, nosso codigo mostrava o angulo de inclinação, mas estava perdendo a referencia do ponto inicial (Zero) e com isso o segway não se equilibraria.

Mas não desistimos, pesquisamos e encontramos um sensor acelerometro MMA 7361 muito utilizado em projetos de equilibrio e confiável. O codigo também mostra seu valor em angulo e não perde a referencia por ser um sensor analógico, diferente do L3g4200 que é por comunicação I²C, muito mais complexa, onde, ficamos muito atrelado com o Datasheet do sensor que se refere à endereços para se obter o valor de leitura do sensor.

Ainda mantemos a ponte H para controle do motor e estamos testando outro motor muito mais preciso e com pouca folga, sua velocidade é de no máximo 300RPM e tensão até 12Vdc também.

Abaixo fotos do sensor acelerometro MMA 7361.