Pessoal,

Boa Tarde...

Estou desenvolvendo um projeto com Arduino MEGA que consta na ligação de 16 sensores de umidade do solo, 4 válvulas solenoides e uma motobomba. Esses dados serão exibidos no display 16x2 com botões para navegação entre os menus e um RTC (todos os dados já estão sendo salvos como um datalogger). Segue o código que tenho até agora para que me auxiliem caso encontrem algum erro pois não sou expert em programação. A quantidade de sensores ainda não é a final, coloquei os 4 apenas para ir testando. Alguns menus estão somente como exemplo, não estou utilizando... O arduino está ligado com uma fonte externa de 9v 1A e as solenoides com uma fonte tipo colméia pois elas são de 24V.

Dúvidas.:

1 - Preciso ligar uma motobomba da marca MAGTRON de 1/2CV (folto anexa), o relê (5v ou 12v) consegue ligar a bomba normalmente? A parte elétrica me preocupa, vou utilizar os reles em serie da robocore para economizar portas. Li algo sobre um multiplexador para utilizar com os reles normais mas ainda não consegui estudar sobre...

2 - Gostaria que ao ligar o arduino o primeiro menu exibido no display fosse a verificação do cartão de memória (se existe ou não) para depois prosseguir para os outros menus. Seria uma segurança a mais.

3 - Gostaria de inserir uma opção de irrigação "manual" onde no menu eu pudesse desativar a programação feita através da leitura dos sensores e programasse o horário de ativar a bomba manualmente.

Com a utilização dos menus tive seguinte problema, os dados só gravavam no cartão quando eu acionava o menu correspondente. Por isso coloquei algumas funções dentro do loop, pois gostaria que elas ficassem rodando direto para gravar no cartão de memória. Não sei se estou fazendo certo, pois antes eu colocava tudo dentro do loop, agora utilizando os menus a linguagem C utiliza as "funções" e isso me deu um certo trabalho... Sei que postei muitas dúvidas mas conto novamente com a ajuda de vocês. 

Segue o código.:

https://pastebin.com/6H9na7Un

Exibições: 912

Anexos

Responder esta

Respostas a este tópico

Boa tarde H.

Qual arduino está usando para este projeto?

Ao compilar seu sketch como fosse para um arduino UNO,

retornou esta msg de alerta : Low memory available, stability problems may occur.

RV

PS:  Pelos ports digitais usados parece-me um arduino mega.

Boa Tarde...

Estou usando o MEGA...

Abraços...

Bom dia H,

 dei uma de distraído e não vi que você informou logo no inicio do seu tópico que era um MEGA.

Vamos a algumas respostas.

1a. Se sua bomba é de 1/2CV +- 368W  Se for ligada em 127V  +-  3A, e em 220V +- 1,5 A.

    Veja então qual a capacidade dos contatos do rele. Em geral estes módulos suportam no máximo 10A.

    Então acho que você não terá problemas usando com 3A.

1b. Existem os CI PCF8574, HC74595,  que podem aumentar bastante a quantidade de ports.

RV

O rele que utilizo é de 10A 250VAC... A minha rede é de 220v. Pelo que vc explicou vai dar certo... 

Oi H

anexo está o seu code com o acréscimo de msg no LCD indicando se funciona ou não o cartão SD.

Se não funcionar ele trava o code, e só destrava se der reset e depois ele vai novamente testar,

se tiver cartão ele continua o processamento.

Testa aí e depois conta pra gente o resultado desta parte que já modifiquei.

RV

Anexos

Muito Obrigado mesmo...

Assim que chegar em casa vou testar e te retorno o resultado...

Abri para dar uma olhada e fiquei impressionado com a organização sua no código, show de bola...

Parabéns....

Abraços...

Mais uma pergunta.: Não existe uma biblioteca ou um código mais reduzido para trabalhar com os botões? 

Mineirin,

Testei aqui e ficou perfeito...

Agora estou pesquisando sobre como faço para interromper a programação automática (através dos sensores) e fazer programação manual com base na data e na hora que eu inserir... Tipo um menu a mais...

Muito Obrigado!!!

Ok, se tiver dificuldade, me avise.

RV

Olá  Hugo

Percebi que sua preocupação maior no momento é com o software de controle da bomba d' agua, porém gostaria de saber se vc já definiu o método para medir a umidade do solo, já estive lendo sobre TDR (Refectometria no Dominio do Tempo) achei um campo de estudos interessante, para mim, considerando que trabalho com RF e pretendo montar um sensor TDR para irrigação em futuro próximo.

Joe,

É um campo muito interessante mesmo, tanto que o projeto que estou fazendo é a nível de mestrado (pesquisa científica), vou utilizar o sensor de umidade 10HS da Decagon (profissional) que é TDR. Um problema que encontramos é a durabilidade do sensor que vem com o arduino por isso optamos por trabalhar com esse mais caro da decagon. O pessoal da agricultura necessita muito de projetos nessa área, pode ter certeza que é um bom campo de estudos...

Ola Hugo

Terminei meu estudo inicial sobre reflectometria no domínio do tempo, já conhecia como reflexão de ondas estacionárias (ROE) percebi que o método mais utilizado é o da  Tektronix para a localização de defeitos e caracterização de cabos coaxiais, os sensores para o Arduino são para protótipos e usam o método de medir a resistência elétrica entre os eletrodos, portanto não são recomendados para aplicações onde a confiabilidade e estabilidade são necessárias. Estou montando o elemento sensor, esta semana ainda pretendo rezina-lo, e fazer as medidas iniciais de capacitância, já tenho o conceito de refletômetro pretendo montar o circuito tb. Inicialmente vou trabalhar com a frequência de 1 MHZ.

Olá

Conclui as montagens de três pontas de provas, na semana que vem farei as medidas com uma ponte de capacitâncias.

Utilizei para as hastes raios de roda de bicicleta em aço cromado de 25 cm e resina Epoxi 7942 da Oxiquima.

Cabos coaxiais de 75 OHMS e conectores BNC.

abraços

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço