Zde jsou ukázky mých prací
Vánoční stromeček
Aplikace je psaná v Assembleru na procesoru ATMEL 89c2051.
Po spuštění bliká stromeček v různých modech: nejprve se rozsvítí a zhasnou všechny LED, pak blikají vždy tři LED, pak se roszvicují jedna po druhé a nakonec stromeček několikrát zabliká.
SW není nijak složitý a je možné doplnit další mod blikání a nebo dodat nějakou melodii. Potom by se upravoval HW.
Trochu složitější je "drátařina" přivést vždy k LED správný výstup, aby byl efektní i vizuální dojem.
Ukázka kodu
zapojení
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Mapa
Tato aplikace byla vytořena jako školní ukázková mapa s využitím plánu města Litoměřice. Na vybraná místa se vložily LED a po straně byly přidělány tlačítka
s popisem. Po volbě hledané ulice či objektu se rozsvítila LED dioda, kde se hledaný objekt nachází. Byly vytvořeny dva návrhy, v jednom se zhasla dioda,
která označovala místo kde se nacházíte, v druhém případě dioda svítila stále. Dále bylo možné spustit tzv.
Prohledávání, kdy se postupně
rozvěcovala a zhasínala všechna vybraná místa na mapě.
- Popis kodu
na začátku programu jsou vybrané piny, které je možné si pojmenovat např
pin_nam bit p1.0 ;namesti je volba programátora jak si piny pojmenuje
Na vstupech procesoru je nastavena log.1 a program se ptá zda je na vstupu log.1. pokud ano tak provede skok na
meur
namesti: jb pin_nam,meur ;je-li pin_nam log.1 provede se skok na meur
clr pin_txdbit ;pokud je pin_nam log.0 provádí se následující příkazy
call VypniLed
clr p0.0
setb pin_txdbit
další bod mapy
meur: jb pin_meur,uradprace
clr pin_txdbit
call VypniLed
clr p0.1
setb pin_txdbit
Tedy v tomto případě je logika otočená, pokud je log.1 led nesvítí a pokud je log.0 led se rozsvíti. Z praxe se mi osvědčilo reagovat na log.0 -značí sestupná hrana,
než načítat log.1.tedy vzestupná hrana, ale programátor si může sám zvolit jak bude
vstupní pin reagovat.
Pro aplikaci jsem zvolil 2 procesory ATMEL 89C51 na každý procesor jsou přivedeny tlačítka a každý procesor spíná určité body na mapě, aby nedocházelo ke kolizi mezi nimi, vždy jeden
přebíral tzv. "vedoucí ulohu" a druhému oznamoval, aby čekal na povolení.
Zde je ukázka jak komunikují procesory mezi sebou.
pin_rxdbit bit 3.5 ;zhasne diody a pracuje atmel2
pin_txdbit bit p3.6
workatm1: jb pin_rxdbit, atmel1_2
call VypniLed
jmp workatm1
pin_allmista bit p3.7 ;rozsviti vsechna mista
pin_svitmista1 bit p3.4 ; provede vypnuti diod a vsechny blikaj
Ukázka kodu
Ukázka kodu
zapojení
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Program - řízení bytu na AXON S105
Program kontroluje teplotu bytu, kontroluje vstup do bytu spouští kameru nebo alarm, provádí zalití květin na základě
časového sepnutí a kontroluje otevření a zavření oken.
Společné funkce
Zavření a otevření oken v zimním období, pokud se otevřou v zimním období tak se topení po 20min.
zavře, je možné tuto funkci zablokovat vypnutím "Zavřeni oken".
Kritická teplota, pokud dosáhne teplota v pokoji 8 stupňů, tak se automaticky spustí topení a dokud
není dosažené teploty 12 stupňů tak systém topí. Po dosažení dané teploty se systém vypne. Pokud je jiný režim aktivní
tak kritická teplota blokuje všechny ostatní režimy.
Maximálni teplota, pokud se dosáhne max. teploty 29 stupňů, tak systém vypne topení a dokud není
teplota 22 stupňů, tak blokuje všechny režimy. Maximální teplota se uplatní především v režimu MANUAL,
kdy uživatel nevypne topení.
Zalévání, na bázi procesru ATMEL je vytvořené zalévání květin, kdy v nastaveném čase se spustí zalévání
a při naplnění nádobky se vypne.
Kontrola vstupu, při otevření dveří se sepne kamera, tu je možné blokovat buď z PC nebo dalším způsobem.
Vždy je nutné mít min. dva body blokování alarmu. Další možnosti vyhlášení alarmu jsou např. vysílání SMS majiteli,
nebo na policii.
Program řízení bytu má tyto režimy:
MANUAL - v tomto režimu si majitel fukce nastavuje sám,
Uživatel si může nastavit regulaci teploty, kdy zadá teplotu maximální, při dosaženi teploty se
ventil topení zavře a po dosažení teploty minimální, ta se vypočte, se ventil otevře a znovu topí. Dále si uživatel
může zapnout topení bez kontroly vypnutí, pokud teplota překočí max. teplotu je blokována, tak jak
již bylo uvedeno. Může topení úplně vypnout a bude se provádět kontrola pouze na teplotu kritickou. Všechny
akce kolem teplot se provedou pouze v zimních měsících. V případě že by byla zima v letním období, tak si
uživatel spustí režim "letni topeni".
Dále má možnost nastavit režim větrání, ten je povolen pouze v letních měsících.
Větrání má tři varianty nastavení.
1. režim je nastaven tak kdy se zapíná větrání při dané teplotě v programu. Při dosažení teploty
se větrání zapne a vypíná se při doažení min. teploty nebo automaticky ve 20:00.
2. režim je spuštění větrání ihned. Větrání se zapne a stále větrá není žádná omezující teplota. Větráni
se vypíná ve 20:00 automaticky
3. režim si nastavuje teplotu uživatel, při dosažení zadané teploty se větrání zapne
a při dosažení min. teploty se větrání vypne a celý cyklus se opakuje. Max. teplotu si uživatel může měnit.
Větráni se spouští v 10:00 a vypíná ve 20:00, to je nastavené v programu.
AUTOMATICKÉ - řízení se provádí na základě času, teploty, reakci na okna a kritické teploty
V režimu AUTOMAT se ventil topení otevírá v danou hodinu a zavírá v danou hodinu, hodiny spuštění a vypnutí topení jsou zavedeny v programu. Jiný režim nastavení spouštění topení je pro všední dny
a jiný režim je o víkendu. Opět hodnoty teplot jsou v programu a časy také. V programu je nastavena max. teplota pro AUTOMAT a pokud je reálná teplota vyšší než max.teplota tak se topení neotevře.
Na okna a kritickou teplotu samozřejmě reaguje režim AUTOMAT.
ÚSPORNÝ - řízení se provádí na základě času, teploty, reakci na okna a kritické teploty, tedy jako u režimu AUTOMAT
Při nastvení ÚSPORA se otevře topení jen jednou denně, a teplota max. je nastavena na nižší hodnotu než u režimu AUTOMAT.
Ostani funkce reagují stejně jako v režimu AUTOMAT.
Tato aplikace řízení bytu je navržena na malý panelákový byt, kde nejsou rozděleny pokoje. Jde o to že PLC má jen 4 vstupy a 4 výstupy, proto
se systém jeví jednoduchý. Pro některé aplikace je dodělán HW a SW na mikroprocesorech ATMEL.
Zde je vlastně použito přísloví:
"Za málo peněz, hodně muziky."
Při řízení každého pokoje by bylo potřeba použít jiný typ PLC např. NEURON M203.
Zde je ukázka zapojení pro zavření a otevírání oken.
zapojení otevření oken
Cena systemu
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
stránky konstrukce
Další strana >>