Arduino para medir velocidade e supervisão em maquete de ferreomodelismo.

Então estou querendo continuar com a montagem da minha maquete , fazer supervisão do trenzinho , onde ele esta na maquete( podendo ser por PC através da internet com controle ou através eletronica digital com leds ), então tive a ideia como trem vai passar varios sensores nos trilhos , quero medir a velocidade , então com isso fazer até um controle , algo real ... alguem conheçe algum progama ou como iniciar isso.

    Tenho como inicio disso, para controle consegui  decifrar  codigos de controle remoto, mas vou usar circuito HT12E ou outro , que posso  ter uma gama grande de codigos através dos endereços  A0 ate A9.

  Para fazer as leituras do sensores pretendo não usar as entradas do Arduino, sim através IC bus com circuitos  conversores  paralelo para a leitura ..

   Então pessoal  prescizarei ajuda de vcs , para onde começo tudo isso, sendo que a leitura de velocidade , pode ser no LCD  e onde trem está com leds , ou mais futurista , pela internet , isso será futuro... ate mais.

Exibições: 3142

Responder esta

Respostas a este tópico

Pra medir a velocidade você pode colocar uma barreira de luz (infravermelho, laser, etc). Sabendo o tempo que o trem leva pra passar pela barreira, e o comprimento do trem, tens a velocidade média naquele ponto.

Outra opção seria colocar um tacômetro (conta-giros) nos eixos do trem.

Amigo distribui sensores pela pista, como o amigo Jonatas disse pode ser laser, infravermelho, magnético.... isso fica a seu critério, e quando um ponto você detecta a passagem do trem você terá a posição que ele está e o ponto de partida ou final, e conforme ele avança e passa pelo outro sensor você mede o tempo, e se possível coloque distância iguais entre os sensores, para assim calcular a velocidade. É um projeto muito bacana, vou acompanhar. 

Amigo a parte lógica é basicamente isso, agora você tem que definir qual tipo de sensor irá utilizar para disparar o contador de tempo para o cálculo da velocidade. 

A parte de monitoramento você pode fazer pelo ScadaBR, ficaria bem interessante e real, podendo ser acessado de qualquer dispositivo com acesso a internet. É algo para se pensar, qualquer dúvida posta ai, se eu não puder ajudar, temos ótimos colaboradores que certamente sanaram suas dúvidas. 

Boa tarde!

Com relação ao programa, você pode usar basicamente qualquer linguagem de programação... Você é familiarizado com alguma?


Eu orientei um trabalho de feira de ciências de um grupo de alunos de um curso técnico de informática a um tempo atrás e o projeto deles era exatamente esse, um controle de uma maquete de ferromodelismo com o computador. O trabalho foi desenvolvido em Delphi 7 e no ano seguinte um grupo repetiu um trabalho parecido, porém em Visual Basic 6.

Como o grupo era de um curso de informática, todas as funcionalidades foram implementadas via software, portanto, não chegamos nem a utilizar microcontroladores mas para muita coisa seria até mais fácil utilizá-los também.

Dá mais detalhes do seu projeto, do que vc pretende utilizar, de quantos e quais controles vc quer implementar na sua maquete e nós podemos discutir a respeito.

Abraços!

Bom como o amigo Rodrigo disse você pode usar qualquer linguagem de programação para desenvolver o sistema de monitoramento, eu sugeri o ScadaBR pela conectividade com a internet e monitoramento pelo computador, mas você pode usar até uma ethernet shield para mostrar pela internet a posição do trem. Da uma olhada no tópico do ScadaBR e no site do mesmo que tem muita informação. Primeiramente seria interessante desenvolver a parte do arduino primeiro, depois você transmite a informação conforme querer, pela internet, display lcd.... Bom qualquer coisa estamos ai, boa sorte.

Era exatamente isso que eu ia sugerir, Nicholas.

Sergio, como vc disse não ter intimidade com nenhuma linguagem, acho que é bem mais fácil fazer a parte "pesada" da lógica no Arduino.

Vc já tem algum sensor na sua maquete? Já trabalhou com algum?

Outra coisa, na sua maquete vc vai querer rodar com diferentes tamanhos de composições (tipo só a locomotiva em um momento e em outro com a locomotiva e mais um vagão de passageiros, por ex)? Pergunto pq, se for assim, teremos que pensar em alguma coisa um pouco diferente p/ calcular a velocidade (pq o tamanho da composição seria variável).

Uma forma que eu acho que ficaria interessante (se for possível adaptar) seria vc colocar um led IR no início da locomotiva e um no final dela e, próximo aos trilhos, vc usa um sensor IR. Assim, vc consegue calcular a velocidade tendo por base a velocidade entre dois pulsos em cada sensor e a distância entre os leds na locomotiva. E isso fica bem baratinho e fácil de implementar no arduino.

O que acha? E vc, Nicholas?

Se achar interessante, o primeiro passo eu acredito que seja providenciar os dois leds e uns 2 ou 3 sensores IR, para começar os testes. Utilizaríamos, a princípio, as próprias portas do arduíno, diretamente e, quando tudo estivesse funcionando, passaríamos a desenvolver utilizando alguma outra forma p/ conectar os sensores (multiplexadores, I2C, sei lá).

Abraços!

Ok, se vc já tem os reeds, usa eles sem probs. Só deixe eles bem fixos perto dos trilhos. Os alunos tb usaram reeds mas não fixaram muito bem, então algumas vezes os reeds balançavam e não acinoavam.

Eu acho que vc que não entendeu direito o que eu falei (devo ter me expressado mal), os imãs (ou leds se fosse o caso) vão somente na locomotiva e não nos vagões (portanto vc não teria problemas em usar leds ;-) ).

O que eu não entendi foi o seguinte: Vc sabe fazer a programação do arduino p/ ler esses sensores mesmo sem multiplexador? Ou vc precisa de ajuda tb com essa parte?

PWM dos trilhos é fácil. Se a eletrônica disso tb não for problema, é só usar  o analogWrite() direto..

Sim, entendi. Vou tentar descrever um algoritmo p/ vc e, assim que possível, te mando um exemplo de código. (Se fossem poucos pinos, seria muito mais fácil fazer com interrupções - leia a respeito - mas não é o seu caso, então...)


Vamos lá: Vc terá DOIS imãs NA LOCOMOTIVA, independente de ter ou não vagões, ok? Portanto, cada vez que a locomotiva passar por um sensor, ela o "tocará" duas vezes. Os imãs vão estar distantes um do outro uns 15 cm mais ou menos (por conta do tamanho da locomotiva). Esta distância é suficiente para que o arduino perceba com precisão esses dois acionamentos do sensor considerando a velocidade de uma locomotiva dessas.

O seu programa vai consistir em monitorar este sensor.

Vc vai criar uma variável que vai guardar o estado desse sensor e uma segunda variável que vai guardar o tempo. Ambas começam com 0.

1) Antes do trem passar no sensor, a variável do sensor vale  0, a do tempo vale 0 e a porta do arduino vale 0.

2) Quando o primeiro imã passar, a porta vai passar a valer 1 e ficará valendo 1 até que o imã se distancie do sensor.

3) Neste momento, a variável do sensor vale 0, a do tempo vale 0 e a porta vale 1. Então vc vai colocar 1 na variavel do sensor.

4) Quando o primeiro imã se afastar do sensor, vc terá a porta valendo 0, a variável do sensor valendo 1 e o tempo valendo 0.

5) Neste momento vc vai armazenar o tempo (com a função millis() ou micros() ) e colocar 0 na variável do sensor.

6) Quando o segundo imã se aproximar do sensor vc terá a porta valendo 1, a variável do sensor valendo 0 e o tempo valendo qquer coisa diferente de 0.

7) Neste momento vc coloca o valor 1 na variável do sensor.

8) Quando o segundo imã se afastar do sensor, vc terá a porta valendo 0, a variável do sensor valendo 1 e o tempo valendo qquer coisa diferente de 0.

9) Neste momento vc pega o tempo novamente, subtrai do tempo armazenado e tem os dados p/ calcular a velocidade. Aí vc zera todas as variáveis.


Assim que der eu faço um exemplo desse código e te mando.


Abraço!

Por nada! :-)

Vai mandando notícias do seu projeto. Dá p/ fazer bastante coisa legal!

Abração!

Ola vc pode colocar  um sensor infravermelho e um papel alumínio na roda do trem e o sensor do lado da roda,depois e so fazer um código  que lê o retorno do ir ai vc vai ter a velocidade que ele se encontra e quantas vezes a roda deu um giro completo 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço