2015. április 21., kedd

ROBOT-SZAKKÖR


A férj vásárol egy robotot, ami tökéletesen tudja detektálni a hazugságot. Alig várja, hogy hazajöjjön a gyerek és kipróbálhassa.
Megjön a fia, és rögtön kérdőre is vonja:
-Hol voltál?
-Benn maradtunk a könyvtárban tanulni.
A robot erre odamegy a gyerekhez és akkora pofont ad neki, hogy leesik a Székről.
- Na, fiam ez egy hazugságdetektor robot, úgyhogy ne hazudj többet. Hol voltál?
- Elmentünk Pistiékhez filmet nézni.
- Mit néztetek?
- Az Egri csillagokat.
A robot erre odamegy a gyerekhez és akkora pofont ad neki, hogy leesik a Székről.
- Szóval, mit néztetek?
- Az Avatart, amit Pisti az internetről letöltött.
- Látod fiam, én a te korodban soha nem hazudtam az apámnak! -oktatja az apja, de,...
A robot erre odamegy az apához és akkora pofont ad neki, hogy leesik a Székről.
A fiú felröhög.
- Na, látod! A te fiad! - szólal meg a feleség is.
A robot erre odamegy az asszonyhoz és akkora pofont ad neki, hogy leesik a székről.


A feleség kidobta a robot...

------------------Málna PC










Robottechnika
A robot fogalma      
A robot újraprogramozható, sokfunkciójú manipulátor, amely anyagokat, szerszámokat változó program szerint mozgat, technológiai feladatokat ellát, összeszerelést végez. A programozható ipari robotok a programozásukkal meghatározott ismétlődő mozgássorozatok elvégzésére alkalmasak, általában szerszámokat vagy munkadarabok mozgatnak szakaszosan vagy folyamatosan vezérlőegységük memóriájában tárolt programnak megfelelően. A munkaciklus befejezése után visszaállnak alaphelyzetükbe, és a következő indító jelre a programozott mozgássorozatokat megismétlik. A robotokat fokozatos fejlesztésüknek megfelelően generációba soroljuk.
Első generációs robotok
Kötött program szerint működnek, pontvezérlésűek. E típusoknál a környezetből érkező jelek nem befolyásolják a robot mozgásprogramját.
Ezeknél az u.n. ‘vak ‘ robotoknál pl.: anyagmozgatás esetén külön gondoskodni kell a felveendő tárgy megfelelő pontosságú tájolásáról.
Második generációs robotok
Ezek már érzékelőkkel vannak ellátva, és az ezekből kapott jelek befolyásolják a mozgást. (Általában helyzet, erő, nyomaték, hőmérséklet, stb. érzékelőket alkalmaznak)
Az érzékelők által szolgáltatott jelek alapján az információk gyors feldolgozására képes - többnyire mikroprocesszros - vezérlőegység a mindenkori helyzet figyelembevételével célorientált utasításokat ad a végrehajtó szervek részére.
Ezek a robotok már alkalmazkodni képesek a környezetükben történő bizonyos változásokhoz. Vezérlésük pont, vagy pályavezérlés.
Harmadik generációs robotok
Komplex feladatok elvégzése (pl.: automatizált szerelés ellenőrzése stb.) alkalmasak. E robotok érzékelőikkel környezetükből sokféle, és információt gyűjtenek, ill. dolgoznak fel, amelyek segítségével önálló döntésekre, bonyolult folyamatokban való részvételre is alkalmasak.
Alak és helyzetfelismerő képességük, mesterséges intelligenciájuk magas fokú. Az egyes robotgenerációk között természetesen nem lehet éles határt vonni. Napjainkban is egyre többféle új robot-modell jelenik meg.
Robotok osztályozása többféle szempont szerint történhet:
Szolgáltatásaik szerint lehetnek:
-egyszerű
-univerzális
Alkalmazási területük szerint:
-mozgást (move funkciót) ellátó
-technológiai műveletek (make funkciót) végző
-ellenőrző feladatokat (teszt funkciót) ellátó robotok.

Jellemzőik:
-mechanikai felépítés
-mozgástér
-karrendszer
-koordináta rendszer
-szabadságfokok
-terhelhetőség
-ismétlési pontosság
-dinamikus pontosság
Egyszerű robotok
Pozícionálásuk ütközők segítségével, történik, általában pneumatikus működésűek, vezérlésük elektropneumatikus. Programozásuk többnyire a programhengeren történő beállítással valósul meg. Főleg munkadarabok, szerszámok mozgatására használják.
Univerzális robotok
Többnyire hidraulikus vagy villamos hajtásúak. Mágneses memóriájuk és mikroprocesszoros központi egységük van. Ponttól - pontig vezérléssel vagy pályavezérléssel működnek.
Alkalmazási területük elsősorban technológiai jellegű. pl.: hegesztés, felületkezelés, szerelőszalagok kiszolgálása
Mozgást végző robotok
Jellegzetes alkalmazási területük:
-fémforgácsoló szerszámgépek kiszolgálása
-munkadarabok átrakása, átfordítása
-kovácsolóműhelyek kiszolgálása
-anyagmozgatás
-stb.
Technológiai műveleteket végző robotok
Jellegzetes alkalmazási területük:
-festékszórás
-pont és vonalhegesztés
-öntvénytisztítás
-revételenítés
-sorjázás
-köszörülés
-szerelést végzése

Ellenőrző robotok
Termékek automatikus vizsgálatát, mérését, osztályzását végzik. Ellenőrzik a gyártástechnológiai folyamatot, mind pedig saját működésüket (En-teszt).
PARAMÉTEREK:
Koordináta rendszer

Ez határozza meg a főmozgások lehetséges irányait.
Ennek megfelelően van:
-derélós koordinátarendszer







                                                                                                                      

Az ipari robotok koordináta rendszerei:
a)      derékszögű, b) henger, c) gömb, d) többcsuklós

T = tengely irányú, R = forgó (rotációs) elmozdulási lehetőségek jelölése.

DERÉKSZÖGŰ: három egyirányú


 mozgást végez


HENGER: két egyirányú, és egy
forgómozgást végez











GÖMB: egy egyenes vonalú, és két
forgómozgást végez

TÖBBC S U KLÓ S: háromirányú forgómozgást végez (“humanoid” vagy más néven
„antropomorf” robotok)
Szabadsági fokok:
A mozgások lehetséges mozgásirányainak a száma. Az előbb felsorolt alaptípusoknál ez a szám 3, de ez több koordinátarendszer kombinációjával növelhető. (pl: henger, és gömb kombinációval a főmozgás lehet 4 szabadságfokú)
Terhelhetőség
Néhány tized „N” nagyságrendtől (mikro-robot) több ezer „N” nagyságrendig változtatható. Ezt rendszerint 2 adattal jellemzik:
-legnagyobb sebességű mozgáshoz tartozó terhelhetőség
-redukált (rendszerint 50%-os) sebességhez tartozó terhelhetőség
Ismétlési pontosság
Főleg a pontvezérlésű robotok jellemző statikus adata. Pályavezérlésű robotoknál ennek megfelelője a pályakövetési pontosság.


Dinamikus pontosság
A mozgásközben megtűrt eltérések értéke. (lengések mérete, stb.)
Műveleti sebesség
Az egyenes vonalú mozgás legnagyobb sebességével és a forgómozgások maximális szögsebességével jellemezhető. A robot termelékenységére jellemző adat.
A robotok üzeme szempontjából döntő a hajtások, a vezérlés, és az érzékelés megoldásának módja.
Hajtások
Lehetnek:
-pneumatikus
-hidraulikus
-villamos:
-léptetőmotoros
-egyenáramú, szervomotoros hajtások
Általában a rendszer minden egyes szabadságfokához külön-külön hajtást alkalmaznak.
Vezérlés
-pontvezérlés
-szakaszvezérlés (kötött útvonalú robot)
-pályavezérlés (útvezérlésű robot)
Pályavezérlés esetében a robotkar végpontja térben tetszőleges alakú, de meghatározott pályán mozog. A robot karja az előírt pályát elemi útszakaszok sorozatával közelíti meg. Megfelelő függvénykapcsolat van a különböző mozgásirányokban megtelt elmozdulások között.
A pályavezérlés programozható:
-betanítással
Közvetlenül a robotot, vagy nehezebben mozgatható típusok esetén ennek szimulátorát az ún. programozókat a kezelő végigvezeti a kívánt pályán Eközben a robotot karrendszer útmérő érzékelőinek jelzései alapján a bejárt pálya jellemző adatai (koordinátái) beíródnak a vezérlőegység memóriájába.
-megfelelő koordináták programozásával
Az egyes pályaszakaszokat (útszakaszokat) meghatározó pontok koordinátáinak programozásával, és - az ezen pontok közé eső pályaszakasz pontjainak interpolációval - történő meghatározásával történik.
A szakaszvezérlésnél, - amely átmenet a pont és pályavezérlés között - a mozgás mindig csak egy koordináta tengely irányában történik egyidejűen és nincs összefüggés a különböző tengelyirányokban megtelt elemi elmozdulások között.




Érzékelés
Egyszerűbb típusoknál általában csak helyzetérzékelőket alkalmaznak Digitális helyzetértékelésnél (útmérés) megkülönböztetünk:
-abszolút helyzetérzékelést
-növekményes (relatív) helyzetérzékelést
Abszolút: bármely pozícióban a karok helyzetének tényleges értékét jelzi.
Növekményes: az elemi utaknak megfelelő villamos impulzusokat egy-egy számláló méri.
Szabadságfokonként külön-külön mérik a karok helyzetét. Ebben az esetben a karok helyzetének abszolút értékét az összes növekmény eredője határozza meg.
Természetesen a korszerű robotoknál a helyzetérzékelésen túl még más érzékelőket is használnak, így pl.: erő ill. nyomaték, hőmérséklet, vizuális, akusztikus ill. többfunkciós érzékelőket.

Megfogó szerkezetek
Többnyire egyedi tervezésűek Azonos helyzetben álló tárgyak megfogásakor elegendő a robot pontosan ismétlődő mozgásciklusainak megvalósítása.

Alkalmazott főbb típusok
  1. Két, vagy több (merev, vagy rugalmas) ujjas megfogó szerkezetek.
  2. Vákuumos megfogók.
  3. Mágneses megfogók.
  4. Expandáló megfogók.
  5. Rugalmas megfogók. A beállási pontatlanság bizonyos fokú korrekcióját teszi lehetővé.

6. Beépített érzékelős megfogó szerkezetek. A robot mozgási lehetőségeinek megfelelő elemi korrekciós mozgásokat váltanak ki az adott pontosságú beállítás eléréséig. Így bizonyos alkalmazkodóképességgel biztosítanak.
           



7. Adaptív megfogó szerkezetek: A rendezetlen pozíciókban levő azonos tárgyak megfogásához, álló tárgyaknál a megfogó szerkezet megfelelő tájolását biztosítja. Mozgásban levő tárgyaknál a robotkar mozgását szinkronizálja a tárgy mozgásához.
           


8, Magas intelligencia szintű megfogó szerkezetek:
Ha különböző tárgyakat kell a robotnak előírt sorrendben felvenni, akkor a robot alakfelismerő képességét is biztosítani kell. Ez megfelelő kapacitású számítógéppel biztosítható.

Robotok minősítése, vizsgálata
A robotok minőségi jellemzőinek meghatározására a legfontosabb vizsgálatok:
-mozgási tartomány ellenőrzése
-statikus pontosság, ismétlési ill. pályakövetési pontosság
-dinamikus pontosság
-sebesség, lépésidő, gyorsulások ellenőrzése
-erőhatások mérése (mozgató, szorító stb.)
-terhelhetőség ellenőrzése
-hajtások teljesítmény felvételének mérése
-robot működési zajszintjének mérése
-hőmérsékletváltozástól függő pozícionálási hiba
-vezérlés, programozás ellenőrzése.
-karbantartási igény meghatározása
            -biztonsági munkavédelmi előírások szerinti minősítés stb.

Robotmanipulátor felépítése
Fő részei:
-állványszerkezet
-karok
-forgó és egyenes vonalú mozgást létesítő egységek(hajtások)
-megfogó szerkezet
-vezérlés és útmérő rendszer
-szenzorok
Állványszerkezet:
A robot karrendszerét hordozó, annak forgását biztosító egység
Lehet:
-helyben maradó
-mozgó
Karrendszer:
            a megfogó szerkezet mozgatása, vezetése a munkatéren belül.
Hajtások:
            a robot egyes egységei-izületei mozgatását teszik lehetővé.
            A hajtás lehet:
                        -zárt hatásláncú
                        -nyitott hatásláncú
            Zárt hatásláncú: (szervo hajtás) gyakorlatilag korlátlan számú pályaponton történő
            megállást, áthaladást végre tud hajtani. (pályavezérlés) Az elmozdulás mérésére   különféle útmérő rendszerekkel jeladókat alkalmaznak.
            Nyitott hatásláncú: visszajelzésen alapuló szabályozás nem lehetséges.
            Megfogó szerkezet:
            A mozgatandó tárggyal közvetlen kapcsolatban van. Azt megfogja ‚biztosan tartja,         előírt helyzetbe hozza, majd leteszi.



Szenzorok:
 -A manipulátor belső állapotának érzékelése (helyzet, sebesség, erő, nyomaték stb.)
-A tárgy és környezete állapotának érzékelése
-Fizikai mennyiségek mérése
-Tárgyak felismerése és helyzet-meghatározása
- Környezetanalízis
Felépítési elvek.
A háromdimenziós térben egy merev test helyzetét helyvektorával, és irányával határozhatjuk meg. Ha a test teljesen szabadon mozog ‚akkor 6 szabadságfoka van és legfeljebb 3 forgással és 3 egyenes vonalú haladó mozgással hozható új helyzetbe.
Robot kinematikai alapstruktúrái
A robot típusát és tulajdonságait a tengelykombinációk jelentős mértékben meghatározzák. Kinematikai struktúrának nevezzük, hogy milyen elmozdulásokat tud végezni a robot. Erre a szabadságfokok adnak útmutatást. A kinematikai felépítést illetően a szabadságfokok számának növelésével a lehetséges struktúrák száma is nő.
Munkatér:
A mozgás leírásánál célszerű az effektor, ill. annak programozott ponthelyzetéből kiindulni.
Effektor minden olyan szerkezet a robot manipulátor kinematikai láncának végén, amelyen keresztül a robot, és a tárgy kölcsönhatása létrejön. (ilyen p1: a megfogók) A koordináta rendszerből adódik a munkatér. Pl.: hengeres munkatér, a henger koordináta rendszerből. Gömb munkatér stb.
Robot manipulátorok hajtásai
Lehet: pneumatikus hajtás, hidraulikus hajtás, elektromos hajtás, vagy vegyes hajtás
Hajtásláncok
A robot mozgató mechanizmusában a motor és a hajtott elem között általában valamilyen közvetítő gépészeti egység - a hajtáslánc - van. Ide sorolunk minden olyan szerkezetet, amely a forgó, és halandó motorok, és a forgó, és halandó hajtott elemek között van.
A hajtásláncra az alábbi okok miatt van szükség:
- illeszteni kell a motor fordulatszámát (sebességét) és nyomatékát (erőt) a hajtott elem követelményeihez, tehát megfelelő áttételt kell létrehozni.
- a hajtáslánc a forgó mozgásból halandó mozgást hoz létre és fordítva
- a hajtáslánc segítségével el lehet távolítani a motort a robot megfogó szerkezete közeléből,
(a hajtáslánc kisebb helyet foglal el,) általában a karba szokták beépíteni.
A hajtáslánc tehát összetett feladatot valósít meg.
Követelmények a hajtáslánccal szemben
- előírt kinematikai kapcsolatot valósítson meg. (hajtásegyenletesség, holtjáték-mentesség,
stb.)
- előírt teherbírása legyen, (a szilárdsági méretezést nehezíti az igénybevétel bonyolultsága.)
- kis anyagfelhasználásra, kis tömegű szerkezetre kell törekedni
- legyen merev
- jó hatásfokú legyen
A követelmények együttes teljesítése nehéz, ezért csak az optimálisra törekedhetünk.
Hajtásláncok osztályozása:
Mozgás átalakítás jellege alapján:
- halandó mozgást - halandó mozgássá alakít
- halandó mozgást - forgó mozgássá alakít
- forgó mozgást - halandó mozgássá alakít
- forgó mozgást - forgó mozgássá alakít
A felsorolt hajtásláncokat általában egymással összekapcsolva használják.
Robotprogramozás
Igen sokfajta robotprogramozási mód ismert., ezek két nagy csoportba oszthatók:
- ON-LINE
- 0FF - LINE rendszerre
Az ON - LINE programozás során magát a robotot programozzák.
A rendszer előnye, hogy a programozó számításba tudja venni a munkaterületen elhelyezkedő tárgyakat, és azonnal ellenőrizni tudja a működést.
Hátránya: a programozás idejére a robotot le kell állítani. (Ez különösen ipari szempontból hátrányos, mert a programozás ideje alatt a robot nem termel)
A programozás sokféle módon megvalósítható:
1. Kézi programozás leginkább kötött útvonalú robotokra jellemző A programozás az elektromos, mechanikus, illetve pneumatikus ‘memóriák’ beállításával történik.
A legegyszerűbb manuálisan programozható rendszer a forgódobos vezérlő.
A dobra adott távolságonként bütyköket erősítenek. A dob forgása során a bütykök kapcsolókat zárnak, amelyek aktivizálják a motorokat, és ezzel előidézik a robot mozgását. Ha ezeket a bütyköket (peckeket) elhelyeztük, és a dobot elindítottuk, már nincs mód a mozgások megváltoztatására.
A másik kézi vezérlő a pneumatikus vezérlő
A pneumatikus logikai elemeket a számítógép logikai áramköreihez hasonlóan lehet egymás után kapcsolni. A pneumatikus logikai szelepeket kézzel lehet programozni, méghozzá az egyes csövek megfelelő helyre történő csatlakoztatásával.
Hátránya, hogy igen bonyolult, és nehézkes az összeszerelés, valamint, hogy néhány szelep után a levegőt újra kell sűríteni.
2. Átvezető programozás (tanítás mozgatható kezelőpulttal) Ennek lényege, hogy a robotot a kezelő a vezérlőkonzol, vagy kézi vezérlőkészülék segítségével tanítja meg a szükséges mozgásokra. A tanítás során a kezelő lépésenként halad, és az egyes lépéseket külön - külön beírja a robot memóriájába.
A vezérlőkonzol a robotra, vagy mellé rögzített kezelőpult. A kézi vezérlőkészülék egy kisméretű, hordozható billentyűzet. Ez a programozási mód főleg a pontvezérlésű robotoknál használatos.
3. „Átsétáló” programozás (tanítás, kézen fogva)
A programozó kézzel végigvezeti a robot-manipulátort az elvégezendő feladat útvonalán. A mozgás paramétereit ennek során a robot vezérlőegysége önállóan rögzíti. Ehhez szükséges, hogy a programozó járatos tegyen az adott feladat elvégzésében. Ez a programozási mód útvezérlésű robotoknál alkalmazható és igen bonyolult működések is elérhetők. Igen nagy memóriakapacitásra van szükség az útvonal paramétereinek rögzítéséhez.
0FF - LINE rendszerű programozás
Ennek során a programozó egy számítógép terminálján - a robottól függetlenül - fejleszti ki a működést irányító programot. Ezt a programot a programozó helyett számítógépes alkatrész, -vagy gyártástervező - CAD-CAM - rendszerek is előállíthatják. Az elkészült programot rögzítik a robot memóriájában.
Előnye: a programozás illetve programfejlesztés alatt a robotot nem kell lekapcsolni.
Hátránya: igen nehéz feladat ilyen programot írni, ha a működési területen sok tiltott zóna van.
A robotok, és más intelligens gépek alkalmazása
A robotokat általában speciális feladatok elvégzésére tervezik, de lehetőség van arra, hogy egy robot egy időben több feladatot lásson el. Az is lehetséges, hogy egy igen összetett feladat elvégzésén több robot dolgozik egyszerre. Robotok, és más intelligens gépek együttes alkalmazásával lehetőség nyílik komplett termékek előállítására, akár emberi beavatkozás nélkül is.



 


A szakkör célja a programozást és robotépítést kedvelő tanulók összegyűjtése, számukra ennek az új, kreatív és sokoldalú hobbinak a bemutatása, megszerettetése. A foglalkozások során a problémamegoldás, logikai gondolkodás, programozási készségek fejlesztése a cél, miközben a gyerekek játszva szerezhetnek meg több különböző tantárgyhoz kapcsolódó ismeretet (pl. fizika, természetismeret, matematika).

LEGO Mindstorm EV3 és a NAO robotok

Robot szakkör:
A következő robotok készültek el:
  • labirintusból kitaláló
  • akadályt kikerülő
  • vonalkövető
  • fénykövető
  • hótoló
  • Egyéb alkalmazás: riasztórendszer modellezése
  • Biztonsági kamera 

Málna Pc-ből robot.
A Málna PC (Raspberry Pi) robottá alakul.Kezdjük egy távirányítós, kamerás autóval.
  C-ben programozni  kell és ismerni a Linux-ot felhasználói szinten.
A diákok azzal álltak elő, hogy ők robotot akarnak építeni. Igazit, ami működik. Egyik lehetőség a LEGO Mindstorm. Beszélgettünk kicsit róla, és eljutottunk oda, hogy ha lenne 2 kerék külön motorral, meg egy bolygó kerék (nem tudom pontosan hogy hívják), akkor abból már lehetne kezdeni valamit. Csakhogy vezérelni kéne. Először programozható IC-kre gondoltam, aztán összeakadtam a net-en a Raspberry Pi-vel.
Innen már egyértelmű volt, hogy a Málna vezérli majd. Nézegettem a net-et, és láttam, hogy van hozzá kamera is, és így már értelme is lett. Szóval meglett a cél. Építeni, egy net-ről, böngészőből irányítható autót, amin van egy kamera, és a kamera képe látszik a böngészőben. Kis kutatás a net-en, hogy mi is kell. Nagyjából a hozzávalók: - Raspberry Pi (én a model A-t választottam, egyrészt kisebb a fogyasztása, ami egy távirányítós autónál fontos lehet, másrészt ezt adják a kamerával KIT-ben)
- legalább 4 GB-os SD kártya (8 GB-ost ajánlanék minimum)
- 2 kerék, külön motorokkal, meg valami “alváz” (ez az ebay-ről KIT-ben beszerezhető.)
- motorvezérlő (a két motort tudja külön-külön vezérelni)
- kábelek - USB WIFI adapter
- USB HUB (ez egyenlőre úgy tűnik, hogy csak az elején kell)
- USB billentyűzet, esetleg egér (ezek is egyenlőre csak az elején kellenek)
- Valami kijelző (én a TV-t használtam, mert a HDMI kábel adott volt, és ez is csak az elején kell)
A billentyűzet, egér, Raspberry Pi, SD kártya és a TV kivételével, minden ebay-ről jött.
Billentyűzet , egér, SD kártya és a TV volt. A Raspberry Pi-t meg itthon vettem a Málna PC-nél.
Miután minden megjött, kezdetét vehette a munka.
Először is megkerestem a net-en, hogy mit rakjak rá. Így találtam rá a NOOBS-ra (kezdőknek szóló cucc), bár nem tudom, hogy mennyivel lenne bonyolultabb mondjuk egyből a RASPBIAN-t felrakni. Viszont a teljes NOOBS-hoz kicsi a 4GB-os kártya, így végül a NOOBS-ból nem másoltam fel minden lehetőséget.
SD kártya be a Málnába, meg a HDMI kábel is, na meg a billentyűzet. Végül a telefon töltője, mint áramforrás. Bejött egy kezdő képernyő, ahol kiválaszthattam, hogy legyen magyar, és hogy a RASPBIAN-t rakja rá. Majd partícionálta az SD-t és feltelepítette a rendszert, és kész. Működik. Egyből. X felület is.
Ezután jöhetett a net beállítás, mivel a model A-n nincs hálózati csatlakozó, és csak 1 USB port van, így kell az USB HUB. Szóval USB HUB be, billentyűzet HUB-ba, WIFI adapter HUB-ba. Majd bekapcs.
Az X felületen volt egy WIFI config program, azzal könnyen beállítottam a WIFI-t.
Kis utána olvasással meg lett, hogy hogyan legyen fix ip cím. Innentől nem kell a billentyűzet, egér, és monitor, mert másik gépről PUTTY-tyal, esetleg, ha X felületet akarunk, VNC-vel vezérelhető.
Mivel az autót böngészőből szeretném távirányítani, raktam a Málnára egy apache-ot is. Ez is könnyen gond nélkül felment.
Belső hálózaton a fix ip-vel el is értem a weboldalt.
Azért, hogy a világ bármely pontjáról hozzá férhető legyen, kéne valami dynamic dns is. Na itt tartok. Szenvedtem, végül nem nagyon jött össze. A freedns-en beregisztráltam, elvileg a Málna frissíti is az IP címet, log alapján sikeres. A ping megy is a logikai címre, de a web oldal nem jött be.

