Rozbor úlohy
Zadanie úlohy je jednoducho definované, ale na optimálnu realizáciu je potrebné podrobne analyzovať požiadavky, tak aby výsledné zariadenie ich čo najlepšie spĺňalo.
Na obrázku 2-1 je bloková schéma, ktorá zobrazuje ako ma daný prístupový systém fungovať. Centrálnym prvkom je prístupový terminál, ktorý má za úlohu spracovávať požiadavky používateľa o prístup. K terminálu je pripojený RFID modul, ktorý prečíta sériové číslo karty. Ďalej je k nemu pripojená kamera, LCD displej a klávesnica. Terminál je pripojený cez TCP/IP sieť na server.
Užívateľ si pomocu RFID karty žiada systém o povolenie k vstupu. Terminál pošle žiadosť na server o overenie užívateľa. Server porovná číslo použitej RFID karty s databázou. Ak sa karta nachádza v databáze, odošle príkaz terminálu na zosnímanie obrazu z kamery. Zosnímaný obrázok sa pošle na server. Server vyhodnotí, či na prijatom obrázku sa nachádza tvár, ak áno tak odošle na terminál oznam, že daný užívateľ je autentifikovaný - overený.
Teoretické východiská
Operačné systémy reálneho času RTOS
Základným predpokladom RTOS je obsluha požiadavky aplikácie v reálnom čase. RTOS operačný systém poskytuje programátorovi väčšiu kontrolu nad procesmi a ich prioritami. Počet priorít, ktoré môžu byť pridelené procesom často prevyšujú počet spustených procesov.
Hlavnou charakteristikou RTOS systému je čas potrebný na prijatie a spracovanie požiadavky. Maximálny požadovaný čas odozvy systému na podnet nazývame hraničným časom. Ak operačný systém vo všeobecnosti obslúži požiadavky do hraničného času systém nazývame tzv. „mäkkým“ (soft)systémom. Ak systém v každom prípade dodrží hraničné časy pre obsluhu, tak tento systém sa nazýva tzv. „tvrdý“ (hard)systém.
Pri RTOS operačných systémoch nie je až tak dôležitý výkon ako časový determinizmus operácií. Typickými požadovanými vlastnosťami sú malé oneskorenie pri obsluhe prerušenia a minimálne oneskorenie pri prepínaní kontextu.
Pri návrhu systému existujú tieto základné prístupy pri prepínaní procesov:
- Časové zdieľanie - v pravidelný intervaloch sa prepínajú procesy
- Prepínanie na základe udalosti – prepnutie kontextu nastane iba v prípade, keď nastane udalosť a to len v prípade ak na túto udalosť čaká proces s rovnakou alebo vyššou prioritou ako aktuálne bežiaci proces
- Kombinovaný - využíva kombináciu dvoch predchádzajúcich spôsobov
FreeRTOS [1]
Zdrojový kód FreeRTOSu je poskytovaný zdarma pod modifikovanou licenciou GPL. Je použiteľný aj pre komerčné aplikácie bez nutnosti sprístupnenia kódu. Ponúka viac ako 20 oficiálnych portov pre rôzne mikrokontrolery. Každý z portov obsahuje konkrétne príklady, na ktorých sa dajú ľahko postaviť vlastné aplikácie.
FreeRTOS je ideálny do embedded systémov, ktoré potrebujú reagovať na podnety v reálnom čaše. Je vhodný hlavne na použitie s nízko výkonovými mikrokontrolerami, ktoré majú flash pamäť v rozmedzí 32kB až 512 kB a 16 kB až 256 kB RAM pamäte.
FreeRTOS je operačný systém (plánovač), ktorý poskytuje základne funkcionality, pomocou ktorých sa buduje požadovaná aplikácia. Dovoľuje, aby aplikácia bola organizovaná ako kolekcia na sebe nezávislých vlákien (procesov). Mikrokontroler, ktorý má iba jedno jadro môže v jednom časovom okamihu obsluhovať iba jediný proces (vlákno). Jadro operačného systému má za úlohu rozhodnúť, ktorý proces bude v ktorom časovom okamihu vykonávaný a to na základe priorít jednotlivých procesov.
Vlastnosti FreeRTOS:
- Pre-emptívne a kooperatívne plánovanie
- Flexibilne prideľovanie priorít
- Fronty správ (queues)
- Binárne semafory
- Rekurzívne semafory
- Viacstavové semafory
- Mutexy
- Dovoľuje priradiť funkciu, ktorá sa spustí vždy pri prepínaní kontextu
- Dovoľuje priradiť funkciu, ktorá sa spusti vždy pri nečinnosti systému
- Kontrola pretečenia stacku
- Makrá pre spätné sledovanie činnosti systému
- Možnosť zakúpenia komerčnej licencie pre systém
Aktuálne porty FreeRTOS-u:
- Altera
- Rodina procesorov: Nios II
- Podporované vývojové nástroje: Nios II IDE + GCC
- Atmel
- Procesory: SAM3 (Cortex M3), SAM7 (ARM7), SAM9 (ARM9), AT91 a AVR32 UC3
- Podporované vývojové nástroje: IAR, GCC, Keil, Rowley CrossWorks
- Energy Micro
- Podporované procesory: EFM32 (Cortex M3)
- Podporované vývojové nástroje: IAR, GCC, Kei
- Freescale
- Podporované procesory: Coldfire V2, Coldfire V1, ostatné Coldfire, HCS12
- PPC405Podporované vývojové nástroje: Codewarrior, GCC, Eclipse
- Fujitsu
- Podporované procesory: 32bit (napríklad MB91460) a 16bit (napríklad MB96340 16FX)
- Podporované vývojové nástroje: Softune
- Luminary Micro / Texas Instruments
- Podporované procesory: Všetky Luminary Micro Cortex-M3
- Podporované vývojové nástroje: Keil, IAR, Code Red, CodeSourcery GCC, Rowley CrossWorks
- Microchip
- Podporované procesory: PIC32, PIC24, dsPIC, (PIC18)
- Podporované vývojové nástroje: MPLAB C32, MPLAB C30, (MPLAB C18 and wizC)
- NEC
- Podporované procesory: V850 (32bit), 78K0R (16bit)
- Podporované vývojové nástroje: IAR
- NXP
- Podporované procesory: LPC1700 (Cortex M3), LPC2000 (ARM7)
- Podporované vývojové nástroje: GCC, Rowley CrossWorks, IAR, Keil, Red Suite, Eclipse
- Renesas
- Podporované procesory: SuperH, H8/S
- Podporované vývojové nástroje: GCC, HEW (High Performance Embedded Workbench)
- Silicon Labs [ex Cygnal]
- Podporované procesory: Super fast 8051.
- Podporované vývojové nástroje: SDCC
- ST
- Podporované procesory: STM32 (Cortex M3), STR7 (ARM7), STR9 (ARM9)
- Podporované vývojové nástroje: IAR, GCC, Keil, Rowley CrossWorks
- TI
- Podporované procesory: MSP430
- Podporované vývojové nástroje: Rowley CrossWorks, IAR, GCC
- Xilinx
- Podporované procesory: PPC405 running on a Virtex4 FPGA, PPC440 running on a Virtex5 FPGA, Microblaze
- Podporované vývojové nástroje: GCC
- x86
- Podporované procesory: x86 a Win32 simulátor
- Podporované vývojové nástroje: Open Watcom, Borland, Paradigm, Visual Studio pre WIN32 simulátor
- Ostatné – portované komunitou FreeRTOS
- MICO32, Blackfin, Jennic, eZ80, SuperH a ostatné. Tieto porty nemajú priamu podporu
uIP - TCP/IP zásobník [2]
uIP TCP/IP má za cieľ umožniť aj málo výkonným mikrokontrolerom (8 bitovým) komunikovať po TCP/IP sieťach. Veľkosť kódu sa pohybuje v rozmedzí niekoľko kilobajtov a veľkosť vyžadovanej RAM sa dá obmedziť na niekoľko sto bytov.
Úvod do TCP/IP
TCP/IP je momentálne najrozšírenejším globálnym komunikačným protokolom. TCP/IP protokol tvorí podriadený protokol, ktorý sa využíva napr. pri prenose internetových stránok, e-mailov, súborov a tiež pre komunikácii P2P.
Tradičná implementácia TCP/IP protokolu je náročná na veľkosť kódu aj na množstvo potrebnej RAM pamäte, aby mohla byť aplikovateľná na malé 8 alebo 16 bitové mikrokontrolery.
uIP je navrhnutý tak, aby obsahoval iba absolútne nevyhnutné funkcie, ktoré sú potrebne pre funkciu plnohodnotného TCP/IP zásobníka. uIP vie obsluhovať iba jediné sieťové rozhranie a obsahuje základnú sadu protokolov IP, ICMP, TCP a UDP. uIP je výhradne napísaný v jazyku C. Je navrhnutý tak aby špecifické funkcie, ktoré sú závislé na použitej architektúre boli ľahko implementovateľné.
Veľké množstvo TCP/IP implementácií pre malé systémy predpokladá, že tieto zariadenia budú výhradne komunikovať so zariadeniami, ktoré obsahujú plnú funkcionalitu TCP/IP napr. PC. Za tohto predpokladu TCP/IP implementácia v malých zariadeniach nemusí obsahovať všetky TCP/IP mechanizmy a funkcie. Nevýhodou malých zariadení je, že nemôžu komunikovať spolu, vzhľadom na ich obmedzené funkcie. uIP je však na navrhnutý tak, aby mohol komunikovať aj so zariadeniami s obmedzenou TCP/IP funkcionalitou. uIP je kompatibilný s RFC štandardmi.
TCP/IP komunikácia
Plný TCP/IP balíček obsahuje množstvo protokolov:
- Nízko úrovňové napr. ARP protokol, ktorý prekladá IP adresy na MAC adresy.
- Aplikačné protokoly, napríklad SMTP, ktorý je používaný na prenos e-mailov.
uIP je zameraný hlavne na strednú vrstvu TCP a IP. Protokoly vyššej vrstvy sú ponechané na samotné aplikácie. Nízko úrovňové protokoly zabezpečuje hardvér a firmware zariadenia, na ktorom je uIP implementované.
Formálne je TCP/IP popísaný viacerými RFC špecifikáciami, ktoré publikovala IEFT(Internet Engineering Task Force). Tieto štandardy môžme rozdeliť na dve základné kategórie. Tie, ktoré sa zaoberajú komunikáciou medzi host – host a tie, ktoré sa zaoberajú komunikáciou medzi aplikáciami.
V prípade uIP sú všetky RFC špecifikácie týkajúce sa komunikácie host – host dodržané. Z dôvodu redukcie veľkosti kódu, nie sú prítomné v uIP niektoré mechanizmy týkajúce sa rozhrania medzi uIP zásobníkom a aplikáciami.
Tabuľka 3-1 ISO OSI – TCP/IP model – uIP zásobní
Rozpoznávanie tváre
Pre ľudí je úplne prirodzené vedieť rozpoznávať rôzne objekty, rozlíšiť tvár od iných objektov a tak isto identifikovať osobu podľa tváre. Vo svete techniky tomu tak nie je. Proces rozpoznávania objektov resp. identifikácie osoby podľa tváre je komplikovaná záležitosť. Táto oblasť techniky sa začala dynamicky rozvíjať iba nedávno, vďaka vzrastajúcemu výkonu počítačov a rozvoju digitálnych videokamier a fotoaparátov.
Ako prvý krok pri identifikácii osoby podľa tváre je vedieť nájsť a rozlíšiť ju od iných objektov. Je veľa postupov ako to vykonať. Všetky postupy však majú spoločnú myšlienku, že tvár je objekt so špecifickými charakteristikami, ktoré treba určiť a podľa nich ju identifikovať. Napr. jednou z mnohých techník detekcie je využitie špecifickej farby kože. Táto technika je jednoduchá, ale veľmi chybová.
Knižnica Emgu CV
Emgu CV je voľne dostupná platforma, ktorá tvorí medzistupeň pre .NET a Intel OpenCV knižnicu určenú na interaktívne spracovanie obrazu. Emgu CV umožnuje využívať funkcie OpenCV vo všetkých jazykoch, ktoré sú kompatibilné s platformou .NET.
prebieha v cykle. Pri každom opakovaní sa nastaví iná mierka klasifikátora. Výsledok, či sa na obrázku nachádza objekt, nedostávame hneď po prvej zhode s klasifikátorom, ale až po kaskáde zhôd podriadených klasifikátorov.
Výber vhodných technických prostriedkov
Kamera ITM-C-328 JPEG
Je to kamera zo sériovým rozhraním, určená k pripojeniu k embedded zariadeniam. Dokáže pracovať ako video kamera alebo fotoaparát. Hlavnou výhodou tejto kamery je, že obsahuje kompresný modul JPEG.
Hlavné vlastnosti:
- Videokamera
- Statická kamera – fotoaparát
- Pripojenie k hostiteľským zariadeniam pomocou sériového rozhrania RS232/ TTL (max 115,2Kbdps)
- Rozlíšenie: VGA,QVGA,160x120, 80x20
- Možnosť nastavenia hĺbky farieb
- 2 ,4 , 8,12,16 bitová
RFID čítačka - CTU-RWD-M
Je určená na čítanie identifikačných kariet využívajúcich bezdrôtovú technológiu RFID.
Všeobecné vlastnosti:
- načítanie identifikačného čísla a jeho následne odoslanie cez sériové rozhranie
- výber rôznych typov sériového rozhrania:
- RS-TTL
- RS-232
- DALLAS 1 WIRE
- Wiegand
- Dva programovateľné vstupno/výstupné porty
- Integrovaná anténa
- Integrovaný bzučiak
- Dostupné konfiguračné a testovacie programy
Mikrokontrolér Coldfire V2 - MCF52233
Hlavný dôvod výberu tohto mikrokontroleru bol ten, že pri prvotnom vývoji aplikácie sa vyžívala vývojová doska M52233DEMO na ktorej bol tento mikrokontrolér osadený. Tento mikrokontrolér svojimi vlastnosťami spĺňa požiadavky kladené aplikáciou.
Základné vlastnosti mikrokontrolerá MCF52233, ktoré vyžaduje splnenie zadania:
- Dostatočný výkon:
- Taktovacia frekvencia 60MHz, výpočtový výkon 2.1MIPS
- Dostatočná veľkosť RAM: 32KB
- Dostatočná veľkosť FLASH: 256KB
- 3x UART univerzálne asynchrónne rozhranie
- Fast Ethernet Controller (FEC), fyzická vrstva je integrovaná v obvode (ePHY)
- Obvod reálneho času (RTC)
- Vonkajšie prerušenia
TBLCF BDM programátor
Je programátor a debugger s voľne dostupným zdrojovým kódom a schémami zapojenia. Programátor je určený pre mikrokontrolery Coldfire. Nevýhodou je malá prenosová rýchlosť a kompatibilita iba s Windows XP. Vo Windows 7 nefungoval ani po prekompilovaní ovládačov pre tento systém. Chyba sa vyskytuje pri úvodnej zmene konfigurácie USB zariadenia, kedy nereaguje, z čoho vyplýva, že pravdepodobne chyba bude vo firmvéri. Riešenie, ktoré obchádza problém pri systémoch Windows Vista/Windows 7 je použiť virtuálny stroj VMware a inštalovať Windows XP. Ďalšie riešenie je použiť voľne dostupný programátor: OSBDM JM60 www
Návrh a implementácia programového vybavenia
Zo softvérového hľadiska obsahuje aplikácia tri základné bloky:
- Blok softvéru, ktorý je tvorený nízkoúrovňovými funkciami tzv. ovládače. Táto časť softvéru je špeciálne napísaná na konkrétny hardvér.
- Blok softvéru, ktorý je tvorený funkciami nezávislými na konkrétnom hardvéry. Využíva podriadenú vrstvu ovládačov, ktoré zabezpečujú abstrakciu hardvéru. Tieto funkcie tvoria najdôležitejšiu časť aplikácie.
- Posledný blok je softvér pre PC.
Aplikácia pre mikrokontroler
Základ aplikácie tvorí operačný systém FreeRTOS, ktorý zabezpečuje jednoduchú inplementáciu paralelne bežiacich procesov. Každý proces predstavuje separátnu entitu v rámci systému. Každý proces vykonáva špecifickú úlohu a súčinnosť týchto procesov tvorí výslednú aplikáciu. Na obrázku 5-1 sú zobrané jednotlivé procesy a ich vzájomná súčinosť.
Obrázok 5-1 Bloková schéma súčinnosti procesov
Aplikácia pre PC
Úlohou tejto aplikácie je vytvárať databázový server, načítavať, analyzovať obrázky a následne povoliť alebo zamietnuť vstup.
Celá aplikácia je napísaná v jazyku C#, vo vývojom prostredí Visual Studio. Aplikácia je logicky rozdelená do tried podľa ich funkcií.
Databáza je tvorená troma navzájom prepojenými tabuľkami. Štruktúra tabuliek je zobrazená na obrázku 20.
Obrázok 5-2 Interná štruktúra databázy
Tabuľka Karty predstavuje zoznam všetkých kariet, ktoré sa nachádzajú v systéme a majú povolený vstup. Každá karta ma jediného vlastníka, ktorý je identifikovaný pomocou mena, priezviska, fotografie a jedinečného identifikačného čísla.
Tabuľka Prístup predstavuje zoznam všetkých povolených prístupov, ktorý systém umožnil. Tabuľka obsahuje dátum a čas kedy bol umožnený prístup, číslo karty, ktorej bol umožnený prístup a obrázok osoby, ktorej bol povolený vstup.
Tabuľka SpoluTab je iba pomocná tabuľka, ktorá v sebe spája dáta z predchádzajúcich dvoch tabuliek.
Ako databáza sa využíva MS ACCESS súbor, ktorý je pripojený do aplikácie cez OLE DB ovládač. Tento prístup je veľmi jednoduchý a nevyžaduje inštaláciu externej databázy. Nevýhoda je, že pri väčšom počte záznamov je už prístup do databázy podstatne pomalší. V takýchto prípadoch je nutné použiť externú databázu. Neskoršia implementácia externej databázy nepredstavuje problém pretože v aplikácií nie sú použité priame metódy vstupu do databázy, ale je využívaná trieda dataset, ktorá vytvára medzivrstvu. Pri zmene typu databázy stačí prekonfigurovať nastavenia triedy dataset. V samotnom kóde aplikácie sa nič nemení.
Komunikácia s prístupovým terminálom
Komunikácia aplikácie s prístupovým terminálom prebieha po TCP/IP sieťach. Pre tento typ komunikácie je najvhodnejšie používať TCP sokety. Windows poskytuje API rozhranie pre WinSock a tak isto aj C# ponúka jeho implementáciu. Po nadviazaní spojenia je vytvorený asynchrónny čítač a zapisovač. Dáta sú odosielané a prijímané v textovej podobe s použitím ASCII kódovania. Nasledujúce tabuľky zobrazujú v akom formáte sú prijímané a odosielané správy.
Stiahnutie snímky z prístupového terminálu
Obrázok z prístupového terminálu sa sťahuje cez HTTP protokol. V jazyku C# sa na tento účel využíva webklient trieda, ktorá umožňuje stiahnuť ľubovoľný súbor cez HTTP protokol. V prístupovom terminály je obrázok z kamery vždy prístupný ako súbor image.jpg.
Analýza snímky
Jednou z najdôležitejších častí programu je funkcia rozpoznania tváre na zosnímanom obrázok. Samotná implementácia softvéru je pomerne jednoduchá. Pre tento účel je použitá verejne dostupná knižnica EmguCV. Z tejto knižnice je použitá haar - kaskádová detekcia objektov. Ako referenčný vstupný súbor obrazcov, podľa ktorého sa zisťuje podobnosť objektov, je použitý súbor reprezentujúci charakteristické črty tváre človeka. Vstup funkcie je obrázok, na ktorom sa hľadajú ľudské tváre, výstup funkcie je počet nájdených tvárí a ich umiestnenie na obrázku.
Popis funkčnosti PC aplikácie
Po spustení aplikácie sa zobrazí úvodná obrazovka (obrázok 5-3). Po nadviazaní spojenia s prístupovým terminálom aplikácia čaká na prijatie čísla RFID karty. Po prijatí čísla karty, sa určí či daná karta má povolený vstup. Ak je karta platná, nasleduje zosnímanie obrazu používateľa. Zosnímaný obrázok sa vyhodnotí. Ak je na ňom zobrazená tvár, tak do databázy prístupov sa uloží nový záznam.
Pre pridávanie nových kariet do systému, sa použije mód „Nové karty“ v aplikácii a po prijatý čísla karty, ktorá nie je v databáze, sa otvorí formulár pre registráciu novej karty. Pri registrácii sa zadávajú údaje o vlastníkovi karty a nasníma sa referenčný obraz tváre.
- Menu
- Spojenie – Pripojenie a odpojenie PC aplikácie od prístupového terminálu
- Databáza
- Záznamy – zobrazenie databázy povolených vstupov
- Karty – zobrazenie zoznamu kariet a užívateľov
- Zobrazenie informácií o aktuálnom používateľovi
- Indikátor povolenia alebo zamietnutia vstupu
- Aktuálna snímka používateľa
- Referenčná snímka užívateľa
- Indikácia stavu pripojenia
- Mód aplikácie
- Normálny Mód
- Nové Karty – Pridávanie nových kariet do systému
Vývojové prostredie Eclipse
Ako základný vývojový prostriedok pre vývoj softvéru bolo použité integrované vývojové prostredie Eclipse. Toto prostredie patrí do skupiny tzv. open source. Prvá verzia bola vyvinutá firmou IBM, neskôr bol kód uvoľnení pod licenciou EPL.
Eclipse je vývojové prostredie určené hlavne pre vývoj Java aplikácií. Podpora pre ostatné programovacie jazyky je zabezpečená prostredníctvom pluginov.
Na to, aby sa dalo prostredie používať na vývoj aplikácie pre mikrokontroléry Coldfire, je potrebné nainštalovať plugin [7], ktorý je určený pre ladenie aplikácie cez BDM spojenie. Ďalej je treba inštalovať vývojový balík od firmy Code Soucery [8], ktorý obsahuje kompilátory, linker, debugger atď.
Vývojový balík CodeSourcery G++ Lite, je poskytovaný zdarma. Táto verzia neponúka žiadne integrované vývojové prostredie. V balíku sa nachádzajú iba konzolové programy, ktoré sa dajú jednoducho integrovať do prostredia ECLIPSE. Tým dostávame plnohodnotné vývojové prostredie, bez obmedzení kódu, ako je tomu pri použití vývojového prostredia CodeWarrior od firmy Freescale. Jediným obmedzením, ktoré CodeSourcery G++ Lite má, že táto freeverzia neumožňuje preniesť kód programu do mikrokontroleru.
Na programovanie (prenos kódu) mikrokontrolerov bol používaný externý program CFflasher, ktorý poskytuje firma Freescale zdarma.
Kompilácia projektu
Pri pridávaní a odoberaní súborov projektu a tiež pri potrebe zmeny nastavení kompilátora alebo linkera je potrebné rešpektovať skutočnosť, že hoci sa používa IDE Eclipse vývojové prostredie, ktoré ponúka možnosť autogenerovania makefile súboru, v tomto prípade sa musí súbor makefile upravovať ručne v koreňovom adresári projektu. Ďalším špecifikom je nutnosť ponechať úroveň optimalizácie kompilátora na najnižšej úrovni.
Záver
Zadanie úlohy kládlo veľké nároky na výsledné zariadenie. Riešenie sleduje čo najoptimálnejšie splnenie zadania, t.j. preferovať jednoduchosť riešenia pri zachovaní požadovanej funkčnosti a ceny riešenia.
Z hardvérového pohľadu úloha bola stredne náročná, keďže v prevažnej miere je zariadenie vytvorené z hotových modulov, ktorých funkčnosť je otestovaná pri výrobe.
Naopak z pohľadu ovládacieho softvéru je zadanie úlohy komplexné a vyžadovalo aplikovanie sofistikovaných softvérových technológií - napr. použitie operačného systému FreeRTOS, TCP/IP zásobník atď.
Ako najkritickejšia časť systému sa ukázala kamera a jej implementácia do už hotového softvéru. Najväčšie oneskorenia systému spôsobuje tento komponent - pomalá a nespoľahlivá funkcionalita kamery. Boli odskúšané rôzne prístupy ako zrýchliť načítavanie obrázku. Rozhodujúcim bolo zistenie, že kamera dokáže bez problémov komunikovať dvojnásobkom maximálnej rýchlosti ako udáva výrobca.
Použitím operačného systému FreeRTOS sa komplexnosť riešenia rozdelila na jednotlivé procesy, čo umožnilo rýchly vývoj a efektívne testovanie aplikácie.
Implementovanie rozpoznávania tváre na obrázkoch sa ukázalo byť vo všeobecnosti jednoduchšie, vzhľadom na existenciu špeciálnych knižníc pre spracovanie obrazu.
Prístupový terminál v konečnej podobe spĺňa zadanie úlohy a umožňuje ďalšie rozšírenie. Mikrokontroler má dostatok výkonu aj voľnej pamäte, aby aplikácia bola rozšíriteľná o ďalšie požadované funkcie.
Aplikácia na PC funguje podľa zadania. Spoľahlivo rozlišuje či sa nachádza na obrázku tvár. Ďalším krokom by mohlo byť implementovanie funkcionality o identifikáciu konkrétnej osoby. Takáto úprava by celý prístupový systém posunula do vyššej kategórie bezpečnostných zariadení (napr. na overovanie prístupu do zabezpečeného priestoru).
Použitá Literatúra
- [1] BARRY, Richard: Using the FreeRTOS Real Time Kernel. A Practical Guide. Real time Engineers Ltd. 2009.
- [2] DUNKELS, Adaml: The uIP Embedded TCP/IP Stack. The uIP 1.0 Reference Manual. SICS 2006.
- [3] LANÍČEK, Robert: ELEKTRONIKA obvody, součástky, děje. Ben 1998 Praha.
- [4] MANN, Burkhard: C pro mikrokontroléry. Ben Praha 2003.
- [5] MCF52235 ColdFire Integrated Microcontroller Reference Manual, Rev. 5 - In: http://www.freescale.com//files/32bit/doc/ref_manual/MCF52235RM.pdf
- [6] http://www.freertos.org
- [7] http://www.freertos.org/index.html?http://www.freertos.org/Eclipse.html
- [8] http://www.codesourcery.com/sgpp/lite_edition.html
- [9] http://cache.freescale.com//files/microcontrollers/doc/app_note/AN2940.pdf?fsrch=1
Príloha
Schéma zapojenia:
Ing. Martin Húdik
Odkazy
- Domovská stránka Freescale Semiconductor, Inc - http://www.freescale.cz
- Domovská stránka Freescale Technology Day v Žilině - http://www.ftd.uniza.sk/FTD/
- Domovská stránka Katedry výkonových elektronických systémů (KVES) Žilina - http://www.kves.uniza.sk
- Domovská stránka Žilinské univerzity - http://www.uniza.sk
- Domovská stránka Československé sekce IEEE - http://www.ieee.cz/
- Domovská stránka IEEE Industry Applications Society - http://ewh.ieee.org/soc/ias/
- Domovská stránka IEEE Industrial Electronics Society - http://ieee-ies.org/