RFID (Radio Frequency Identification) uses electromagnetic fields to read, monitor and transfer data from tags attached to different objects. It is not necessary that the cards are to be in visibility of the reader, it can be embedded in the tracked object. The tags can be actively powered from a power source or can be passively powered form the incoming electromagnetic fields.
EM-18 RFID reader module is one of the commonly used reader and can read any 125KHz tags. It features low cost, low power consumption, small form factor and easy to use. It provides both UART and Wiegand26 output formats. It can be directly interfaced with microcontrollers using UART and with PC using an RS232 converter.
Working of EM-18 RFID module
The module radiates 125KHz through its coils and when a 125KHz passive RFID tag is brought into this field it will get energized from this field. These passive RFID tags mostly consist of CMOS IC EM4102 which can get enough power for its working from the field generated by the reader.
By changing the modulation current through the coils, tag will send back the information contained in the factory programmed memory array.
I hope that you already go through our tutorial, Using UART on Raspberry Pi – Python and installed pySerial.
The UART TX output of EM-18 is of 5v. The input pin of Raspberry Pi GPIO is rated at 3.3v. So 5v cannot be directly given to the unprotected 3.3v input pin. Therefore we use a voltage divider circuit using appropriate resistors to bring down the voltage to 3.3V.
The following equation can be used for calculating resistor values,
- Vout = Vin x R2/(R1+R2)
|3||BEEP||BEEP and LED|
|6||SEL||HIGH selects RS232, LOW selects WEIGAND|
|7||TX||UART TX, When RS232 is Selected|
|8||D1||WIEGAND Data 1|
|9||D0||WIEGAND Data 0|
For more detail: Interfacing EM-18 RFID reader with Raspberry Pi