Turinys:

„Arduino“linijos sekėjų „Wallrides“klasės lenta: 8 žingsniai (su nuotraukomis)
„Arduino“linijos sekėjų „Wallrides“klasės lenta: 8 žingsniai (su nuotraukomis)

Video: „Arduino“linijos sekėjų „Wallrides“klasės lenta: 8 žingsniai (su nuotraukomis)

Video: „Arduino“linijos sekėjų „Wallrides“klasės lenta: 8 žingsniai (su nuotraukomis)
Video: Управление голым реле и управление им с помощью Arduino для нагрузки переменного / постоянного тока 2024, Lapkritis
Anonim
Image
Image

Sekti liniją ant žemės yra per daug nuobodu!

Mes bandėme pažvelgti kitu kampu į linijos pasekėjus ir perkelti juos į kitą plokštumą - prie mokyklos lentos.

Pažiūrėk, kas iš to išėjo!

1 žingsnis: ko jums reikia?

Kaip surinkti? Surinkite važiuoklę
Kaip surinkti? Surinkite važiuoklę

Vienam lenktynių robotui:

Mechanika:

1 x 2WD miniQ robotų važiuoklė; Tai daugiafunkcinė platforma paprastiems dviratiams robotams kurti

2 x 6 V variklis su mikro pavara su redukciniu santykiu 1: 150; Varikliai su reduktoriais, įtraukti į „miniQ“roboto platformą, turi 1:50 pavarų santykį ir yra per greiti. Juos turėtų pakeisti stipresni varikliai, pavyzdžiui, 1: 150 arba didesnis pavaros santykis. Kuo didesnis pavarų skaičius, tuo lėčiau robotas važiuoja lenta, bet mažesnė tikimybė, kad ratai slys

4 x neodimio magnetas; Jums reikia mažų 3 mm storio magnetų, kurių skersmuo yra 12 mm (apvalios formos) arba su 12 mm šonu (kvadrato formos). Be to, magnetai turėtų turėti skylę mašinos varžtui su įdubusia galvute, paprastai skirta M3. Kartais gamintojai nurodo magneto movos stiprumą. Jis turėtų būti nuo 2 kg iki 2,4 kg

Elektronika:

1 x „Arduino UNO“; Borto kompiuteris. Populiariausia prototipų platforma

1 x „Octoliner“modulis; Jūsų lenktynių roboto akys ir žibintai. „Octoliner“yra vėsios linijos jutiklis, susidedantis iš 8 atskirų infraraudonųjų spindulių jutiklių, valdomų per I2C sąsają

1 x variklio skydas; Beveik bet koks modulis jums tinka. Aš naudojau šį analoginį, pagrįstą L298p lustu

1 x 2 elementų 7.4V LiPo baterija; Tai gali suteikti didelę srovę, kurią varikliai turi įveikti magnetų trauką. Dviejų elementų baterijos įtampa yra nuo 7,4 V iki 8,4 V. To pakanka 6 V varikliams ir „Arduino“plokštėje įmontuotam įtampos reguliatoriui. Galima pasirinkti bet kokią talpą. Kuo talpesnė baterija, tuo ilgiau robotas vairuoja, tačiau atkreipkite dėmesį, kad per talpi baterija gali būti sunki. Optimali talpa yra nuo 800 iki 1300 mAh

Įvairūs:

4 x vyrų ir moterų laidai;

4 x M3 tarpiklis arba patinas-patelė, kurių ilgis 10 mm;

3 x M3 tarpiklis arba patinas-patelė, kurių ilgis 25 mm ar daugiau;

4 x M3x8 varžtas su plokščia galvute;

1 x M3 nailoninis varžtas;

1 x M3 nailoninė šešiabriaunė veržlė;

Bet kokie M3 varžtai ir šešiabriaunės veržlės

Klasėms:

Ant sienos pakabinta magnetinė lenta;

Stori juodi magnetiniai lentos žymekliai;

Specialus „LiPo“akumuliatorių įkroviklis arba keli įkrovikliai, jei norite pagaminti daug robotų ir įkrauti juos atskirai

2 žingsnis: kaip surinkti? Surinkite važiuoklę

Iš pradžių turite surinkti „miniQ“važiuoklės platformą, iš anksto pakeisdami variklius iš rinkinio į galingesnius, kurių pavara yra 1: 150. Nepamirškite lituoti laidų prie variklio kontaktų!

3 žingsnis: kaip surinkti? Įdiekite magnetus

Kaip surinkti? Įdiekite magnetus
Kaip surinkti? Įdiekite magnetus

Įdėkite magnetus į miniQ platformą. Naudokite M3x10 atramas, M3x8 arba M3x6 plokščius varžtus ir M3 veržles. Reikalingos montavimo angos parodytos paveikslėlyje.

Tai svarbu!

Atstumų ilgis turi būti tiksliai 10 mm. Įdiegę magnetus, išbandykite platformą ant lentos. Visi keturi magnetai turi būti greta magnetinės plokštės, o guminės padangos ant miniQ platformos ratų turi būti iš anksto įkrautos ir šiek tiek trinti plokštės paviršių.

Rankiniu būdu perkelkite robotą per lentą. Važiavimo metu magnetai neturėtų nukristi nuo lentos. Jei bet koks magnetas nukris, tai reiškia, kad guminės padangos ant ratų maksimaliai pakraunamos. Tokiu atveju padidinkite 10 mm atstumą nuo visų atramų 1 arba 2 mm, pridėdami porą M3 poveržlių ir bandykite dar kartą.

4 žingsnis: kaip surinkti? Pridėti elektroniką

Kaip surinkti? Pridėti elektroniką
Kaip surinkti? Pridėti elektroniką

Sumontuokite „Arduino UNO“plokštę ant platformos naudodami M3x25 atramas, M3 varžtus ir M3 veržles. Nenaudokite trumpų pertraukų, palikite šiek tiek vietos po „Arduino“plokšte laidams ir akumuliatoriui.

Įdiekite variklio skydą „Arduino UNO“lentoje.

Įdiekite „Octoliner“modulį. Prispauskite jį prie platformos, naudodami nailoninį M3 varžtą ir veržlę.

Tai svarbu!

„Octoliner“tvirtinimui nenaudokite metalinių tvirtinimo detalių. Kai kurios tvirtinimo angos ant pertraukimo plokštės yra lituojamos ir naudojamos kaip IO kaiščiai. Norėdami išvengti trumpojo jungimo, naudokite plastikinę tvirtinimo detalę, pavyzdžiui, nailoną.

5 žingsnis: kaip surinkti? Laidai

Kaip surinkti? Laidai
Kaip surinkti? Laidai

Sujunkite visus elektroninius komponentus, kaip parodyta diagramoje. „Octoliner“modulis yra prijungtas per 4 laidus (GND, 5V, SDA, SCL) prie „Arduino UNO“. Prijunkite variklius prie variklio skydo. „LiPo“akumuliatorius yra prijungtas prie išorinio maitinimo šaltinio kontaktų pagalvėlių ant variklio skydo, taip pat prie „Arduino“plokštės VIN kaiščio. Vietoj VIN kaiščio galite naudoti plokštėje esantį 5,5 mm x 2,1 mm maitinimo kištuką.

Tai svarbu!

Naudojant variklio skydą, nereikia jokių laidų. Du variklio kanalai valdomi 4 kaiščiais. 2 PWM kaiščiai yra atsakingi už sukimosi greitį, o 2 DIR kaiščiai - sukimosi kryptį. Paprastai jie jau yra susieti su konkrečiais „Arduino Board“kaiščiais, o jų indeksai gali skirtis priklausomai nuo skydo gamintojo. Pavyzdžiui, mano variklio skydo skaičiai yra D4 D5 (DIR ir PWM pirmajam kanalui) ir D7 D6 (DIR ir PWM antrajam kanalui). Originaliame „Arduino Motor“skydelyje kaiščių numeriai atitinka D12 D3 (DIR ir PWM pirmajam kanalui) ir D13 D11 (DIR ir PWM antrajam kanalui).

Tai svarbu!

„Hobby LiPo“baterijos neturi atvirkštinio poliškumo apsaugos plokštės! Atsitiktinai sutrumpinus teigiamus ir neigiamus kontaktus, gali atsirasti nuolatinis baterijos gedimas arba kilti gaisras.

6 žingsnis: kaip programuoti? XOD

Sukurti tokio lenktynių roboto programą yra dar lengviau nei ją surinkti.

Visuose savo projektuose naudoju XOD vaizdinio programavimo aplinką, kuri leidžia grafiškai kurti „Arduino“programas nerašant kodo. Ši aplinka idealiai tinka greitam įrenginio prototipų kūrimui ar programavimo algoritmų mokymuisi. Sekite XOD dokumentacijos tinklalapį, kad sužinotumėte daugiau.

Norėdami užprogramuoti šį robotą, į savo XOD darbo sritį turite įtraukti tik vieną biblioteką „amperka/octoliner“. Tai būtina darbui su aštuonių kanalų linijos jutikliu.

7 žingsnis: kaip programuoti? Pataisa

Kaip programuoti? Pataisa
Kaip programuoti? Pataisa

Programa pagrįsta PID valdiklio veikimo principu. Jei norite sužinoti, kas yra PID valdiklis ir kaip jis veikia, galite perskaityti kitą straipsnį šia tema.

Pažvelkite į pataisą su robotų programa. Pažiūrėkime, kokie mazgai jame yra ir kaip visa tai veikia.

oktolinerio linija

Tai greito paleidimo mazgas iš „amperka/octoliner XOD“bibliotekos, vaizduojančio „Octoliner“modulį, sekantį liniją. Ji pateikia „linijos sekimo vertę“, kuri yra intervale nuo -1 iki 1. 0 reikšmė rodo, kad linija yra centrinėje padėtyje, palyginti su „Octoliner“plokštės infraraudonųjų spindulių jutikliais (tarp CH3 ir CH4). -1 reikšmė atitinka kraštutinę kairę padėtį (CH0), o 1 -kraštutinę dešinę (CH1). Įkrovos mazgas inicijuoja optronų jutiklius ir nustato numatytuosius ryškumo ir jautrumo parametrus. Šio mazgo įvestys yra įrenginio I2C adresas („Octoliner“plokštės ADDR yra 0x1A) ir eilutės sekimo vertės atnaujinimo dažnis (UPD), aš jį nustatiau nepertraukiamai.

Linijos sekimo vertės tiekiamos tiesiai į pid-controller mazgą.

pid-valdiklis

Šis mazgas įgyvendina PID valdiklio darbą XOD. Tikslinė (TARG) vertė jam yra 0. Tai būsena, kai linija yra tiksliai centre po robotu. Jei linijos sekimo vertė yra 0, PID valdiklis atstatomas per RST kaištį. Jei linijos sekimo reikšmė skiriasi nuo 0, PID valdiklis ją konvertuoja naudodamas Kp, Ki, Kd koeficientus į variklio greičio vertes. Koeficientų vertės buvo pasirinktos eksperimentiškai ir atitinkamai lygios 1, 0,2 ir 0,5. PID valdiklio atnaujinimo dažnis (UPD) nustatytas kaip nuolatinis.

Apdorota PID valdiklio vertė atimama iš 1 ir pridedama prie 1. Tai daroma siekiant dezinchronizuoti variklius, kad praradus liniją jie suktųsi priešingomis kryptimis. Šių mazgų reikšmė 1 reiškia didžiausią variklių greitį. Galite sumažinti greitį įvesdami mažesnę vertę.

h-tiltas-nuolatinis variklis

Pora šių mazgų yra atsakingi už kairiojo ir dešiniojo roboto variklių valdymą. Čia nustatykite PWM ir DIR kaiščių vertes, per kurias veikia jūsų variklio skydas.

„Flash“pataisą ir išbandykite savo lenktynių robotą. Jei tiksliai laikotės surinkimo instrukcijų, jums nereikia keisti pleistro ar reguliuoti PID valdiklio. Nurodyti nustatymai yra gana optimalūs.

Baigtą programą galite rasti bibliotekos „gabbapeople“/lenta lenktynėse

8 žingsnis: demonstracija ir patarimai

Rekomenduojamas: