preciso fazer com dois motores de passo se posicione de maneira independente.

estou posicionando um pinel fotovoltaico com dois motores de passo MOTOR 1 faz movimentos : direita e esquerda  e MOTOR 2 faz movimentos para cima e para baixo,so que quando o primeiro esta posicionando na primeira comparaçao de movimento,   if (direita> esquerda){ gira  motor1 p esquerda e se neste momento     if (superior >inferior){ ele nao faz nada com motor 2

mas se  if (direita < esquerda) ele gira motor 1 para direita e executa os proximos comandos do motor 2 normalmente

estou usando os dois motores no modo meio passo

teste_programa_completo_3_1.ino

Exibições: 322

Anexos

Responder esta

Respostas a este tópico

vc precisa corrigir a sintaxe em várias linhas onde é usado o comando IF

veja um exemplo: 

if (direita && esquerda <=350)

Bem imhugo você apontou um erro mas deixou de mostrar uma solução....

Umas possível solução seria:

if (direita <= 350 && esquerda <= 350) {

foi proposital pro camarada pesquisar e tentar descobrir sozinho como corrigir

Sei que você deve mesmo ter tido esta intenção na resposta, mas cuidado pois pode ficar a impressão de ser mais um dos inúmeros caras que adoram ficar apontando defeitos... e a maioria nem sempre sabe como corrigir os problemas apontados. Nestes casos eu procuro sempre deixar um link ou uma dica para que a pessoa possa procurar.
Abraço.

tranquilo... sem stress, mas sei que isso realmente gera polêmica.

sou um daqueles que acreditam ainda que entregar mastigado nem sempre é a melhor maneira de transferir conhecimento. Acredito que indicar um norte às vezes é mais importante porque dá a chance do camarada pesquisar e tentar captar muito mais coisas do que numa situação onde ele recebe tudo mastigado.

já vi várias pessoas aqui no fórum que entregam o sketch completinho, tudo mastigado. Aí fico me perguntando: será que a pessoa que está sendo ajudada aprende alguma coisa? é a história do "entregar o peixe" ou "ensinar a pescar"

Beleza, , concordoplenamente que é melhor ensinar.
Só que eu acho que talvez tenha esquecido de indicar o "norte", apontando apenas o erro.

eu fiz umas correçoes e ta quase quase

montei outro codigo mais simples de entender.o problema é que 

 se if (direita> esquerda){ ele so gira M1 para direita e o M2 nao funciona

resumindo :enquanto  if (direita> esquerda){ for false td vai bem quanado for true so é realizada a funçao dele o resto para.

olha como ta.

Anexos

inclusive tenho ate que te agradecer aprendi usar a funçao millis com aquele material que me mandou, ja tinha lido muita coisa e naao conseguia, estudei aquele programa e agara nem preciso usar o copicola

eu fiz umas correçoes e ta quase quase

montei outro codigo mais simples de entender.o problema é que 

se  if (direita < esquerda) ele gira M1 para esquerda e o M2 funciona normal

mas se if (direita> esquerda){ ele so gira M1 para direita e o M2 nao funciona

resumindo :enquanto  if (direita> esquerda){ for false td vai bem quanado for true soé realizada a funçao dele o resto para.

olha como ta.

Anexos

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço