Obsah:

Úhloměr: 3 kroky
Úhloměr: 3 kroky

Video: Úhloměr: 3 kroky

Video: Úhloměr: 3 kroky
Video: Konstrukce úhlů bez úhloměru 2024, Červenec
Anonim
Úhloměr
Úhloměr

V tomto pokynu se s vámi podělím o způsob, jak načíst úhel z MPU6050 s malinovým pi pomocí pythonu. Píšu tento článek, protože jsem na internetu nenašel žádný, který by nás vedl k použití MPU6050 k nalezení úhlu s raspberry pi pomocí pythonu. Používáme kalman-filter a fúzní algoritmus, který byl použit v misích Apollo (bez legrace). Díky TJK za vysvětlení tak složitého algoritmu, aby figuríny s malou a slušnou znalostí matematiky (jako já) porozuměly fungování Kalmanova filtru. Pokud vás to zajímá, projděte si jeho blog TJK na blogu s vysvětlením kalman-filtru

Implementoval svůj algoritmus v C ++. Nikde na internetu nemohu najít implementaci tohoto algoritmu v pythonu. Takže jsem si myslel, že udělám implementaci jeho algoritmu v pythonu, aby ho uživatelé pythonu mohli použít k nalezení úhlu s malinovým pi.

Chladný. Začněme.

Krok 1: Je vyžadováno schválení:)

  1. Raspberry pi a jeho závislosti (Prostředky k zobrazení, zdroj energie a víte, co je ještě potřeba)
  2. MPU6050 (samozřejmě)
  3. Propojky - (žena na ženu - závisí na vašem modulu MPU6050)

Krok 2: Pojďme se připojit

Pojďme se spojit
Pojďme se spojit
Pojďme se spojit
Pojďme se spojit

Protokol:

Pokud si nejste vědomi, MPU6050 používá komunikační protokol s názvem I2C (vyslovuje se I na druhou C). Je to velmi výkonný - stačí dva vodiče pro SDA a SCL a maximální počet zařízení, která lze použít současně, je omezen hardwarovými omezeními (Měli byste mít možnost připojit až 128 zařízení). V našem případě funguje malina pi jako hlavní a MPU6050 jako podřízená.

Pokud máte zájem naučit se pracovat s I2C, tady je.

V pořádku. Dejme se do práce.

Pojďme je připojit:

Připojení je celkem jednoduché.

MPU6050 ---------- Raspberry Pi

VCC ---------- 5V (piny 2 nebo 4)

GND ----------- GND (pin 6)

SDA ----------- SDA (kolík 5)

SCL ----------- SCL (pin 3)

Pokud neznáte konfiguraci pinů malinového pi, můžete si to vygooglit. Konfiguraci pinů maliny pi 3 najdete zde.

Můžete se také podívat na schéma připojení a pomoci si. (V diagramu je GND MPU6050 připojen ke 34. kolíku malinového pi. To je také zemnící kolík. Nenechte se proto zmást. Můžete jej připojit jakkoli.)

Krok 3: Pojďme pracovat

Stáhněte si kód:

Kód si můžete stáhnout nebo zkopírovat z tohoto odkazu na git-hub. Upřednostňoval bych stahování před kopírováním, protože python někdy zkopíruje a vloží kód „nekonzistentní používání záložek a mezer v odsazení“. Zjistěte proč zde.

Spusťte program:

Jakmile zkopírujete kód, otevřete AngleOMeter.py a spusťte jej. Ujistěte se, že zkopírujete soubory AngleOMeter.py a Kalman.py a jsou ve stejné složce (adresáři). Jste připraveni jít. Nakloňte modul MPU6050 a úhel na obrazovce by se měl změnit.

Šťastné tvoření!

Doporučuje: