Galera,
Gostaria da ajuda de vocês. Estou montando um projeto com arduíno uno e antena RFID UHF, com o intuito apenas de ler a tag.
Estou utilizando os seguintes equipamentos:
Antena: http://pt.aliexpress.com/item/Integrative-UHF-RFID-card-reader-5M-l...
Shield: http://www.filipeflop.com/pd-14cf65-rs232-rs485-shield-para-arduino...
Para conectar a antena com o shield, estou usando um cabo DB9, ou seja, utilizando a conexão RS232.
E, por fim, estou usando esse código:
Contudo, apesar da antena bipar indicando que está lendo a tag, nada é enviado para o arduíno. Não aparece nada.
Grato!
Tags:
FALAAA GALERAAAAA
EM FIM FUNCIONOU...
com ajuda de um professor, que encontrou o problema, todo credito é dele...
segue o código, basta você INVERTER o RX e TX da antena para a shield RS232 e fim...
código reduzido drasticamente.....
#include "Arduino.h"
#include <SoftwareSerial.h>
SoftwareSerial portas (2, 3);
unsigned char tag;
void setup () {
//inicia config antena
Serial.begin (9600);
portas.begin (9600);
Serial.print ("Pronto pra receber TAG!\n");
}
void loop () {
while (portas.available () > 0) {
tag = portas.read ();
//por 0 nos HEX com apenas 1 caracter, para melhor entendimento
if (tag < 16) Serial.print("0");
Serial.print (tag, HEX);
Serial.print (' ');
}
}
Façam o teste ai vocês mesmo....
eheheh...Moço...eu expliquei isso há mais de um ano atrás...ehehehehe
só não tive tempo de fazer o vídeo...porque na real era muito fácil
Permalink Responder até Andre Abade em 16 abril 2017 at 18:30
Olá Pessoal,
Desculpem! Acabei esquecendo de postar o how-to.
Farei um video e vou postar no youtube...Até amanhã posto o Link
Mas por enquanto já vou adiantando alguns detalhes!
Primeiro passo - O conector da Antena China que comprei vem no padrão RS-232 com RX(Puple - Pino 3) e TX(Write- Pino 2) ...troque o conector femea para um conector macho....e inverta a pinagem RX -> pino 2...TX -> Pino 3.
Isso é necessário por causa do Shield que não faz a inversão!
Configura a antena para operar em modo de leitura continua com beep de confirmação.
Conecte a antena o Shield...e no arduino...vou mandar um código básico de teste...
Depois e só notar que a luz de RX do Arduino já começa a piscar...ai é só alegria....trate os dados no buffer...e sucesso!
Abraços,
Abade
sim Andre...
quanto a isso nós já tínhamos a certeza...
mas mesmo assim nos códigos que eu estava utilizando ele não vinha nada... foi fazendo algumas alteracoes nos códigos que o problema de leitura resolveu.. agora vejo que é simples mas quebrei a cabeça nessa maldita antena... kkkkkkkkkk
OUTRA COISA ANDRE
você utilizou a SHIELD RS232 ou o modulo TTL RS232?
eu utilizei a SHIELD RS232, porem não cheguei a testar com o modulo TTL RS232, que no caso é muito mais em conta do que a shield rs232 valendo uns 100reais, contra uns 30 do modulo ttl rs232
Boa Noite pessoal.
Consegui comunicar uma Antena UHF RFID com o Arduino UNO usando um módulo conversor RS485 para TTL. Tive grandes dificuldades no começo de tudo mas conseguir
resolver o problema. Vou descrever passo a passo das ações que tomei para que o protótipo funcionasse. Para facilitar o entendimento vou seguir um roteiro.
1- Materiais Usados
2- Protocolo da Antena e Comunicação com o Arduino
3- Código
4-Teste
1° Materiais Usados: (Antena + Módulo Conversor RS 485 para TTL + Arduino UNO)
-A antena que eu usei é chinesa. Comprei no Ali Express por 130 Dólares na época. Ela tem um alcance de 5m, Oferece três interfaces de comunicação serial: RS232, RS485 e Wiegand.
Link: https://pt.aliexpress.com/item/UHF-RFID-card-reader-6m-long-range-8...
-O módulo conversor RS484 para TTL eu comprei numa lojinha física aqui em minha cidade, RECIFE. Este módulo usa um CI MAX485. Segue um foto dele.
max485-rs485-to-ttl-converter-module-1.jpg
- Usei também um arduino UNO.
2° Protocolo da antena e Comunicação com o Arduino
Esta é a parte crucial do projeto. A primeira coisa que devemos saber é que não é possivel comunicar a antena diretamente com o arduino. É preciso uma maneira de converter os sinais que ela oferece (Padrão RS485, RS232 ou Wiegans) para um tipo de sinal que o arduino entenda, que no caso é o TTL.
Para converter este sinal usei o módulo conversor RS485 para TTL. Ele custou R$ 15 reais.
Vi que outros colegas acima fizeram com o módulo RS232. Funciona também. É uma alternativa.
Pelo que pude perceber a antena fica a todo momento lendo as tags que entram no seu ângulo de irradiação. Se ela identificar alguma TAG RFID ela imediatamente começa a piscar um led e aciona um buzzer. Porém, ela não envia nenhuma informação pelos seus fios.
Ela pisca indicando que há uma tag próxima mas não transmite a informação.
E como resolver este problema?? (Isto não é um problema)
A pergunta correta é: Como fazer ela enviar a informação?
A antena tem um protocolo de comunicação próprio: ISO18000-6B. Lendo seu manual é possivel encontrar uma série de comandos que executa de acordo com as informações enviadas para ela.
Então a ideia é: Para que um arduino consiga receber informações da antena, ele deve primeiro enviar uma requisição para ela. De acordo com o Manual a referida requisição é um código hexadecimal: 7C-FF-FF-10-32-00 .h (Para outras antena pode ser diferente. É importante consultar o manual)
Quando a antena recebe esta informação, ela entende que deve responder com o número da TAG que está em seu campo de irradiação.
Então, isto significa que determinado momento o arduino estará transmitindo informações para a antena, e em outros momentos estará recebendo informações da antena, tudo isso pelo mesmo canal: o par de fios AB, padrão RS485 que a antena fornece.
Dica importante: Este módulo (RS485 -TTL) funciona de maneira HALF-DUPLEX. Ou seja, não é possivel transmitir e receber informações ao mesmo tempo pelo único canal que ele fornece. Logo, será necessário, dizer, no código, qual momento ele funcionará como transmissor e em qual momento ele funcionará como receptor.
Outra observação importante. Tanto o Monitor Serial quanto a antena precisam de portas seriais para se comunicar com o arduino. Como o arduino UNO só tem uma porta serial, é necessário usar a biblioteca SoftwareSerial. Ela já esta inclusa no arduino. Ela simula uma porta serial em alguma das portas digitais do arduino.
3° Código Base
void leitura_tag(){ // Comando que ler os dados presentes no Buffer
sendIdentifyCmd ();
while(mySerial.available () > 0)
{
sinal_recebido = mySerial.read();
Serial.print(sinal_recebido[k],HEX);
Serial.print(" ");
}
delay(500);
}
void sendIdentifyCmd () // Comando que requisita à antena a ID das TAGS presentes em seu campo de irradiação
{
digitalWrite(3,HIGH);
mySerial.write (0x7c);
mySerial.write (0xff);
mySerial.write (0xff);
mySerial.write (0x10);
mySerial.write (0x32);
digitalWrite(3,LOW);
}
4° Testes
Funcionou. Vou postar algumas fotos dos resultados.
Boa noite,
Importante ler as instruções do dispositivo antes de usá-lo.
Pesquisando o material, eu descobri que existe um programa para configurar a antena.
E parece que ninguém usou esse programa.
Tudo seria muito mais fácil...
http://labdegaragem.com/forum/topics/projeto-ardu-no-com-antena-rfi...
Muito bom seu tutorial. Parabéns! E obrigado!
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por