Bom dia senhores.
Antes de abrir este tópico eu procurei no campo de busca por: "ds18s20", "oneWire", "1-wire" e "one-wire". Em nenhum dos resultados notei pergunta como a que venho fazer.
INTRODUÇÃO
Trabalho com equipamentos que tem sua temperatura monitorada pelo sensor Dallas DS1820.
Como a maioria sabe, este sensor é extremamente difícil de se encontrar, pois trata-se de um modelo mais antigo. Entretanto, o sensor Dallas DS18B20 é encontrado em larga escala, inclusive em lojas do Brasil.
O meu problema é o seguinte:
Nossos equipamentos utilizam o DS1820, operando em 9 bits. Recentemente alguns deram defeito e subistitui errôneamente pelos DS18B20. Qual o resultado? O sensor funcionava, porém a temperatura mostrada no display era completamente equivocada; isto é: marcava 350 graus, 400 graus (sendo que estava medindo temperaturas proximas de -5 graus celsius.)
Pesquisei na internet e notei que a Dallas foi adquirida pela Maxim. Entrei no site da Maxim e eles próprios tem um documento explicando as diferenças entre os sensores DS1820 e DS18b20.
(link: https://www.maximintegrated.com/en/app-notes/index.mvp/id/4377 )
O curioso é que eles começam o texto dizendo que os dois dispositivos são iguais (posso ter me equivocado la leitura e, o que eles quiseram dizer, é que ambos servem para o mesmo propósito mas não necessariamente operam de forma igual).
Dando sequencia à leitura, notei que o fabricante diz que o Dallas DS1820 pode até operar como um módulo 12 bits e que ja vem de fábrica assim configurado. (Então, pra que utilizar a equação que eles fornecem no site????)
Novamente, continuando a leitura, o fabricante nos avisa que a forma como os registros de temperatura são manipulados pelos sensores são diferentes. (salvo pelo dalas DS18S20 que opera de modo à coincidir com a forma de operação do dallas DS1820).
Observe que as potências binárias são bem diferentes.
---------------------------------------------------------------------------------------------------------------
IDEA DE SOLUÇÃO
A minha idea é fazer um sistema embarcado da seguinte maneira:
1 - Utilizar o arduino para realizar a leitura do sensor DS18B20 (que é o substitudo que pretendo utilizar), através do barramento One Wire 1 (funcionando como master).
2 - Armazenar a string na memoria do arduino.
3 - Solicitar a temperatura, pelo arduino, de tempos em tempos (coincidindo com a frequencia de solicitação de temperatura que o equipamento da empresa está configurado.)
4 - Montar uma string, no formato que o dallas ds1820 monta e armazenar no buffer One Wire 2 do arduino (esta configurada como slave).
5 - Cada vez que o equipamento da empresa solicitasse a temperatura, ele perguntaria para o barramento One Wire 2, que por sua vêz já teria uma string pronta, montada da mesma forma que o dallas DS1820 enviaria para o equipamento aqui da empresa.
------------------------------------------
PERGUNTA:
Acham que é possível fazer este projeto? Pois não tenho acesso ao firmware do equipamento.
Obrigado!
Tags:
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por