RFID kártyaolvasóval automatizált munkaidő-nyilvántartás – órás szemmel nézve

Sokan talán furcsállnák, ha egy órás a mikrovezérlők és adatkapcsolatok világában kezd barkácsolni, pedig ha mélyebben belegondolunk, a precizitás, az időmérés, a megbízhatóság és a rendszerelvű gondolkodás már régóta az órásmesterség alappillérei. Az alábbiakban bemutatok egy RFID-alapú kártyaolvasós projektet, amely pontosan ezeket az elveket viszi tovább egy modern, hálózatba kapcsolt alkalmazásban.

Próbapanelen

Az alkalmazott eszközök műszaki paraméterei

A rendszer célja egyszerű: RFID kártyával történő azonosítás, majd az esemény időpontjának rögzítése és továbbítása egy adatbázisba Etherneten keresztül. Ehhez a következő főbb komponenseket használtam:

1. Arduino Pro Mini (3,3V)

  • Tápfeszültség (RAW): 5V

  • Üzemi feszültség: 3,3V

  • Órajel: 8 MHz

  • Kisméretű, de megbízható mikrokontroller, ideális 3,3V-os perifériákhoz.

2. RFID olvasó modul: RDM6300

  • Frekvencia: 125 kHz

  • Kommunikáció: UART (TTL)

  • Tápfeszültség: 5V

  • TX kimenet: 5V jelszint

  • A modul ASCII formátumban küldi a kártya azonosítóját (10 karakteres hexadecimális kód).

3. Tesztelt kártya: EM4100 chip

  • Fizikai forma: vastag műanyag belépőkártya

  • Azonosító kód (példa): 0A00372959 (hexadecimális, a soros monitoron így jelenik meg)

  • A modul minden olvasásnál pontosan ezt a karakterláncot küldi sorosan.

4. Szintillesztés a TX vonalon

Mivel a RDM6300 TX vonala 5V-on kommunikál, az Arduino RX bemenete viszont csak 3,3V-ig tolerálható, feszültségosztót alkalmaztam:

  • TX és D8 közé: 1,5 kΩ

  • D8 és GND közé: 3 kΩ Ez kb. 3,3V-ra osztja le a jelet, ami biztonságosan értelmezhető.

5. ENC28J60 Ethernet modul

  • Kommunikáció: SPI

  • Tápellátás: 3,3V

  • Funkció: a belső hálózatra juttatja az azonosítási adatokat (eseménykód + időbélyeg).

Hogyan működik az eszköz?

A kártyaolvasó beolvassa a kártyát. Az Arduino C-ben megrt program blokkolja ugyanannak a kártyának a rövid időn (5s) belüli ismételt beolvasását. Sikeres kártyaolvasás esetén felvillan egy ZÖLD led és megszólal egy BUZZER röviden.  Ha a kártyát nem sikerül beovasni vagy rövid időn belül többször kísérlik meg beolvasni a PIROS led villan fel. Ha a kártyaszám bekerült az adatbázisba, akkor a KÉK led villan fel és a BUZZER is megszólal hosszan.

Hogyan kerül át az adat az MSSQL adatbázisba?

Az Arduino a kártyaszám kiolvasása után lefuttat egy php scriptet. A php script építi fel a kapcsolatot SQL Authentikáció (felhasználónév, jelszó) alkalmazásával az adatbázissal, ahol a felhasználó által létrehozott adatbázis megfelelő táblájába beírja a kártyaszámot, amit időbélyeggel lát el.

XAMPP és SQL Server beállítási útmutató

  1. XAMPP telepítése
  2. A következő 2 db fájlt másold be ebbe a könyvtárba:
    C:\xampp\php\ext\
    • php_sqlsrv_82_ts_x64.dll
    • php_pdo_sqlsrv_82_ts_x64.dll

    Csak ez a két fájl szükséges, amit ehhez a levélhez mellékeltem!

  3. php.ini fájl módosítása:
    Útvonal: C:\xampp\php\php.ini
    Bele kell írni:
    extension=php_sqlsrv_82_ts_x64.dll
    extension=php_pdo_sqlsrv_82_ts_x64.dll         
  4. A xamp/htdocs könyvtárba másold be a mellékelt fájlokat:
    • check_data
    • insert_data
  5. SQL autentikáció beállítása (felhasználónév és jelszó)
  6. Tanúsítvány figyelés kikapcsolása:
    Pipáld ki a Trust server certificate opciót.
  7. Felhasználó jogosultságainak beállítása
  8. Adatbázis létrehozása: CardDatabase
  9. Adatbázistábla létrehozása: CardReadings
    Struktúra:
    • CardNumbervarchar(50), NOT NULL
    • ReadTimedatetime, NULL
    • DeviceIDvarchar(50), NULL
  10. Server IP-címének lekérdezése
  11. Ethernet kártya IP- és MAC-címe

Az MSSQL adatbázist kezelő PHP scripteket itt találod: https://www.watchrepair.hu/index.php/download/sql-adatbazis-kezelese-php-scriptekkel/

Ne felejtsed el beírni a saját user nevedet és jelszavadat ahhoz, hogy az SQL hitelesítés működjön!

A böngészőből így hívhatod meg a php scriptet: pl.: http://localhost/log_card.php

A DLL filekat innen töltheted le:

https://learn.microsoft.com/en-us/sql/connect/php/download-drivers-php-sql-server?view=sql-server-ver16

Csak a szükséges 2db file-t másold be a C:\xampp\php\ext\ könyvtárba! A többit nem szabad bemásolni!

Miért órás szakmai feladat ez?

1. Időmérés: más formában, ugyanazzal a céllal

A rendszerben az idő kulcsfontosságú: mikor olvasta le a dolgozó a kártyát? Az időbélyeg nem hajszálrugós billegőtől származik, hanem a rendszer digitális órájából, de az idő rögzítése és reprodukálhatósága ugyanúgy elsődleges.

2. Rendszerszintű precizitás

Ahogy egy kronográfban sem fér bele a túlzott holtjáték vagy kontaktushiba, úgy ebben a rendszerben is elengedhetetlen a stabil tápellátás, megbízható adatkapcsolat és megfelelő szintillesztés. Hibás ellenállás? Nem olvas a kártya. Rosszul huzalozott SPI? Nincs Ethernet. Itt minden „fogaskeréknek” működnie kell.

3. Diagnosztika, mint rutin

Az órás is „hallgatja” a szerkezetet, figyeli a billegő ütemét. Ugyanígy itt is figyeljük a soros monitort, feszültségeket, LED-ek villanását. Ha nincs visszajelzés vagy zajos az adat, akkor jön a műszer és a logikai gondolkodás.

4. Digitális időgazdálkodás, automatizálás

A rendszer segít az automatikus munkaidő-nyilvántartásban, pl. műhelybe való érkezés és távozás idejének rögzítésében, akár több munkatársra is. Ez nem csupán technikai fejlesztés, hanem precíziós adminisztrációs eszköz, amely az időmérés szakmai méltóságát hozza el a modern adatkezelés világába.

Összegzés

Ez a kis rendszer nem csupán elektronikai barkácsolás. Egy órás szemlélettel tervezett időalapú regisztrációs rendszer, amely az RFID technológiát ötvözi a pontos adatkezeléssel. Az ilyen típusú projektek jó példái annak, hogy az órásmesterek tudása hogyan vihető át a digitális korba – akár egy műhelyen belüli munkaidő-kezelés, akár egy szélesebb rendszer részeként.

Similar Posts

  • |

    Slava 2414 mutatószerkezet javítása

    Slava 2414 lötyögő mutatószerkezetének javítása. 1) A negyedes kereket a csipesz végével kinyomjuk a perckerék bordáiból a kézi szegecselő padon. 2) A perckerék bordáit csavarhúzóval óvatosan megnyomjuk mind a három oldalon, úgy, hogy befelé mozduljanak el. /Ha óvatosan nem megy órás kalapáccsal meg lehet ütögetni./ 3) A negyedes kereket csipesszel vissza pattintjuk. 4) A negyedes…

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük