Obsah:
- Krok 1: Princíp fungovania
- Krok 2: Zostavenie
- Krok 3: Zostavenie
- Krok 4: Navrhnite svoju traťovú trať
- Krok 5: Naprogramujte si kód
- Krok 6: HOTOVO !
Video: Robot sledujúci čiaru založený na PID so zostavou snímača POLOLU QTR 8RC: 6 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Ahoj!
Toto je môj prvý článok o pokynoch a dnes vás zavediem po ceste a vysvetlím vám, ako pomocou senzora QTR-8RC zostaviť linku nasledujúcu za robotom za robotom.
Predtým, ako sa pustíme do stavby robota, musíme pochopiť, čo sa nazýva PID,
Krok 1: Princíp fungovania
Čo je PID ??
Termín PID znamená proporcionálne, integrálne, derivačné. Jednoducho, to, čo robíme so zapojením PID s nasledovaním riadkov, je, dávame robotovi príkaz, aby sledoval čiaru a detekoval zákruty výpočtom chyby zvážením toho, ako ďaleko sa to posunulo mimo trať.
kľúčové pojmy uvedené v dokumentoch polalu
Proporcionálna hodnota je približne úmerná polohe vášho robota vzhľadom na čiaru. To znamená, že ak je váš robot presne vycentrovaný na čiare, očakávame proporcionálnu hodnotu presne 0
Integrovaná hodnota zaznamenáva históriu pohybu vášho robota: je to súčet všetkých hodnôt proporcionálneho výrazu, ktoré boli zaznamenané od spustenia robota
Derivát je rýchlosť zmeny pomernej hodnoty
V tomto návode budeme hovoriť iba o pojmoch Kp a Kd, výsledky je však možné dosiahnuť aj pomocou výrazu Ki. Hodnoty, ktoré získavame zo snímača, nie sú len analógové, ale aj pozičné údaje robota..takže senzor v zásade poskytuje hodnoty od 0 do 2500 v rozsahu od maximálnej odrazivosti po minimálnu odrazivosť, ale zároveň poskytuje aj informácie o tom, ako ďaleko sa robot uviazol od čiary.)
Teraz musíme vziať do úvahy chybový termín. Toto je rozdiel medzi dvoma hodnotami požadovanej hodnoty a aktuálnej hodnoty. (Požadovaná hodnota je hodnota, ktorá zodpovedá „dokonalému“umiestneniu senzorov na vrchole riadkov.) hodnota je okamžité odčítanie senzora. Napríklad: Ak používate tento senzor poľa a používate 8 senzorov, dostanete pozičné čítanie 3500, ak ste na mieste, okolo 0, ak ste príliš ďaleko od linka a okolo 7 000, ak ste príliš praví.). Našim cieľom je vynulovať chybu. Potom môže robot iba plynule sledovať líniu.
Potom príde časť výpočtu,.
1) vypočítajte chybu.
Chyba = požadovaná hodnota - aktuálna hodnota = 3500 - pozícia
Ako používam 8 senzorov. keď je robot perfektne umiestnený, senzor poskytne polohové čítanie 3 500. Teraz, keď sme vypočítali svoju chybu, maržu, ktorou sa náš robot pohybuje po trati, je načase, aby sme chybu preskúmali a podľa toho upravili otáčky motora.
2) určte upravené otáčky motorov.
MotorSpeed = Kp * Chyba + Kd * (chyba - posledná chyba);
LastError = Chyba;
RightMotorSpeed = RightBaseSpeed + MotorSpeed;
LeftMotorSpeed = LeftBaseSpeed - MotorSpeed;
Logicky povedané, chyba 0 znamená, že náš robot je vľavo, čo znamená, že náš robot musí ísť trochu doprava, čo znamená, že pravý motor musí spomaliť a ľavý motor zrýchliť. TOTO JE PID!
Hodnota MotorSpeed je určená zo samotnej rovnice. RightBaseSpeed a LeftBaseSpeed sú rýchlosti (ľubovoľná hodnota PWM 0-255), pri ktorých robot beží, keď je chyba nulová.
Kód, ktorý som pripojil, tiež obsahuje spôsob kontroly pozičných hodnôt snímača, aby ste mohli otvoriť sériový monitor a nahrať kód a sami sa presvedčiť o čiare, ako sa motory otáčajú, keď sa poloha mení.
Ak sa pri implementácii svojho robota stretnete s problémami, skontrolujte, či je a uvidíte zmenou znamienok rovníc !!!
A teraz najnáročnejšia časť ZISTENIE Kp A Kd, musel som stráviť viac ako 1 hodinu, aby som svojho robota dokonale vyladil. Namiesto zadávania náhodných hodnôt som našiel jednoduchšiu metódu, ako to určiť.
- Začnite s kp a Kd rovnajúcim sa 0 a začnite s Kp, najskôr skúste nastaviť Kp na 1 a pozorujte robota. Našim cieľom je nasledovať čiaru, aj keď sa vlní, ak robot prestrelí a stratí čiaru, znížte hodnotu kp..keď robot nemôže navigovať v zákrute a byť spomalený, zvýšte hodnotu Kp.
- Akonáhle sa zdá, že robot trochu sleduje čiaru, upravte hodnotu Kd (hodnota Kd> hodnota Kp) od 1 a hodnotu zvyšujte, kým neuvidíte plynulý chod s menším kolísaním.
- Akonáhle robot začne nasledovať čiaru, zvýšte rýchlosť a zistite, či je schopný udržať čiaru a sledovať ju.
Majte na pamäti, že rýchlosť má priamy vplyv na ladenie PID a niekedy možno budete musieť znova naladiť rýchlosť svojho robota.
Teraz sa môžeme dostať k stavbe nášho robota.
Krok 2: Zostavenie
Arduino atmega 2560 s káblom USB - to je hlavný používaný mikrokontrolér.
Podvozok- na podvozok robota som použil 2 kruhové akrylové platne, ktoré sa používajú na iný projekt, ktorý je na to ideálny. Pomocou matíc a skrutiek som postavil dvojpodlažný podvozok, aby som mohol k hornej doske pripevniť ďalšie moduly. Alebo môžete použiť dostupný podvozok.
www.ebay.com/itm/2WD-DIY-2-Wheel-Drive-Rou…
Mikrometálne prevodové motory- robot potreboval rýchlo sa otáčajúce motory, aby sa vyrovnal s rutinou PID, preto som použil motory s výkonom 6 V 400 ot / min a vhodné uchopiteľné kolesá.
www.ebay.com/itm/12mm-6V-400RPM-Torque-Gea…
www.ebay.com/itm/HOT-N20-Micro-Gear-Motor-…
Pole senzorov QTR 8Rc - to je možné použiť na sledovanie riadkov, ako už bolo spomenuté, myslím si, že teraz máte jasnú predstavu o tom, ako ovládať pole senzorov pomocou PID. Kód je veľmi jednoduchý a pomocou existujúcich arduino knižníc budete môcť vybudovať rýchleho nasledovníka linky.
www.ebay.com/itm/Pololu-QTR-8RC-Reflectanc…
TB6612FNG Motorový ovládač-Chcel som použiť motorový ovládač, ktorý dokáže rýchlo zvládnuť zákruty a meniť smer, ktorý je schopný efektívne zabrzdiť motory, keď signál PWM klesne.
www.ebay.com/itm/Pololu-Dual-DC-Motor-Driv…
Batéria Lipo- na napájanie robota sa používa lipo batéria 11,1 V. Aj keď som použil lipo batériu 11,1 V, táto kapacita je väčšia, ako je potrebné pre arduino a motory. Ak nájdete svetlo vážený 7,4 V lipo batéria alebo 6V Ni-MH batéria bude perfektná. Z tohto dôvodu musím na konverziu napätia na 6V použiť prevodník buck.
11,1 V-https://www.ebay.com/itm/High-Capacity-11-1V-2200…
7,4 V-
Modul prevodníka Buck-https://www.ebay.com/itm/1PCS-DC-DC-LM2596-power-…
Okrem toho potrebujete prepojovacie vodiče, matice a skrutky, skrutkovače a elektrické pásky a tiež spony na zips, aby ste sa uistili, že je všetko na svojom mieste.
Krok 3: Zostavenie
pomocou matíc a skrutiek pripevnite motory a malé koliesko k doske a potom na podvozok namontujte snímač QTR, ovládač motora, dosku arduino a nakoniec batériu.
Tu je perfektný diagram, ktorý som našiel na internete a ktorý vám hovorí, ako by sa malo nadviazať spojenie.
Krok 4: Navrhnite svoju traťovú trať
Teraz sa zdá, že váš projekt je takmer na konci. Pretože v poslednej fáze potrebujete na testovanie svojho robota malú arénu. Použil som náhodnú čiaru s bielou čiarou o šírke 3 cm na čiernom pozadí. Uistite sa, že ste všetko dobre prilepili. A zatiaľ sa vyhnete 90 uhlovým krížom a prierezom, pretože je to komplikovaný prípad kódovania.
Krok 5: Naprogramujte si kód
1. Stiahnite a nainštalujte Arduino
Desktop IDE
· Okná -
· Mac OS X -
· Linux -
2. Stiahnite a prilepte súbor poľa senzora QTR 8 RC do priečinka knižníc Arduino.
·
· Prilepte súbory na cestu - C: / Arduino / libraries
3. Stiahnite si súbor openLINEFOLLOWING.ino a otvorte ho
4. Odošlite kód na dosku arduino pomocou kábla USB
Krok 6: HOTOVO !
Teraz máte robota sledujúceho čiaru vyrobeného sami.
Dúfam, že tento návod bol užitočný. V prípade akýchkoľvek problémov ma neváhajte kontaktovať na adrese [email protected].
čoskoro sa uvidíme s ďalším novým projektom.
Užite si stavbu !!
Odporúča:
Arduino - Robot na riešenie bludísk (MicroMouse) Robot sledujúci stenu: 6 krokov (s obrázkami)
Arduino | Robot na riešenie bludísk (MicroMouse) Robot po stene: Vitajte, som Isaac a toto je môj prvý robot „Striker v1.0“. Tento robot bol navrhnutý tak, aby vyriešil jednoduché bludisko. V súťaži sme mali dve bludiská a robot bol schopný ich identifikovať. Všetky ostatné zmeny v bludisku môžu vyžadovať zmenu v
Pokročilý robot sledujúci čiaru: 22 krokov (s obrázkami)
Pokročilý robot sledujúci čiaru: Jedná sa o pokročilého robota sledujúceho čiaru založeného na linkovom snímači Teensy 3.6 a QTRX, ktorý som postavil a na ktorom už nejaký čas pracujem. V porovnaní s mojím predchádzajúcim robotom nasledujúcim po rade existuje niekoľko zásadných vylepšení v oblasti dizajnu a výkonu. T
Robot sledujúceho čiaru: 11 krokov (s obrázkami)
Line Follower Robot: Robil som line follower robota s mikroprocesorom PIC16F84A vybaveným 4 IR senzormi. Tento robot môže bežať na čiernobielych čiarach
Robot sledujúci čiaru: 3 kroky
Robot sledujúci čiaru: Robot sledujúci čiaru je všestranný stroj používaný na detekciu a zachytenie tmavých čiar nakreslených na bielom povrchu. Pretože je tento robot vyrobený s využitím dosky, bude veľmi ľahké ho postaviť. Tento systém je možné zlúčiť do
Robot sledujúci objekt EBot8: 5 krokov (s obrázkami)
Robot sledujúci objekt EBot8: Uvažovali ste niekedy o tom, že by ste urobili robota, ktorý by nasledoval kamkoľvek pôjdete? Ale jednoducho by ste nemohli? No … Teraz môžete! Predstavujeme vám robota nasledujúceho za objektom! Choďte na tento návod, dajte lajk a hlasujte a možno to zvládnete aj vy