A wi-fi modullal rendelkező robot ad-hoc wireless kommunikációval képes számítógéphez csatlakozni. Erre azért van szükség, mert semmilyen kezelőszerv nincs a roboton az On/Off/Charge kapcsolón kívül, vagyis a beépített parancsokat, a feltöltött programot is csak külső számítógépről lehet elindítani.
A kapcsolat kiépítéséhez a számítógépnek vezeték nélküli kommunikációra alkalmasnak kell lennie, akár egy beépített, akár egy bővítőkártya segítségével. Más szóval wi-fi eszközt kell tartalmaznia. Az ad-hoc wireless kapcsolat beállítása nem különbözik lényegesen a wi-fi routerekkel való, már megszokott kapcsolatépítéstől, a különbség csupán az, hogy a router helyett ezúttal két számítógép eseti (ad-hoc) közvetlen kommunikációját valósítjuk meg. Ugyanakkor mivel ez egy lényegesen ritkábban használt funkció az operációs rendszerek kevésbé támogatják. Nekem is nem várt kellemetlenségeket okozott a beállítása.
Mivel linuxot használok (Mandriva 2010), ezért az ehhez szükséges lépéseket írom le. A Windows-os beállításokról itt és itt lehet többet megtudni.
A vezeték nélküli kapcsolódáshoz be kell állítani a kapcsolódási módot, a hálózat azonosítóját és a gép IP címét. Ehhez root jogokra van szükség, mivel a gép hálózati beállításait kell megváltoztatni a network, az iwconfig, és az ifconfig parancsokkal.
Nem feltétlenül szükséges, de mivel nekem így vált be, ezért első lépésként lekapcsoltam a teljes hálózatot.
/etc/init.d/network stop
Ezután az iwconfig-gal megadtam az ad-hoc kapcsolódási módot, és a hálózat azonosítóját, mely a robot esetében SRV1. Mivel a wireless interfész az én gépemen wlan0 névre hallgat, ezért a parancs az alábbiak szerint nézett ki:
iwconfig wlan0 mode Ad-Hoc essid SRV1
Következő lépésként meg kell adni a gép IP címét az ifconfig paranccsal. Célszerű (ellenkezőjét nem is próbáltam) a robot IP címével azonos tartományból választani IP címet a vezeték nélküli interfésznek. Mivel a robot IP címe 169.254.0.10, ezért ez a parancs így nézett ki:
ifconfig wlan0 169.254.0.12
Végül ha már be van kapcsolva a robot érdemes megpróbálni csatlakozni hozzá. Ezt a telnet paranccsal lehet megtenni az általam használt robotnál a 10001-es porton keresztül. Ehhez már elég egy hagyományos felhasználó is, vagyis nincs szükség root-ra.
telnet 169.254.0.10 10001
Ezután én többnyire visszakapcsoltam a vezetékes hálózatot az ifup paranccsal.
ifup eth0
Ha minden jól ment és a telnet parancs sikeres volt, akkor a robot a következőket írja ki a képernyőre:
##Version - SRV-1 Blackfin w/picoC 0.91 13:12:45 - Jan 20 2010
A megjelenő promptnál V betűt írva pedig kiírja a verziószámot.
Ha ezt megtörtént, akkor a csatlakozással sikerrel jártunk. (A telnet programból a kilépést egy kill paranccsal oldottam meg, mivel ilyen értelmű robotutasítást nem találtam.)
Nehézséget okozhat, hogy ha a robot flash memóriájába korábban programot töltöttünk, akkor a csatlakozás előtt az fut le. A futás befejezése előtt nem lehet a robottal kommunikálni. Néha úgy tűnik, hogy a robot megáll, mert elkészült a betöltött program futtatásával, de amikor kapcsolódni próbálunk, akkor ismét elkezd dolgozni. Egy idő után azért befejezi a futást, és végre használhatjuk.

Lát és fog:




Válasz a kérdésre:
Vigenére tábla Pithon prg  

    #!/usr/bin/env python3
    
    # Informatika emelt érettségi 2005 október - Vigenére Tábla
    # Rostás Balázs
    
    import string
    
    # 1. feladat:
    
    while True:
        szovegBe = input("Kérem adjon meg egy maximum 255 karakter hosszú szöveget: ")
    
        if len(szovegBe) > 255:
            print("A megadott szöveg túl hosszú! Próbálja újra!\n")
        elif len(szovegBe) == 0:
            print("Nem adott meg szöveget! Próbálja újra!\n")
        else:
            break
      
    # 2. feladat:       
    
    szovegBe = szovegBe.upper()
    magyarKarakter = {"Ő":"O", "Ú":"U", "É":"E", "Á":"A", "Ű":"U", "Ö":"O", "Ü":"U", "Ó":"O", "Í":"I"}
    
    for char in szovegBe:
        if char in magyarKarakter.keys():
            szovegBe = szovegBe.replace(char, magyarKarakter[char])
        if char in string.punctuation or char in string.digits or char == " ":
            szovegBe = szovegBe.replace(char, "")
          
    # 3. feladat:
    
    print("\nA nyíltszöveg:\n",szovegBe,"\n", sep="")
    
    # 4. feladat:
    
    while True:
        kulcsSzo = input("Kérem adjon meg egy maximum 5 karakteres kulcsszót: ")
    
        if len(kulcsSzo) > 5:
            print("A megadott kulcsszó több mint 5 karakter! Próbálja újra!\n")
        elif len(kulcsSzo) == 0:
            print("Nem adott meg kulcsszót! Próbálja újra!\n")
        else:
            break
    
    kulcsSzo = kulcsSzo.upper()
    
    # 5. feladat:
    
    szamlalo = 0
    while (len(kulcsSzo) < len(szovegBe)):
        if szamlalo == len(kulcsSzo):
            szamlalo = 0
        kulcsSzo = kulcsSzo + kulcsSzo[szamlalo]
        szamlalo += 1
    
    print("\nA kulcsszöveg:\n"+str(kulcsSzo)+"\n")
    
    # 6. feladat:
    
    vTabla = []
    
    fajlBe = open("Vtabla.dat", "r")
    for line in fajlBe:
        vTabla.append(line.strip("\n"))
    fajlBe.close()
    
    kodoltKi = ""
    
    oszlopSzam = []
    sorSzam = []
    
    for char in szovegBe:
        oszlop = 0
        while (char != vTabla[oszlop][0]):
            oszlop += 1
        oszlopSzam.append(oszlop)
      
    for char in kulcsSzo:
        sor = 0
        while (char != vTabla[0][sor]):
            sor += 1
        sorSzam.append(sor)
    
    for char in range(len(szovegBe)):
        sor, oszlop = sorSzam[char], oszlopSzam[char]
        kodoltKi = kodoltKi + vTabla[oszlop][sor]
      
    # 7. feladat:
    
    print("A kódolt szöveg:\n" + str(kodoltKi))
    
    fajlKi = open("kodolt.dat", "w")
    fajlKi.write(kodoltKi)
    fajlKi.close()



#!/usr/bin/env python3

# Informatika emelt érettségi 2005 október - Vigenére Tábla
# Rostás Balázs

import string

# 1. feladat:

while True:
    szovegBe = input("Kérem adjon meg egy maximum 255 karakter hosszú szöveget: ")

    if len(szovegBe) > 255:
        print("A megadott szöveg túl hosszú! Próbálja újra!\n")
    elif len(szovegBe) == 0:
        print("Nem adott meg szöveget! Próbálja újra!\n")
    else:
        break
   
# 2. feladat:       

szovegBe = szovegBe.upper()
magyarKarakter = {"Ő":"O", "Ú":"U", "É":"E", "Á":"A", "Ű":"U", "Ö":"O", "Ü":"U", "Ó":"O", "Í":"I"}

for char in szovegBe:
    if char in magyarKarakter.keys():
        szovegBe = szovegBe.replace(char, magyarKarakter[char])
    if char in string.punctuation or char in string.digits or char == " ":
        szovegBe = szovegBe.replace(char, "")
       
# 3. feladat:

print("\nA nyíltszöveg:\n",szovegBe,"\n", sep="")

# 4. feladat:

while True:
    kulcsSzo = input("Kérem adjon meg egy maximum 5 karakteres kulcsszót: ")

    if len(kulcsSzo) > 5:
        print("A megadott kulcsszó több mint 5 karakter! Próbálja újra!\n")
    elif len(kulcsSzo) == 0:
        print("Nem adott meg kulcsszót! Próbálja újra!\n")
    else:
        break

kulcsSzo = kulcsSzo.upper()

# 5. feladat:

szamlalo = 0
while (len(kulcsSzo) < len(szovegBe)):
    if szamlalo == len(kulcsSzo):
        szamlalo = 0
    kulcsSzo = kulcsSzo + kulcsSzo[szamlalo]
    szamlalo += 1

print("\nA kulcsszöveg:\n"+str(kulcsSzo)+"\n")

# 6. feladat:

vTabla = []

fajlBe = open("Vtabla.dat", "r")
for line in fajlBe:
    vTabla.append(line.strip("\n"))
fajlBe.close()

kodoltKi = ""

oszlopSzam = []
sorSzam = []

for char in szovegBe:
    oszlop = 0
    while (char != vTabla[oszlop][0]):
        oszlop += 1
    oszlopSzam.append(oszlop)
   
for char in kulcsSzo:
    sor = 0
    while (char != vTabla[0][sor]):
        sor += 1
    sorSzam.append(sor)

for char in range(len(szovegBe)):
    sor, oszlop = sorSzam[char], oszlopSzam[char]
    kodoltKi = kodoltKi + vTabla[oszlop][sor]
   
# 7. feladat:

print("A kódolt szöveg:\n" + str(kodoltKi))

fajlKi = open("kodolt.dat", "w")
fajlKi.write(kodoltKi)
fajlKi.close()


Innováció:




 Fontos Linkek:

http://www.hobbielektronika.hu/cikkek/will-i_epitese_avagy_nullarol_a_robotokig_-_avr_mikrovezerlok.html

http://hobbirobot.hu/content/arduino-kezdoknek
http://pi.rook.hu/

http://avr.tavir.hu/modules.php?name=Content&pa=list_pages_categories&cid=15
https://github.com/jondot/groundcontrol
http://www.hobbielektronika.hu/cikkek/will-i_epitese_avagy_nullarol_a_robotokig_-_avr_mikrovezerlok.html?pg=3

https://www.raspberrypi.org/documentation/usage/gpio/
http://www.roboktat.hu/fels336soumlknek.html
http://www.farnell.com/datasheets/1883763.pdf
http://jataka.hu/rics/surveyor/index.html
http://hobbirobot.hu/content/vonalkoveto-i-robotika-kezdoknek
http://szamtech.freewb.hu/kepek-a-robotrol
http://hobbirobot.hu/content/avr-vezerlesu-hexapod-robot-epitese
http://hobbirobot.hu/sztyudi
http://hobbirobot.hu/content/launchpad_robot
http://hobbirobot.hu/content/akadaly-kikerulo-robot-30-robotika-kezdoknek

Nincsenek megjegyzések:

Megjegyzés küldése