Resolvido-Timer-PWM-Contador de Pulsos - Arduino Mega

Boa tarde, estava desenvolvendo um projeto de um controle de motores DC 24V no PIC, mas devido a algumas dificuldades com um sensor de peso, migrei para a plataforma do Arduino e estou transcrevendo o código.

Estou utilizando o Timer2 para estouro do overflow a cada 10ms, para leitura de um teclado matricial e já está funcionando bem, e a cada 250ms para a leitura do rpm. Contar os pulsos a cada1/4 de segundo.

Porém preciso configurar o PWM para acionamento do motor, mas não sei como fazer pelos registradores do Timer1, ou algum outro periférico, pois gostaria de usar mais de uma frequência para testar o melhor rendimento.

E também um contador de pulsos para calcular o rpm do motor via encoder de 100 furos.

Estou pegando familiaridade com o arduino ainda, agradeço toda a ajuda.

Exibições: 501

Anexos

Responder esta

Respostas a este tópico

Boa tarde Sr. R,

anexe um arquivo (Não cole copia de sketch na área de texto) com o  código atual, para que possamos

analisar e sugerir alterações.

RV

Ok RV, vou postar o código.

Bom dia, 

Se puder usar outro microcontrolador, sugiro o ESP32.

Estamos conseguindo façanhas incríveis com ele. 

A medição de frequencia(ou RPM) é muito precisa! Além do que, o ESP32 tem ótimos recursos de controle de motor! 

http://labdegaragem.com/forum/topics/frequenc-metro-1

ESP32 – Frequencímetro de precisão

https://blog.eletrogate.com/esp32-frequencimetro-de-precisao/

ESP32 PWM Motor Control 

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-ref...

Boa tarde garagistas, problema resolvido, leitura de tensão, corrente, RPM e torque OK.

Para tensão, foi por método de cálculo, (duty*36.0)/255,0. A fonte que estou usando é 36V.

A corrente utilizei o ACS712 20A.

para o RPM foi utilizada a interrupção externa em uma faixa de tempo determinada.

O torque foi utilizada uma célula de carga de uma balança de cozinha de 10kg.

A temperatura que não está visível, foi utilizado o LM35.

Agradeço a todos pela ajuda.

Bom dia Renato, 

É por isso que o Arduino dominou o mundo. 

A facilidade de uso e de programação. A grande quantidade de dispositivos compatíveis e a disponibilidade das respectivas bibliotecas prontas e gratuitas! Imbatível. 

Não estou desmerecendo o PIC não. Mas a Instituição Arduino encontrou a chave certa do sucesso. 

Não sei o objetivo do seu projeto. Se for experimental OK. Mas se for para uso profissional, recomendo dispositivos mais confiáveis. 

 - ADC do Arduino - depende da tensão de referência (pode induzir erros)

- ACS712 - não tem resposta linear - taxa de erro é considerável

- Balança de cozinha - se for usar o HX711 - existe coisa melhor...

- LM35 - existe sensor de temperatura melhor. 

Bom dia Murta, realmente é muito mais prático, confesso que para configurar alguns periféricos diretamente nos registradores, tive uma certa dificuldade, mas consegui transcrever todo meu código e adaptar sem problemas, por isso as bibliotecas ajudam muito, e o arduino é bem legal de se trabalhar.

O PIC te força a conhecer bem a arquitetura e a programação, mas fica muito trabalhoso dependendo do problema que aparece. 

O projeto é experimental, trabalho de graduação, por isso as grandezas não precisam ser muito precisas.

para mensurar a corrente, encontrei algumas dificuldades por conta que ela também fica sob influência do PWM, e variava muito, mas encontrei uma biblioteca que aparentemente filtrou bem o problema.

A célula de carga utilizei com o HX711, e consegui uma precisão bem legal.(curioso que no PIC perdi dias tentando, quando migrei para o arduino levei 5 min com auxilio da biblioteca).

O LM35 realmente mostra umas leituras meio duvidosas, existem sensores melhores, mas como é uma variável que não tem muita importância no meu projeto, vai ser com o ele mesmo. 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço