Boa noite pessoal;

Gostaria de ajuda, como fazer motor girar em 3 velocidades. Exemplo :

Motor 1  gira sentido horario

velocidade1 500

tempo 10 min

logo em seguida ja começa  a velocidade 2 

Motor 1  gira sentido horario

velocidade2 700

tempo 12 min

logo em seguida ja começa  a velocidade 3

velocidade2 700

tempo 15 min

E pare tudo após terminar cada ciclo.

Consegui fazer ele girar mas não veio uma logica para fazer ele muda a velocidade apos um tempo x.

Exibições: 704

Anexos

Responder esta

Respostas a este tópico

Bom dia AFS, (se não gosta que te chame pelas iniciais, avise),

primeiramente voce precisa saber quantos graus o seu motor de passo gira por cada step.

Ex: Se ele girar 1,8° por cada step, serão necessários 200 steps para ele dar uma volta completa.

     1,8° * 200 = 360°.  Então defina a constante passosPorVolta=200; .

para mudar a velocidade usa a função  .setSpeed(RPM);

Ex:  mp.setSpeed(500);  //-->Gira em 500 RPM

Em seguida, para calcular cada tempo de execução. use a função millis().

RV

Olá Alison,

Use millis() como um relógio e marque um ponto no futuro:

Em linhas gerais:

agora = millis();

em1Minuto = agora + 1000 * 60;   // 1000 miliseg = 1 seg que multiplicado por 60 dá um minuto

if (millis() > em1minuto) acabouTempo = true;

Obrigado, ai procurei um codigo pronto de tempo de relogio, e implementei o que eu precisava para mudar a velocidade. Agora estou com dificuldade em adicionar botão inicio, pause, stop.

Boa noite AFS,

testa este sketch abaixo.

Ele vai executar a sua rotina uma vez somente, pois eu coloquei tudo no setup().

Caso você queira que fique rodando continuamente a sua sequencia, mude tudo para o loop().

Depois de um retorno se atendeu sua necessidade,

RV

MODELOCERTO-V02.ino

Boa noite RV.  Muito obrigado pela ajuda, eu acabei de conseguir modificando um código de relógio achado na net. O seu não funcionou o motor, não sei está lógica, mas se funcionar o seu fica mais simples e limpo, já oque eu modifiquei ficou grande porem funcional.

Boa noite AFC,

testa este agora:

MODELOCERTO-V03.ino

RV

Boa dia AFC,

testa este agora:

MODELOCERTO-V04.ino

RV

Boa tarde Grande Mestre, cara ficou show...Parabéns !  

Só não estava parando quando terminava os tempo de cada velocidade, ai adicionei roda = false; na ultima linha do void movimento. Resolvido ! Agora vou tenta coloca tudo para aparecer no display, problema que não conheço muita função em arduino ai acabo poluindo muito o código sem necessidade. Mas ficou top esse seu codigo. vlw boas cerveja ai.

1° motor desce e para apos tempo 15 seg

2° motor1 base gira por tempos determinado no codigo e depois para 

3°motor sobe e para apos 15seg

4° Aqui deveria para o ciclo todo, ele esta entrando em loop.MODELORUI.ino

Exemplo de fluxograma:


RV mineirin

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço