Satura rādītājs:

Arduino - līdzsvars - līdzsvarošanas robots - Kā pagatavot?: 6 soļi (ar attēliem)
Arduino - līdzsvars - līdzsvarošanas robots - Kā pagatavot?: 6 soļi (ar attēliem)

Video: Arduino - līdzsvars - līdzsvarošanas robots - Kā pagatavot?: 6 soļi (ar attēliem)

Video: Arduino - līdzsvars - līdzsvarošanas robots - Kā pagatavot?: 6 soļi (ar attēliem)
Video: lēta dūmene 2024, Jūlijs
Anonim
Image
Image

Šajā apmācībā mēs iemācīsimies izveidot Arduino balansēšanas (līdzsvara) robotu, kas līdzsvaro sevi. Vispirms varat apskatīt iepriekš sniegto video pamācību.

1. darbība. Nepieciešamā aparatūra

Robota montāža
Robota montāža

Arduino padome (Uno) -

MPU-6050 GY521 Acc+Gyro-https://bit.ly/2swR0Xo

DC 6V 210RPM kodētāja pārnesumu motoru komplekts -

L298N motora draiveris -

Slēdža poga -

M3 sešstūra vītņu starplikas skrūvju uzgriežņu komplekts -

Akrila Perspex lapa -

3.7v 18650 uzlādējams litija jonu+lādētājs-https://bit.ly/2LNZQcl

9V akumulators -

Džemperu vadi -

Karstās līmes pistole -

Arduino sākuma komplekts un piederumi (pēc izvēles): Arduino dēlis un SCM piederumi #01 -

Arduino dēlis un SCM piederumi #02 -

Arduino Basic Learning Starter Kit #01 -

Arduino Basic Learning Starter Kit #02 -

Arduino Basic Learning Starter Kit #03 -

Mega 2560 sākuma komplekts ar apmācību -

Sensora moduļa komplekts Arduino #01 -

Sensora moduļa komplekts Arduino #02 -

2. darbība: robota montāža

Robota montāža
Robota montāža
Robota montāža
Robota montāža
Robota montāža
Robota montāža
  • Izurbiet trīs akrila loksnes četrus stūrus. (1. un 2. attēls)
  • Starp katru akrila loksni būs aptuveni 8 kantimetri / 3,15 collas. (3. attēls)
  • Robota izmēri (aptuveni) 15 cm x 10 cm x 20 cm. (4. attēls)
  • Līdzstrāvas motors un riteņi tiks novietoti robota centrā (viduslīnijā). (5. attēls)
  • L298N motora vadītājs tiks ievietots robota pirmā stāva centrā (viduslīnijā). (6. attēls)
  • Arduino dēlis tiks novietots robota otrajā stāvā.
  • MPU6050 modulis tiks novietots robota augšējā stāvā. (7. attēls)

3. darbība. Savienojumi

Savienojumi
Savienojumi
Savienojumi
Savienojumi

Pārbaudiet MPU6050 un pārliecinieties, ka tas darbojas! Vispirms pievienojiet MPU6050 Arduino un pārbaudiet savienojumu, izmantojot zemāk esošajā apmācībā norādītos kodus. Daha jāparāda sērijas monitorā

Instrukciju pamācība - MPU6050 GY521 6 asu akselerometrs+žiroskops

YouTube apmācība - MPU6050 GY521 6 asu akselerometrs + žiroskops

L298N modulis var nodrošināt Arduino nepieciešamo +5 V, kamēr tā ieejas spriegums ir +7 V vai lielāks. Tomēr es izvēlējos motoram atsevišķu enerģijas avotu

4. darbība. Kā darbojas līdzsvarošana?

Kā darbojas līdzsvarošana?
Kā darbojas līdzsvarošana?
Kā darbojas līdzsvarošana?
Kā darbojas līdzsvarošana?
Kā darbojas līdzsvarošana?
Kā darbojas līdzsvarošana?
  • Lai robots būtu līdzsvarā, motoriem ir jānovērš robota krišana.
  • Šai darbībai ir nepieciešama atgriezeniskā saite un labojošais elements.
  • Atsauksmes elements ir MPU6050, kas nodrošina gan paātrinājumu, gan rotāciju visās trijās asīs, ko Arduino izmanto, lai zinātu robota pašreizējo orientāciju.
  • Korekcijas elements ir motora un riteņu kombinācija.
  • Pašbalansējošais robots būtībā ir apgriezts svārsts.
  • To var labāk līdzsvarot, ja masas centrs ir augstāks attiecībā pret riteņu asīm.
  • Tāpēc es ievietoju akumulatoru augšpusē.
  • Robota augstums tomēr tika izvēlēts, pamatojoties uz materiālu pieejamību.

5. darbība. Avota kods un bibliotēkas

Avota kods un bibliotēkas
Avota kods un bibliotēkas
Avota kods un bibliotēkas
Avota kods un bibliotēkas

Līdzsvara robotam izstrādātais kods ir pārāk sarežģīts. Bet nav jāuztraucas. Mēs mainīsim tikai dažus datus.

Mums ir vajadzīgas četras ārējās bibliotēkas, lai pašbalansējošais robots darbotos

  • PID bibliotēka ļauj viegli aprēķināt P, I un D vērtības.
  • LMotorController bibliotēka tiek izmantota divu motoru darbināšanai ar L298N moduli.
  • Bibliotēka I2Cdev un bibliotēka MPU6050_6_Axis_MotionApps20 ir paredzēta datu lasīšanai no MPU6050.

Lejupielādēt bibliotēkas

PID -

LMotorController -

I2Cdev -

MPU6050 -

Iegūstiet avota kodu -

Kas ir PID?

  • Kontroles teorijā, lai mainīgais (šajā gadījumā robota stāvoklis) būtu nemainīgs, ir nepieciešams īpašs kontrolieris, ko sauc par PID.
  • P - proporcionāls, I - integrālis un D - atvasinājums. Katram no šiem parametriem ir “pieaugums”, ko parasti sauc par Kp, Ki un Kd.
  • PID nodrošina korekciju starp vēlamo vērtību (vai ievadi) un faktisko vērtību (vai izvadi). Atšķirību starp ievadi un izvadi sauc par “kļūdu”.
  • PID regulators samazina kļūdu līdz mazākajai iespējamai vērtībai, nepārtraukti pielāgojot izvadi.
  • Mūsu Arduino pašbalansējošajā robotā ievadi (kas ir vēlamais slīpums grādos) nosaka programmatūra.
  • MPU6050 nolasa robota pašreizējo slīpumu un padod to PID algoritmam, kas veic aprēķinus, lai kontrolētu motoru un noturētu robotu vertikālā stāvoklī.

PID pieprasa, lai pieauguma Kp, Ki un Kd vērtības būtu “noregulētas” uz optimālām vērtībām

Tā vietā mēs manuāli pielāgosim PID vērtības

  1. Padariet Kp, Ki un Kd vienādu ar nulli.
  2. Pielāgot Kp. Pārāk maz Kp liks robotam apgāzties (nepietiek korekcijas). Pārāk daudz Kp liks robotam mežonīgi iet uz priekšu un atpakaļ. Pietiekami labs Kp liks robotam nedaudz iet uz priekšu un atpakaļ (vai nedaudz svārstīties).
  3. Kad Kp ir iestatīts, noregulējiet Kd. Laba Kd vērtība samazinās svārstības, līdz robots būs gandrīz stabils. Turklāt pareizais Kd daudzums saglabās robotu stāvus pat tad, ja tas tiks stumts.
  4. Visbeidzot, iestatiet Ki. Robots svārstīsies, kad tas būs ieslēgts, pat ja Kp un Kd ir iestatīti, bet laika gaitā stabilizēsies. Pareizā Ki vērtība saīsinās robota stabilizācijas laiku.

Ieteikums labākiem rezultātiem

Es iesaku jums izveidot līdzīgu robota rāmi, izmantojot šajā projektā izmantotos materiālus, lai Balance Robot avota kods darbotos stabili un efektīvi.

6. darbība: lai saņemtu atbalstu

Par atbalstu
Par atbalstu
  • Jūs varat abonēt manu YouTube kanālu, lai iegūtu vairāk pamācību un projektu.
  • Jūs varat arī abonēt atbalstu. Paldies.

Apmeklējiet manu YouTube kanālu -

Ieteicams: