Inteligentné hračky - konštruktéri programovateľných robotov. Programovanie a riadenie priemyselných robotov

  • 01.08.2019

Mnoho robotických ovládačov je implementovaných pomocou špeciálnych programovacích jazykov. Napríklad bolo implementovaných veľa programov všeobecnej architektúry behaviorálny jazyk, ktorú definoval Brooks. Tento jazyk je riadiaci jazyk v reálnom čase založený na pravidlách, ktorý sa kompiluje do ovládačov. AFSM. Jednotlivé pravidlá tohto jazyka, uvedené so syntaxou ako Lisp, sú zostavené do automatov AFSM a skupiny automatov AFSM sú kombinované pomocou kombinácie lokálnych a globálnych mechanizmov odovzdávania správ.

Podobne ako generická architektúra je jazyk správania obmedzený, pretože jeho cieľom je vytvoriť jednoduché AFSM s relatívne úzkou definíciou komunikačného toku medzi modulmi. Nedávno sa však na základe tejto myšlienky uskutočnil nový výskum, ktorý viedol k vytvoreniu množstva programovacích jazykov, podobných v duchu jazyku správania, ale výkonnejších a poskytujúcich rýchlejšie vykonávanie.

Jedným z týchto jazykov je univerzálny robotický jazyk, alebo skrátené GRL (Všeobecný jazyk robotov). GRL je funkčný programovací jazyk na budovanie veľkých modulárnych riadiacich systémov. Podobne ako Behavior Language, aj GRL používa štátne automaty ako hlavné stavebné bloky. Ale ako nastavenie nad týmito automatmi ponúka jazyk GRL oveľa širší rozsah konštruktov na definovanie komunikačného toku a synchronizáciu obmedzení medzi rôznymi modulmi ako jazyk správania. GRL programy sú zostavené do efektívnych programov v príkazových jazykoch ako napr OD.

Ďalším dôležitým programovacím jazykom (a pridruženou architektúrou) pre softvér paralelnej robotiky je systém plánovania reaktívnych akcií, alebo skrátene RAPS (systém reaktívnych akčných plánov). Systém RAPS umožňuje programátorom stanoviť si ciele, plány súvisiace s týmito cieľmi (alebo čiastočne definovať politiky) a tiež nastaviť podmienky, za ktorých budú tieto plány pravdepodobne úspešne realizované.

Rozhodujúce je, že RAPS obsahuje aj nástroje na riešenie nevyhnutných zlyhaní, ktoré sa vyskytujú v skutočných robotických systémoch. Programátor môže definovať postupy na zisťovanie porúch rôznych typov a poskytnúť postup na spracovanie výnimky pre každý typ zlyhania. V trojvrstvových architektúrach sa systém RAPS často používa na výkonnej úrovni, čo umožňuje úspešne riešiť nepredvídané situácie, ktoré si nevyžadujú preplánovanie.

Existuje aj niekoľko ďalších jazykov, ktoré umožňujú používanie nástrojov na uvažovanie a učenie v robotoch. Napríklad Golog je programovací jazyk, ktorý umožňuje bezproblémovú interakciu medzi algoritmickým riešením problémov (plánovaním) a nástrojmi reaktívneho riadenia špecifikovanými priamo pomocou špecifikácie.

Programy v jazyku Golog sú formulované z hľadiska situačného počtu, pričom sa berie do úvahy dodatočná možnosť použitia operátorov nedeterministických akcií. Okrem špecifikácie riadiaceho programu s nedeterministickými akčnými schopnosťami musí programátor poskytnúť aj kompletný model robota a jeho prostredia.

Keď riadiaci program dosiahne bod nedeterministického výberu, zavolá sa plánovač (poskytnutý vo forme overovateľa vety), aby určil, čo robiť ďalej. Týmto spôsobom môže programátor definovať čiastočne definované ovládače a spoľahnúť sa na použitie vstavaných plánovačov pri konečnom výbere plánu riadenia.

Hlavnou atrakciou jazyka Golog je jeho bezproblémová integrácia reaktívneho riadenia a algoritmického riadenia. Hoci má Golog prísne požiadavky (úplná pozorovateľnosť, diskrétne stavy, úplný model), Golog sa používa na vytvorenie vysokoúrovňových ovládacích prvkov pre rad vnútorných mobilných robotov.

JSk CES (skratka pre C++ pre embedded systémy) je rozšírenie jazyka C++, ktoré kombinuje pravdepodobnostné a vzdelávacie nástroje. Dátové typy CES zahŕňajú rozdelenia pravdepodobnosti, ktoré umožňujú programátorovi vykonávať výpočty s použitím neistých informácií bez námahy, ktorá je zvyčajne spojená s implementáciou pravdepodobnostných metód.

A čo je dôležitejšie, jazyk CES poskytuje prispôsobenie robotického softvéru prostredníctvom učenia založeného na príkladoch, podobne ako algoritmy učenia. Jazyk CES umožňuje programátorom ponechať v kóde „medzery“, ktoré sú vyplnené učiacimi sa funkciami; zvyčajne sú takéto medzery diferencovateľnými parametrickými reprezentáciami, ako sú neurónové siete. V budúcnosti v jednotlivých fázach učenia, pre ktoré musí učiteľ nastaviť požadované výstupné správanie, prebieha pomocou týchto funkcií induktívne učenie. Prax ukázala, že jazyk CES možno úspešne aplikovať v problémových oblastiach, ktoré sú charakteristické pre čiastočne pozorovateľné a súvislé prostredie.

Jazyk ALisp je jazykové rozšírenie Lisp. Jazyk ALisp umožňuje programátorom definovať nedeterministické body výberu, podobne ako body výberu v jazyku Golog. Ale ALisp nepoužíva program na dokazovanie teorémov na prijímanie rozhodnutí, ale používa učenie zosilnenia na určenie správnej akcie pomocou induktívneho učenia. Preto ten jazyk ALisp možno považovať za pohodlný spôsob, ako zaviesť poznatky o problémovej doméne do postupu učenia sa posilňovania, najmä poznatky o hierarchickej štruktúre „postupov“ požadovaného správania. Jazyk ALisp sa doteraz používal na riešenie problémov robotiky len v simulačných štúdiách, no môže sa stať základom sľubnej metodiky vytvárania robotov schopných učiť sa v dôsledku interakcie s ich prostredím.

14443

Roboty, najmä tie humanoidné, nemôžu nechať ľahostajnými ani tých ľudí, ktorí majú o moderné technológie malý záujem. Pravdepodobne je programovanie takýchto robotov veľmi zaujímavá a vzrušujúca činnosť. Je to tak, len málokto vie, aké ťažké je naučiť robota aj tie najjednoduchšie veci, ktoré sa nám zdajú úplne prirodzené. Sami by ste sa o tom mohli presvedčiť, keby ste mali prístup k modernej robotike.


Programovanie robotov je dnes výsadou úzkych špecialistov a všetci ostatní, ktorí sa zaujímajú o robotiku, môžu buď ticho závidieť, alebo sa uspokojiť s prácou so simulátormi, napríklad V-REP, simulátor robotov vyvinutý švajčiarskou spoločnosťou Coppelia Robotics. Prečo však nie? V-REP je prekvapivo bohatý na funkcie, podporuje ho viacero operačných systémov vrátane Windows a čo je najlepšie, je zadarmo na domáce použitie. Obsahuje tiež knižnice na programovanie robotov C/C++, Python, Java, Matlab a niektoré ďalšie jazyky.

V-REP prichádza so sadou hotových modelov – stacionárnych a mobilných robotov, ktoré je možné ovládať pomocou editačných skriptov. Na ovládanie niektorých modelov existuje špeciálna sada posuvníkov. Všetky roboty už majú základný program a riadia sa skutočnými zákonmi fyzického sveta, rovnakou gravitáciou. Platforma je distribuovaná v troch vydaniach: EVAL, EDU a Hráč. Prvá je plne funkčná verzia bez obmedzení, druhá je vzdelávacia verzia s licenčnými obmedzeniami, určená pre stredoškolákov, študentov a len nadšených používateľov. Player (Player) je program určený na spúšťanie scén vytvorených v profesionálnej verzii. Neexistuje žiadna možnosť úpravy skriptov.

Na zoznámenie sa s platformou je celkom vhodná druhá možnosť - V-REP PRO EDU. Robosimulátor sa inštaluje ako bežný program. Po spustení sa vám zobrazí okno rozdelené na tri časti.

Pravá a najväčšia plocha je zoomovateľné pódium, kde sa odohráva všetka akcia. Na ľavom okraji je objektová knižnica- roboty, ako aj rôzne doplnkové prvky, niečo ako rekvizity. Stredný panel obsahuje hierarchia objektov- scény, kamery, postavy, svetelné zdroje, modely a scenáre, ktoré ich ovládajú.

Ako pracovať s V-REP

Na prvý pohľad je všetko jednoduché – pretiahnite model z knižnice na javisko, stlačte tlačidlo Play a sledujte pohyby oddelenia. Niektoré modely sú celkom inteligentné, napr. "ľudský" Bill dokonale rozumie, ako sa vyhnúť prekážkam, kde sú hranice povrchu javiska a čo treba urobiť, aby ste nespadli "priepasť".

Tu je humanoidný robot Ansi pôjde v priamom smere, kým neprepadne cez okraj a nerozlúči sa so životom.

Roboty, ponechané svojmu osudu, sa potulujú naslepo, zrážajú sa a padajú, a keď spadnú na hladinu, nemotorne a bezmocne triedia svoje končatiny.

Vaša úloha- trénujte ich, ale bude to vyžadovať znalosť základných základov programovania, ideálne jazyka Lua, pretože práve na ňom sú napísané interné skripty V-REP. Otvorenie zdrojového kódu ovládacieho skriptu je veľmi jednoduché – stačí dvakrát kliknúť na ikonu "súbor" v stĺpci hierarchia objektov.

Pre zaujímavosť môžete experimentovať tak, že zmeníte hodnoty parametrov a potom budete sledovať správanie robotov. Vo V-REP je tiež dobrá sada hotových príkladov - scén vo formáte TTT, ktorý je prístupný z hlavného menu Súbor –> Otvoriť scény.

Programovanie virtuálnych robotov v Jave

Robotika už dávno prekročila hranice sci-fi románov a teraz je jednou z hnacích síl pokroku v mnohých oblastiach, ako je automatizácia tovární, medicína, vesmír atď. Dôležitú úlohu v robotike zohrávajú softvérové ​​simulátory, pretože nielenže zjednodušujú prácu inžinierov, ale tiež umožňujú výskumníkom testovať najnovšie algoritmy umelej inteligencie (AI) a strojového učenia. Jedným z týchto simulátorov je Simbad, open source projekt vyvinutý na báze technológie Java 3D (pozri). V tomto článku vysvetlíme, ako naprogramovať virtuálne roboty pomocou súpravy nástrojov Simbad, aby sme získali lepšiu predstavu o jednej z filozofií dizajnu robotov – o absorpčnej architektúre ( subsumpčná architektúra).

Začiatok článku je venovaný stručnému prehľadu robotiky a konceptu absorpčnej architektúry. Potom prejdeme na súpravu nástrojov Simbad a popíšeme, ako pomocou nej môžeme implementovať túto architektúru. Potom príde čas na vytvorenie jednoduchého robota v súlade s opísanou architektúrou. Na záver sa ponoríte do zábavného sveta bludísk a vytvoríte druhého robota, ktorý sa z nich podobne ako Homer zo Simpsonovcov (viď.) bude vedieť dostať sám. Samozrejme, vytvorené roboty budú “virtuálne”, t.j. bude žiť vo virtuálnom prostredí Simbad.

Programovanie robotov

V súčasnosti neexistuje jednotná, všeobecne uznávaná definícia pojmu „robot“. Na účely tohto článku robotom rozumieme niečo, čo pozostáva aspoň z nasledujúcich komponentov:

  • Nábor senzory
  • Program, ktorý určuje správanie robota
  • Nábor pohonov a efektory

Tradičná robotika

Tradičná robotika sa zvyčajne chápe ako obdobie rozvoja tohto odboru do roku 1986. Pre tú dobu bol typický koncept robota ako mechanizmu riadeného centrálnym ovládačom (mozgom), ktorý neustále aktualizuje svoje chápanie okolitého sveta a na základe tohto znázornenia vytvára plán správania. Nové informácie o svete pochádzajú zo senzorov, ako sú dotyk, svetlo, ultrazvuk atď. Mozog analyzuje všetky informácie zo senzorov a aktualizuje pohľad na prostredie a potom sa rozhodne o tej či onej akcii. Všetky akcie sa vykonávajú pomocou pohonov a efektorov. Prvými sú zvyčajne nejaké motory spojené so zariadeniami, ktoré priamo interagujú s vonkajším svetom - efektory. Príkladom toho druhého sú kolesá alebo ruky. Zároveň niekedy pohonov(aktuátory) sa týka samotných pohonov aj efektorov.

Tradičný robot teda prijíma údaje z mnohých senzorov, kombinuje tieto údaje v procese aktualizácie obrazu sveta, potom na základe tohto obrazu vypracuje akčný plán a nakoniec ho vykoná. Bohužiaľ, tento prístup je spojený s určitými ťažkosťami. Po prvé, vyžaduje veľké množstvo výpočtov. Po druhé, udržiavať aktuálny obraz o okolitom svete je veľmi náročná úloha, pretože svet sa neustále mení. Zároveň je známe, že mnohé organizmy, napríklad hmyz, bezpečne existujú aj bez podpory úplného obrazu sveta, navyše bez pamäti ako takej. Možno by ste sa teda mali pokúsiť osvojiť si ich prístup k fungovaniu? Takéto úvahy sa stali východiskom nového trendu v robotike, ktorý je v súčasnosti dominantný. Dostalo meno "behaviorálna robotika"(robotika založená na správaní - BBR).

Akvizičná architektúra

Jedným zo spôsobov, ako organizovať roboty BBR, je pohlcujúca architektúra, ktorú v roku 1986 navrhol Rodney A. Brooks – teraz vedúci Laboratória umelej inteligencie na Massachusettskom technologickom inštitúte (MIT) – vo svojom hlavnom článku s názvom „Slony nehrajú v šachu. "(pozri). Podľa Brooksa možno behaviorálne roboty považovať za súbor jednoduchých a nezávislých behaviorálne uzly(behaviors), z ktorých každá je definovaná dvomi vecami – tým, čo toto správanie spôsobuje (zvyčajne informácie prichádzajúce zo senzorov), a akciou, ktorá je jeho výsledkom (zvyčajne vykonávaná pomocou efektora). Správanie sa môže prekrývať a byť vo vzájomnom konflikte. V tomto prípade vstupuje do hry špeciálny mechanizmus. arbitráž, ktorý rozhoduje o tom, ktoré správanie je momentálne uprednostňované. Kľúčovým bodom je, že správanie robota ako celku nie je vopred dané, ale stavy z interakcie jeho behaviorálnych uzlov. Navyše, podľa zástancov BBR je globálne správanie viac ako len superpozícia jeho častí. to absorbuje každé z miestnych, nízkoúrovňových správaní. Vo všeobecnosti ide o to, že namiesto navrhovania robota a presného opisu jeho správania vo všetkých situáciách môžete jednoducho pridať uzly správania a zistiť, čo sa stane ako výsledok.

Simbad: Prostredie simulácie robotov

LEGO Mindstorms

Tento článok sa zaoberá tvorbou softvérových agentov (botov), ​​ale ak máte záujem o skutočných fyzických robotov, venujte pozornosť LEGO Mindstorms - úžasnej súprave nástrojov pre robotiku.

Slogan v centrále LEGO Mindstorms znie: „Urobíme pre robotiku to, čo iPod urobil pre hudbu“. Prvá verzia Mindstorms bola predstavená v roku 1998 a okamžite prekonala očakávania LEGO z hľadiska predajov. Cena balíka (250 dolárov) sa môže zdať trochu vysoká, ale nezabudnite, že iPod Classic stojí rovnako a má ho takmer každý. všetci.

iPod však neposkytuje taký záujem o hackovanie ako Mindstorms. Hneď ako vyšlo prvé vydanie Mindstorms, rôzne druhy hackerov začali hackovať a analyzovať RCX bloky, ktoré sú „mozgami“ robotov. LEGO bolo trochu zmätené a spočiatku sa nevedelo rozhodnúť, či nechať veci tak, ako boli, alebo vydať formálnu žiadosť o zastavenie takýchto akcií. Ku cti vedeniu spoločnosti slúži, že sa rozhodli dať hackerom voľnú ruku s Mindstorms.

To viedlo k vzostupu komunity Mindstorms (pozri ). Jedným z dôsledkov bolo portovanie platformy Mindstorms treťou stranou do iných jazykov, ako sú C a Java, zatiaľ čo samotná súprava nástrojov bola pôvodne dodávaná iba s grafickým programovacím jazykom NXT-G. Výsledkom je, že viac ako polovica používateľov súboru nástrojov sú dospelí profesionáli.

Simbad je určený pre softvérovú simuláciu robotov. Podľa webovej stránky projektu Simbad „poskytuje softvérové ​​nástroje na navrhovanie robotov, popis ich vplyvu na životné prostredie a používanie senzorov. Simbad bol primárne navrhnutý pre výskumníkov, ktorí potrebujú jednoduchú súpravu nástrojov na štúdium situačnej umelej inteligencie, strojového učenia a algoritmov AI vo všeobecnosti, najmä ak sú aplikované na autonómnych robotov a agentov.

Simbad vyvinuli na Jave Louis Hugue a Nicolas Bredeche. Projekt je hostiteľom SourceForge.net a je možné ho voľne používať alebo upravovať podľa podmienok GNU GPL (General Public License).

Technické detaily

Svet v prostredí Simbad môže obsahovať ako agentov (robotov), ​​tak aj rôzne neživé predmety, ako sú krabice, steny, svetlá atď. Čas na tomto svete je diskrétny, t.j. rozdelené do intervalov. Simbad obsahuje plánovač, ktorý prideľuje čas medzi agentov. Podobne ako skutoční roboti, agenti Simbad majú senzory (vzdialenosť, dotyk, svetlo atď.) a aktuátory (zvyčajne kolesá). V ktoromkoľvek časovom okamihu, ktorý je mu pridelený, môže robot vykonať nejakú akciu.

Triedy, ktoré implementujú agentov, musia prepísať metódu performBehavior(), ktorá popisuje ich správanie. V rámci tejto metódy môže robot analyzovať informácie prichádzajúce zo senzorov a meniť rotačné a translačné zložky rýchlosti pohybu. Vykonanie metódy performBehavior() trvá krátky čas, takže príkazy ako „pohyb o meter vpred“ nie je možné zadať. Aby sme toto obmedzenie obišli, spravidla je potrebné neustále sledovať stav, v ktorom sa robot nachádza. Okrem toho môžete pomocou časovača sledovať počet časových intervalov, počas ktorých bol robot v aktuálnom stave.

Simbad API

Príklady v tomto článku sa zaoberajú hlavne nasledujúcimi dvoma balíkmi, ktoré sú súčasťou Simbad API:

  • simbad.sim: Triedy v tomto balíku popisujú samotných robotov aj svet okolo nich. Hlavné triedy sú:
    • Agent: Samotní roboti.
    • Oblúk: Oblúky, okolo ktorých môžu roboty jazdiť alebo pod ktorými môžu jazdiť.
    • Rámček: Opíšte prekážky v ceste robota.
    • CameraSensor: Umožňuje prístup k obrazu okolitého sveta z pohľadu robota.
    • EnvironmentDescription: Popisuje prostredie, do ktorého môžete pridať roboty aj neživé predmety, ako sú steny a iné prekážky.
    • LampActuator: Svetlá, ktoré môžete pridať k svojmu robotovi.
    • LightSensor: Svetelné senzory.
    • RangeSensorBelt: Sada snímačov vzdialenosti, ktoré možno umiestniť po obvode robota.
    • RobotFactory: Používa sa na pridanie rôznych senzorov do robota.
    • Stena: Ďalší typ prekážky pre pohyb robota.
  • simbad.gui: Triedy v tomto balíku predstavujú samotného robota a umožňujú jeho ovládanie. Hlavná trieda je nasledovná:
    • Simbad: Okno, ktoré zobrazuje obraz sveta robota, informácie pochádzajúce z jeho senzorov, ako aj ovládacie prvky.

Implementácia akvizičnej architektúry so Simbadom

Rumba

Keď toto píšem, Roomba mi vysáva koberec pod nohami (pričom občas narazí na mačiatko). Rumba je robot vyvinutý spoločnosťou iRobot, ktorú založili traja absolventi MIT Rodney Brooks, Colin Angle a Helen Greiner. Bol vytvorený v súlade s princípmi akvizičnej architektúry a poskytuje otvorené rozhranie, ktoré vám umožňuje meniť jeho správanie tým najľubovoľnejším spôsobom. Kniha od Toda E. Kurta "Hackovanie rumby" hovorí o mnohých takýchto možnostiach (pozri).

Ak chcete implementovať architektúru prevzatia založenú na Simbad, začneme deklarovaním triedy potomka agenta s názvom BehaviorBasedAgent . Každá inštancia tejto triedy bude obsahovať pole správania (objekty typu Behavior), ako aj booleovskú maticu, ktorá uchováva informácie o ich párovej absorpcii.

súkromné ​​správanie; private boolean potláča;

Trieda BehaviorBasedAgent funguje ako plánovač správania. Výpis 1 zobrazuje úryvok kódu, ktorý opakovane prechádza celým radom správania a upravuje ich spúšťanie. V tomto prípade sa premenná currentBehaviorIndex používa na uloženie odkazu na správanie, ktoré by sa malo aktivovať v ďalšom kroku algoritmu.

Výpis 1. Slučka na aktiváciu správania po jednom a riešenie konfliktov
protected void performBehavior() ( boolean isActive = new boolean; for (int i = 0; i< isActive.length; i++) { isActive[i] = behaviors[i].isActive(); } boolean ranABehavior = false; while (!ranABehavior) { boolean runCurrentBehavior = isActive; if (runCurrentBehavior) { for (int i = 0; i < suppresses.length; i++) { if (isActive[i] && suppresses[i]) { runCurrentBehavior = false; break; } } } if (runCurrentBehavior) { if (currentBehaviorIndex < behaviors.length) { Velocities newVelocities = behaviors.act(); this.setTranslationalVelocity(newVelocities .getTranslationalVelocity()); this .setRotationalVelocity(newVelocities .getRotationalVelocity()); } ranABehavior = true; } if (behaviors.length >0) ( currentBehaviorIndex = (currentBehaviorIndex + 1) % behaviors.length; ) ) )

Všimnite si, že metóda performBehavior() prepíše rovnakú metódu v triede simbad.sim.Agent.

Trieda Behavior má dve abstraktné metódy:

  • isActive(): Metóda vracia booleovskú hodnotu, ktorá označuje, či by sa dané správanie malo v tomto okamihu aktivovať, vzhľadom na informácie pochádzajúce zo senzorov. Všetky inštancie triedy Behavior majú zároveň prístup k spoločnej sade senzorov.
  • konať (): Metóda vracia nové hodnoty translačnej a rotačnej rýchlosti (v tomto poradí), ktoré sú výsledkom aktivácie správania.

Príklad bludného robota priťahovaného k svetelným zdrojom

Teraz je čas vytvoriť softvérového robota (alebo robota), ktorý bude zahŕňať 4 nižšie uvedené správanie, uložené v zostupnom poradí podľa priority. Kód robota sa zobrazuje v zoznamoch dva až päť (vzorový kód pre tento článok je k dispozícii pre ).

  • Vyhýbanie sa: Zmení smer po kolízii alebo v snahe vyhnúť sa kolízii.
  • LightSeeking: Smeruje pohyb smerom k svetelnému zdroju.
  • Putovanie: Pravidelne mení smer pohybu náhodným spôsobom.
  • StraightLine: Smeruje pohyb v priamej línii.
Výpis 2. Trieda Avoidance (založená na deme SingleAvoiderDemo.java z distribúcie Simbad)
public boolean isActive() ( return getSensors().getBumpers().oneHasHit() || getSensors().getSonars().oneHasHit(); ) public Velocities act() (double translationalVelocity = 0,8; double rotationalVelocity = 0; RangeSensorBelt sonary = getSensors().getSonars(); double rotationalVelocityFactor = Math.PI / 32; if (getSensors().getBumpers().oneHasHit()) ( // Vyskytla sa kolízia translationalVelocity = -0,1; rotationalVelocity = Math.PI / 8 - (rotationalVelocityFactor * Math.random()); ) else if (sonars.oneHasHit()) ( // Čítanie hodnôt sonaru dvojité vľavo = sonars.getFrontLeftQuadrantMeasurement(); dvojité pravé = sonars.getFrontRightQuadrantMeasurement(); dvojité predné = sonary. getFrontQuadrantMeasurement(); // Uzavretie prekážky, ak ((vpredu< 0.7) || (left < 0.7) || (right < 0.7)) { double maxRotationalVelocity = Math.PI / 4; if (left < right) rotationalVelocity = -maxRotationalVelocity - (rotationalVelocityFactor * Math.random()); else rotationalVelocity = maxRotationalVelocity - (rotationalVelocityFactor * Math.random()); translationalVelocity = 0; } else { rotationalVelocity = 0; translationalVelocity = 0.6; } } return new Velocities(translationalVelocity, rotationalVelocity); }
Výpis 3. Trieda LightSeeking (na základe ukážky LightSearchDemo.java, ktorú poskytuje Simbad)
public boolean isActive() ( float llum = getSensors().getLightSensorLeft().getAverageLuminance(); float rlum = getSensors().getLightSensorRight().getAverageLuminance(); double luminance = (llum + rlum) / 2.0; // Aktivovať ak je svetelný zdroj v blízkosti, vráti jas > LUMINANCE_SEEKING_MIN; ) public Velocities act() ( // Otočte sa smerom k svetelnému zdroju float llum = getSensors().getLightSensorLeft().getAverageLuminance(); float rlum = getSensors().getLightSensorRight().getAverageLuminance (); dvojitá translačná rýchlosť = 0,5 / (llum + rlum); dvojitá rotačná rýchlosť = (llum - rlum) * Math.PI / 4; vrátiť nové rýchlosti (translationalVelocity, rotationalVelocity); )
Výpis 4. Túlavá trieda
public boolean isActive() ( return random.nextDouble()< WANDERING_PROBABILITY; } public Velocities act() { return new Velocities(0.8, random.nextDouble() * 2 * Math.PI); }
Výpis 5. Trieda StraightLine
public boolean isActive() ( return true; ) public Velocities act() ( return new Velocities(0,8, 0,0); )

Výpis 6 ukazuje absorpciu niektorých správaní inými.

Výpis 6. Deklarovanie booleovskej matice popisujúcej párové požitie správania
private void initBehaviorBasedAgent(BehaviorBasedAgent behaviorBasedAgent) ( Senzory = behaviorBasedAgent.getSensors(); Správanie = (nové vyhýbanie sa (senzory), nové LightSeeking (senzory), nové putovanie (senzory), new StraightLine (senzory), ); boolean subsumes ( ( nepravda, pravda, pravda, pravda ), ( nepravda, nepravda, pravda, pravda ), ( nepravda, nepravda, nepravda, pravda ), ( nepravda, nepravda, nepravda, nepravda, nepravda ) ); behaviorBasedAgent.initBehaviors(behaviors, subsumes) ;)

V tomto príklade je množina správania úplne zoradená podľa priority. Vo všeobecnosti je to voliteľné.

Ako cvičenie sa môžete pokúsiť implementovať nasledujúce veci:

  • Sociálne správanie: pohyb smerom k priateľom a preč od nepriateľov.
  • Vyhýbanie sa zdrojom svetla.
  • K niektorým robotom pridajte čelovky, aby sa začali navzájom priťahovať.

labyrintov

"No, konečne! Vedel som, že sa môžeš dostať z tohto bludiska pomocou Tremovho algoritmu!" — Lisa Simpsonová

Zo všetkých algoritmov výstupu z bludiska dva vynikajú tým, že používajú veľkosť pamäte nezávislú od veľkosti samotného bludiska. Sú známi pod menami "po stene"(nástenné) a Algoritmus sľubu. Ten bol pomenovaný po Jonovi Pledgeovi z Exeteru, ktorý vynašiel algoritmus vo veku 12 rokov. Okrem toho je tu aj skvelá Algoritmus Tremo(Algoritmus Tremaux) je obľúbeným algoritmom Lisy Simpsonovej - ale kvôli jednoduchosti budeme brať do úvahy iba prvé dva.

Algoritmy generovania bludiska

Zaujímavé sú nielen algoritmy pre výstup z labyrintov, ale aj ich generovanie. Labyrinty uvažované v tomto článku sa nazývajú spáchaný(perfektné), pretože medzi akýmikoľvek dvoma bodmi labyrintu sa dá prejsť len jedným spôsobom. Vďaka tomuto stavu sú vylúčené slučky, ostrovčeky, ako aj izolované oblasti. Väčšina algoritmov, ktoré generujú dokonalé bludisko, funguje takto: začínajú jednoduchým bludiskom, ktoré je len vonkajšou stenou a postupne pridávajú ďalšie vnútorné časti. Zároveň je potrebné v každom kroku vylúčiť možnosť výskytu slučiek, izolovaných úsekov atď.

Postupujte pozdĺž steny

Tento algoritmus je taký jednoduchý, že sa ho mnohí učia ako dieťa. Všetko, čo je potrebné na výstup, je viesť ľavú ruku pozdĺž ľavej steny (alebo pravú ruku pozdĺž pravej steny), až kým nenájdete východ. Je ľahké vidieť, že tento algoritmus funguje bezchybne pre labyrinty, v ktorých je vstup a výstup umiestnený na obvode. Bohužiaľ, algoritmus nemožno použiť, ak je východ umiestnený na ostrov- časti labyrintu, ktoré nie sú spojené so zvyškom stien. V tejto situácii algoritmus nenájde východisko, pretože nie je možné preskočiť cez prázdny priestor na ostrov bez toho, aby ste zložili ruku zo steny.

Algoritmus sľubu

Algoritmus Pledge je zložitejší, ale je schopný nájsť cestu z väčšieho počtu bludísk vďaka možnosti prechodov z jedného ostrova na druhý. Myšlienkou algoritmu je vybrať si nejaký absolútny smer (sever, juh, západ alebo východ) a vždy sa ho snažiť nasledovať. Nazvime to preferovaný smer. Ak narazíte na stenu, otočíte sa doprava a pohybujete sa podľa algoritmu „nasledujte stenu“, kým nie sú splnené dve podmienky. Prvým je otočenie v preferovanom smere a druhým je súčet všetkých predtým uskutočnených otočení rovný nule (v tomto prípade sa každé otočenie proti smeru hodinových ručičiek berie ako jedna a v smere hodinových ručičiek ako mínus jedna). Potom sa budete pohybovať v preferovanom smere tak dlho, ako je to možné, atď. Podmienkou nulového súčtu otáčok je zamedzenie rôznych druhov pascí, napríklad úsekov labyrintov, ktoré majú tvar G(nakreslite si to na papier a hneď pochopíte, čo tým myslím).

Algernon: robot unikajúci z labyrintu

Je čas prekvapiť svojich priateľov vytvorením robota menom Algernon, ktorého úlohou je uniknúť z labyrintov.

Dizajn robota

Na implementáciu algoritmu Pledge a sledovania pozdĺž steny je potrebné presne určiť okamih, kedy sa robot priblíži k vetve v bludisku, a tiež vedieť určiť, ktorým smerom sa má vydať.

Určite sa to dá urobiť mnohými spôsobmi, my však použijeme špeciálny snímač – echolot, umiestnený na ľavej strane robota. Tento snímač bude vysielať signály pri križovaní vetví vľavo v smere jazdy. Aby sme zistili, že pred nami je slepá ulička, pridáme ďalší senzor – dotykový senzor umiestnený v prednej časti robota.

Implementácia steny podľa algoritmu

Všetok kód Algernon bude umiestnený v balíku algernon.subsumption (všetok kód je dostupný pre ). Algernon je pomerne jednoduchý robot a dá sa naprogramovať procedurálnym štýlom. Zároveň aj pre takého jednoduchého robota prístup absorpcie správania robí kód oveľa čistejším, ľahšie pochopiteľným a tiež prispieva k lepšej organizácii modulov.

Pre zjednodušenie príkladu urobíme ešte jeden predpoklad: budeme predpokladať, že všetky steny sa pretínajú v pravom uhle. Inými slovami, všetky otáčky doľava a doprava sú výlučne o 90 stupňov.

Algoritmus nasledovania ľavostrannej steny možno rozložiť na štyri rôzne typy správania:

  • Ísť rovno.
  • Opretý o stenu odbočte doprava.
  • Po stretnutí s vetvou vľavo odbočte.
  • Zastavte sa, keď nájdete východ.

Je potrebné uprednostniť správanie. V tomto príklade ich vyberieme v rovnakom poradí, ako sú uvedené vyššie. V dôsledku toho potrebujeme štyri triedy odvodené od správania:

  • Ísť rovno
  • odbočte vpravo
  • odbočiť vľavo
  • Dosiahnuť cieľ

Výpis 7 zobrazuje kód pre triedu GoStraight, kde TRANSLATIONAL_VELOCITY je konštanta rovná 0,4:

Výpis 7. Implementácia správania pre pohyb v priamom smere
public boolean isActive() ( return true; ) public Velocities act() ( double rotationalVelocity = 0,0; return new Velocities(TRANSLATIONAL_VELOCITY, rotationalVelocity); )

Kód pre triedu TurnRight je zobrazený vo výpise 8. Metóda getRotationCount() vracia počet časových úsekov potrebných na otočenie o 90 stupňov pri danej rýchlosti otáčania.

Výpis 8. Kód správania pri odbočovaní doprava
public boolean isActive() ( if (turningRightCount > 0) ( return true; ) RangeSensorBelt nárazníky = getSensors().getBumpers(); // Kontrola predného nárazníka. if (bumpers.hasHit(0)) ( backingUpCount = 10; TurnRightCount = getRotationCount(); return true; ) else ( return false; ) ) public Velocities act() ( if (backingUpCount > 0) ( // Robot narazí do steny. Pred otočením backingUpCount--; návrat new Velocities(- TRANSLATIONAL_VELOCITY, 0.0); ) else (turningRightCount--; return new Velocities(0.0, -Math.PI / 2); ) )

Ak chcete odbočiť doľava, Algernon sa musí najprv trochu posunúť dopredu, aby stena po jeho ľavej strane skončila. Potom otočí sa doľava a ide trochu dopredu, takže po jeho ľavej strane je opäť stena. Kód je uvedený vo výpise 9.

Výpis 9. Implementácia správania pri odbočovaní doľava
public boolean isActive() ( if (postGoingForwardCount > 0) ( return true; ) Sonary RangeSensorBelt = getSensors().getSonars(); // Kontrola ľavého sonaru if (sonars.getMeasurement(1) > 1.0) ( // Ľavý koridor preGoingForwardCount = 20; postGoingForwardCount = 40; turnLeftCount = getRotationCount(); return true; ) else ( return false; ) ) public Velocities act() ( if (preGoingForwardCount > 0) ( preGoingForwardCount--; return new Velocities(TRANSLATIONAL_VELOC) ; ) else if (turnLeftCount > 0) ( turnLeftCount--; return new Velocities(0.0, Math.PI / 2); ) else ( postGoingForwardCount--; return new Velocities(TRANSLATIONAL_VELOCITY, 0.0); ) )

Kód triedy ReachGoal je uvedený vo výpise 10.

Výpis 10. Správanie pri opustení bludiska
public boolean isActive() ( Sonary RangeSensorBelt = getSensors().getSonars(); // Otvorený priestor pred nami? Inými slovami, našli sme cestu von z bludiska? double clearDistance = 1,2; return sonars.getMeasurement(0) > clearDistance && sonars. getMeasurement(1) > clearDistance && sonars.getMeasurement(3) > clearDistance && sonars.getMeasurement(2) > clearDistance; ) public Velocities act() ( // Stop return new Velocities(0.0, 0.0); )

Hlavná metóda, ktorá definuje správanie Algernona, je uvedená vo výpise 11.

Výpis 11. Kód riadenia správania Algernon
private void initBehaviorBasedAgent(algernon.subsumption.BehaviorBasedAgent behaviorBasedAgent) ( algernon.subsumption.Sensors sensors = behaviorBasedAgent.getSensors(); algernon.subsumption.Behavior behaviors = (new ReachGoal(sensors), new TurnLeft(sensors), new TurnLeftRight(sensors) , nové GoStraightAlways(sensors) ); boolean subsumes = ( ( nepravda, pravda, pravda, pravda ), ( nepravda, nepravda, pravda, pravda ), ( nepravda, nepravda, nepravda, pravda ), ( nepravda, nepravda, nepravda, nepravda ) ); behaviorBasedAgent.initBehaviors(behaviors, subsumes); )

Obrázok 1 ukazuje, ako sa Algernon pohybuje v bludisku.

Obrázok 1. Algernon pohybujúci sa bludiskom

Všimnite si, že robot úspešne vyrieši problém výstupu, napriek tomu, že žiadna z jeho komponentov nevie nič nielen o labyrintoch, ale ani o stenách. Neexistuje žiadny centrálny uzol, ktorý by fungoval ako mozog, ktorý vypočítava výstupnú cestu. Toto je podstata architektúry absorpcie: komplexné správanie, akoby špeciálne navrhnuté na riešenie konkrétneho problému, vychádza z interakcie jednoduchých, vrstvených správaní.

Záver

Tento článok sa zaoberal vytvorením jednoduchého softvérového robota. Programovanie reálneho, fyzicky existujúceho robota je veľaťažšia úloha, hlavne kvôli tomu, že musíte brať do úvahy všetky aspekty vplyvu okolitého sveta. Napríklad vo vyššie uvedenom príklade stačilo jednoducho prinútiť robota pohybovať sa rovno po stene. V reálnom svete s jeho nerovnými povrchmi je veľmi ťažké realizovať pohyb robota tak, aby nenarazil do steny a zároveň sa od nej príliš nevzdialil. Takže aj keď máte radi programovanie, nie je pravda, že programovanie robotov vám prinesie potešenie, pretože. často si to vyžaduje viac mechanickej ako tvorivej práce.

Ak máte záujem o navrhovanie a programovanie robotov, pozrite si súpravu nástrojov LEGO Mindstorms. Prípadne môžete pracovať s robotmi BEAM (Biological Electronic Aesthetics Mechanics). BEAM ďalej rozvíja myšlienku behaviorálnej robotiky a úplne odstraňuje programovanie. Globálne správanie robota je určené pevne definovanými prepojeniami behaviorálnych uzlov fungujúcich na reflexoch. Zaplatením nie viac ako 30 dolárov si môžete postaviť svojho prvého robota BEAM. Robota si môžete navrhnúť aj podľa nákresov, ktoré nájdete v knihe Garetha Branwyna (Gareth Branwyn) „Stavba robotov pre úplných začiatočníkov“(cm). A nakoniec, vždy si môžete kúpiť Rumbu a hacknúť ju.

Jedným zo zarážajúcich záverov, ku ktorým som dospel, keď som začal programovať roboty a tiež po zbežnom oboznámení sa s kódom iných vývojárov, je, že na vytvorenie robota s veľmi rozsiahlou funkcionalitou nie je potrebné písať dlhé programy. Zároveň však často trvá dlho leštiť program a experimentovať s konštantami, aby robot urobil presne to, čo treba. Pomocou sady nástrojov LEGO Mindstorms ľahko vytvoríte jednoduchého robota za večer.

Robotika je druh vzrušujúcej subkultúry, ktorá zahŕňa knihy, súťaže, videá atď. Je možné, že aj neďaleko od vás je klub alebo kruh milovníkov robotov.

Žijeme v dobe prudkého rozvoja robotiky a už teraz v obchodoch nájdete stavebnice na svojpomocnú montáž a programovanie robotov. V podstate sú tieto stavebnice zamerané na výučbu detí a študentov, ale pre dospelých, ktorí sa zaujímajú o robotiku, sú tu skvelé príležitosti na realizáciu svojich nápadov. V článku ponúkam stručné informácie o tom, aké konštruktéry na skladanie programovateľných robotov dnes v prírode existujú.

Okamžite urobím rezerváciu, ktorú v článku napíšem iba o dizajnéroch v hodnote nie viac ako 100 tisíc rubľov. Tu sú konštruktéri zahrnuté v recenzii:

A na konci článku to na vás samozrejme čaká.

LEGO Education WeDo

(Ceny aktualizované 27.01.2016) Začnime asi najznámejšou dánskou značkou - lego. Spoločnosť vyrába dva typy stavebníc s možnosťou programovania na vzdelávacie účely pre rôzne vekové kategórie. Pre deti staršie ako 7 rokov lego vydáva sériu LEGO Education WeDo. Štartovaciu sadu si môžete kúpiť tu PervoRobot» (článok 9580) (približne 9 000 rubľov) a súpravu zdrojov (článok 9585) (približne 4 000 rubľov), ak nemáte dostatok dielov. Dokúpiť si môžete aj snímače pohybu a náklonu, multiplexory, motory a žiarovky. Samostatne si môžete zakúpiť sadu školiacich projektov na CD (č. 2009585) (približne 5800 rubľov).

softvér LEGO Education WeDo(art. 2000097) na programovanie robotov tejto línie so sadou úloh sa kupuje samostatne a stojí asi 7000 rubľov. Programovanie je tu vizuálne. Potrebné akčné bloky jednoducho medzi sebou pospájate a zostavíte tak program.

Samozrejme, všetky produkty vytvorené pomocou tohto konštruktéra možno len ťažko nazvať robotmi, skôr jednoduchými mechanizmami, ale verte, že deti vo veku 7-8 rokov sú komplikovanejšie a nepotrebujú to. Upozorňujeme tiež, že zostavený mechanizmus musí byť pripojený k počítaču pomocou kábla USB, aby fungoval.

LEGO Education WeDo 2.0

(Popis pridaný dňa 27.01.2016) Toto je druhá verzia konštruktora LEGO Education WeDo ktorý bol na výstave predstavený po prvý raz CES 2016. Konštruktér je prispôsobený aj pre deti od 7 rokov. Ale na rozdiel od prvej verzie je tu už možné zostaviť autonómne roboty, pretože hotový robot beží na dve AAA batérie a interakcia s PC prebieha cez Bluetooth.

Štartovacia súprava stojí od 14 600 rubľov. (čl. 45300). Dajú sa z neho poskladať tieto modely: Milo (Scientific Rover), Traktor, Závodné auto, Zemetrasenie, Žaba, Kvet, Vzduchová komora, Helikoptéra a Smetiarske auto. Súprava obsahuje SmartHub, stredný motor, pohybový senzor, náklonový senzor a 280 rôznych dielov. Ak vám chýbajú nejaké elektronické komponenty, môžete si ich zakúpiť samostatne. Okrem toho si môžete zakúpiť batériu (č. 45302), ktorá poskytne dlhší prevádzkový čas (takúto batériu som našiel iba v jednom obchode za 6100 rubľov). Všimnite si tiež, že adaptér na nabíjanie batérie (položka 45517) sa predáva samostatne (použitý adaptér je rovnaký ako pre LEGO MINDSTORMS Education EV3 a NXT, pozri nižšie).

Môžete si tiež zakúpiť študijnú súpravu (č. 2045300), s ktorou môžete dokončiť 17 projektov z fyziky, biológie, geografie, prieskumu vesmíru a inžinierskeho dizajnu, čo môže celkovo trvať viac ako 40 akademických hodín. Túto súpravu som našiel len v jednom obchode za 30 000 rubľov.

Neexistuje žiadny mikropočítač ako taký. Namiesto toho je tu SmartHub, ktorý plní úlohu prepojenia medzi PC / tabletom a elektronikou robota. Tie. všetky programy, ktoré napíšete, budú fungovať na počítači alebo tablete. SmartHub má len dva porty na pripojenie senzorov a motorov, jeden indikátor a iba jedno tlačidlo – tlačidlo napájania. Elektronika a softvér prvej a druhej verzie konštruktérov sú nekompatibilné.

Z plusov si môžete všimnúť aj to, že k jednému PC alebo tabletu je možné súčasne pripojiť až tri SmartHub. To vám umožní využívať šesť portov naraz, t.j. môžete zostaviť pomerne zložité zariadenie, ktoré môže mať šesť motorov alebo šesť senzorov.

Štartovacia sada už obsahuje bezplatný základný softvér, ktorý zahŕňa štartovacie projekty. Existuje ruský jazyk. Softvér beží na Windows (7, 8.1 a RT), MacOS, iPad, Android tabletoch a s mikropočítačom komunikuje cez Bluetooth 4.0. Programovanie je tu vizuálne, podobne ako v prvej verzii konštruktora. Môžete si stiahnuť softvér. Okrem toho je možné programovať pomocou Scratch 2. A pre tých, ktorých to obzvlášť zaujíma, je tu open source SDK, ktorý umožňuje interakciu so SmartHub cez Bluetooth.

LEGO Mindstorms Education EV3

(Ceny aktualizované 27.01.2016) Tento dizajnér robota je vhodný pre deti od 10 rokov, aj keď dospelí ho používajú pomerne aktívne. Začiatočníci si môžu kúpiť štartovaciu vzdelávaciu súpravu (art. 45544) za približne 30 000 rubľov. (viď obrázok), z ktorého si poskladáte balančného robota, šteniatka, chodúľa, farebný triedič dielov a mnoho ďalšieho, čo vám povie vaša fantázia. Štartovacia sada obsahuje 541 dielov LEGO Technic a dva zásobníky na ich uloženie, mikropočítač EV3(s podporou WiFi a Bluetooth), batéria, tri servá (2 veľké a jedno stredné), ultrazvukový senzor, farebný senzor, gyroskopický senzor a dva dotykové senzory. Sada neobsahuje softvér LEGO Mindstorms EV3 a nabíjačku batérií.

Na to by som chcel upozorniť najmä EV3- Toto je tretia verzia dizajnéra. Predchádzajúce verzie boli tzv NXT(druhá verzia) a RCX(prvá verzia). Verzia NXT je stále v predaji s EV3 verzia, ale nebudem tu písať o starších verziách.

Vo vnútri mikropočítača EV3 skrytie procesora ARM 9 s operačným systémom linux. K dispozícii sú 4 vstupné porty a 4 výstupné porty. K dispozícii máte 16 MB flash pamäte a 64 MB RAM. K dispozícii je slot na kartu pre rozšírenie pamäte Mini SDHC až 32 GB. Jednotka má šesťtlačidlové rozhranie s tromi farbami podsvietenia a čiernobiely displej s rozlíšením 178x128. Nachádza sa tu aj reproduktor. Mikropočítač podporuje Wi-Fi (nemá vstavané Wi-Fi, odporúča sa použiť adaptér NETGEAR WiFi dongle WNA1100 Wireless-N 150) a Bluetooth (Bluetooth vstavaný) na interakciu s robotom. Napájanie zabezpečuje šesť prstových batérií (veľkosť AA) alebo lítiová batéria s kapacitou 2050 mAh. Robot vydrží na batérie dlhšie ako na batérie. Batéria je nabitá za 3-4 hodiny.

Ak chcete, môžete si kúpiť ďalšiu súpravu zdrojov (č. 45560) za približne 9 000 rubľov, ktorá obsahuje 853 ďalších dielov LEGO Technic. S touto sadou môžete zostaviť slonieho robota (pozri fotografiu), tankového robota, továreň na hračky a mnoho ďalšieho.

Pre milovníkov vesmíru je tu ďalší doplnkový vzdelávací set " vesmírne projekty" (art. 45570) v hodnote približne 14 000 rubľov. Na použitie tejto súpravy budete potrebovať štartovacie súpravy a súpravy zdrojov, ktoré sú popísané vyššie. Okrem tejto súpravy si môžete zakúpiť súpravu úloh (č. 2005574) v hodnote približne 11 000 rubľov, čo zahŕňa tematické a školiace misie, ako aj výskumné projekty.

Okrem tu uvedených súprav môžete nájsť na predaj aj domácu verziu súpravy. LEGO Mindstorms EV3(čl. 31313) za približne 21 000 rubľov. (pozri obrázok nižšie). Z tejto sady si poskladáte 5 základných robotov a 12 bonusových modelov. Táto súprava má na rozdiel od štartovacej vzdelávacej súpravy trochu inú sadu dielov a senzorov LEGO Mindstorms Education EV3. Je tu ovládací panel a namiesto ultrazvukového senzora - infračervený (ktorý okrem zmeny vzdialenosti prijíma signál z diaľkového ovládača) a chýba gyroskop. Buď opatrný: v súprave chýba batéria a musíte použiť 6 batérií AA alebo kúpiť batériu samostatne a nie je to lacné. Mimochodom, diaľkové ovládanie bude tiež potrebovať batérie: 2 malé batérie (AAA).

Na predaj sú polia pre súťaže robotov. Taktiež si môžete vždy samostatne dokúpiť mikropočítače, batérie, IR senzor, IR maják, ultrazvukové a gyroskopické senzory, farebné, dotykové, teplotné a zvukové senzory a servomotory. Mimochodom, snímače sú zo starej verzie konštruktéra NXT tiež fit.

Každý mikropočítač EV3 má štyri vstupné porty pre senzory a štyri výstupné porty pre servá, žiarovky atď. Ak by vám to nestačilo, môžete spojiť až 4 mikropočítače pomocou prídavných USB-káble. V tomto prípade padne ovládanie na plecia hlavného mikropočítača a získate až 16 vstupných portov a až 16 výstupných portov.

Roboty tejto série sú programované pomocou softvéru LEGO Mindstorms EV3. Pre domáce vytáčanie je softvér na stiahnutie zadarmo. Pre vzdelávacie zostavy je softvér zadarmo od 1. januára 2016. Programovanie je tu aj vizuálny blok založený na grafickom programovacom jazyku LabVIEW, ktorý umožňuje vytvárať jednoduché aj superkomplexné programy. Pomocou nástroja si môžete vytvoriť vlastné bloky MyBlocks. Maximálna veľkosť programu je 16 blokov, nepočítajúc bloky spustenia programu a slučky. Softvér funguje ďalej Microsoft Windows alebo Apple Macintosh. Ruský jazyk je podporovaný.

Vzdelávacia verzia softvéru LEGO Mindstorms EV3, okrem programovania, umožňuje zbierať štatistické údaje zo senzorov a zapisovať ich do pamäte mikropočítača alebo prenášať v reálnom čase cez USB kábel, WiFi alebo Bluetooth. Zozbierané údaje je možné analyzovať a vykresliť. Študentom a učiteľom pomáhajú multimediálne lekcie.

Ak máte záujem o alternatívne programovacie prostredie, tak okrem LEGO Mindstorms EV3 môžete programovať pomocou vývojového prostredia LabVIEW (vyžaduje voliteľný modul LabVIEW LEGOMINDSTORMS) a RobotC (programovací jazyk C, RobotC verzia 4.x podporuje sériu EV3 a NXT). Obe programovacie prostredia sú platené. AT RobotC robota môžete so svojim programom aj otestovať vo virtuálnom svete, viď obrázok. Virtuálne svety sa dajú stiahnuť. Pozrite sa na ev3dev zadarmo. Je tu oficiálna jazyková podpora C++, Lua, Node.js, Python a jazykovú podporu tretích strán Google Go,C a Clojure. A nainštalovaním leJOS Java Virtual Machine do EV3 Brick môžete programovať ďalej Java používaním Eclipse alebo pomocou Škrabanie 2(ako nastaviť Škrabanie 2 pozri Programovanie robota Lego Mindstorms EV3 so Scratch 2.0). Pre fanúšikov .NET existujú projekty LEGO MINDSTORMS EV3 API a MonoBrick. A pre fanúšikov Základné existuje rozšírenie pre bezplatné vývojové prostredie Small Basic.

A veľmi pokročilí vynálezcovia môžu nakupovať senzory od spoločností tretích strán, ako sú HiTechnic a Vernier. Voliteľne si môžete napríklad dokúpiť infračervený senzor na detekciu ľudí a zvierat, kompas, barometer, senzor sily, senzor na detekciu objektov na krátku vzdialenosť, uhlový senzor (meria uhly a rýchlosť otáčania) a iné. Spoločnosť HiTechnic ponúka snímače priamo prispôsobené EV3 a NXT a pre každý senzor si môžete stiahnuť softvérové ​​bloky pre softvér LEGO Mindstorms EV3. Spoločnosť Vernier ponúka kúpu adaptéra, ktorý vám umožní používať ich senzory v konštruktérovi, a navyše ponúka stiahnutie softvérového bloku pre softvér LEGO Mindstorms EV3.

TETRIX

MATRIX

Robot je OLLO

(Ceny aktualizované 05.05.2015) kórejská spoločnosť Robotis, založená v roku 1999, ponúka konštruktér OLLO pre vlastnú montáž robotov. Tento dizajnér sa predáva vo forme súprav určených pre rôzne vekové kategórie. Zo sady obrázok(7+) môžete vytvárať figúrky zvierat, ale nie sú tam žiadne motory, žiadne senzory, žiadne ovládače. Zo súprav akcie(8+) a štartér(8+) je už možné vytvárať pohyblivé neprogramovateľné modely. Je tu motor, ale nie sú tu ani žiadne senzory ani ovládače. A tu sú zostavy prieskumník (10+), inventár(10+) a Bug(10+) vám už umožní navrhovať a programovať roboty. Pre súpravu prieskumník existuje rozširujúca sada inventárrozširujúca súprava(asi 9000 rubľov), čím sa súprava zmení prieskumník do súpravy inventár. Nastaviť cenu prieskumník asi 16 000 rubľov, inventár(zmizol z maloobchodného predaja v roku 2015), Bug- asi 9 000 rubľov.

Zo sady prieskumník môžete vyrobiť 12 modelov a zo sady inventár- 24 modelov podľa návodu, no nič vám nebráni postaviť si vlastné modely robotov. Maximálna sada inventár obsahuje ovládač, dva motory, dva servomotory, dva IR senzory, IR transceiver, hmatové senzory, LED modul. Ovládač má štyri porty pre pripojenie akčných členov, dva multifunkčné porty pre pripojenie senzorov, akčných členov a port pre diaľkové ovládanie a sťahovanie programov.

Zo sady Bug budete môcť postaviť 4 plošticových robotov ovládateľných ovládačom, budú vedieť chodiť po čiare (vrátane kariet na vytvorenie trasy) a detekovať predmety. Nie je tu zahrnutý žiadny adaptér. USB Downloader LN-101 na pripojenie k počítaču a potrebujete ho, ak sa chystáte programovať.

Roboty sa programujú Robot je OLLO, rovnako ako všetky ostatné roboty spoločnosti, pomocou proprietárneho softvéru Robo Plus. Používa sa na programovanie C- ako jazyk. Softvér obsahuje Úloha RoboPlus(editor programu, pozri obrázok), Robot Plus Manager(nastavenie zariadenia), Robo Plus Motion(programovanie zložitých pohybov robota), Terminál RoboPlus(terminál) a Dynamixel Wizard(nastavenie a kalibrácia serv).

Po napísaní programu si ho musíte stiahnuť do ovládača pripojením k počítaču (pozri obrázok) a po zapnutí robota sa váš program spustí. Môžete si stiahnuť program, prečítajte si pokyny -. Pokročilí programátori môžu napísať svoj vlastný firmvér pre roboty Robot je OLLO na Vložené C.

Pre firemné roboty Robotis môžete tiež písať programy priamo na spustenom smartfóne alebo tablete Android 2.3 a vyššie s aplikáciou R+ m.Task.

Robotis Bioloid

(Ceny aktualizované 05.05.2015) S touto sériou rovnakej kórejskej spoločnosti Robotis pomocou súprav Prémiová súprava(asi 98 000 rubľov) a GP(asi 234 tisíc rubľov) môžete zostaviť humanoidné roboty. V sérii sú aj ďalšie sady: STEM štandard(10+) (stojí asi 26 000 rubľov), Expanzia STEM(10+) (dopĺňa zostavu STEM štandard, stojí asi 21 000 rubľov.), začiatočník(stojí asi 34 000 rubľov).

Zo sady STEM štandard môžete vyrobiť 16 rôznych robotov podľa schém a so súpravou Expanzia STEM Je možné vyrobiť ďalších 9 modelov. V sade je aj 48 úloh. Táto sada sa čiastočne skladá z komponentov série Robot je OLLO a čiastočne z komponentov Robotis Bioloid. Tie. S touto sadou môžete použiť sady oboch sérií, ktoré už máte. Toto je jediná súprava kompatibilná so sériou OLLO a Bioloid. Vrátane mikrokontroléra CM-530, pole IR senzorov (umožňuje robotovi bežať pozdĺž linky), 3 IR senzory (detekcia prekážok) a ovládací panel RC-100A.

Súprava pre začiatočníkov vám umožní vytvoriť 14 rôznych návrhov robotov. Vrátane mikrokontroléra CM-5, 4 servomotory DYNAMIXEL AX-12A a senzorový modul AX-S1.

So súpravou Prémiová súprava humanoidného robota si môžete zostaviť v jednej z troch modifikácií alebo 26 jednoduchých robotov (pozri obrázok). Humanoidný robot v tomto sete má vďaka dvojosovému gyroskopu systém stabilizácie tela, ktorý mu umožňuje obratne zostať na nohách pri chôdzi.

Vrátane ovládača CM-530(32-bit ARM Cortex, 6 tlačidiel, mikrofón, teplotný senzor, napäťový senzor, 6 vstupno/výstupných OLLO kompatibilných portov, 5 servo konektorov AX/MX séria DYNAMIXEL), 18 serv, dvojosový gyroskop, 2 IR senzory, diaľkové ovládanie RC-100A.

(Popis pridaný dňa 06.08.2015) Rozhodol som sa sem pridať tohto konštruktéra, pretože okrem humanoidného robota si z neho môžete poskladať asi 26 rôznych modelov robotov a mechanizmov. je duchovným dieťaťom kórejskej spoločnosti DST Robot(do marca 2015 bola spoločnosť tzv Robot Dongbu). Plastové prvky dizajnéra môžu byť v jednej z nasledujúcich farieb: zelená (predvolená), červená, žltá alebo modrá. Je tu príjemný bonus – detaily je možné vytlačiť na 3D tlačiarni. Nachádza sa stránka dizajnéra a všetka dokumentácia a 3D modely sú . Cena v obchodoch je od 65 000 rubľov.

Súčasťou je mikrokontrolér ( MCU ATmega128, v mikrokontroléri sú zabudované zvukové a svetelné senzory), senzor vzdialenosti, IR diaľkový ovládač a k nemu IR prijímač. Gyroskop/akcelerometer a model Bluetooth je potrebné zakúpiť samostatne.

VEX EDR

Konštruktéri série VEX EDR alebo jednoducho VEX spoločnosť vyrába Robotika VEX. Sú určené pre deti od 10 rokov. Séria je vhodná pre školy, inštitúty a pokročilých staviteľov robotov. V tejto sérii nájdete ako súpravy, tak aj samostatne predávané diely, predmety a polia na súťaže. Programovateľné sady (vrátane mikrokontroléra) sa delia na štartovacie sady ( Štartovacia súprava programovania riadenia a Štartovacia súprava s dvojitým ovládaním) a súpravy na súťaže ( Súprava mechatroniky pre triedu a súťaž, Súprava na programovanie tried a súťaží a Super súprava pre triedu a súťaž). Ceny súprav sa pohybujú od 400 do 1 000 dolárov na stránke výrobcu. Z každej sady zostavíte robota na kolieskach s pazúrikom, viď obrázok. Ďalšie modely si môžete vymyslieť sami, spoliehajúc sa na svoju fantáziu.

Všeobecne v seriáli VEX EDR veľmi široký sortiment komponentov. Vždy je možné samostatne dokúpiť senzory pre sledovanie čiary, senzory pre detekciu prekážok a meranie vzdialenosti k prekážkam, svetelné senzory, optické senzory pre polohu osí (meranie uhlového posunu, smer otáčania osi, prejdenú vzdialenosť, atď.), potenciometre (určenie polohy a smeru pri otáčaní), gyroskopy, dotykové senzory, obmedzovače pohybu, akcelerometre (meranie zrýchlenia), LED baterky. Z mechaniky musíte venovať pozornosť možnosti získania prevodoviek (vrátane šnekového prevodu), húseníc, Omni-wheels, Ilonových kolies.

Roboty tejto série sú programované pomocou RobotC, easyC (programovanie v jazyku C pomocou drag and drop blokov, pozri prvý obrázok nižšie), Flowol (programovanie pomocou vývojových diagramov, pozri druhý obrázok nižšie) alebo Modkit (vizuálne programovanie s blokmi). Všetky vývojové prostredia sú platené.

VEX IQ

Táto séria je tiež vyrábaná spoločnosťou Robotika VEX a tiež vám umožňuje vytvárať programovateľné roboty, ale je určený pre deti od 8 rokov. Štartovacie sady tejto série stoja na webovej stránke výrobcu približne 250 dolárov. V sérii sú 3 hlavné sady ( Štartovacia súprava s ovládačom, Štartovacia súprava so senzormi, Super súprava), rozširujúce sady, predmety a polia pre súťaže, ako aj komponenty samostatne. Všetky pozície sú dobre popísané na stránke výrobcu. V súpravách Štartovacia súprava so senzormi a Super súprava obsahuje farebný senzor, gyroskop a senzor vzdialenosti. Diaľkové ovládanie možné v sadách Štartovacia súprava s ovládačom a Super súprava. Všetky súpravy obsahujú dotykové senzory. Podotýkam, že okrem doplnkových dielov dostanete Omni-kolesá a dráhy v súťažných setoch. mikrokontrolér VEX IQ vybavený 12 univerzálnymi portami na pripojenie senzorov a motorov.

Sériové roboty sú naprogramované VEX IQ pomocou Modkitu (vizuálne programovanie s blokmi, pozri obrázok), a Flool a RobotC.

Zaujímavé je aj virtuálne prostredie pre návrh dizajnu vášho robota. VEX Assembler(pozri obrázok). Pomocou tohto softvéru môžete virtuálne vyrábať a testovať svoj dizajn vo fáze návrhu. Do programu už bolo nahraných viac ako 110 dizajnérskych dielov VEX IQ, predmety na súťaže a dokonca aj celý robot IQ Clawbota(robot s pazúrom). Program je k dispozícii na stiahnutie zadarmo (vyplňte formulár vpravo a dostanete odkaz na stiahnutie e-mailom).

VEX PRO

Pod touto produktovou radou sa spol Robotika VEX ponúka komponenty, ako ste už z názvu pochopili, pre profesionálov. Nie sú tu žiadne súpravy. Všetko sa predáva jednotlivo alebo v setoch. Všetko príslušenstvo je možné prezrieť.

Technolab

(Ceny aktualizované 05.05.2015) Pod touto ochrannou známkou sa skrývajú všetky rovnaké súpravy od firiem Robotis a Robotika VEX o ktorom sa písalo vyššie. Súpravy sú lokalizované a zostavené pre tých, ktorí sa chcú venovať robotike, v závislosti od veku a stupňa pripravenosti a nazývajú sa moduly. Celkovo existuje sedem modulov. Toto sú moduly predbežné, elementárne, základné, základné konkurenčné, profesionálny, výskumu a odborníkúrovne. Podrobnosti o konfigurácii všetkých modulov sú uvedené na webovej stránke. Exam-Technolab LLC. Spoločnosť dodáva moduly pre vzdelávacie inštitúcie, ale ak je to potrebné, moduly možno nájsť aj v maloobchode za cenu 65 000 rubľov. pre modul predbežnej úrovne určený pre vek 5-8 rokov až do 398 tisíc rubľov. pre modul expertnej úrovne (14+). Programovanie robota je dostupné vo všetkých moduloch okrem predúrovňového modulu.

Arduino

ochranná známka Arduino- to sú nástroje na vytváranie nielen robotov, ale aj mnohých rôznych gadgetov. Pre konštruktérov robotov sú tu mikrokontroléry, všetky druhy snímačov, motory, servomotory, rozširujúce dosky, LCD displeje, LED. Pod touto značkou sa však nevyrábajú prvky puzdier alebo rámov na montáž robotov. Neexistujú ani prvky na inštaláciu. Jedinou výnimkou je (pozri obrázok).

Plošina Arduino podporované veľkým počtom výrobcov tretích strán, takže môžete nájsť komponenty pre montáž robotov. K dispozícii aj na predaj a Arduino-kompatibilné mikrokontroléry a súpravy pre vlastnú montáž robotov založených na tejto platforme. Všetky produkty ponúkané priamo od výrobcu si môžete prezrieť.

Programujte mikrokontroléry Arduino Môžete použiť bezplatné a open source Arduino IDE (pozri prvý obrázok nižšie). Napísané Arduino IDE na Java a funguje na spustených počítačoch Windows, MacOS X a linux. AT Arduino IDE použitý programovací jazyk Spracovanie(jazyk založený na Java). Okrem toho niektoré mikrokontroléry Arduino je možné naprogramovať pomocou RobotC, Flool, Minibloq (grafický programovací jazyk, zadarmo, pozri druhý obrázok zdola), Ardublock (grafický programovací jazyk, zabudovaný do Arduino IDE, existuje preklad návodu do ruštiny, bezplatný), Physical Etoys (bezplatný grafický programovací jazyk pre Windows a linux open source, žiadna rusifikácia) a Modkit .

Aj na programovanie niektorých ovládačov Arduino môžete použiť doplnok Visual Micro (platený), ktorý je zabudovaný Microsoft Visual Studio 2008-2013 alebo v Atmel Studio 6.1-6.2.

#Structor

(Popis konštruktora aktualizovaný 9.12.2016) Amperka ponúka vlastné montážne riešenie Arduino-kompatibilné roboty sú #-tvarované panely, koľajnice a držiaky na dosky, senzory a motory tzv #Structor. Detaily sú vyrobené frézovaním z dosiek bieleho penového PVC s hrúbkou 5 mm. Vďaka použitiu takéhoto materiálu máte možnosť natrieť diely farbami. Pevnosť prvkov je dostatočná na vytvorenie malých štruktúr. Materiál je zároveň tvárny a do dielov ľahko vyvŕtate otvory, zaskrutkujete skrutky alebo pomocou kancelárskeho noža zmeníte geometriu dielov.

Všetky prvky sa na seba ľahko spájajú a ak nemáte dostatok sily na dynamické konštrukcie, Amperka ponúka lepenie prvkov k sebe. Navyše pre ešte väčšiu pevnosť môžete použiť detaily "sovmetalconstructor", pretože otvory v paneloch #Štruktúra umiestnené s rovnakým rozstupom 10 mm. Bohužiaľ, v mäkkosti materiálu, z ktorého sú dizajnové diely vyrobené, je aj malé mínus - diely sú krátkodobé. V priebehu času sa materiál v bode pripojenia deformuje a diely nedržia pevne.

Samostatne treba poznamenať, že výkresy na výrobu dielov sú vo verejnej sfére a prvky dizajnéra si môžete vyrobiť sami.

Zo stavebníc je tu len jedna: - súprava na zostavenie tela dvojkolesového robota. V tejto súprave nie je žiadny mikrokontrolér a senzory. Sú tam len diely karosérie, dva motory s kolesami, podporné gule, jedno servo, vypínač a priehradka na batérie, viď obrázok nižšie. Aby sa robot začal pohybovať a orientovať v priestore, bude potrebné do súpravy dokúpiť riadiacu elektroniku.

A ak chcete navrhnúť niečo zložitejšie, môžete si kúpiť časti konštruktéra samostatne. Všetky prvky sa predávajú v kusoch v hodnote 290 rubľov. Každý z nich môže mať niekoľko veľkých častí alebo veľa malých. Všetky možnosti pre raznice si môžete pozrieť na webovej stránke obchodu. Na spojenie dielov je možné zakúpiť nylonové skrutky, matice a podpery. Podrobnosti o konštruktérovi nájdete.

Multiplo

(Popis konštruktora pridaný dňa 15.05.2015) Multiplo- toto je Arduino- kompatibilná stavebnica vytvorená argentínskou spoločnosťou skupina robotov. Konštruktér je úplne verejný, t.j. k dispozícii sú softvérové ​​zdroje aj výkresy konštrukčných prvkov (diely je možné vytlačiť na 3D tlačiarni alebo vyrezať na CNC laserovom stroji). Hlavné časti sú plastové, rohy a niektoré ďalšie prvky sú hliníkové, skrutky, matice, podložky a osi sú kovové. Tá istá spoločnosť vyvinula program pre grafické programovanie Miniblok, o ktorej sa už písalo vyššie (autorom tohto programu je jeden z riaditeľov spoločnosti Julián da Silva). Môžete si stiahnuť oficiálnu stránku dizajnéra a všetky pokyny, výkresy a softvér.

Konštruktor je reprezentovaný množinami sada pre začiatočníkov(134 USD) stavebnica(269,90 USD) a súprava príšer(479,90 dolárov). V súprave sada pre začiatočníkov ovládač DuinoBot, priehradka na batérie (na tri AA batérie), dva infračervené senzory, dva motory, ovládací panel a prijímač signálu z neho, vodiče a mechanické časti na stavbu jednoduchého vozíka. Súprava obsahuje skrutkovač a kľúče, takže nepotrebujete žiadne ďalšie náradie. V súprave stavebnica navyše sa objaví ultrazvukový senzor, 2 servomotory, 2 svetelné senzory, 2 LED žiarovky, ako aj ďalšie diely, vrátane tých na zostavenie pazúrika.

Súprava súprava príšer najväčší. Táto sada obsahuje dva mikrokontroléry (z jednej sady môžete vyrobiť dvoch robotov naraz), ako aj 4 klasické motory, 6 servomotorov, priehradky na batérie, jeden ultrazvukový senzor, 4 infračervené senzory, dve sady diaľkového ovládača (diaľkový ovládač a senzor pre príjem signálu z neho), veľa mechanických častí vrátane zostavy dvoch pazúrov.

V oficiálnom obchode je aj sada mechanická súprava(159 USD) obsahujúce iba mechanické časti, bez elektroniky. Mikrokontrolér je možné zakúpiť aj samostatne. DuinoBot s priehradkou na batérie (cena 59,90 USD), rôznymi snímačmi a mechanickými časťami. A môžete si zadarmo stiahnuť súbory na tlač súťažných polí. skóre Multiplo Nachádza .

Keďže návrhár je kompatibilný s Arduino, môžete programovať pomocou podobných vývojových nástrojov: Arduino IDE, Minibloq, Ardublock, Physical Etoys a Modkit.

Makeblock

(Popis konštruktora pridaný dňa 03.06.2015) Výhodou tohto čínskeho dizajnéra je, že je tu použitá elektronika. Arduino a všetky časti sú vyrobené z odolného extrudovaného hliníka. Zaujímavé sú tu najmä nosníky, pozdĺž ktorých sa tiahne drážka so závitovými perforáciami, do ktorých môžete skrutky zaskrutkovať v ľubovoľnej vzdialenosti od seba (pozri druhý obrázok zdola) a koľajnice (pozri tretí obrázok zdola).

Začiatočníkom sa tu budú páčiť moduly s unifikovanými konektormi s farebným označením pre jednoduché a zrozumiteľné pripojenie elektronických komponentov. Tie. pre správne pripojenie je potrebné len dbať na to, aby farba štítkov zodpovedala.

Počet sebestačných a zdrojových súprav v obchode na oficiálnych stránkach je obrovský. Samostatne si môžete zakúpiť snímače, dosky, konštrukčné prvky atď. Súprava 3D tlačiarne Makeblock Constructor I, 699,99 dolárov), plotr ( XY-plotter Robot Kit v2.0, 299,99 dolárov), xylofón hrajúci robot (súprava Súprava hudobného robota, 199,99 $), konštruktér na zostavenie robota-umelca rôznych úprav, ktorý kreslí fixami alebo vypaľuje laserom (súprava mDrawBot s Bluetooth a laserovou súpravou – modrý, 349,99 dolárov) a robotický vozík mBot s veľkým množstvom senzorov, ktorých šasi je kompatibilné s dielmi lego a Makeblock (Bluetooth- verzia stojí 74,99 dolárov, Bluetooth a WiFi verzia - 79,99 dolárov).

Pro súprava mDrawBot Chcem písať samostatne. Z nej môžete zostaviť jedného zo 4 umeleckých robotov:

mScara je robotická ruka, ktorá kreslí perom alebo fixkou a s doplnkovou sadou Laserová súprava(sú súčasťou aj okuliare na ochranu očí), pero je možné nahradiť laserom, ktorý vypáli kresbu napríklad na preglejke.

mSpider- pavúk-umelec, ktorý visí na dvoch povrazoch a kreslí na zvislé plochy.

meggbot- robot, ktorý kreslí na vajíčka alebo pingpongové loptičky.

mCar- trojkolesové robotické auto, ktoré kreslí na papier, na ktorom jazdí.

To však nie je všetko. Špeciálne pre súpravu mDrawBot spoločnosti Makeblock vyvinuli program, pomocou ktorého môžete importovať vektorovú kresbu formátu SVG, previesť BMP v SVG a škálovanie obrazu. Pri aplikácii obrazu pomocou lasera sú podporované rôzne odtiene.

Stavebné súpravy na všeobecné použitie sú nasledovné: Súprava štartovacieho robota (Bluetooth-Verzia 149,99 $ IR-verzia - 119,99) a Ultimate Robot Kit(399,99 dolárov). Existujú podobné zostavy bez elektroniky.

Na diaľkové ovládanie robota je k dispozícii bezplatná aplikácia pre Android a iOS- Makeblock. Niektoré súpravy sú vybavené diaľkovými ovládačmi, napr. IR- nastavená verzia Súprava štartovacieho robota.

Roboty sa programujú Makeblock pomocou nášho vlastného softvéru mBlock na báze redaktora Scratch 2.0, používaním Arduino IDE alebo ArduBlock. Pracovať v Arduino IDE alebo ArduBlock je potrebné nainštalovať ďalšiu knižnicu Makeblock. Príklady, pokyny, ovládače a softvér nájdete.

HUNA-MRT

(Ceny aktualizované 05.05.2015) Pod kórejskou značkou HUNA-MRT» schovávacie súpravy na stavbu mechanizmov a robotov. Súpravy FUN&BOT (MyRobotTime) a KICKÝ (MRT2) sú súpravy pre začiatočníkov (pre vek 6-8 rokov) vyrobené z plastových dielov a nie je tu žiadne programovanie. Ale v sériách TRIEDA (MRT3) (pre vek 7-11 rokov) a TOP(pre vek 9-11 rokov) už existuje programovateľná doska a je možné programovať roboty pomocou jednoduchého grafického programovacieho prostredia. Rozdiel medzi poslednými dvoma sériami je v sérii TRIEDA (MRT3) diely sú plastové a v sérii TOP- kov. Vo všetkých ostatných ohľadoch ide o plne kompatibilné súpravy. Diely z jednej série je možné použiť spolu s dielmi z iných sérií tejto značky. Existuje aj pokročilejšia sada HUNITRONIC(pre vek 12-18 rokov), ktorý je vybavený analógom mikrokontroléra Arduino UNO a zaplatiť Rozšírenie IO Shield, na pripojenie snímačov. Všetky súpravy sa dodávajú s grafickým programovacím prostredím. Viac informácií o dizajnéroch získate na stránke. Brain Development LLC. Oficiálna stránka seriálu MRT3 .

Ceny programovateľných súprav v obchodoch začínajú na 15 000 rubľov. (za Huna MRT3 1+2) až 36 000 rubľov. (za TOP KOMPLETNÁ SÚPRAVA 2). Súprava HUNITRONIC Na predaj som to nenašiel.

RoboRobo

kórejská spoločnosť RoboRobo ponúka 5 vzdelávacích súprav na stavbu programovateľných robotov. Sú také rovné a očíslované Robo Kit #1, Robo Kit #2, Robo Kit #3, Robo Kit #4, Robo Kit #5. Líšia sa počtom dielov, počtom možných úprav robotov, ktoré si z nich podľa návodu poskladáte, a zložitosťou. Čím väčšie číslo, tým viac detailov a náročnejšie. Nezabudnite, že sada 2 obsahuje sadu 1, sada číslo 3 obsahuje sadu 2 atď. Ak teda už máte súpravu Robo Kit #1, potom ho môžete predĺžiť súpravou Robo súprava №1-2 pred vytáčaním Robo Kit #2 a tým ušetriť peniaze. Celkové rozširujúce sady 4: Robo súprava №1-2, Robo súprava №2-3, Robo súprava №3-4 a Robo súprava №4-5. Oficiálna stránka dizajnéra.

V maximálnej zostave nájdete IR senzor, IR diaľkový ovládač, zvukový senzor, dotykové senzory.

Roboty tejto spoločnosti sú programované pomocou grafického rozhrania v programe Rogický program(pozri obrázok).

Ďalšia spoločnosť RoboRobo ponúka súpravy pre veľmi malé deti (5-7 rokov): Robo deti #1 a Robo deti #2. Druhá sada je komplementárna k prvej. Z prvej sady môžete zostaviť 16 robotov az druhej ďalších 16. V týchto zostavách výrobca ponúka zaujímavý prístup k ovládaniu robotov. Malí programátori majú k dispozícii sadu kariet, ktoré prechádzajú cez skener (viď obrázok), ktorý zase dáva príkazy robotovi.

fischertechnik

(Ceny z webovej stránky predajcu aktualizované dňa 05.05.2015) Konštruktéri fischertechnik vyrobené nemeckou spoločnosťou. Detaily dizajnéra sú plastové. Rôzne súpravy dizajnéra sú určené pre rôzne vekové kategórie. Sériové súpravy JUNIOR(5+) nemajú motory ani batérie, sú to len stavebnice pre deti. So sériovými súpravami ZÁKLADNÉ(7+) a POKROČILÉ (7+), PROFI(8+) môžete zostaviť rôzne stroje a mechanizmy, môžu byť už vybavené motormi, solárnymi panelmi, napájacími zdrojmi atď. Ale montáž robotov a ich programovanie začína v stavebniciach série ROBOTICKÉ (8+).

V sérii ROBOTICKÉšesť sád: Sada pre začiatočníkov ROBOTICS LT (Štartovacia súprava ROBOTICS LT) (štartovacia súprava na vytvorenie 8 automatických zariadení v hodnote 11 130 rubľov), ROBOTICS TXT Discovery Set (ROBOTICS TXT Discoverer Kit) (na vytvorenie 11 mechanizmov a autonómnych robotov v hodnote 28 500 rubľov), Roboty automatizácie ROBO TX (ROBO TX Automatické roboty) (na vytvorenie realistických priemyselných robotov v hodnote 15 300 rubľov), Elektropneumatické zariadenie ROBO TX (Elektropneumatika ROBO TX) (na montáž 4 pneumatických konštrukcií v hodnote 13 150 rubľov), ROBOTX Explorer (ROBO TX Explorer) (na vytvorenie húsenicového robota v šiestich modifikáciách v hodnote 13 150 rubľov) a Tréningové laboratórium ROBO TX (Výučbové laboratórium ROBO TX) (na návrh automatických zariadení a mobilných robotov v hodnote 25 500 rubľov). Samostatne je možné súpravy zakúpiť so súpravou batérií, súpravou diaľkového ovládania, súpravou svetla a zvuku (na vytváranie svetelných a zvukových efektov), ​​súpravami s prídavnými motormi, súpravou zdrojov a úložnými boxmi. Pri vzájomnom kombinovaní súprav môžete výrazne rozšíriť možnosti pri vytváraní robotov.

Súčasť série setov ROBOTICKÉ vybavený ovládačom ROBOTX(okrem štartovacej sady, ktorá je doplnená o ovládač ROBO LT), časť - s ovládačom ROBOTIKA TXT. Zo senzorov v súpravách nájdete: foto senzor, teplotný senzor, farebný senzor, ultrazvukový senzor vzdialenosti, IR senzor sledujúci čiaru.

Špecifikácie ovládača ROBOTX nasledujúce: 32-bitový procesor ARM9, 128x64 monochromatický displej, 8 MB RAM, 2 MB Flash. Veľkosť ovládača - 90 x 90 x 15 mm, hmotnosť - 90 g. K dispozícii sú 4 výstupy pre pripojenie motorov, 8 univerzálnych vstupov, 2 rozširujúce I2C konektory, RS485 kombinovať s inými ovládačmi, 4 vstupy a USB na pripojenie k počítaču. K dispozícii je aj vstavaná Bluetooth. Môžete si zakúpiť ďalší mikrokontrolér ROBOTX za 15 300 rubľov.

Pokročilejší ovládač je možné dokúpiť samostatne ROBOTIKA TXT za 20 250 rubľov. Tu sú jeho charakteristiky: OS linux, dva procesory ARM Cortex A8(32bit/600 MHz)+ Cortex M3, pamäť 128 MB DDR3 RAM, 64 MB Flash, slot na karty Micro SD, 2,4" farebný dotykový displej s rozlíšením 320 x 240, 8 univerzálnych vstupov, 4 vysokorýchlostné digitálne vstupy, 4 motorové výstupy, kombinovaný modul Bluetooth/WiFi, IR prijímač (pre príjem signálu z diaľkového ovládača), USB 2.0 pre pripojenie k PC, USB hostiteľ (USB A spojiť USB kamery fischertechnik alebo USB píšťalky), 10-pinový konektor pre vstup alebo výstup cez I2C rozhranie, vstavaný reproduktor, vstavané hodiny s vlastnou batériou. Veľkosť ovládača je 90 x 90 x 25 mm. Ovládače je možné spárovať. Všetky podrobnosti o mikrokontroléri.

Všetky súpravy obsahujú programovací softvér ROBO Pro(pozri obrázok) (v štartovacej sade nájdete odľahčenú verziu tohto softvéru). Najnovšiu verziu softvéru a Russification je možné vždy stiahnuť z webovej stránky výrobcu.

Ovládač ROBOTIKA TXT naprogramované s ROBO Pro, C kompilátor, PC knižnica MS-RDS. C kompilátor možno stiahnuť z tej istej stránky ako ROBO Pro.

Robotická platforma Engino

(Popis konštruktér pridané 01.05.2015) Robotická platforma Engino (ERP) je vývojom cyperskej spoločnosti Engino. Teraz je táto robotická platforma zastúpená iba jednou sadou, z ktorej môžete zostaviť 6 modelov. Cena súpravy v maloobchode je asi 17 000 rubľov. Sada je určená pre žiakov školy (7+) a študentov.

Obsahuje mikropočítač, softvér (na súkromné ​​a vzdelávacie účely), káble, 3 motory, 3 LED diódy, 2 infračervené senzory, 1 dotykový senzor a rôzne diely.

A tu je špecifikácia mikropočítača ERP:

      • 32-bitový mikrokontrolér ARM CORTEX-M2.
      • 256 KB FLASH, 64 KB RAM.
      • USB port 12 Mbit/s.
      • 3 porty pre motory a 4 pre senzory (LED je možné pripojiť k ľubovoľným portom).
      • Vstavaný bzučiak.
      • Napájanie 6 AA batériami.
      • Vstavaný modul Wi-Fi.

Zostavené modely môžete programovať priamo na samotnom bloku alebo pomocou softvéru ENGINO ERP. Diaľkové ovládanie robotov je možné pomocou aplikácie Diaľkové ovládanie Engino ERP, ktorý je dostupný v Google Play a Apple Store.

Všetky podrobnosti o konštruktérovi nájdete.

TRIC

(Popis konštruktora pridaný dňa 01.05.2015) Kybernetický konštruktér TRIC- ide o ruského dizajnéra, ktorého kovové časti sú kompatibilné s "sovmetalkonstruktor" (rovnaká perforácia M4 s rozstupom 10 mm). Vek - 12+. Dizajnér sa práve objavil, ale už som ho našiel v jednom obchode. Ceny sú približne v nasledujúcom poradí: štartovacia súprava - 25 000 rubľov, vzdelávacia - 35 000 rubľov, škola - 45 000, konkurenčná - 58 000 rubľov. Rozdiel medzi sadami je v počte senzorov a dielov, ale každá sada má ovládač TRIC, videokamera a mikrofón. Všetky súpravy (okrem štartovacej súpravy) sa dodávajú s plastovou krabicou s priehradkami na uloženie dielov. Maximálna sada obsahuje tieto senzory: 2 svetelné senzory, 2 senzory vzdialenosti, 2 dotykové senzory. Okrem toho sú tu viackolesá, LED pásy, batérie, nabíjačka.

Tu sú špecifikácie ovládača TRIK:

      • Operačný systém: Linux.
      • CPU: OMAP-L138 C6-Integra™ DSP+ARM® SoC, 375 MHz, Texas Instruments.
      • Jadro CPU: ARM926EJ-S™ RISC MPU.
      • RAM: 256 MB, 6 MB FLASH.
      • Periférny procesor: MSP430F5510, 24 MHz, Texas Instruments.
      • Používateľské rozhrania: USB 2.0, WiFi b/g/n, BlueTooth, 2xUART, 2xI2C, Micro-SD, Mic in (stereo), Line out (mono).
      • Rozhrania jednosmerného motora: 4 motorové porty 6-12V DC, s individuálnou hardvérovou nadprúdovou ochranou (až 2A na motor).
      • Rozhrania periférnych zariadení: 19 univerzálnych signálových portov (6 jednokanálových a 13 dvojkanálových) s napájaním 3,3-5V, 6 z nich môže pracovať v režime analógového vstupu.
      • Rozhrania video senzorov: 2 vstupy BT.656 VGA 640*480, podpora stereo režimu.
      • Vstavaný farebný dotykový LCD monitor 2,4” TFT s rozlíšením 320x240 pixelov.
      • Zabudovaný reproduktor menovitý výkon 1W, špičkový 3W.
      • 2-farebný, softvérom riadený LED indikátor.
      • Rozširujúce sloty: Dva 26-kolíkové „slotové“ konektory rozširujúceho modulu.
      • Dodatočné vybavenie (súčasť ovládača): 3-osový akcelerometer, 3-osový gyroskop, audio kodek, zosilňovač, prevodníky a obvody správy napájania, obvody ochrany vstupov proti napäťovému a prúdovému preťaženiu.
      • Napájanie 6-12V DC, externý napájací adaptér alebo LiPo batéria RC 3P (11,1V) / 2P (7,4V).

Programovanie možné na OD,C++/Qt, JavaScript, C#/F# (.NET), Python a Java. Má tiež svoje vlastné vývojové prostredie - ktoré beží ďalej Windows a linux, pozri obrázok.

Pre diaľkové ovládanie bola vyvinutá aplikácia pre Android. Pripojenie k ovládaču je cez WiFi.

Podrobnosti o dizajnérovi na oficiálnej stránke.

MOSS

(Popis konštruktora pridaný dňa 02.06.2015) Konštruktér MOSS vytvorila americká spoločnosť Modulárna robotika, podľa mňa najneobvyklejší konštruktér zo všetkých tu uvedených. Neexistujú žiadne vodiče a žiadne obvyklé spôsoby pripojenia častí. Celý konštruktér sa skladá z modulov v tvare kocky s plochami rôznych farieb a rôznymi spojovacími prvkami, ako sú konzoly a rohy. Všetky sú k sebe pripevnené pomocou magnetických guľôčok, ktoré umožňujú vytvárať pevné alebo kĺbové spoje.

Rôzne farby okrajov modulov nie sú vyrobené len pre krásu, ale označujú aj vlastnosti. Zelené okraje vedú elektrický prúd. Batériový modul má všetky zelené okraje a hlavným účelom tohto modulu je dodávať energiu všetkým ostatným modulom. Napríklad, ak chcete napájať modul s motorom, musíte pripojiť jeden z jeho zelených okrajov k zelenému okraju batérie. Červené a hnedé okraje vedú dáta: červená je výstup dát, hnedá je vstup dát. Napríklad, ak chcete, aby snímač vzdialenosti ovládal rýchlosť motora, musíte pripojiť červený okraj modulu snímača vzdialenosti k hnedému okraju modulu motora. Modré okraje prenášajú, prenáša sa cez ne energia a/alebo dáta. Ak napríklad potrebujete napájať modul, ktorý je ďaleko od batérie, môžete použiť modré okraje flexibilného modulu alebo niekoľko jednoduchých modulov.

Čo sa týka publika, pre ktoré je konštruktor určený MOSS, potom vývojári ubezpečujú, že je vhodný pre deti vo veku 8 rokov a staršie, ako aj pre dospelých. Súprav je viac Cubelets pre deti od 4 rokov, ktoré nemajú balóny.

Žiaľ, návrhár sa v Rusku nepredáva a pri objednávaní na oficiálnej stránke dizajnéra si nemôžete objednať doručenie do Ruska.

Robo Wunderkind

(Popis konštruktora pridaný dňa 10/05/2015) A tu je ďalší kubický konštruktor kompatibilný s konštruktorom lego. Konštruktér Robo Wunderkind rovnako ako konštruktér MOSS pozostáva z modulov vo forme kocky, s výnimkou mikrokontroléra, ktorý sa skladá akoby z dvojitých kociek (na fotografii je mikrokontrolér oranžový). Moduly sú navzájom prepojené bezdrôtovo pomocou špeciálnych konektorov.

Teraz si v službe Kickstarter môžete predobjednať nasledujúce možnosti súpravy: štartér ( SADA PRE ZAČIATOČNÍKOV, za 149 USD), predĺžená ( ROZŠÍRENÁ SADA, za 249 USD) a profesionálne ( PROFESIONÁLNA SADA, za 499 dolárov). Prvé dodávky sa začnú v júli 2016. Stavebnice sú určené pre deti od 5 rokov a dospelých. V štartovacej sade obsahuje systémový modul (mikrokontrolér), modul so snímačom vzdialenosti (červený), modul Bluetooth (modrý), modul batérie (zelený), servomodul (žltý), prázdny modul, 2 moduly motora (modrý) , 2 kolieska, 7 konektorov, 2 LEGO adaptéry (na pripevnenie štandardných LEGO dielikov, ako sú ľudia, ako je znázornené na obrázku) a jedno pasívne koliesko. v rozšírenej súprave Pridávajú sa ďalšie 2 prázdne moduly, modul s LED displejom, modul so svetelným senzorom, modul so senzorom počasia, 6 ďalších konektorov a 2 ďalšie LEGO adaptéry. V profesionálnom sete, oproti rozšírenému pribudol 1 batériový modul, ďalší servo modul, 3 ďalšie prázdne moduly, modul infračerveného senzora, modul laserového ukazovátka, modul s e-ink obrazovkou, modul s kamerou, modul s akcelerometrom, ďalšími 9 konektormi, ďalšími 4 LEGO adaptérmi a ďalším pasívnym kolieskom.

Ale vlastnosti dizajnéra: Allwinner A13 SoC, RAM 256 MB DDR3, Storage eMMC Flash Memory 4 GB, WiFi 802.11 b/g/n, Bluetooth 2.1/3.0/4.0. Systémový modul má vstavaný mikrofón a reproduktor.

Hotového robota môžete naprogramovať pomocou špeciálnej aplikácie dostupnej pre iOS a Android. Vývojári plánujú vytvoriť aplikáciu pre Windows ale až v septembri 2016. Programovanie je tu grafické. Tiež podporované Škrabanec. Poskytujú aj tvorcovia konštruktérov API pre vývoj, ako píšu, v akomkoľvek programovacom jazyku.

Ktorého dizajnéra programovateľných robotov kúpiť?

Pokúsme sa teda zhrnúť všetky prijaté informácie. Pre povrchné štúdium robotiky je vhodná ktorákoľvek zo štartovacích súprav uvedených dizajnérov. Ak však plánujete robiť robotiku vážne, mali by ste sa pozrieť trochu hlbšie. Je potrebné zhodnotiť schopnosti každého konštruktéra (typy snímačov, výkon a funkčnosť mikrokontrolérov, prítomnosť určitých častí na vytváranie puzdier atď.).

Dizajnér má dobrý základ všetkých druhov snímačov. lego, ale mikrokontrolér lego málo portov (iba 4 pre vstup a 4 pre výstup). Samozrejme, mikrokontroléry môžete spájať, ale potom vyvstáva otázka, kam umiestniť taký počet ovládačov v samostatných modeloch (viacero ovládačov je dosť objemných). Treba tiež poznamenať možnosť vytvárania robotov na základe lego kov so súpravami TETRIX a MATRIX. Okrem toho má LEGO veľkú armádu fanúšikov, a to aj v Rusku.

Dobré príležitosti majú aj dizajnéri z firmy. Robotika VEX. K dispozícii je veľký výber senzorov, konštrukčných prvkov a softvéru na programovanie robotov.

Ak sa nechystáte vyvíjať vlastný dizajn robota a nevadia vám peniaze, potom sa zostave venujte Prémiová súprava konštruktér Robotis Bioloid. S touto sadou si môžete zostaviť humanoidného robota a naprogramovať ho podľa svojho vkusu. Je však potrebné venovať pozornosť tomu, že rozmanitosť senzorov je malá.

Ak si vyberiete konštruktor podľa ovládačov, potom vyzerá konštruktor najpokročilejšie fischertechnik. Tu je najvýkonnejší ovládač s najväčším počtom portov, s možnosťou pripojenia kamery a so vstavaným WiFi a Bluetooth modulov.

Ak chcete takmer neobmedzené možnosti, potom musíte venovať pozornosť značke. Arduino. Všetko je tu dospelé: existuje veľa vývojových prostredí, veľa kompatibilných analógov, ale návrhy svojich robotov si musíte vymyslieť sami. Nie je prekvapením, že pomocou tejto platformy sa roboty často vyrábajú z preglejky alebo kartónu, prípadne sú diely vytlačené na 3D tlačiarni. Nezabudnite ani na konštruktory kompatibilné s Arduino, napr. Multiplo a Makeblock.

Domáci dizajnér TRIC tiež dáva veľké príležitosti pre kreativitu, pretože. tu v súprave je kamera, mikrofón, akcelerometer. Tu, ako v konštruktérovi fischertechnik K dispozícii je farebný dotykový displej. Okrem toho sa ako základ berie silný kovový konštruktér.

A ak sa pozorne pozeráte na dizajnérov bez drôtov, potom venujte pozornosť dizajnérom MOSS a Robo Wunderkind.

Napriek identifikovaným silným stránkam zostáv uvedených vyššie sú všetky súpravy dobré. A, samozrejme, vy sami si budete musieť vybrať dizajnéra podľa svojich vlastných preferencií. Ale v každom prípade kúpou jednej zo súprav uvedených v článku automaticky vstupujete do sveta robotiky.

Pracujú na priesečníku kybernetiky, psychológie a behaviorálnej vedy (behaviorálna veda) a inžinier zostavujúci algoritmy pre priemyselné robotické systémy, medzi ktorých hlavné nástroje patrí vyššia matematika a mechatronika, pracujú v najperspektívnejšom odvetví najbližších rokov – robotike. Roboty, napriek relatívnej novosti tohto pojmu, sú ľudstvu už dlho známe. Tu je len niekoľko faktov z histórie vývoja inteligentných mechanizmov.

Železní muži Henri Droz

Dokonca aj v mýtoch starovekého Grécka sa spomínali mechanickí otroci, ktorých vytvoril Héfaistos na vykonávanie ťažkej a monotónnej práce. A prvým vynálezcom a vývojárom humanoidného robota bol legendárny Leonardo da Vinci. Dodnes sa zachovali najpodrobnejšie kresby talianskeho génia, ktoré opisujú mechanického rytiera schopného napodobňovať ľudské pohyby rukami, nohami a hlavou.

S tvorbou prvých automatických strojčekov s programovým ovládaním začali koncom 15. storočia európski hodinári. Najúspešnejšími v tejto oblasti boli švajčiarski špecialisti otec a syn Pierre-Jacques a Henri Droz. Vytvorili celú sériu („píšuci chlapec“, „kresliar“, „hudobník“), ktorých základom boli hodinové mechanizmy. Na počesť Henriho Droza sa v budúcnosti všetky programovateľné humanoidné automaty začali nazývať „androidy“.

Pri počiatkoch programovania

Základy programovania priemyselných robotov boli položené na úsvite 19. storočia vo Francúzsku. Tu boli vyvinuté prvé programy pre automatické textilné stroje (pradenie a tkanie). Rýchlo rastúca Napoleonova armáda nutne potrebovala uniformy a následne aj látky. Joseph Jacquard, vynálezca z Lyonu, navrhol spôsob, ako rýchlo prekonfigurovať tkáčsky stav na výrobu rôznych typov produktov. Tento postup si často vyžadoval obrovské množstvo času, obrovské úsilie a pozornosť celého tímu. Podstatou inovácie bolo použitie kartónových kariet s perforovanými otvormi. Ihly, ktoré sa dostali do vyrazených miest, premiestnili nite potrebným spôsobom. Výmena štítkov bola rýchlo vykonaná operátorom stroja: nový dierny štítok - nový program - nový typ látky alebo vzoru. Francúzsky vývoj sa stal prototypom moderných automatizovaných systémov, robotov so schopnosťou programovania.

Myšlienku navrhnutú Jaccardom s nadšením použili vo svojich automatických zariadeniach mnohí vynálezcovia:

  • Vedúci štatistického úradu S. N. Korsakov (Rusko, 1832) - v mechanizme na porovnávanie a analýzu myšlienok.
  • Matematik Charles Babbage (Anglicko, 1834) - v analytickom stroji na riešenie širokého spektra matematických problémov.
  • Inžinier (USA, 1890) - v zariadení na ukladanie a spracovanie štatistických údajov (tabulátor). Pre poznámku: v roku 1911 spol. Hollerith dostal názov IBM (International Business Machines).

Dierne štítky boli hlavnými nositeľmi informácií až do 60. rokov minulého storočia.

Inteligentné stroje vďačia za svoje meno českému dramatikovi. (česky) -ťažká práca). A čo odlišuje robota od mechanizmov a automatických zariadení? Na rozdiel od posledne menovaného robot nielenže vykonáva určité akcie, slepo sleduje základný algoritmus, ale je tiež schopný užšie interagovať s prostredím a osobou (operátorom), prispôsobovať svoje funkcie pri zmene vonkajších signálov a podmienok.

Všeobecne sa uznáva, že prvý operačný robot navrhol a implementoval v roku 1928 americký inžinier R. Wensley. Humanoidný „železný intelektuál“ sa volal Herbert Televox. Na priekopnícke vavríny sa hlási aj biológ Makoto Nishimura (Japonsko, 1929) a anglický vojak William Richards (1928). Antropomorfné mechanizmy vytvorené vynálezcami mali podobnú funkčnosť: dokázali pohybovať končatinami a hlavou, vykonávať hlasové a zvukové príkazy a odpovedať na jednoduché otázky. Hlavným účelom zariadení bolo demonštrovať vedecké a technologické úspechy. Ďalšie kolo vo vývoji technológie umožnilo čoskoro vytvoriť prvé priemyselné roboty.

Generácia po generácii

Vývoj robotiky je nepretržitý, postupný proces. K dnešnému dňu sa vytvorili tri odlišné generácie „inteligentných“ strojov. Každý sa vyznačuje určitými ukazovateľmi a oblasťami použitia.

Prvá generácia robotov bola vytvorená pre úzky typ činnosti. Stroje sú schopné vykonávať len určitú naprogramovanú postupnosť operácií. Riadiace zariadenia robota, obvody a programovanie prakticky vylučujú autonómnu prevádzku a vyžadujú vytvorenie špeciálneho technologického priestoru s potrebným doplnkovým vybavením a informačno-meracími systémami.

Stroje druhej generácie sa nazývajú rozumné alebo adaptívne. Programovanie robota sa vykonáva s prihliadnutím na veľkú sadu externých a interných senzorov. Na základe analýzy informácií prichádzajúcich zo senzorov sa vyvinú potrebné riadiace opatrenia.

A napokon tretia generácia – inteligentné roboty, ktoré sú schopné:

  • Zhrňte a analyzujte informácie
  • Zdokonaľujte sa a vzdelávajte sa, zbierajte zručnosti a vedomosti,
  • Rozpoznajte obrazy a zmeny situácie a v súlade s tým budujte prácu svojho výkonného systému.

Umelá inteligencia je založená na algoritmoch a softvéri.

Všeobecná klasifikácia

Na každej reprezentatívnej modernej výstave robotov môže rozmanitosť „inteligentných“ strojov ohromiť nielen bežných ľudí, ale aj špecialistov. A čo sú roboty? Najvšeobecnejšiu a najzmysluplnejšiu klasifikáciu navrhol sovietsky vedec A. E. Kobrinsky.

Podľa účelu a vykonávaných funkcií sa roboty delia na výrobno-priemyselné a výskumné. Prvý, v súlade s charakterom vykonávanej práce, môže byť technologický, manipulačný, univerzálny alebo špecializovaný. Výskumné miestnosti sú určené na štúdium oblastí a sfér, ktoré sú pre človeka nebezpečné alebo nedostupné (vesmír, vnútro zeme a sopky, hlboké vrstvy oceánov).

Podľa typu ovládania možno rozlíšiť biotechnické (kopírovacie, príkazové, kyborgové, interaktívne a automatické), podľa princípu - tvrdo programovateľné, adaptívne a flexibilne programovateľné. Rýchly vývoj moderných technológií poskytuje vývojárom takmer neobmedzené možnosti pri navrhovaní inteligentných strojov. Vynikajúce obvodové a konštrukčné riešenie však bude slúžiť iba ako drahý shell bez príslušného softvéru a podpory algoritmov.

Aby kremík mikroprocesora prebral funkcie mozgu robota, je potrebné do kryštálu „naplniť“ príslušný program. Bežný ľudský jazyk nie je schopný poskytnúť jasnú formalizáciu úloh, presnosť a spoľahlivosť ich logického hodnotenia. Preto sú požadované informácie prezentované v určitej forme pomocou programovacích jazykov robotov.

V súlade s úlohami riadenia, ktoré sa majú vyriešiť, sa rozlišujú štyri úrovne takéhoto špeciálne vytvoreného jazyka:

  • Najnižšia úroveň slúži na ovládanie akčných členov vo forme presných hodnôt lineárneho alebo uhlového posunu jednotlivých článkov inteligentného systému,
  • Úroveň manipulátora umožňuje všeobecné ovládanie celého systému umiestnením pracovného tela robota do súradnicového priestoru,
  • Úroveň operácií slúži na vytvorenie pracovného programu uvedením postupnosti nevyhnutných opatrení na dosiahnutie konkrétneho výsledku.
  • Na najvyššej úrovni - úlohy - program bez podrobností naznačuje, čo je potrebné urobiť.

Robotici majú tendenciu redukovať programovanie robotov na komunikáciu s nimi v jazykoch vyššej úrovne. V ideálnom prípade operátor zadá úlohu: „Zostavte spaľovací motor automobilu“ a očakáva, že robot úlohu dokončí.

Jazykové nuansy

V modernej robotike sa programovanie robotov vyvíja v dvoch vektoroch: programovanie orientované na robota a programovanie orientované na problém.

Najbežnejšie robotické jazyky sú AML a AL. Prvý z nich vyvinula IBM len na ovládanie inteligentných mechanizmov vlastnej výroby. Druhý, produkt odborníkov zo Stanfordskej univerzity (USA), sa aktívne rozvíja a má významný vplyv na formovanie nových jazykov tejto triedy. Profesionál ľahko rozozná charakteristické črty Pascalu a Algolu v jazyku. Všetky jazyky zamerané na roboty popisujú algoritmus ako postupnosť akcií „inteligentného“ mechanizmu. V tomto ohľade sa program často ukazuje ako veľmi ťažkopádny a nepohodlný pri praktickej implementácii.

Pri programovaní robotov v problémovo orientovaných jazykoch program nešpecifikuje postupnosť akcií, ale ciele alebo medzipolohy objektu. Najpopulárnejší v tomto segmente je jazyk AUTOPASS (IBM), v ktorom je stav pracovného prostredia znázornený vo forme grafov (vrcholy - objekty, oblúky - väzby).

Tréning robotov

Každý moderný robot je učiaci sa a adaptívny systém. V procese učenia sa jej prenášajú všetky potrebné informácie vrátane vedomostí a zručností. A to tak priamym zadaním príslušných údajov do pamäte procesora (podrobné programovanie – vzorkovanie), ako aj pomocou senzorov robota (vizuálnou demonštráciou) – všetky pohyby a pohyby mechanizmov robota sa zapisujú do pamäte a následne sa reprodukujú v pracovnom cyklu. Počas učenia sa systém prestavuje svoje parametre a štruktúru, tvorí informačný model vonkajšieho sveta. Toto je hlavný rozdiel medzi robotmi a automatizovanými linkami, priemyselnými strojmi s pevnou konštrukciou a inými tradičnými automatizačnými nástrojmi. Tieto vyučovacie metódy majú značné nevýhody. Napríklad pri odbere vzoriek si rekonfigurácia vyžaduje určitý čas a prácu kvalifikovaného odborníka.

Program na programovanie robotov, ktorý predstavili vývojári Laboratória informačných technológií na Massachusetts Institute of Technology (CSAIL MIT) na medzinárodnej konferencii priemyselnej automatizácie a robotiky ICRA-2017 (Singapur), vyzerá veľmi sľubne. Platforma C-LEARN, ktorú vytvorili, má výhody oboch metód. Poskytuje robotovi knižnicu elementárnych pohybov so špecifikovanými obmedzeniami (napríklad sila uchopenia pre manipulátor v súlade s tvarom a tuhosťou dielu). Zároveň operátor predvádza kľúčové pohyby robotovi v 3D rozhraní. Systém na základe úlohy vygeneruje postupnosť operácií na dokončenie pracovného cyklu. C-LEARN vám umožňuje prepísať existujúci program pre robota inej konštrukcie. Obsluha nevyžaduje hlboké znalosti v oblasti programovania.

Robotika a umelá inteligencia

Odborníci z Oxfordskej univerzity varujú, že v najbližších dvoch desaťročiach strojová technika nahradí viac ako polovicu súčasných pracovných miest. Roboty už dávno nepracujú len v nebezpečných a zložitých oblastiach. Napríklad programovanie výrazne vytlačilo ľudských brokerov na svetových burzách. Pár slov o umelej inteligencii.

Z pohľadu laika ide o antropomorfného robota, ktorý dokáže nahradiť človeka v mnohých oblastiach života. Čiastočne je to pravda, ale vo väčšej miere je umelá inteligencia samostatným odvetvím vedy a techniky, pomocou počítačových programov simuluje myslenie „Homo sapiens“, prácu jeho mozgu. V súčasnej fáze vývoja AI ľuďom viac pomáha, baví ich. Podľa odborníkov však ďalší pokrok v oblasti robotiky a umelej inteligencie môže pre ľudstvo predstavovať množstvo morálnych, etických a právnych problémov.

Tento rok na ženevskej výstave robotov najpokročilejšia androidka Sophia oznámila, že sa učí byť človekom. V októbri bola Sophia po prvý raz v histórii umelej inteligencie uznaná za občianku Saudskej Arábie s plnými právami. Prvá lastovička?

Hlavné trendy v robotike

V roku 2017 digitálny priemysel ocenil niekoľko vynikajúcich riešení v oblasti technológií virtuálnej reality. Robotika nezostala bokom. Smer zlepšovania ovládania zložitého robotického mechanizmu cez virtuálnu prilbu (VR) vyzerá veľmi sľubne. Odborníci predpovedajú dopyt po takejto technológii v biznise a priemysle. Možné prípady použitia:

  • ovládanie bezpilotných prostriedkov (skladové vysokozdvižné vozíky a manipulátory, drony, prívesy),
  • Vykonávanie lekárskeho výskumu a chirurgických operácií,
  • Vývoj ťažko dostupných objektov a oblastí (dno oceánu, polárne oblasti). Programovanie robotov im navyše umožňuje vykonávať autonómnu prácu.

Ďalším populárnym trendom je spojené auto. Nedávno predstavitelia giganta Apple oznámili začiatok vývoja vlastného „dronu“. Stále viac firiem prejavuje záujem o vytváranie strojov, ktoré sa môžu samostatne pohybovať po nerovných cestách, čím šetria náklad a vybavenie.

Rastúca zložitosť programovania robotov a algoritmov strojového učenia kladie zvýšené nároky na výpočtové zdroje a následne aj na hardvér. Najlepším riešením by v tomto prípade bolo zrejme pripojenie zariadení do cloudovej infraštruktúry.

Dôležitou oblasťou je kognitívna robotika. Rýchly rast počtu „inteligentných“ strojov núti vývojárov stále viac premýšľať o tom, ako naučiť roboty plynulej interakcii.