Az NXC nyelv NXC. Lego NXT robot programozása. Nyelv segítségével. Írta és fordította: prof.ing.kőrösi Gábor. Oldal , Zenta-Szerbia,

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Az NXC nyelv NXC. Lego NXT robot programozása. Nyelv segítségével. Írta és fordította: prof.ing.kőrösi Gábor. Oldal1. 2010, Zenta-Szerbia,"

Átírás

1 Az NXC nyelv Lego NXT robot programozása NXC Nyelv segítségével Írta és fordította: prof.ing.kőrösi Gábor 2010, Zenta-Szerbia, Bolyai Tehetséggondozó Gimnázium Oldal1

2 BEVEZETŐ 2 I. AZ ELSŐ PROGRAMUNK MEGÍRÁSA 3 A ROBOT ÉPÍTÉSE 3 ISMERKEDÉS A BRICX COMMAND KÖZPONTAL 4 A PROGRAM ÍRASA 5 A PROGRAM FUTTATÁSA 6 HIBÁK A PROGRAMUNKBAN 6 A SEBESSÉG VÁLTOZTATÁSA 7 ÖSSZEFOGLALÓ 8 II. ÉRDEKESEBB PROGRAM KÉSZÍTÉSE 9 FORDULÓ MOZGÁS KÉSZÍTÉSE 9 UTASÍTÁSOK ISMÉTLÉSE 10 KOMMENTÁROK HOZZÁADÁSA 11 ÖSSZEFOGLALÓ 12 III. VÁLTOZÓK HASZNÁLATA 13 MOZGÁS SPIRÁL ALAKZATBAN 13 VÉLETLEN SZÁMOK 14 ÖSSZEFOGLALÓ 15 IV. VEZÉRLŐ UTASÍTÁSOK 16 AZ IF FELTÉTELES UTASÍTÁS 16 A DO UTASÍTÁS 17 ÖSSZEFOGLALÓ 18 V. ÉRZÉKELŐK 19 VÁRAKOZÁS AZ ÉRZÉKELŐRE 19 LEHETŐSÉGEK AZ ÉRINTŐ ÉRZÉKELŐVEL 20 FÉNYÉRZÉKELŐ 20 HANG ÉRZÉKELŐ 21 ULTRAHANGOS ÉRZÉKELŐ 22 ÖSSZEFOGLALÓ 23 VI. FÜGGVÉNYEK ÉS ELJÁRÁSOK 24 ELJÁRÁSOK 24 FÜGGVÉNYEK 25 MAKRÓK DEFINIÁLÁSA 27 ÖSSZEFOGLALÓ 28 Oldal2

3 VII. HANG SUGÁRZÁSA 29 HANG FÁJL LEJÁTSZÁSA 29 HANG JÁTSZÁSA 30 ÖSSZEFOGLALÓ 31 VIII. A MOTOROK MÉLYEBB ISMERETE 32 LÁGY LEÁLLÍTÁS 32 ÖSSZETETT VEZÉRLÉS 32 PID VEZÉRLÉS 34 ÖSSZEFOGLALÓ 36 IX. AZ ÉRZÉKELŐK TOVÁBBI LEHETŐSÉGEI 37 ÉRZÉKELŐ MÓDOK ÉS TÍPUSOK 37 FORGÁS ÉRZÉKELŐ 38 TÖBB ÉRZÉKELŐ EGY BEMENETEN 39 ÖSSZEFOGLALÓ 40 X. PÁRHUZAMOS ELJÁRÁSOK 41 A ROSSZ PROGRAM 41 A KRITIKUS RÉSZEK ÉS A MUTEX VÁLTOZÓ 42 SZEMAFOROK HASZNÁLATA 43 ÖSSZEFOGLALÓ 44 XI. ROBOTOK KÖZÖTTI KOMUNIKÁCIÓ 45 A MASTER-SLAVE ÜZENETKÜLDÉS 45 SZÁMOK ÉRTELMEZETT KÜLDÉSE 47 DIREKT VEZÉRLÉS 48 ÖSSZEFOGLALÓ 49 XII. TÖBB UTASÍTÁS 50 IDŐZÍTŐK TIMERS 50 PONT MÁTRIXOS KIJELZŐ 51 FÁJL RENDSZEREK 52 ÖSSZEFOGLALÓ 56 XIII. ÁTTEKINTÉS 57 JOGOK ÉS FELHASZNÁLÁSI FELTÉTELEK 58 Oldal3

4 Bevezető Ez a könyv elsősorban azok számára íródott akik most kezdenek ismerkedni a Lego Mindstrom programozási lehetőségeivel. Amennyiben foglalkozni szeretnénk valamely új vagy régebbi típusú lego robot programozásával, legyen az a Mindstorms RIS, CyberMaster, vagy Spybotic illetve a legújabb Mindstroms NXT, ehhez elsősorban valamilyen programozói felületre lesz szükségünk. Elsőként értelem szerűen mindenki az ingyenesen kapható és jól dokumentált NXG nyelvhez folyamodik, melyben grafikus környezetben tudunk dolgozni. A jól kezelhető felületnek köszönhetően, könnyedén oldhatunk meg programozási problémákat, legyünk akár óvodások vagy egyetemet végzett szakemberek. Ezt a nyelvet a LabViev a Legoval közreműködve hozta létre mely, animált eszközökkel teszi lehetővé az egyszerű programozást még olyan emberek számára is akik az eddigi életükben soha, egy sort sem programoztak. Az NXG programkörnyezet nagyon egyszerű, viszont ennek következtében nem kellőképp rugalmas, és bizonyos esetekben csak felesleges program modulokkal tudjuk rákényszeríteni a gépünket a kívánt feladatra. Ezen problémák kikerülése miatt hozta létre John Hansen az NXC program nyelvet mely Lego és más robot rendszerek programozásban nyújt segítséget. Az NXC egy C nyelven alapuló program környezetet. Itt most sokan felkaphatják a fejüket, hogy hogyan fogjak hozzá, hiszen és még soha sem programoztam, azonban biztosíthatom az olvasót, hogy még az alapok hiánya mellett is megtanulhatja ezt a nyelvet, ha lépésről lépésre végigköveti a könyv egyes fejezeteit. Hogy a program írása még egyszerűbb legyen, használhatjuk a Bricx Command Center (BricxCC)-t. Ez az eszköz segít abban, hogy a megírt programokat egyszerűen fel illetve letöltjük a gépünkbe, futathatjuk azokat, adatokat keressünk a NXT flash memóriájában, stb. Ez a leírás a BricxCC (vagy újabb) integrált fejlesztő környezetére épít. A program letölthető : Oldal4

5 I. AZ ELSŐ PROGRAMUNK MEGÍRÁSA Ebben a fejezetben megtanuljuk, hogy hogyan kell egy egyszerű programot írni. A programban melyet megírunk a következőket fogjuk csinálni: a robot előrehalad 4 másodpercet, majd visszafelé megy 4 másodpercet, ezek után megáll. Ez nem tűnhet túl bonyolult feladatnak, viszont ezen a példán keresztül rálátásunk nyílik a programozás alap logikájára, valamint azt is megtekinthetjük, hogy valójában milyen egyszerű egy program elkészítése. Mielőtt azonban bármihez is hozzá foghatnánk, szükségünk lesz egy tesztelhető robotra. A ROBOT ÉPÍTÉSE A robot melyet építünk az egész leíráson keresztül használni fogjuk így célszerű, ha egy egyszerűbb robotot építünk. Így idő takarékossági okokból a következőkben az alap csomagban kapható TRIBOT-ot fogjuk megépíteni és használni. A megépítés után le kell ellenőrizni, hogy fel, lett-e telepíve a NXT fantom drivert, mely megtalálható az alap csomagban található. Oldal5

6 ISMERKEDÉS A BRICX COMMAND CENTERREL A elkövetkezőkben a programjainkat a BricxCC segítségével fogjuk elkészíteni. A program indításához kétszer rá kell kattintanunk a BricxCC ikonjára. (Ez csak abban az esetben lehetséges ha már előzőleg letöltöttük és feltelepítettük a gépünkre ezt az alkalmazást. Amennyiben ez még nem történt meg úgy pótoljuk ezt a hiányosságot). Miután elindítottuk az alkalmazást, megkérdezi tőlünk, hogy hol található a robotunk. Ekkor kacsoljuk be a robotunkat, majd kattintsunk az OK-ra, és ennek hatására a program automatikusan (legtöbbször) megtalálja az eszközt. Ezek után ismerkedjünk a felhasználói felülettel. (lásd lent a képen) Mint látható az alkalmazásunk úgy néz ki mint egy egyszerű szöveg szerkesztő, és a menüje is a szokványos elemekkel rendelkezik,mit például: gombok a mentéshez, megnyitáshoz, nyomtatáshoz, stb. Továbbá, találhatóak további speciális menük is melyekkel, a megírt programunkat tudjuk fordítani,a gépbe tölteni vagy információkat kérhetünk le a robotból. Ahhoz hogy megírhassuk az első programunkat legelőször szükségünk lesz egy új file nyitására, melyet a NEW FILE gomb megnyomásával tehetünk meg. Oldal6

7 A PROGRAM ÍRASA Gépeljük be a következő programsorokat Első ránézésre komplikáltnak tűnhet a dolog, ezért elemezzük át a fent látottakat. Amint észrevetettük az említett pár sor NXC nyelvi elemeket tartalmaz. A programunk csak egy eljárásból épül fel, melynek neve main. Minden egyes programoknál szükséges hogy az eljárásokat main-nek nevezzük el melyet a robot egyetlenként értelmezve végrehajt. (Erről bővebben is beszélünk majd a hatodik fejezetben) Az eljárásunk továbbá tartalmaz több parancsot, melyet utasításnak is szoktunk nevezni. Láthatjuk, hogy a programunk kezdetét és végét egy zárójel( { } ) fogja, közre mely egyértelműen behatárolja a programunk törzsét. Minden utasítást kötelezően pontos vesszővel (;) kell zárnunk. Most hogy letisztáztuk az alapokat, érthető,hogy hol kezdődik a program, hol kezdődnek egyes parancsok és hogy mire szolgálnak ez elválasztó karakterek, értelmezhetjük a programot. Az eljárásunk törzse a következő képen épül fel: Ennek alapján az előzőleg begépelt programunkban hat darab utasítást találhatunk. Tekintsük meg ezeket egyenként. OnFwd(OUT_A, 75); Ez az utasítás jelzi a robotnak, hogy indulnia kell, az A kimenetre (output A) csatlakoztatott eszköznek. Ez egy motor mely a parancs hatására elindul előre (forward). A további számok a sebesség beállítására szolgálnak mely ez esetben a maximális sebesség 75%-át jelenti. OnFwd(OUT_C, 75); Oldal7

8 Ez az utasítás megegyezik az előzővel, azzal az eltéréssel, hogy most a C motor indul meg. Ez az utasítás után már mindkét motorunk forog (előre -forward). Wait(4000); Most a várakoztatáshoz érkeztünk. Ez az utasítás 4 másodperces várakoztatást jelent. Ezt az adatot a következő számok arányából kapjuk, egy másodperc késleltetés 1/1000. Tehát nagyon precízen be tudjuk hangolni a programunkat a várakoztatáskor. A 4 másodperc alatt a programunk alvó állapotba kerül(ez idő alatt nem érzékel semmit a külső világból), és a robot folyamatosan halad előre. OnRev(OUT_AC, 75); Most már eleget haladt előre a robotunk, szóval jelezzük neki, hogy fordítsa meg a motorok forgás irányát hátrafelé. Mint láthatjuk nem kötelező, hogy ezt a parancsot egyenként adjuk ki, mivel módunk van rá, hogy akár két kimeneten megjelenő parancsot is kiosszunk az OUT_AC utasítással. Wait(4000); Ismételten 4 másodperc várakozás következik. Off(OUT_AC); És leállítjuk mind két motort. A programunk működése tehát: A motorok forognak 4mp előre és 4mp hátra majd megállnak. Bizonyára feltűnt, hogy a programozó környezetben a szövegek automatikusan elszíneződnek gépelés közben, így segítve a program íróját a munkában. (Ezeket a színeket tetszőlegesen módosíthatjuk a beállítások menüben.) A PROGRAM FUTTATÁSA Elsőként meg kellet írni a programot, majd le kell fordítani (ez a folyamat átalakítja a forrás kódot, hogy gép számára is érthető legyen) és átküldeni a robotba az USB kábel vagy a BLUETOOTH segítségével. Itt látható gombok segítségével tudjuk fordítani, átküldeni, futtatni, és megállítani a programot. A második gomb megnyomásával, le tudjuk ellenőrizni, hogy találhatóak e hibák a programban, és hogy sikerült e lefordítani és átküldeni az adatainkat. Ha ezzel megvagyunk, futathatjuk a programunkat.(hogy ezt megtehessük, menjünk a MyFiles OnBrick menübe >Software files ->run simple_1 program) Emlékezzünk rá,hogy a programunk az NXT modulban ugyan azt a nevet viseli, mint amit az NXC-ben adtunk neki. A programot két féle képen tudjuk futtatni. Automatikusan a CLRT+F5 gombkombináció vagy indíthatjuk a letöltés után zöld gomb megnyomásával is. A CTRl+F5(vagy a zöld gomb) hatására indulnia kell a robotnak.amennyiben ez nem sikerült, ellenőrizzük át a vezetékeket. HIBÁK A PROGRAMUNKBAN Amikor programot készítünk nagy eséllyel hibákat is vétünk. Ezeket a hibákat a fordító képes megtalálni és jelezni számunkra, az oldalunk alján, ahogy az alábbi képen látható. Oldal8

9 A hiba kereső automatikusan kiválasztja az első hibát.(pl. rosszul lett begépelve az OFF parancs) Amennyiben több hiba is található a, az üzenetre kattintva kijelölődik a hibás programrész. Gyakori, hogy a program elején vétünk valami nagy hibát, így hogy időt spóroljunk ajánlatos, először kijavítani ezt majd ismételten lefordítani. A hibák kiküszöbölésben további segítség lehet a színes betűk figyelembe vétele, gyakran ennek áttekintésével szinte azonnal kiszúrhatjuk a félregépelés helyét. Viszont akadnak olyan hibák is, amelyeket a program nem tud érzékelni, mint például amikor csak az A és a C kivezetésekre (portokra) kötünk motorokat és az OUT_B parancsot használjuk. A SEBESSÉG VÁLTOZTATÁSA Ahogy láthattuk az előző program futtatásakor a robotunk túl gyorsan mozgott. Hogyan orvosolhatjuk ezt a problémát? A sebesség változtatásához elegendő, hogy átírjuk a második paramétert a zárójelben. Ezeket a számokat 0 és 100 közötti értékekre állíthatjuk. A 0 álló helyzetet jelent a 100 pedig a 100% sebességet. A következőkben láthatjuk az előző programunkat módosítva, melyben a robotunk lassabban mozog. Oldal9

10 ÖSSZEFOGLALÓ Ebben a fejezetben megírtuk az első programunkat az NXC nyelv és a BricxCC használatával. Most már tudjuk, hogyan kell programot írni, lefordítani azt és beletölteni a robotunkba. A BricxCC rengeteg tulajdonsággal bír viszont ebben a könyvben csak az alap funkcióival ismerkedünk meg. Amennyiben mélyebben szeretnénk megismerkedni ezzel a programozó környezettel, úgy ajánlatos letölteni a programhoz kapható további leírásokat. Megtanultuk továbbá az NXC nyelv legfontosabb elemeit. Megismerhettük a main eljárás felépítését,és az alap motorvezérlő parancsokkal mint a :OnFwr(),OnRev(), és az OFF() valamint a Wait() várakoztató utasítást. Oldal10

11 II. ÉRDEKESEBB PROGRAM KÉSZÍTÉSE Az első programunk nem volt valami érdekfeszítő, ezért második lépésként létrehozunk valami bonyolultabb mozgást. Ezt a lépések számának növelésével, és az NXC nyelv lehetőségeinek használatával érjük el. FORDULÓ MOZGÁS KÉSZÍTÉSE A robotunkat forduló mozgásra késztethetjük az egyik motorunk lefékezésével vagy a fordulási irány változtatásával. Tehát nincs más feladatunk, mint, hogy begépeljük, betöltjük és futtatjuk a programot. A következő példa hatására 90 0 fordulást hozhatunk létre, úgy hogy először mind két, majd csak az egyik motort forgatjuk meg. Kipróbálhatunk több különböző számot, mint például 500-at a késleltetésben (Wait()) mellyel pl. 90 o fordulás hajthatunk végre. (Ez persze függet a felülettől is melyen a robotunk halad) Az értékek egyszerűbb változtatásához előnyösebb, ha neveket használva azok értékei módosítjuk. Ezt az NXC ben konstansok használatával valósíthatjuk meg, melyet a következő programban láthatunk. Az első két sor a konstansok definiálása, melyeket ezek után tetszőlegesen tudunk használni a programunkban. Konstansok definiálása előnyös mert: ez átláthatóbbá teszi a programunkat, könnyebben tudjuk kicserélni az értékeket. Oldal11

12 UTASÍTÁSOK ISMÉTLÉSE Most próbáljunk meg olyan programot írni melyben a robot négyszög alakban mozog. Ahhoz hogy ez létre jöjjön, a következő lépéseket kell elvégeznünk: előrehaladás, fordulás 90 o -ban, előrehaladás még egyszer, fordulás 90 o -ban, stb. Ezt a programrészt többször,(4x) egymás után írva, készíthetünk olyan programot, amely egy feladatot ismétel. Ettől azonban van egy egyszerűbb lehetőség, az utasítások ismételtetésére szánt repeat utasítással. A szám, amely a repeat parancs mellett található jelenti, hogy hányszor kell ismételni a feladatokat. A repeat ciklus csak azokat a parancsokat képes megismételni melyek az utasításhoz tartozó {} jelek közé vannak írva. Egy következő példaként, készítsünk egy programot, amely elvégzi az előző feladatot 10 szer. Oldal12

13 Ebben a programban a repeaten belül találhatunk még egy repeatet. Ezt egymásba épült ciklusoknak hívjuk. Lényegében a működési elve ugyan az mint az előzőé, először belép a program a belső ciklusba majd miután 4 szer végighajtotta a feladatok kilép, és újból indul amíg a külső ciklus 10 szer végig nem ér, Tehát valójában 10x4 alkalommal hajtódik végre. Ahogyan az előző esetnél itt is fontos figyelnünk a {} jelekre, különben könnyen végtelen ciklust hozhatunk létre. repeat { repeat { Utasítások.. } } KOMMENTÁROK HOZZÁADÁSA Ahhoz, hogy a programunk minél áttekinthetőbb legyen, szükséges hogy megfelelő kommentárokkal látjuk el. Ezeket a kommentárokat a // jelek közé kell tennünk. A két // jel közötti részt a fordító figyelmen kívül hagyja, így ha véletlenül oda írunk program részeket, azokat nem hajtja végre. Amennyiben hosszabb kommenteket kívánunk hozzáadni, azt a /* */ jelek közé tehetjük. A kommenteknek terméseztessen, más színük van a programtörzsön belül, így könnyen észrevehetjük azokat. Oldal13

14 ÖSSZEFOGLALÓ Ebben a fejezetben megismerkedhettünk az ismétlések használatára alkalmas REPEAT ciklussal, és azok egyszerű illetve egymásba épített használatával, melynek segítségével, rövid programmal is létrehozhatunk a robot számára hosszan tartó tevékenységet. Figyelem:Mielőtt tovább lépnénk ajánlatos pár gyakorló feladatok készíteni az eddig megismertek alapján. Oldal14

15 III. VÁLTOZÓK HASZNÁLATA A változók használata rendkívül fontos része a minden programozási nyelvnek. A változók valójában nem mások, mint memória címek melyeken az adott adatokat tároljuk. Ezek az értékek bár különböző helyeken találhatóak, tetszőleges változtathatóak. Lássunk tehát néhány konkrét példát a változók használatára. MOZGÁS SPIRÁL ALAKZATBAN Elsősorban a már előzőkben megírt programunkban kell gondolkodnunk. Hogyan kellene az idő intervallumokat és a motorok forgás irányát átszerkeszteni, hogy spirális mozgási útvonalat kapjunk? Ehhez módosítanunk kell a MOVE_TIME mozgási időt, de hogyan lehetséges ez? Eddig a MOVE_TIME egy konstansként szerepelt, tehát annak értékét nem változtathattuk, ezért most át kell alakítanunk, hogy a programban ezen túl változó ként szerepelhessen. Változókat, ahogyan a C nyelvbe az NXCben is egyszerűen definiálhatunk. Íme, a példa: E programban a számunkra legfontosabb sorokat kommenteztük. Az első ilyen a define a var.. melyben a változót definiáljuk az INT kulcsszó a változó típusát (int egészszám,float törtszám, char karakter,stb.), a move_time pedig a változó nevét jelenti, ez lehet bármi 1-32 karakterig (pl. a) a lényeg, ha kis(vagy nagy) betűvel írtuk akkor a továbbiakban csak úgy hivatkozhatunk rá a programban. Ugyanez fordítva is igaz. A név tartalmazhat számokat is, de csak betűvel kezdődhet. A következő kommentált sorban (set the..) kezdő értéket adunk az amúgy üres (0) változónknak. A harmadik sorban (use the value..) használjuk a változó értékét, tehát ugyan az történik mintha a várakozás értéke 200 lenne (wait(200)) mivel az előbbiekben beállítottuk a move_time változó alap értékét 200 ra. A negyedik sorban a move_time változó értékét növeljük meg a 200-al. Mivel ahogy a program elején észre lehetett venni a programunk ismétlő ciklusban(repeat) van ezért, ez a parancs mindig hozzáad 200 a változó értékéhez. Tehát először 200, másodszor 400, harmadszor már 600 a move_time értéke, stb. amíg 50 szer meg nem ismétlődik. Oldal15

16 A változónk értékét nem csak a + paranccsal módosíthatjuk, hanem szorzással (*=), kivonással (-=) és osztással (/=). (Ha maradékos osztás történne, akkor a program felkerekíti az értéket) Nem csak ilyen módon változtathatjuk a változóinkat, hiszen tetszőlegesen végezhetünk bármilyen matematika műveletet akár két vagy több változó között illetve készíthetünk akár összetett egyenleteket is. A következő példában nem fogunk tapasztalni semmilyen változást a roboton, kizárólag a NXT tulajdonságait, programozási lehetőségeit szemléltetjük. Az első két sorban láthatjuk, hogyan tudunk egy sorban egy vagy több változót is deklarálni, illetve mind három változót deklarálhattuk volna egy sorban is. A változó mely neve (values)mellett a [] szerepel, tömbök deklarálására szolgálnak, melynek segítségével egy változóban több értéket tárolhatunk (ennek megértéséhez ajánlatos a programozási alapok vagy legalább a matematikai mátrixok ismerte). A tömb egyes elemeit zárójelekbe írt számokkal tudjuk elérni. Az NXC-ben integer (egész szám) tömböt tehát a következőként hozhatunk létre: int név[]; A 12. sorban találhatunk egy parancsot melynek hatására a 10 elemű tömböt, 0-val tölti fel. ArrayInit (values,0,10); VÉLETLEN SZÁMOK Az eddigi programokban előre meghatároztuk, hogy a robotunk konkrétan mit tegyen. Viszont a robot mozgását érdekesebbé tehetjük azzal, ha úgy írjuk meg a programot, hogy ne tudjuk előre mi is fog lenni a következő lépése. Az NXC-ben módunk van véletlenszerű számokat generálni, melyet kiválóan használhatunk erre a célra. A következő programban a robotunk egy véletlenszerű úton fog haladni, úgy hogy az előrehaladás valamint az elfordulás ideje random módon lesz meghatározva. Oldal16

17 A programban definiáltunk két változót melyek értékét véletlenszerűen határozzuk meg. A random(600) azt jelneti, hogy a számok melyeket ez a parancs készít 0 és 600 közötti értéket vehetnek fel, és ezek minden egyes hívás után különbözőek. Az egyszerűsítés végett ezt a parancsot így is használhattuk volna wait(random(600)). Itt is észrevehettük, hogy a programunk magja ciklusba van helyezve (while-ciklus). Ami azt jelenti, hogy a programunk mind addig fut amíg az állításunk igaz(true). Erre most jó páran kérdezhetik milyen állítás? Mivel valójában semmilyen kivizsgálást nem végzünk ezért a true értékünk soha sem fog false-ra (hamisra) változni. Ezt a ciklust akkor használjuk, ha végtelen programot akarunk készíteni, és a programból csak a NXT agyon található gomb megnyomásának(sárga) segítségével tudunk kilépni. A while ciklus működés hasonló a repeatéhozz azzal, hogy az utóbbi egy bizonyos szám eléréséig ismétli a zárójelek közé fogott parancssorokat. Itt viszont mindaddig ismétlődik a ciklus, amíg a while parancs melletti zárójelben található feltételvizsgálat igaz. (feltétel vizsgálat a következő fejezetben) ÖSSZEFOGLALÓ Ebben a fejezetben tanulhattunk a változók használatáról és a tömbökről, melyeket tetszőlegesen felvehetünk a következő értékek szerint: int egész szám,(mely lehet short rövid illetve long hosszú), byte 0 vagy 1, bool igaz(true) vagy hamis (false) és string karakterlánc,szöveg. Továbbá megismerhettük a véletlenszerű számok készítésének módját, mellyel érdekesebbé tehetjük a robotunk mozgását, illetve megtudtuk, hogyan készíthetünk végtelenített ciklusokat. Oldal17

18 IV. VEZÉRLŐ UTASÍTÁSOK Az előző fejezetekben láthattuk hogyan lehet alkalmazni a repeat és a while ciklusokat. Viszont van úgy hogy ezekkel az utasításokkal nem lehet minden problémát megoldani ezért meg kell ismerkednünk a vezérlő utasításokkal. Ebben a fejezetben tehát a vezérlő utasításokkal ismerkedhetünk meg. AZ IF FELTÉTELES UTASÍTÁS Néha megesik, hogy program egyes elemeit csak valamilyen feltételtől függően kellene végrehajtani. Az ilyen problémák megoldására használjuk a feltételes (if) utasítást. Az egyszerűbb érthetőség miatt egyből egy példa segítségével szemléltetjük a működését. Ismét az előzőekben használt programot vesszük alapul, azonban teszünk bele egy csavart. A robot halad egyenes vonalban, majd elfordul jobbra vagy balra. Hogy ezt megtehessük, szükségünk van ismét a véletlen számokat generáló parancsra. Felveszünk egy random számot, amely lehet pozitív vagy negatív, amennyiben a szám kisebb, mint nulla a robot jobbra fordul, ellenkező esetben pedig balra fordul. Íme, a program: Az if feltételes utasítás első ránézésre hasonlít a while-ra. Amennyiben a if melletti zárójelben található feltétel igaz, akkor a zárójelek közötti parancsok utasítások végrehajtódnak, ellenkező estben a program tovább lép. Pontosabban csak lépne, ugyanis módunk van rá hogy az if(ha,amennyiben) utasítás után else (különben) parancsot tegyünk, ilyenkor amennyiben az else előtt található if(ek) nem teljesül(nek) akkor az else hajtódik végre. De vegyük át a konkrét példát, hogy még világososabbá váljon a dolog. A random() parancs értéka 0-val megegyező vagy eltérő lehet, így a random()>=0 kérdés vagy igaz, vagy hamis lehet, és ettől függően vagy belép az if-be vagy ugrik az else-re. A vizsgálódáshoz további összehasonlító parancsot használhatunk. Oldal18

19 == egyenlőség <kisebb <= kisebb vagy egyenlő >nagyobb >= nagyobb vagy egyenlő!= nem egyenlő valamint készíthetünk olyan feltételt is ahol több kivizsgálást végzünk, ilyenkor használhatjuk az && (jelentése és), (jelentése vagy) uatasításokat. Íme egy példa: mindig igaz mindig hamis igaz ha ttt nem egyenlő 3-al igaz ha ttt 5 nél nagyobb és 10-nél kisebb igaz ha aaa vagy bbb (vagy mindkettő)egyenlő 10-el A DO UTASÍTÁS A soron következő utasításunk a DO. Melynek a következő az alapszerkezete: Az utasításainkat a Do parancs után következő két zárójel közé kell beírnunk, melyek abban az esetben hajtódnak végre ha a feltételünk teljesül. A while után következő zárójelbe kell beillesztenünk a feltételünket melyeket ugyan úgy kell felállítanunk mint ahogy az IF feltételei esetén tettük. A következő példában a robot 20 másodpercig mozog véletlenszerűen, majd megáll. Oldal19

20 A programunk tehát úgy működik, hogy a véletlenszerűen felvett idő intervallumokat összeadja, és ha ezek összértéke eléri a et (20mp)a program kilép a ciklusból és a robot leáll. A while és a do-while ciklus között első ránézésre nem sok különbség látható, azzal, hogy még a while ciklus először tesztel, és csak ha a teszt true akkor hajtja végre, ezzel szemben a do-while ciklus egyszer mindenképp végrehajtódik, hiszen a tesztelés csak ezután történik meg. ÖSSZEFOGLALÓ E fejezetben megismerkedhettünk két új vezérlő utasítással,az if-el és a do-while-al. Az eddig megismert utasításokkal együtt használva komoly összetett, mégis ugyanakkor rövid és áttekinthető programok írására nyílik módunk. Figyelem: Ezeknek a parancsoknak a megértése létfontosságú a könyv folytatásához,így ajánlatos itt egy kis pihenőt tartani és minél több példaprogramot létrehozni. Amennyiben az utasítások megértése gondot okoz, úgy érdemes az interneten algoritmikus-grafikus leírást keresni, ahol ábrákban magyarázzák el ezek működését. Oldal20

21 V. ÉRZÉKELŐK Természetesen az NXT-re nem csak motorokat, hanem érzékelőket is tudunk kapcsolni, melyekkel az eszköz további alkalmazási területeit bővíthetjük. Mielőtt tovább léphetnénk, a könyv megkezdésekor említett gyári tribot-ra szereljük fel(amennyiben ezt eddig nem tettük meg), a gyári csomagolásban kapható három szenzort. VÁRAKOZÁS AZ ÉRZÉKELŐRE Kezdjük az egyik legegyszerűbb programmal, ahol a robot addig marad mozgásban, amíg valamit meg nem érint. Itt két fontos sorra kell odafigyelnünk. Az első sorban a robotnak elmondjuk (SetSenzor), hogy mely szenzort használja. IN_1 azt jelzi a rendszernek, hogy mely bemenetre kapcsoltuk az érzékelőnket. A további bemenetek IN_2,IN_3 és az IN_4. SENSOR_TOUCH azt jelenti, hogy érintő szenzort használunk. Ha például fényérzékelőt használnánk, akkor a LIGHT_SENSORT kellene beírnunk. Az érzékelő beállítása után a robotunk elindul amíg (until) az neki nem megy valaminek, ekkor az értéke 1 lesz (eddig 0 volt) és a motorok leállnak. Oldal21

22 LEHETŐSÉGEK AZ ÉRINTŐ ÉRZÉKELŐVEL Az érintő szenzor alaptulajdonságainak megismerése után, készítsünk, egy bonyolultabb programot. A következő példában a robot halad előre, amíg meg nem érint egy tárgyak. Ezek után kisé hátrál, majd elfordul és továbbhalad. Az előző példától eltérően a szenzort egy egyszerűbb paranccsal állítjuk be, majd a robot elindul,ekkor belépünk a WHILE ciklusba melyben az IF teszteli a szenzort, ha annak értéke 1 akkor a motor hátramegy (300ms) és jobbra fordul (300ms), majd továbbhalad. FÉNYÉRZÉKELŐ Az érintés érzékelő mellé feltehetünk más szenzorokat is az eszközünkre, mint például fényérzékelőt,hangérzékelőt, vagy ultrahangos érzékelőt. A fényérzékelő képes segéd fény kibocsájtására, illetve annak, szintjének továbbá a környezet fényének mérésére. A segédfény visszaverődésének mérését akkor tudjuk hasznát venni, ha például egy földre rajzolt vonalat kell követnünk. Ezt fogjuk tenni a következő példánkban. Ehhez a teljesen befejezett tribotra van szükségünk. (A képen látható formában) Oldal22

23 Továbbá szükségünk lesz, egy pályára ahol egy fekete vonalat tudunk követni, melyet szintén a légó szettben találhatunk meg. Az alapelv szerint a robotnak képesnek kell lennie követni a fekete vonalat, úgy hogy a fekete vonal határait figyeli. Amennyiben a vonal felső részét észleli (fehér felület nagy fényvisszaverő érték) úgy befelé fordul, ha viszont a vonal belső határát (fekete felület kis fényvisszaverő érték) érzékeli, úgy kifelé fordul. A kör középpontjától számítva. Íme, az egyszerű program, amely elvégzi a feladatot. A program először konfigurálja a harmadik bemenetet, mint LIGHT_SENSOR (fényérzékelő). Következőben beállítja a robot előre mozgását, és belép a ciklusba a program. Amint a fény értéke több mint 40 (használhatunk, konstansokat erre az értékre mellyel egyszerűen tudjuk cserélgetni ezt az értéket, ugyanis ez az érték nagyban függ a tér fényviszonyaitól) akkor az egyik motor forgásirány változtatásával ismét ráfordul a helyes útvonalra. Amint kipróbáltuk a kész programot,látható válik Oldal23

24 hogy a robot mozgása nem túl egyenletes. Próbáljuk meg hozzáadni a Wait(100) parancsot az until elé, így a robot jobban fog haladni. Itt azonban meg kell említenem, hogy a robot csak az óramutató járásával ellentétes irányban tud mozogni. Ahhoz hogy a program bármerre elindulhasson, ettől bonyolultabb programot kellene írni. Ha a környezet fényerejét szeretnénk megvizsgálni, ahhoz először ki kell kapcsolnunk a segédfényt, a következő parancsokkal. HANG ÉRZÉKELŐ A hangérzékelő használatával könnyedén alakíthatjuk át akár a tapsolásunkat, vezérlő utasítássá. Az elkövetkezőkben egy programot fogunk készíteni, mely egy hangos zajra várva indítja el a robotot mindaddig, amíg ismételt hangot nem hall. (ha még eddig nem tettük meg, csatlakoztassuk a hang szenzort a 2-es portra). Definiáltuk a THRESHOLD konstanst és egy alias-t (álnevet) a SENSOR_2-nek, a main(fő) programrészt úgy konfiguráltuk,hogy olvasson be adatot a PORT 2-ről a hangszenzor segítségével és lépjen be a végtelenített ciklusba. Az until parancsnál a program várja a hangerősség változását melynek értékét a THRESHOLD al hasonlítja össze.(azért hogy ne keljen mindig kiírni a SENSOR_2 nevet, mic nevű alias-ra hivatkozunk) Ha valami hangot hall a robot (mely nagyobb THRESHOLD-tól) megindul előre, amíg egy ismételt hang meg nem állítja. A wait várakozást be kellet iktatni, mert különben a program azonnal elindulna és leállna. (ez azért van, mert az NXT nagyon gyorsan dolgozik és nem vizsgál két until között). Ha megpróbáljuk kivenni Oldal24

25 az egyik vagy másik Wait-et, azonnal érthetővé válik a dolog. Alternatív megoldásként megpróbálhatunk olyan programot írni, melyben a wait-ket kicseréljük while-ra. Figyelem:Ne feledjük el hogy, az előző két eszköz értékei csak 0 és 100 közötti számokat vehetnek fel. ULTRAHANGOS ÉRZÉKELŐ Az ultrahangos érzékelő gyakorlatilag úgy dolgozik, mint egy szonár. Kiküld, egy magas frekvenciájú jelet,és érzékeli a tárgyakról visszaverődött részeit, és a két jel között eltelt időből kiszámítja a távolságot. Ez az előző szenzoroktól eltérően nem analóg, hanem digitális, ami annyit jelent, hogy az egység képes önmaga az adatok mérésére és feldolgozására. Így kész adatokat küld a rendszerünknek. Az ultrahangos érzékelő segítségével készíthetünk olyan programot, amelyben a robot képes megállni mielőtt neki ütközne valaminek, ellentétben azzal, ahogy az eddig az érintő szenzor esetében volt. A program beállítja a 4. portot a digitális US érzékelőnek (SetSensorLowspeed), majd belép a végtelen ciklusba, amely addig fut, amíg meg nem közelített valamit körülbelül 15 cm-re (While(SensorUs(IN_4)>NEAR)), ezek után hátrál egy kicsit és folytatja, előröl a ciklust. ÖSSZEFOGLALÓ Ebben a fejezetben láthattuk hogyan dolgoznak egyes szenzorok, hogy hogyan használhatjuk ezeket az eszközöket a until és a while utasítások kombinálásával. Figyelem: Ismételten ajánlatos most is egy kis kitérőt tartani és több lehetséges programot végigcsinálni, hogy jobban megérthessük és begyakorolhassuk a szenzorokról tanultakat. Oldal25

26 VI. FÜGGVÉNYEK ÉS ELJÁRÁSOK Az eddigi programjainkban mindössze egyetlen eljárást használtunk, ez volt a main vagy más néven a FŐ programrész. Viszont ahogy C nyelvben úgy az NXC-ben is módunk van többelemes összetett programokat készíteni, függvények és eljárások használatával. Ezek segítségével az ismétlődő programrészeket, továbbiakban nem kell számtalanszor megismételni, hanem elég csak a hozzájuk rendelt nevet meghívnunk. A függvények és eljárások segítségével egy bonyolultnak tűnő programot is egyszerűen el tudunk készíteni, mely így mindenki számára könnyen áttekinthető és gyorsan értelmezhető lesz. ELJÁRÁSOK Az NXC programnyelv 255 saját egyedi eljárást tartalmaz. A legfontosabb a main eljárás melyet mindig muszáj, megnyitnunk mivel ez képezi a programunk törzsét. A további eljárások a program betöltése után kerülnek használatba, melyeket csak a main törzsből lehet meghívni. Lássunk egy konkrét példát, hogy érthetőbb legyen az eljárások használata. Készítünk egy programot melyben a robot négyszög alakzatban halad, mint ahogy azt egy előző példánkban tette. Viszont ebben az esetben, ha ütés éri az érintés szenzort, akkor a robot erre reagál. Mind ezt nehéz lenne megoldani eljárások nélkül, mert a robotnak két dolgot kellene egy időben csinálnia (elfordulnia ás a szenzort vizsgálni). Tehát jobb megoldás, ha két eljárását használunk, egyet a mozgásra (négyszögben mozgás) és egyet a szenzor figyeléséhez. Íme, az így készült program. Oldal26

27 A fő (main) programrészben nem foglalkozunk, mással csak beállítjuk a szenzor típusát és elindítjuk mindkét eljárást (move_square,check_sensors), melyeknek átadja az irányítást, ezzel a main eljárás véget is ért. A move_square eljárás a robotunkat négyszög alakzatban mozgatja, egy végtelen ciklusban, még a check_senzor eljárásunk az érintő érzékelőt figyeli, és ha bármi hozzáér, a robotunkat elvezeti az akadálytól. Fontos megjegyezni, hogy amennyiben az eljárásokat egy időben indítjuk el, az nem várt eredményhez vezethet, mivel így mindkét eljárás egyszerre próbálná meg vezérelni a motorjainkat, hogy orvosoljuk ezt a problémát, deklarálunk egy változó típust, ez a MUTEX (mutal exclusion). Ezt a változót csak az ACQUIRE(elindít) és a RELEASE(megszakít) függvényekkel használhatjuk, melyeket a kritikus pontokra írva (a vezérlés kezdetére és végére illesztve)elérhetjük, hogy egy idő intervallumban,csak egy eljárás vezérelheti a motorokat. Ez a mutex típusú változót más néven szemafornak (útirányjelző lámpának) is szokták hívni, és ezt a programozási módszert is szintén ezzel a névvel illetik. FÜGGVÉNYEK Néha megesik, hogy egy bizonyos program részre többször is szükségünk van a program során. Erre az esetre nyújt segítséget függvények használata, melyre annak nevének megadásával hivatkozhatunk. Lássunk egy példát a függvények használatával. Ebben a programban egy olyan függvényt deklaráltunk melyben a robotunk elfordul. Ezt a függvényt a program fő részében háromszor is meghívjuk. Megfigyelhetjük, hogy a függvényneve mellett szám is szerepel a zárójelekben, melyekkel a motor erőségének értékét adjuk át. Amennyiben nem kívánunk, értéket átadni úgy a függvényben konkrét értékeket írunk be és elhagyjuk a zárójeleket. A a függvény használatának legnagyobb előnye nem a gyorsaság, vagy az egyszerűség, hanem az így készült program memória foglalásában rejlik. Hiszen az így a készült programunk kisebb helyet foglal. Ha azonban a függvényünk rövid, akkor célszerű inkább az INLINE függvényt használni az előző megoldásunk helyett. Ebben a megoldásban az adataink nem lesznek elkülönítve, tárolva, viszont Oldal27

28 egyszerű több helyen használni. Az INLINE függvény több helyet foglal a memóriában, de így nincs limitálva a függvényeink száma. A deklarációja a következően néz ki: Az inline függvény deklarálása, használata és hívása ugyan úgy működik, mint az egyszerű függvény. A következő példában megláthatjuk az inline függvény használatát. Módosíthatjuk úgy is az előző példát, a motor ereje és a késleltetés ideje csak a main programrészben legyen megadva. Oldal28

29 Megjegyezném, hogy a zárójelekben található értékeket csak a main függvényben használjuk, ezért az érték átadás szabályai szerint, ahány változót akarunk átadni (mindig ugyan annyit kell),annyi új változót kell felvenni a függvény neve után található zárójelben. A példánkban, mint integer változó deklaráltuk őket. Amennyiben több változóra lenne szükségünk, úgy vesszővel elválasztva tetszőleges számban tehetjük azt. Továbbá azt is fontos megjegyeznem, hogy függvényt mint void kell felvenni, ami annyit jelent, hogy a függvény nevének nincs visszatérési értéke. További lehetőségeket a függvényekről NCX guide leírásban találhatunk. MAKRÓK DEFINIÁLÁSA Az NXC-ben definiálhatunk makrókat is,(nem összekeverni a BricxCC makrókkal) melyet a #define kulcsszóval kezdünk majd nevet adunk neki, ezek után felírjuk a programrészt. Ismételten felírjuk még egyszer az előző programot, de most makrók segítségével. Oldal29

30 Miután felírtuk a #define kulcsszavat felírjuk a nevet, ezek után következik az utasítás, melynek egy sorban el kellene férnie, amennyiben nem fér bele a sorba úgy / jelet ütünk, és a következő sorba írjuk a parancsunkat. A define parancsszóval nem csak egy, hanem több makrót is készíthetünk. A következő példában ezt szemléltetjük melyben négy makrót is használunk, egyet-egyet az előre és hátra mozgáshoz, valamint egyet-egyet a jobbra és balra forduláshoz. A fenti példában szemet szúrhatott, hogy ahogyan a függvényeknél és az eljárásoknál, itt is módunk van rá, hogy a konkrét vezérlő értékeket a main program részben adjuk meg. ÖSSZEFOGLALÓ Ebben a fejezetben megismerkedhettünk az eljárásokkal, a függvényekkel, az inline függvénnyel és a makrókkal, melyek bár használata eltér egymástól, alkalmazásuknak célja azonban közös, hogy megkönnyítsék a program készítését, áttekinthetőbbé tegyék a forrás kódot, és hogy az amúgy véges befogadó képességű memóriából minél kevesebb helyet foglaljanak el. Az eljárások egyszerűen alkalmazhatóak, viszont némely helyzetben nem árt vigyázni, nehogy olyan parancsokat osszunk, ki melyeket nem lehet végrehajtani. A függvényeket olyan esetekben célszerű használni, amikor nagyobb kódrészeket többször is használnunk kell a programunk során, még az inline függvény esetében a kisebb kódok ismétlésének elkerülése a cél. Végül a makrókkal ismerkedhettünk meg, melyeket nagyon kis programrészek használatát könnyítik meg. Most hogy átvettük az előző fejezeteket, és jól átdolgoztuk őket, megszerezhettük a kellő tudást hogy építsünk, és vezéreljünk egy saját gyártású robotot. A következő fejezetekben az eddigi alapismeretekre építkezve mélyedünk bele az egyes elemek mélyebb ismeretébe, melyekkel tovább bővítjük a lehetőségeinket. Oldal30

31 VII. HANG SUGÁRZÁSA Az NXT modellünkben a sok okos alapeszköz mellet találhatóak beépített hangszórók is melyekkel különböző zene és hang fájlok lejátszására vagyunk képesek. Ez a tulajdonság akkor bizonyul hasznosnak amikor, szeretnénk, hogy a program futása közben valami féle visszajelzést kapjunk a gép működéséről. HANG FÁJL LEJÁTSZÁSA A BricxCC ben található egy beépített hang konverter mely a WAV fájlokat átalakítja RSO-ra. (Tools - >Sound conversion) Ezek után az átalakított fájlt el kell tárolnunk a NXT belső memóriájába (Tools -> NXT explorer) és lejátszatnunk a következő paranccsal: Az argumentumok helyére be kell írni a fájl nevét (filename), a hangerejét (0 és 4 között lehet), és az ismétlések számát(1 esetén ismétli a fájlt, 0 esetén csak egyszer játssza le). Ez a szép ki program egy olyan dalt játszik le amit bizonyára mindenki ismer, melyet a standard kattintás zenéjével készít el. (a szám: Shave and haircut). Itt is terméseztessen, makrókat használunk az egyszerűbb programozás végett. A kész programba próbáljuk meg módosítani a hang erejét és idejét. Oldal31

32 HANG JÁTSZÁSA A NXT-nk nem csak hang fájlok lejátszására képes, hanem hangokat is képes lejátszani, hogy ezt megtehessük a következő parancsot kell használnunk Melyben négy argumentumot fedezhetünk fel. Az első a hang frekvenciáját, a második a hosszát(ugyan úgy adhatjuk meg mint a wait esetében),a harmadik a hangerő és az utolsó az ismétlés. PlayTone (frekvencia, hossz) parancsot szintén használhatjuk, ebben az esetben a hangerő az NXT alapbeállításától fog függeni, és az ismétlés inaktív lesz. Íme a hangjegyek táblázata: Ahogyan a PlayFileEx parancsnál, az NXT itt sem fogja megvárni hogy befejeződjön a hang, tehát tudunk több hangot egyszerre is megszólaltatni illetve a különválasztáshoz várakoztatásokat kell használnunk. Íme, egy példa: Oldal32

33 Könnyedén tudunk így zene részleteket készíteni a Brick Piano segítségével. Ha zenét szeretnénk lejátszani a robot mozgása alatt, jobb, ha eljárásokként oldjuk meg ezt. Íme, egy program melyben a robot előre-hátra halad miközben zene szól. ÖSSZEFOGLALÓ Ebben a fejezetben megtudhattuk hogyan lehet zene fájlokat lejátszani illetve hangokat kibocsájtani, valamint megtekinthettük hogyan különíthetjük el a hangokat és a vezérlést eljárások segítségével. Oldal33

34 VIII. A MOTOROK MÉLYEBB ISMERETE Eddigiekben a motoroknak csak az alap lehetőségeit ismerhettük meg holott, számtalan megoldás és parancs létezik, melynek segítségével még precízebbé tehetjük a működésüket. Ebben a fejezetben megismerkedünk a következő parancsokkal: ResetTachoCount, Coast (Float), OnFwdReg, OnRevReg, OnFwdSync, OnRevSync,RotateMotor, RotateMotorEx, PID. LÁGY LEÁLLÍTÁS Eddigiekben a motorok leállításához az OFF parancsszavat használtuk mely azonnali hatállyal megállította azt, a fékek bekapcsolásával. Ettől a megoldástól azonban van egy lágyabb megoldás is, ahol a fékek használata nélkül áll le a motor. Erre a Float() vagy a Coast() utasításokat használhatjuk, melyek gyakorlatilag levágják az áramot. Íme, egy példa a használatára. Az először a robotot fékekkel majd fékek nélkül állítjuk meg. A különbség nem biztos, hogy nagyban érzékelhető, viszont nagyobb robotoknál és probléma megoldásoknál már számottevő lehet. ÖSSZETETT VEZÉRLÉS Az OnFwd() és a OnRev() a két legegyszerűbb rutin a motorok mozgásra bírásában, azonban a NXT szervo motorjai ennél jóval nehezebb és összetettebb feladat elvégzésére is képesek az intelligens belső felépítésüknek köszönhetően. Precíz PID vezérlésével lehetőségünk van a pozíció és a sebesség rendkívül pontos beállítására. Amennyiben azt szeretnénk elérni, hogy a robotunk szinte tökéltessen, egyenes vonalban haladjon, módunk van a motorokat szinkronizálni (syncronization), a COUPLE utasítással pedig képesek teljesen együtt mozogni, ha az egyik kerék lelassul a másik is követi, ha az egyik leáll, a másik is leáll vele együtt. OnFwrReg(kimenet,sebesség,regmode) parancs a motorunkat vezérli a kimenet, sebesség függvényében, még a vezérlés mórját(regmode) a következők lehetnek OUT_REGMODE_IDLE,OUT_REGMODE_SPEED,OUT_REGMODE_SYNC. Ha az IDLE lehetőséget választottuk, akkor nem lesz úgynevezett visszacsatolásos vezérlés,a SPEED módban a NXT mindig állandó sebességen próbálja tartani a motorokat, a SYNC módban pedig az előzőekben említett COUPLE tulajdonság szerint működik. OnRevReg() ez a parancs teljesen úgy működik, mint az előző csak ellentétes irányban. Oldal34

35 Ez a program bemutatja a különbségeket a vezérlések között. A futás közben próbáljuk a kezűnkkel megfogni a kereket, hogy lássuk, mi történik. Elsőként az IDLE mód működik, ahol nem történik semmi extra dolog, a második a SPEED mód, melyben lelassíthatjuk a kerekeket, ekkor az NXT az erő növelésével próbálja meg korrigálni a sebességcsökkenést, és utoljára maradt a SYNC mód melyben, ha lefogjuk az egyik kereket, a másik is követni fogja. OnFwdSyny(kimenet,sebesség,forgpont) parancs megegyezik az OnFwdReg() paranccsal,csak szinkron módban, viszont itt a forgpont paraméterben megadhatjuk a fordulat pontját is (-100 tól 100 ig) OnRevSync() ugyan az mint az előző parancs csak fordított irányban. A következő példában bemutatjuk ezeket a parancsokat. Oldal35

36 Végezetül bebírjuk állítani a motor forgását fokokban (0-360 o ). A következő utasításban hozzáférünk a sebesség és fokok változtatásához, amennyiben a sebesség és a fok azonos előjelű úgy a motor előreforog, ha viszont eltérő, akkor visszafelé forog. RotateMotor(kimenet,sebesség,fok) parancs forgatja a motort a kimenet, a fok és a sebesség erejének(1-100) a függvényében. RotateMotorEx(kimenet,sebesség,fok,forgpont,szinkron,stop) egy utasítás a precíz irányításra. Legyen például az A,C kimeneten két motor szinkronizálva, a fordulás pont alapján (-100 tól 100 ig), a szinkron boole értékekkel (igen-true, nem-false), majd használjon féket amennyiben tejesítette a kívánt fokot, a stop használatával(igen-true, nem-false). PID VEZÉRLÉS Az NXT következőbe épített lehetőség a PID(propotional integrative derivative - soros kompenzáción alapuló szabályozótípus) vezérlés, mellyel egyszerűen tudjuk irányítania motorunk sebességét és helyzetét. Ez a vezérlés típus az egyik legelterjedtebb és leg hatékonyabb visszacsatolásos irányítási eljárás az automatizációban. A PID szó angol szavak rövidítéséből ered, pontos fordítása helyett annak lényegét fogalmaznánk meg. A PID szabályozó egy lineáris rendszerek szabályozásánál gyakran alkalmazott, soros kompenzáción alapuló szabályozótípus. A PID rövidítés a szabályozó elvére utal, a szabályozó által kiadott végrehajtójel a hibajellel (P: proportional), a hibajel integráljával (I: integral), valamint a hibajel változási sebességével, deriváltjával (D: derivative) Oldal36

37 arányos tagokból adódik össze. Ezen tagok közül nem mindig valósítják meg mindet, ilyenkor beszélhetünk P, PI, PID szabályozókról. A programunk átadja a vezérlés pontot (R(t)) az eléréshez, elindítva a motor vezérlését (U(t)), mialatt méri annak pozícióját (Y(t)) a beépített kódoló segítségével, és kiszámítja a hibát E(t)=R(t)- Y(t). Ebből láthatjuk miért is nevezzük visszacsatolásos vezérlésnek, mivel a kimeneti pozíció Y(t) függvényében kiszámítja a hibát és ennek alapján kompenzálja a vezérlő U(t) jelet. U(t) = P(t) + I(t) + D(t), ahol P(t) = KP E(t), I(t) = KI ( I(t 1) + E(t) ) és D(t) = KD (E(t) E(t 1)) Ez most összeetetnek, tűnhet, ezért egy példa segítségével talán világosabbá válhat a dolog. Például ha nagyon le akarnánk egyszerűsíteni a dolgot, akkor, beszélhetünk a hajszárító vezérléséről. Képzeljünk el egy hajszárítót melynek 3 fokozata van. Hideg, meleg ( ), és nagyon meleg ( ). Amint bekapcsoljuk a hajszárítót (pl nagyon melegre) az maximális fordulaton és maximális fűtésen kezd dolgozni, de mivel a fűtés még nem melegedett át, a kifújt levegő hőmérséklete nem elég magas, így lejjebb veszi a fordulatot (visszacsatolt jel). Ezek után viszont értelemszerűen emelkedni kezd a hőmérséklet, így a kimenő hőmérséklet függvényében növelni kell a fordulatot egész a maximálisig, ha még így is nagy a hőmérséklet, akkor a fűtőtest áramellátását kell csökkenteni, teszi ezt mind a kívánt hőmérséklet és a kimenő levegő (visszacsatolt jel) hőmérsékletének függvényében. Bár ez a példa nem tükrözi teljes egészében a PID vezérlést, az alapelvet megérthettük belőle. A vezérlés valójában három értékből adódik össze,a p,i,d. A P(t) gyors vezérlést tesz lehetővé,de nem elhanyagolható hibával, az I(t) tag memóriát biztosít a vezérlésnek,mely az út alatt felhalmozódott hibákat megtartva garantálja a zéró hiba határos egyensúlyt. A D(t) tagunk jövőbe látásra képes (mint a matematikai deriválás), így gyors reagálásra képes. A PID vezérlés megértése kellő alapok nélkül majdnem lehetetlennek bizonyulhat, hiszen ez már egyetemi tananyag. A következő példa segítségével azonban elsajátíthatjuk a használatát. A RotateMotorPID (kimenet,sebesség,szög,ptag,itag,dtag) a motornak különböző mozgását eredményezi a PID függvényében. Próbáljuk ki a következő értékeket: (50,0,0): a motor nem fordul el pontosan ot, az ellensúlyozatlan hiba miatt Oldal37

38 (0,x,x): proportional tag nélkül a hiba nagyon nagy (40,40,0): ez egy túlhajtott eset, mely azt jelenti, hogy a motor be lett csapva az előre állított beállítás pontjával és visszafordításával. (40,40,90): pontos beállítás,és időnövelés (idő a beállítási pont eléréséhez) (40,40,200): oszcillálást eredményez a túl nagy deriváló tag miatt Több lehetséges érték kombinációt is érdemes kipróbálni, és megnézni, hogy arra hogyan reagál a robotunk. ÖSSZEFOGLALÓ Ebben a fejezetben megismerkedhettünk a motorok további tulajdonságaival, mint a FLOAT,COAST utasításokkal melyek lágyabb leállítást eredményezek, az OnXxxReg és az OnXxxSync parancsokkal a visszacsatolt sebesség és szinkronvezérléshez, valamint a RotateMotor és RotateMotorEx lehetőségeket a motor egyenletes és precíz mozgásához. Megismerkedhettünk a PID vezérléssel is amelynek lehetőségeiről érdemes az interneten leírást keresni. Oldal38

39 IX. AZ ÉRZÉKELŐK TOVÁBBI LEHETŐSÉGEI Az ötödik fejezetben megismerkedhettünk az érzékelők alap lehetőségeivel, viszont ezeknél a beállításoknál sokkal többet tudnak. Ebben a fejezetben a szenzorok beállítási módjaikkal és típusaival fogunk foglalkozni. ÉRZÉKELŐ MÓDOK ÉS TÍPUSOK A SetSensor paranccsal már találkozhattunk, mellyel beállíthatjuk az érzékelő típusát, valamint annak módját, amely a szenzor működését szabályozzuk. A módot és a típust-szenzorokét különböző féle képen kell beállítanunk, annak fajtájától és felhasználási területétől függően. A típus beállítását a SetSenzorType() paranccsal alkalmazhatjuk ki, a következő lehetőségek szerint: érintés szenzor esetén SENSOR_TYPE_TOUCH, fényérzékelő esetén (a fény be van kapcsolva) SENSOR_TYPE _LIGHT_ACTIVE, hangérzékelő SENSOR_TYPE_SOUND_DB, és az ultrahangos érzékelő SENSOR_TYPE_LOWSPEED_9V. A szenzorok típusának beállítása egy fontos lépés,melyben beállítjuk milyen elektromos ellátásra van szüksége az adott alkatrésznek(fényérzékelőnél led ki-be), illetve digitális eszköz esetén az I 2 C (soros) kommunikáció elindítására. Lehetőségünk van továbbá a régi RCX rendszerekből használni egy-két szenzort, mint a hőmérsékletmérő SENSOR_TYPE_TEMPERATURE, a régi típusú fény érzékelőt SENSOR_TYPE_LIGHT és s fordulat mérőt SENSOR_TYPE_ROTATION. Az érzékelők módjának beállításait a SetSensorMode() utasítással végezhetjük, melyek közül a legfontosabb a SENSOR_MODE_RAW,mely módban a visszakapott érték 0 és 1023 közötti értéket vehet fel. Ezt a durva-nyers (RAW) értéket a szenzor készíti. Ez konkrétan annyit jelent az érintés szenzor esetén, hogy amikor nem történik érintés ez az érték közel 1023,teljes benyomás esetén 50 körül mozog, részleges ütődés esetén 50 és 1000 a kapott szám, tehát RAW módban módunk van érzékelni nem csak az érintést, hanem annak fajtáját is. A fényérzékelő esetében az értéktől függően megállapíthatjuk a fény erejét is (300 nagyon világos,800 nagyon sötét). Mint látható az előző alapbeállításoktól eltérően ahol gyakorlatilag két érték közül választhattunk, itt már precíz értékeket tudunk használni. A következő mód a SENSOR_MODE_BOOL, melyben az értékünk két lehetséges elemet vehet fel ezek a 0 és az 1, a Raw módból átültetve ez azt jelenti, hogy 562 alatt az érték 0, felette pedig 1. Az érintés szenzor esetén ez az alapbeállítás, még a hőmérséklet érzékelőnél a SENSOR_MODE_CELSIUS és a SENSOR_MODE_FAHRENHEIT lehetségesek. A fényérzékelő alap beállítása viszont nem értékben, hanem százalékban (0-100)adja vissza az kapott értékeket SENSOR_MODE_PERCENT, a SENSOR_MODE_ROTATION viszont kizárólag a forgás érzékelőnél használhatjuk. További két érdekes beállítási lehetőség a SENSOR_MODE_EDGE és a SENSOR_MODE_PULSE, mely az átmeneteket hivatott számolni, az alsó állapotból a felsőbe vagy vissza. Például amikor az érintésszenzor alap módban van, akkor csak azt érzékeli, amikor megérintjük, ahhoz hogy ismét jelet generáljon, először el kell engednünk és ismét megérinteni, de mi van akkor, ha számunkra az elengedés pillanata is olyan fontos, mint a megérintésé. Itt ugyebár két jel is keletkezett a kikapcsoltból bekapcsoltba, majd vissza. Ennek érzékelését és feldolgozását segíti a SENSOR_MODE_EDGE amely a SENSOR_MODE_PULSE val ellentétben nem egy hanem két jelnek érzékel minden érintést. Terméseztessen akár egy (pulse) vagy akár kettő (edge) érintést kívánunk megszámolni, előtte nullába kell állítanunk a számlálónkat a ClearSensor()utasítással. Oldal39

3. Gyakorlat Ismerkedés a Java nyelvvel

3. Gyakorlat Ismerkedés a Java nyelvvel 3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az

Részletesebben

CellCom. Szoftver leírás

CellCom. Szoftver leírás CellCom Szoftver leírás A vezérlő szoftver bemutatása 2 www.lenyo.hu Tartalom LCC vezérlőszoftver 5 Rendszerkövetelmények 5 Telepítés 5 Indítás 7 Eltávolítás, újratelepítés és javítás 8 Kulcskezelés 8

Részletesebben

LEGO robotok. IV. rész

LEGO robotok. IV. rész A homályosságot úgy küszöböljük ki, hogy sok kockát exponálunk ugyanarról az objektumról, minél többet, annál jobb, és a képfeldolgozás során ezeket egy speciális asztroszoft segítségével kiátlagoljuk,

Részletesebben

A FOGLAKOZÁS ADATAI: SZERZŐ. Virga Krisztina A FOGLALKOZÁS CÍME. Húzd meg jobban, menjen a munka! Modellezzünk raktárt! A FOGLALKOZÁS RÖVID

A FOGLAKOZÁS ADATAI: SZERZŐ. Virga Krisztina A FOGLALKOZÁS CÍME. Húzd meg jobban, menjen a munka! Modellezzünk raktárt! A FOGLALKOZÁS RÖVID A FOGLAKOZÁS ADATAI: SZERZŐ Virga Krisztina A FOGLALKOZÁS CÍME Húzd meg jobban, menjen a munka! Modellezzünk raktárt! A FOGLALKOZÁS RÖVID LEÍRÁSA A foglalkozás egy összetett feladat adott részének megvalósítását

Részletesebben

Bevezetés az Arduino mikrovezérlők programozásába

Bevezetés az Arduino mikrovezérlők programozásába Bevezetés az Arduino mikrovezérlők programozásába Milyen csodabogár az a mikrovezérlő? A mikrovezérlő egy tenyérnyi, programozható, elektronikus eszköz, amely képes más elektronikus alkatrészeket vezérelni.

Részletesebben

C# gyorstalpaló. Készítette: Major Péter

C# gyorstalpaló. Készítette: Major Péter C# gyorstalpaló Készítette: Major Péter Adattípusok Logikai változó Egész szám (*: előjel nélküli) Lebegőponto s szám Típus Típusnév másképpen (egyenértékű) Helyigény (bit) Példa bool Boolean 8 (!) true,

Részletesebben

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat 2. Digitális óra 28 OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK 2.1 A feladat Ebben a fejezetben egy viszonylag egyszerő problémára alkalmazva tekintjük át az OO tervezés modellezési technikáit. A feladat

Részletesebben

ECP. Site Administration System. Felhasználói kézikönyv. v2.9.24+ (1. kiadás a 2.9.24 és újabb verziójú ECP SAS rendszerekhez)

ECP. Site Administration System. Felhasználói kézikönyv. v2.9.24+ (1. kiadás a 2.9.24 és újabb verziójú ECP SAS rendszerekhez) v2.9.24+ ECP Site Administration System Felhasználói kézikönyv (1. kiadás a 2.9.24 és újabb verziójú ECP SAS rendszerekhez) AW STUDIO Nyíregyháza, Luther utca 5. 1/5, info@awstudio.hu 1 2 Jelen dokumentáció

Részletesebben

Bevezetés a C++ programozásba

Bevezetés a C++ programozásba Bevezetés a C++ programozásba A program fogalma: A program nem más, mint számítógép által végrehajtható utasítások sorozata. A számítógépes programokat különféle programnyelveken írhatjuk. Ilyen nyelvek

Részletesebben

Készítette: Citynform Informatikai Zrt.

Készítette: Citynform Informatikai Zrt. Iratkezelő rendszer Felhasználói kézikönyv Iktatás és érkeztetés Készítette: Citynform Informatikai Zrt. Citynform Iratkezelő Rendszer iktatás és érkeztetés A Bevezetésnek kettős célja van: segédlet a

Részletesebben

7. Előadás. Makrók alkalmazása. Salamon Júlia. Előadás I. éves mérnök hallgatók számára

7. Előadás. Makrók alkalmazása. Salamon Júlia. Előadás I. éves mérnök hallgatók számára 7. Előadás Makrók alkalmazása. Salamon Júlia Előadás I. éves mérnök hallgatók számára Feltételes ciklusok Ha a ciklusváltozó intervallumát, előre nem tudjuk mert például a program futása során megszerzett

Részletesebben

Dr. Pétery Kristóf: Adobe Photoshop Elements 3

Dr. Pétery Kristóf: Adobe Photoshop Elements 3 2 Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is. Kiadja a Mercator Stúdió Felelős kiadó a Mercator Stúdió vezetője Lektor: Gál Veronika Szerkesztő: Pétery István

Részletesebben

Nokia C1-01/C1 02 - Felhasználói kézikönyv

Nokia C1-01/C1 02 - Felhasználói kézikönyv Nokia C1-01/C1 02 - Felhasználói kézikönyv 1.1. kiadás 2 Tartalom Tartalom Biztonság 4 Terméktámogatás 5 Kezdő lépések 5 A SIM-kártya és az akkumulátor behelyezése 5 A készülék gombjai és részei 6 Be-

Részletesebben

Nokia 2690 - Felhasználói kézikönyv

Nokia 2690 - Felhasználói kézikönyv Nokia 2690 - Felhasználói kézikönyv 2. kiadás 2 Tartalom Tartalom Biztonság 4 Kezdő lépések 5 A SIM-kártya és az akkumulátor behelyezése 5 A SIM-kártya eltávolítása 5 A microsd-kártya behelyezése 5 Vegyük

Részletesebben

TANTÁL KFT. NLPC Gold nyelvoktató berendezés. kezelési utasítás

TANTÁL KFT. NLPC Gold nyelvoktató berendezés. kezelési utasítás E L E K T R O N I K A I K F T H-1149 BUDAPEST XIV. NAGY LAJOS KIRÁLY ÚTJA 117. TEL./FAX: 220-6454, 220-6455 e-mail: tantal@t-online.hu www.tantal.hu Skype: Tantál Kft TANTÁL KFT NLPC Gold nyelvoktató berendezés

Részletesebben

Excelltel Programozói és Felhasználói Kézikönyv CDX MS 208 CDX MS 308

Excelltel Programozói és Felhasználói Kézikönyv CDX MS 208 CDX MS 308 Excelltel Programozói és Felhasználói Kézikönyv CDX MS 208 CDX MS 308 Tartalomjegyzék 1. Fejezet: Rövid bevezetés és funkciók... 6 1.1 Rendszer Áttekintése... 6 1.2 Funkciók... 6 2. Fejezet: Telepítés

Részletesebben

ROBOTIKA FELADATGYŰJTEMÉNY

ROBOTIKA FELADATGYŰJTEMÉNY Kiss Róbert ROBOTIKA FELADATGYŰJTEMÉNY 111 feladat LEGO MINDSTORMS EV3 és NXT robotokhoz A könyv elektronikus változatának kiadása a H-Didakt Kft. jóvoltából jöhetett létre 2016 H-Didakt Kft 1162 Budapest,

Részletesebben

Vektorgrafikus rajzeszközök

Vektorgrafikus rajzeszközök 8. nap Vektorgrafikus rajzeszközök A fejezet címe kicsit megtévesztõ lehet. Mivel a Flash alapvetõen vektorgrafikus alapú képek animálására szolgál, ezért a programon belül használható rajzeszközök mindegyikével

Részletesebben

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat:

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat: Karbantartás Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat: Jelszó módosítása: A felhasználói jelszavunkat módosíthatjuk ebben a menüpontban, a régi jelszavunk megadása után. Általánosan

Részletesebben

T A R T A L O M J E G Y Z É K

T A R T A L O M J E G Y Z É K 2 T A R T A L O M J E G Y Z É K A KÉSZÜLÉK JELLEMZŐI................................... 3 A készülék felhasználása.............................................. 3 Főbb funkciók......................................................

Részletesebben

Bevezetés. A WebAccess használatának bemutatása előtt néhány új funkció felsorolása következik:

Bevezetés. A WebAccess használatának bemutatása előtt néhány új funkció felsorolása következik: Bevezetés Leveleink, naptárunk, stb. megtekintése bármely gépen egy egyszerű webböngésző (Mozilla, Explorer) segítésével is lehetséges. GroupWise rendszernek ezt a megjelenési formáját GroupWise WebAccessnek

Részletesebben

MC3 motorvezérlő nagy távcsőmechanikákhoz

MC3 motorvezérlő nagy távcsőmechanikákhoz MC3 motorvezérlő nagy távcsőmechanikákhoz Figyelem: Ez a leírás a 2013-április, vagy azutáni verziókra vonatkozik. Ha egy régebbi MC3 csatlakozókiosztására kíváncsi, vagy az MCConfig program régebbi verzióját

Részletesebben

MUNKAANYAG. Angyal Krisztián. Szövegszerkesztés. A követelménymodul megnevezése: Korszerű munkaszervezés

MUNKAANYAG. Angyal Krisztián. Szövegszerkesztés. A követelménymodul megnevezése: Korszerű munkaszervezés Angyal Krisztián Szövegszerkesztés A követelménymodul megnevezése: Korszerű munkaszervezés A követelménymodul száma: 1180-06 A tartalomelem azonosító száma és célcsoportja: SzT-004-55 SZÖVEGSZERKESZTÉS

Részletesebben

Kezelési leírás a FEC01/06 típusú programozható és távműködtethető lángeffekt vezérlő készülékhez

Kezelési leírás a FEC01/06 típusú programozható és távműködtethető lángeffekt vezérlő készülékhez Kezelési leírás a FEC01/06 típusú programozható és távműködtethető lángeffekt vezérlő készülékhez Budapest, 2006. november LFO Bt. Tartalomjegyzék 1. A lángeffekt vezérlő készülék általános tulajdonságai,

Részletesebben

On-line értékelési módszerek II. Lengyelné Molnár Tünde

On-line értékelési módszerek II. Lengyelné Molnár Tünde On-line értékelési módszerek II. Lengyelné Molnár Tünde MÉDIAINFORMATIKAI KIADVÁNYOK On-line értékelési módszerek II. Lengyelné Molnár Tünde Eger, 2013 Korszerű információtechnológiai szakok magyarországi

Részletesebben

CNS globe triton. Felhasználói kézikönyv. www.cnspna.com http://www.facebook.com/cnspna

CNS globe triton. Felhasználói kézikönyv. www.cnspna.com http://www.facebook.com/cnspna CNS globe triton Felhasználói kézikönyv www.cnspna.com http://www.facebook.com/cnspna A termék bármely jellemzője minden előzetes bejelentés nélkül változhat. Készítsen biztonsági mentést az adatairól,

Részletesebben

Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék DARU IRÁNYÍTÁSA

Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék DARU IRÁNYÍTÁSA Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék DARU IRÁNYÍTÁSA Önálló laboratórium beszámoló Készítette: Menyhárt Balázs BDVUD4

Részletesebben

Procontrol Workstar35 AudioGuide

Procontrol Workstar35 AudioGuide Procontrol Workstar35 AudioGuide Múzeumi tárlatvezető Kezelői és telepítői kézikönyv Verzió: 5.0 2013.06.28. 2008 Procontrol Electronics Ltd. Minden jog fenntartva. A Worktime, a Workstar, a WtKomm a Procontrol

Részletesebben

Nokia X3-00 - Felhasználói kézikönyv. 1. kiadás

Nokia X3-00 - Felhasználói kézikönyv. 1. kiadás Nokia X3-00 - Felhasználói kézikönyv 1. kiadás 2 Tartalom Tartalom Biztonság 4 Használatbavétel 6 A készülék gombjai és részei 6 A SIM-kártya és az akkumulátor behelyezése 7 A memóriakártya behelyezése

Részletesebben

CNS Globe Moto. Felhasználói kézikönyv. www.concorde.hu www.cnspna.com http://www.facebook.com/cnspna

CNS Globe Moto. Felhasználói kézikönyv. www.concorde.hu www.cnspna.com http://www.facebook.com/cnspna CNS Globe Moto Felhasználói kézikönyv www.concorde.hu www.cnspna.com http://www.facebook.com/cnspna A termék bármely jellemzője minden előzetes bejelentés nélkül változhat. Készítsen biztonsági mentést

Részletesebben

A FOGLAKOZÁS ADATAI: SZERZŐ. Vindics Dóra. Vezérelj robotot! A FOGLALKOZÁS CÍME A FOGLALKOZÁS RÖVID

A FOGLAKOZÁS ADATAI: SZERZŐ. Vindics Dóra. Vezérelj robotot! A FOGLALKOZÁS CÍME A FOGLALKOZÁS RÖVID A FOGLAKOZÁS ADATAI: SZERZŐ Vindics Dóra A FOGLALKOZÁS CÍME Vezérelj robotot! A FOGLALKOZÁS RÖVID LEÍRÁSA A tanulók gyakran nem értik, hogy miért van szükség arra, amit matematika órán tanulnak. Ebben

Részletesebben

9. Entitás modulok. Nagy Gusztáv: Drupal 7 alapismeretek Fejlesztői verzió: 2011. október 6.

9. Entitás modulok. Nagy Gusztáv: Drupal 7 alapismeretek Fejlesztői verzió: 2011. október 6. 9 9. Entitás modulok A szerző véleménye szerint a Drupal legnagyobb erősségei közé tartozik a magas szintű, absztrakt fogalmak mentén történő építkezés. A korábbiakban már megismerkedtünk a tartalmak és

Részletesebben

A tömörítési eljárás megkezdéséhez jelöljük ki a tömöríteni kívánt fájlokat vagy mappát.

A tömörítési eljárás megkezdéséhez jelöljük ki a tömöríteni kívánt fájlokat vagy mappát. Operációs rendszerek Windows Xp (13-16 óra) FÁJLTÖMÖRÍTŐ PROGRAMOK KEZELÉSE A tömörítés fogalma A tömörítő eljárás során az állomány felhasználásának szempontjából két műveletet hajtunk végre. Az állományok

Részletesebben

FRAKTÁLOK ÉS A KÁOSZ

FRAKTÁLOK ÉS A KÁOSZ FRAKTÁLOK ÉS A KÁOSZ Meszéna Tamás Ciszterci Rend Nagy Lajos Gimnáziuma és Kollégiuma, Pécs, meszena.tamas@gmail.com, az ELTE Fizika Tanítása doktori program hallgatója ÖSSZEFOGLALÁS A fraktálok olyan

Részletesebben

A G320 SERVOMOTOR MEGHAJTÓ ÜZEMBE HELYEZÉSE (2002. március 29.)

A G320 SERVOMOTOR MEGHAJTÓ ÜZEMBE HELYEZÉSE (2002. március 29.) A G320 SERVOMOTOR MEGHAJTÓ ÜZEMBE HELYEZÉSE (2002. március 29.) Köszönjük, hogy a G320 szervomotor meghajtót választotta. A G320 DC szervomotor meghajtóra a vásárlástól számítva 1 év gyártási hibákra kiterjedő

Részletesebben

GQ-3x és GQ-4x USB univerzális programozó Kézikönyv

GQ-3x és GQ-4x USB univerzális programozó Kézikönyv GQ-3x és GQ-4x USB univerzális programozó Kézikönyv Magyar fordítás EPROMIROK.HU 2011.10.27. 1 GQ-3X és GQ-4X programozó kézikönyv Üdvözöljük a GQ USB Univerzális Programozó (True-USB Univerzális eszköz

Részletesebben

Mesterséges intelligencia, 7. előadás 2008. október 13. Készítette: Masa Tibor (KPM V.)

Mesterséges intelligencia, 7. előadás 2008. október 13. Készítette: Masa Tibor (KPM V.) Mesterséges intelligencia, 7. előadás 2008. október 13. Készítette: Masa Tibor (KPM V.) Bizonytalanságkezelés: Az eddig vizsgáltakhoz képest teljesen más világ. A korábbi problémák nagy része logikai,

Részletesebben

MUNKAANYAG. Szabó László. Szilárdságtan. A követelménymodul megnevezése:

MUNKAANYAG. Szabó László. Szilárdságtan. A követelménymodul megnevezése: Szabó László Szilárdságtan A követelménymodul megnevezése: Kőolaj- és vegyipari géprendszer üzemeltetője és vegyipari technikus feladatok A követelménymodul száma: 047-06 A tartalomelem azonosító száma

Részletesebben

Felhasználói kézikönyv. Magyar. APC Smart-UPS. 500 VA 100 Vac. 750 VA 100/120/230 Vac. Tower szünetmentes tápegység

Felhasználói kézikönyv. Magyar. APC Smart-UPS. 500 VA 100 Vac. 750 VA 100/120/230 Vac. Tower szünetmentes tápegység Felhasználói kézikönyv Magyar APC Smart-UPS 500 VA 100 Vac 750 VA 100/120/230 Vac Tower szünetmentes tápegység 990-1587A 12/2005 Bevezetés Az APC szünetmentes tápegységet (UPS) arra tervezték, hogy megvédje

Részletesebben

Felhasználói kézikönyv

Felhasználói kézikönyv Felhasználói kézikönyv Smart-UPS TM C szünetmentes tápegységhez SRC250 SRC450 110/120/230 V~ Toronyba/Rackbe szerelhető 1U Smart-UPS TM C szünetmentes tápegységhez 250/450 VA 110/120/230 V~ Toronyba/Rackbe

Részletesebben

A meteorológia az időjárás tudománya

A meteorológia az időjárás tudománya Ismerd meg! A meteorológia az időjárás tudománya A meteorológia a légkörben végbemenő folyamatok, jelenségek vizsgálatával foglalkozó tudomány, amelyen belül különös hangsúlyt fektetnek az időjárási és

Részletesebben

1. BEVEZETÉS... 5 2. A RENDSZER ELEMEI, ARCHITEKTÚRÁJA... 5

1. BEVEZETÉS... 5 2. A RENDSZER ELEMEI, ARCHITEKTÚRÁJA... 5 EntryProx Beléptető Rendszer FELHASZNÁLÓI KÉZIKÖNYV v.1.0.7. EntryProx Beléptető Rendszer TARTALOM 1. BEVEZETÉS... 5 2. A RENDSZER ELEMEI, ARCHITEKTÚRÁJA... 5 3. A RENDSZER ÜZEMBE HELYEZÉSE... 7 3.1. Az

Részletesebben

14.Cellaformátum. XVII. Az Excel XP. 14.1 Igazítás. 14.1.1 Igazítás ikonokkal

14.Cellaformátum. XVII. Az Excel XP. 14.1 Igazítás. 14.1.1 Igazítás ikonokkal 14.Cellaformátum Formátum, Cellák Helyi menü, Cellaformázás A cellaformátum egy nagyon összetett fogalom, többféle formázás is tartozik bele. Ezek egy részét korábban már tanultuk, más része viszont abszolút

Részletesebben

ProCOM GPRS ADAPTER TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. v1.00.0096 és újabb modul verziókhoz Dokumentumverzió: 1.41 2013.08.09

ProCOM GPRS ADAPTER TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. v1.00.0096 és újabb modul verziókhoz Dokumentumverzió: 1.41 2013.08.09 ProCOM GPRS ADAPTER TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ v1.00.0096 és újabb modul verziókhoz Dokumentumverzió: 1.41 2013.08.09 Tartalomjegyzék 1 A ProCOM GPRS Adapter alapvető funkciói... 3 1.1 Funkciók

Részletesebben

Informatikai tevékenység 2234 Maglód, Széchenyi u. 4. +36.30.215.6737 +36.29.325.854 Mérnöki, tanácsadói tevékenység Iroda: Mobil: Telefon:

Informatikai tevékenység 2234 Maglód, Széchenyi u. 4. +36.30.215.6737 +36.29.325.854 Mérnöki, tanácsadói tevékenység Iroda: Mobil: Telefon: SULISTAT RENDSZER ismertető anyag Budapest, 2004 július Készítette: UFO-INFO Bt., Újfalusi Krisztián UFO-INFO Bt. SuliStat Rendszer Ismertetője 1 / 13 BEVEZETÉS Ez a dokumentáció az UFO-INFO Bt. által

Részletesebben

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait.

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait. Mérési útmutató A/D konverteres mérés 1. Az A/D átalakítók főbb típusai és rövid leírásuk // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait. Csoportosítás polaritás szempontjából:

Részletesebben

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető

Részletesebben

LÉTESÍTMÉNYGAZDÁLKODÁS. Változáskezelés. Változás Pont Cím Oldal 2.0 2014.03.19 A teljes dokumentáció átírásra került 2.1 2014.07.14 8.

LÉTESÍTMÉNYGAZDÁLKODÁS. Változáskezelés. Változás Pont Cím Oldal 2.0 2014.03.19 A teljes dokumentáció átírásra került 2.1 2014.07.14 8. ESZKÖZIGÉNY Felhasználói dokumentáció verzió 2.2. Budapest, 2015. Változáskezelés Verzió Dátum Változás Pont Cím Oldal 2.0 2014.03.19 A teljes dokumentáció átírásra került 2.1 2014.07.14 8.3 Új, oszlopszerkesztésbe

Részletesebben

Szövegszerkesztő programok: Jegyzettömb, WordPad, Microsoft Word

Szövegszerkesztő programok: Jegyzettömb, WordPad, Microsoft Word Szövegszerkesztő programok: Jegyzettömb, WordPad, Microsoft Word A szövegszerkesztők közül az elkészítendő szöveg jellegétől függően választunk programot, és nem feltétlenül azt, amelyiket alapértelmezésben

Részletesebben

BAUSFT. Pécsvárad Kft. 7720 Pécsvárad, Pécsi út 49. Tel/Fax: 72/465-266 http://www.bausoft.hu. ISO-bau. Szigetelés kiválasztó. 1.02 verzió.

BAUSFT. Pécsvárad Kft. 7720 Pécsvárad, Pécsi út 49. Tel/Fax: 72/465-266 http://www.bausoft.hu. ISO-bau. Szigetelés kiválasztó. 1.02 verzió. BAUSFT Pécsvárad Kft. 7720 Pécsvárad, Pécsi út 49. Tel/Fax: 72/465-266 http://www.bausoft.hu ISO-bau Szigetelés kiválasztó 1.02 verzió Szerzők: dr. Baumann József okl. villamosmérnök 1188 Budapest, Fenyőfa

Részletesebben

JVJ DVD-8808 Könyöklő DVD lejátszó Használati utasítás

JVJ DVD-8808 Könyöklő DVD lejátszó Használati utasítás JVJ DVD-8808 Könyöklő DVD lejátszó Használati utasítás Lejátszható formátumok: MP4/MP3/DVD/SVCD/VCD/DVCD/CD/WMA/JPEG Tartalomjegyzék A. Figyelmeztetések...2 B. Használat előtt...2 Kiegészítők...2 C. A

Részletesebben

MUNKATERV Vásárhelyi Pál Általános Iskolája és Alapfokú Művészetoktatási Intézménye OM 200924

MUNKATERV Vásárhelyi Pál Általános Iskolája és Alapfokú Művészetoktatási Intézménye OM 200924 MUNKATERV Vásárhelyi Pál Általános Iskolája és Alapfokú Művészetoktatási Intézménye MUNKATERV Vásárhelyi Pál Általános Iskolája és Alapfokú Művészetoktatási Intézménye Az iskolai munkatervet 2012. augusztus

Részletesebben

Korszerű raktározási rendszerek. Szakdolgozat

Korszerű raktározási rendszerek. Szakdolgozat Gépészmérnöki és Informatikai Kar Mérnök Informatikus szak Logisztikai Rendszerek szakirány Korszerű raktározási rendszerek Szakdolgozat Készítette: Buczkó Balázs KOKIOC 3770 Sajószentpéter, Ady Endre

Részletesebben

vezérlő és multimédia rendszer

vezérlő és multimédia rendszer SENSUS vezérlő és multimédia rendszer VEGYE át AZ IRÁNyítáST! Új Volvójának fontos eleme a korszerű multimédia rendszer, amely korántsem csak a szórakoztatást szolgálja számos tájékoztató és a vezetést

Részletesebben

E-Fedezetkezelő. felhasználói kézikönyv. Fővállalkozói adminisztrátorok számára

E-Fedezetkezelő. felhasználói kézikönyv. Fővállalkozói adminisztrátorok számára E-Fedezetkezelő felhasználói kézikönyv Fővállalkozói adminisztrátorok számára Tartalomjegyzék 1. Program általános használata... 2 1.1. Szoftver követelmények... 2 1.2. Jogosultság függő működés... 2 1.3.

Részletesebben

HASZNÁLATI ÚTMUTATÓ Tartalom

HASZNÁLATI ÚTMUTATÓ Tartalom HASZNÁLATI ÚTMUTATÓ Tartalom 1.Jellemzők... 2 Töltés... 2 Az óra részei... 2 2. A töltés állapotának ellenőrzése... 2 A GPS jelek vétele sikeres, ha... 3 A GPS jelek vétele sikertelen, ha... 3 3. Időzóna

Részletesebben

Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék. Önálló laboratórium

Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék. Önálló laboratórium Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék Önálló laboratórium (BMEVIIIA355) Téma: Eaton-Moeller PLC-k alkalmazástechnikája

Részletesebben

Documentation. OTRS Business Solution 4 kézikönyv

Documentation. OTRS Business Solution 4 kézikönyv Documentation OTRS Business Solution 4 kézikönyv Build Date: 2014-12-05 OTRS Business Solution 4 kézikönyv Szerzői jog 2014 OTRS AG Ez a mű az OTRS AG szerzői joga alatt áll. Lemásolhatja részben vagy

Részletesebben

Készítette: niethammer@freemail.hu

Készítette: niethammer@freemail.hu VLogo VRML generáló program Készítette: Niethammer Zoltán niethammer@freemail.hu 2008 Bevezetés A VLogo az általános iskolákban használt Comenius Logo logikájára épülő programozási nyelv. A végeredmény

Részletesebben

Magyar. APC Smart-UPS SC. 1000/1500 VA 110/120/230 Vac. Toronykivitelű vagy 2U magas, RACK-be szerelhető szünetmentes tápegységhez

Magyar. APC Smart-UPS SC. 1000/1500 VA 110/120/230 Vac. Toronykivitelű vagy 2U magas, RACK-be szerelhető szünetmentes tápegységhez Felhasználói kézikönyv Magyar APC Smart-UPS SC 1000/1500 VA 110/120/230 Vac Toronykivitelű vagy 2U magas, RACK-be szerelhető szünetmentes tápegységhez 990-1851D 03/2007 Bevezetés The APC szünetmentes

Részletesebben

Önálló laboratórium dokumentáció

Önálló laboratórium dokumentáció Önálló laboratórium dokumentáció Konzulens: Mészáros Tamás Készítette: Bartók Ferenc (ME12HP) 2012.05.19. Tartalomjegyzék Bevezetés, feladat leírása... 3 A készülék bemutatása, megismerése... 4 Beviteli

Részletesebben

Példa: Aktuális könyvtár tartalmának fájlba mentése, melynek neve az aktuális dátum és idő: ls l > `date+%f_%h-%m`.txt

Példa: Aktuális könyvtár tartalmának fájlba mentése, melynek neve az aktuális dátum és idő: ls l > `date+%f_%h-%m`.txt Beépített változók (paraméterezés): $# - paraméterek száma $1...9 - az adott paraméter értéke $0 - az adott héjprogram neve $* - az összes paraméter egyben Idézőjelek típusai: ' ' - belső szöveg stringként

Részletesebben

Nokia 2220 slide - Felhasználói kézikönyv

Nokia 2220 slide - Felhasználói kézikönyv Nokia 2220 slide - Felhasználói kézikönyv 3.1. kiadás 2 Tartalom Tartalom Biztonság 3 Terméktámogatás 4 Kezdő lépések 4 A SIM-kártya és az akkumulátor behelyezése 4 Az akkumulátor töltése 5 Antenna 5 Fülhallgató

Részletesebben

Gi.Bi.Di. gyártmányú F4 Plus típusú egyfázisú két motorhoz alkalmazható mikroprocesszoros vezérlés, - beépített rádiófrekvenciás vevővel.

Gi.Bi.Di. gyártmányú F4 Plus típusú egyfázisú két motorhoz alkalmazható mikroprocesszoros vezérlés, - beépített rádiófrekvenciás vevővel. 1 Gi.Bi.Di. gyártmányú F4 Plus típusú egyfázisú két motorhoz alkalmazható mikroprocesszoros vezérlés, - beépített rádiófrekvenciás vevővel. ÁLTALÁNOS ÓVINTÉZKEDÉSEK Ezen óvintézkedések a termék szerves

Részletesebben

Dr. Pétery Kristóf: AutoCAD LT 2007 Fóliák, tulajdonságok

Dr. Pétery Kristóf: AutoCAD LT 2007 Fóliák, tulajdonságok 2 Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is. Kiadja a Mercator Stúdió Felelős kiadó a Mercator Stúdió vezetője Lektor: Gál Veronika Szerkesztő: Pétery István

Részletesebben

FEDÉLZETI INERCIÁLIS ADATGYŰJTŐ RENDSZER ALKALMAZÁSA PILÓTA NÉLKÜLI REPÜLŐGÉPEKBEN BEVEZETÉS

FEDÉLZETI INERCIÁLIS ADATGYŰJTŐ RENDSZER ALKALMAZÁSA PILÓTA NÉLKÜLI REPÜLŐGÉPEKBEN BEVEZETÉS Koncz Miklós Tamás FEDÉLZETI INERCIÁLIS ADATGYŰJTŐ RENDSZER ALKALMAZÁSA PILÓTA NÉLKÜLI REPÜLŐGÉPEKBEN BEVEZETÉS Magyarországon megszűnt a nagyoroszi (Drégelypalánk) lőtér, a térségben található egyetlen,

Részletesebben

9.1.1. ARM mikrovezérlők programozása

9.1.1. ARM mikrovezérlők programozása 9.1.1. ARM mikrovezérlők programozása E fejezetben az ARM mikrovezérlők programozása lesz ismertetve néhány példaprogram és gyakorlati alkalmazás bemutatásával. Az általunk használt ARM mikrovezérlő gyártója

Részletesebben

USB HID Demo @watt. 1. Bevezetés. 2. A Hardver

USB HID Demo @watt. 1. Bevezetés. 2. A Hardver USB HID Demo @watt 1. Bevezetés Ebben a cikkben egy egyszerő kommunikációs kapcsolatot próbálok bemutatni, elsısorban gyakorlati oldalról egy egyszerő hardveren, valamint a PIC(C18) és a PC(VB6) oldali

Részletesebben

SuliXerver 3.5 TELEPÍTÉSE GYORSAN ÉS EGYSZERŰEN

SuliXerver 3.5 TELEPÍTÉSE GYORSAN ÉS EGYSZERŰEN SuliXerver 3.5 TELEPÍTÉSE GYORSAN ÉS EGYSZERŰEN Telepítési útmutató türelmetleneknek A kézikönyv elkészítésekor az ULX Kft. a lehető legnayobb gondossággal és körültekintéssel járt el, ennek ellenére nem

Részletesebben

4. Példa: Másodfokú egyenlet megoldása (program2_1.vi)

4. Példa: Másodfokú egyenlet megoldása (program2_1.vi) 4. Példa: Másodfokú egyenlet megoldása (program2_1.vi) Mielőtt nekilátnánk a programozásnak, idézzük fel a másodfokú egyenlet általános alakját, és ez alapján gondoljuk végig, hogy milyen elemekre lesz

Részletesebben

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3) Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index

Részletesebben

C# feladatok gyűjteménye

C# feladatok gyűjteménye C# feladatok gyűjteménye Készítette: Fehérvári Károly I6YF6E Informatika tanár ma levelező tagozat 1) Feladat: ALAPMŰVELETEK Készítsünk programot, amely bekér két egész számot. Majd kiszámolja a két szám

Részletesebben

Prezentációkészítés 1.

Prezentációkészítés 1. Prezentációkészítés 1. Dr. Kallós Gábor 2006-2007. Prezentációk Prezentáció: szemléltetésre alkalmas segédeszköz az előadásokon. Használható többek között: oktatási célra; döntés-előkészítéshez; termékek

Részletesebben

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is.

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is. 2 Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is. Kiadja a Mercator Stúdió Felelős kiadó a Mercator Stúdió vezetője Lektor: Pétery Dorottya Szerkesztő: Pétery István

Részletesebben

Használati útmutató. DALI EASY 1.0 változat. www.osram.com www.osram.de

Használati útmutató. DALI EASY 1.0 változat. www.osram.com www.osram.de Használati útmutató DALI EASY 1.0 változat OSRAM GmbH Customer-Service-Center (CSC) Steinerne Furt 62 86167 Augsburg, Germany www.osram.com www.osram.de Tel. : (+49) 1803 / 677-200 (díjköteles) Fax.: (+49)

Részletesebben

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. Programozás III CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van a fejlesztő környezet és az osztálykönyvtárak is: rt.jar fájl

Részletesebben

FELHASZNÁLÓI KÉZIKÖNYV. eanim.com info@eanim.com

FELHASZNÁLÓI KÉZIKÖNYV. eanim.com info@eanim.com FELHASZNÁLÓI KÉZIKÖNYV eanim.com info@eanim.com BEVEZETÉS A Science Guide - természettudományos kísérletek és megfigyelések gyűjteménye nevet viselő digitális tananyag négy részből áll, amelyekben egymástól

Részletesebben

Aronic Road Útnyilvántartó program

Aronic Road Útnyilvántartó program 6085 Fülöpszállás, Kiskunság tér 4. Internet: www.cin.hu E-mail: software@cin.hu Tel: 78/435-081, 30/9-573-673 Aronic Road útnyilvántartó program V2.000 Szoftverdokumentáció Önnek is jár egy jó szoftver!

Részletesebben

Üdvözöljük. Solid Edge kezdő lépések 2

Üdvözöljük. Solid Edge kezdő lépések 2 Üdvözöljük A Solid Edge 19-es verziója az innovatív megoldásokra és a vállalaton belüli kommunikációra fókuszál, ezzel célozva meg a közepes méretű vállalatok igényeit. Több száz újdonsággal a Solid Edge

Részletesebben

MATEMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

MATEMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ Matematika középszint 0814 ÉRETTSÉGI VIZSGA 009. május 5. MATEMATIKA KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ OKTATÁSI ÉS KULTURÁLIS MINISZTÉRIUM Fontos tudnivalók Formai előírások:

Részletesebben

Fontos biztonsági előírások

Fontos biztonsági előírások Az úton első a biztonság Autóvezetés közben ne használjuk a mobiltelefont, előbb álljunk félre a járművel. Fontos biztonsági előírások Az itt szereplő utasítások be nem tartása veszélyes, illetve törvénybe

Részletesebben

Év zárása és nyitása 2015-ről 2016-ra

Év zárása és nyitása 2015-ről 2016-ra Év zárása és nyitása 2015-ről 2016-ra Ebben az évben a megszokottól eltérően, új programot kell telepíteni. Ennek lépései: 1. lépjen ki a DszámlaWIN programból (FONTOS!). Amennyiben hálózatban használják

Részletesebben

Feltételes formázás az Excel 2007-ben

Feltételes formázás az Excel 2007-ben Az új verzió legnagyobb újdonsága Feltételes formázás az Excel 2007-ben Formázás tekintetében a feltételes formázás területén változott a legnagyobbat a program. Valljuk meg, a régebbi változatoknál a

Részletesebben

i4x50 sorozatú szkennerek

i4x50 sorozatú szkennerek i4x50 sorozatú szkennerek Szkennelésbeállítási útmutató TWAIN alkalmazásokhoz A-61839_hu A TWAIN adatforrás használata A szkennelést ellenőrző eszköz elindítása... 2 A szkennelést ellenőrző eszköz párbeszédpanele...

Részletesebben

Ipari Robotok Programozása

Ipari Robotok Programozása Ipari Robotok Programozása Vezérlő, StartUp, Szoftverszintek, programozási nyelvek Előadó: Nagy István n (A65) Gyakorlatvezető: : Tolnai András Ajánlott irodalom: B. Leatham-Jones: Elements of Industrial

Részletesebben

Nokia C2-00 - Felhasználói kézikönyv

Nokia C2-00 - Felhasználói kézikönyv Nokia C2-00 - Felhasználói kézikönyv 1.1. kiadás 2 Tartalom Tartalom Biztonság 4 A telefon rövid bemutatása 5 A két SIM-kártyával rendelkező telefon 5 A készülék gombjai és részei 5 Kezdő lépések 6 A SIM-kártya

Részletesebben

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat:

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat: Karbantartás Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat: Jelszó módosítása: A felhasználói jelszavunkat módosíthatjuk ebben a menüpontban, a régi jelszavunk megadása után. Általánosan

Részletesebben

POWX1340 HU 1 ALKALMAZÁS... 3 2 LEÍRÁS (A. ÁBRA)... 3 3 CSOMAGOLÁS TARTALMA... 3 4 JELZÉSEK... 4 5 ÁLTALÁNOS BIZTONSÁGI SZABÁLYOK...

POWX1340 HU 1 ALKALMAZÁS... 3 2 LEÍRÁS (A. ÁBRA)... 3 3 CSOMAGOLÁS TARTALMA... 3 4 JELZÉSEK... 4 5 ÁLTALÁNOS BIZTONSÁGI SZABÁLYOK... 1 ALKALMAZÁS... 3 2 LEÍRÁS (A. ÁBRA)... 3 3 CSOMAGOLÁS TARTALMA... 3 4 JELZÉSEK... 4 5 ÁLTALÁNOS BIZTONSÁGI SZABÁLYOK... 4 5.1 Munkakörnyezet... 4 5.2 Elektromos biztonság... 4 5.3 Személyi biztonság...

Részletesebben

AZ OEP TAJ ELLENŐRZÉS BEVEZETÉSE AZ IGÉNYBEVEVŐI NYILVÁNTARTÁS (KENYSZI)

AZ OEP TAJ ELLENŐRZÉS BEVEZETÉSE AZ IGÉNYBEVEVŐI NYILVÁNTARTÁS (KENYSZI) AZ OEP TAJ ELLENŐRZÉS BEVEZETÉSE AZ IGÉNYBEVEVŐI NYILVÁNTARTÁS (KENYSZI) RENDSZERBE I. ÜTEM FELHASZNÁLÓI LEÍRÁS AZ ADATSZOLGÁLTATÓK RÉSZÉRE KENYSZI: v.1.2.2.0 Dátum: 2015.04.10. TARTALOMJEGYZÉK 1. BEVEZETÉS...

Részletesebben

PHP5 Új generáció (2. rész)

PHP5 Új generáció (2. rész) PHP5 Új generáció (2. rész)...avagy hogyan használjuk okosan az osztályokat és objektumokat PHP 5-ben. Cikksorozatom elõzõ részében képet kaphattunk arról, hogy valójában mik is azok az objektumok, milyen

Részletesebben

SZÁMOLÁSTECHNIKAI ISMERETEK

SZÁMOLÁSTECHNIKAI ISMERETEK SZÁMOLÁSTECHNIKAI ISMERETEK Műveletek szögekkel Geodéziai számításaink során gyakran fogunk szögekkel dolgozni. Az egyszerűbb írásmód kedvéért ilyenkor a fok ( o ), perc (, ), másodperc (,, ) jelét el

Részletesebben

Nyíri Attila. Ősi számrendszerünk 2 (jobbról-balra írással) használhatósága és a tizedesszám kialakítása

Nyíri Attila. Ősi számrendszerünk 2 (jobbról-balra írással) használhatósága és a tizedesszám kialakítása Nyíri Attila Ősi számrendszerünk 2 (jobbról-balra írással) használhatósága és a tizedesszám kialakítása Nyíri Attila Ősi számrendszerünk 2 (jobbról-balra írással) használhatósága Nyíri Attila: Ősi számrendszerünk

Részletesebben

Online Angol Tanszék tájékoztató fix tanmenetű kurzusokhoz

Online Angol Tanszék tájékoztató fix tanmenetű kurzusokhoz Online Angol Tanszék tájékoztató fix tanmenetű kurzusokhoz www.angoltanszek.hu Welcome online Szeretettel köszöntünk az Online Angol Tanszék oktatási rendszerében! Az alábbiakban egy általános tájékoztatót

Részletesebben

DVR-812 VEZETÉK NÉLKÜLI DVR HASZNÁLATI ÚTMUTATÓ

DVR-812 VEZETÉK NÉLKÜLI DVR HASZNÁLATI ÚTMUTATÓ DVR-812 VEZETÉK NÉLKÜLI DVR HASZNÁLATI ÚTMUTATÓ TARTALOM Használati feltételek. 3 Általános jellemzők 3 Tartozékok. 3 Kezelőgombok és jelölések 4 Megfigyelői üzemmód 5 Lejátszás üzemmód. 6 Technikai paraméterek.

Részletesebben

6. AZ EREDMÉNYEK ÉRTELMEZÉSE

6. AZ EREDMÉNYEK ÉRTELMEZÉSE 6. AZ EREDMÉNYEK ÉRTELMEZÉSE A kurzus anyagát felhasználva összeállíthatunk egy kitűnő feladatlapot, de még nem dőlhetünk nyugodtan hátra. Diákjaink teljesítményét még osztályzatokra kell átváltanunk,

Részletesebben

COBRA MUNKAÜGY ÉS BÉR PROGRAMCSOMAG 2013. ÉVI

COBRA MUNKAÜGY ÉS BÉR PROGRAMCSOMAG 2013. ÉVI COBRA MUNKAÜGY ÉS BÉR PROGRAMCSOMAG 2013. ÉVI VERZIÓINAK VÁLTOZÁSAI. Tartalomjegyzék: Tartalom MUN v13.0101... 2 MUN v13.0107... 10 MUN v13.0128... 18 MUN v13.0204... 21 MUN v13.0208... 27 MUN v13.0304...

Részletesebben

TERMELÉSMENEDZSMENT. Gyakorlati segédlet a műszaki menedzser szak hallgatói számára. Összeállította: Dr. Vermes Pál főiskolai tanár 2006.

TERMELÉSMENEDZSMENT. Gyakorlati segédlet a műszaki menedzser szak hallgatói számára. Összeállította: Dr. Vermes Pál főiskolai tanár 2006. Szolnoki Főiskola Műszaki és Mezőgazdasági Fakultás Mezőtúr TERMELÉSMENEDZSMENT Gyakorlati segédlet a műszaki menedzser szak hallgatói számára Összeállította: Dr. Vermes Pál főiskolai tanár Mezőtúr 6.

Részletesebben

Moon. MC824H vezérlőegység. Telepítési és használati útmutató

Moon. MC824H vezérlőegység. Telepítési és használati útmutató Moon MC824H vezérlőegység Telepítési és használati útmutató 1 A TERMÉK LEÍRÁSA ÉS MEGFELELŐ HASZNÁLATA Az MC824H egy elektromos vezérlőegység lengőkapuk automatizálásához. FIGYELMEZTETÉS! Ebben a kézikönyvben

Részletesebben

Programozható logikai vezérlõk

Programozható logikai vezérlõk BUDAPESTI MÛSZAKI EGYETEM KÖZLEKEDÉSMÉRNÖKI KAR KÖZLEKEDÉSAUTOMATIKAI TANSZÉK Programozható logikai vezérlõk Segédlet az Irányítástechnika I. c. tárgyhoz Összeállította: Szabó Géza egyetemi tanársegéd

Részletesebben

Freekie vezérlő gépkönyv

Freekie vezérlő gépkönyv Freekie vezérlő gépkönyv Tartalom 1. Bevezetés... 3 Biztonsági előírások... 3 2. Üzembehelyezés... 4 DMX kábel bekötése... 4 3. DMX címzés... 5 4. A vezérlő beállítása... 7 Eszköz felkonfigurálása... 7

Részletesebben