Quantcast
Channel: Vaše projekty – Bastlírna HWKITCHEN
Viewing all articles
Browse latest Browse all 29

Arduino docházkový systém

$
0
0

Náš čtenář, pan Janík, si do firmy postavil jednoduchý docházkový systém, který vám v dnešním článku představí.


Projekt vznikl pro potřeby firmy o cca 20 zaměstnancích, a proto byl dimenzován na max. 30 lidí. Je to můj tak desátý Arduino program, a tak se předem omlouvám za neoptimalizovaný a ke konci už i silně chaotický kód :-).

Popis bude taky velmi všeobecný, protože zařízení je už cca 18 měsíců v provozu a od té doby jsem už většinu detailů zapomněl, nicméně případné dotazy se pokusím zodpovědět. Co se týče spolehlivosti, tak za tu dobu asi jednou ztratil připojení do LAN a jednou nebo dvakrát display zobrazil nesmyslné znaky – po odpojení/připojení napájení vše OK.

Komponenty

Skládá se z nástěnného modulu (display, čtečka RFID čipů, Arduino MEGA, Ethernet modul, RTC, PC speaker, EEPROM) a administrace přes LAN – www.

Napájení jsem zkoušel externím zdrojem, ale nakonec se jako nejstabilnější ukázalo napájení kvalitním adaptérem/nabíječkou od mobilu přes USB a tažené kvalitním kabelem Belkin kvůli větší vzdálenosti.

Zapojení

Zapojení jednotlivých komponent je pro případné zájemce možné odvodit z kódu.

Všechny desky a hlavně RFID čtečku jsem osadil filtračními kondenzátory – na chybovost čtení čipů to má dramatický význam!!! Základem je Arduino MEGA, na něm nasazený Ethernet shield (tady pozor!!! – levná verze v odkazu neobsahuje pomocný obvod, který resetuje desku po připojení napájení – musel jsem zbastlit sám – viz. tranzistor s NE555 u tlačítka reset), zvukový výstup tvoří PC speaker + tranzistor coby zesilovač.

Na I2C je zapojeno:

  • display 20×4 s I2C převodníkem
  • RTC s DS1307 (obvod je velmi nepřesný – za týden je schopný se rozejít i o 2 minuty, lépe by asi bylo použít DS3231 a nebo zkusit stabilnější krystal), na desce RTC se využívá i EEPROM 4KB
  • externě další EEPROM 32KB.

Na seriovém portu č. jedna (Serial1: 19,18) je čtečka RFID.

Arduino docházkový systém - Zapojení

Zapojení

Arduino docházkový systém - Zapojení

Zapojení

Arduino docházkový systém - Umístění RFID antény

Umístění RFID antény

Popis funkce a programu

Veškeré nastavování se provádí přes webové stránky v prohlížeči, na základní obrazovce se zadává 3 místný kód pracovníka (v naší firmě), jméno, příjmení, kód čipu (opíše se naražený na čipu).

Pak je možné prohlížet docházku za aktuální a 2 měsíce zpátky. Stažení se provádí do jednoduchého *.csv souboru. Na stránce je také tlačítko nastavení času PC (synchronizovaného z internetu) do zařízení.

Arduino docházkový systém - Přehled zaměstnanců

Přehled zaměstnanců

Časy se třídí tak, že 1 záznam dne je brán jako příchod a další jako odchod, přičemž mohou být celkem 3. Časy načtené čipem nejdou smazat (aby nadřízený nemohl upravovat co se skutečně razilo), ale může čas přidat, např. když si zaměstnanec zapomene narazit odchod. SV a ŘD se vkládají ručně (www).

Arduino docházkový systém - Webové rozhraní

Webové rozhraní

Přesčasy se pro jednoduchost počítají jako že každý započatý den má mít 8 hodin (správnější by asi bylo zadat ručně fond hodin pro každý měsíc). Po odpracovaných 4,5 hodinách se automaticky odečte 30 minut přestávka. Časy se automaticky zaokrouhlují na půlhodiny, příchodem je nejbližší vyšší následující půlhodina a odchodem je nejbližší nižší půlhodina. Toto vše je možné měnit a nastavoval jsem po konzultacích a dle potřeby.

Arduino docházkový systém - Detail zaměstnance

Detail zaměstnance

Zabezpečení jsem nejprve vymyslel pomocí javascriptu heslem, ale to lze velmi jednoduše obejít (v administraci použité většinově) a následně jsem pro ruční zápis příchodu přidal 2 heslo kontrolované na straně Arduina – to zná pouze autor/uploader programu a ten, komu ho předá.

Na displeji se zobrazuje čas, datum, den v týdnu, upozornění na pracovní dobu a přesčasovou dobu. Po sejmutí čipu zobrazí jméno pracovníka, čas který se uložil (bez vteřin) a hlášku zapsáno.

Arduino docházkový systém - Detail displeje

Detail displeje

Arduino docházkový systém - Hotová konstrukce

Hotová konstrukce

V programu jsou také kontrolní funkce, které kontrolují a porovnávají důležité informace (jako pozice zápisu do paměti – ukládá se na několik paměťových pozic současně a na 2 různé EEPROM), v případě chyby se zobrazí.

Program obsahuje i auto-reset (pro zvýšení stability). Paměť EEPROM s časy se zapisuje postupně pořád dokola, paměť SV a ŘD se automaticky smaže po určité době.

Pro získání adres zařízení na  I2C jsem použil program „Scanner I2C sbernice“.

Kód je dostupný na serveru BitBucket.


Panu Janíkovi děkujeme za článek a přejeme hodně štěstí s další tvorbou.


Viewing all articles
Browse latest Browse all 29

Trending Articles


Re: Prosím o určení autora - google nepomáhá


Nelze se přihlásit na Facebook přes PC


Prodám Flexi pass - 3 200


Markéta Reinischová: Chceme s Filipem Jankovičem dítě!


Od: Martina


Podzemlje - epizoda 62


Defender


Plynový kotel DAKON DS 22G - 2 500


Gymnastické řemínky na hrazdu zn. Reisport, vel. č. 2: 590


P: NooK Soundelirium THE 12.6


Qube SP26 ( XTA DP226 ) signal processor - 12 000


Narovnání,vylisování bankovek


Javorina Holubyho chata


Tinylab: Tlačítka


Levasan Maxx není gel na klouby, nýbrž hnus


RNS315 couvací kamera


Kde najdu GameInput Service ve win 10?


Redmi Note 11 Pro+ 5G (PISSARO)


MV3 Vermona, Klingenthal, NDR


Hradcany 30h fialova razena 11 1/2 11 3/4



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>