Digitális technika II. kurzus
Digitális technika II.
A segédanyagot összeállította: Göllei Attila
2008.
©GAR
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
1
Digitális technika II. kurzus Alapfogalmak Gépesítés: az emberi fizikai munkát próbálja helyettesíteni (monotóniatűrése, pontossága, minősége jobb, mint az emberé) Automatizálás: az ember szellemi munkáját könnyíti, ami a gépek gyártási és technológiai folyamatainak kapcsolásához, koordinálásához, beállításához, irányításához és ellenőrzéséhez szükséges. feltétel: megfelelő műszerezés (mérés - érzékelők, szenzorok) - bár az automatizált gép gondolkodni nem tud, az ezekből kapott információ alapján döntéseket hoz. primer (elsődleges) műszerezés: a technológiáról gyűjtünk adatokat (pozíció, hőmérséklet, stb..) - csak azon folyamatok automatizálhatók, ahol bizonyos paramétereket meg tudunk mérni - a szenzorok sok esetben a megmunkált anyagot vizsgálják - kézzel összeszerelt eszközöknél is ellenőrizhet/felügyelhet/segíthet a gép Az irányítástechnika tárgyát képezik azok a műszaki eszközök, módszerek, eljárások és műveletek, amelyek segítségével az ember a gépesített folyamatok irányítása alól felszabadítható. Irányítás: olyan művelet, amely a gépesített műszaki folyamatba beavatkozik, annak létrehozása, fenntartása, tervszerű lefolyásának biztosítása, megváltoztatása vagy megszüntetése céljából. Az irányítási művelet: nagy energiaszintű műveleteket befolyásol kis energiaszintű műveletekkel (pl. processzorok, mikrovezérlők). funkciói egymáshoz kapcsolódó láncot képeznek (hatáslánc): - értesülésszerzés (primer műszerezés) - feldolgozás (a logikai rendszer számára egységes tartományú és szintű villamos jelekké kell alakítani az információt) - ítéletalkotás (a bejövő információ alapján) - rendelkezés (a hozott döntés alapján – parancs) /villamos/ beavatkozás /nem villamos/ Jel: valamely állapothatározó vagy mennyiség minden olyan értéke vagy változása, amelyet egy egyértelműen hozzárendelt információ megszerzésére, feldolgozására, tárolására, és továbbítására használunk A jel a hatásláncon halad végig; elsődleges jellemzője az információtartalma, energiaszintje másodlagos (ezért kell a feldolgozás). Irányítási szerv:a szervezettel együttműködő szerkezeti egység Tag: az irányítási rendszer tetszés szerint kiválasztott részének jelformáló tulajdonságait képviseli (absztrakció – modellezéshez kell, nem feltétlenül fizikai) bemenő és kimenő jel – a bemenő jel hatásásra működik, a kimenő jel a működésének eredménye Irányítástechnika - szabályozástechnika - mindig van visszacsatolás, a zavaró tényezők kiküszöbölhetők - vezérléstechnika - nyitott hatáslánc - ellenőrző jel nincs, csak vezérlőjel; a vazérelt berendezésről nincs visszacsatolás - csak a tervezésnél figyelembe vett zavaró tényezők küszöbölhetők ki - eredménye diszkrét digitális jel
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
2
Digitális technika II. kurzus
Kezelő
Beviteli szerv
Logikai szerv
Kimeneti szerv
Vezérelt berendezés
Járulékos szerv visszacsatolás Digitális jel: kétállapotú jel, csak diszkrét értéket vehet fel (0/1) Önműködő vezérlés típusai: - követővezérlés - egy állapot bekövetkezésével a gép átléphet egy következő állapotba - különböző állapotok egymásutánisága - programvezérlés - van egy meghatározott program, ami szerint működnie kell a gépnek (programterv) - időtervvezérlés - az idő az elsődleges paraméter (pl. hőkezelsnél) - lefutóvezérlés - követővezérléshez hasonló, de nem feltétel az előző állapot
Segédenergiás vezérlések
Villamos
Pneumatikus
Hidraulikus
Előny - gyors - kis méret, kis súly - jelátvitel korlátlan távolságra megoldható a jelek könnyen kombinálhatók (műveletvégzés egyszerű) - rázkódásra nem érzékeny - költséghatékony - könnyen elérhető - nem melegszik, tűz- és robbanásbiztos - alacsony karbantartási költség - segédanyag viszonylag könnyen előállítható - a levegő tiszta, kiengedhető a szabadba - nagy üzembiztonság - rázásra, sugárzásra nem érzékeny - akár 30000 N erőkifejtés - nagy erőhatásra képes (a rendszerben lévő olaj 150 – 200 bar-on működik) - kezelése, karbantartása egyszerű - a munkafolyadékként használt olaj egyben kenőanyag is gyors jeltovábbítás (olaj összenyomhatatlansága miatt)
Hátrány - működés közben melegedhet - tűz- és robbanásveszélyes - védelem hiányában túlterhelésre érzékeny - villamos zavarokra, radioaktív sugárzásra érzékeny - javítása szakértelmet igényel - érintésvédelem szükséges - zajos működés - maximum 300m-re továbbítható a jel - villamos rendszerhez képest lassú - bonyolult csőhálózat - táplevegő tisztaságára érzékeny (por, páratartalom, olaj, …) – tisztítani kell - hidraulikacső drága - nagy méret az olajvezeték érzékeny a tömítetlenségre - tűzveszélyes - az olajat cserélni kell, ill. vissza kell vezetni a kompresszorba
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
3
Digitális technika II. kurzus Ezek a rendszerek kombinálhatók (elektro-pneumatikus, elektro-hidraulikus, pneumo-hidraulikus) -> az egyes rendszerek előnyei kihasználhatók. A vezérléstechnikai elemekkel szemben támasztott követelmények: Üzembiztonság: nagyszámú elem működik együtt – egy alkatrész meghibásodása az egész berendezés hibás működését okozhatja Megbízhatóság: az a valószínűségi, amely megmutatja, hogy egy bizonyos alkatrész mennyi ideig működik megbízhatóan. Élettartam: azoknál a készülékeknél fontos, amelyek működés közben üzemszerű elhasználódásnak van kitéve (pl. mozgó alkatrészben egy csapágy) Ha tudunk következtetni az élettartamra, hatékonyabb a munka: az adott alkatrész meghibásodása előtt kerül kicserélésre (pl. csapágyhőmérséklet, csapágyzaj mérésével következtethetünk annak állapotára). Nehézüzemi körülmény: fokozott nedvesség, por- és korrozív közegben üzemelő készülékeknél probléma léphet fel -> megfelelő tokozással kiküszöbölhető a károsodás Magas hőmérséklet és korrózió kiküszöbölésére szellőztetést alkalmazunk (tiszta levegő) -> túlnyomásos szellőztetés Védettségi módok: a készüléket milyen módon kell a külső hatásoktól védeni - MSZ 806/1-76 rögzíti IP XY: X – berendezés védettsége szilárd idegen test behatása ellen / kezelő személyzet védelme Y – berendezés védettsége folyadék behatása ellen X: 0-6 0 - nincs védettség 1 - nagyméretű testek behatása elleni védettség (emberi test nagy felülete) - balesetből vagy figyelmetlenségből történő érintés szembeni védettség – de szándékos érintés ellen nincs védettség 2 - közepes méretű testek behatása elleni védettség (ujjak ellen) 3 - kisméretű testek behatása elleni védettség (2,5 mm-nél vastagabb testek ellen – szerszámok, huzalok) 4 - kisméretű testek behatása elleni védettség (1 mm-nél vastagabb testek ellen) 5 - működésre káros méretű por behatása elleni védettség (személyzettel szembeni teljes védettség) 6 - por behatása elleni védettség Y: 0-8 0 - nincs védettség 1 - vízcseppek elleni védettség (függőlegesen csepegő víz) 2 - vízcseppek elleni védettség, ha az esési szög a függőlegestől 15°-kal eltérő bármely irányban 3 - esővel szembeni védettség, ha az esési szög a függőlegestől 60°-kal eltérő bármely irányban 4 - bármely irányból fröcskölt folyadék ellen 5 - vízsugárral szembeni védettség: bármely irányból sugárral 6 - hajó fedélzetén található körülményekkel szembeni védettség – felcsapó hullámok ellen 7 - vízbemerítettség elleni védettség (készülék teteje és vízfelszín közötti távolság max 15 cm) 8 - tartós víznyomás elleni védettség Üzemi körülményeknél a legkomolyabb védettség az IP65-ös! Sujtólég és robbanás elleni védelem: (bányák, élelmiszeripar, vegyipar…) Koncentrációtól függ a robbanásveszély Védekezés: - nyomásálló tokozás: a tokozás elnyeli a robbanási energiát - lemezes tokozás: a lemezek a robbanási gázt lehűtik, így az további robbanást nem okoz - szellőzés biztosítva van - túlnyomásos szellőztetés: tiszta levegővel való szellőztetés - belső nyomás nagyobb, mint a külső (nem nagy nyomás) - olaj alatti védelem: szigetel, hűt - túlnyomás alatti védelem: a készüléket egy dobozba helyezik, majd a dobozban nagyobb nyomást biztosítanak, így kívülről befelé nem megy a levegő Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
4
Digitális technika II. kurzus - gyújtó szikra elleni védelem: (bizonyítvány szükséges) a konstrukció kialakítása olyan, hogy a keletkező szikra energiája kevés az adott légkör belobbanásához szükséges energiánál - robbanásbiztos tápegység - üresjárási feszültsége és rövidzárási árama korlátozva van - Zenner-gát:
- galvanikus leválasztás – idegen feszültség behatása ellen Robbanásbiztos tér
tápegység
Robbanásveszélyes tér
Leválasztó egység /zener-gát
Pt100
Robbanásveszélyes tér műszerezésének feltétele: - megfelelő minősítés megszerzése szabványok alapján, csak olyan berendezést lehet installálni, ami megfelel a szabványoknak Robbanásveszélyes térben nem lehet vezetéket toldani Kapacitásban és induktivitásban korlátot kell szabni Vezérléstechnikai szervek - logikai szervek - bemeneti szervek érzékelők - nyomásmérő - érzékelő felület szempontjából lehet: membrán – ennek anyagától függ, hogy milyen közegben alkalmazható (gumi, réz, nemesfém, saválló), a felület mögött van az érzékelő - abszolút (tényleges) és relatív nyomás is mérhető - ma már főleg félvezető alapú nyomásérzékelőket használunk - hőmérsékletmérés higanyostól kezdve félvezetőkig sokféle előfordul – félvezetők hátránya, hogy ~125°C felet nem használhatók - Pt100, Pt1000 ellenállás-hőmérők – platinahuzalból; 0°C-on 100/1000 ohm ellenállás, 100°Cos tartományban ~137.5 ohm; 400-500 °C-ig használhatók - speciális hőmérők – kontakthőmérők – két fém érintkezik -> kontaktpotenciál hőmérsékletfüggő; 1000-1200°C körüli tartományban használató - magas hőmérsékleten infravörös hőmérő, színképelemzés – nincs kontaktus a mért anyaggal - elmozdulás / elfordulás mérők -> pozíció érzékelése - mágneses, optikai, reflexiós, lineáris és körforgás érzékelők, centrifugál kapcsolók Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
5
Digitális technika II. kurzus - szintérzékelő – magasság / szint - pl. tartályokban lévő folyadék szintjének a mérésére – tartalomtól függ az érzékelő típusa (víz, üzemanyag, oldószer…) - mágneses - lehet kapacitív (pl. egyik fegyverzet egy fém, a másik a víz, a szigetelés pedig egy cső) - ultrahangos szintmérő – a közeg tulajdonságainak ismeretében és a visszaverődő jelből (impulzusok) meghatározható a mélység, geometriai adatok alapján térfogat is számolható - úszó szintkapcsoló (pl. búvárszivattyúnál) - vízszintes pozícióban kikapcsol - pozíciószenzorok (közelség/távolság) - kapacitív, induktív, optikai parancsadó szervek (kezelőtől közvetít információt) - nyomógombok / kapcsolók - monostabil (egy stabil állapota van, nyomásra nyit vagy zár) - bistabil (két stabil állapota van) prell jelenség – nyomógomb megnyomásakor a kontaktusfelületek egyenetlensége miatt impulzussorozat indulhat meg a végleges kapcsolás előtt -> prell-mentesítés: RS flip-flop, Schmitt-trigger, szoftver, mikrokapcsoló előfeszített rugó van benne, ami miatt gyorsan átbillen - fóliatasztatúra – ellenálló (pl. szennyeződésekkel, vízzel szemben), könnyen előállítható, viszont hőre lágyul
- kimeneti szervek - a logikai szerv és a technológia között (a logikai szerv kisáramú jeleit közvetíti a technológiára) - tranzisztor – galvanikus kapcsolat (leválasztásra nem alkalmas); előny: nagy áramerősítés open collector / totempole megoldás
FET (field-effect transistor) IGBT (insulated-gate bipolar transistor) – nagy áramú, nagy feszültségű, nagy sebességű - galvanikus leválasztás: - transzformátor - optocsatoló: két oldala között galvanikus leválasztást biztosít, mivel fénnyel viszi át az információt; sebesség: néhány kHz; nemlineáris -> analóg jelátvitelre nem igazán alkalmas (de létezik lineáris karakterisztikájú optocsatoló); 2,5-5V-ig szigetel
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
6
Digitális technika II. kurzus
- relé - ha az elektromágnesen (egyenáramú vagy váltóáramú) áram indul, akkor felmágneseződik és egy fémlapot vonz magához, ami valamilyen kapcsolót mozgat
- előnye: galvanikus leválasztást biztosít - mechanikus felépítés miatt lomha jellemzők: - élettartam (105 – 107 kapcsolás) - rugónyomás - átmeneti ellenállás (pogácsák között, működés közben: 10-6 – 100 mΩ) - elektromos terhelhetőség (mekkora feszültség vagy áram kapcsolható rá - nem érdemes túllépni) - érintkezővel kapcsolható maximális teljesítmény - tekercs névleges feszültsége vagy árama - érintkezők távolsága mm-ben - érintkezők típusa és darabszáma időbeni karakterisztikája: - kisméretűek gyorsabbak - nagyméretűek lomhábbak
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
7
Digitális technika II. kurzus
Morse – érintkezős relékkel logikai hálózatokat lehet tervezni. A relék nagyon elterjedtek sokoldalúságuk miatt. Általában tokozva vannak a porosodás miatt; vannak ferromágneses tokozások is. reed relé: nincs tekercs, üveg burkolatban vannak az érintkezők - mágneses tér érzékelésére alkalmas - vigyázni kell túláram esetén, mert ha összeégnek az érintkezői, akkor nem lehet javítani - jól ellenáll a környezeti hatásoknak - nem túl gyors, kis áramot kapcsol
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
8
Digitális technika II. kurzus
- félvezetős kapcsolók - tirisztor - két állapot: a tirisztor begyújt, ha a gate-re feszültséget kapcsolunk, az anód – katód részen áram kell, hogy folyjék; kikapcsol, ha az áram az anód – katód körben egy bizonyos érték alá csökken - egyenirányít - nagy áramokat, nagy feszültségeket lehet vele kapcsolni - disszipácó viszonylag alacsony kicsi áramon, nagy áramoknál melegszik - nem választ le galvanikusan
- triac (ötrétegű) - két irányban képes vezetni - egy vezérlőelektróda hátrány: nagy impulzusokra magától „begyullad” (tirisztorra is igaz)
- szilárdtest relé (SSTR – solid state relay) - nem tartalmaz mozgó alkatrészt - bemeneten optocsatolós + dióda + FET ellenállásal, kimeneten triak - túláramra vigyázni kell, mivel nem lehet biztosítékkal megvédeni, csak speciális védelmi áramkörrel, ami viszonylag drága - hátránya: nem lehet javítani - speciális relék Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
9
Digitális technika II. kurzus - feszültségrelé (feszültsévezérelt – túlfeszültség ellen véd) - áramrelé (túláram ellen véd) - emlékező/ejtőrelé – öntartású ikerrelé, áramszünet esetén is „emlékezik” - számlálórelé - polarizált relé – csak megfelelő polaritásra kapcsol be - időrelé (időzített húzás/ejtés) - mágneses kapcsoló/kontaktor – nagyobb áramok, nagyfeszültségek, ívoltás - öntartó relé - járulékos szervek - információt szolgáltat a kezelő felé - hangjelzők/fényjelzők - izzólámpa – hátrány: sok energiát fogyaszt, korlátozott élettartam - LED (fényemittáló dióda) - egyenirányít - keveset fogyaszt (1,5-2V nyitófeszültség) - hosszú élettartamú, kis teljesítményű - numerikus kijelzők - 7 szegmenses
- 16 szegmenses (alfanumerikus)
-pontmátrix - LCD kijelzők (liquid crystal display)
1 – függőleges polárszűrő 2,4 – elektródák 3 - folyadékkristály 5 – vízszintes polárszűrő 6 – fényvisszaverő vagy fénykibocsátó réteg Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
10
Digitális technika II. kurzus Kikapcsolt állapotban a fény nem tud áthaladni a kettős polárszűrőn, tehát nem látunk semmit a kijelzőn. Ha az elektródákra feszültséget kapcsolunk, az adott helyen a folyadékkristály átrendeződik. Az első szűrőn polarizált fény síkját a
folyadékkristály molekulái elforgatják, így az át tud haladni a második szűrőn is és a megjeleníteni kívánt információ láthatóvá válik. Az elektolízis elkerülése végett csak váltakozóáramról működtetjük. /- Glimm-lámpa - két lemez egymás mellett, gázban - nem ég ki, keveset fogyaszt - Nixie-cső: - gázzal (jellemzően neonnal) töltött cső, számok kijelzésére alkalmas - a számok az adott katód (szám) és az anódra adott feszültséggel jeleníthetők meg
Energiaforrások - analóg üzemű tápegység (tiszta jelet ad, de robusztus méret) - kapcsoló üzemű tápegység - transzformátor mérete kisebb -> kisebb a tápegység - nagyobb frekvencián működhet - 90% feletti hatásfok - kimeneti jelalak nem „szép” tápellátásnál fontos szempont az érintésvédelem φ-relé - érintésvédelmi relé - egyfázisú / háromfázisú - a nullvezető és a fázisvezetők áramát figyeli, 30mA különbségnél már leold Számrendszerek és kódrendszerek: Valamely N szám (numerikus) az R alapú (radixú) számrendszerben deffiníciószerűen: n −1
NR=
∑A
k =− h
k
* Rk
Fontosabb számrendszerek: bináris (kettes – 0,1), oktális(nyolcas - 0-7, decimális (tízes - 0-9), hexadecimális (tizenhatos - 0-9, a-f)
régen PLC-knél használták),
A digitális technikában a bináris számrendszer kiemelt jelentőségű. A bináris számrendszer egy-egy helyi értéke egy bit információt jelent. Eszerint egy 4 bites bináris szám egy 4 helyi értékű bináris számot jelent. A bináris szám legnagyobb súlyú bitjének helyét MSB-vel (Most Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
11
Digitális technika II. kurzus Significant Bit), a legkisebb helyi értékű bitjét LSB-vel (Least Significant Bit) jelölik: 27 20 1011001 ↑ ↑ MSB LSB Számkonverzió alatt valamely R1 alapú számrendszerben megadott szám átszámítását értjük egy R2 alapú számrendszerbe. Decimális-Bináris konverzió: (D → B) Az adott decimális szám egész részét elosztjuk 2-vel, majd a kapott eredményt újból és újból elosztjuk 2-vel. Az eredményt a szám alá, a maradékot pedig a szám jobb oldalára húzott vonal mellé írjuk. Az osztást addig folytatjuk, amíg 0-t nem kapunk eredményül. A maradékot alulról fölfelé olvasva az adott szám egész részének bináris megfelelőjét kapjuk. Az adott decimális szám tört részének bináris megfelelőjét ismételt kétszerezéssel kapjuk. A tizedesvessző helyén húzott vonal bal oldalára 0-t írunk, ha a kétszerezéssel kapott erdmény 1-nél kisebb; és 1-et, ha nagyobb. Az utóbbi estben következő kétszerezés csak a szám tört részére vonatkozik. Az eljárást addig folytatjuk, amíg a tizedesvessző jobb oldalán csupa 0-s decimális jegyet nem kapunk. A leolvasás felülről lefelé történik. Pl.: 497,351562510 497 1 ← 1 0, 3515625 248 0 ← 2 0 7031250 ← 1/2 124 0 ← 4 1 4062500 ← 1/4 62 0 ← 8 0 8125000 ← 1/8 31 1 ← 16 1 6250000 ← 1/16 15 1 ← 32 1 2500000 ← 1/32 7 1 ← 64 0 5000000 ← 1/64 3 1 ← 128 1 0000000 ← 1/128 1 1 ← 256 0 Tehát: 497,3515625d → 111110001,0101101b Bináris-Decimális konverzió: (B → D) A bináris-decimális konverzió legegyszerűbben a definíciós képlet alkalmazásával végezhető el. Bináris-Oktális konverzió: (B → O) A bináris számjegyet a bináris vesszőtől jobbra és balra 3-as csoportokra osztjuk, s az így kapott triádok adják az oktális szám egy-egy helyi értékét. 7 6 1 111│110│001 = 761 421 421 421 Bináris-Hexadecimális konverzió: (B → H) A bináris és a hexadecimális számrendszer radixai közötti kapcsolat révén ez a konverzió a B → O átalakításhoz hasonlóan végezhető el. A bináris szám számjegyeit a bináris vesszőtől indulva jobbra és balra négyes csoportokra (tetrádokra) osztjuk, majd ezen tetrádokat hexadecimális számokká alakítjuk. 1 F 1 1│1111│0001 = 1F1 1 8421 8421 Komplemens számok: Komplemens számon kiegészítő számot értünk. A leggyakrabban használt komplemens típusok és képzéseik: Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
12
Digitális technika II. kurzus 10-es komplemens: NK10 = 10n-N 2-es komplemens: NK2 = 2n-N 9-es komplemens: NK9 = 10n-1-N 1-es komplemens: NK1 = 2n-1-N Egyes komplemens: Az aritmetikai műveletek végzése miatt fontosak a kettes számrendszerbeli komplemensek. - valamely pozitív bináris szám 1-es komplemensét a bináris helyi érték 1 → 0 ill. 0 → 1 cseréjével kapjuk (a bináris számjegyeket tagonként invertáljuk) Kettes komplemens: Az eredeti számot a kettes számrendszerbeli ’kerek’ számra egészíti ki. Soros algoritmussal: az adott pozitív egész szám (N) legkisebb helyiértéke felől, a legnagyobb felél haladva a nullákat és az első 1-es jegyet is változatlanul hagyjuk, de az összes többi helyiértéken invertálást végzünk. Párhuzamos algoritmussal: első lépésben előállítjuk az adott szám (N) egyes komplemensét (NK1), majd ehhez hozzáadunk egyet: NK2 = NK1+1 Bináris számábrázolás digitális berendezésekben: A nagyságrend ábrázolására a fixpontos és a lebegőpontos ábrázolásmód terjedt el. Fixpontos számábrázolás: A fixpontos ábrázolás esetén a tizedesvessző a számot tartalmazó regiszterben előzetes megállapodás szerint rögzített helyen, rendszerint az első értékes jegy előtt van, vagyis minden szám csak 1-nél kisebb lehet. Lebegőpontos számábrázolás: Lebegőpontos ábrázolásmód esetén a regiszter tartalmazza a szám normalizált értékét, mely a fixpontoshoz hasonlóan, valamilyen 1-nél kisebb szám ezt követően tartalmazza a szorzó 10 ill. 2 hatványkitevőjének előjel bitjét és a hatványkitevő értékét. Előjel ábrázolása: ’0’ az előjelbit → pozitív ’1’ az előjelbit → negatív Kódrendszerek: Alapfogalmak: - Kód: két szimbólumhalmaz egyértelmű egymáshoz rendelésének rendszere - Kódolás: a szimbólumok / szimbólumhalmazok egymáshoz rendelése meghatározott szempontok szerint (két szimbólumhalmaz egyértelmű egymáshoz rendelésének rendszere - Dekódolás: a kódolás ellentétes művelete – visszatérés az eredeti halmazra - Jelkészlet: azon jelek összessége, amelyeket a kódszavak felhasználásához alkalmaznak, meghatározott szabályok szerint - Kódszó: a jelkészlet elemeiből meghatározott szabályok szerint felépített értelmes üzenetet jelentő egybefüggő jelsorozat - Kódszó készlet: a kódolásra meghatározott szabályok szerint felhasználható egybefüggő kódszavak összessége - Tiltott kódszó: olyan kódszavak, amelyek képzési szabályok szerint képezhetőek, de nem alkalmazhatók az adott kódkészletben - Bit: az információ egysége - Redundancia: valamely üzenetforrás ki nem használt információtartalma (hátránya: a ténylegesen szükséges adatnál többet kell átvinni - Hamming-távolság: egy kódszóban hány bitet kell az ellenkezőjére változtatni, hogy egy másik érvényes kódszót kapjunk - egy kódrendszer Hamming-távolsága: a kódszó készlet elemei között észlelt legkisebb Hamming távolság Titkosítás (kriptológia) - kriptográfia: a titkosító algoritmikus módszerekkel foglalkozik Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
13
Digitális technika II. kurzus - kriptoanalízis: a titok „feltörésére” tartalmaz eljárásokat titkosság – egy adat lehet hozzáférhető, de titkossága miatt értelmezhetetlen védettség – a hozzáférés korlátozása hitelesség – ténylegesen az-e a küldő, akire számítok? A titkosításnak fontos katonai szerepe volt, de igazán fontos, és nyilvános kutatások a XX. sz. második felében indultak meg, mivel ekkorra már előtérbe került a titkosítás személyi használatára való igénye (egyre több adat kerül átvitelre nyilvános csatornákon – pl. banki, egészségügyi, személyi adatok) A titkosítás során a nyílt adatból (nem titkos) blokkokat készítünk: x=(x1,x2,...xn) – ez a nyílt üzenet. A kódoló ebből állítja elő az y=(y1,y2,...yn) titkosított üzenetet, egyértelmű leképezéssel: y=Ek(x), ahol Ek k=(k1,k2,...kn) paraméterű kódoló transzformáció. A k vektor a titkosítás kulcsa. Inverz transzformáció, vagy dekódolás: x=Dk(y). példák: Az angol ábécé betűit felírjuk, és betűnkénti helyettesítést alkalmazunk, ahol a felső sorbeli karaktert az alatta lévőre cseréljük. A helyettesítő tábla lehet olyan, hogy a sort egy értelmes szóval kezdjük, majd utána felsoroljuk az ábécé fennmaradó betűit. A kód ekkor ez a szó lesz, és ennek ismeretében végezhetjük el a dekódolást. ABCDEFGHIJKLMNOPQRSTUVWXYZ BOCIADEFGHJKLMNPQRSTUVWXYZ A kódolást végezhetjük permutációval is, ez esetben a nyílt szöveget permutáció hosszú blokkokra bontjuk, majd kódoljuk. A kód itt a permutáció. Caesar-titkosító: Az angol ábécé betűit 1-től 25-ig számoknak feleltetjük meg (A=1, B=2,…Z=25). Az x=(x1,x2,...xM) nyílt szöveget az y=(y1,y2,...yM) titkosított szövegbe kódoljuk, karakterenként, modulo összeadást alkalmazva: yi=xi+ki (mod26), ahol i=1,2,…M; a k=(k1,k2,...kM) kulcs elemei a {0,1,…25} halmazból vannak (k lehet konstans is, vagy vektor). Például k=(3,3,…3) és M=6 esetén, ha x=(CAESAR), akkor y=(FDHVDU) lesz. Dekódolás: xi=yi-ki (mod 26) Rejtett kulcsú kódolás: a rejtett üzenetet egy nyilvános csatornán, míg a kulcsot egy titkos csatornán továbbítjuk. A csatorna védettsége attól függ, hogy a csatorna nyitott-e vagy titkos. A támadó célja lehet az üzenet, vagy a kulcs megszerzése (feltételezve, hogy a kódoló, illetve dekódoló algoritmust ismeri). A titkosító algoritmus által nyújtott védettség nem haladhatja meg a kulcsa védettségének mértékét. A támadás lehet aktív, vagy passzív. Passzív támadás a lehallgatás, azaz amikor a támadó a nyilvános csatornán keresztül valamilyen információhoz hozzájut, és ez alapján próbálja megfejteni a kulcsot (rejtjelfejtés). A támadás lehet: rejtett szövegű (a támadó birtokában van az azonos kulccsal kódolt üzeneteknek); nyílt szövegű (nyílt és rejtett üzenetpárok birtokában); választható nyílt szövegű (a támadó megválaszthatja, hogy mely nyílt üzenet párját szeretné látni). Aktív támadásról beszélünk akkor, ha a támadó kivonja a rejtett üzenetet a csatornából, és számára kedvezően módosítva továbbítja. Másik aktív módszer, amikor a támadó egy legális felhasználó szerepét próbálja eljátszani. Az üzenet titkos, ha csak a legális partner tud hozzájutni a tartalmához. Az üzenet hiteles, ha olyan valaki generálja, aki a kulcs legális birtokában van. Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
14
Digitális technika II. kurzus A támadó feltörte az algoritmust, ha „gyorsan” meg tudja állapítani az üzenet tartalmát. A „gyorsan” azt jelenti, hogy időben fel tudja használni céljára. Egy titkosítási algoritmus gyakorlati titkosságot nyújt, ha feltörése irreálisan nagy számítási kapacitást igényel. Feltétel nélküli titkosság: a megszerezhető információ mennyisége nem elég a feltöréshez. Szimmetrikus kulcsú titkosítás: mindkét fél ismeri a kulcsot Aszimmetrikus kulcsú titkosítás: - pl. az RSA algoritmus - lényege, hogy minden résztvevő (címzett és feladó egyaránt) rendelkezik két kulccsal: egy titkossal és egy nyilvánossal. A kulcsokat egy erre a célra fejlesztett programmal állítja elő mindenki, saját magának. A két kulcs egyszerre jön létre; a titkosat eltesszük magunknak, a nyilvánosat pedig (akár e-mailen is) elküldjük mindazoknak, akikkel levelezni szeretnénk. A nyilvános kulcsú rejtjelezés alapötlete, hogy a kódolás folyamatát elválasztja a dekódolástól, és olyan algoritmust használ, ahol a kódoláshoz használt paraméter nem azonos a dekódoláshoz használt paraméterrel, és a kódoláshoz használt paraméterből nem határozható meg a dekódoláshoz szükséges paraméter a módszer ismeretében sem. A nyilvános kulcsú titkosítással elküldött üzenet egy olyan ládához hasonlítható, melyet bezárni a nyilvános kulccsal, de kinyitni már csak egy másik, a titkos kulccsal lehet. Ezek a kulcsok egymással összefüggnek: a titkos kulccsal lehet megfejteni azt az üzenetet, amit a nyilvános kulccsal kódoltak.
A kódolt információ átvitele: A digitális technikában igen gyakori feladat az, hogy a berendezés egyik részéből a másik részébe, vagy egy távol lévő másik berendezésbe kell információt átvinni. Ez azt jelenti, hogy a kódolt jeleket meghatározott sebességgel egy adóból a vevőbe kell juttatni. Az átvitel a csatornán történik, amely lehet villamos kábel, rádiófrekvenciás összeköttetés, fényvezető szál, pneumatikus vagy hidraulikus csőrendszer, stb. Párhuzamos átvitel esetén egy-egy kódszó bitjeit egyidejűleg, külön csatornán továbbítjuk. Így az összes bit gyakorlatilag egy időben érkezik a vevőhöz. - drága, érzékeny (sok vezeték esetén nagy az áthallás a csatornák között) Soros átvitel esetén az információ bitjeit egyenként, egymás után továbbítjuk ’egy’ vezetéken. - soros átvitel esetén fontos kérdés, hogy meddig tart az egyik bit és mikor kezdődik a másik, ezért szükség van bitszinkronizációra és karakterszinkronizációra - ha több karakter blokkba rendezve kerül továbbításra, el kell különíteni a blokkokat egymástól, ez a blokkszinkronizáció - továbbá a teljes üzenet elejének és végének ismerete az üzenetszinkronizáció által - a szinkronizáció legegyszerűbb módja külön szinkron vezeték kiépítése az adó és a vevő között (párhuzamos átvitelnél ez szokásos is, sorosnál csak akkor, ha az adó és vevő közel van) A párhuzamos átvitel előnye a sorossal szemben egy időben a gyorsasága volt, mára azonban - a soros átvitel fejlesztésének eredményeképpen - előnyösebbé vált az utóbbinak a használata (megfelelően gyors, és olcsó). Az időzítés szempontjából a soros átvitel lehet aszinkron és szinkron. Szinkron átvitel - a bitszinkronizáció órajellel történik - előny: nagy sebesség (az órajel határozza meg) - hátrány: két csatorna kell, szükség van egy pufferre
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
15
Digitális technika II. kurzus
Aszinkron átvitel - nincs szinkronjel - a legtöbb átvitel ilyen (pl. USB) - adó és vevő oldalon azonos sebesség kell, hogy legyen – minél nagyobb a sebesség, annál valószínűbb a hiba előfordulása - szabványos adatátviteli sebesség: Baud-rate (bit/sec) - nagy távolságokra alacsonyabb sebességgel lehet kommunikálni - nincs szükség pufferre - start-stop rendszer: - csomagokban küldjük az adatokat, a csomagok között szünet van (alatta szinkronizálunk) -> a vonal kihasználtsága csökken - start bittel kezdődik, ezután jön a küldendő adat, a paritás bit (választható, lehet páros, páratlan, vagy elhagyhatjuk) és a stop bit, majd 3-15 bitnyi szünet UART – univerzális aszinkron adóvevő (universal syncron receiver transmitter) USART – univerzális szinkron-aszinkron adóvevő Syn Header DL Adat…
CRC LRC EOT
Header: fejléc – az elindított adatcsomagról tartalmaz információt (küldő/címzett), protokoll, fizikai és logikai cím DL: adathossz számláló (fel kell készülni az adat sérülésére – ügyelni kell a hosszára!) CRC – hibaellenőrző kód (számít a bitek sorrendje) LRC – hosszanti ellenőrző – moduló összeadás, egy byte-ba EOT – egy byte, lezárja az átvitelt Time out – ha megszakad az átvitel, a vevő ne várjon a végtelenségig Moduláció: Távolsági adatátvitelnél fontos, hogy az technikailag könnyen kivitelezhető legyen és a jel ne foglaljon nagy sávszélességet. Az információt egy vivőhullámon továbbítjuk. Amplitúdó moduláció(AM): a vivő amplitudója változik; középhullámú sávban használják; sérülékeny (légköri zavarok, villám, stb...) Frekvencia moduláció(FM): a vivő frekvenciája változik; URH sávban, kevésbé sérülékeny, de nagyobb a sávszélessége Fázismoduláció(PM): a moduláló amplitudójának függvényében változik a vivő fázisa – inkább digitális átvitelnél alkalmazzák (PSK – phase shift keying – 0,180/,90,270/°-os eltolás)
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
16
Digitális technika II. kurzus
Fázismoduláció:
RZ (Return to Zero) kódolás: jellegzetessége, hogy minden bit után visszatér 0-ra
NRZ (Non Return to Zero): több egymás utáni 1-es nem különül el
Fáziskódolt (PE – phase encoded) jelátmenet - az ugrás reprezentálja a biteket attól függően, hogy az átmenet milyen irányú 0 → 1 vagy 1 → 0. Két csatorna van: az egyik az1-eseket, amásik a 0-kat viszi:
Számkódok, numerikus kódok: - Súlyozott (pozícionális) kódok: A pozícionális kód a kódszavak helyi értékéhez valamilyen valós számot (súly) rendel. Ilyenkor a kódszó információtartalmát rendszerint a kódszó egyeseinek megfelelő súlyok összege adja. Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
17
Digitális technika II. kurzus k
Nω =
∑W S i =1
i
i
Wi – az i-edik pozíció súlyozása Si – i-edik pozíció bináris értéke (0, 1) k – kódszó elemeinek a száma
- BCD kódok: A száminformációk továbbítására leggyakrabban a binárisan kódolt decimális kódokat (BCD) használják. Tíz számjegy kettes számrendszerbeni ábrázolásához minimálisan 4 helyi értékre van szükség. Viszont a 4 változó lehetséges 16 kombinációjából csak 10-et használunk ki. - a decimális számok feldolgozásánál leginkább a normál BCD kódot (NBCD) alkalmazzák → súlyozása: 8 4 2 1 - AIKEN feltöltése: mindig a kisebb helyi értékűeket tölti fel először, majd a kettesek közül mindig az elsőt → súlyozása: 2 4 2 1 - STIBITZ (háromtöbbletes vagy élőnullás kód), minden értékhez 3-at kell adni - WHITE itt is a kisebb helyi értékűt tölti fel először; súlyozása: 5 2 1 1
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
18
Digitális technika II. kurzus - Excess kódok: Az excess kódok közvetetten súlyozott kódok. A szám képzése: k
Nω =
∑W S i =1
i
i
−e
q e; q : két különböző szám, a kódolástól függően kell megadni → STIBITZ, ha e = 3 ; q = 1 → NIDDING, ha e = 5 ; q = 2 → DIAMOND, ha e = 6 ; q = 27 - Hibafelfedő és javító kódok: Az előzőekben ’zajmentes’ csatornákat feltételeztünk, de ’zajos’ csatorna esetén a küldött kódszó megváltozhat, azaz a kódszóban 0 → 1 vagy 1 → 0 csere jöhet létre. A gyakorlatban annak a legnagyobb a valószínűsége, hogy csak egy helyen változik meg a kódszó. - Egyetlen hiba ún. paritásos ellenőrzéssel felfedhető: azaz minden kódszóval még egy ellenőrző helyi értéket (paritás bit) is átviszünk a csatornán. Ennek értékét úgy választjuk meg, hogy a teljes kódszó az ellenőrző helyi értékkel együtt páros vagy páratlan 0-kat ill. 1-eseket tartalmazzon. Ezt a járulékos helyi értéket paritás bitnek nevezik. A TTL rendszerben a paritás bit előállítása, ill. ellenőrzése az SN 74180 típusú bővíthető 8 bites áramkörrel könnyen elvégezhető. A paritásos ellenőrzést igen gyakran alkalmazzák, mert így tetszőleges kódtípus felruházható hibafelfedő képességgel. A paritás generátor figyeli az adó kimeneteit és előállítja a paritás bitet, amivel kiegészíti az átviendő jelet. A vevő oldalon a paritás vizsgáló figyeli a kiegészített információt és ha nem megfelelő számú 1-est észlel, akkor jelzést ad. Egyszerűbb hibafelfedő áramkört igényelnek az aránykódok. Ezek alapvető jellemzője, hogy az egyes kódszavakban szereplő 1-esek és 0-k aránya állandó. A leggyakrabban használt aránykód a 7-42-1-0 súlyozású. WALKING-kód: 7-4-2-1-0-kód, 8-4-2-1-0-kód LORENZ-kód: 10-ből 1 –kód, 7-ből 1 –kód HAMMING-kód
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
19
Digitális technika II. kurzus A hibafelfedés feltétele, hogy a Hamming-távolság (D) egynél nagyobb legyen. Ha ugyanis a két küldött kódszó között a H.-távolság 1, akkor egy hiba a másik kódszó t is eredményezheti. Maximálisan D-1 hiba fedhető fel. Az eddigiekben csak a hiba létének kimutatásával foglalkoztunk. A hiba javításához a hiba helyét is ismerni kell. - A hibajavítást blokkszerű adatátvitel esetén sor- és oszlop paritás ellenőrzésével is elvégezhetjük. Ha az adó kódszavait szisztematikusan egymás alá írva képzeljük el, akkor egy-egy paritás bitet minden sorhoz és minden oszlophoz rendelhetünk. Ily módon egyetlen hiba a hibás sor és oszlop metszéspontjában van. Így tudjuk a hiba helyét, tehát értékcserével (0 → 1 vagy 1 → 0) a hiba javítható.
Alfanumerikus kódok: - EBCDIC - Telex kód: 5 bites alfanumerikus kód, mivel az 5 sáv csak 25 = 32 variációs lehetőséget nyújt, ezért külön kell gondoskodni a betűk és a többi jel kódolásáról (kódváltó karakter – másik kódba vált) - ASC kód: 7 bitesnek indult, de 8 bites lett - ASCII
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
20
Digitális technika II. kurzus
- Intel-Hex formátum – 16-os számrendszerben tárolja az adatokat
CRC (cyclic redundancy check) – ciklikus ellenőrző összeg: A ciklikus redundancia ellenőrzés az adatblokkot egy polinom együtthatóinak tekinti, amelyet eloszt egy előre meghatározott, állandó polinommal. Az osztás eredményének együtthatói alkotják a redundáns adatbiteket, a CRC-t. - A vett adat ellenőrzéséhez elegedő megszorozni a CRC-t az előre meghatározott polinommal. - Ha a szorzás eredménye a hasznos adat, akkor az adatok hiba nélkül érkeztek meg. - Másik lehetséges ellenőrzési mód a CRC újbóli kiszámítása a hasznos bitekből, és a vett CRC-vel való összehasonlítása.
Adatátviteli rendszerek: - GPIB – szabványos párhuzamos adatátviteli busz A soros adatátvitelhez csak kevés összekötő vezeték kell. Nagy távolságú összeköttetéseknél ez az előny különösen fontos. A párhuzamos átvitel költségessége és a soros gyors fejlődése miatt a soros átvitelnek egyre nagyobb a létjogosultsága. A soros adatátvitel fő problémája az adó és vevő szinkronizálása. Többféle szabványosított adatátviteli rendszer van: 1 – Wire®: - két vezeték táp, egy vezetéken kommunikál (két irányban) (duplex kapcsolat – két irányú kommunikáció - full duplex (egyszerre két irányban, 2 adatvezeték kell) - half duplex (felváltva, egy vezeték elég) simplex – egy irányú) master-slave viszony az eszközök között - a master irányítja a kommunikációt, megszólítja a sleve-et - a slave válaszol, a jogot kap - presence (jelenlét) jel – hosszú idejű alacsony bit - egy mikroprocesszorra több különálló egységet ráköthetünk; minden egységnek van egy azonosítója, egy utasítással kiválaszthatók az eszközök egy ’search-rom’ paranccsal: 1. minden eszköz kirakja az azonosító jel első bitjét a buszra Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
21
Digitális technika II. kurzus 2. az összes egység kirakja a 0. bitjének az inverzét a buszra 3. a master egység eldönti az érvényest a két bit alapján, majd ezt elküldi, ezzel kijelöli azokat, amelyekkel foglalkozni fog SPI – serial peripheral interface - szinkron soros átvitel - a master szolgáltatja az órajelet - ’data in’ és ’data out’ vezetékek kellenek olvasásra és parancsadásra → két párhuzamos vezeték, ami gyorsabbá, de jelentősen bonyolultabbá teszi - ~2 – 2,5 Mbit/sec IIC ; I2C – busz (inter integrated circuits): - integrált áramkörök közötti kapcsolat - folyamatirányító vagy adatgyűjtő rendszerekre jól alkalmazható - két vezeték: ’serial clock’ ; ’serial data’ - master – slave kapcsolat van az eszközök között - mindig a master generálja az órajelet (magas szint), a master jelleget más is átveheti - nincsen ellenőrzés, csak adatforgalom - zavarszűrés -> két felhúzó ellenállás - kis távolságra alkalmazható, nagy sebesség - start – stop kondíció a buszon – közöttük történik az adatkommunikáció - eszköz maximális kapacitása 100kHz-en 400 pF lehet (ez határozza meg a vezeték hosszát) - ~400 kbit/sec sebesség - példa: optikai forgásérzékelő (AT90S2313 + PCF8574)
RS 232 – busz: → aszinkron; (full duplex) - iparban is használják 10 – 15 m-re, de egyes változatait akár 45 m-re is (nem túl nagy távolságokra) Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
22
Digitális technika II. kurzus - hosszú vezeték estén zavarérzékeny - általában csak két eszköz összeköttetésére használják - meghatározott sebességgel kommunikál, amit szabályoznak és irányítanak - az átvitel során: start –stop; adatbit (8 bit); paritás bit átvitele történik, amiket még programozni is lehet - 2 interfészes adatátvitel: TXD (Transmit Data), RXD (Receive Data) és más (RTS – request to send, CTS – clear to send, DSR – dataset ready, DTR – data terminal ready) vezérlőjeleket használnak - jelszint: ±12V tápról működik +3V ÷ +12V magas -3V ÷ -12V alacsony -3V ÷ +3V tiltott tartomány - igen elterjedtek
Adásszünetben az adatvezetéken logikai 1 szint van, az adatot Start bit vezeti be (0 szint). A lefutó él után minden bitidő közepén mintát vesz a vevő a jelvezeték logikai szintből – így fogadja az adatot. Az adat végén paritásbit állhat, az átvitelt Stop bit (1 szint) zárja le. A Stop bit után azonnal következhet egy újabb átvitel Start bitje, de tetszőlegesen hosszú ideig is logikai 1 értéken maradhat a vonal (szünet). Mivel a kerettel (Start bit, Stop bit) kiegészített adatok közvetlenül egymás után is küldhetők vagy rövidebb-hosszabb szünetek közbeiktatásával, ezt az átviteli megoldást aszinkron soros átvitelnek szokás nevezni. Az aszinkron soros csatlakozó az IBM PC szabványos illesztő felülete, de igen sok mikrovezérlőben is megtaláljuk az aszinkron soros Portot (esetenként kommunikációs Port a neve). A szinkron soros átvitel fogalma megváltozott az idők folyamán. A digitális technika hajnalán a szinkron soros átvitel olyan soros adatkapcsolatot jelentett, ahol a keretet az adatblokk elején lévő egy vagy több ún. szinkron-szó jelentette, amit szünetek nélkül követett az adatok bitjeinek sorozata. A mai szinkron soros átviteli megoldásokban az adatbiteket egy további vezetéken kiküldött órajel sorozat segítségével lehet precízen kezelni. Az RS-232C pont-pont összeköttetésre alkalmas. Eredetileg a nagytávolságú összeköttetésben a számítógép és a modem közötti kapcsolatra dolgozták ki, de később modem nélküli nagytávolságú átviteleket is létrehoztak a felhasználásával, sőt, a számítógép és a perifériák közötti jelkapcsolatra is felhasználták. RS 485 – busz: - első ipari busz, a profibusz alapja - potenciál különbségen alapuló kommunikáció - kétvezetékes busz, egyik sem földvezeték – elvileg földpotenciál-független; a két vezeték közötti potenciál előjele határozza meg a jelet -sodort érpárral kell működtetni, mivel így a zavaró jelek szimmetrikusan változtatják meg a jelet - kicsi feszültségről működik (~5V) → hátrány – nagy távolságban változhat a földpotenciál → érdemes az eszközöket összeföldelni - half duplex - egyszerű a kezelése - nagyobb távolságon csökken a sebesség RS 422 – busz: - full duplex: 2x2 vezeték, ~ két RS485 - fizikai felülete ugyanolyan, mint az RS 485-ösé - egyik oldalon az egyik irányba, a másikon a másikba kommunikál - viszonylag nagy távolságú adatátvitelre alkalmas - a végét le szokták zárni (~100 ohm) Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
23
Digitális technika II. kurzus - az adatátviteli sebesség növekedésével csökken az áthidalható távolság és az átvitel pontossága - 250 kbit/sec CAN – busz: (Car Area Network) - orvosi műszereknél, illetve hajtásvezérlésnél is használják -> a Controller Area Network nevet kapta - alacsony költség - csavart érpár, védett a mágneses zavarok ellen - kifinomult hibakeresés és érzékelés - hardveresen van megvalósítva - a hibás üzeneteket automatikusan visszajelzi - a hibás csomópontokat automatikusan leválasztja - valós idejű rendszer – 1Mbit/s lehet maximálisan (40m csavart érpár esetén) - rövid üzenethossz – 8byte - multimasteres rendszer (az eszközök egyenrangúak) - flexibilitás - kikapcsolás nélkül lehet installálni új elemet - alkalmazás: autóipar, egyébként bárhol (vonatok, ipar, gyógyászat, háztartás, irodai rendszerek) - az üzenetek rendelkeznek prioritással (nem az eszkzök) verziók: - basic /standard (normál) CAN 2.0a - 11 bit hosszú üzenetazonosítóval rendelkezik; nem az egységek, hanem az üzenetek vannak megcímezve (prioritás is benne van) - Peli CAN (extended/kiterjesztett) 2.0b - a frame-eknek 29 bites azonosítója van – 11 bit bázis, 18 bit kiterjesztett - felismeri a standard CAN azonosítót - két állapot: domináns és recesszív – a domináns bit felülírja a recesszívet (0-ba húzza a buszt) - üzenetkódolás: NRZ - HARD szinkronizáció használata - aszinkron átvitel – start bittel kezdődik - bit időzítés - bit szegmensek: szinkronizáló (egységnyi hosszú), terjedési idő szegmens → a jelterjedési késések kiküszöbölésére (1-8 időkvantum), két fázispuffer szegmens – 1: 1-8 időtartam, 2: az első maximuma - bit stuff – bit feltöltése - maximum 5 egymás utáni bit lehet azonos polaritású ← legyen szinkronizálásra használható él; ellenkező esetben hibát jelez - járművekben különböző sebességű buszrendszerek: A- osztály: kényelmi alkalmazások – 10 kbit/s B- osztály: műszerfal, diagnosztkai rendszer – 10-125 kbit/s - egyszerre több állomás szeretne kommunikálni → kirakják a 0 bitet a buszra (domináns) - a vevő csak a megadott kódú adatot dolgozhatja fel adatszerkezet formátumok: - keret – domináns - arbitrációs szerkezet (azonosító, SRR, IDE, extended ID, RTR) - remote transmission bit recesszív – remote frame domináns – adat frame - vezérlőterület – 6 bit identify bit - dom – normál/standard keret - rec - extended - dominánsnak definiált, választható bit Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
24
Digitális technika II. kurzus - DLC – data length code – 4 bit - adatterület – 4/8 byte - CRC – 15 bit + befejező, CRC határoló bit - nyugtázó bit – recesszív – ha valaki hibátlanul elolvassa az üzenetet, ezt a bitet dominánssá teszi (in bit response) - 7 recesszív bit – adatterület vége - 3 bit szünet
CAN - busz hibaframe-jei - bármilyen hiba esetén - hibajelző, hibahatároló - hibaszámláló: értéke hibatípustól függően nő, hibátlan működés esetén csökken. 0-127-ig mehet (benne van a fogadási és küldési hiba is) - hibaaktív állomás: a hibaszámláló értéke 0 és 127 között van - hibapasszív állomás: a hibaszámláló értéke nagyobb 127-nél Ha a hibaszámláló értéke nagyobb, mint 255, akkor az eszköz lekapcsol, azaz nincs be –és kimenő kommunikáció. - hibakeresés: CRC, nyugtázási (ekkor hibaframe nem lesz), alaki bit (minden csomóponton – domináns/recesszív), bitfeltöltési (6 egymás utáni azonos polaritású bit) - a felderített hibákat az összes állomás érzékeli - reset után aktív hiba állapotban van a rendszerben - hibapasszív 8 bittel később kapcsolódhat be Master – Slave viszony a buszon: - master irányít - egyszerre csak egy master lehet, slave-ekből több is - a master osztja ki, hogy mikor melyik aktív - mindenkinek van ’master’ joga, meghatározott szabályok szerint - az aktuális master lemondhat jogáról, ilyenkor más veszi át a szerepét, és ez így megy tovább, de csak akkor adható át ténylegesen a jog, ha a visszaigazolás megtörtént - a master a jog átadását általában több irányba is megvalósíthatja, hogy biztosan legyen olyan Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
25
Digitális technika II. kurzus eszköz, amelyik át tudja majd venni - a slave-ekben van egy időzítő, ami számlálja, hogy neki mikor kell majd sorra kerülnie - a master kimaradása esetén a slave-ek figyelik a hálózatot, hogy van-e adatforgalom és figyelik az időzítőjüket, majd próbálkoznak master-ré előlépni → csökken a rendszer eszközigénye → az esetleges hibák esetén nő a megbízhatóság LIN busz - a CAN buszt kiegészítheti, de annál jóval lassabb - olcsó, kis sebességű, kis távolságú adatátvitel - kapcsolók állapotainak közlésére, és hasonló, néhány száz ms változási sebességű jelek esetén alkalmazható sikeresen - a buszt a master vezérli A LIN-protokollt az európai autógyárak érdekcsoportja tervezte, olcsó, kis sebességű, kis távolságú adatátviteli hálózatokhoz. Kapcsolók állapotainak közlésére, és hasonló, néhány száz ms változási sebességű jelek esetén alkalmazható sikeresen. Nagy sebességű beavatkozásra, például gyújtásszabályozásnál, nem célszerű a LIN-protokollt használni. A protokoll kétirányú adatforgalmat biztosít egy vezetéken, kedvező árú mikrovezérlőkkel. A kvarckristály és keramikus rezonátor költsége megtakarítható, mivel egy RC-oszcillátor pontossága elegendő a kommunikáció szempontjából, ugyanis minden üzenet elején egy autobaud lépés történik. Legnagyobb támogatott adatátviteli sebesség 20 kbaud, továbbá a gépkocsi telepének lemerülését elkerülendő, a protkollba iktattak energiatakarékos, szundi-üzemmódot is. A busz bármely rákapcsolt állomásról ébreszthető. A busz hasonlít az I2C-re és az RS–232-re. Az egyvezetékes busz felhúzó ellenállással csatlakozik a tápfeszültségre, és az egyes állomások (node) nyílt kollektoros kimenetükkel alacsony szintre húzhatják a buszfeszültséget az I2C-hez hasonlóan. Külön órajel helyett minden bájt start- és stopbittel van jelölve, és az egyes bitek időzítése aszinkron, az RS–232-höz hasonlóan.
Az 1. ábra jellegzetes LIN-protokoll-elrendezést szemléltet. A testpotenciálú buszfeszültség domináns állapotot jelez, ez akkor következik be, ha bármely állomás a buszt a testre húzza. Amikor a busz tápfeszültségen van, recesszív állapotnak nevezzük; ekkor minden állomás lebegni hagyta a kimenetét. Üresjáratban a busz tápfeszültségen van, a felhúzó ellenállás következtében. A busz 9 V és 18 V között működik, de minden eszköznek el kell viselnie akár a 40 V feszültséget is. Általában egy meghajtó áramkörrel választják le a mikrovezérlőt a buszról. A busz Vcc-re van felhúzva minden egyes állomásnál. A mesternél 1 kOhm ellenállást érdemes beépíteni, míg a szolgáknál a felhúzó ellenállás értékét 20 és 47 kOhm közt célszerű választani. A busz legnagyobb hossza 40 m van tervezve. Minden bájt start- és stopbitekkel keretezett. Start- bitet a nyugvó busz ellentéte, vagyis 0 jelzi, míg a stopbit az üresjárási állapotnak felel meg (1). Minden adat bájt legkisebb helyértékű bitjét továbbítjuk elsőnek. Üzenet-protokoll A mester vezérli a buszt, az egyes szolgaeszközök lekérdezésével. A szolgaeszközök csak a mester felszólítására adhatnak, választ mely kétirányú összeköttetést tesz lehetővé, összetett arbitráció nélkül. Üzenetek átvitele a mester által kezdeményezett szinkronszünettel kezdődik, majd egy szinkronizációs és egy üzenetmező követi. A szinkronizációs (sync) bájt a busz időzítésének beállítását teszi lehetővé, minden üzenet kezdetén. Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
26
Digitális technika II. kurzus A szinkronizációs szünet 13 bitidejű busz domináns állapot, majd egy stop bit melyből a szolga állomások tudják, hogy üzenet következik majd. A mester és szolga állomások órajele 15% eltérhet, így a szolgák minimálisan 11, legfeljebb 15 bit ideig érzékelik a szinkronizációs állapotot. Minden üzenet második bájtja egy azonosító (ident) bájt, mely a fogadóállomást, az adatok típusát és a válasz hosszát azonosítja. Minden üzenetre kizárólag egy szolga válaszolhat. A szolga csak a mester utasítására közölhet adatot a buszra. A buszra kerülő adatot minden eszköz értelmezi, ezért a szolgák közti kommunikáció nem feltétlenül a mesteren keresztül történik, de minden esetben a mester engedélyével. A protokoll RC-oszcillátor pontosságára hagyatkozik, így minden átvitelnél a szolgaállomásoknak a mesterhez kell igazítani az átviteli sebességet. Ebből kifolyólag, minden átvitel szinkronizációs mezővel kezdődik, mely egy bájt hosszúságú, alternáló 1 és 0 bitekből áll. A szinkron bájtot egy azonosító bájt követi, mely az üzenet többi részére vonatkozó információt hordoz, mely további három almezőre tagolódik. Négy bit (0-3) a buszon lévő eszközt címzi meg; két bit (4-5) az üzenet hosszát adja meg; az utolsó bitek (6-7) paritásbitek. A LIN-protokoll a szundi (sleep) parancs kivételével, nem határozza meg az üzenetek további tartalmát. Hibaérzékelés Észlelt hiba esetén a parancsot figyelmen kívül kell hagyni, és a hibát naplózni szükséges. A következő hibákat kell érzékelni és számolni minden eszköznek: – Bithibák: a küldő egységnek össze kell hasonlítani a küldött adatot és a buszon ténylegesen jelen lévő adatot. A vezérlőknek megfelelő ideig kell várakozni a buszra, mielőtt a tesztelést elvégzi. Adott, hogy az élmeredekség 1 V/us és a maximális buszfeszültség 18 V, ebből következik, hogy az adónak 18 us-ot várnia kell, míg a bittesztelést elvégzi. – Checksumhibák: az adatmező checksumbájttal van védve, mely az adatbájtok invertált modulusú összege – 256. – Paritáshibák: a parancsbájt két paritásbitet használ a többi hat bit védelmére. Beépített hibaközlési mechanizmus nincs, mégis minden szolgaeszköznek számon kell tartani az észlelt hibákat, mert a mester hibajelentést kérhet egy általános üzenet részeként. LIN-illesztés CAN-buszra A LIN-protokoll közvetlenül nem kompatíbilis a CAN-busszal, de várhatóan a két rendszer egymást kiegészítve működik majd. CAN-LIN-protokollillesztő eszköz szükséges a két busz összekapcsolásához, mely a LIN-busz információi alapján CAN-üzeneteket formál. Kis fogyasztású – szundi (sleep) – üzemmód A mester minden szolgaeszközt szundi módba küldhet, egy 0x80 azonosítóval ellátott üzenettel. A szundiüzenet adatbájtjai nem definiáltak. A szundiparancsot vevő szolgák fogyasztásukat minimálisra csökkentik, valamint a busz változására ébredni kell. A buszfeszültség ekkor magas szinten lebeg, és nem fogyaszt áramot. Bármely buszra csatlakozó eszköz felébresztheti a buszt, egy ébresztőparanccsal. Amint az eszközök megkapták az ébresztőparancsot, várakozniuk kell, hogy a mester a szokványos módon kérdezze le az eszközöket. Szoftverműködés A LIN-protokoll megszakítással dolgozik, a szundi/ébredés üzemmódok megvalósításához. Amint megszakítás lép fel, az alacsony bitidőt mérjük. A szinkronbájt vétele után a helyi bitidő meghatározható. Az első alacsony bitidővel összehasonlítva megállapítható, hogy 10 bitidőnél hosszabb vagy rövidebb volt. A hosszú alacsony szint szinkronizációs szünetet jelez, ennél rövidebb szundi üzemmódból ébresztést eredményez. Amennyiben ébresztés történt, a kód tovább várakozik szinkronizációs jelre. Szinkronizációs szünet észlelése esetén a parancsbájt beolvasása következik, a paritásbitek ellenőrzése, valamit az akciótáblázat alapján a megfelelő teendő kiválasztása. Az akciótáblázat határozza meg az adat forrását és célját. A LIN-protokoll széleskörűen használható járműelektronikai megoldás*, mely alacsony költséggel egyszerűen megvalósítható. A költségek minimalizálása érdekében célszerű olyan belső RC-oszcillátorral rendelkező vezérlőt választani, melyben hardveres LIN-támogatás van.
Token ring hálózat Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
27
Digitális technika II. kurzus - az ethernet elődjének mondható - gyorsabb, megbízhatóbb - ipari kommunikációban használják - olyan hálózat, ahol mindenki mindenkivel kommunikál - kör struktúra – állomások, alállomások - különböző egységeknek lehet master funkciója a token jelenti a master jogot - a feleadat elvégzése után továbbadják - sorrend – dinamikus sorrend – változtathatják - a token nem veszhet el! → működési hibához vezet → le kell ellenőrizni az állomást, és csak utána adható át a token - a master egység is meghibásodhat → megáll a kommunikáció → valamelyik slave átveszi – ha a slave nem észlel forgalmat, átveszi a master szerepet (időzítés, késleltetés - egyszerre csak egy legyen) - hátrány: szigorú feltételek → új egység installálása nem egyszerű 2008.04.01. Digitális eszkötök funkcionális egységei: - Digitális komparátor (CD4063) - kaszkádosítható
- Memóriák: - RAM (random access memory) – tetszőleges hozzáférésű - ROM (read only memory) - maszkprogramozott áramkörök (a gyárban került rá a program - nagy tételben állították elő) - PROM (programmable ROM) - a program beégetéssel kerül a memóriába – 12,5V/25V - EPROM (eraseable programmable ROM) - lebegő gate-es - a törlés UV fénnyel, kvarc ablakon keresztül történik - a kvarc miatt drága eszköz, de magát az áramkört műanyag, ablak nélküli tokozásban is árulták PROM-ként - E2PROM (electronically eraseable PROM) - elektronikusan törölhető - statikus memóriák – billenőáramkörök - dinamikus memóriák - kapacitásokban tárol - hátrány: kis kapacitások – hamar elvesztik az információt (de frissíthetők a memória Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
28
Digitális technika II. kurzus végigolvasásával) - flash memória - általában programok tárolására - a törlés a teljes memóriára vonatkozik Processzoros rendszerek (8 bit): - μP a szémítógép központi egysége - számításokat végez, kommunikál a perifériákkal - memóriába ágyazott I/O esetnén nincs megkülönböztetés, csak különböző címzések Belső felépítés: - ALU – aritmetical logical unit - alapvető műveletek - BIU – bus interface unit - ICU – interrupt control unit - Regiszerek - akkumulátor (accu) - általában műveletvégzés operandusa és eredménye itt van - a forrás és a cél is lehet egyben - belső/ külső regiszterek - utasításszámláló (program controller/instruction pointer) - a következő utasítás memóriacímét tartalmazza - veremtár mutató/stack pointer - egy speciális regiszter, amely a veremtár legfelső elemének címét tartalmazza - LIFO memória (last in first out) - a RAM-ban található (annak egy lefoglalt része) - állapotregiszter – flag (PSW) - zéró bit (általában az accu-ban lévő adatra mutat) - sign – előjelbit - paritás - carry flag - borrow (áthozatal – kivonáskor) - ac flag – segéd carry Utasítás végrehajtás: - gépi állapot – egy órajel ciklust igényel - 12 gépi állapot alkot egy gépi ciklust (pl. utasítás behívása a memóriából – fatch) - utasításciklus – gépi ciklusokból áll Az utasítás végrehajtás folyamata: utasítás előkészítés, lehívás (fetching) → a programszámláló tartalmának növelése → a műveleti kód (operation code) értelmezése → a művelethez szükséges adatok előkészítése → utasítás végrehajtása (executing) → az eredmény elhelyezése az előírt helyre → az utasítás-feldolgozási ciklus újra kezdése Utasítások hossza a processzorban: A számítógép utasításainak hossza lehet rögzített fix érték, ill. változó hosszúságú. Az utasítás szerkezete határozza meg, hogy a processzornak az utasítás mely részét hogyan kell értelmeznie. Értelmezés szempontjából az utasítások 3 fő részre oszthatók: műveleti kód; címrész; módosító rész. Címzési módok: - processzortól függően sok fajtája van: - közvetlen, direkt címzés: az utasításban maga a tárolóhely cím szerepel - abszolút címzés: a tényleges címet tartalmazza az utasítás; nem kell sokat számolni - relatív címzés: valamilyen alapcímhez viszonyított címet tartalmaz az utasítás; rövid, de egy kicsit kell számolni - bennfoglalt címzés: olyan címzés, amely nem tartalmaz címet, mivel azt a műveletet csak pontosan Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
29
Digitális technika II. kurzus egy eszköz hajthatja végre - közvetett, indirekt címzés: az operandus az utasításban megcímzett tárolóhelyen megadott memória címen van - indexelt és indirekt címzés: indirekt módon adom meg a címet, de még valamilyen kiegészítéssel megtoldom Utasításkészlet alapján a processzor lehet: - RISC – reduced instruction set computer – csökkentett utasításkészlet, „gyors” - CISC – complex intstruction set computer - összetett utasításkészlet
Szubrutin, szubrutin hívás, makrók: Szubrutin: Alprogram - az ismételten előforduló feladatrészek programozásának hatékony eszköze, egy olyan önálló funkciójú utasítás sorozat, amely egyszer szerepel a programban (rendszerint a program végén helyezik el), de a feladat elvégzésekor többször lehet használni. A szubrutinok egymásba ágyazhatók. A call utasítással a szubrutin címére ugrunk, közben a stack-be bekerül a következő programrész címe (ahova a szubrutin után a return utasítással visszatérünk). Figyelni kell arra, hogy a stack-ből töröljük a szubrutin által beírt adatokat, mivel csak ekkor tudunk visszatérni belőle (-> push és pull utasítások párban vannak). Makró: A szubrutinhoz hasonló, de a makrót nem ismeri a processzor – csak a fordító foglalkozik vele, annyiszor pakolja bele a programlistába, ahányszor használni akarjuk. Megszakítás: A program futását szakítjuk meg – szoftveresen, vagy hardveresen (a processzoron vannak megszakító bemenetek). Visszatérés: return from interrupt (fontos megjegyezni, hogy különbözik a sima return-től; ha sima return-nel térünk vissza, a processzor nem fogja tudni, hogy véget ért a megszakítás) A megszakítási események kapcsán különbséget kell tenni a többnyire külső eredetű megszakítások és az utasítások szabályszerű végrehajtását megállító kivételek között. A szoftver megszakítási kérelmek azok, amelyek programból lettek kezdeményezve, nem maszkolhatók. A hardver megszakítási kérelmek többsége maszkolható (van nem maszkolható is). A megszakítások kiszolgálásakor több olyan kérdés van, amit a rendszernek meg kell oldania: - a megszakítási kérelem helyének megállapítása (melyik eszköz kezdeményezte a megszakítást) - kiszolgálható-e a kérelem - nincs-e letiltva a megszakítást kérő eszköz - a megszakítások prioritásának meghatározása, azaz a megszakítási sorrend felállítása, több, egy időben jelentkező kérelem esetén - egyes eszközök ideiglenes kizárása a megszakítási procedúrából - többszörös megszakítás kiszolgálás megoldása A megszakítási kérelem keletkezési helyének megállapítására egy megszakítási vonal esetén két módszer alkalmazható: szoftver módszer esetén a lekérdezéses megszakításkezelés hardver módszer esetén a megszakítás vezérlő alkalmazása Több megszakítási vonal esetén, amikor minden eszköz saját megszakítást kérő vezetékkel rendelkezik a legáltalánosabban használt a vektor módszer. Watchdog: - arra szolgál, hogy processzor működését biztonságosabbá tegye - a processzornak meghatározott ciklusonként inicializálnia kell egy számlálót, hogy az ne járjon le Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
30
Digitális technika II. kurzus (- analóg áramköröknél monostabil multivibrátor) DMA (Direct Memory Acces): Közvetlen memória hozzáférés: - nagy mennyiségű adat mozgatásánál (memória és periféria között) - a processzor felprogramozza a DMA vezérlőt (mit, hova vigyen el) - DMA request –> a processzor „leáll”, átadja a buszt a DMA-nak - gyorsabb, mintha a processzor végezné az adatmozgatást Memóriák bővítése: A memóriák bővítésére akkor van szükség, ha az egy tokban lévő tárkapacitás nem elegendő az adott feladat megoldásához: - címhossz szerinti bővíthetőség: a CE bemenetek tiltásával és a három állapotú kimenetek összekötésével érhető el
- adathossz szerinti bővíthetőség: a címvezetékeket párhuzamosan kötjük
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
31
Digitális technika II. kurzus
Mikrokontrollerek: - egy tokon belül: pl. órajel, néhány byte RAM, I/O portok, A/D – D/A konverterek - egyszerű feladatokra alkalmas (minimálkonfiguráció) - kell hozzá egy kvarc (órajel miatt) + reset áramkör 8051-es család
PSEN – program memory select enable EA – external acces - külső/belső memória - tiltható -> védelem (pl. nem férhetnek hozzá a programhoz) ALE – adress latch enable
pl. P1.2 kivezetés Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
32
Digitális technika II. kurzus Regiszter, memória - a program területén is tárolható adat, de nem változtatható meg (pl. egy táblázat).
SFR – special function registers - integrált perifériák regiszterei - a 4 port regisztere - stack pointer - datapointer – külső memória címzése - accu és B regiszter - direkt címzéssel érhető el Indexelt címzésre R0, R1 használható PSW – program status word CY
AC
F0
RS1 RS0 OV -
P
CY - Átvitel flag. AC - Félátvitel F0 - Flag 0. Szabadon felhasználható. RS1 - Regiszterkészlet kiválasztás, 1. bit. RS0 - Regiszterkészlet kiválasztás, 0. bit. OV - Túlcsordulás. „-„ - Felhasználó által definiálható. P – Paritás
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
33
Digitális technika II. kurzus
Funkciók (timerek, soros port, megszakítási rendszer) Timer/counter
T
/12
OSC
C
Tx
THx
TLx
8bit
8bit
T2
TRx
& Gate
1
1
INTx
TMOD (timer mod) regiszter: - gate bit - C/T bit -> számláló vagy időzítő (L-H) - M0, M1 – 4 féle üzemmód 0: 8 bites számláló (+előosztó) 1: 16 bites időzítőszámláló (előosztó nélkül) 2: 8 bites számláló, automatikusan újrakezdi a számolást TH-ban van az az érték, ahonnan újraszámol 3: TL – 8 bites számláló T0 TH – 8 bites számláló T1 TCON regiszter - TF – túlcsordulás jelző bit - TR – timer futás (1-engedélyez, 0-leállít) - IE – interrupt éljelző - IT – interrupt jellege (élre/szintre aktív) T2 timer - tiltás/engedélyezés csak szoftveresen - + reload capture regiszter -> kiolvashatók/újratölthetők a számlálóregiszterek - soros port időzítésére ez is használható (de pl. a T0 nem működtetheti a soros portot) Soros port - autonóm működés - elvileg full-duplex – egyébként fél duplex, mert egy puffert használ - 0-5V-ról működik - üzemmódok 0: RXD – bemenet/kimenet TXD – órajel - baud rate: az órajel 1/12-ed része - a soros port 8 bitet küld/fogad 1: - 10bit (8+start,stop) Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
34
Digitális technika II. kurzus
2: - 11 bit (+paritás bit) sebesség az órajel 1/32-ed része 3: - 11 bit sebesség az órajel 1/64-ed része SCR (serial port control register) - SM1/0 - üzemmód 0: shift regiszter (fosc/12) 1: 8bit UART (universal asynchronous receiver/transmitter, változtatható sebesség) 2: 9 bit UART (fosc/32 vagy fosc/64) 3: 9 bit UART (változtatható seb.) - SM2 – multiprocesszoros működés - REN – receive enable (szoftveresen) - TB8 – ez a 9-edik bit, amit küld (2,3-as üzemmódokban) - RB8 – beíródik - TI – adás megszakítás - RI – vétel megszakítás Megszakítás rendszer - 6 megszakítás - két külső - 3 timer - 1 soros - amikor engedélyezett egy megszakítás, az adott címre ugrik programot végrehajtani - reset – 0000 - INT0 – 0003 - T0 – 000B - INT1 – 0013 - T1 – 001B - soros – 0023 - T2 – 002B - megszakítás rutin nem írható be, de JUMP utasítás igen - kötött prioritás: INT0 T0 INT1 T1 S T2 - IEC – megszakítás engedélyezés - EA – globális megszakítás engedélyező - IPC – prioritás vezérlő regiszter – kiválasztott megszakításokat egy szintre lehet hozni - amik magas szinten vannak, egymást nem szakíthatják meg Felprogramozás (égetés) - EA – programozó feszültség - lock bit – 3 féle lehet - újraprogramozást tiltó - program visszaellenőrzését tiltó - EA láb felülbírálása PLC-k (programmable logic controllers) - feltételek: - kompatibilisek legyenek a régi rendszerekkel (24V) - zavarérzéketlenség - legyen újraprogramozható - nagy megbízhatóság Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
35
Digitális technika II. kurzus - programozói tudás nélkül is lehessen őket programozni (ma már nem igaz)
1. Bevezetés A programozható logikai vezérlõ (Programmable Logical Controller, PLC) az ipari szabályozások, illetve vezérlések megvalósítására elterjedten alkalmazott ipari kivitelû mikroszámítógép. Fontos jellemzõje, hogy bemeneti és kimeneti egységeinek feszültségszintje illeszkedik az iparban használatos szintekhez. Ezért ezek a be- és kimenetek csak ritkán 5 V-os szintûek (ami a PC-s technikában megszokott), míg az esetek nagy többségében a digitális be- és kimenetek 24, 60, vagy 220 V-osak, az analóg be- és kimenetek feszültségtartománya +/- 24 V. Az ipari kivitel másik jellemzõje a környezeti ártalmakkal (por, légszennyezettség) és a mechanikai hatásokkal (ütések, rázkódás) szembeni ellenállóképesség. A PLC-k többnyire moduláris felépítésûek. Ez lehetõvé teszi a különbözõ felhasználói igényekhez való optimális illesztést.
2. A vezérlõberendezések felépítése és felosztása Egy irányított folyamat blokkvázlata az 1. ábrán látható.
A paramétermegadás a rendszer megkívánt mûködéséhez szükséges adatok (alapjelek, technológiai jellemzõk) megadását jelentik. A mûködtetés a berendezés mûködtetése céljából szükséges be- és kikapcsolás, vészleállítás stb. jeleit jelenti. A mûködtetõ jel általában emberi beavatkozás eredménye, de származhat az irányító vagy az irányított berendezéstõl is. A kijelzés a mûködés fázisainak és egyéb jellemzõinek visszajelzése a kezelõ, ill. felügyelõ személyzet részére. Általában a kijelzések jelentõs segítséget nyújtanak az esetleges hibák helyeinek felismerésében is. Az ellenõrzõ jeleket a technológiai folyamatban elhelyezett érzékelõk szolgáltatják. Az itt használt érzékelõk vagy kétállapotú jeleket szolgáltatnak, vagy Paramétermegadás Mûködtetés Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
36
Digitális technika II. kurzus Kijelzés Jelfeldolgozó egység Irányított folyamat Beavatkozó jelek Ellenõrzõ jelek analóg értékeket, melyeket sokszor a digitális feldolgozhatóság érdekében digitalizálunk. Az irányítójelek (beavatkozójelek) kiadása a beavatkozószerveken keresztül történik. Ezek általában jelfogók, mágneskapcsolók, mágnesszelepek stb. A jelfeldolgozó egység, amely a vizsgálatunk szempontjából a legfontosabb, alapvetõen kétféleképpen mûködhet: sorrendi (szekvenciális) és kombinációs hálózatként. Felépítését tekintve a feldolgozóegység huzalozott programú vagy tárolt programú lehet. A huzalozott programú vezérléseknél az egyes elemek (jelfogók vagy félvezetõ logikai elemek) összekapcsolása huzalozással oly módon történik, hogy ez határozza meg az egység mûködését, a bemenetek és a kimenetek közötti logikai kapcsolatot. Ezek az összeköttetések legtöbbször nem, vagy csak igen nehezen módosíthatók, vagyis a huzalozott logikai kapcsolat megváltoztatása komoly nehézséget jelent. Vannak olyan berendezések, ahol a huzalozott logikai kapcsolat változtatását dugaszolással teszik lehetõvé. A tárolt programú vezérlõberendezéseknél a be- és kimenõ jelek közötti kapcsolatot (ezek logikai függvényeit) egy tárolt program (felhasználói program) határozza meg. A tároló áramkör lehet pl. csak olvasható memória (ROM). Ekkor, ha az áramkör nem cserélhetõ, akkor rögzített, ha cserélhetõ, akkor cserével változtatható a berendezés programja. Más tárolóáramkörök alkalmazása esetén (pl. RAM, EEPROM) a tárolt program újraírható. Esetenként a tárban egymástól függetlenül több programot is elhelyeznek, amelyek közül a kívántat külsõ jelre vagy idõtõl függõen aktivizálják. A vezérlések felépítéséhez használt elemeket és a vezérlések struktúráját tekintve az alábbi felosztást tehetjük: jelfogós (relés) vezérlések félvezetõ logikai elemekre épülõ vezérlések számítógépes vezérlések programozható logikai vezérlõk.
2.1 Jelfogós vezérlések A kétállapotú jeleket feldolgozó vezérléstechnikában korábban szinte kizárólagosan a jelfogós kapcsolásokat használták. A jelfogók a jelek fogadására, elosztására, tárolására, feldolgozására, jelek kiadására, galvanikus szétválasztásra képesek. Mindezek mellett a jelfogós vezérlések alkalmazása számos hátránnyal is jár. Egyrészt minden változtatás nehézkesen végezhetõ el rajtuk, másrészt nehezen integrálhatóak elektronikus rendszerekbe. A jelfogós vezérléseket áramutas rajzokkal, pl. un. létradiagrammal lehet ábrázolni, amely szimbólumai segítségével a mûködés szemléletesen követhetõ. Ezen személetesség az egyik oka annak, hogy ezt az ábrázolási módot a programozható logikai vezérlõknél is használják. Programozható logikai vezérlõk 6 Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
37
Digitális technika II. kurzus
2.2 Félvezetõ elemekre épülõ vezérlések A nagyobb megbízhatóságra és kedvezõbb megvalósíthatóságra való törekvés vezetett az érintkezõmentes elemek alkalmazásához. Ezek a félvezetõ alapú dióda, a tranzisztor és az integrált áramkör. Az ilyen vezérlések elõnye a viszonylag nagyfokú integráltság és ebbõl következõen a kis teljesítmény- és helyigény.
2.3 Számítógépes alapú vezérlések, PLC-k A személyi számítógépek megjelenésekor került elõtérbe a számítógépek folyamatirányításra történõ felhasználásának gondolata. Mivel a számítógépek rendelkeznek kétállapotú jelek fogadására, ill. kiadására alkalmas egységekkel, digitális vezérlések megvalósítására ideálisak. Ugyanakkor a jel fogadó- és kiadóegységek szintjei nem illeszkednek az ipari szintekhez, és az ipari hatásokkal szemben sem ellenállóak. A kezdeti idõszakban a számítógépek ára is igen magas volt, így nem lehet csodálkozni azon, hogy megjelentek a speciálisan folyamatirányításra kifejlesztett mikroszámítógépek, a PLC-k, és nagyrészt ki is szorították a számítógépeket. Manapság az egészen bonyolult, nagy adathalmazzal operáló, nagy sebességigényû folyamatvezérléseknél használnak speciális folyamatirányító számítógépeket.
3. Alkalmazási területek A PLC-ket kedvezõ jellemzõik az alábbi területeken teszik alkalmassá irányítási funkciók elvégzésére: Kis irányítási feladatok. A kompakt kivitelû, mini PLC-k alacsony áruk miatt már 5-10 relét igénylõ hagyományos megoldások kivitelezésénél is gazdaságosan válthatják ki a relés vezérlést. Bonyolult, összetett feladatok. A nagy teljesítményû, bonyolult számítások elvégzésére képes PLC-k jelentik a megoldást az olyan vezérléseknél, ahol a relés technika alkalmazása már nem, vagy csak nehezen vezet eredményre. Ezek a nagyteljesítményû PLC-k már közel állnak a folyamatirányító számítógépekhez. Gyakran módosuló feladatok. Mivel a PLC a memóriájában tárolt program végrehajtásával oldja meg a feladatot, a feladat módosulása esetén legtöbbször elég a programot módosítani, ami gyors és olcsóbb, mint egy huzalozott vezérlõáramkör átalakítása. Területileg elosztott feladatok. A nagyobb, moduláris PLC-k esetében lehetõség van arra, hogy az I/O (input/output) modulokat a vezérlési helyek közelében helyezzük el, és ezek a modulok a központi egységgel egy kábelen keresztül kommunikáljanak. Így a rendszer kábelezési költségei jelentõsen csökkenthetõk ahhoz képest, mintha minden egyes I/O jelet egyenként kellene a központi egységhez vezetni.
4. A PLC funkcionális egységei A következõ részben sorra vesszük az általános felhasználási célú PLC-k funkcionális elemeit. Moduláris kialakítás esetén ezek a funkcionális egységek általában külön modulokban helyezkednek el, míg kompakt kivitelnél akár az egész PLC egy közös egységben található. Egy PLC rendszerben az alábbi egységeket találhatjuk meg: Központi feldolgozó egység (CPU) Tápegység Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
38
Digitális technika II. kurzus Bemeneti és kimeneti egységek (I/O) Intelligens egységek Kommunikációs egységek 2.ábra A PLC egységeinek kapcsolata
4.1 A központi feldolgozó egység (Central Processing Unit, CPU) A központi feldolgozó egység a PLC “agya”. Futtatja a felhasználói programot és vezérli a további egységeket. A felhasználói program vagy RAM-ban, vagy EPROMban van tárolva. A program fejlesztése személyi számítógépen történik, és a kész programot (már a CPU processzorának gépi kódjában) viszik át a késõbbi tárolóeszközbe. Egyes PLC-k speciális, elõlapi programozási lehetõséggel is rendelkeznek. A központi vezérlõegység címezi a kimeneti és a bemeneti egységeket, parancsokat ad a rendszerben lévõ intelligens feldolgozóegységeknek. Tápegység CPU Bemeneti és kimeneti modulok, intelligens modulok, kommunikációs modulok PLC busz Csatlakozás a PLC buszhoz Programozható logikai vezérlõk 8
4.2 A tápegység A tápegység feladata, hogy a rendszert megfelelõ feszültséggel ellássa, a hálózati feszültséget a PLC számára átalakítsa és stabilizálja. A legtöbb esetben külön telepeket is tartalmaz, hogy feszültségkimaradás esetén a RAM tartalma megõrizhetõ legyen.
4.3 Bemeneti és kimeneti egységek A PLC-k egyes be- és kimeneti pontjai szinte minden esetben galvanikusan le vannak választva a belsõ buszról, illetve a CPU egységtõl. 4.3.1 Digitális bemeneti egységek A digitális bemeneti egységek feladata olyan jelek értelmezése, illetve illesztése a PLC belsõ szintjéhez, melyek csak két lehetséges állapotot vehetnek fel. Az iparban használatos feszültségekhez igazodva megtalálhatóak a választékban egyen- ill. váltakozófeszültséget érzékelõ egységek is. A bemeneti egységek feszültségtartománya is széles skálán mozog, a 24 V-os névleges feszültségûtõl a 220 Vos névleges feszültségûig. 4.3.2 Digitális kimeneti egységek A digitális kimeneti egységek feladata a PLC belsõ jeleinek átalakítása a környezet számára. Alapvetõen kétféle változat található: Relés kimenetû: itt a CPU egy relét vezérel, amelynek az érintkezõje van kivezetve. Elõnye, hogy segítségével olcsón lehet nagy áramokat kapcsolni, és az áramkörökbe bárhova beilleszthetõ (ha az egyik pontja nincs pl. földelve). Hátránya, hogy a megvalósítható kapcsolási frekvencia kicsi, kisebb, mint 10 Hz, és a reakcióideje is nagy. Elektronikus kimenetû: itt valamilyen vezérelt félvezetõ elem kapcsolja a kimeneti feszültséget. Elõnye, hogy viszonylag gyors kapcsolásra képes (100 Hz körül) és rövid a reakcióideje. Hátránya, hogy csak megadott helyre illeszthetõ, pl. az egyik pontot földelni kell, illetve nagy áramokat csak relative drága elemekkel lehet kapcsolni. Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
39
Digitális technika II. kurzus 4.3.3 Analóg bemeneti egységek Az analóg bemeneti egységek A/D átalakítók segítségével konvertálják digitális kóddá a bemenetre kapcsolt analóg jelet. Az ipari jeltartományokhoz illeszkedve a bemeneti feszültség vagy áramtartomány több lépcsõben változtatható. 4.3.4 Analóg kimeneti egységek A PLC futása során számolt digitális értékeket alakítja át D/A konverter segítségével analóg jellé. Programozható logikai vezérlõk 9
4.4 Kommunikációs egységek Ezen egységek segítségével valósítható meg a kapcsolattartás más esz–közökkel, pl. folyamatirányító számítógéppel vagy printerrel. Szabványos soros vagy párhuzamos interfészt biztosítanak, vagy hálózati kommunikációt tesznek lehetõvé.
4.5 Intelligens egységek Ezen egységek valamilyen nagy sebességû elõfeldolgozást végeznek a bemenõ jeleken, nagymértékben tehermentesítve a központi feldolgozó egységet. Ilyen elõfeldolgozás lehet pl. számlálás, pozíciófigyelés, hõmérsékletszabályozás stb. A legkülönbözõbb ipari célokra készülnek intelligens egységek, a következõekben ezek közül mutatunk be kettõt. 4.5.1 Pozíciódekóder modul A modul általában bináris vagy BCD (Binárisan kódolt decimális) kódú bemenettel rendelkezik. Figyeli az így nyert bemeneti jelet, hogy megállapítsa, egy adott tartományon belül van-e. Egy modul egy bemenõjelére a modul típusától függõen több megfigyelési tartomány (sáv) is megadható. A mûködést 16 megfigyelési tartomány esetére a 3. ábra szemlélteti. A modul felhasználható pl. forgácsológépek munkaasztalának vezérléséhez, mint a munkaasztal aktuális pozícióértékének elõfeldolgozó egysége. Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
40
Digitális technika II. kurzus
4.5.2 Zárthurkú szabályozók A zárthurkú szabályozók bemenõjeleik alapján önmaguk képesek beavatkozni egy folyamatba. A központi egység (CPU) feladata ilyenkor csak az alapjel és a mûködési paraméterek beállítására terjed ki, és a folyamat szabályozása nem terheli. A zárthurkú szabályozók minden esetben saját belsõ mikroprocesszorral rendelkeznek, amely felügyeli a szabályozást. A szabályozó mûködésének blokkvázlata a 4. ábrán látható. A zárthurkú szabályozó pl. ipari hõkemencék hõmérsékletének szabályozásához használható fel.
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
41
Digitális technika II. kurzus
5. A felhasználói program végrehajtása A PLC-k a felhasználói programot ciklikusan, újra és újra elölrõl futtatva hajtják végre. Ennek oka a felhasználás jellege: a vezérlési feladatokat a gép bekapcsolásától kezdve egészen a kikapcsolásáig el kell látni. Az egyes ciklusokban a felhasználói program elõtt és után az operációs rendszer bizonyos részei hajtódnak végre. A következõ ábra mutatja a programvégrehajtás folyamatát.
A logikai vezérlõ bekapcsolása után azonnal egy olyan ciklusba kerül, amelybõl csak kikapcsoláskor fog kilépni. A ciklus a következõ 3 tevékenységbõl áll: 1. A bemenetek értékeinek beolvasása és tárolása a memória egy elõre rögzített, a rendszer által kezelt területén. Ez a mûvelet azzal az elõnnyel jár, hogy a felhasználói program futása közben hiába változnak meg a környezet jelei, ezt a program nem érzékeli, így nem léphetnek fel hazárdjelenségek. A memória azon területétének a neve, ahol a beolvasott értékeket a rendszer tárolja, “bemeneti folyamattükör”, angolul Process Input Image (PII). 2. A felhasználói program végrehajtása. A processzor a végrehajtandó utasításokat egymás után olvassa ki a memóriából. A felhasználói program a bemenetek értékét a PII-ból veszi, és a számolt eredményeket nem közvetlenül írja ki a kimeneti egységekre, hanem szintén a memória egy területére teszi le. Ennek a területnek a neve “kimeneti folyamattükör”, angolul Process Output Image (PIQ). 3. A PIQ-ban tárolt értékek kiíratása a kimeneti egységekre. Így minden kimenet egyszerre vált értéket, és elkerülhetõk a hazárdok. Ha idõzítési vagy egyéb okokból szükség van egy bemenet adott pillanatbeli értékének használatára, vagy egy kimenet azonnali beállítására, ez megtehetõ a PII és a PIQ megkerülésével. Ezekre az esetekre speciális utasításokat használhatunk.
6. Programozás A PLC-k általában többféle programnyelven programozhatók. Mindegyiknél megtalálható az ún. utasításlistás programozási mód, ahol a feladatmegoldás lépéseit a Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
42
Digitális technika II. kurzus PLC által értelmezhetõ “mondatokban” írjuk le. Ilyen módon használhatjuk ki legteljesebben a CPU által felkínált lehetõségeket. Az utasításlistás programozási mód mellett (melyet általában a gyakorlottabb programozók kedvelnek), szinte mindig megtalálható valamilyen grafikus programszerkesztési mód is. Az elsõ lehetõség, hogy logikai elemeket (ÉS, VAGY kapukat, késleltetõket, számlálókat stb.) kapcsolhatunk össze, mintegy áramköri rajzzal definiálva a programot. Az így keletkezett rajzot egy fordítóprogram fordítja le a PLC gépi kódjára. Ez a programozási mód a digitális technikában járatosak számára kedvezõ. A második, -grafikus- lehetõséggel élve áramutas rajzokat készítünk, reléérintkezõk és jelfogótekercsek alkalmazásával. Így egy már korábban jelfogós technikával megoldott feladat elvégzését programozhatjuk be könnyen és gyorsan anélkül, hogy a “régi” jelfogós kapcsolási rajzot át kellene kódolni. Itt szintén fordítóprogram végzi el az átkódolást. Nézzünk példát mindhárom metódusra! A programozandó logikai függvény legyen az alábbi: Q2.0 = ( I 2.3 + I 2.4 )*( I 3.3 + ( I 3.4*I 3.5 ) ) ahol Q x.y egy kimeneti változót jelent (byte.bit jelöléssel) és ahol I x.y egy bemeneti változót jelent (byte.bit jelöléssel). A következõ ábrákon bemutatott programok STEP 5 programnyelvben íródtak. A példákban PB231 a 231. programblokkot jelenti a programon belül. (Hasonlóan a Pascal programnyelv “Procedure” eleméhez.) C:PROBA3ST.S5D a programfájl neve, amelyik PB231-et tartalmazza. A LEN=18 adja meg a blokk hosszát (LEN: lenght). A Segment 1 felirat azt mutatja, hogy a programblokk elsõ szegmensében vagyunk (a blokkokon belül további különválasztást tesz lehetõvé a szegmensek használata). BE jelentése: a blokk vége (block end).
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
43
Digitális technika II. kurzus
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
44
Digitális technika II. kurzus
7. Redundáns rendszerek Ipari környezetben gyakran találkozunk olyan folyamattal, melynek vezérlése során nagy biztonságra, vagy magas rendelkezésre állásra kell törekednünk. Biztonsági vezérlést igényel pl. egy vegyipari folyamat kontrollálása, vagy akár egy vasútállomás biztosítóberendezésének vezérlése. Magas rendelkezésre állás ott szükséges, ahol a leállás nagy költségekkel jár, vagy a leállás utáni újraindítás lassú. A PLC gyártó cégek is felismerték ezt az igényt, és mindkét problémára megoldást kínálnak a felhasználóknak.
7.1 Hibabiztos programozható vezérlõk Hibabiztos rendszereknél a hiba fellépése után az operációs rendszer a hibában érintett egységeket, vagy az egész rendszert úgy vezérli, hogy a hibás mûködést, illetve az abból adódó veszélyeztetést meggátolja. A hiba felismerésének alapvetõ követelménye, hogy a külvilággal való kapcsolattartásért felelõs jelek redundánsak legyenek. A programozható vezérlõ belsõ hibáinak felismerése (pl. CPU hiba) valamilyen ellenõrzõegységgel lehetséges. Az ellenõrzés megoldható a berendezés megkettõzésével is (2-bõl 2 rendszer). Természetesen a kiegészítõ ellenõrzési funkciókat az operációs rendszernek el kell végeznie, és biztosítani kell a két berendezés közötti információáramlást is. Ilyen elrendezésnél a két gép kicseréli egymás között a beolvasott értékeket, és (a redundanciát kihasználva) mindkettõ ellenõrzi. A redundancia ez esetben azt jelenti, hogy az információ mindkét géphez eljut, így ha a hiba az átviteli úton, vagy az egyik gép beolvasóegységében történik, akkor detektálható (9.ábra). Miután a két gép kicserélte a bemeneti adatokat, majd ellenõrizte azokat (ekkor Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
45
Digitális technika II. kurzus már biztos, hogy ugyanazokkal a bemeneti értékekkel fognak dolgozni), következhet a tényleges feldolgozás, amit a felhasználói program végez. Általában mindkét gépen ugyanaz a program fut, így a számolt eredményeknek is azonosaknak kell lenniük. (Létezik olyan megoldás is, ahol a két gépen különbözõ programok valósítanak meg azonos funkciót, így a programozásból eredõ hibák nagyobb valószínûséggel deríthetõek fel.) A kiszámolt kimeneti értékeket a két gép ismét kicseréli, egyezõségre megvizsgálja, és csak akkor vezérli a kimenetet, ha nem tapasztal eltérést. A kimenetek értékét ráadásul keresztbe vissza is olvassák, így a kimeneti modulok hibája is felfedhetõ (10.ábra). Hiba felléptekor több reakció közül választhatunk. Az operációs rendszer képes a vezérlõk leállítására (ezt egyébként bizonyos hibáknál mindenképpen megteszi, pl. CPU hiba), vagy a felhasználóra bízza a reagálást azzal a kiegészítéssel, hogy a hibában érintett egységeket leállítja.
7.2 Hibatűrő programozható vezérlők Annak érdekében, hogy a vezérlõrendszer egy hiba fellépése után is mûködõképes maradjon, szintén redundáns konfigurációt használnak. A legelterjedtebb megoldásnál a hibabiztos programozható logikai vezérlõkhöz hasonlóan megkettõzik az alapgépet. Itt azonban az egyik gép végzi a tényleges vezérléseket, a második melegtartalékként és ellenõrzési funkciókra szolgál.
PLD-k (programozható logikai eszközök) - PLC-k viszonylag lassúak - igény programozható hardvereszközökre - MPD – maszkprogramozott – alkalmazáspecifikus Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
46
Digitális technika II. kurzus
FPD – field programmable device - többletalkatrészek -> lassabb + lehet maszkprogramozott PLA – programmable logic array - kétszintű hálózat PAL – programmable array logic - csak „és” mátrixra programozható -> gyorsabb (fix „vagy” mátrix) GAL – gate array logic/generic array logic - törölhető és újraprogramozható CPLD – complex PLD - PIA – programmable interconnect array -> globális busz - LAB – logical array block - LAB-ok összeköttetésével hozhatunk létre bonyolultabb hálózatot – PIA-n keresztül kapcsolódnak - két üzemmód: - gyors - takarékos (lassú) FPGA – field programmable gate array - programozható összekötő hálózat - többszintű logika - alapvetően három részegység: - CLB – configurable logic block - I/O B-k - programozható huzalozás - huzalozási elrendezés: - szimmetrikus - aszimmetrikus - kaputenger - hierarchikus
Pannon Egyetem Műszaki Informatikai Kar Automatizálás Tanszék Előadó: Göllei Attila
47