GALERA BOA NOITE
GOSTARIA DE SABER SE ALGUEM PODE ME AJUDAR NESSE PROJETO POIS NAO SEI PROGRAMAR MUITA COISA. QUERIA CONTROLAR O NIVEL MAXIMO E MINIMO EM 4 TANQUES LIGANDO 4 BOMBAS INDEPENDENTES PARA CADA TANQUE. SENDO QUE QUERO PROGRAMAR EM UM UNICO ARDUINO. NO NIVEL MINIMO LIGA A BOMBA E NO MAXIMO DESLIGA A BOMBA, SENDO QUE PARA 4 TANQUES E UM UNICO ARDUINO. PODEMOS COMECAR COM 2 TANQUES DAI EU SO REPLICO O PROGRAMA CASO POSSA. ATUALMENTE EU SO TENHO O ARDUINO UNO NA MAO QUE CREIO QUE PARA 2 TANQUES CONSIGA PROGRAMAR E FUNCIONAR ALGUEM PODE ME AJUDAR POR FAVOR
Tags:
TMS, teste esse novo código. Na verdade praticamente mudei apenas os pinos e os nomes definidos às portas para facilitar o entendimento do código, alterei a lógica principal também.
Pelo que você escreveu acima, a condição para a bomba ligar é que qualquer um dos sensores feche seus contatos, ou um ou os dois, a bomba vai ligar da mesma forma.
A condição para ela desligar é que os dois estejam abertos.
Uma sugestão, apesar de ter mantido essa ligação, você está utilizando muitos pinos analógicos (A0, A1, A2...) como entradas digitais, isso é um desperdício de recursos quando você poderia utilizar as outras entradas digitais disponíveis na placa para esse fim e poderia aproveitar melhor as entradas analógicas para ler temperaturas, pressão ou outra medida analógica.
Mas de qualquer forma esse code vai funcionar também. Depois você pode tentar mudar os pinos para entrada digitais e mudá-los no code também, assim aumentará seu apredizado. Se este code funcionar, compare o código anterior com esse e veja o que mudou, o que estava de errado no outro. Se tiver dúvidas continue postando.
Daniel a logica esta quase certa. sendo que a bomba esta ligando qnd os sensor min e max ficam NO e esta desligando quando qualquer um dos 2 ficam em NC.
se eu inverter o switchs para a logica NO a bomba fica ligado direto ate ai esta correto, sendo que para desligar, o sensor maximo que desligaria mas o minimo qnd fica em NC desliga ou o max em NC tmb, sendo que o minimo teria que ficar em nc e o maximo em nc para ela desligar
Mas você está mandando GND para as entradas? Esse code fiz para utilizar com o GND ao invés de 5V visto que você falou que precisa utilizar o GND. Esqueci de mencionar isso.
Ok, você está utlizando os contatos NO ou NC das microchaves?
Ficou confuso, era pra ligar quando o máximo abrir e o mínimo abrir? Não foi isso que você descreveu acima.
SENSOR MIN NC (Normal Close ou fechado)
SENSOR MAX NC (Normal Close ou fechado)
BOMBA LIGA (Se os dois tiverem fechado = bomba liga)
SENSOR MIN NO (Normal Open ou aberto)
SENSOR MAX NC (Normal Close ou fechado)
BOMBA LIGADA AINDA (Se um só tá fechado a bomba tbm liga)
SENSOR MIN NO (Normal Open ou aberto)
SENSOR MAX NO (Normal Close ou fechado)
BOMBA DESLIGA. (Se os dois tiverem aberto = bomba desliga)
Ok, então a lógica é diferente mesmo da que você tinha me passado?
São comparadors lógicos
|| equivale a lógica "ou"(OR)
&& equivale a lógica "e"(AND)
Você conhece lógica booleana?
Que bom que o programa funcionou!!
Já que você vai mandar o GND para os releś você pode usar o drive ULN2003A, tem vários tutoriais de como utliliza-lo. Ele é um CI com um array de 7 transistores Darlington se não me engano. Nesse link explica como fazer isso. Não achei nehum link de tutorial desse CI com relés em português, mas dá pra usar a tradução do google nesse em inglês.
https://electrosome.com/interfacing-relay-with-pic-microcontroller/
Nesse outro link o pessoal dá umas dicas legais sobre ele também.
http://labdegaragem.com/forum/topics/uln2003-hemo-sens-vel-ou-n-o
Para o sinal dos sensores, seria bom utlizar acopladores óticos pra garantir que jamais chegue 12V numa entrada do arduino, visto que isso com certeza a queimaria. Um divisor resistivo não é seguro visto que se um dos resistores queimar (no caso oque vi ligado ao GND), você terá 12V na entrada do arduino.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por