Native Electronics
 NAE PLC emulator.


- Az iparban megszokott és mindennapos a Programozható Logikai Kontrollerek használata. A PLC rövidítés az angol Programmable Logic Controller elnevezésből keletkezett. Feladata általában a régi relés vezérlések kiváltása. A relés vezérléseknél rengeteg huzal, vezeték, és relé kellett, ráadásul módosításnál át kellett huzalozni a rendszert. A PLC-vel viszont rugalmasan kezelhető logikai hálózatok hozhatóak létre. Az új fejlesztéseknél már valamilyen kontrollerrel oldják meg a vezérlési feladatokat, a relés vezérlést csak egyszerű feladatoknál alkalmazzák.

- Az hogy otthon momentán nincs a fiók mélyén PLC, az az árának köszönhető. De ha lenne, akkor viszont kellene egy programozó program vagy konzol is hozzá, ami szintén pénzbe kerül. Azért hogy ingyen megtanuljuk programozni egy PLC-t, le kell tölteni egy szimulátort, vagy egy emulátort.
Nos itt a ragyogó alkalom, most lehetőség nyílik egy ingyenesen használható PLC emulátor megismerésére. Ez az emulátor gyakorlatilag ugyan úgy működik, mint igazi társai. Lehet rá programot írni, amit fel kell rá tölteni és lehet futtatni. Kezeli a fizikai ki és bemeneteket (IO), valamint támogatja az ember-gép konzolt (HMI) és nem utolsó sorban megvalósítható vele távoli vezérlés is az ún. LanBus protokollal.

- Az emulátor születése.

- Sokan kérdezték hogy vajon mi a fenének írok ilyen programot, hiszen van annyi mint a pelyva! Igen van, de az ingyenes programok meg sem közelítik az igazi PLC működését, ráadásul kevés rendelkezik fizikai ki és bemenettel, hálózati kapcsolattal, nem beszélve a kiterjeszthető IO modullal és a HMI konzollal is összeköthető emulátorról.
Ez a program viszont az interneten fellelhető számos igyenes alkalmazástól eltérően, ugyan úgy fog működni, mint az igazi, ezért kiváló alkalmazás a tanulási célokhoz is.

- Ez a program eredetileg nem is PLC-nek készült, csupán egy 8+8 portos tesztkártyával összekötött logikai vezérlőnek. Ez a digitális áramkörök teszteléséhez kellett, hogy szimulálni lehessen a működési környezetet. Viszont volt olyan eset, amikor már a szimpla logika nem bizonyult elégségesnek, ezért bele kellett még tenni időzítőt, regisztereket stb. Mivel a sok elem miatt kezdett bonyolódni a programozása, ezért kellett egy programozó felületet is írnom, ami már magával hozta a PLC gondolatát. Ha lúd, hát legyen kövér alapon és hogy ne csak 8+8 port legyen, elkezdtem egy komplett eszközt kifejleszteni. A véletlen úgy hozta, hogy szereztem egy érintő képernyőt PC-hez, ami úgy felcsigázott, hogy mindjárt írtam is egy Human Machine Interface (HMI) programot, azért logy legyen mit nyomkodni. :)   Eredetileg ezt is önálló vezérléshez készítettem, de hamar felmerült az ötlet, hogy összekössem a PLC-t a HMI-vel. Ezt a kezdetekben a soros porton oldottam meg, de aztán rájöttem hogy inkább a hálózaton összekötött gépek között kommunikáljon a két program. Megírtam egy egyszerű kommunikációs protokollt, amivel sikerült az adatokat szinkronizálni. Hogy ne kelljen a HMI-be beletúrnom, írtam inkább egy kis extender modult. A protokollt továbbfejlesztettem, hiszen már nem csak a két program között kellett kommunikálni. így jött létre a LanBus protokoll, amivel már több program is tud kommunikálni egymás között. Ezáltal
már volt PLC, HMI, és extender összekötve a hálózaton. Ráérő időmben egyre bonyolultabb programokat írtam rá, amik mondjuk egy komplett gépet irányítanának, ha volnának. Hallkan elárulom hogy készül egy virtuális gép szimulátor is, amibe többféle gépsor áll a programozó rendelkezésére. Pld. Szállítószalagok, kapu, tartályok, széf, útkereszteződés, fűtés rendszer, lift, és még sok egyéb. Természetesen ez is összeköthető lesz a Lanbus hálózaton.

- Nemrég a hardveres körítésen is elkezdtem dolgozni, hogy tényleges gépeket is rá lehessen kötni az emulátorra. Problémát jelentett az új gépeken levő portok hiánya. Sem soros, sem párhuzamos port nem állt rendelkezésre a fránya számítógépeken, ezért az USB-t voltam kénytelen munkára bírni. Most ott tartok hogy a legegyszerűbb és legolcsóbb, az USB - RS232 átalakítót használni a hardverek kapcsolatához. Ettől függetlenül az emulátor kezeli az LPT portokat is, valamint ezen felül a bővítőkártyás LPT portokat is. Már nagyjából készen vannak ezek a program modulok, úgy hogy rövidesen már működni fog ez a funkció is. A PC portokhoz köthető elektronikus kártyákat csak a PLC emulátor és a Lanbus expander fogja tudni majd kezelni.

- Mint látható, ezek után evidens volt a PLC emulátor megszületése. A program maga VB-ben készült, amiért szintén leszóltak. Nos a VB semmivel sem rosszabb a nagyrabecsült C-nél, pusztán másképpen kell gondolkodni. Sajnos a .net programokhoz kell a keretrendszer is, ami egy kis konzolon kivitelezhetetlen. Az emulátor viszont elfut akár egy P2-es gépen Win98-al, hálózati kapcsolattal, HMI-vel, Lanbuszzal, cakli-pakli.
Jelen állapotában az emulátor működik a Win98 tól a Win7 ig, és egy kis trükkel a Win8-on is munkára fogható. Ennyit az ócska VB-ről. A program írása közben kihívást jelentett a virtuális CPU megalkotása a VB-ben, de sok fejtörés és elszállás után végre sikerült. A legnagyobb kihívást viszont a számítógépen levő portok közvetlen működtetése jelentette, de már arra is megtaláltam a megoldást hogyan kerülhetem ki az oprendszer háklijait.

 
A program kizárólag, a szabadidőmben készül, az oktatók, diákok, és közreműködők ötleteivel gazdagítva. Jelenlegi állapotában még igen szegényes, de már tökéletesen futtatja a beleírt programot. Még nem minden tervezett utasítást ismer, valamint igen sok funkció hiányzik még belőle, majd alakul mint a púpos gyerek a prés alatt! Sajnos lassan készül(get) mert van egyéb elfoglaltságom is.
 Időnként frissíteni fogom a letöltést az aktuális verzióra. Lesznek benne hibák, de ezt nem kell jelezni, a tesztelők úgy is jelzik. (Mindent el bírnak rontani, sőt még másra is képesek...)

Ez a kis segédlet azoknak készült, akik ismerik a relés technikát, de nem sok gőzük van a PLC programozáshoz. A NAE PLC-emulátor nyelvezete nagyon hasonló az OMRON PLC nyelvezetéhez, de ez nem az! Nem is volt cél másolatot írnom. Ettől függetlenül lehet vele marha nagyokat szívni, meg dühödten asztalt csapkodni! Remélem az általam konyhanyelven megírt segédlet hasznosnak bizonyul a reléagyúak számára is.


*** Relés logika vs. PLC ***

|   0100     0603     0602                                                                 0500 
+---|  |--+--|××|--+--|××|-----------------------------------------------------------------{  }-+
|         |        |                                                                            |
|   0500  |        |                                                                            |
+---|  |--+        |                                                                            +
|                  |                                                                            |
|   0107           |                                                                            |
+---|  |-----------+                                                                            +
|                                                                                               |
|   0100     0101     0102                                                                 0602 |
+---|  |-----|  |-----|  |-----------------------------------------------------------------{  }-+
|                                                                                               |
|   0100     0201     0312                                                                 0603 |
+---|  |-----|××|-----|  |--+--------------------------------------------------------------{  }-+
|                           |                                                                   |
|   0211     0215           |                                                                   |
+---|  |-----|  |-----------+                                                                   +
|                                                                                               |

A fenti diagramm részlet kivitelezhető relésen és PLC-be írva is.

00000 NOP           ;Példa ladder beírása, mnemonic kódban.
00001 LD 0100       ;Load 0100 bemenet

00002 OR 0500       ;Párhuzamosan vele 0500
00003 AND NOT 0603  ;Sorba vele nyitó érintkező 0603
00004 LD 0107       ;Load 0107
00005 OR LD         ;Két blokk összekötése párhuzamosan
00006 AND NOT 0602  ;Sorba vele nyitó érintkező 0602
00007 OUT 0500      ;Kimeneti relé
00008 LD 0100          ;Ez már a következő blokk
00009 AND 0101
00010 AND 0102
00011 OUT 0602

stb..

-Relés-
Aki ismeri a relékkel kivitelezett vezérlést, az tudja hogy egy bonyolultabb vezérléshez a reléken kívül sokminden más is kell. Pld. időzítők, funkciórelék, sorrend vezérlők, programkapcsolók, számlálók stb. Ezeket az alkatrészeket, eszközöket, vezetékekkel kell összekötni ami egyáltalán nem rugalmas. Módosítás esetén át kell huzalozni és a rajzba is be kell vezetni a változtatásokat. 

-PLC-
Nézzük ugyanezt egy PLC-vel megvalósított rendszer esetén. Vegyük úgy hogy a relék, időzítők, számlálók és még sok minden más magában a PLC-ben vannak, elektronikai áramkörökkel kivitelezve. Azt hogy ezekből mit fogunk mivel összekötni és használni, azt a PLC-t programozó egyén szabja meg, a PLC-be írt program által. Tehát ezzel a komplex bonyolult vezérlést, megoldottnak tekinthetjük.

- Hogyan is van ez? 

A logikai kontrollereknek vannak digitális és analóg ki és bemenetei. Ezek tetszés szerint felhasználhatóak. A bemenetekre természetesen bejövő jeleket kell kötni, azaz nyomógombok, végállások, szenzorok, stb. jeleit. A kimenetekre pedig lámpákat, végrehajtó elemeket, stb. köthetünk. A relének két állapota van. Kiejtett és meghúzott állapot. A PLC-ben a kiejtett állapot 0-nak felel meg és a led nem világít, a meghúzott pedig 1-nek és a led világít. 

A PLC arculata és funkciói.


- Ismerkedjünk a PLC-vel.

- A valós PLC-n nincs ennyi funkciógomb. Az emulátoron azért van ennyi gomb mert még fejlesztés alatt van és így egyszerűbb az írása. A 'Program' gombhoz rendelt programozói felület, külön szoftver lesz, ami hálózaton vagy soros porton fog kommunikálni a PLC-vel. A tábla szerkesztő és a monitor funkció is átkerül majd a programozóba. Így akár online is nyomon lehet majd követni a változásokat. A Hardware a Lanbus és Settings beállítás is külön modul lesz.

A gombok funkciói:

- A PLC bal oldali gombjai a RUN, STOP, és PROGRAM, a PLC működési módjának kapcsoására szolgálnak. A RUN és a STOP működése egyértelmű.
 A 'Reset' a szokásos újraindításra szolgál. A 'Power Off' az emulátornál a program bezárása. Az LCD kijelző melletti ledek a működési visszajelzők. A kijelző alatti numerikus kijelző a jobb oldalon megjelenő IO tábla kezdő csatorna számát mutatja. A mellette levő + - gombok ezen csatornák lapozása. Az alatta levő választókapcsolók az IO szekciók.

Az IO szekciók értelmezése:

- Az 'INP' a fizikai bemenetek. 0100 tól 0499-ig. Az 'OUT' a fizikai kimenetek 0500 tól 0799-ig. Ezeket úgy képzeljük el, mint a számozott sorkapcsokat, amikre jeleket lehet kötni, illetve onnan levenni. A jobb oldalon lévő led panelon látható az éppen kiválasztott 'sorkapocs mező' azaz csatorna állapota. (Bemenetnél amelyik sorkapcson villany van, az a led világít. Kimenetnél amelyik számú relé húz az a led világít és a hozzá tartozó sorkapocs kimenet is aktív.)
Ha az emulátorhoz nem rendelkezünk IO expanderrel, akkor ezek a fizikai be és kimenetek virtuálisak lesznek.
- Az 'LR' a billenőrelék jelzője LR 0800 tól LR 0999-ig. Ezek csak logikai relék, azaz csak a PLC belső memóriájában léteznek és nincs fizikai kimenetük. Ugyan úgy működnek, mint a relék, de megőrzik az állapotukat. Tehát ha meghúzatjuk, úgy is marad ellentétes parancsig. 
- A 'HR' a logikai tartórelék jelzője HR 1000 től HR 1199-ig. Működés szempontjából az LR-rel megegyező, de állapotát a PLC kikapcsolása után is megőrzi.
- A 'KEY' csak az emuláció miatt létezik. A valós PLC-n nincs ilyen. Ez a csatorna a KEY 32 től KEY 47-ig, a 0-9,QWERTZ  billentyűk állapotait adja vissza nyomógomb, vagy kapcsoló módban.

 **** NAE-PLC emulátor csatorna kiosztásai. ****

Terület                            LD operandus bit
Fizikai keyboard IO      KEY32 - KEY 47                 Fizikai billentyűzet (PC-n)
Fenntartott                     0048 - 0099                         Nem hivatkozható a PLC programból.
Input channels               0100 - 0499                          Fizikai bemenet 20*16-bit + 20*4-bit Hardware module status
Output channels            0500 - 0799                          Fizikai kimenet 15*16-bit + 15*4-bit logikai objektumok (x16....x19)
Munkaterület                LR0800 - 0999                    Logikai Latch relay
Rögzítő Bit Terület       HR1000 - 1199                    Logikai Hold relay
Analog terület               AM0001 - AM0032             Fizikai analóg csatorna 
(Még nincs kivitelezve)
Virtual analog terület    ADM0100 - ADM0128       Lanbus Fizikai/HMI/Virtual machines
32-bites szó terület       AL0300 - AL0999                Analog / Digital  munkaterület
(Még nincs kivitelezve)
Analog rögzítő terület    AH1000 - AH1099              Analog Hold (Még nincs kivitelezve)
Időzítő Terület               TIM0001 - TIM4095          Belső időzítők
Számláló Terület            CNT0001 - CNT4095         Belső számlálók
Taszk Jelző Terület       TK0000 - TK0031               (Még nincs kivitelezve)
Rendszerterület             1800-1915                            A PLC belső állapotai, időzítők számlálók komparálók stb.
Órajelek                         1901 - 1905                          0,1s, 0,2s, 0,5s, 1s, 1min
TR Terület                     TR0 - TR15                         Temporary relay
(Még nincs kivitelezve)
Virtual bit Terület          DM2000 - DM3000            Data multiplex area, Lanbus. IO Expander / HMI / VM 

**** Jeleneleg működő hivatkozások: ****
KEY   PC keyboard map
HR    Holding relay Tartó
LR    Auxiliary kiegészítő
DM    Data multiplex area Lanbus

**** Jelenlegi memóriakiosztás. ****

'----------------------- Keyboard map 16-bit ----------------------------
'0 ,1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,Q ,W, E ,R ,T ,Z
'32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47
'----------------- Fizikai bemenetek 20*16 bit (320) --------
'100,120,140,160,180,200,220,240,260,280,300,320,340,360,380,400,420,440,460,480
'----------------- Fizikai kimenetek 15*16 bit (240)---------
'500,520,540,560,580,600,620,640,660,680,700,720,740,760,780
'----------------- Latch relays 10*16 bit ------------------------
'800,820,840,860,880,900,920,940,960,980
'------------------ Holding relays 10*16 bit --------------------
'1000,1020,1040,1060,1080,1100,1120,1140,1160,1180
'------------------ Digital multiplex channel 62*16 + 4 bit ------------
'2000,2020,2040,2060,2080,2100,2120,2140,2160,2180,2200,2220,2240,2260,2280
'2300,2320,2340,2360,2380,2400,2420,2440,2460,2480,2500,2520,2540,2560,2580
'2600,2620,2640,2660,2680,2700,2720,2740,2760,2780,2800,2820,2840,2860,2880
'2900,2920,2940,2960,2980,3000,3020,3040,3060,3080,3100,3120,3140,3160,3180
'3200,3220,3240,3260,3280,3300,3320,3340,3360,3380,3400,3420,3440,3460,3480
'3500,3520,3540,3560,3580,3600,3620,3640,3660,3680,3700,3720,3740,3760,3780
'3800,3820,3840,3860,3880,3900,3920,3940,3960,3980

'Írható / olvasható regiszterek.
1700 Inibit out modules
1701 Inibit input modules
1702 - 1799  Hardware set/status area.

'Csak olvasható terület (Rendszer)
1800  NC
1801  NC
1802  NC
1803  NC
1804  NC
1805  NC
1806  Inibit out modules
1807  Inibit input modules
1808  Battery check
1809  Normally off
1810  Normally off
1811  Normally off
1812  Normally off
1813  Normally on
1814  Normally off
1815  This relay is turned ON for one scan time at the start program execution.
1900  Timer error
1901  0.1sec clock
1902  0.2sec clock
1903  1sec clock
1904  5sec clock
1906  60sec clock
1907  Arithmetic operation is not output BCD form. (ER)
1908  Carry flag    (CY)
1909  CMP more than (<)
1910  CMP equal     (=)
1911  CMP less than (>)
1912  COM Error flag
1913  LANBUS error flag
1914  INHIBIT flag
1915  Physical IO error

Ezek a PLC memóriakiosztásai. Elsőre ez érthetetlennek tűnik, de nagyon fontos információ. A számokkal hivatkozhatunk a PLC programban a relékre, érintkezőkre, számlálókra, időzítőkre, stb. Mint látható a kimeneti csatorna 0500-tól kezdődik és 0780-ig tart. Minden csatorna 16-bites plusz 4 extra bit. Ha az emulátoron a 0780-ra állítjuk a számkijelzőt, akkor a ledes táblán láthatjuk a csatornát és bitjeinek állapotát. A ledes tábla egyszerre két csatornát jelenít meg. A számkijelzőn, mindig a legelső
(bal legfelső) led által jelzett bit száma látható. A ledek a hozzájuk tartozó IO bitek állapotát mutatják. Az egérrel történő rákattintásukra állapotot váltanak. Persze csak akkor, ha a PLC nem fut, vagy nincs használva az adott bit. Így például IO expander nélkül is ki tudjuk próbálni a programunkat. Ha van expander, akkor be lehet kötni az adott kapcsolásba és máris hozzákezdhetünk a programozáshoz. Lehetőség van továbbá a billentyűzetet is felhasználni nyomógombokként, vagy kapcsolókként.

- Most hogy nagyvonalakban átvettük a PLC ismertetését, kezdődjön hát a programozás. Ehhez persze szükséges az emulátor, ami a lap alján letölthető.


A programozó konzol


- Az emulátoron a 'Program' gombot megnyomva előbukkan a programozói felület, amiben a PLC programját lehet megírni. Ez a felület szokásomhoz híven nem a végleges forma. Funkcióját tekintve viszont az. Az emulátorhoz készítettem néhány példaprogramot, ezeket fogjuk használni. Az eddig olvasottakból kiderül hogy itt egy kissé másképpen kell gondolkozni, mint a relés kapcsolásnál. 



Ez lenne a valamikori programozói felület. Jelen állapotában képes elemezni a Mnemonic szavakat. Már az alapvető utasításokat lefordítja és beírja a PLC memóriába. Sajnos még nem működik a szerkesztés, csupán a betöltés. A további fejlesztés során, létradiagrammban is lehetséges lesz a PLC programírás.
(Még ki kell találnom hogyan fordítson oda-vissza.)
A betöltés után ezt az ablakot bezárva, a program a memóriában marad, mindaddíg míg be nem töltünk megint valamit. A betöltés után a RUN gombra nyomva indítható a program élesben.

Egy kép a ladder felületről: [ ]


- A 'PLC functions' blokkban a programozási, konfigurációs, hardver beállítási és kommunikációs beállító ablakok érhetőek el.

 A 'Program' gombbal a programozói felületet nyithatjuk meg, amiben a PLC emu. által futtatandó programot írjuk, vagy töltjük be. Jelen pillanatban, csak a betőltési lehetőség él.
 Az 'IO tables' gombbal a az I/O biteket nevezhetjük el, hogy könnyebb legyen az azonosítás, programírás közben.
 A 'Hardware' gombbal a helyileg a géphez kötött hardver elemet konfigurálhatjuk.
 A 'Lanbus' gombbal a távoli LAN kapcsolattal összekötött gépeken futó modulok összekötéseit állíthatjuk be.
 A 'Settings' gombbal a működési módok beállítóablaka nyílik meg.
 A 'Monitor' gombbal a menetközbeni memóriainformációkat jeleníthetjük meg.
 A 'Reset' természetesen az újraindítást végzi.
 Igazából nagyon könnyű megtanulni vele a logikai programozást, ráadásul fizikai I/O portokkal is felruházható, tehát valódi eszközöket is működtethet, nem csak virtuális elemeket, objekteket. Lehetőség van még az intraneten is összekötni a modulokat, ezáltal helyileg szétválaszthatóak a modulok. Könnyen belátható a lehetőségek széles tárháza. A nyelvezete egyszerű, hasonlít az OMRON PLC-k nyelvéhez. Tanuláshoz, hobbihoz kiváló alkalmazás.

Az IO táblák beállítása.

 A beállítás ezen ablaka, két részből áll. A bal oldaliban a PLC emulátor fizikai, ill. logikai pontjaihoz rendelhetünk nevet, ami megkönnyíti a programozást, másrészt az ember számára értelmezhetővé teszi a PLC-ben levő számokkal jelölt bitek illetve csatornák értékét, hiszen egyszerűbb értelmezni a 'Munkavédelmi meghúzott' feliratot mint azt hogy '0101'.

 A PLC belső memóriájában többféle információ tárolódik, hiszen nem csak ki és bemenet van, hanem vannak belső relék, tartórelék, és nem felejtő relék is. Ezen kívül még a működéséhez is szükséges egyéb memóriaterület, pld. időzítők, számlálók értékeinek tárolásához.
 
Látható hogy van 'Inputs', 'Outputs', 'Auxiliary','Holding',  'System' és 'Keyboard' területek, de ezek csak számok, mert minden memória cellának száma van. Ezekhez a számokhoz rendelhetjük hozzá az általunk beírt szöveget.  Ha mondjuk a PLC  0100-as bemeneti pontjára egy Biztonsági retesz érzékelő lesz kötve, akkor célszerű a 0100-as mezőbe a 'Biztonsági retesz' feliratot írni és így tovább.

 Az ablak jobb oldalán a felhasználó által megjeleníteni kívánt memória cellákat lehet konfigurálni. Ezek a táblák a PLC-ken megszokott ledek melletti kis tollal megírható címkéket tartalmazó kártyák, szoftveres megfelelői.  Megszabható hogy melyik tábla, melyik helyén, mi szerepeljen és milyen színnel.. A bal oldalon kikeressük a számát, a jobb oldalba meg beírjuk. Ezek után a program kicseréli a számot a hozzá beállított szövegre. Tehát minden számunkra fontos állapotot egy helyen lehet látni, a PLC üzeme közben az 'User' gombra kattintva.

A helyi hardware beállítása.

Mivel az újabb számítógépeken már egyáltalán nincs printer port, (IEEE1284) ezért már nehéz működtetni külső eszközöket, mint például robotot, vagy modellvasutat. Megoldás lehet egy PCI-LPT kártya, vagy USB IO expander (FT245), vagy USB-RS232 átalakító beszerzése. Persze ha nem kívánunk semmit működtetni, akkor ezek nélkül is használható az emulátor. Mint látható, csak kétfajta port típus közül választhatunk. Egyidejűleg csak egy perifériát lehet használni, viszont a kiválasztott portra, többféle hardvert lehet kötni, amit a lenyíló választóban ki kell jelölni. Az LPT1...LPT3-ig a párhuzamos illesztésű perifériát, az LPTX- PCI bővítőkártyára szintén a párhuzamos illesztésű perifériát, a COM1 - COM7-ig pedig az RS232 szabványú, vagy 'directport' vezérlésű perifériát lehet kötni.  Ezeken belül lehet FIX I/O expander, vagy rugalmas I/O expander. Az utóbbihoz I/O kártya, A/D kártya, D/A kártya, számlálókártya, stb. köthető.  A Fix pedig általában meghatározott számú ki és bemenetű olcsó hardvereszköz. Persze a ki és bemenet itt is lehet, a PLC-k világában már jól bevált technológiájú relés, vagy optikai leválasztású eszköz.
 A kis DIP kapcsolókkal lehet tesztelni az első 24 bitet, ha a feltételek adottak.
 A főkapcsolóval a kimenetek működését lehet be vagy kikapcsolni.
 A kapcsoló akkor világít, ha a működtető 24V rendben van és nincs tiltva.
 Az 'Inhibit IO modules' a kimeneti kártyák végrehajtó feszültségét tiltja le.
 A 'Hardware test ok.' pedig a kommunikáció állapotát jelzi a hardware és a software között.
 
- A Hardware választónál látható különböző nevek, a fizikai porthoz választható protokollokat ajánlja fel. A választásnál jelöljük ki, mit csatlakoztatunk, a számítógépre. Pld. 32-bites IO, A/D, Extender, Serial Data Transfer, Shift registers transfer.... stb.



Settings.


Az emulátor működési módjának beállítása egy ablakban történik. Itt lehet beállítani a szál és az osztály prioritását, a ciklus sebességet, az operációs rendszerhez való viszonyt, az időzítők és a billentyűzet működését, a virtuális hardverek működését, valamint a hangot.

Monitoring.
 
- Jelenleg a monitor gomb megnyomására csak a memory map látható. A továbbfejlesztésnél, természetesen a valódi monitorozás válik lehetővé.

A LANBUS kapcsolatok beállítása.

Lehetőség van továbbá LanBus kapcsolatra, ami az IO bus meghatározott területének hálózaton keresztüli eljuttatására szolgál, egy másik eszköznek. Ezáltal a LanBus-ra felfűzött modulok és eszközök, a hálózati kapcsolaton keresztül tudnak kommunikálni. Ilyen eszközökhöz (pld. LanBusEx modul) is lehet ugyanazokat a hardvereket  kapcsolni, mint az emulátorhoz. Tehát az emulátor mondjuk egy asztali PC-n fut, a virtuális pult egy érintőképernyős gépen, míg a LanRack egy Micro ATX alapon futva , IO expanderrel képes pld. egy gépet működtetni. A valóságban ez a konfig. úgy működik, hogy a virtuális pulton megnyomva egy gombot, a gombhoz rendelt bit változása elküldésre kerül. Ezt mondjuk feldolgozza a PLC és a felhasználó által írt programban, meghatározott esemény fog történni. Ha ez az eseményváltozás pld. az hogy induljon el a modellvasút egyik mozdonya, akkor ez az információ elküldésre kerül és az esemény megtörténik.
 Ezáltal megvalósítható például egy PLC általi távoli vezérlés.

Dashboard, vagy más néven HMI.

 Ha nincs kedvünk és pénzümk építeni vezérlőpultot, akkor ezzel a játékszerrel virtuálisan építhetünk egyet. A rajta levő objektumok mindegyikéhez hozzárendelhető A PLC I/O területének valamely meghatározott része, a fizikailag kiosztott címek kivételével. A kapcsolók például a 0200...0204-hez, a lámpák pld: 500...507-hez, a potméterek pedig majd az analog csatornák valamelyikéhez. 

Ezekkel a lehetőséggel, gyakorlatilag kiválthatóak lesznek a fizikai kezelőszervek. Ha érintőképernyős monitorunk van, akkor célszerű ezt a pultot használni. A megjelenő virtuális kezelőszervek bármelyike bárhová helyezhető és bármelyikhez kiosztható a multiplex csatorna bármely nem lefoglalt bitje. A multiplex csatorna (DM) elérhető a lanbuszon, valamint fel tudja dolgozni a PLC is. Tehát akár közvetlenül is kapcsolhat mondjuk egy virtuális nyomógomb egy valós relét, de felhasználhatjuk a PLC logikai hálózatában is. A kapcsolóknak és az egyéb 'zajosabb' mozgó kezelőszerveknek hangja is van, ami kicsit visszaadja a természetesség érzését. A fejlesztések alatt, kerülnek még rá műszerek, kijelzők.

Ha a programot szeretné kipróbálni, töltse le most. Verzió: Demo-0.7.00 Beta  Majd mentse egy mappába, csomagolja ki és már indíthatja is.




  *********************
  *  FIGYELMEZTETÉS *
  *********************

- Ha a terméket demonstrációs gépek vezérlésére használja, vegye figyelembe az alábbiakat. -

SOHA NE HASZNÁLJA A TERMÉKET OLYAN ALKALMAZÁSRA, AMI KOCKÁZATOT JELENTHET AZ EMBERI ÉLETRE VAGY TULAJDONRA!

- A Native Electronics nem vállal felelősséget a programozható termék felhasználó által történő programozásáért, vagy ennek bármilyen következményéért.

- Különösen fontos, hogy a PLC-t és az összes PLC Egységet az előírt célra és az előírt feltételek mellett használják. Kérjen tanácsot a fejlesztő képviselőjétől, mielőtt a PLC rendszert ettől eltérő alkalmazásokhoz használná.

- A CPU frissíti az I/O-t, amikor a program leáll (vagyis még PROGRAM módban is). Alaposan erősítse meg a védelmet, mielőtt megváltoztatná bármely memóriarész állapotát, ami az I/O Modulok, Speciális I/O Modulok, vagy CPU Bus Modulok között van kiosztva. Bármely Egységhez kiosztott adatban bekövetkező bármilyen változás az Egységhez csatlakoztatott végrehajtó elemek és fogyasztók nem várt működését eredményezheti. A következő műveletek bármelyike változásokat idézhet elő a memória állapotában.

- I/O memória adatok átvitele Programozó Eszközről a CPU-ra.
- A pillanatértékek megváltoztatása a memóriában egy Programozó Eszközzel.
- Bitek kényszerített bekapcsolása/kikapcsolása egy Programozó Eszközzel.
- I/O memória fájlok betöltése adattárolóról vagy RAM fájl memóriáról a CPU-ba.
- I/O memória átvitele gazdaszámítógépről vagy egy hálózatban lévő másik PLC-ről.

- Hozzon biztonsági intézkedéseket a külső áramkörökre (vagyis amelyek nem a Programozható Vezérlőben vannak), beleértve a következő elemeket, hogy biztosítani lehessen a rendszer biztonságát, ha a PLC meghibásodása, vagy egyéb, a PLC működését befolyásoló külső tényező miatt valamilyen rendellenesség lép fel.

- A külső vezérlő áramköröknél biztosítani kell a vészhelyzeti leállási áramköröket, reteszelési áramköröket, korlát áramköröket, és hasonló biztonsági intézkedéseket.

- A PLC ki fogja kapcsolni az összes kimenetet, ha öndiagnosztizáló funkciója bármilyen hibát észlel, vagy ha súlyos meghibásodási riasztás (FALS) utasítás kerül végrehajtásra. Az ilyen hibákkal szembeni külső biztonsági megoldásokat kell alkalmazni, hogy szavatolni lehessen a rendszer biztonságát.

- A PLC kimenetek maradhatnak be- (ON), vagy kikapcsolva (OFF) a kimeneti relék beégése, vagy a kimeneti tranzisztorok roncsolódása miatt. Az ilyen hibákkal szemben külső biztonsági megoldásokat kell alkalmazni, hogy továbbra is szavatolni lehessen a rendszer biztonságát.
A Hibás modulok nem használhatóak.

- Amikor a 24V-os DC tápforrás (PLC modulok szolgálati áramellátása) túlterhelődik vagy rövidre zár, akkor a feszültség leeshet, és a kimenetek kikapcsolódását eredményezheti. Az ilyen hibákkal szemben külső biztonsági megoldásokat kell alkalmazni, hogy szavatolni lehessen a rendszer biztonságát.

- A PLC RUN módban elindul, és a működés azonnal megkezdődik. Sem odafigyelve, sem gondatlanságból ne hagyja, hogy a működés megkezdődjön, anélkül, hogy meggyőződne annak biztonságosságáról.

- A periféria busz forgalmának azonnalinak kell lennie, ezért ne használjon wifi vagy egyéb vezeték nélküli összeköttetést a Lanbus adatainak átviteléhez.

- A Lanbus átviteli idejének meghosszabbodása a perifériák leválasztódását okozhatja, ezáltal hibás üzemállapot jöhet létre.


****** Vigyázat! *******
- Legyen óvatos, amikor a személyi számítógéphez periférikus eszközöket csatlakoztat.
Rövidzárlat jön létre, ha a külső áramforrás 24 V-os oldala van földelve, és a periférikus eszköz 0 V-os oldala van földelve. Ha ilyen típusú PLC-hez csatlakoztat periférikus eszközt, akkor a külső áramforrásnak vagy a 0 V-os oldalát földelje, vagy egyáltalán ne földelje a külső áramforrást.


- Mindig 100Ohm vagy annál alacsonyabb földeléshez csatlakoztasson, amikor a Modulokat telepíti. Ha nem csatlakoztat földeléshez, akkor az áramütéshez vezethet.
- Mielőtt a következők bármelyikét megkísérelné, mindig kapcsolja ki a PLC áramellátását. Ha nem kapcsolja le az áramellátást, az meghibásodáshoz vagy áramütéshez vezethet.
- Tápegységek, I/O Modulok, Vezérlőkártyák vagy egyéb Modulok felszerelése és leszerelése.
- Modulok összeállítása.
- DIP kapcsolók, selectorok, vagy körkapcsolók beállítása.
- Vezetékek csatlakoztatása vagy a rendszer huzalozása.
- Csatlakozók csatlakoztatása vagy szétkapcsolása.

- Az óvintézkedések betartásának elmulasztása a PLC vagy a rendszer hibás működéséhez vezethet, vagy kárt okozhat a PC-ben vagy az IO modulokban. Mindig vegye figyelembe ezeket az óvintézkedéseket!

**********************************************************


A szoftvert folyamatosan fejlesztem, ahogy időm engedi. Időnként érdemes visszanézni a további fejleményekért.
Az email címem: Nincs

Utolsó frissítés  Native Electronics Coo.