MAI, 2014 NR. 2 VOL. 2 PREţ: 10 LEI
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Sumar
DESIGN HOBBY 4 Construiţi un hexacopter (II)
În acest număr continuăm cu programarea, calibrarea și montarea ESC-urilor, armarea motoarelor, programarea FC-ului, prezentarea modurilor de zbor și stabilirea valorilor regulatorului de tip PID pentru algoritmul de autostabilizare al dronei. În acest scop veți avea nevoie de câteva programe dedicate și de cunoștințe minime privind programarea microcontrolerelor prin ISP, interfața purtând denumirea de SPI (Serial Peripheral Interface).
12 COMPEC vă oferă o gamă variată de LED-uri LED-urile (Light Emitting Diodes) au marcat probabil cel mai revoluţionar progres de când omul a început să utilizeze electricitatea pentru a face lumină.
13 myParts Kit de la Texas Instruments O selecţie de piese din portofoliul de componente analogice TI. Studenții și hobbyștii pot rapid să construiască și să verifice circuite electronice esențiale folosind myParts Kit de la Texas Instruments!
Revista Electronica Azi Hobby poate fi cumpărată de la partenerii noştri: Direct de la magazinele: CONEX ELECTRONIC - Bucureşti Str. Maica Domnului nr. 48, Sector 2 Tel.: 021-242.22.06 office@conexelectronic.ro vinzari@conexelectronic.ro www.conexelectronic.ro
14 Persistence of Vision - RGB Acest proiect este varianta îmbunătăţită a vechiului POV, despre care am scris un articol în numărul din octombrie al revistei Electronica Azi Hobby. Dorim să le mulţumim echipei EAP InGear şi firmelor Digilent şi Microchip, fără de care proiectul nu ar fi existat, şi în mod special lui Răzvan Tătăroiu, pentru suportul oferit la debugging şi pentru ideile de optimizare.
20 Robot Line Follower Enhanced: Line the price, enhance the performance Concursul “Line Follower Enhanced” presupune construirea unui robot mobil autonom capabil să urmărească un traseu reprezentat de o linie (bandă) de referinţă de culoare închisă (negru) pe o suprafaţă plană de culoare deschisă (alb).
Sau online de la: O’BOYLE - Timişoara Tel. +40 256-201346 office@oboyle.ro www.oboyle.ro
25 Imprimanta 3D K8200 Velleman V-aţi dorit vreodată să vă creaţi propriile produse? Aţi visat ca o creaţie virtuală 3D să devină produs adevărat? Acum aveţi această posibilitate cu ajutorul imprimantei 3D K8200 Velleman.
Câştigaţi cu Electronica Azi Hobby
26 Senzor de nivel apă 26 Kit gard electric 27 Senzor umiditate sol 29 LineTimer LineTimer este un dispozitiv creat pentru cronometrarea roboților line follower. Acesta poate afișa timpii înregistrați pe un display alfanumeric și în același timp, îi poate transmite unui calculator prin USB. Dispozitivul a fost dezvoltat în cadrul laboratorului InGeAR [1] pentru a ne asista la evaluarea roboților line follower în etapa de calibrare. Desigur, dispozitivul poate fi folosit și pentru cronometrarea roboților în cadrul unui concurs de roboți line follower.
32 POLIfest
Trimiteţi la redacţie proiectul unei aplicaţii practice şi aveţi şansa de a câştiga un sistem de evaluare şi dezvoltare Atmel EVK1100 (ATEVK1100) pentru microcontrolerul AT32UC3A0.
Colaboratori la această ediţie: Revista Electronica Azi - HOBBY apare de 6 ori pe an.
Management Director General - Ionela Ganea Director Editorial - Gabriel Neagu Director Economic - Ioana Paraschiv Publicitate - Irina Ganea Redacţie: office@electronica-azi.ro www.electronica-azi.ro
Revista este publicată numai în format tipărit.
Ing. Emil Floroiu - emilfloroiu@gmail.com Ing. Daniel Rosner - daniel.rosner@cs.pub.ro Ing. Răzvan Tătăroiu - razvan.tataroiu@cs.pub.ro Ing. Dan Tudose - dan.tudose@cs.pub.ro
Preţul revistei este de 10 Lei. Preţul unui abonament pe 1 an de zile (6 apariţii) este de 60 Lei / abonament.
Alex Aungurencei - alex.aungurencei@gmail.com
2014© Toate drepturile rezervate.
Calciu Iulian-Cosmin - iuliancalciu@gmail.com
Bogdan Brînzei - bogdan.brinzei@ymail.com Vladimir Oltean - olteanv@gmail.com Mihai Crăciunescu - mihaiacr@gmail.com Andrei Tiberiu Jurbă - andreijurba@yahoo.com
EURO STANDARD PRESS 2000 srl Tel.: +40 (0) 31 8059955 Mobil: 0722 707-254 office@esp2000.ro www.esp2000.ro
O parte din articolele prezentate în această ediţie au fost realizate de către tinerii pasionaţi din cadrul laboratoarelor:
CUI: RO3998003 J03/1371/1993 Tiparul executat la Tipografia Everest
2
ROBOLAB - wonderbots.cs.pub.ro
Cititorii interesaţi de achiziţionarea circuitelor imprimate PCB ale montajelor “Kit didactic Titan32” şi “Kit robot DragonFLY” sunt rugaţi să se adreseze redacţiei noastre. De asemenea, prin intermediul redacţiei noastre, circuitele aplicaţiilor menţionate mai sus pot fi achiziţionate complet echipate.
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
hexacopter (II) În acest număr continuăm cu programarea, calibrarea și montarea ESC-urilor, armarea motoarelor, programarea FC-ului, prezentarea modurilor de zbor și stabilirea valorilor regulatorului de tip PID pentru algoritmul de autostabilizare al dronei. În acest scop veți avea nevoie de câteva programe dedicate și de cunoștințe minime privind programarea microcontrolerelor prin ISP (In-System Programming), interfața purtând denumirea de SPI (Serial Peripheral Interface). Autori: Alex Aungurencei - alex.aungurencei@gmail.com; Bogdan Brînzei - bogdan.brinzei@ymail.com PROGRAMAREA ESC-urilor Acest pas necesită suport hardware și software: un programator pentru microcontrolere AVR și softul necesar rescrierii memoriei Flash a ESC-urilor. Programatorul folosit de noi este un USBasp (Figura 1), dar puteți folosi și altele precum AVR MKII, AVRISP STK500 etc. Printre cele mai folosite softuri pentru programarea ESC-urilor se numără KKmulticopter Flash Tool (pentru care puteți găsi documentația și kit-ul de instalare la adresa: http://lazyzero.de/en/modellbau/kkmulticopterflashtool). Firmware-ul care vă va oferi cel mai bun randament este cel 4
dezvoltat de Simon Kirby și este disponibil odată cu KKmulticopter Flash Tool. Este important să alegeți versiunea de firmware corespunzătoare ESCurilor pe care le folosiți. Astfel, mare atenție trebuie acordată stabilirii tipului de
Figura 1
F E Turi cu care a fost fabricat driver-ul: N-FET sau
P/N-FET. Pentru aceasta, se înlătură învelișul protector din tubul termocontractant al ESC-ului pentru a expune PCB-ul. Dacă toate FET-urile au aceeași serie sunt N-FET-uri, iar dacă au inscripționări care diferă, sunt FET-uri N și P (Figura 21). Optați mereu pentru ESC-uri fabricate doar cu N-FET-uri deoarece au un randament mai bun datorită rezistenței și pierderilor mai mici față de cele construite cu FET-uri N și P. Consultați tabelul de la adresa de internet:
HEXACOPTER
http://wiki.openpilot.org/display/Doc/Rapi dESC+Database pentru a fi siguri că programați driver-ele pentru motoare cu softul potrivit.
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Va apărea o nouă fereastră în care trebuie să alegeți tipul programatorului (USBasp), tipul microcontrolerului de pe ESC (ATMega8) și firmware-ul corespunzător (TGY) (Figura 5). Dați click pe butonul de
CALIBRAREA ESC-urilor Un ESC pe care ați scris un nou firmware nu știe care sunt valorile maxime și minime ale throttle-ului pentru care să comande motorului turație maximă, respectiv minimă.
Figura 5 Figura 2 Pasul următor constă în conectarea programatorului la ESC cu ajutorul interfeței SPI. Există 2 tipuri de mufe pentru interfața SPI: cu 10 pini sau cu 6 pini (Figura 3).
flash – cel cu un cerc verde – și așteptați mesajul “avrdude. exe done. Thank you.” din consolă. După ce ați programat toate ESC-urile, pentru a evita scurturile, îmbrăcați-le în tuburi termocontractante. Opțional, puteți să le adăugați și etichete cu caracteristicile cheie: curent nominal, curent maxim, model etc. (Figura 6). Figura 6
Figura 3 USBasp are soclul pentru mufa cu 10 pini. Trebuie să conectați pinii pentru SPI de pe ESC la aceiași pini ai programatorului. În acest sens, ESC-ul HK-HW30A are pad-uri pentru a lipi pe ele fire, configurația lor fiind ilustrată in Figura 42. Conectați programatorul la PC și deschideți executabilul kkflashtool_win32.exe sau kkflashtool_win64.exe în funcție de sistemul de operare. Figura 4
Din această cauză calibrarea este crucială. Conectați temporar un motor la ESC-ul pe care doriți să îl calibrați. Presupunând că ați introdus emițătorul din modulul FrSky în telecomandă, porniți-o și setați manșa de throttle la maxim (FOARTE IMPORTANT!). Conectați pinul de comandă al ESC-ului pe canalul 3 al receiver-ului FrSky și apoi alimentați ESC-ul direct din acumulator. În acest moment veți auzi un sunet caracteristic format din 3 tonuri, fiecare mai înalt decât precedentul. Uneori, dacă pulsul semnalului este sub 1030μs, un al patrulea ton este generat. Dați throttle la minim, moment în care veți auzi din nou un sunet caracteristic, de această dată format din tonuri de aceeași înălțime. În acest moment puteți să acționați manșa throttle, iar motorul ar trebui să se rotească cu o viteză corespunzătoare. În cazul în care motorul nu emite primul set de sunete atunci când alimentați ESC-ul, înseamnă că nu ați programat corect driverul sau l-ați conectat greșit la receiver. MONTAREA ESC-urilor Această etapă necesită maximum de atenție deoarece ordinea în care lipiți fazele motorului pe ESC îi determină sensul de rotație (vedeți schema de alternanță a sensului motoarelor din numărul trecut). Fazele (A, B, C) le veți găsi etichetate pe firele motoarelor odată ce le achiziționați. În Figura 7 aveți ilustrate cele două configurații pentru rotațiile în sens orar și trigonometric. Ü 5
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Ü
cât mai ușor posibil). Apoi, conectați restul driver-elor, pe rând, astfel: așezați ESC-ul în dreptul brațului corespunzător, dezizolați conductorii dispuși circular (cei lungi) în dreptul firelor de alimentare de la ESC (trebuie să expuneți 1 cm de fir, deci tăiați de jur împrejur cu grijă), înserați o bucată de 2 cm de tub termocontractant pe fiecare dintre firele lungi (plus și minus) pentru a putea izola ulterior lipitura, cu ajutorul unei pensete creați o gaură în lițele expuse, în care introduceți capătul firului de alimentare corespunzător al ESC-ului. Efectuați lipitura și acoperiți-o, ulterior, cu tubul termocontractant sau cu bandă izolieră. Securizați ESC-ul și firele conectate cu bride de plastic, ca în Figura 9.
Figura 7 Urmează conectarea ESC-urilor la acumulatorul LiPo. Evitați să folosiți o placă de distribuție precum cea din Figura 83 deoarece prin ea vor circula curenți mari. Acest lucru va determina apariția unui câmp electromagnetic suficient de puternic pentru a afecta citirile unității IMU de pe FC. Figura 8
În schimb, folosiți fire ce duc direct la acumulator pentru a realiza aceste conexiuni. Alegeți grosimea conductorilor astfel încât aceștia să suporte 60 Amperi, cei de standard 16 AWG fiind optimi (pentru detalii despre standardul AWG și echivalentul lui în sistem metric consultați pagina web: http://en.wikipedia.org/wiki/American_wir e_gauge#Tables_of_AWG_wire_sizes). Dispunerea lor ar trebui să fie una concentrică, astfel: tăiați 2 conductori de culori diferite (pentru plus și minus) de dimensiunea diametrului exterior al plăcii din sticlotextolit. La ei se vor lega plusul și minusul fiecărui ESC. Dispuneți firele de-a 6
lungul razei piesei centrale din sticlotextolit (pe dedesubtul piesei de jos, adică firele să fie expuse în exterior; driverele vor fi dispuse între cele 2 plăci de sticlotextolit, pentru a le proteja). La unul din capetele conductorilor conectați alimentarea primului ESC (îndepărtați mufele de la firele de alimentare ale ESC-urilor, în caz că există, deoarece ne dorim ca hexacopterul să fie
Figura 9
PROGRAMAREA FC-ului Conectați FC-ul la calculator folosind un cablu μUSB – USB. Descărcați software-ul MegaPirate 3.0.1 R3 de la adresa web www.megapirateng.com, secțiunea “source code”. Ca software, am ales să folosim versiunea MegaPirate 3.0.1 R3. MegaPirate este un software open-source care, în ultimii ani, a prins o mare popularitate în rândul amatorilor de multicoptere, oferind o concurenţă semnificativă software-urilor consacrate în domeniu. Pentru a urca software-ul pe controler, aveți nevoie de o versiune de Arduino special modificată pentru CRIUS ce poate fi descărcată din secțiunea “download Firmware”. Instalați și deschideți versiunea Arduino. Din tab-ul ArduPilot selectați MegaPirateNG.
HEXACOPTER
Adăugați întregului proiect: File -> Open > Arducopter -> ArduCopter.pde. Executați modificările ilustrate în Figura 10 asupra fișierului APM_Config.h.
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
GPS Pentru a putea comunica cu controllerul, GPS-ul are nevoie de setările adecvate. Pentru a configura GPS-ul vom folosi
Figura 10 Linia “#define MPNG_BOARD_TYPE CRIUS_V1” setează placa folosită, în cazul nostru CRIUS_V1. Următoarele 4 linii de cod sunt opționale și fac referința la componente adiționale ce pot fi puse pe dronă. Liniile de cod “define COPTER_LEDS ENABLED”, “#define SERIAL2_BAUD 38400”, “#define GPS_PROTOCOL GPS_PROTOCOL_UBLOX” setează modelul modulului GPS folosit (GPS Ublox CN-06), BAUD RATE-ul (38400) și tipul protocolului (UBLOX). Linia “#define FRAME_CONFIG HEXA_FRAME” se referă la tipul cadrului (hexacopter, quadcopter, octocopter). Programați FC-ul. Dacă programul va da o eroare, verificați liniile de cod modificate anterior sau versiunea de Arduino folosită. Mare atenție: versiunea clasică de Arduino NU POATE compila software-ul MegaPirate!! Pentru cei care întâmpină dificultăți în compilarea software-ului puteți folosi MegaPirate FlashTool (Figura 11) ce poate fi descărcat de pe pagina MegaPirate, la secțiunea “Documentation”. Figura 11
programul U-Center. Conectați GPS-ul la calculator printr-un cablu FTDI astfel: RX-ul de la FTDI la TX-ul de la GPS și TX-ul de la GPS la RX-ul de la FTDI, iar VCC și GND la
pinii cu același nume. Prima dată trebuie să verificați setările portului COM pentru a vă asigura că funcționează corect: Figura 124. La pornirea programului ar trebui să vedeți pe ecran cum GPS-ul începe să culeagă informații de la sateliți (liniile albastre semnifică semnalul de la sateliți). Dacă aceste linii sunt întrerupte sau - după câteva minute - GPS-ul nu se stabilizează, înseamnă ca GPS-ul nu a fost conectat corespunzător la PC. Următorul pas îl reprezintă configurarea propriu-zisă a modulului GPS. Descărcați fișierul cu setările GPS-ului de la adresa de internet: https://github.com/jlnaudin/x-drone/ blob/master/GPS%20programing/CRIUS% 20CN-06%20V2%20settings/CN06v2 _def.txt Se accesează meniul GPS Configuration (Figura 134), se încarcă fișierul descărcat anterior și se execută comanda FILE->GPS (Figura 144). Ignorați mesajele de eroare și salvați configurația GPS-ului după fiecare modificare (Figura 154). Din meniul PRT (Ports) setați BAUD RATE 38400 (Figura 16), iar din meniul Rates frecvența de măsurare la 4Hz (Figura 174). Ultima modificare se face în meniul SBAS (Figura 184). Conectați GPS-ul la FC. Ü Figura 12
Figura 13
7
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Ü
În cazul în care folosiți CRIUS AIOP GPS-ul se conectează la pinii RX2-TX2. Modulele adiționale precum OSD (On Screen Display) și Telemetrie se pot conecta la pinii RX1-TX1, respectiv RX3-TX3. REAMINTIM: Pentru orice modul la care comunicația cu FC-ul se realizează prin interfață serială (Rx/Tx) cum sunt GPS-ul, OSD-ul și Telemetria, pinii RX și TX ai modulului se conectează la TX-ul, respec-
tiv RX-ul FC-ului. VCC și GND sunt comune pentru toate modulele (Figura 19)! Pentru a putea vizualiza în timp real parametri controlerului și pentru a face reglajele necesare unui zbor cât mai echilibrat aveți nevoie de o interfață grafică corespunzătoare. Aceasta se numește Mission Planner și vine cu un mediu foarte simplist și intuitiv de programare (Figura 20). Din meniul “Initial Setup -> Mandatory Hardware“ se Figura 14
Figura 15
Figura 16
8
fac setările inițiale. Pentru cadru (frame) alegeți configurația “Plus” (Figura 21). CALIBRAREA ACCELEROMETRULUI Pentru calibrarea accelerometrului este nevoie ca hexacopterul să fie așezat în diferite poziții pe fiecare axă (level, left side, right side etc ). Foarte important este ca pozițiile hexacopterului să fie perpendiculare pe toate axele astfel ca valorile citite de accelerometru să fie cât mai precise (Figura 225). CALIBRAREA MAGNETOMETRULUI Magnetometrul este influențat de liniile de câmp magnetic terestru. Aceste erori pot fi minimizate prin introducerea unei declinații care poate fi ușor calculată cu ajutorul site-ului http://magnetic-declination.com. Valoarea obținută se trece în câmpul “Declination” și apoi se apasă butonul “Live Calibration”. În acest moment trebuie să rotiți continuu hexacopterul pe cele 3 axe în ambele sensuri trigonometric și orar (Figura 236). Giroscopul nu are nevoie de ajustări deoarece el se auto-calibrează la fiecare conectare a bateriei. CALIBRAREA RADIOCOMENZII Calibrarea radiocomenzii decurge rapid dacă totul a fost făcut corect până acum. Toate versiunile mai recente de 2.9 au un standard prestabilit de comunicare între controler și receptorul radiocomenzii denumit PPM (toate canalele din telecomandă ies pe același pin). Marea majoritate a receptoarelor de pe piață, însă, au standard PWM (fiecare canal din telecomandă are propriul pin de ieșire pe PCB ). Dacă atunci când accesați meniul “Radio Calibration” nu este afișat niciun semnal înseamnă că receptorul dumneavoastră comunică PWM, iar placa este setată pe PPM. Pentru a rezolva această problemă trebuie să modificați codul sursă al programului de pe FC. În fișierul “Arducopter 3.0.1 r3 \libraries\AP_HAL_MPNG\RCInput_MPN G.cpp” înlocuiți linia #define SERIAL_PPM SERIAL_PPM_ENABLED cu linia #define SERIAL_PPM SERIAL_PPM_DISABLED Schimbarea ordinii canalelor se face tot din același fișier activând linia convenabilă.
HEXACOPTER
Cea mai comună ordine a canalelor este ROLL, PITCH, THROTTLE, YAW, MODE, AUX2, CAMPITCH, CAMROLL. Foarte important este ca și în meniul stației ordinea să fie aceeași (în general A.E.T.R ) (Figura 237).
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
MODURILE DE ZBOR Din meniul “Flight Modes” se pot selecta în timp real programe prestabilite ce vin în ajutorul pilotului. În general, modurile de zbor se aleg cu ajutorul canalului 5 al telecomenzii. În modul “Stabilize” pilotul are controlul total. În general, se folosește la setarea PID-urilor și în zborurile incipiente Figura 17
Figura 18
Figura 19
pentru acomodarea cu comenzile dronei. Control total înseamnă că dacă pilotul setează o comandă, drona va interpreta semnalul fără a mai face modificări indiferent de altitudinea de zbor. Este recomandat să folosiți acest mod doar dacă aveți o experiență solidă în calibrarea și pilotarea dronelor. Modul “Alt Hold” permite pilotului controlul total pe PITCH, YAW și ROLL însă altitudinea rămâne constantă indiferent de poziția manșei THROTTLE. Menținerea altitudinii se face cu ajutorul barometrului, astfel că dacă în zona în care pilotați drona presiunea atmosferică variază brusc, hexacopterul va urca sau va coborî în funcție de aceasta. Am menționat că altitudinea nu variază “indiferent” de poziția manșei THROTTLE. Această afirmație este adevărată pentru valori THROTTLE cuprinse între 40% - 60%. Dacă acestea sunt mai mici de 40%, respectiv mai mari de 60%, drona va coborî sau va urca cu o viteză de aproximativ 2.5m/s. Acest mod oferă siguranță în cazul unei schimbări accidentale a poziției manșei de throttle. Modul “Loiter” este un mod “Alt Hold” în care toate comenzile sunt blocate, hexacopterul fiind “lipit” pe cer. Spre deosebire de celelalte moduri, acesta folosește și GPS-ul pentru a menține o poziție cât mai exactă. Parametrii pot fi modificați de către pilot însă într-o măsură minimalistă, doar pentru a corecta unele imperfecțiuni de poziție și de altitudine. Modul “RTL: Return to launch” oferă posibilitatea ca hexacopterul să se întoarcă la punctul de lansare independent de comenzile pilotului. Acest mod este dependent de GPS. Înainte de a zbura, asigurați-vă că LED-ul de la GPS este aprins. Modul RTL este foarte folositor în cazul în care pilotul nu își mai poate da seama în ce poziție se află drona sau, din varii motive, acesta nu mai are control asupra ei. Trebuie, însă, să fiți foarte prudenți deoarece, în acest mod, drona va urca la o altitudine prestabilită, iar apoi va veni în linie dreaptă spre poziția de început. Astfel, în cazul în care în drumul ei se vor afla obstacole, aceasta nu le va putea ocoli, coliziunile fiind iminente. De aceea este foarte important ca înainte de a activa acest mod să vă asigurați că între dumneavoastră și dronă nu se află niciun obiect ce ar putea obstrucționa traiectoria dronei. SETAREA PID-urilor Pentru o reglare mai eficientă a PID-urilor se poate selecta din meniul COPTER PIDS funcția canalului 6 ca fiind cea de setare a Ü PID-urilor. 9
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Ü
Astfel că în timp ce zburați în mod “Stabilize”, utilizând canalul 6 (care trebuie să fie pus pe unul din cele 3 potențiometre
ale stației), puteți regla în timp real valoarea PID-ului pe una din direcții. După ce considerați că ați obținut un PID optim,
reveniți la sol și selectați alt parametru de setat și efectuați un nou zbor în care reglați PID-ul aferent. În Figura 24 sunt ilustrate valorile noastre PID. ARMAREA MOTOARELOR ȘI PREGĂTIREA PENTRU ZBOR Pentru a evita unele accidente datorate unei valori accidentale ale THROTTLE-ului, softul este prevăzut cu o secvență de siguranță. Acesta constă în mutarea manșei de YAW (Rudder) la maxim, iar cea de THROTTLE la minim pentru aproximativ 45 secunde (Figura 25). Figura 25
Figura 20
Dacă nu executați întocmai acești pași, FC-ul nu va porni motoarele. Odată ce controlerul vede această secvență de semnale, va considera că sunteți pregătiți de zbor și va arma motoarele. Problema este că semnalele nu ajung mereu la controler, iar armarea nu se poate face decât în acest mod. Principalele motive pentru care controlerul nu armează motoarele: • Canalele nu sunt puse în ordinea corectă (Ailerons. Elevator. Throttle. Rudder). Figura 21
• Valoarea maximă a YAW-ului nu este mai mare de 1600 - 1700. Din unele motive e posibil ca atunci când ați calibrat stația, Figura 22
1 2 3 4 5 6 7 10
Surse http://wiki.openpilot.org/display/Doc/Flashing+Instructions http://static.rcgroups.net/forums/attachments/1/2/8/0/4/4/a4560256-228-hk_ss_25a.jpg http://www.hobbyking.com/hobbyking/store/catalog/31223.jpg https://github.com/jlnaudin/x-drone/wiki/How-to-setup-the-GPS-Ublox-NEO-6M-(Crius)-CN-06-V2 http://copter.ardupilot.com/wp-content/uploads/sites/2/2013/07/accel-calib-positions.jpg http://copter.ardupilot.com/wp-content/uploads/sites/2/2013/07/Compass_LiveCalibration.png http://quadcoptergarage.com/wp-content/uploads/2013/09/Screenshot_083113_123320_PM.jpg
HEXACOPTER
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
valoarea maximă citită pentru YAW să fie mai mică de 1900 - 2000. Această problemă se rezolvă prin recalibrarea stației sau modificarea limitei superioare pentru canalul de YAW (EPA – End Point Adjusment) din meniul stației la o valoare cuprinsă în intervalul 1900 - 2000. • Valoarea THROTTLE este mai mare de 1000 - 1100. Pentru ESC-urile modificate cu soft SimonK, valoarea minimă de armare este aproximativ 1050. Această problemă se rezolvă prin recalibrarea stației sau modificarea limitei inferioare pentru canalul de THROTTLE (EPA – End Point Adjusment) din meniul stației.
Figura 23
• ESC-uri necalibrate corect. Punctele de MIN și MAX nu sunt identice la toate cele 6 drivere de motoare. • Accelerometrul nu este calibrat. • Magnetometrul nu este calibrat sau valorile indicate sunt prea mari și nu îndeplinesc relația: √ ((x^2 + y^2 + z^2)) < 500 • Vreți să zburați în alt mod decât “Stabilize”, iar GPS-ul nu este fixat. În cazul în care, după ce ați verificat toate punctele de mai sus controlerul nu armează motoarele. FC-ul se resetează din terminal, după care se șterge firmware-ul. Pentru aceasta se conectează placa la PC, se lansează MissionPlanner și se conectează la terminal. Din meniul SETUP se tastează comanda RESET. n
Figura 24
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
COMPEC vă oferă o gamă variată de LED-uri LED-urile (Light Emitting Diodes) au marcat probabil cel mai revoluţionar progres de când omul a început să utilizeze electricitatea pentru a face lumină. LED-urile sunt diode semiconductoare, dispozitive electronice ce permit curentului să treacă numai într-o direcţie. Un semiconductor extrem de pur este dopat cu diferite elemente pentru a-i modifica proprietăţile electrice, creând un exces de sarcini pozitive sau negative (regiuni dopate p şi regiuni dopate n). Dioda este formate din două zone diferite aflate în contact, ce formează o joncţiune p-n.
La polarizarea directă a acestei joncţiuni, electronii se deplasează din regiunea n în regiunea p. Energia electronilor este convertită în lumină la trecerea curentului prin joncţiune. Această energie depinde de diferitele tipuri de semiconductoare dopate, definind lungimea de undă a luminii rezultate. LED-urile pentru iluminare au fost dezvoltate prima oară în anii 1960, dar, la început, numai pentru aplicaţii de indicare, adică lumina a ceva ce trebuie văzut.
12
Primele LED-uri au fost roşii, şi au fost utilizate imediat pentru aplicaţii de semnalizare. În anii 1970, spectrul vizibil a continuat să devină mai complet cu verde, galben şi portocaliu, noi aplicaţii continuând să se dezvolte în special cu ecrane de afişare pentru calculatoare, ceasuri digitale şi echipamente de testare.
Anii 1980 au adus dezvoltarea de noi tehnologii LED, bazate pe noi materiale pentru realizarea diodelor, ceea ce a avut ca efect crearea de LED-uri mai eficiente, cu un consum energetic mai mic, dar un nivel de strălucire de până la zece ori mai ridicat. Aceasta a condus la posibilitatea utilizării LED-urilor în semnalizarea în mediul exterior. În anii 1990 dezvoltarea a continuat chiar şi mai rapid, începându-se producerea de noi tipuri de LED-uri de înaltă strălucire (HB-LED), masiv utilizate în special pentru semnalizare în trafic şi alte aplicaţii pentru care LED-urile nu se utilizaseră până atunci. Câţiva ani mai târziu, Nichia, una dintre cele mai importante companii în dezvoltarea de LED-uri, a creat LED-uri albastre de înaltă strălucire. Acesta a fost un pas cheie în
tehnologia LED, deoarece prin acoperirea acestui LED albastru de înaltă strălucire cu fosfor s-a putut realiza primul LED alb, asigurând intrarea definitivă în aplicaţii de iluminare. LED-urile de astăzi au atins înalte nivele de performanţă, ce au întrecut cu mult aşteptările iniţiale. Sistemele cu LED-uri de astăzi pot fi utilizate în majoritatea aplicaţiilor de iluminare şi semnalizare. În ultima perioadă au fost obţinute performanţe chiar şi de peste 100 lumeni per watt, ceea ce însemnă posibilitatea realizării de aplicaţii cu economie energetică foarte importantă.
Aurocon COMPEC a înţeles imediat înaltul potenţial al pieţei aplicaţiilor cu LED-uri, inclusiv în ceea ce priveşte becurile cu LEDuri, fiind în colaborare permanentă cu marii producători mondiali, precum Philips Lighting, GE Lighting, Osram Lighting Systems, RS etc. oferindu-vă soluţiile de iluminare cele mai recente, cu performanţele cele mai bune pentru aplicaţiile voastre.
Aurocon COMPEC SRL www.compec.ro
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Digilent Inc. în Romania ECAS ELECTRO este distribuitor autorizat al produselor Digilent Inc. Pentru a oferi sprijin în mediul universitar studenților și profesorilor, dar și tuturor specialiștilor și celor care au ca hobby electronica, automatica și robotica - ECAS ELECTRO poate livra orice produs de la Digilent Inc. la PREȚURI SPECIALE.
myParts Kit de la Texas Instruments O selecţie de piese din portofoliul de componente analogice TI. Studenții și hobbyștii pot rapid să construiască și să verifice circuite electronice esențiale folosind myParts Kit de la Texas Instruments! Setul de componente cheie din myParts Kit încurajează experimente proprii cu scheme de circuite de bază, contribuind la învățarea productivă și plăcută pentru începători și cei avansați deopotrivă. Pasionații și dezvoltatorii independenți vor găsi util acest Kit, pentru investigarea conceptelor de design electronic. Kit-ul conține o colecție de piese care sunt elementele constitutive ale tuturor aparatelor electronice, inclusiv amplificatoare operaționale, un amplificator de instrumentație, un comparator, regulatoare de tensiune, regulatoare pentru surse de alimentare cu comutare, porți logice digitale, timere, convertoare de date, senzori de temperatură, tranzistoare, rezistoare, condensatoare, LED-uri, switch-uri, un kit de cabluri și altele. myParts Kit permite studenților să facă experimentele care îi ajută să înțeleagă aplicații din viața reală, în domenii cum ar fi gestionarea energiei, amplificare audio, motoare, detectare de lumină, condiționarea semnalelor, achiziție de date și telecomunicații, pentru a numi doar câteva. Proiectele care pot fi construite cu kit-ul includ: • amplificatoare inversoare și ne-inversoare • filtre • repetoare de tensiune • regulatoare • condiționare de semnale • generatoare de semnal cu puls modulat (PWM) • integratoare • diferențiatoare • detectoare de lumină • convertoare de date ... și multe altele Kit-ul este o mare completare la produsul myDAQ National Instruments și instrumentele ELVIS, precum și la Digilent Electronics Explorer Board, pentru învățarea prin efort propriu. Se poate utiliza software-ul de simulare, care este deja disponibil, pentru a simula rezultatele înainte de construirea circuitelor. În plus, în cazul în care se utilizează National Instruments Multisim, aveți capacitatea de a folosi multe dintre aceste dispozitive TI, într-un proiect. myParts Kit poate ajuta utilizatorii să lanseze imediat proiecte avansate, de specialitate, în domeniul energiei regenerabile, bio-medicale, robotică și automatizare, pentru a numi doar câteva aplicații. Pentru aceste sisteme, studenții și hobbyștii pot apela la portofoliul larg de dispozitive semiconductoare oferite de TI, inclusiv microcontrolere, procesoare, soluții de conectivitate wireless, de gestionare a energiei, conversie de date, amplificatoare și logică. Multe dintre dispozitivele analogice sunt sprijinite de kit-uri educaționale disponibile prin Programul universitar TI, cum ar fi Analog System Lab Kit PRO, care vă ajută să înțelegeți blocurile analogice esențiale ale unui sistem electronic.
Digilent Inc. este o filială a National Instruments Corporation www.digilentinc.com
www.ecas.ro
Detalii tehnice: ing. Emil Floroiu emil.floroiu@ecas.ro 13
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Robot Line Follower Enhanced:
Line the price, enhance the performance Concursul “Line Follower Enhanced” presupune construirea unui robot mobil autonom capabil să urmărească un traseu reprezentat de o linie (bandă) de referinţă de culoare închisă (negru) pe o suprafaţă plană de culoare deschisă (alb). Linia este întreruptă local şi, mai mult, robotul este nevoit să ocolească obstacole rigide plasate pe linie, să depăşească un pod pivotant şi să revină, de fiecare dată, la traseul de referinţă. Dificultatea traseului variază în funcţie de concurs, unele fiind foarte şerpuite – trasee de precizie, cu multiple porţiuni cu unghiuri de 90° - sau trasee de viteză caracterizate de curbe cu raze mari şi multiple zone cu linii drepte. Autori: Mihai Crăciunescu - mihaiacr@gmail.com • Andrei Duluta - andrei.duluta@gmail.com • Cristian Dobre - dobrecristian@nighttime.ro În funcţie de tipul traseului, în proiectarea şi construcţia robotului trebuie să se ţină cont de restricţii dimensionale cum ar fi: în cazul traseelor şerpuite, şasiul trebuie să aibă dimensiuni reduse; în cazul traseelor de viteză, un şasiu mai lung favorizează un comportament mai bun din punct de vedere al stabilităţii şi vitezei robotului. În general, traseele mixte sunt cele care ridică dificultăţi semnificative în alegerea unui şasiu care să ofere un bun compromis între viteză, stabilitate şi precizie. Alte elemente importante ce trebuie avute în vederea proiectării şi construcţiei robotului: razele minime ale curbelor traseului de referinţă, unghiul pe care îl formează podul pivotant cu masa de concurs. După evaluarea severă a cerinţelor prezentate, s-a decis proiectarea şasiului cu ajutorul programului Autodesk Inventor 3D CAD, modelând piesele componente, de la senzori la motoare şi roţi, pentru a estima dacă se comportă adecvat în fiecare situaţie la care ar putea fi supuse de-a lungul traseului. Autodesk Inventor, alături de SolidWorks 20
şi Catia, reprezintă câteva dintre cele mai utilizate și mai apreciate programe de proiectare asistată de calculator (CAD) existente, în momentul actual, pe piață. Indiferent că se dorește crearea unei piese, a unui ansamblu format din mai multe componente sau testarea unui sistem mecanic, aceste aplicaţii specializate pun la dispoziţie o gamă largă de comenzi intuitive și foarte puternice cu ajutorul cărora se obține, întrun timp relativ redus, rezultatul dorit. În cazul proiectului descris, Autodesk Inventor a reprezentat legătura dintre concept și realitate. Crearea unui sistem cât mai
Figura 1: Modelarea componentelor
performant ale cărui pierderi, în special de natură fizică, să fie minimizate a constituit scopul avut în vedere pe tot parcursul dezvoltării acestui proiect. S-a pornit de la misiunea pe care o avea de îndeplinit robotul, respectiv aceea de a urmări o referință într-un interval de timp cât mai mic și s-a încercat integrarea tuturor componentelor (șasiu, motoare, baterie, senzori), depăşind constrângerile impuse de acestea. Mulțumită programului celor de la Autodesk, majoritatea problemelor de natură mecanică au putut fi identificate şi remediate înainte de a trece la construirea propriu-zisă a robotului. Pentru început, s-a realizat modelarea în Autodesk Inventor a pieselor care urmau să fie montate pe şasiu. Pe baza cotelor oferite de către producător şi a diferitelor măsurători efectuate, s-a reuşit modelarea motoarelor, a roților, a barei de senzori, a bateriei și a “ball caster-ului” (unele dintre acestea fiind proiectate doar la nivel conceptual), aşa cum se poate vedea în Figura 1. De asemenea, tot în această etapă
LINE FOLLOWER s-au strâns informații în urma unor documentări și a unor simulări în Matlab, cu ajutorul cărora s-au stabilit parametri optimi de lucru pentru componente: puterea și cuplul motoarelor, distanța dintre sol și senzorii infra-roșu, caracteristicile de funcționare ale senzorului de distanță, tipul de microcontroler folosit etc. Şasiul a reprezentat componenta în crearea căreia Inventor a jucat un rol esențial (Figura 2). Odată cunoscute dimensiunile celorlalte elemente și parametrii care trebuie îndepliniți, s-a încercat realizarea unui design care să îmbine, într-un mod cât mai eficient, performanța din punct de vedere digital și mecanic cu un aspect plăcut. Chiar dacă, la prima vedere, ar putea părea simplu de plasat câteva piese pe un șasiu, atunci când există limitări puternice cu privire la gabaritul robotului în raport cu caracteristicile sale funcționale, această operațiune devine un pic mai dificilă.
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
o masă cât mai scăzută și rezistență cât mai mare, fără a fi prea rigid, însă, pentru a evita ruperea sau deteriorarea, în cazul unei coliziuni cu marginea traseului.
robotului a fost necesară construcţia unui PCB care să incorporeze atât componentele pasive cât şi pinii care să facă legătura cu microcontrolerul folosit (alimentare, ground
Figura 3: Şasiul cu elementele principale
Figura 2: Proiectarea şasiului Cu ajutorul modelului creat, posibilele neajunsuri ce ar fi putut fi identificate doar în momentul construirii fizice şi testării robotului (cum ar fi, de ex. senzorii infra-roșu pot pierde referința la urcarea pe rampă din cauza creșterii distanței dintre aceștia și sol) au ieşit la iveală mult mai devreme, ceea ce a permis corectarea rapidă a tuturor erorilor de proiectare (Figura 3 şi Figura 4) Principalele restricţii au fost impuse de: distanţa senzorilor faţa de linie, în conformitate cu specificaţiile tehnice date de producători, cât şi faţă de linia aflată pe podul pivotant; dimensiunea bateriei; dimensiunea bilei de sprijin montate în partea din faţă a robotului; dimensiunea motoarelor, acestea din urmă dictând lăţimea, respectiv limitând suprafaţa pe care pot fi plasate componentele electronice. Datorită constrângerilor impuse, s-a optat pentru utilizarea unor componente reduse dimensional, dar care să ofere performanţele dorite, la un preţ cât mai scăzut. În final, după ce au fost puse cap la cap toate cerințele și limitările fizice şi dimensionale existente, s-a trecut la pasul următor: materializarea modelului virtual. Materialul pentru care s-a optat în cazul șasiului a fost ales în funcție de două constrângeri severe:
Figura 4: Identificarea şi înlăturarea constrângerilor legate de dimensiuni şi poziţionarea componentelor pe şasiu În privinţa selecţiei senzorilor, s-a utilizat un modul Pololu, QTR-8RC, ce conţine opt perechi, fiecare având un LED care emite lumină infraroşie şi un fototranzistor, care o va recepta. Suprafeţele albe reflectă lumina, iar cele negre o absorb; astfel se poate deduce poziţia liniei faţă de centrul robotului dar se poate detecta şi devierea robotului de la traseu precum şi direcţia în care acesta se îndreaptă. Pentru detecţia proximităţii a fost utilizat senzorul de proximitate Sharp 340K datorită rezistenţei acestuia la perturbaţiile luminoase dar şi pentru distanţa de detecţie bună, de până la 40cm. Senzorul de proximitate necesită un circuit exterior format din câteva componente pasive. Având în vedere că senzorul va fi plasat în faţa
şi cel de date). Schema electrică se poate observa în figura de mai jos. Ü
Figura 5: Schemă electrică senzor proximitate
21
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Ü
Pentru deplasarea şi direcţionarea robotului au fost folosite două motoare - micro metal, cu reductor 10:1, fără encoder, pe care le alimentăm de la bateria de 7,4V prin intermediul punţii H, Toshiba TB6612FNG, încorporată în modulul Pololu Baby Orangutan. Ca microcontroler al acestui modul este utilizat ATmega328P, care rulează la frecvenţa de 20MHz, ales datorită dimensiunilor sale reduse şi suportului oferit.
și reducând costurile. Puntea H (Figura 8) poate fi utilizată atât pentru a schimba polaritatea motorului cât și pentru a-l frâna. Frânarea se poate face în două moduri, când motorul se oprește brusc, terminalele acestuia fiind scurtcircuitate, sau prin oprirea de la sine, moment în care motorul este deconectat de la alimentare.
Figura 8: Puntea H
Figura 6: PCB senzor proximitate Majoritatea roboţilor trec semnalele provenite de la senzorii de linie, printr-o serie de comparatoare. Rolul acestora este acela de a compara două tensiuni aplicate pe borna pozitivă, respectiv cea negativă a comparatorului, ieșirea acestuia comportându-se conform următoarei reguli: dacă tensiunea bornei pozitive este mai mare decât intrarea de pe borna negativă, atunci ieșirea este reprezentată de tensiunea de alimentare a acestuia. În caz contrar, ieșirea comparatorului este de 0V.
Pentru a comanda motorul, este necesar ca întrerupătoarele (tranzistoare bipolare sau MOS-FET) S1 și S4 să fie deschise, S2 şi S3 închise, permițând trecerea tensiunii pozitive către motor și deplasarea acestuia într-un sens. Cazul în care S1 și S4 sunt închise, în timp ce S2 și S3 vor fi întreru-
pătoare deschise, va conduce la deplasarea motorului în sens opus. Este necesar ca întrerupatoarele S1 și S2 să nu fie închise simultan, generând un scurtcircuit, asemănator și în cazul perechii S3, S4. Semnificaţia combinaţiilor este integral prezentată în tabelul 1. Stabilizatorul de tensiune are ca intrare o tensiune care poate fluctua în timp, ieșirea fiind reprezentată de un semnal de tensiune continuă, de nivel constant. În construcția robotului, a fost folosit un stabilizator 7805, care are, la intrare, tensiunea oferită de baterie, furnizând, la ieşire, o tensiune constantă de 5V. Ieșirea stabilizatorului de tensiune alimentează microcontrolerul, senzorii și partea de logică a punții H. PCB-ul - Printed Circuit Board, sau circuit imprimat, este utilizat pentru a conecta și fixa componentele utilizate între ele, având ca avantaj rezistența și costul redus, crearea acestuia fiind realizată utilizând software-ul Eagle (Figura 10). În construcția PCB-ului s-a avut în vedere atât dimensiunea acestuia, cât și poziționarea componentelor pentru o accesibilitate facilă. Figura 9: Schema electrică
Figura 7: Schema de funcţionare a comparatorului Sub influența luminii ambientale, ieșirea senzorilor de linie apare sub diverse modificări (exemplu: în cazul luminii naturale, senzorul poate să returneze o valoare de 1.2V, în schimb, la lumina artificială, valoarea devine 1.7V), din acest motiv, la construcția roboților se utilizează un comparator pentru a modifica nivelul logic, prin variația tensiunii, folosind un divizor de tensiune cu un potențiometru. La distanța senzorului setată prin proiectarea șasiului, după analiza influenței luminii asupra nivelului logic, se observă că perturbația nu afectează ieșirea logică a senzorilor, prin urmare, se poate evita folosirea comparatoarelor, simplificând astfel schema electrică 22
S1 S2 S3 S4 Rezultat 1
0
0
1
Motorul se mișcă în dreapta
0
1
1
0
Motorul se mișcă în stânga
0
0
0
0
Motorul se oprește de la sine
0
1
0
1
Motorul frânează
1
0
1
0
Motorul frânează
1
1
0
0
Scurtcircuit
0
0
1
1
Scurtcircuit
1
1
1
1
Scurtcircuit
Tabelul 1:
Operațiile posibile cu întrerupătoarele S1-S4
În aceasta privință, conectorii pentru motoare au fost plasați în imediata vecinătate a acestora. Switch-ul folosit la alimentarea robotului și butonul utilizat pentru pornirea robotului au fost plasate la marginea PCB-ului pentru a-l accesa ușor, dar și pentru a evita contactul cu celelalte componente. Schema electrică este prezentată în Figura 9. Folosind PWM (Pulse Width Modulation) se poate genera un semnal dreptunghiular, periodic, de frecvență constantă, având două niveluri de tensiune high - low, dar și
LINE FOLLOWER
un factor de umplere (duty-cycle). PWM este o metodă efectivă de a ajusta puterea trimisă către un consumator, în acest caz motorul de curent continuu.
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
cât de repede se mișcă acesta, deci cât este necesar să se deplaseze pentru a ajunge în poziția vizată. Acest tip de comandă este numită “buclă deschisă”, deoarece durata în care robotul se mișcă nu este ajustată conform poziției actuale a robotului. Comanda în buclă deschisă este potrivită în cazul sistemelor care nu se schimbă sau atunci când acuratețea nu este o caracteristică de importanță majoră. Luând în considerare
interesul se va concentra asupra controlerului PID, utilizat la scară largă pentru majoritatea aplicațiilor. PID – Proportional / Integral / Derivative – prezintă modul în care semnalul de eroare este gestionat. În cazul componentei proporționale, eroarea este multiplicată cu o constantă, pentru componenta integrativă, aceasta este înmulțită cu o constantă, apoi integrată, asemănător și pentru componentă derivativă, care va fi, desigur,
Figura 10: Schema PCB-ului Având un semnal dreptunghiular de frecvenţă cunoscută, singurul parametru care poate fi variat este “Duty Cycle”. Acesta reprezintă procentul din perioada semnalului în care acesta este pe nivel “high”. În Figura 11 de mai jos sunt prezentate formele de undă cu un duty cycle de 10,50 respectiv 90%.
Figura 13: Buclă de reglare posibilitatea ca robotul să devieze de la traseu (cauze mecanice), soluţia este obţinerea informaţiilor despre poziţia robotului (feedback), pentru ca sistemul să facă modificările potrivite. Se va studia eroarea sistemului, ca diferența
derivata după multiplicare. Acestea vor fi însumate pentru a obține output-ul controlerului. Prin modificarea valorilor constantelor, numite și amplificări, se ajustează sensibilitatea sistemului și modul în care răspunde la aceste componente.
Figura 14: Schemă bloc PID Figura 11: Diagrame Duty Cycle 25%, 50%, 75% Adesea, în cazul sistemelor în buclă deschisă, performanța acestora nu satisface propriile cerințe. Un exemplu edificator ar fi situaţia unui robot, care are ca destinaţie x-ul din imagine (Figura 10). Putem calcula
dintre referință – distanța ce trebuie parcursă de către robot, și ieșirea, poziția acestuia. Controlerul va converti semnalul de eroare în comandă, trimiţând-o în sistem, fiind necesar ca eroarea să tindă către zero, cu alte cuvinte ca robotul să se afle în poziţia dorită, sistemul respectând cerinţele. Există multiple tipuri de controlere, însă
Figura 12: Exemplu deplasare robot în linie dreaptă când distanţa d este cunoscută. X-ul negru reprezintă locul unde trebuie să ajungă robotul. X-ul mov reprezintă poziţia în care va ajunge robotul în cazul în care nu aproximăm bine viteza de deplasare. Linia albastră reprezintă traiectoria pe care robotul poate să o aibă datorită suprafeţei de deplasare sau unor probleme mecanice.
Output-ul controlerului poate fi determinat chiar și de una, sau două dintre componente, prin anularea celorlalte amplificări, simplificând controlerul, acesta devenind mai ușor de testat și de implementat. Controlerul PID favorizează creșterea vitezei robotului în urmărirea traseului, calculează vitezele motoarelor, astfel încat ritmul sacadat să fie înlocuit de un răspuns neted. • Valoarea proporțională corespunde poziției robotului față de linie, astfel, dacă acesta este așezat pe centrul liniei, valoarea va fi nulă. În cazul în care robotul se află în stânga liniei, termenul proporționalei va fi reprezentat de un număr pozitiv, iar în dreapta, de un număr negativ. • Componenta integrativă memorează traseul parcurs de robot, reprezentând suma valorilor termenului proporţional, reținute de la începutul deplasării acestuia. Ü 23
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Ü
• Pe de altă parte, componenta derivativă reprezintă rata de schimbare a valorii proporționalei, fiind calculată ca diferența dintre ultimele două valori ale componentei proporționale. Limbajul folosit pentru programarea robotului a fost C. Pololu pune la dispoziţie o serie de biblioteci compatibile cu modulul “Baby Orangutan”, fapt care uşurează munca depusă (PWM, aprinderea LED-urilor etc.). În ceea ce priveşte modul de calcul al erorii, se va “împărţi” virtual bagheta de senzori în două părţi. Pentru fiecare senzor, se asignează o valoare pozitivă dacă senzorul se află în partea
linia se îndepărtează, sau se apropie de centru şi în multiplicarea acestor măsurători cu constantele PID-ului, adunându-se rezultatele, convertite apoi în comenzi către cele două motoare. Eforturile în construcția robotului prin tehnicile prezentate, s-au concretizat în câștigarea locului al II-lea la – Concursul Line Follower, și locul al III-lea la Concursul de Line Follower Enhanced de la Robot Challenge, Oradea, Aprilie 2014. Una dintre problemele acestui design este aderența. La viteze mari în curbe cu unghi drept, robotul tinde să iasă de pe traseu, urmând să se întoarcă, dar pierzând în acest mod timp valoros. O rezolvare a acestei probleme
Figura 15: Poză roboți
din stânga şi o valoare negativă, dacă senzorul se află în partea din dreapta. Mai mult decât atât, senzorii mai aproape de centru vor primi o valoare mai mică faţă de cei din lateral, astfel, eroarea va fi pozitivă sau negativă, depinzând de poziţia robotului faţă de linie, dar şi mai mare, sau mai mică, în modul, în funcţie de distanţa faţă de mijlocul baghetei de senzori. Din cele trei componente ale PID-ului, folosim doar componenta proporţională şi cea derivativă, întrucât nu se efectuează multiple ture ale traseului. Modul de abordare este unul direct, şi constă în măsurarea distanţei faţă de centrul robotului, calculând viteza cu care 24
ar fi adăugarea unui ventilator, care ar crea un plus de aderența, iar viteza ar putea fi, astfel, mărită. Robotul tinde să iasă de pe traseu, datorita inerţiei, cu toate că algoritmul de reglare îi spune acestuia să vireze puternic în direcţia opusă. Ventilatorul va trebui să genereze un “efect de sol” prin aspirarea aerului de sub şasiu, ceea ce ar aduce robotului un plus de stabilitate, iar virajele ar putea fi luate cu o viteză mai mare. Versiunea ulterioară a acestor roboţi va include modificările indicate, testele comparative urmând a confirma (sau nu) măsura în care deficienţele roboţilor au fost corect identificate. n
Câştigaţi cu Electronica Azi
Hobby Trimiteţi la redacţie proiectul unei aplicaţii practice şi aveţi şansa de a câştiga un sistem de evaluare şi dezvoltare Atmel EVK1100 (ATEVK1100) pentru microcontrolerul AT32UC3A0.
Articolul propus spre publicare trebuie să conţină următoarele elemente: • Introducere (~ 50 cuvinte) • Conţinut (~ 1000 cuvinte) • Poză autor şi pentru aplicaţia propusă • Diagrame (schemă electronică, detalii, circuit PCB).
V-aţi dorit vreodată să vă creaţi propriile produse? Aţi visat ca o creaţie virtuală 3D să devină produs adevărat? Acum aveţi această posibilitate cu ajutorul imprimantei 3D K8200 Velleman. Este o imprimantă 3D cu ajutorul căreia puteţi printa obiecte de maximum 20 × 20 × 20cm folosind fir PLA sau ABS (fir din material plastic 3mm). Este o imprimantă extrem de rapidă, fiabilă şi precisă chiar şi atunci când tipăriţi la viteze mari. K8200 este compatibil cu toate software-ele RepRap gratuite şi firmware. Este fabricată din profile de aluminiu şi este uşor de asamblat, lăsând utilizatorul să schimbe în mod liber maşina şi să o modifice după propriul plac. Planşa pe care se printează este încălzită.
Specificaţii: rulmenţi liniari cu bile: 8 şi 10mm (0.314" şi 0.393") n tehnologie: FFF (Fused Filament Fabrication) pentru PLA şi ABS n alimentare: 12V/3A max. n dimensiuni zona printabilă: 20 × 20 × 20cm / 7.87 × 7.87 × 7.87" n viteză tipică de printare: 120mm/s n viteză maximă de printare: 150 ... 300mm/s (în funcţie de obiectul ce urmează a fi printat) n duză de extrudare: 0.5mm n
Conex Electronic s.r.l. Tel.: 021 242.22.06 I
profile extrudate din aluminiu: 27.5mm / 1.08" lăţime n mişcare: 4 motoare pas cu pas NEMA 17 n rezoluţie: - rezoluţie mecanică nominală: • X şi Y: 0.015mm / 590.55 μin (cel mai mic pas de pe placa de printare în direcţia X şi Y) • Z: 0.781 μm / 30.74 μin (cel mai mic pas de pe placa de printare în direcţia Z) - rezoluţia de printare nominală: n
Fax: 021 242.09.79
I
• grosime perete (X, Y): 0.5mm / 0.019" • grosime strat (Z): 0.020 - 0.25mm / 0.0078 - 0.0098" n dimensiuni: - lăţime: 50cm / 19.7" - adâncime: 42cm / 16.5" - înălţime: 62cm / 24.4" - greutate: 9kg / 19.84lbs n software: versiune Repetier 0.84 şi mai nouă n inclus: 5m PLA - eşantion negru
office@conexelectronic.ro
I
www.conexelectronic.ro
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Kit-uri electronice pentru grădina ta
Senzor de nivel apă Kit-ul este util pentru verificarea pătrunderii apei într-o încăpere sau controlarea nivelului de apă într-un vas, rezervor sau bazin. Ori de câte ori cele două fire libere (sau electrozi rezistenți la lichide corozive) fac contact cu apa, se va aprinde un LED de alarmă. Opțional, se poate conecta cu un Kit placă releu (cod B197) care poate porni o pompă sau alte dispozitive. Caracteristici tehnice: • Tensiune operare: 9VDC • Consum: în repaus -10μA, în acțiune: 15mA • Indicator alarmă: LED • Dimensiuni 45 × 16 mm
Kit gard electric
Acest dispozitiv este util pentru protecția împotriva hoților (se atasează la mânerul ușii) sau pentru paza unor animale mici (gard electric). Kit-ul generează un impuls de 3000V din 6VDC. Are nevoie de un transformator standard, de la 220VAC la 12VAC, minim 1A. Unul din fire se conectează la pământ, iar celălalt se leagă la gardul metalic, izolat de pământ. Un animal care atinge pământul și gardul electric în același timp va primi un şoc electric și se va îndepărta.
Caracteristici tehnice: • Tensiune de operare: 6VDC • Consum: 100mA în repaus, până la 1,5A la vârfurile de tensiune • Dimensiuni: 45 × 21 mm
Tel.: 0256-201346 office@oboyle.ro, www.oboyle.ro 26
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Kit-uri electronice pentru grădina ta
Senzor umiditate sol
Acest kit măsoară umiditatea solului folosind principiul rezistenței electrice. Pe măsură ce crește umiditatea solului, scade valoarea rezistenței măsurate, iar punctul de reacție (de exemplu când releul acționează o pompă) este reglat prin intermediul unui potențiometru trimmer. Prin intermediul acestui dispozitiv se poate controla umiditatea solului într-o grădină sau pe o peluză, pornind sau oprind o pompă de irigare ori de câte ori solul devine prea uscat. Senzorul se îngroapă în pământ și poate funcționa până la 20 de metri depărtare de modulul electronic. Caracteristici tehnice: • Tensiune de operare: 12VDC, minim 130mA • Funcții LED: pornit, oprit, pauză • Funcționare: 18 - 30 minute • Dimensiuni kit: 72 × 50 × 28 mm • Dimensiuni senzor: diametru 30 × 64, pini metalici galvanizați: 4 × 40 mm
Tel.: 0256-201346 office@oboyle.ro, www.oboyle.ro 27
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
POLIfest
POLIfest este principalul eveniment de tipul “ziua porților deschise” organizat de o universitatea tehnică din România. Desfășurat în perioada 9-11 aprilie 2014, POLIfest a avut parte și anul acesta de o participare semnificativă, iar pasionații de hardware s-au putut bucura de numeroasele aplicații tehnice. Evenimentul s-a adresat atât viitorilor cât și actualilor studenți ai Universității POLITEHNICA din București. 32
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
33
Electronica Azi HOBBY • Mai, 2014 • Nr. 2
Laboratorul InGeAr − Centrul de performanță în inginerie electrică: Energetică, Automatizări și Robotică − a fost prezent cu un stand central și a expus multe din aplicațiile dezvoltate de studenți din Facultatea de Automatică și Calculatoare și Facultatea de Energetică. La stand au fost prezente o mulțime de aplicații care au fost descrise, de-a lungul timpului, în paginile revistei Electronica Azi Hobby: • Versiunea originală a proiectului POV • Versiunea RGB a proiectului POV – prezentată în numărul curent • Multimetron, împreună cu Standul de eoliene și Panoul foto-voltaic cu orientare automată • Robot DragonFly – kit robotic de line-follower • Robot microSumo • Cub cu LED-uri (atât versiunea cu latura de 3 cât și cea cu latura de 7) • Low power RGB controller • Hexacopter (în numărul curent puteți descoperi detalii despre programare și calibrare) Laboratorul Robolab, din cadrul Facultății de Automatică și Calculatoare, a fost prezent cu 2 quad-coptere, numeroși roboți, dar și cu proiectul GloveMouse (prezentat anterior în Electronica Azi Hobby).