Macs Kancsár Dániel Sipos Péter
2005, NovemberKancsár Dánel, Sípos Péter - TDK2 A projekt célja A dolgozat témája egy lépegető hardver kidolgozása, amely számítógépről kiadott parancsok végrehajtásával haladni képes. A másodlagos cél egy olyan keret-, vezérlőprogram kidolgozása, amelyen keresztül utasítások adhatóak ki az egységnek.
2005, NovemberKancsár Dánel, Sípos Péter - TDK3 Áttekintés
2005, NovemberKancsár Dánel, Sípos Péter - TDK4 Célfüggvény A végcél állapotának az értéke.
2005, NovemberKancsár Dánel, Sípos Péter - TDK5 Döntéshozó algoritmusok Bemenete, az állapot jósága. Valamint a környezet ahonnan meg kell tennie a lépést.
2005, NovemberKancsár Dánel, Sípos Péter - TDK6 Felhasználói interfész Csak magas szintű vezérlés. Pl.: előre, hátra, fordul, objektumkövetés.
2005, NovemberKancsár Dánel, Sípos Péter - TDK7 Keretrendszer A megkapott parancsokat kell lefordítania és továbbítania a hardver felé.
2005, NovemberKancsár Dánel, Sípos Péter - TDK8 Megvalósítás Léptetőmotor Az elektromos impulzusokat diszkrét mechanikus mozgássá alakítja. Lelke egy többtekercses rendszer, illetve a számos Észak-dél pólussal rendelkező rotor.
2005, NovemberKancsár Dánel, Sípos Péter - TDK9 Léptetőmotor Forrás:
2005, NovemberKancsár Dánel, Sípos Péter - TDK10 Léptetőmotor Tranzisztoron keresztül kapcsolódnak rá. Ha az adott adatbit 1 akkor van vezérelve.
2005, NovemberKancsár Dánel, Sípos Péter - TDK11 Megvalósítás Párhuzamos port Egyszerre 8 adatbit küldhető. A léptetőmotoroknál láthattuk, hogy egy unipoláris motornak 4 adatbit kell a vezérléshez. A maradék 4 bitet pedig címzéshez használhatjuk közvetlenül 4 motorhoz, demultiplexerrel akár 16 motorhoz.
2005, NovemberKancsár Dánel, Sípos Péter - TDK12 Párhuzamos port Használata egyszerű. Egy PC-n három adat port cím lehet: , , 3BC 16. Az adat port cím azért van kiemelve, mert a Status port +1, Control port +2 címen érhető el.
2005, NovemberKancsár Dánel, Sípos Péter - TDK13 Párhuzamos port Forrás:
2005, NovemberKancsár Dánel, Sípos Péter - TDK14 Párhuzamos port Az adatküldést WinNT előtti rendszereken közvetlen port címzéssel tehetjük meg, pl. port[$378] := 123; (FPascal). A WinNT utáni rendszereken ez a vezérlés alapértelmezésen tiltva van, ezért egy ingyenesen használható könyvtárat használunk, io.dll [1] a használata ugyanilyen egyszerű, pl. PortOut($378, 123); (Delphi)
2005, NovemberKancsár Dánel, Sípos Péter - TDK15 Léptetőmotor + Párhuzamos port Ha megvan a megfelelő elektronika, akkor csak az egyes lábakat kell megcímezni. Pl. PortOut($378, 1); PortOut($378, 2); PortOut($378, 4); PortOut($378, 8); Ezek az úgynevezett léptető szekvenciák.
2005, NovemberKancsár Dánel, Sípos Péter - TDK16 Léptetőmotor + Párhuzamos port A sorrend nagyon fontos a motor belső felépítése miatt. (De ettől el is térhet!) Egyszerre két tekercs vezérlése is lehetséges, ilyenkor csupán a két egymásmelletti tekercsre kell vezérlést adni. 1, 3, 2, 6, 4, 12, 8, 9. Ez kisebb lépésközt eredményez.
2005, NovemberKancsár Dánel, Sípos Péter - TDK17 Áttekintés LEGO A vázfelépítéshez LEGO-t használunk. Miért is? A hardver vázáról nem volt pontos tervünk, az építés folyamán alakult ki, és még alakul most is. A LEGO alkalmas arra, hogy ha egy megoldás nem megfelelő, akkor azon változtatni tudjunk. Megmentve minket attól, hogy az esztergagépnél töltsük időnk nagy részét.
2005, NovemberKancsár Dánel, Sípos Péter - TDK18 Eredmények Motorvezérlő A program két fajta vezérlést valósít meg. Az első, amikor egy motort vezérlünk a fent leírt módon. A másik, „több motor vezérlése” ugyanezt valósítja meg csak az egyes motorokra küldött vezérlést előbb elmentjük egy fájlba, majd azt szekvenciálisan végrehajtjuk.
2005, NovemberKancsár Dánel, Sípos Péter - TDK19 Eredmények A program mind a 8 adatbitet kihasználja. Az alsó 4 adatbiten D0 – D3 történik a vezérlési információ küldése, a felső 4 adatbiten D4 – D7 pedig a címzés. Pl. a 4. motorra egy impulzus küldése: (Ez a vezérlés egy külön szálon van megvalósítva.)
2005, NovemberKancsár Dánel, Sípos Péter - TDK20 Eredmények Byte Motorcim := 16; // 24 Integer Lepesszam := 8; Array Steps := (1,3,2,6,4,12,8,9); Word Portcim := $378; motorcim shiftelése balra 4-el a felső 4 bitre; Ciklus i:=1-től Lepesszam-ig { portout(portcim, motorcim + steps[i]); delay(100); //lehet kevesebb is portout(portcim, motorcim + 0); //ne melegedjen a motor }
2005, NovemberKancsár Dánel, Sípos Péter - TDK21 Hivatkozások [1] –
2005, NovemberKancsár Dánel, Sípos Péter - TDK22 Weblap