Bom dia amigos garagistas,

A alguns anos atrás, comprei um controlador eletrônico de torneira, que através do toque no metal a mesma acionava uma eletroválvula e permitia a passagem dágua. Pois bem, como tudo na vida, parou de funcionar. Abri a caixa e para minha infelicidade ela estava impregnada em resina o qual não consigo fazer a manutenção. 

Pensei em fazer uma semelhante, a princípio ao invés do toque no metal, seria através de um botão, ou seja com um pulso ela aciona o relé (eletroválvula), dá passagem de água e após um tempo, desliga. 

Fiz uma plaquinha com um CI555 e um potenciometro para a regulagem do tempo. Até ai sem problemas. 

Quiz aprimorar, pensei em inserir um 4017 ou mesmo um flip-flop para ao pulsar o botão ligar e contar o tempo, e caso desse novamente outro pulso, ele desligava. Pois bem, funcionaria também, mais começei a ver que teria muitos componentes e sem necessidade, uma vez que tenho um attniny 85 sobrando e ele será a base de meu projeto. 

A idéia:

Botão para os pulsos;

Potenciometro para regulagem do tempo

Relé para acinamento da eletroválvula

A lógica:

O potênciometro servirá para regulagem do tempo, haverá caso em que precisarei de mais tempo com a eletrovávula acionada;

1º caso: Ao pulsar o botão (switch) aciona o relé e começa a contagem do tempo (pré ajustado pelo potênciometro);

Após o tempo pré ajustado, o relé é desligado;

2º caso: Ao pulsar o botão e acionar o relé, caso pulse novamente dentro do período da temporização, o mesmo será desligado, esperando por um novo pulso e por um novo ciclo. 

A segunda parte ainda não foi desenvolvida, encontrei um sketch na internet e a primeira parte (caso um) está funcional.

Segue atachado.

Desde já agradeço a paciencia e ajuda dos amigos. 

José Antonio 

Exibições: 646

Anexos

As respostas para este tópico estão encerradas.

Respostas a este tópico

Grande RV:

   É só manter o sketch e escrever as seguintes funções para o PIC:

pinMode()
analogRead()
map()
digitalRead()
digitalWrite()
millis()
delay()

   Ou seja, precisa reescrever apenas 99,9% do código!     :-)

   Abração!

D. T. Ribeiro.

kkkkkkkkkkkkkkkkkkkkkk

D.T.

bom dia. 

RRrssssssss só tudo isto ? (99% do código ?) pensei que fosse mais simples. 

Já estou pensando em usar um atmega328 mesmo, embora como disse ao RV, é desperdício de hardware, mais paciência. 

JA

Olá, José Antônio!

   Apesar da brincadeira, o que quis dizer é que o sketch é muito simples, então o esforço de adaptação não vale a pena. É melhor reescrever do zero para outra plataforma, ainda mais considerando que a IDE a ser utilizada ( MikroC, imagino ) é bem diferente da do Arduino.

   Claro que a ideia de como deve funcionar já consolidada e os defeitos de código já debugados podem ser facilmente transportados para a nova plataforma.

   Este é um belo exemplo de como é importante a portabilidade de código, que é uma qualidade desejável do software, que justamente permite que ele rode em plataformas diferentes sem grandes alterações.

   Observe que a parte que mais dificulta a portabilidade é a que se relaciona diretamente com o hardware. As funções pinMode(), digitalWrite() etc. devem ser totalmente reescritas, ou se usar wrapper functions.  E aí está exatamente o problema deste sketch: Ele praticamente só tem funções de acesso ao hardware, o que justifica a minha posição de reescrevê-lo, se necessário, a partir do zero.

   Quanto à tua ideia de manter um processador da plataforma Arduino, acho ótima, pois há um ecossistema muito mais desenvolvido para esta plataforma, i. e., há muito mais fóruns, gente disposta a ajudar, ferramentas e bibliotecas para Arduino do que para qualquer outra plataforma de hardware que eu conheça.

   Tudo isto sem contar o fato de que, se você quiser migrar para um processador mais potente, como o do DUE, ou o do Blue pill, ou o do Red pill, ou até mesmo um ESP, a alteração no teu código será mínima.

   Felicidades e bom divertimento!

D. T. Ribeiro.

Obrigado pela resposta meu amigo D.T.

Como já disse anteriormente, meu projeto já está em fase de desenvolvimento da placa, amanhã irei montar e testar na torneira. 

Mais uma vez obrigado pelas palavras e conselhos.

Grande abraço e boa semana a todos nós.

Dopois posto o resultado. 

JA

RV, 

bom dia. Zéjuis, 

Utilizo para gravar o PicKit2. RV se fr dar tanto trabalho assim eu mudo de estartégia, 

utilizo um atmega328 mesmo. 

É que dá dor no coração utilizar um CI deste para tão simples tarefa e utilização de apenas 3 portas. 

Mais paciência. 

JA

Boi noite SL CK,

muito obrigado pelo grande apoio que sempre tem de dado.

Aqui, ajudando amigos, aprendi muito do que sei.

Abraços

RV mineirin

RV,

dentre estes anos todos que faço parte deste fórum, posso admitir que 

vossa pessoa tem um coração muito bom, ajuda muitas pessoas e sou muito grato por isso.

Obrigado mais uma vez.

Tenha excelente domingo.

JA

Bom dia SL RV,

por nada, é sincero e de coração, você é uma pessoa muito inteligente, mas principalmente generosa ao compartilhar seu conhecimento sem exigir nada em troca, por isso meu lema é: Quem ensina, aprende, porque ao ensinar estamos exercitando nosso próprio conhecimento, quanto mais ensinamos mais aprendemos.

Grande abraço SL RV!

CK

Apoiado, CK!

Obrigado DT!

Abs.

CK

EEhhhh ,

achei um arduino pro mini perdido, 

Confecção da placa e depois vem a instalação.

Tá ficando show,

JA

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço