Caros entusiastas, como vão?
Possuo um Arduino MEGA, 2 XBEE serie 1 e estou problemas com a integração do XBEE na placa Relé Shield
Consigo monitorar a porta serial, se eu conectar a relé shield direto no arduino, caso utilize o "HIGH" na porta 4 ou 5 eu ativo o relé normalmente, mas não estou conseguindo ativar a porta através dos XBEEs e consequentemente remoto o XBEE para a relé shield.
Eis a placa Relé Shield XBEE
LINK REMOVIDO POR DESCUMPRIR TERMOS DE USO
Aproveitando, via XCTU, se eu enviar/receber um dado qualquer, já recebo no RX/TX da placa Relé Shield.
Muito obrigado.
Tags:
Olá.
Como esta a configuração dos Xbee`s? E quais os comandos que você esta realizando para acionamento do relé?
Abraços.
Estimado, boa noite e obrigado pelo apoio.
Compilei o código no arduino como se ativasse todas as portas para HIGH.
aí está a questão, eu não estou sabendo nesta placa habilitar o relé. é como se faltasse habilitar o DO e o respectivo numero, ou o respectivo endereço do XBEE em questão, pode ser isto?
Halisson, sem problemas. Faço para ajudar mesmo....adoro os Xbees :)
Vamos lá, como vc esta usando o Series 1, tem um recurso muito bom chamado de Line Passing. Siga a intrução abaixo e depois me diga o q houve.
Xbee com arduino:
Networking & Security
ID: 3332
DL: 1234
MY: 5678
NI: REMOTO
I/O Settings
D0: 3
D1: 3
D2: 3
D3: 3
IR: 0
IT: 1
IC: 0F
Xbee remoto:
Networking & Security
ID: 3332
DL: 5678
MY: 1234
NI: BASE
I/O Settings
D0: 5
D1: 5
D2: 5
D3: 5
IU: 1
I/O Line Passing
IA: 5678 (ou FFFF)
Caso não funcione, procure na net a função LINE PASSING I/O. É Linda. Qq coisa amanha te ajudo mais pois agora nao posso.
Abracao
Observe q o DL eu coloquei como exemplo. Você deve utilizar os que estao escritos no teu Xbee.
Gustavo,
Configuração exatamente o que voce descreveu. Relé batendo no shield que está conectado no arduino, mas na "remota" não funciona. O TX está piscando do remoto, quando bate o relé do arduino.
Um dispositivo como coordenador e outro como end device?
Deixei sem proteção a AES, ok?
Aguardo suas considerações.
E o Código do Arduino :
int rele3 = 3; //Declara o pino 3 como rele
int rele4 = 4; //Declara o pino 4 como rele
int rele5 = 5; //Declara o pino 5 como rele
int rele6 = 6; //Declara o pino 6 como rele
int rele7 = 7; //Declara o pino 7 como rele
int rele8 = 8; //Declara o pino 8 como rele
int rele9 = 9; //Declara o pino 9 como rele
int rele10 = 10; //Declara o pino 10 como rele
void setup()
{
Serial.begin(9600);
pinMode(rele3, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele4, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele5, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele6, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele7, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele8, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele9, OUTPUT); //a variavel rele é declarada como saída
pinMode(rele10, OUTPUT); //a variavel rele é declarada como saída
}
void loop(){
digitalWrite(rele3, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele4, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele5, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele6, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele7, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele8, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele9, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele10, HIGH); // Rele ligado
delay(100); //espera 10 s
digitalWrite(rele3, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele4, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele3, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele4, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele5, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele6, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele7, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele8, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele9, LOW); //rele desliga
delay(100); //espera 3s
digitalWrite(rele10, LOW); //rele desliga
delay(100); //espera 3s
}
Halisson,
vamos esquecer o arduíno agora.já que a configuração esta correta, faça o seguinte:
No XBEE que esta ligado no arduíno, simplesmente, coloque 3,3V no pino D0, isso fará com que o respectivo pino do módulo remoto também fique como HIGH. Ou seja, esqueça a comunicação serial por agora.
Fico no aguardo do resultado.
T+
claro, alimente os Xbees :)
Gustavo,
só pisca o TX do dispositivo que não está no Arduino, ou seja o que chamamos de XBEE remoto quando incluimos o 3.3v.
Quando relé da placa que está conectada no arduino alimenta, já está alimentando o pino 0 ok, com o meu shield.
obrigado!
Halissin,
quando voce trabalha com a configuração de LINE PASSING, a serial (rx/tx) de nada importa. Nesta configuração, os dispositivos tornam-se espelhor, ou seja, se você ativar o pino D0 com GROUND, no outro Xbee ele será 0 volts também, logo, se você colocar nivel HIGH o outro Xbee também irá colocar HIGH no mesmo pino.
O arduino, no teu caso, será ligado diretamente aos pinos do xbee, sem a necessidade da serial. No outro xbee, o rele será ativado diretamente pela pinagem do xbee, ou seja, sem a necessidade de um arduino.
Espero ter ajudado.
t+
Compreendo.
Mas alguma sugestão?
Não.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por