Obsah:

Arduino - Zůstatek - Vyvažovací robot - Jak udělat ?: 6 kroků (s obrázky)
Arduino - Zůstatek - Vyvažovací robot - Jak udělat ?: 6 kroků (s obrázky)

Video: Arduino - Zůstatek - Vyvažovací robot - Jak udělat ?: 6 kroků (s obrázky)

Video: Arduino - Zůstatek - Vyvažovací robot - Jak udělat ?: 6 kroků (s obrázky)
Video: Vysvětlení vyvažovače článků lithiové baterie 18650 2024, Červenec
Anonim
Image
Image

V tomto tutoriálu se naučíme, jak vytvořit robota pro vyvážení (vyvážení) Arduino, který se sám vyvažuje. Nejprve se můžete podívat na video tutoriál výše.

Krok 1: Požadovaný hardware

Sestavení robota
Sestavení robota

Deska Arduino (Uno) -

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

Sada převodových motorů kodéru DC 6V 210RPM -

Ovladač motoru L298N -

Tlačítko přepínače -

Sada šroubů s distančními šrouby se šestihrannou hlavou M3 -

Akrylový Perspex list -

Dobíjecí lithium-iontová nabíječka 3,7v 18650-https://bit.ly/2LNZQcl

9V baterie -

Propojovací vodiče -

Pistole na lepidlo -

Starter Kit a spotřební materiál Arduino (volitelně): Arduino Board & SCM Supplies #01 -

Arduino Board & SCM Supplies #02 -

Základní sada pro učení Arduino #01 -

Základní sada pro učení Arduino č. 02 -

Základní sada pro učení Arduino č. 03 -

Startovací sada Mega 2560 s výukovým programem -

Sada senzorového modulu pro Arduino #01 -

Sada senzorového modulu pro Arduino #02 -

Krok 2: Sestavení robota

Sestavení robota
Sestavení robota
Sestavení robota
Sestavení robota
Sestavení robota
Sestavení robota
  • Vyvrtejte čtyři rohy ze 3 akrylových listů. (Obrázek 1 a 2)
  • Mezi každým akrylovým listem bude asi 8 cantimetrů / 3,15 palce. (Obrázek 3)
  • Rozměry robota (přibližně) 15 cm x 10 cm x 20 cm. (Obrázek 4)
  • Stejnosměrný motor a kola budou umístěny ve středu (střední čáře) robota. (Obrázek 5)
  • Ovladač motoru L298N bude umístěn ve středu prvního patra (střední čára) robota. (Obrázek 6)
  • Deska Arduino bude umístěna ve druhém patře robota.
  • Modul MPU6050 bude umístěn v nejvyšším patře robota. (Obrázek 7)

Krok 3: Připojení

Připojení
Připojení
Připojení
Připojení

Otestujte MPU6050 a ujistěte se, že funguje! Nejprve připojte MPU6050 k Arduinu a otestujte připojení pomocí kódů v níže uvedeném tutoriálu. Daha by měla být zobrazena na sériovém monitoru

Instruktables Tutorial - MPU6050 GY521 6 Axis Accelerometer+Gyro

Výukový program YouTube - 6osý akcelerometr MPU6050 GY521 + gyroskop

Modul L298N může poskytovat +5V potřebných pro Arduino, pokud je jeho vstupní napětí +7 V nebo vyšší. Rozhodl jsem se však mít pro motor samostatný zdroj energie

Krok 4: Jak funguje vyvažování?

Jak funguje vyvažování?
Jak funguje vyvažování?
Jak funguje vyvažování?
Jak funguje vyvažování?
Jak funguje vyvažování?
Jak funguje vyvažování?
  • Aby byl robot v rovnováze, musí motory působit proti pádu robota.
  • Tato akce vyžaduje zpětnou vazbu a opravující prvek.
  • Prvkem zpětné vazby je MPU6050, který poskytuje zrychlení i otáčení ve všech třech osách, což Arduino používá k poznání aktuální orientace robota.
  • Opravným prvkem je kombinace motoru a kola.
  • Samovyvažovací robot je v podstatě obrácené kyvadlo.
  • Může být lépe vyváženo, pokud je těžiště vzhledem k nápravám kol vyšší.
  • To je důvod, proč jsem umístil baterii nahoře.
  • Výška robota však byla zvolena na základě dostupnosti materiálů.

Krok 5: Zdrojový kód a knihovny

Zdrojový kód a knihovny
Zdrojový kód a knihovny
Zdrojový kód a knihovny
Zdrojový kód a knihovny

Kód vyvinutý pro rovnovážného robota je příliš komplikovaný. Není se ale čeho bát. Změníme pouze některá data.

K tomu, aby robot s vlastním vyvažováním fungoval, potřebujeme čtyři externí knihovny

  • Knihovna PID usnadňuje výpočet hodnot P, I a D.
  • K pohonu dvou motorů modulem L298N slouží knihovna LMotorController.
  • Knihovna I2Cdev a MPU6050_6_Axis_MotionApps20 slouží ke čtení dat z MPU6050.

Stáhněte si knihovny

PID -

LMotorController -

I2Cdev -

MPU6050 -

Získejte zdrojový kód -

Co je PID?

  • V teorii řízení, aby byla nějaká proměnná (v tomto případě poloha robota) stabilní, je zapotřebí speciální ovladač nazývaný PID.
  • P pro proporcionální, I pro integrál a D pro derivát. Každý z těchto parametrů má „zisky“normálně nazývané Kp, Ki a Kd.
  • PID poskytuje korekci mezi požadovanou hodnotou (nebo vstupem) a skutečnou hodnotou (nebo výstupem). Rozdíl mezi vstupem a výstupem se nazývá „chyba“.
  • Regulátor PID snižuje chybu na nejmenší možnou hodnotu neustálým nastavováním výstupu.
  • V našem samovyvažovacím robotu Arduino je vstup (což je požadovaný náklon ve stupních) nastaven softwarem.
  • MPU6050 čte aktuální náklon robota a přivádí jej do algoritmu PID, který provádí výpočty pro ovládání motoru a udržování robota ve vzpřímené poloze.

PID vyžaduje, aby zisky Kp, Ki a Kd byly „vyladěny“na optimální hodnoty

Namísto toho upravíme hodnoty PID ručně

  1. Nechte Kp, Ki a Kd rovné nule.
  2. Upravte Kp. Příliš málo Kp způsobí pád robota (nedostatečná korekce). Příliš mnoho Kp způsobí, že se robot bude divoce pohybovat tam a zpět. Dostatečně dobrá Kp způsobí, že se robot bude mírně pohybovat tam a zpět (nebo trochu oscilovat).
  3. Jakmile je Kp nastaveno, upravte Kd. Dobrá hodnota Kd sníží oscilace, dokud nebude robot téměř stabilní. Správné množství Kd také udrží robota stát, i když je tlačen.
  4. Nakonec nastavte Ki. Robot bude při zapnutí oscilovat, i když jsou Kp a Kd nastaveny, ale časem se stabilizuje. Správná hodnota Ki zkrátí čas potřebný ke stabilizaci robota.

Návrh na lepší výsledky

Doporučuji, abyste vytvořili podobný rámec robota pomocí materiálů použitých v tomto projektu, aby zdrojový kód pro Balance Robot fungoval stabilně a efektivně.

Krok 6: Pro podporu

Pro podporu
Pro podporu
  • Můžete se přihlásit k odběru mého kanálu YouTube a získat další návody a projekty.
  • Také se můžete přihlásit k odběru podpory. Děkuji.

Navštivte můj kanál YouTube -

Doporučuje: