Boa noite,

Estou com um problema e gostaria de solicitar ajuda. Estou com o seguinte problema, tenho 10 sensores de temperatura do tipo DS18B20 e 2 sensores de umidade. Tenho montado em um arduino UNO o DS18B20 (apenas um) e um HC-06 para fazer a transmissão por bluetooth.

Ai vem o problema...

preço que todos os sensores façam as leituras ao mesmo tempo (ou bem próximos) e que seja gerada uma planilha do tipo

data                hora   T1   T2   T3   T4   T5   T6   T7   T8   T9   T10   H1   H2

01/01/2015     01:00  21   22   23   24   25   26   27    28   29   30      80  90

Aguem tem alguma ideia do que eu posso fazer? Se faço um contador externo para enviar os sensores para os vários arduinos/sensores. E como faço para montar essa planilha, atualmente estou recebendo os dados no androide com o aplicativo bluetooth SPP.

PS.: Tem duas semanas que estou aprendendo então sejam o mais didáticos possível.

Abraços

Exibições: 1656

Responder esta

Respostas a este tópico

Janaína, boa noite.

Eu fiquei sem entender a sua nescessidade.

Voce tem 10 DS18B20 e 2 Sensores de umidade montados onde?

Como voce faz esta leituras ?

Coloque desenhos, as vezes explica melhor.

Rui

Os sensores estão montados em um protótipo para medição das temperaturas ao longo do dispositivo e os sensores de umidade estão montados na entrada e na saída.

Para analisar os dados preciso que eles sejam colhidos ao mesmo tempo de forma a determinar o gradiente de temperaturas no meu dispositivo.

Os sensores estão montados em arduinos independentes cada qual com seu HC -06 para enviar os dados por bluetooth. Agora preciso que todos façam as leituras ao mesmo tempo para que eu possa montar uma planilha tipo a cada 10 minutos.

Ficou claro?

Abraços

Entendi que você terá um arduíno em cada sensor

Creio que você tem 2 opções:

1 - Desenvolva ou configure o seu programa no android para buscar a leitura de todos os sensores na hora desejada e registre no formato desejado.

2 - Cada arduíno deverá ter um shield RTC (relógio) e faça com que o programa do andróid envie o horário assim que parear com o bluetooth de cada arduíno e faça com que o relógio avise o arduíno para enviar a medição no horário desejado.

Espero ter ajudado a clarear um pouco,

  'Eiju

Eiju, muito obrigada!

E se eu quiser armazenar no PC tipo em um bloco de notas? estou mandando pro androide porque foi o único jeito que consegui !

Abraço

Você terá que fazer um programa que se conectará com portas seriais, que seriam as conexões Bluetooth e salvar em um arquivo texto.

O arquivo texto poderá ser lido pelo bloco de notas.

Agora, tenho curiosidade em saber porque está usando 1 arduino e um HC-06 para cada sensor. O HC-06 não poderá estar a mais de 10 metros sem nenhum obstáculo. Sendo uma estimativa segura dizer que funcionará até a 3 metros de distância em situação normal.

Grande abraço,

  'Eiju

Acho que até poderia usar mais de um sensor em cada arduino, só que meu "protótipo" tem mais de 5 m de diâmetro, é como se fosse uma estufa. O que acontece é o seguinte, não posso correr o risco de perder dados então pensei que se os usasse de forma independente conseguiria isto.  Você por acaso teria alguma sugestão?

Abraço 

Sim, se o risco de perder dados é grande, conexão com fios é sempre mais seguro do que sem fios.

Veja este vídeo que acabei de postar, Clic aqui  se precisar do código coloco no www.pastebin.com pode servir de referencia.

Já vou adiantando que sou fã de carteirinha de ethernet shield em conjunto com apache+php+mysql

Então vai aí o que eu faria:

1) um arduino uno + ethernet shield dá conta de enviar dados via cabo de rede pra um servidor rodando apache+php+mysql

2) não sei exatamente como funciona esses seus sensores, então também não sei quantos sensores vc conseguiria conectar a cada conjunto arduino + ethernet shield. Nada impede de vc usar um conjunto arduino+ethernet shield pra cada sensor, mas dá pra economizar se quiser.

3) o sketch deverá contemplar tanto o webserver quanto o webclient. O webserver faz o arduino ficar em escuta, aguardando alguma conexão. Quando um script php enviar um determinado comando via rede pro arduino webserver+webclient, o arduino rodaria uma rotina de ler o sensor e enviar o dado obtido pro servidor

4) ali no lado do servidor, uma API (= script PHP) se encarregaria de receber os dados de cada um dos arduinos e, após tratamento dos dados, enviaria pra um banco de dados mysql

5) dessa forma, economiza-se por não precisar usar um RTC em cada arduino, pois o relógio seria o do servidor. Exemplo: às 20h30min00seg um script php envia um comando pra cada um dos IPs de arduinos pra fazer a leitura. Em seguida, é esperado que as leituras comecem a chegar, devidamente identificadas (sensor XX, valor YY). Isso deve ocorrer muito rápido, em questão de menos de 1 ou 2 segundos creio eu.

6) Ao receber os valores dos sensores, grave em banco de dados mysql, cada linha da tabela contendo data/hora e valores dos sensores.

7) se quiser incrementar, use o cronjob pra executar essa rotina de tempos em tempos (mínimo é minuto em minuto)

Muito boa sugestão!

Sua explicação bate com a minha opção 1 acima que acredito ser a mais fácil.

Se achar complicado configurar o conjunto apache+php+mysql, basta baixar o xampp que dá para você colocar no ar em 10 minutos. Muito fácil.

Além de acumular os dados em um banco de dados, você poderá adicionar muito mais funcionalidades do tipo: Painel e gráfico em tempo real, aviso de alerta por email ou outro meio, acesso remoto pela internet, etc.

Boa sorte!

  'Eiju

Eiju,

Com o xampp também vou precisar do ethernet shield né?

Dei uma olhada aqui parece bem fácil de configurar mesmo mas terei que comprar o ethernet shield pois não o tenho. Vou tentar implementar assim que tiver algum progresso te aviso!

Abraços

Janaína

Ok Janaina,

Boa sorte com o seu projeto.

Se precisar de mais dicas é só gritar dai.

  'Eiju

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço