ino, estivesse ligado a um sistema mais poderoso que tivesse a ide e gravasse nele, ainda que possível, seria economicamente inviável.
A melhor solução pra isso se chama LÓGICA, ou seja, programa com uma lógica que lhe possíbilite atraves da setagem de parametros fazer seu sistema funcionar de uma forma ou de outra.
No atual momento estou fazendo isso.
Eu tenho um sistema de controle de irrigação, só que ele só servia pra meu uso residencial, com minha caracteristicas e necessidades, mas muitos amigos passaram a deseja-lo.
Dai estou reconstruindo ele do zero, e toda sua lógica.
Na lógica tradicional, o sistema utiliza 2 bombas d'agua, a primeira pra encher uma caixa, e a segunda(mais poderosa) pra pegar a água que esta na caixa e regar as plantas.
Mas te amigos que querem o sistema com uma só bomba, e outros que querem que a rega se dê sem o uso de caixa dágua intermediaria, regando por tempo.
Ai fica o problema, se fosse pensar como vocês eu teria que fazer vários sistema, mas não precisa.
O sistema é um só, e toda programação já esta dentro do codigo do arduino, só que adormecida.
Tipo, se eu tiver 4 formas de irrigação, eu dou um numero de uma variavel, como int tipoirricação=1; sendo que esse numero 1 é uma variável que eu gravo e leio da eeprom interna do arduino.
Dai quando eu quero que agora ele regue, sem o uso de caixa dágua usando a progração 3, eu posso fazer até remotamente via xbee ou nrf24l01, informando pra mudar a programação da 1 para a 3, DEU PRA ENTENDER ?
É só um exemplo, mas se você tiver por exemplo, uma fazenda que deseja fazer tipos variados de monitoramento, pode colocar na programação todas as possíveis formas de programar, e chama-las apenas quando desejar.
Agora gravar o sketch remotamente, ai é complicado.…
Adicionado por Weider Duarte ao 22:14 em 9 junho 2015
mas ainda não precisei aprender sobre elas, mas já que você parece um fuçador, então tá aqui um caminho:
3 CAMINHOS:
1- Modulos Xbee S6- PRÓS- A confiabilidade dos produtos da Digi, provavelmente configuraveis via XCTU o que após aprender a lidar com outros Xbees facilitaria as coisas, o rogerio da Rogercom vai ensinar sobre eles no seu curso online. CONTRAS: Caros e dificeis de achar, a ultima vez que encontrei para comprar, cada modulo custava mais de R$ 300,00 cada.
2- Modulos Esp8266 - PRÓS- Barato (algo na casa dos R$ 35,00) conectividade com arduino, ou possíbilidade de uso independente ainda que com menos recursos, ou seja, você pode programa-lo e usa-lo independente do arduino ou outros funcioando sozinho, possíbilita a criação de servidores WIFI ad-hoc CONTRAS: É coisa nova, ainda tem pouco material na net, a comunidade DIY tá adotando eles, mas ainda tem pouca gente mexendo, dai tem que fuçar e aprender na porrada. veja sobre eles aqui:
DATASHEET
FORUM INTERNACIONAL
COMUNICAÇÃO COM O ARDUINO
3- MODULOS NRF24L01 - PRÓS- hiper baratos já comprei por R$ 6,00 o modelo basico, tem variadas aplicações, como comunicação de voz, dados, rede, etc. CONTRAS- Tambem é coisa nova, e experimental, depende de bibliotecas criadas pela comunidade DIY, tem que ralar pra aprender a usar.
Veja sobre eles aqui:
LINK COM BIBLIOTECAS ARDUINO COM VARIADAS FUNÇÕES
…
Adicionado por Weider Duarte ao 22:43 em 9 junho 2015
rdando os ESP8266 pra começar a estuda-los, mas vamos ao que eu possa te ajudar.
Usar Xbee em modo AT é água com açucar, basta ligar e eles já saem se comunicando pois vem de fabrica pré-configurados, mas quando o assunto é modo API, caramba ai ao menos pra mim a coisa fica feia, tem que identificar o tipo de pacote, tem que criar o frame, tem que fazer conta pra bater checksun, etc. em resumo ainda tô apanhando.
Tambem li o livro do Jadeilson INSTRUMENTAÇÃO ELETRONICA SEM FIO e mais fui alem traduzi para o portugues o livro Building Wireless Sensor Networks: with ZigBee, XBee, Arduino do Rob faludi, fora dezenas de textos e ainda assim apanhei.
Pooooooorem, eis que se realmente seu problema é utilizar os XBEE em modo API e você não se importa de gastar um pouco, aqui vai a dica, o rogerio da Rogercom esta ministrando um curso online de xbee ( visite www.rogercom.com ) o curso é super incrivel, completo e online, essa semana saiu a 13ª Aula, eu ainda tô na 5ª pois como disse estudo muita coisa ao mesmo tempo, se realmente você quer pra valer, é a unica saida.
Agora vamos a algumas questões, vi que você quer apenas fazer dois radios conversarem entre si, pergunto: porque o modo API ? modo API é para quando se precisa criar redes de vários modulos de sensores, pra fazer uma comunicação ponto a ponto é só usar o modo AT.
Se o seu problema é passar os dados de vários sensores ao mesmo tempo, é só criar matrizes.
Bem, tá dado o caminho, vai lá na rogercom e se inscreve, o rogerio vai te mandar todas as video aulas atrasadas e vocÊ vai matar a pau.…
Adicionado por Weider Duarte ao 21:51 em 28 agosto 2015
ve o recebimento e fazer o reenvio de pacotes tem sim.
Tenho deixado de lado a biblioteca RF24 pura e trabalhado com a RF24NETWORK, nela existe um truque na emissao usando um comando bool .
Quando baixar a biblioteca nos exemplos no HelloWorld_tx voce vai ver essa parte aqui:
bool ok = network.write(header,&payload,sizeof(payload)); if (ok) Serial.println("ok."); else Serial.println("failed.");
Ou seja, interpretando, esse book ok, significa que o outro modulo recebeu o pacote e mandou a confirmacao de recebimento, para ter certeza disso basta gravar os helloworkd_tx e o helloworld_rx abrir as seriais e verificar, quando voce desenergizar o modulo remoto, o modulo tx comeca a acusar falhas.
Logo, se voce quer que caso um pacote seja reenviado caso nao seja recebido basta fazer algo mais ou menos assim;
bool ok = network.write(header,&payload,sizeof(payload));while (!ok) {
bool ok = network.write(header,&payload,sizeof(payload));
}
Ou seja, enquanto do outro lado nao receber ele nao para de enviar.
Testa ai,e coloca o resultado;
Ah, so lembrando uma coisa, no caso do NRF24L01 quem criou as bibliotecas pensou na colocacao de varios receptores e um transmissor, algo como ter varios robozinhos e um controle, mas quando o assunto sao varios transmissores e um receptor ai o bicho tem que partir pra o trabalho braçal e na porrada, na base da logica e do codigo, ou seja, nao existe em todas as bibliotecas que vi uma forma atraves de comandos de eviar o encavalamento de dados que chegem ao mesmo tempo, eu resolvi , mas atraves de uma logica pesada.
da o retorno ok.
…
Adicionado por Weider Duarte ao 1:27 em 8 janeiro 2016
.
Observe bem, apesar de não ter chegado a me aprofundar em todos, tenho lido sobre uma variedade significativa de tecnologias e módulos de comunicação sem fio, e a conclusão a qual cheguei é que tudo depende do projeto e do objetivo a ser alcançado.
Vamos tentar falar de algumas tecnologias e possibilidades de uso:
Os dados abaixo são opiniões minhas, logo, merecem reprovação ou melhoramentos:
Xbee e NRF24L01 -
Area: Instrumentação eletrônica.
Cargas de dados: Média
Foco: transmissão de dados de sensores
Range: de 100m a 1300m
--------------------------------------------------------------------------------
Bluetooth
Area: Mundo civil
Cargas de dados: baixa
Foco: comunicação AD-HOC entre aparelhos de uso pessoal
Range: 10m
--------------------------------------------------------------------------------
WIFI
Area: Diversificada, mas com maior enfase em TI
Cargas de dados: Alta
Foco: comunicação entre gadgets, pcs, para alta troca de dados
Range: +/- 100m
--------------------------------------------------------------------------------
LORAWAN
Area: Sensoramento
Cargas de dados: baixa
Foco: transmitir dados de sensores de baixa geração de fluxo
Range: de 5 a 28km
--------------------------------------------------------------------------------
Observe bem, são as visões que encontrei e entendi até agora, um radio bluetooth é excelente se você quer fazer apenas a simples identificação de algo que entra num raio de 10m de um ponto captador que precisa receber apenas uma simples identificação, já para transmissão de dados pesados a coisa complica.
Logo, cada radio tem seu uso, depende do projeto.…
Adicionado por Weider Duarte ao 10:25 em 24 agosto 2016
sp=sharing
Agora aos testes
2 Arduinos Uno cada um com uma NRF24L01+.
Pino 1 - GND
Pino 2 - VCC 3.3V
Pino 3 - CE - 8
Pino 4 - CS - 9
Pino 5 - SCK - 13
Pino 6 - MOSI - 11
Pino 7 - MISO - 12
Os dois arduinos estão montados nas mesmas configurações. Apenas o transmissor ou receptor, de acordo com o programa teste tera a seguinte configuração:
Pulldown no pino 7 - GND + Resistor 220Ohms ligados na porta 7
Agora vamos la. Para os testes exclui todas as bibliotecas RF e deixei somente a deste teste. Alem disso nomeei as placas como A, B e C, com uma etiqueta, e vou começar fazendo o teste da A com a B
O codigo utilizado é o GettingStarted, sendo radioNumber=0 no RF A e radioNumber=1 no RF B
role = 0 no RF A e role =1 no RF B
Sem qualquer resposta apos 5 minutos.
Agora o teste de Scanner
Com o B transmitindo e o A scaneando, tambem não tive sucesso com essa biblioteca:
Mas eis que quando estou a fechar, tenho a seguinte resposta:
Logo após vou testar o envio.…
rk
Antes, com o erro no software que eu tinha.. ligava 4 ao mesmo tempo e ficava lento ou nem funcionava direito.
Agora com a nova lib, fiz o teste inicial com 10, e os 10 recebem e envia dados..
Obrigado pela a excelente dica do nosso amigo: Weider Duarte
[Logo a baixo minha duvida]
Galera, quando eu ligo a placa individualmente.. todas recebem os dados normalmente, faz o que deve fazer..
Mas quando eu liguei varios aqui.. eles não estão recebendo os dados.. as vezes, apenas o primeiro comando chega em apenas um deles, o que eu enviar primeiro, logo em seguida eles param de receber dados...
Eu acho que esta entrando em um loop de envio de dados sem parar de um para outro..
mas na programação eu fico enviando dados toda hora. Alguem tem alguma dica?
Codigo de cada placa: http://pastebin.com/jeD9C0e3
Codigo placa "servidor": http://pastebin.com/WWsz6UjN
Imagem da instalação logo abaixo.
…
que você indicou são ótimos, o site ustr tem muita coisa legal a ser lida, vou dar uma bela sentada pra ler ele com toda certeza.
Logo, muuuuito obrigado mesmo.
Ao Gustavão suim,
Cara, é verdade grande amigo, quanto tempo, você e seu projetos, eu e meus estudos há há há.
Tô fazendo o curso de Xbee da Rogercom, ele já tá na 12aula, eu tô na 5ª a razão é que tô com tanta vontade de aprender, que reviso a mesma aula mais de uma vez é fico parando pra aprender direito.
Sinceramente não sabia que os xbee podiam ser tão complexos e tão completos, tem muuuuuuiiiita coisa a ser aprendido sobre eles, fora uma simples comunicação ponto a ponto.
O curioso é que descobri os NRF24L01 e andei estudando, e hoje tô devendo um tutorial a galera, na verdade tô estudando os xbee pra ver realmente onde ficam os limites entre os nrf e os xbee visto que hoje temos bibliotecas mesh para os nrf, a questão maior é que um xbee pro tá mais de R$ 250,00 enquanto um nrf de mesma potencia custa R$ 50,00 e um básico pra estudar meros R$ 5,00 é covardia.
Tô me criar um tuto pra o pessoal, até porque a melhor forma de aprender é ensinando, mas fica complicado misturar as coisas.
Ah! sobre o uso do resistor, na verdade eu tô usando um divisor de tensão, o que já contempla o uso dos resistores, o lance é que tem uma variável a ser lida que o pico dela é 1,2v e o arduino com referencia interna pede no máximo 1,1v dai fiz um divisor de tensão com dois resistores de 330r o que derrubou a tensão para 0,60v, e ficou possível a leitura.
Dai a ligação atual é POSITIVO>RESISTOR1>saída para A>RESISTOR2+CAPACITOR>GND
Mas ainda assim ainda oscila, e preciso o resultado totalmente estável, principalmente no zero.…
Adicionado por Weider Duarte ao 14:12 em 6 agosto 2015
o de Lisboa/Portugal.
http://labdegaragem.com/forum/topics/placar-eletr-nico-port-til-basquetebol
O filho dele é jogador amador de basquete. E acho que ele ficará muito feliz, se o pai conseguir montar esse placar.
Estou colaborando também, pois esse placar posteriormente, poderá ser adaptado para qualquer tipo de jogo, inclusive futebol.
O projeto esta progredindo muito bem com a ajuda de outro colega português, Miguel Pynto, no desenvolvimento do software. O Rui do Lab , esta nos ajudando também.
Nessa fase do projeto, estou testando meios de comunicação entre o Arduino do Placar e outro Arduino que será a Console de controle.
Testei a comunicação sem fio com o Módulo NRF24L01, e obtive resultados insatisfatórios, devido ao limitado alcance provocado por interferências e baixa imunidade à ruidos elétricos da fonte. (descartado)
Uma outra opção, seria usar um ESP8266, através de uma rede WIFI.
Para que já tem ampla experiência nesse tipo de rede, poderia nos dar o seu parecer ?
Imagine, que um placar desse, deverá estar em um ginásio coberto, metálico com inúmeras pessoas com celulares e smartphones. Será que é confiável usar um ESP8266 na comunicação do Placar ?
O colega Ricardo , sugeriu o uso de um Módulo HC-12. Eu não o conhecia. Alguém já usou ? Tem alguma experiência para compartilhar com a gente. Nesse módulo HC-12, a faixa de frequências (433 MHz) talvez tenha menos interferências. Será ?
https://www.seeedstudio.com/433Mhz-Wireless-Serial-Transceiver-Module-1-Kilometer-p-1733.html
Se a comunicação sem fio não for aplicável, optaremos para comunicação com fio (menos prática).
Muito obrigado pela colaboração !
…