Cercetare de baza. Modelarea și controlul de la distanță al roboților prin Internet Controlul de la distanță al roboților prin Internet

Material similar:

  • Plan: 1-Ce este Internetul (concept) 2-Moduri de conectare la Internet, 81,69 kb.
  • Fraudă prin internet, 11,94 kb.
  • Structura și principiile de bază de funcționare a Internetului, 187.31kb.
  • Studiu de fezabilitate, 609,73kb.
  • Folosind tehnologii grid, 81.79kb.
  • Rețea globală de informații Internet, 928,45 kb.
  • Plan de bază Număr de ore conform planului, total Inclusiv, 45,76 kb.
  • „Raportare electronică SBIS++” în formă electronică prin Internet, 80,99 kb.
  • , 243,98 kb.
  • Rețea de internet. Serviciul www, 240.73kb.
SIMULAREA SI CONTROLUL DE LA DISTANTA A ROBOTILOR

PRIN INTERMEDIUL INTERNETULUI

cercetător principal I.R. Belousov

1/2 an, 2-5 ani si absolventi

Studiul metodelor moderne de modelare și control al roboților. Sunt luați în considerare algoritmii de interacțiune a roboților cu obiecte dinamice complexe folosind un sistem de viziune tehnică în bucla de control. Se studiază metode de control de la distanță a roboților prin internet. Este prezentată arhitectura sistemelor de control distribuit, sunt luate în considerare metodele de transfer de informații, modelarea grafică și programarea de la distanță a roboților folosind tehnologii deschise Java și Java3D.

Introducere.

Enunțul sarcinilor discutate în curs. Demonstrarea rezultatelor experimentale.

Controlul roboților în sarcini de interacțiune cu obiecte în mișcare.

1. Stabilirea sarcinilor. Exemple.

Trecerea în revistă a sarcinilor și a metodelor de interacțiune a roboților cu obiectele în mișcare. Utilizarea unui sistem tehnic de viziune și modele de dinamică a obiectelor. Enunțarea problemei unui robot care prinde o tijă pe o suspensie bifilară. Enunțarea problemei interacțiunii unui robot cu pendulele sferice.

2. Utilizarea sistemelor tehnice de vedere.

Algoritmi pentru procesarea imaginilor video. Determinarea pozițiilor tijei și pendulilor, utilizarea predicției cinematice. Prelucrarea rezultatelor măsurătorilor.

3. Modelarea matematică și testarea experimentală a algoritmilor.

Ecuații ale vibrațiilor unei tije pe o suspensie bifilară. Algoritmi pentru prinderea unei tije cu un manipulator robot. Ecuații ale oscilațiilor unui pendul sferic. Algoritmi pentru interacțiunea unui robot cu pendulele. Arhitectura standului experimental. Discuția rezultatelor experimentale.

Control de la distanță al roboților prin Internet.

4. Revizuirea sistemelor existente.

Sisteme de control prin internet pentru roboți mobili și de manipulare. Dezavantaje ale sistemelor existente, probleme de control prin internet, abordări ale soluțiilor.

5. Arhitectura sistemelor de control al robotului distribuit.

Organizarea hardware și software a părților server și client ale unui sistem de control al robotului distribuit. Organizarea schimbului de date.

6. Programare de la distanță prin Internet.

Limbaje de programare robot. Mediu pentru programarea de la distanță a roboților prin Internet.

7. Controlul sistemelor reale.

Experimente privind controlul roboților manipulativi și mobili prin internet. Utilizarea unui mediu de control al robotului virtual. Discuția rezultatelor experimentale. Direcții pentru cercetări ulterioare.

Modelarea grafică a roboților.

8. Introducere în grafica computerizată.

Sisteme de coordonate, transformări tridimensionale. Cei mai simpli algoritmi.

9. Modelarea obiectelor geometrice în Java3D.

Introducere în Java3D. Caracteristici ale programării grafice în Java3D. Noțiuni de bază. Vizualizarea celor mai simple obiecte geometrice în Java3D. Iluminare, texturi, gestionarea obiectelor, reconfigurare dinamică a scenei.

10. Descrierea cinematicii robotului.

Metode de descriere a cinematicii manipulatorilor. Probleme directe și inverse de cinematică. Metoda de formare secvențială a sistemelor de coordonate. Exemple.

11. Modelarea grafică a roboților și a spațiului de lucru.

Combinarea obiectelor. Transformări geometrice. Vizualizarea roboților, obiectelor geometrice complexe și în mișcare.

Am visat de mult să fac un robot Wi-Fi care să poată fi controlat de la distanță. Și în sfârșit a venit ziua în care am putut să controlez robotul prin Internet, să văd și să aud tot ce se întâmpla în jurul lui.
Îi invit pe cei interesați la pisică

Următoarele componente au fost folosite pentru a crea robotul:

Așa arată robotul pe care l-am asamblat, fără capacul superior.

Acum totul este in ordine:

Ansamblu platformă robot:

Amplasarea componentelor pe placa de baza. Am instalat doar Arduino Nano, driver de motor și emițător de sunet HC:

Routerul wr703N a fost atașat la partea inferioară a platformei robotului cu bandă dublu:

Camera web este atașată la colțul mobilierului, la orificiile standard ale platformei prevăzute pentru servomotoare:

CyberWrt este un firmware compilat pe baza OpenWrt și destinat în principal roboților, caselor inteligente și altor dispozitive construite pe baza modelelor populare de routere Tp-Link mr3020 și Wr703N. CyberWrt are spațiul liber maxim posibil pentru instalarea pachetelor - 1,25 MB. În mod implicit, este instalat un server web și toate operațiunile pot fi efectuate prin interfața web încorporată. Imediat după clipire, routerul este disponibil în rețea prin cablu și WiFi ca punct de acces. Prin interfața web, puteți lucra în modul „linie de comandă” - printr-un terminal web și într-un manager de fișiere, în care puteți edita, descărca, șterge, crea, copia fișiere și multe altele.

După parcurgerea ruterului, acesta este disponibil ca punct de acces WiFi cu numele „CyberBot”, conectează-te la el și accesează pagina principală a routerului. Așa arată interfața web imediat după instalarea firmware-ului.

Instalați modulele FTDI Driver, Video Driver și CyberBot-2.

Se aprinde intermitent controlerul Arduino.

Codul programului robotului s-a dovedit a fi destul de simplu, dar este suficient să controlați robotul de la distanță printr-o rețea locală sau pe Internet.
Codul este adaptat pentru controlerele Arduino cu ATmega168/328 la bord și folosește biblioteca CyberLib.
Această bibliotecă vă ajută să profitați la maximum de controler și să reduceți cantitatea de cod final
Codul folosește WDT pentru a preveni înghețarea robotului.
Codul acceptă și controlul camerei de-a lungul axelor X și Y, dar nu aveam servo-uri gratuite și nu puteam folosi această funcție:

Cod pentru Arduino

#include #include Servo myservo1; Servo myservo2; mult anteriorMillis; http://cyber-place.ru/attachment.php?attachmentid=600&d=1389429469 uint8_t LedStep = 0; // Counter int i; boolean light_stat; uint8_t inByte; uint8_t viteza=255; //viteza maximă implicită #define init (D4_Out; D5_Out; D6_Out; D7_Out; D8_Out; D11_Out; D12_Out;) void setup() ( myservo1.attach(9); // Conectarea servomotoarelor la portul myservo2.attach(10); // Conectarea servomotoarelor la portul inițial; // Inițializarea porturilor D11_Low; // Speaker OFF randomSeed(A6_Read); // Obține o valoare aleatorie horn(); // notificare sonoră a robotului care este gata UART_Init(57600); // Inițializarea portului pentru comunicarea cu routerul wdt_enable (WDTO_500MS); ) void loop() ( unsigned long currentMillis = millis(); if (LedStep == 0 && currentMillis - previousMillis > 500)( // Întârziere 0,5 sec. previousMillis = currentMillis; LedStep = 1; ) dacă (LedStep == 1 && currentMillis - previousMillis > 500)( // Întârziere 0,5 sec. previousMillis = currentMillis; LedStep = 2; ) dacă (LedStep == 2 && currentMillis - previousMillis)( // 50) Întârziere 0,5 secunde LedStep = 0; ) if (UART_ReadByte(inByte)) //Dacă a sosit ceva ( switch (inByte) // Să vedem ce comandă a venit (case "x": // Oprirea robotului_stop(); pauză; case "W": // Mută ​​înainte robot_go(); pauză; case "D": // Rotiți la stânga robot_rotation_left(); pauză; case "A": // Rotire la dreapta robot_rotation_right(); pauză; case "S": // Mută ​​înapoi robot_back(); pauză; case "U": // Camera se mută în sus myservo1.write(i -= 20); pauză; case "J": // Camera se mișcă în jos myservo1.write(i += 20); pauză; case "H": // Camera se rotește la dreapta myservo2.write(i += 20); pauză; case "K": // Camera se rotește la stânga myservo2.write(i -= 20); pauză; cazul „B”: // Blaster D12_High; pauză; cazul "C": // Klaxon horn(); pauză; case "V": // Porniți/opriți farurile if(light_stat) ( D8_Low; light_stat=false; ) else ( D8_High; light_stat=true; ) break; ) if(inByte>47 && inByte<58) speed=(inByte-47)*25+5; //принимаем команду и преобразуем в скорость } wdt_reset(); } void horn() { for(uint8_t i=0; i<12; i++) beep(70, random(100, 2000)); //звуковое оповещение } void robot_go() { D4_Low; analogWrite(5, speed); analogWrite(6, speed); D7_Low; } void robot_back() { D4_High; analogWrite(5, 255-speed); analogWrite(6, 255-speed); D7_High; } void robot_stop() { D4_Low; analogWrite(5, 0); analogWrite(6, 0); D7_Low; } void robot_rotation_left() { D4_Low; analogWrite(5, speed); analogWrite(6, 255-speed); D7_High; } void robot_rotation_right() { D4_High; analogWrite(5, 255-speed); analogWrite(6, speed); D7_Low; }

Totul este asamblat și cusut, acum pornim robotul și îl controlăm de la distanță.
Pe un computer, pe lângă butoanele de pe ecran, îl puteți controla și de la tastatură folosind tastele W, A, D, S, X

postez un video:

În viitor, plănuiesc să învăț robotul să navigheze în spațiu și să deseneze o hartă a camerei.

Există un număr mare de instrucțiuni pe Internet pentru asamblarea diferitelor modele de roboți. Să încercăm să asamblam propriul nostru model de robot Wi-Fi de acasă folosind informații de pe forumul Cyber-place, părți parțial din magazinul online. Este profitabil să comanzi multe piese de schimb direct din China (Ebay, Aliexpress). Acest lucru va reduce semnificativ bugetul.
Este prezentată viziunea sa asupra teoriei și designului roboților moderni.

Vedere funcțională a robotului

  1. Deplasarea de-a lungul suprafeței conform comenzilor operatorului,
  2. Difuzați videoclipuri cu un unghi larg de vizualizare.

Bloc de control

Controler universal Carduino Nano V7

Microcontroler: ATmega328
Tensiune de intrare: 5V până la 30V
Frecvența ceasului: 16 MHz
Memorie flash: 32 KB
RAM (SRAM): 2 KB

Placa de baza robot CyberBot

Placa este proiectată pentru a conecta diverse dispozitive Arduino sau dispozitive analogice la ea prin interfețe standard.

Modul de control al motorului - Scut motor

Poate conecta și controla două motoare DC sau 4 motoare pas cu pas. Conține driver de motor HG7881 dual channel.
Putere: 2,5 V până la 12 V
Consum de curent pe canal: până la 800 mA

Motoare cu angrenaje

Motorreductor cu raport de transmisie 1:48
Gama de tensiune de la 3V la 6V.
Viteza de rotație a roții 48 m/min.
Curent inactiv (6V): 120mA
Nivel de zgomot:<65dB

Modul de comunicare

Router WiFi wireless TP-Link 3020MR

Acest model este ideal pentru instalarea firmware-ului terților. Selectat pentru a controla robotul nostru. Firmware-ul se bazează pe versiunea de firmware OpenWRT r37816.
Routerul poate fi controlat din orice browser web prin interfața web. Gestionarea prin telnet și SSH este, de asemenea, disponibilă. Funcționalitatea este extinsă prin instalarea de suplimente din catalog. Memorie disponibilă pentru aplicații 1.2Mb.

Cameră web Logitech E3500

Cameră cu capabilități de corectare a imaginii.

mufa USB

Un bloc pentru conectarea dispozitivelor USB între ele: arduino, router, cameră web.

Elemente auxiliare

Platformă

Rotile

Prevazut cu cauciucuri de cauciuc si ax pentru eventuala instalare a unui disc de codificator optic, ideal pentru deplasarea platformei pe o suprafata.

Compartiment pentru baterie

Necesar pentru instalarea bateriilor. Pentru versiunea noastră de robot sunt suficiente 4 baterii de dimensiune AA.

Elemente de fixare, fire

Instrumente auxiliare pentru conectarea elementelor individuale.

Procesul de asamblare a robotului

Pregătirea plăcii robotului CyberBot este cel mai dificil pentru începători, deoarece presupune utilizarea unui fier de lipit. Trebuie lipit:

  1. Blocarea condensatoarelor de la 0,1 µF și mai sus
  2. Condensator electrolitic de la 100 uF x 16V și mai sus
  3. Rezistor 150 Ohm

Rezistoarele trebuie instalate pe baza unui electrolit și a unui condensator de blocare pentru fiecare modul instalat. Ca urmare, ar trebui să obținem următoarele:

Conectorii ne vor permite să suplimentăm microcircuitul cu senzori suplimentari și să ne salveze de la reluarea constantă a pieselor.

Conectăm modulul de control al motorului - Motor Shield - la placa de control. Înșurubați compartimentul bateriei. Pentru a atașa motoarele pe platformă veți avea nevoie de șuruburi M3x30. Punem roți pe motoare.
Restul îl atașăm la a doua parte a platformei: cameră web, router, hub USB. Legăm firele împreună cu capse și le așezăm cu grijă, astfel încât să nu interfereze cu alte elemente.

Software

Firmware pentru routerul TP-Link 3020MR

După instalarea și lansarea mediului de dezvoltare, trebuie să selectați tipul de placă folosită și portul prin care vor fi schimbate datele între controler și computer. Aceste setări se fac prin meniu "Unelte" „Meniu bord”.

Când utilizați placa Arduino Nano CH340G pe un sistem Windows, driverul CH341SER trebuie instalat
Placa trebuie să fie recunoscută în sistem ca USB2.0 Serial.

Înainte de a încărca schița, o verificăm pentru erori. În meniu "SCHIȚĂ" alege „VERIFICAȚI/COMPILATE”.
Dacă apar erori în timpul verificării, compilatorul va indica o linie cu cod incorect. Dacă nu se găsesc erori, atunci în meniu "SCHIȚĂ" alege "SARCINĂ".

Schiță pentru Arduino Nano și Arduino UNO

Biblioteca CyberLib este necesară pentru ca schița să funcționeze.

#include #define motors_init (D4_Out; D5_Out; D6_Out; D7_Out;) uint8_t inByte; uint8_t viteza=255; void setup() (motoare_init; D11_Out; D11_Low; randomSeed(A6_Read); for(uint8_t i=0; i<12; i++) beep(70, random(100, 2000)); робота UART_Init(57600); wdt_enable (WDTO_500MS); } void loop() { if (UART_ReadByte(inByte)) { switch (inByte) { case "x": robot_stop(); break; case "W": robot_go(); break; case "D": robot_rotation_left(); break; case "A": robot_rotation_right(); break; case "S": robot_back(); break; } if(inByte>47 && inByte<58) speed=(inByte-47)*25+5; } wdt_reset(); } void robot_go() { D4_Low; analogWrite(5, speed); analogWrite(6, speed); D7_Low; } void robot_back() { D4_High; analogWrite(5, 255-speed); analogWrite(6, 255-speed); D7_High; } void robot_stop() { D4_Low; analogWrite(5, 0); analogWrite(6, 0); D7_Low; } void robot_rotation_left() { D4_Low; analogWrite(5, speed); analogWrite(6, 255-speed); D7_High; } void robot_rotation_right() { D4_High; analogWrite(5, 255-speed); analogWrite(6, speed); D7_Low; }

Schiță pentru Arduino Mega

#include #define motors_init (D4_Out; D5_Out; D6_Out; D7_Out;) #define robot_go (D4_Low; D5_High; D6_High; D7_Low;) #define robot_back (D4_High; D5_Low; D6_Low; D7_Low; D7_High;_Lowtop (D7_High;__Low) D 7_Low ;) #define robot_rotation_left (D4_Low; D5_High; D6_Low; D7_High;) #define robot_rotation_right (D4_High; D5_Low; D6_High; D7_Low;) uint8_t inByte; void setup() ( motors_init; D11_Out; D11_Low; randomSeed(analogRead(6)); Serial.begin(57600); wdt_enable (WDTO_500MS); ) void loop() (dacă (Serial.available()) ( inByte = Serial. read(); comutator (inByte) (case „x”: robot_stop; break; case „W”: robot_go; break; case „D”: robot_rotation_left; break; case „A”: robot_rotation_right; break; case „S”: robot_back; break; ) ) wdt_reset(); )
Cod sursă preluat de pe cyber-place.ru

Serviciu

Utilitar terminal

Un modul pentru lucrul cu consola dintr-un browser web.

Lista comenzilor utilizate frecvent în CyberWrt

uname -a— versiunea nucleului Linux;
cat /proc/cpuinfo- informatii despre hardware
cat /proc/meminfo— informații extinse despre RAM ocupată
liber -m— Informații despre RAM folosită și liberă
ls /dev— afișarea tuturor dispozitivelor din sistem
id— informații rezumative despre utilizatorul curent (login, UID, GID);
ps— toate procesele încărcate;
Data— vizualizați data/ora
dmesg- descărcați fișierul jurnal
lsmod— Lista modulelor încărcate în nucleu
netstat -rn- tabel de rutare
netstat -an | grep ASCULTĂ- lista tuturor porturilor deschise
netstat -tup— Conexiuni la Internet active

fdisk -l Informații despre toate unitățile conectate;
blkid— informații UUID despre toate unitățile disponibile în sistem;
montați /dev/sda1 /mnt— Montează partiția /dev/sda1 la punctul de montare /mnt;
montură— informații complete despre dispozitivele montate;
umount/mnt— Demontează partiția din punctul de montare /mnt;

clar— Curățarea geamului terminalului; — Încheierea sesiunii;
passwd— schimbarea parolei utilizatorului curent;

actualizare opkg– actualizarea listei de pachete
upkg opkg– actualizarea tuturor pachetelor instalate;
opkg list-instalat– afișează o listă de pachete instalate.

Verificarea performanței motoarelor în mediul de dezvoltare

În meniu „INSTRUMENTE” alege „MONITOR PORT SERIAL”. În linia terminalului introducem comanda de mișcare:

Echo x > /dev/ttyUSB0

Dacă totul este conectat și configurat corect, atunci după apăsarea butonului "TRIMITE" motoarele ar trebui să înceapă să se rotească.

Puteți opri mișcarea folosind comanda:

Echo W > /dev/ttyUSB0

Probleme

Incompatibilitatea microcontrolerului Arduino Nano V3 CH340 cu routerul TP-LINK TL-MR3020

Solutii gasite pe forum:

  • Conectarea unui rezistor de 100 ohmi pe pin RSTși pe +5V
  • Reducerea vitezei de conectare la 9600
  • Scoaterea unui condensator sau tăierea unei urme pe Arduino
  • Conectarea microcontrolerului la router prin interfața UART

După cum a arătat practica, niciuna dintre metodele de mai sus nu a ajutat. Abia după înlocuirea microcontrolerului cu un Carduino Nano V7 robotul a început să lucreze prin router.

1

Pozhidaev I.V.

Capacitatea de a controla un robot mobil printr-un canal radio va extinde semnificativ domeniul de aplicare al acestuia. Pentru a rezolva această problemă, pe robotul mobil a fost instalat un laptop, iar la acesta a fost conectat un telefon mobil cu modem GPRS. Accesul la internet este instalat printr-un modem GPRS. Prin intermediul internetului, folosind un alt computer, s-a efectuat controlul și monitorizarea sistemelor robotizate. A fost posibil să se controleze motoarele robotului, să primească informații de la senzori și, de asemenea, să se primească informații de la o cameră video pe măsură ce robotul mobil Iris-1 se mișca. Astfel, a fost posibil să se realizeze controlul de la distanță al unui robot mobil prin internet folosind canalul radio al unui telefon mobil cu un modem GPRS. Și, drept consecință, distanța pe care un robot mobil poate fi controlat a crescut semnificativ. Gama de aplicații a robotului s-a extins și în ceea ce privește zonele uscate greu accesibile.

Roboții mobili sunt utilizați pe scară largă în diverse industrii și gospodării. Sunt de neînlocuit: la eliminarea accidentelor la centralele nucleare, la căutarea și detectarea explozivilor, la diagnosticarea defecțiunilor de comunicații și eliminarea acestora. Utilizarea pe scară largă a roboților mobili este observată în explorarea fundului mării la adâncimi mari. În aviație, roboții fără pilot sunt folosiți pentru a desfășura activități de recunoaștere și pentru a distruge inamicul. Roboții mobili sunt folosiți în explorarea altor planete din sistemul solar. Recent, robotica din sectorul roboților mobili s-a dezvoltat într-un ritm rapid. Piața de vânzări de roboți mobili era în valoare de 655 de milioane de dolari în 2000 și va ajunge la 17 miliarde de dolari în 2005.

A apărut o problemă legată de utilizarea mai dinamică a unui robot mobil pentru inspectarea comunicațiilor și a obiectelor subterane atât de origine artificială, cât și naturală. Se datorează faptului că robotul este controlat printr-un cablu conectat la telecomandă, ceea ce îi limitează mișcarea.

Capacitatea de a controla un robot mobil printr-un canal radio va extinde semnificativ domeniul de aplicare al acestuia. Acest lucru vă permite să îl controlați complet autonom și pe distanțe lungi. Gama de frecvențe este mult mai largă atunci când este controlată printr-un canal radio decât prin comunicare prin cablu.

Pentru a rezolva această problemă, pe robotul mobil a fost instalat un laptop, iar la acesta a fost conectat un telefon mobil cu modem GPRS. Accesul la internet este instalat printr-un modem GPRS. Prin intermediul internetului, folosind un alt computer, s-a efectuat controlul și monitorizarea sistemelor robotizate.

În acest experiment au fost utilizate două tipuri de telefoane cu interfețe diferite. Aceste telefoane diferă unele de altele prin faptul că un dispozitiv este conectat la computer printr-un cablu întins de la portul USB al computerului la portul telefonului mobil, vezi schema bloc nr. 1. Și un alt tip de telefon mobil este comutat printr-un cablu de la portul com al unui laptop la telefonul mobil, vezi schema bloc nr. 2.

Robotul „Iris-1”, conectat la un PC, a fost controlat cu ajutorul unui software pentru sistemul de operare Microsoft Windows. Robotul însuși a fost conectat la computer prin plăci PC și un cablu de la acestea. Sistemul de operare instalat pe computer include o componentă standard - Internet Explorer, un navigator de internet. Navigatorii de internet provin de la diferiți dezvoltatori. Există două seturi de software pe două computere. Unul pentru robotul conectat la un PC este format din: Microsoft Windows NT 4.0 si software pentru „Iris-1” sub forma componentei principale „LABVIEW 6.0” pentru controlul robotului. Un al doilea computer cu un set diferit de software are acces la rețeaua globală de calculatoare Internet folosind o componentă standard Microsoft Windows - Internet Explorer, dar am folosit Netscape Navigator, precum și un computer la care este conectat un robot, care este controlat de la distanță, vezi schema bloc nr. 3.

Un computer care este conectat la Internet are software pentru conectarea telefonului la computer și software pentru un modem GPRS pentru un anumit model de telefon mobil. Telefoanele mobile funcționează în intervalul de frecvență de la 900 MHz la 1800 MHz. Nu toate modelele de telefoane mobile au funcționalitate GPRS.

Telefoanele cu clasele GPRS 8 și 10 diferă în ceea ce privește numărul de canale de transmisie și recepție a datelor. Pentru GPRS clasa 8 - trei canale pentru recepție la 14,4 Kbit pe secundă fiecare și două pentru transmisie. Pentru un telefon cu GPRS tip 10 avem 4 canale pentru receptie si doua pentru transmisie. Modelele de telefoane au și caracteristici de tip A și B, adică acceptă un modem GPRS și conversație sau doar un modem GPRS.

În timpul experimentului, a fost dezvăluit controlul stabil al unui robot de la distanță prin intermediul unui telefon mobil, cu excepția cazurilor de ecranare a semnalului radio (recepție instabilă între bază și telefon mobil sau absența acestuia - ecranare completă) de la telefonul mobil sau o încălcare a rețelei de internet prin cablu în sine.

Atunci când se folosește un canal radio de la un telefon mobil, a fost păstrată capacitatea de a controla de la distanță toate sistemele complexului robotic Iris-1, precum și controlul asupra funcționării acestora. Primim imagini video în timp ce robotul se mișcă în alb-negru. Motoarele robotului ar putea funcționa alternativ, ceea ce, dacă ar exista urme, i-ar permite să se rotească într-o direcție sau alta. Dacă motoarele au funcționat simultan la aceeași viteză de rotație, potrivindu-se în direcție, atunci robotul s-a deplasat drept înainte sau în direcția opusă. Au existat informații despre prezența unui obstacol în direcția mișcării robotului (înainte) folosind un senzor ultrasonic. Senzorul ultrasonic este format din două părți: un receptor care trimite un semnal în fața robotului către un posibil obstacol și un transmițător care primește semnalul reflectat de la un posibil obiect din fața robotului. Prezența unui obiect în fața robotului a fost observată vizual pe grafic de un operator aflat la mulți kilometri de Iris-1 RTK. În mod similar, o imagine a prezenței unui obstacol deasupra robotului a fost vizibilă folosind un senzor cu microunde. Parametrii senzorilor de fotopulse, transmisi prin Internet folosind un canal radio de la un telefon mobil, au făcut posibilă construirea unui model tridimensional parametric în mișcare cu întârziere folosind pachetul T-FLEX CAD 3D versiunea 6.0 și o versiune ulterioară.

Schema bloc nr. 1, conectarea unui telefon mobil prin portul USB al unui PC.

Schema bloc nr. 2, conectarea unui telefon mobil prin portul com al unui PC.

Schema bloc nr. 3, controlul robotului mobil „Iris - 1”.

Lista componentelor pentru controlul robotului mobil „Iris-1” la distanță lungă.

  1. Un computer cu un telefon mobil conectat la acesta printr-un port COM sau USB.
  2. Canal radio cu modem GPRS în dispozitiv
  3. Stație de bază repetor de companie celulară
  4. Reprezentant al rețelei globale de calculatoare (Internet) - furnizor.
  5. Un alt computer s-a conectat la el printr-o placă din el și un cablu de la acesta la robotul mobil.
  6. Calculatorul cu robotul are acces la rețeaua globală de calculatoare prin canalul radio al telefonului mobil.
  7. Disponibilitatea unei comunicări stabile pe secțiunile de canale cu fir și radio ale rețelei de calculatoare (Internet).

Toate cele de mai sus vă permit să controlați un robot mobil de la distanță la o distanță mare și să primiți informații despre acesta.

Astfel, a fost posibil să se realizeze controlul de la distanță al unui robot mobil prin internet folosind canalul radio al unui telefon mobil cu un modem GPRS. Și, drept consecință, distanța pe care un robot mobil poate fi controlat a crescut semnificativ. Gama de aplicații a robotului s-a extins și în ceea ce privește zonele de teren greu accesibile.

BIBLIOGRAFIE

  1. nr. Sh. Manual de robotică industrială. - 1989. - T.1. - M.: Inginerie mecanică. - 480 c.
  2. nr. Sh. Manual de robotică industrială. - 1990. - T.2. - M.: Inginerie mecanică. 480 c.
  3. Uf. K. Gonzalez, R. Lee K. Robotică. - 1989. - M.: Mir. - 624s.
  4. Kuleshov V. S. Lakota N. A. Adryunin V. V. Roboți și manipulatori controlați de la distanță. - 1986. - M.: Inginerie mecanică. - 328c.
  5. Zharkov F. P. Karataev V. V. Nikiforov V. F. Panov V. S. Utilizarea instrumentelor virtuale LabVIEW. - 1999. - M.: Solon-R. - 268c.
  6. Poduraev Yu. V. Fundamentele mecatronicii. - 2000. - M.: MSTU „STANKIN”. - 80c.
  7. Maksimov N.V. Partyka T.L. Popov I.I. Arhitectura calculatoarelor și sistemelor de calcul. - 2005. - M.: Forum-Infra-M. - 512s.

Link bibliografic

Pozhidaev I.V. CONTROLUL ROBOT-ULUI MOBIL „IRIS-1” PRIN CANAL RADIO FOLOSIND UN TELEFON MOBIL // Cercetare fundamentală. – 2005. – Nr. 7. – P. 14-16;
URL: http://fundamental-research.ru/ru/article/view?id=6320 (data accesului: 25/08/2019). Vă aducem în atenție reviste apărute la editura „Academia de Științe ale Naturii”

Controlul unui robot este o sarcină dificilă. Definiția pentru care am ales-o necesită ca dispozitivul să primească date despre mediul său. Apoi a luat o decizie și a luat măsurile adecvate. Roboții pot fi autonomi sau semi-autonomi.

  1. Robotul autonom funcționează conform unui algoritm dat, bazat pe datele primite de la senzori.
  2. Un robot semi-autonom are sarcini care sunt supravegheate de un om. Și, în plus, există și alte sarcini pe care le îndeplinește singur...

Roboți semi-autonomi

Un bun exemplu de robot semi-autonom este un robot subacvatic sofisticat. O persoană controlează mișcările de bază ale robotului. Și în acest moment, procesorul de la bord măsoară și reacționează la curenții subacvatici. Acest lucru permite robotului să fie menținut în aceeași poziție, fără să derive. O cameră de la bordul robotului îi trimite înapoi persoanei video. În plus, senzorii de la bord pot monitoriza temperatura apei, presiunea și multe altele.

Dacă robotul pierde contactul cu suprafața, se activează un program autonom și ridică robotul subacvatic la suprafață. Pentru a vă putea controla robotul, va trebui să-i determinați nivelul de autonomie. Poate doriți ca robotul să fie controlat prin cablu, fără fir sau complet autonom.

Control prin cablu

Cel mai simplu mod de a controla un robot este cu un controler manual conectat fizic la acesta folosind un cablu. Comutatoarele, butoanele, pârghiile, joystick-urile și butoanele de pe acest controler permit utilizatorului să controleze robotul fără a fi nevoit să pornească electronice complexe.

În această situație, motoarele și sursa de alimentare pot fi conectate direct la comutator. Prin urmare, rotația sa înainte/înapoi poate fi controlată. Acesta este folosit în mod obișnuit în vehicule.

Ei nu au inteligență și sunt considerați mai degrabă „mașini controlate de la distanță” decât „roboți”.


  • Principalul avantaj al acestei conexiuni este că robotul nu este limitat de timpul de funcționare. Deoarece poate fi conectat direct la rețea. Nu trebuie să vă faceți griji cu privire la pierderea semnalului. Robotul are de obicei electronice minime și nu este foarte complex. Robotul în sine poate fi ușor sau poate avea o sarcină utilă suplimentară. Robotul poate fi îndepărtat fizic folosind o legătură atașată la cablu dacă ceva nu merge bine. Acest lucru este valabil mai ales pentru roboții subacvatici.
  • Principalele dezavantaje sunt că cablul se poate încurca, se poate prinde de ceva sau se poate rupe. Distanța la care robotul poate fi trimis este limitată de lungimea cablului. Tragerea unui cablu lung adaugă frecare și poate încetini sau chiar opri mișcarea robotului.

Controlul robotului folosind un cablu și un microcontroler încorporat

Următorul pas este să instalați microcontrolerul pe robot, dar să continuați să utilizați cablul. Conectarea unui microcontroler la unul dintre porturile I/O ale computerului (cum ar fi un port USB) vă permite să vă controlați acțiunile. Controlul are loc folosind o tastatură, un joystick sau un alt dispozitiv periferic. Adăugarea unui microcontroler la un proiect poate necesita, de asemenea, să programați robotul cu semnale de intrare.


  • Principalele avantaje sunt aceleași ca și în cazul controlului direct prin cablu. Comportamentul mai complex al robotului și reacția acestuia la butoanele sau comenzile individuale pot fi programate. Există o gamă largă de comenzi ale controlerului (mouse, tastatură, joystick etc.). Microcontrolerul adăugat are algoritmi încorporați. Aceasta înseamnă că poate interacționa cu senzorii și poate lua anumite decizii pe cont propriu.
  • Dezavantajele includ costuri mai mari din cauza electronicii suplimentare. Alte dezavantaje sunt aceleași ca atunci când controlați direct robotul prin cablu.

Control Ethernet

Folosit conector Ethernet RJ45. Este necesară o conexiune Ethernet pentru control. Robotul este conectat fizic la router. Prin urmare, poate fi controlat prin Internet. Acest lucru este posibil (deși nu foarte practic) pentru roboții mobili.

Configurarea unui robot care poate comunica prin Internet poate fi destul de complexă. În primul rând, este de preferat o conexiune WiFi (internet fără fir). Combinația cu fir și fără fir este, de asemenea, o opțiune în cazul în care există un transceiver (transmite și recepție). Transceiver-ul este conectat fizic la Internet, iar datele primite prin Internet sunt apoi transmise wireless către robot.


  • Avantajele sunt că robotul poate fi controlat prin Internet de oriunde în lume. Robotul nu este limitat în timpul de funcționare, deoarece poate folosi Power over Ethernet. PoE. Aceasta este o tehnologie care vă permite să transmiteți energie electrică împreună cu date către un dispozitiv de la distanță printr-un cablu standard cu perechi răsucite printr-o rețea Ethernet. Utilizarea protocolului Internet (IP) poate simplifica și îmbunătăți designul comunicațiilor. Avantajele sunt aceleași ca și în cazul controlului direct pe computer prin cablu.
  • Dezavantajul este programarea mai complexă și aceleași dezavantaje ca și în cazul controlului prin cablu.

Controlați folosind telecomanda IR

Emițătoarele și receptoarele cu infraroșu elimină cablul care conectează robotul la operator. Acesta este folosit în general de începători. Controlul cu infraroșu necesită o „linie de vedere” pentru a funcționa. Receptorul trebuie să poată „vedea” emițătorul în orice moment pentru a primi date.

Telecomenzile cu infraroșu (cum ar fi telecomenzile universale pentru televizoare) sunt folosite pentru a trimite comenzi către un receptor infraroșu conectat la un microcontroler. Apoi interpretează aceste semnale și controlează acțiunile robotului.


  • Avantajul este costul redus. Pentru a controla robotul, puteți folosi telecomenzi simple ale televizorului.
  • Dezavantajele sunt că necesită linie de vedere pentru control.

Control radio

Controlul radiofrecvenței necesită un transmițător și un receptor cu microcontrolere mici pentru a trimite, primi și interpreta datele de radiofrecvență (RF). Cutia receptorului conține o placă de circuit imprimat (PCB) care conține unitatea receptor și un mic controler de servomotor. Comunicarea radio necesită un transmițător asociat/împerecheat cu un receptor. Este posibil să utilizați un transceiver care poate trimite și primi date între două medii de sistem de comunicații diferite din punct de vedere fizic.

Controlul radio nu necesită linie de vedere și poate fi efectuat pe distanțe lungi. Dispozitivele RF standard pot transmite date între dispozitive pe distanțe de până la câțiva kilometri. În timp ce dispozitivele RF mai profesionale pot oferi controlul robotului de la aproape orice distanță.


Mulți designeri de roboți preferă să facă roboți semi-autonomi controlați radio. Acest lucru permite robotului să fie cât mai autonom posibil și să ofere feedback utilizatorului. Și poate oferi utilizatorului un anumit control asupra unora dintre funcțiile sale, dacă este necesar.

  • Avantajele sunt capacitatea de a controla robotul pe distanțe semnificative și poate fi ușor configurat. Comunicarea este omnidirecțională, dar semnalul poate să nu fie complet blocat de pereți sau obstacole.
  • Dezavantajele sunt viteza foarte mică de transfer de date (doar comenzi simple). În plus, trebuie să fiți atenți la frecvențe.

Control prin Bluetooth

Bluetooth este un semnal radio (RF) și este transmis prin protocoale specifice pentru a trimite și a primi date. Raza de acțiune Bluetooth convențională este adesea limitată la aproximativ 10 m. Deși are avantajul de a permite utilizatorilor să-și controleze robotul prin intermediul dispozitivelor compatibile Bluetooth. Acestea sunt în principal telefoane mobile, PDA-uri și laptopuri (deși poate fi necesară o programare personalizată pentru a crea interfața). La fel ca și controlul radio, Bluetooth oferă comunicare în două sensuri.


  • Avantaje: Controlabil de pe orice dispozitiv compatibil Bluetooth. Dar, de regulă, este necesară o programare suplimentară. Acestea sunt smartphone-uri, laptopuri etc. Ratele mai mari de date pot fi omnidirecționale. Prin urmare, nu este nevoie de linie de vedere și semnalul poate trece puțin prin pereți.
  • Defecte. Trebuie să lucreze în perechi. Distanța este de obicei de aproximativ 10m (fără obstacole).

Control WiFi

Controlul WiFi este adesea o opțiune suplimentară pentru roboți. Capacitatea de a controla un robot fără fir prin Internet prezintă câteva avantaje semnificative (și unele dezavantaje) pentru controlul fără fir. Pentru a configura controlul robotului prin Wi-Fi, aveți nevoie de un router wireless conectat la Internet și de o unitate WiFi pe robotul însuși. Pentru robot, puteți utiliza un dispozitiv care acceptă protocolul TCP/IP.


  • Avantajul este capacitatea de a controla robotul de oriunde în lume. Pentru a face acest lucru, trebuie să fie în raza de acțiune a routerului wireless. Sunt posibile rate mari de transfer de date.
  • Dezavantajele sunt că este necesară programarea. Distanța maximă este de obicei determinată de alegerea routerului wireless.

Control prin telefon mobil

O altă tehnologie fără fir care a fost dezvoltată inițial pentru comunicarea om-om, telefonul mobil, este acum folosită pentru a controla roboții. Deoarece frecvențele telefoanelor mobile sunt reglementate, activarea modulului celular pe robot necesită de obicei o programare suplimentară. De asemenea, nu este nevoie să înțelegeți sistemul și reglementările rețelei celulare.


  • Avantaje: Robotul poate fi controlat oriunde există semnal celular. Comunicare prin satelit posibilă.
  • defecte; Configurarea controlului celular poate fi dificilă - nu pentru începători. Fiecare rețea celulară are propriile cerințe și limitări. Serviciul online nu este gratuit. De obicei, cu cât transferați mai multe date, cu atât mai mulți bani trebuie să plătiți. Sistemul nu a fost încă configurat pentru utilizare în robotică.

Următorul pas este să utilizați pe deplin microcontrolerul din robotul dvs. Și, în primul rând, programarea algoritmului său pentru introducerea datelor de la senzorii săi. Controlul autonom poate lua diferite forme:

  1. fi pre-programat fără feedback de mediu
  2. cu feedback limitat al senzorului
  3. cu feedback complex al senzorului

Conducerea autonomă adevărată implică mai mulți senzori și algoritmi. Acestea permit robotului să determine în mod independent cea mai bună acțiune în orice situație dată. Cele mai sofisticate metode de control implementate în prezent pe roboții autonomi sunt comenzile vizuale și auditive. Pentru control vizual, robotul se uită la o persoană sau un obiect pentru a-și primi comenzile.


Controlul unui robot pentru a vira la stânga citind o săgeată îndreptată spre stânga pe o bucată de hârtie este mult mai dificil de realizat decât s-ar putea imagina. O comandă de serviciu precum „virați la stânga” necesită, de asemenea, destul de multă programare. Programarea multor comenzi complexe precum „Adu-mi papuci” nu mai este o fantezie. Deși necesită un nivel foarte ridicat de programare și mult timp.

  • Beneficiile sunt robotica „adevărată”. Sarcinile pot fi la fel de simple precum clipirea unei lumini pe baza unui singur senzor până la aterizarea unei nave spațiale pe o planetă îndepărtată.
  • Dezavantajele depind doar de programator. Dacă robotul face ceva ce nu vrei să facă, atunci ai o singură opțiune. Acesta este pentru a vă verifica codul, a-l schimba și a încărca modificările în robot.

Partea practică

Scopul proiectului nostru este de a crea o platformă autonomă capabilă să ia decizii pe baza semnalelor externe de la senzori. Vom folosi un microcontroler Lego EV3. Ne permite să-l creăm ca o platformă complet autonomă. Și semi-autonom, controlat prin Bluetooth sau folosind un panou de control cu ​​infraroșu.


Caramida programabila LEGO EV3