Arduino serial RFID reader

Arduino serial RFID reader

Beitragvon Rocktagon » Mi 20. Mär 2013, 21:00

Benutzer RFID Leser: http://www.ebay.de/itm/300825037276 für 8,50€. Chip, Karten und Antenne sind dabei. Gute Lesereichweite (ca 5 cm), Ausgänge: Manchester oder Serial. zudem ein Ausgang der hochgeschaltet ist wenn eine Karte in Reichweite ist. Arbeitet mit 5V und kann somit direkt an den Arduino angeschlossen werden.
Für folgenden Sketch Strom dran und Pin 2 (TX) an den Port 2 vom Arduino.
Es werden gesammt 15 Zeichen über Serial gelesen: Manufacturers code(2) + ID card number(10) + parity bits(3).

Code: Alles auswählen
#include <SoftwareSerial.h>

const byte codeLength = 14; //15 Zeichen gesammt da bei es bei 0 anfängt: Manufacturers code(2) + ID card number(10) + parity bits(3).
volatile long lastRead=0;
char code[codeLength];
int  val = 0;
int bytesread = 0;

#define rxPin 2
#define txPin 3 //Wird nicht benutzt
SoftwareSerial RFID (rxPin,txPin);

void setup()
{
  Serial.begin(9600);
  Serial.print ("Moin");
  RFID.begin(9600);
}

void loop()
{
  if (RFID.available())
  {
    lastRead = millis(); //Zeit des letzten bytes
    val = RFID.read();
    if((val == 10)||(val == 13)) //Wenn neue Zeil zb durch leseabbruch verschoben
    {
      bytesread=0;
    }
    else
    {
      code[bytesread] = val;
      bytesread++;
    }
  }


  if ((bytesread>0) && (millis()-lastRead>1000))//Wenn am lesen und zu lange kein byte empfangen = reset
  {
    bytesread = 0;
  }

  if(bytesread == codeLength) //Wenn alles empfangen
  {
    bytesread = 0;
    Serial.print("TAG code: ");   
    Serial.println(code);           
  }
}



Beschreibung:
It is compatible with ID cards of 64 bit read-only EM4100, TK4100, and EM4102 series. This module outputs original card information (Manchester code) and ascii codes which can be directly displayed on the computer. Code form: Manufacturers code + ID card number + parity bits. It can be directly connected to Pin 2 of the computer serial port (COM). Antenna and the module has been adjusted to the best condition, with long reader distance. With CBB capacitors, it has anti-interference to temperature change.

125KHz card mini-module is designed for reading code from 125KHz/ 134.2KHz card compatible read-only tags and read/write card . It can be applied in office/home security, personal identification, access control, anti-forgery, interactive toy and production control systems etc.

Parameters :
// Voltage: 3 - 5V DC
// Current: <50mA
// Output format: Baud rate 9600, Data bits 8, stop bit 1
// Manchester code output:
___ 1; ____
| ___; ___ | 0
// Reading Distance: key card> 5cm, thin card> 9cm, thick card> 11cm, with no blind spots
// Operation temperature: 0 ~ 70 degrees Celsius
// Size: 38mm // 20mm
Pin definition :
VCC: +5 V power supply
TX: TX output. Baud rate: 9600, Data bits: 8, stop bit: 1
PC: TX output to computer serial port. Directly connected to Pin2 of the computer COM.
Note: already embeded with voltage level conversion circuit.
L2: antenna
L1: antenna
GND: GND
Mcst: Manchester code output
Rest: reset pin, low effective.
D1: card available signal. When a card is detected this pin is high. After 6ms, TX outputs
data. Then it becomes low after TX output finished
D2: vacant
D3: vacant
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Non mihi non tibi sed nobis
nightlight ÄT gmx PUNKT de
Benutzeravatar
Rocktagon
Administrator
 
Beiträge: 143
Registriert: So 28. Okt 2012, 10:15
Wohnort: NRW

Re: Arduino serial RFID reader

Beitragvon Rocktagon » Fr 22. Mär 2013, 11:28

Will man das ganze an RS485 anbinden so ist das mit diesem Modul ganz einfach:
Es wird nur ein MAX485, LT1785 oder SN 75176 (Der SN75176 kann Baudraten im MBIT bereich braucht aber mehr Strom).

Den RFID TX ausgang an den Pin 4 des IC's und D1 (welcher während dem vorhanden sein einer Karte hoch geschaltet ist) an Pin 3 des Ic's.
VCC an Pin 5, A+B (Datenleitung) sind Pin 6+7 und noch GND an Pin 8 - fertig. Somit hat man für knapp 1,50€ das RFID an RS485.
Non mihi non tibi sed nobis
nightlight ÄT gmx PUNKT de
Benutzeravatar
Rocktagon
Administrator
 
Beiträge: 143
Registriert: So 28. Okt 2012, 10:15
Wohnort: NRW

Re: Arduino serial RFID reader

Beitragvon Rocktagon » Fr 22. Mär 2013, 11:31

Bei den Arduino Megas (1820 / 2560) ist zu beachten das SoftwareSerial RX nur an den Outputs 10-13, 50-53, und 62-69 funktioniert da nur an denen der Interrupt manipulierbar ist.
TX ist egal.
Non mihi non tibi sed nobis
nightlight ÄT gmx PUNKT de
Benutzeravatar
Rocktagon
Administrator
 
Beiträge: 143
Registriert: So 28. Okt 2012, 10:15
Wohnort: NRW


Zurück zu Arduino

Wer ist online?

Mitglieder in diesem Forum: NewBot und 0 Gäste

Fatal: Not able to open ./cache/data_global.php