Co je XiaoMi CyberGear mikromotor
Xiaomi CyberGear Micromotor je kompaktní, ale výkonný mikromotor navržený pro pokročilé robotické a bionické aplikace. Vyznačuje se vysokým poměrem točivého momentu k velikosti, rychlou odezvou a přesnou kontrolou, což umožňuje realistické a plynulé pohyby v robotických končetinách a mechanismech. Jeho modulární design a inteligentní řídicí algoritmy usnadňují bezproblémovou integraci do složitých systémů, což ho činí vhodným pro aplikace od bionických protéz až po pokročilá robotická zvířata. Xiaomi zdůrazňuje jeho potenciál vytvářet realističtější a interaktivnější robotické zážitky.
Návod k použití mikromotoru CyberGear
Opatření
-
Používejte jej podle pracovních parametrů uvedených v tomto článku, jinak to způsobí vážné poškození tohoto produktu!
-
Režim řízení nelze přepnout, když je kloub v chodu. Pokud je potřeba přepnout, je nutné před přepnutím odeslat příkaz zastavení.
-
Před použitím zkontrolujte, zda jsou všechny díly neporušené. Pokud některé díly chybí nebo jsou poškozené, obraťte se včas na technickou podporu.
-
Nezapojujte motor bez rozmyslu, abyste se vyhnuli nenapravitelným závadám.
-
Ujistěte se, že při připojování motoru nedochází ke zkratu a že je rozhraní připojeno správně podle požadavků.
Právní upozornění
Před použitím tohoto produktu si uživatel musí pečlivě přečíst tento návod a používat produkt v souladu s obsahem tohoto návodu. Pokud uživatel používá tento produkt v rozporu s obsahem tohoto návodu, společnost nepřebírá žádnou odpovědnost za škody na majetku nebo úrazy osob. Protože tento produkt se skládá z mnoha částí, nedovolte dětem, aby přišly do kontaktu s tímto produktem, aby se předešlo nehodám. Aby se prodloužila životnost produktu, nepoužívejte tento produkt v prostředí s vysokou teplotou a vysokým tlakem. Tento návod se při tisku snažil co nejlépe zahrnout různé úvody k funkcím a pokyny k použití. Nicméně vzhledem k neustálému zlepšování funkcí produktu, změnám designu apod. mohou stále existovat nesrovnalosti s produkty zakoupenými uživateli.
Mohou existovat rozdíly mezi tímto manuálem a skutečným produktem, pokud jde o barvu, vzhled atd. Prosím, odkazujte se na skutečný produkt. Tento manuál je vydán společností Xiaomi nebo jejími místními pobočkami. Xiaomi může kdykoli bez předchozího upozornění provést nezbytná vylepšení a změny tohoto manuálu kvůli tiskovým chybám, nepřesnostem nejnovějších informací nebo vylepšením programů a/nebo zařízení. Takové změny budou nahrány do nové verze tohoto manuálu. Prosím, naskenujte QR kód tohoto manuálu, abyste jej získali. Všechny obrázky slouží pouze k popisu funkcí. Prosím, odkazujte se na skutečný produkt.
Poprodejní politika
Zákaznický servis tohoto produktu je přísně v souladu se "Zákonem o ochraně práv a zájmů spotřebitelů Čínské lidové republiky" a "Zákonem o kvalitě výrobků Čínské lidové republiky". Obsah služby je následující:
Záruční doba a obsah
Uživatelé, kteří si objednají tento produkt prostřednictvím online kanálů, mohou využít službu vrácení bez udání důvodu do sedmi dnů od dne převzetí. Při vrácení zboží musí uživatelé předložit platný doklad o koupi a vrátit fakturu. Uživatelé musí zajistit, aby vrácené zboží zachovalo původní kvalitu a funkčnost, jeho vzhled byl neporušený a ochranné známky a loga zboží samotného i příslušenství byly kompletní. Pokud jsou součástí dárky, musí být vráceny společně. Pokud je produkt uměle poškozen, ručně rozebrán, chybí obalová krabice nebo náhradní díly, vrácení nebude zpracováno. Náklady na logistiku spojené s vrácením zboží hradí uživatel (viz "Standardy účtování poprodejního servisu" pro standardy účtování). Pokud uživatel nezaplatí logistické poplatky, bude skutečná částka odečtena z částky vrácení. Zaplacená cena bude uživateli vrácena do sedmi dnů od data převzetí vráceného zboží. Způsoby vrácení peněz jsou stejné jako způsoby platby. Konkrétní datum přijetí může být ovlivněno faktory, jako jsou banky a platební instituce.
Pokud dojde k poruše výkonu bez poškození způsobeného člověkem do 7 dnů od dne následujícího po dni, kdy uživatel podepíše převzetí, servisní centrum Xiaomi po prodeji vyřídí vrácení zboží pro uživatele po kontrole a potvrzení. Při vrácení produktu musí uživatel předložit platný doklad o koupi a vrácenou fakturu. Jakékoliv dárky musí být vráceny společně.
Pokud dojde k poškození nebo selhání výkonu, které není způsobeno člověkem, během 7 až 15 dnů od dne následujícího po dni, kdy uživatel podepíše převzetí, servisní centrum Xiaomi po prodeji vyřídí výměnu za uživatele a po kontrole a potvrzení vymění celý set produktů. Po výměně bude doba tříletého záruky produktu přepočítána.
Od 15 dnů do 365 dnů ode dne následujícího po dni, kdy uživatel podepíše převzetí, po kontrole a potvrzení servisním střediskem Xiaomi, se jedná o vadný výrobek samotný a mohou být poskytnuty bezplatné opravné služby. Vyměněný vadný výrobek patří společnosti Xiaomi. Nevady výrobku budou vráceny v původním stavu. Tento výrobek opouští továrnu po absolvování různých přísných testů. Pokud dojde k jakékoli vadě kvality, která nesouvisí s výrobkem samotným, máme právo odmítnout žádost uživatele o vrácení nebo výměnu.
Pokud je záruční politika v tomto manuálu v rozporu se záruční politikou obchodu, platí záruční politika obchodu.
Pravidla bez záruky: Následující situace nejsou kryty zárukou:
Překračuje záruční dobu omezenou záručními podmínkami.
Poškození produktu způsobené nesprávným použitím bez dodržení pokynů.
Poškození způsobené nesprávnou obsluhou, údržbou, instalací, úpravami, testováním a jiným nevhodným použitím.
Konvenční mechanické ztráty a opotřebení způsobené vadami nekvality.
Poškození způsobená abnormálními pracovními podmínkami, včetně, ale nikoli výlučně, pádu, nárazu, ponoření do kapaliny, násilného nárazu atd.
Škody způsobené přírodními katastrofami (jako jsou povodně, požáry, zásahy bleskem, zemětřesení atd.) nebo vyšší mocí.
Poškození způsobené používáním nad maximální točivý moment.
Položky, které nejsou originálními produkty Xiaomi, nemusí být schopny poskytnout právní doklad o koupi.
Jiné závady nebo poškození nezpůsobené problémy, jako je návrh produktu, technologie, výroba, kvalita atd.
Používejte tento produkt pro komerční účely.
Pokud nastane výše uvedená situace, uživatelé musí poplatky uhradit sami. Podrobnosti o poprodejní politice skupiny naleznete na: https://www.mi.com/service/serviceAgreement?id=17
Specifikace motoru
1.1 Vzhled a rozměry pro instalaci
1.2 Stav standardního používání
1.2.1 Jmenovité napětí: 24 VDC
1.2.2 Rozsah provozního napětí: 16V—28 VDC
1.2.3 Jmenovitá zátěž (CW): 4 N.m
1.2.4 Směr otáčení: CW/CCW z pohledu směru hřídele
1.2.5 Poloha při používání: Směr osy je vodorovný nebo svislý
1.2.6 Standardní provozní teplota: 25±5°C
1.2.7 Provozní teplotní rozsah: -20 ~ 50°C
1.2.8 Standardní provozní vlhkost: 65%
1.2.9 Provozní rozsah vlhkosti: 5 ~ 85 %, bez kondenzace
1.2.10 Rozsah skladovací teploty: -30 ~ 70°C
1.2.11 Izolační třída: Třída B
1.3 Elektrické charakteristiky
1.3.1 Volnoběžná rychlost: 296 ot./min ±10%
1.3.2 Proud bez zatížení: 0,5 Arms
1.3.3 Jmenovitá zátěž: 4 N.m
1.3.4 Jmenovitá rychlost zatížení: 240 ot./min ±10 % 1.3.5 Jmenovitý proud zatížení (špičkový): 6,5 A ±10 % 1.3.6 Špičkové zatížení: 12 N.m
1.3.7 Špičkový proud (špičková hodnota): 23A±10%
1.3.8 Izolační odpor/rotorové vinutí: DC 500VAC, 100M Ohmů 1.3.9 Odolnost proti vysokému napětí/rotor a kryt: 600 VAC, 1s, 2mA 1.3.10 Zpětné elektromotorické napětí motoru: 0,054-0,057Vrms/ot/min
1.3.11 Odpor vedení: 0,45Ω±10%
1.3.12 Konstantní moment: 0,87N.m/Arms
1.3.13 Indukčnost motoru: 187-339μH
1.3.14 T-N křivka
1.3.15 Maximální křivka přetížení Podmínky testu:
Teplota okolí: 25°C
Maximální teplota vinutí: 120 °C
Rychlost: 24 ot./min
Maximální křivka zatížení
Maximální doba přetížení (s) vs Točivý moment (N.m)
Testovací data
Zatížení | Provozní doba (s) |
12 | 28 |
11 | 45 |
10 | 60 |
9 | 90 |
8 | 160 |
7 | 320 |
6 | 700 |
5 | 1800 |
4.5 | 2500 |
4 | hodnocené |
1.4 Mechanické vlastnosti
1.4.1 Hmotnost: 317g±3g
1.4.2 Počet pólů: 28 pólů 1.4.3 Počet fází: 3 fáze
1.4.4 Režim pohonu: FOC
1.4.5 Převodový poměr: 7,75:1
Informace o produktu Drive
2.1 Úvod do vzhledu ovladače a specifikace produktu
Integrovaný terminál s napájením 24V a komunikací CAN;
Verze hardwaru a laserové gravírování QR kódu;
Port pro stahování MCU;
Testovací bod CAN komunikace;
Kontrolka;
Montážní otvory; 7. „C, A, B“ jsou svářecí body třífázového vinutí;
Specifikace produktu
Jmenovité provozní napětí | 24VDC |
Maximální povolené napětí | 28VDC |
Jmenovitý provozní proud | 6,5 A |
Maximální povolený proud | 23A |
Spotřeba energie v pohotovostním režimu | ≤18mA |
Přenosová rychlost sběrnice CAN | 1 Mb/s |
Velikost | Φ58mm |
Pracovní teplota prostředí | -20 °C 50 °C |
Maximální teplota povolená řídicí deskou | 80 °C |
Rozlišení kodéru | 14bitová (absolutní hodnota jednoho průjezdu) |
2.2 Definice rozhraní ovladače
2.2.1 Diagram rozhraní ovladače
2.2.2 Doporučené značky a modely rozhraní pohonů
# | Model desky | Výrobce značky | Model konce linky | Výrobce značky |
1 | XT30PB(2+2)-M.G.B | AMASS (AMS) | XT30(2+2)-F.G.B | AMASS (AMS) |
2 | 2,0 mm-2P samice | / | 2,0 mm-2P samec | / |
3 | 2,54mm-4P samice | / | 2,54mm-4P samec | / |
2.2.3 Definice pinů rozhraní ovladače
Napájení a port CAN komunikace
Testovací plocha CAN komunikace
Stažení portu
# | Funkce rozhraní | KOLÍK | Popis |
1 | Napájení a komunikace CAN | 1 | Kladný pól napájení (+) |
2 | Záporný pól napájení (-) | ||
3 | Komunikace CAN nízká strana CAN_L | ||
4 | Komunikace CAN vysoká strana CAN_H | ||
2 | Testovací bod CAN komunikace | 1 | Komunikace CAN nízká strana CAN_L |
2 | Komunikace CAN vysoká strana CAN_H | ||
3 | Stažení portu | 1 | SWDIO(data) |
2 | SWCLK(hodiny) | ||
3 | 3V3 (kladný pól 3,3V) | ||
4 | GND (záporná zem) |
2.3 Definice řidiče kontrolka
Modré kontrolní světlo a červená kontrolka napájení
Definice kontrolky
Kontrolka napájení (červené světlo při zapnutí) | Kontrolka napájení slouží k indikaci napájení MCU 3,3V. Když je celkový vstupní výkon 24V, kontrolka se rozsvítí červeně, což dokazuje, že celá síť je napájena normálně. Pokud je napájení 24V, kontrolka nesvítí a napájení je třeba okamžitě odpojit. |
Kontrolka signálu (modré světlo při zapnutí) | Když kontrolka bliká, znamená to, že MCU pracuje normálně a řídicí čip funguje správně. |
2.4 Hlavní komponenty a specifikace
# | Typ komponenty | Model | Množství |
1 | Čip MCU | GD32F303RET6 | 1 KS |
2 | Čip řidiče | 6EDL7141 | 1 KS |
3 | Magnetický enkodér čip | AS5047P | 1 KS |
4 | Termistor | NXFT15XH103FEAB021/NCP18XH103F03RB | 2 KS |
5 | Výkonové MOS tranzistory | JMGG031V06A | 6 KS |
Pokyny k použití ladicího programu (skenování QR kód na konci tištěného manuálu pro získání debuggeru)
3.1 Hardwarová konfigurace
Společný motor používá komunikaci CAN. Jsou zde dvě komunikační linky, které jsou připojeny k debuggeru přes nástroj can-to-USB. Debugger musí mít předem nainstalovaný ovladač ch340 a ve výchozím nastavení pracuje v režimu AT.
Je třeba poznamenat, že jsme debugger vyvinuli na základě konkrétního nástroje can to USB, takže pro ladění je nutné použít náš doporučený nástroj pro sériový port. Pokud jej chcete přenést na jiné platformy debuggeru, můžete se odkazovat na kapitolu 3 manuálu vývoje.
Nástroj can to USB doporučuje použití modulu USB-CAN od YourCee. Hlavička rámce odpovídající protokolu sériového portu je 41 54 a konec rámce je 0D 0A.
3.2 Rozhraní a popis ladicího programu
zahrnují především:
A. Výběr modulu
-
Modul zařízení
-
Konfigurační modul
-
Analytický modul
-
Modul nápovědy
B. Výběr submodulu Zařízení moduly zahrnují
-
Připojte nebo odpojte elektrické zařízení
-
Informace o motorovém vybavení
-
Kalibrace motorového enkodéru
-
Upravit ID CAN motoru
-
Nastavte mechanickou nulovou polohu motoru
-
Aktualizace programu motoru
Konfigurační moduly zahrnují:
-
Tabulka parametrů, můžete zobrazit a upravit parametry motoru
-
Nahrát parametry. Parametry můžete nahrát z motoru do tabulky parametrů
-
Stáhnout parametry. Data z tabulky parametrů můžete stáhnout do motoru
-
Parametry exportu. Data z tabulky parametrů si můžete stáhnout do lokálního
-
Obnovení továrního nastavení, můžete obnovit data v tabulce parametrů na tovární nastavení.
-
Vymazat varování, můžete vymazat chyby motoru, jako je nadměrná teplota atd.
Analytické moduly zahrnují:
-
Osciloskop pro sledování změn parametrů v čase
-
Frekvence, můžete upravit frekvenci zobrazování dat
-
Kanál, můžete nakonfigurovat data k zobrazení
-
Začněte a zastavte kreslení
-
Výstupní data vlnového průběhu do místního
Pomocné moduly zahrnují:
-
Návod k použití, můžete otevřít návod k obsluze
-
O aplikaci, můžete zobrazit informace o softwaru
C. Dotaz na informace o motoru
-
Informace o zařízení
-
Informace o tabulce parametrů
D. Sloupec dat
-
Informace o protokolu
-
Komunikační informace
E. Spusťte oblast ladění
-
Vyberte zařízení
-
Pohodlná pracovní oblast, můžete rychle ovládat otáčení motoru vpřed a vzad
-
Oblast řízení pohybu, která může ovládat motor k provozu v různých režimech
F. Oblast zobrazení submodulu
3.3 Nastavení motoru
3.3.1 Nastavení připojení motoru
Připojte CAN k USB nástroji (nainstalujte ovladač ch340, ve výchozím nastavení pracuje v režimu AT), vyberte modul zařízení, klikněte na podmodul připojení a vyberte odpovídající sériové portové připojení.
3.3.2 Základní nastavení
Upravte číslo ID motoru.
-
Kalibrace magnetického opletu motoru, opětovná instalace motorové desky a motoru nebo přepojení motorových vodičů v jiném pořadí atd. vyžadují opětovnou kalibraci magnetického opletu.
-
Nastavte nulovou pozici (ztracena v případě výpadku napájení) a nastavte aktuální pozici na 0.
-
Aktualizace programu motoru. Po aktualizaci programu motoru klikněte na tlačítko aktualizace a vyberte soubor aktualizace pro provedení upgradu.
3.3.3 Seznam parametrů
Po úspěšném připojení motoru klikněte na modul tabulky parametrů v konfiguračním modulu a všechny parametry se zobrazí v protokolu. Načtení bylo úspěšné, což znamená, že příslušné parametry motoru byly úspěšně přečteny (Poznámka: tabulka parametrů musí být ve stavu pohotovosti motoru. Konfigurujte v tomto stavu, pokud je motor v provozním stavu, tabulka parametrů nemůže být aktualizována). Rozhraní zobrazí elektrické příslušné parametry motoru. Modré parametry jsou interní uložené parametry motoru. Lze je najít přímo za odpovídajícími parametry. Upravte sloupec předchozí hodnoty. Klikněte na Stáhnout parametry pro stažení parametrů z debuggeru do motoru. Klikněte na Nahrát. Parametry mohou nahrát parametry v motoru do debuggeru. Zelené parametry motoru jsou pozorované parametry, což jsou shromážděné parametry, které lze sledovat v reálném čase.
Poznámka: Prosím, neměňte libovolně limit točivého momentu motoru, ochrannou teplotu a čas přehřátí. V důsledku nelegálního použití této knihy, pokud produkt způsobí újmu na lidském těle nebo nevratné poškození kloubů, naše společnost nenese žádnou právní odpovědnost za jakékoli právní následky.
Tabulka parametrů
Funkční kód | Jméno | Typ parametru | Atributy | Maximální hodnota | Minimální hodnota | Aktuální hodnota (pro referenci) | Poznámka |
0x0000 | Jméno | Řetězec | čtení/zápis | ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ | |||
0x0001 | Čárový kód | Řetězec | čtení/zápis | ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ | |||
0x1000 | Verze bootovacího kódu | Řetězec | pouze pro čtení | 0.1.5 | |||
0x1001 | Datum sestavení spouštění | Řetězec | pouze pro čtení | 16. března 2022 | |||
0x1002 | Čas sestavení spouštění | Řetězec | pouze pro čtení | 20:22:09 | |||
0x1003 | Verze kódu aplikace | Řetězec | pouze pro čtení | 0.1.5 | Číslo verze programu motoru | ||
0x1004 | Verze aplikaceGit | Řetězec | pouze pro čtení | 7b844b0fM | |||
0x1005 | Datum sestavení aplikace | Řetězec | pouze pro čtení | 14. dubna 2022 | |||
0x1006 | Čas sestavení aplikace | Řetězec | pouze pro čtení | 20:30:22 | |||
0x1007 | NázevKóduAplikace | Řetězec | pouze pro čtení | dog_motor | |||
0x2000 | echoPara1 | uint16 | Konfigurace | 74 | 5 | 5 | |
0x2001 | echoPara2 | uint16 | Konfigurace | 74 | 5 | 5 | |
0x2002 | echoPara3 | uint16 | Konfigurace | 74 | 5 | 5 | |
0x2003 | echoPara4 | uint16 | Konfigurace | 74 | 5 | 5 | |
0x2004 | echoFreHz | uint32 | čtení/zápis | 10000 | 1 | 500 | |
0x2005 | Mechanický posun | plovák | nastavit | 7 | -7 | 4.619583 | Úhel posunu magnetického enkodéru motoru |
0x2006 | MechPos_init | plovák | čtení/zápis | 50 | -50 | 4.52 | Referenční úhel během počátečního vícenásobného otočení |
0x2007 | limit_torque | plovák | čtení/zápis | 12 | 0 | 12 | Mezní točivý moment |
0x2008 | I_FW_MAX | plovák | čtení/zápis | 33 | 0 | 0 | Aktuální hodnota pole zeslabení, výchozí 0 |
0x2009 | motor_index | uint8 | nastavit | 20 | 0 | 1 | Index motoru, označuje polohu kloubu motoru |
0X200a | CAN_ID | uint8 | nastavit | 127 | 0 | 1 | ID tohoto uzlu |
0x200b | CAN_MASTER | uint8 | nastavit | 127 | 0 | 0 | může hostit ID |
0x200c | ČASOVÝ LIMIT CAN_LIMIT | uint32 | čtení/zápis | 100000 | 0 | 0 | časový limit CAN, výchozí 0 |
0x200d | Přehřátí motoru | int16 | čtení/zápis | 1500 | 0 | 800 | Hodnota teploty ochrany motoru, teplota (stupeň) *10 |
0x200e | nadčas | uint32 | čtení/zápis | 1000000 | 1000 | 20000 | Doba přehřátí |
0x200f | Převodový poměr | plovák | čtení/zápis | 64 | 1 | 7.75 | Převodový poměr |
0x2010 | Tq_caliType | uint8 | čtení/zápis | 1 | 0 | 1 | Nastavení metody kalibrace točivého momentu |
0x2011 | cur_filt_gain | plovák | čtení/zápis | 1 | 0 | 0.9 | Aktuální parametry filtru |
0x2012 | cur_kp | plovák | čtení/zápis | 200 | 0 | 0.025 | Aktuální kp |
0x2013 | cur_ki | plovák | čtení/zápis | 200 | 0 | 0.0258 | elektrický proud ki |
0x2014 | spd_kp | plovák | čtení/zápis | 200 | 0 | 2 | Rychlost kp |
0x2015 | spd_ki | plovák | čtení/zápis | 200 | 0 | 0.021 | rychlost ki |
0x2016 | loc_kp | plovák | čtení/zápis | 200 | 0 | 30 | Poloha kp |
0x2017 | spd_filt_gain | plovák | čtení/zápis | 1 | 0 | 0.1 | Parametry filtru rychlosti |
0x2018 | limit_spd | plovák | čtení/zápis | 200 | 0 | 2 | Rychlostní limit v režimu pozice |
0x2019 | limit_cur | plovák | čtení/zápis | 23 | 0 | 23 | Limit proudu polohy, režimu rychlosti |
0x3000 | timeUse0 | uint16 | pouze pro čtení (výpočetní technika) | 5 | |||
0x3001 | timeUse1 | uint16 | pouze pro čtení (výpočetní technika) | 0 | |||
0x3002 | timeUse2 | uint16 | pouze pro čtení (výpočetní technika) | 10 | |||
0x3003 | timeUse3 | uint16 | pouze pro čtení (výpočetní technika) | 0 | |||
0x3004 | encoderRaw | uint16 | pouze pro čtení (výpočetní technika) | 11396 | Vzorková hodnota magnetického enkodéru | ||
0x3005 | mcuTemp | int16 | pouze pro čtení (výpočetní technika) | 337 | vnitřní teplota mcu *10 | ||
0x3006 | teplota motoru | int16 | pouze pro čtení (výpočetní technika) | 333 | teplota motoru ntc *10 | ||
0x3007 | vBus(mv) | uint16 | pouze pro čtení (výpočetní technika) | 24195 | napětí na přípojnici | ||
0x3008 | adc1Offset | int32 | pouze pro čtení (výpočetní technika) | 2084 | adc Vzorkovací kanál 1 Nulový proudový posun | ||
0x3009 | adc2Offset | int32 | pouze pro čtení (výpočetní technika) | 2084 | adc vzorkovací kanál 2 nulový proudový posun | ||
0x300a | adc1Raw | uint16 | pouze pro čtení (výpočetní technika) | 1232 | adc Vzorkovací hodnota 1 | ||
0x300b | adc2Raw | uint16 | pouze pro čtení (výpočetní technika) | 1212 | adc Vzorkovací hodnota 2 | ||
0x300c | VBUS | plovák | pouze pro čtení (výpočetní technika) | 24.195 | Napětí přípojnice V | ||
0x300d | ID_cmd | plovák | pouze pro čtení (výpočetní technika) | 0 | příkaz id ring, A | ||
0x300e | cmdIq | plovák | pouze pro čtení (výpočetní technika) | 0 | příkaz iq ring, A | ||
0x300f | cmdlocref | plovák | pouze pro čtení (výpočetní technika) | 0 | Příkaz smyčky pozice, rad | ||
0x3010 | cmdspdref | plovák | pouze pro čtení (výpočetní technika) | 0 | Příkaz smyčky rychlosti, rad/s | ||
0x3011 | cmdTorque | plovák | pouze pro čtení (výpočetní technika) | 0 | Příkaz krouticího momentu, nm | ||
0x3012 | cmdPos | plovák | pouze pro čtení (výpočetní technika) | 0 | s příkazem úhlu protokolu | ||
0x3013 | cmdVel | plovák | pouze pro čtení (výpočetní technika) | 0 | s indikátorem rychlosti protokolu ctnostný | ||
0x3014 | otáčení | int16 | pouze pro čtení (výpočetní technika) | 1 | počet kol | ||
0x3015 | modPos | plovák | pouze pro čtení (výpočetní technika) | 4.363409 | Motor nezapočítaný mechanický úhel, rad | ||
0x3016 | mechPos | plovák | pouze pro čtení (výpočetní technika) | 0.777679 | Úhel počítání smyčky na straně zátěže, rad | ||
0x3017 | mechVel | plovák | pouze pro čtení (výpočetní technika) | 0.036618 | rychlost řízení na straně zatížení, rad/s | ||
0x3018 | elecPos | plovák | pouze pro čtení (výpočetní technika) | 4.714761 | Elektrický úhel | ||
0x3019 | to | plovák | pouze pro čtení (výpočetní technika) | 0 | Síťový proud U, A | ||
0x301a | jeden | plovák | pouze pro čtení (výpočetní technika) | 0 | Proud sítě V, A | ||
0x301b | ic | plovák | pouze pro čtení (výpočetní technika) | 0 | Síťový proud W, A | ||
0x301c | klíště | uint32 | pouze pro čtení (výpočetní technika) | 31600 | |||
0x301d | fázeObjednávka | uint8 | pouze pro čtení (výpočetní technika) | 0 | Značky směru kalibrace | ||
0x301e | IQF | plovák | pouze pro čtení (výpočetní technika) | 0 | Hodnota filtru iq, A | ||
0x301f | Teplota desky | int16 | pouze pro čtení (výpočetní technika) | 359 | Teplota na palubě, *10 | ||
0x3020 | intelektuální inteligence | plovák | pouze pro čtení (výpočetní technika) | 0 | původní hodnota iq, A | ||
0x3021 | identifikační číslo | plovák | pouze pro čtení (výpočetní technika) | 0 | id Původní hodnota, A | ||
0x3022 | chybaSta | uint32 | pouze pro čtení (výpočetní technika) | 0 | Hodnota stavu poruchy | ||
0X3023 | varováníSta | uint32 | pouze pro čtení (výpočetní technika) | 0 | Hodnota stavu varování | ||
0x3024 | drv_fault | uint16 | pouze pro čtení (výpočetní technika) | 0 | Hodnota chyby čipu řidiče | ||
0x3025 | drv_temp | int16 | pouze pro čtení (výpočetní technika) | 48 | Hodnota teploty čipu řidiče, stupeň | ||
0x3026 | Uq | plovák | pouze pro čtení (výpočetní technika) | 0 | Napětí na ose q | ||
0x3027 | Ven | plovák | pouze pro čtení (výpočetní technika) | 0 | Napětí na ose d | ||
0x3028 | dtc_u | plovák | pouze pro čtení (výpočetní technika) | 0 | Pracovní cyklus výstupu fáze U | ||
0x3029 | dtc_v | plovák | pouze pro čtení (výpočetní technika) | 0 | Výstupní pracovní cyklus fáze V | ||
0x302a | dtc_w | plovák | pouze pro čtení (výpočetní technika) | 0 | Výstupní pracovní cyklus fáze W | ||
0x302b | v_bus | plovák | pouze pro čtení (výpočetní technika) | 24.195 | vbus v uzavřené smyčce | ||
0x302c | v_ref | plovák | pouze pro čtení (výpočetní technika) | 0 | Uzavřená smyčka vstupního napětí syntézy vq, vd | ||
0x302d | torque_fdb | plovák | pouze pro čtení (výpočetní technika) | 0 | Hodnota zpětné vazby točivého momentu, Nm | ||
0x302e | rated_i | plovák | pouze pro čtení (výpočetní technika) | 8 | Jmenovitý proud motoru | ||
0x302f | limit_i | plovák | pouze pro čtení (výpočetní technika) | 27 | Maximální proudový limit motoru |
3.3.4 Osciloskop
Toto rozhraní podporuje prohlížení a sledování grafu generovaného daty v reálném čase. Pozorovatelná data zahrnují proud motoru Id/Iq, teplotu, výstupní rychlost v reálném čase, polohu rotoru (enkodéru), výstupní polohu atd.
Klikněte na modul osciloskopu v modulu analýzy, vyberte vhodné parametry v kanálu (význam parametrů naleznete v části 3.3.3), nastavte výstupní frekvenci a klikněte na Start kreslení pro pozorování datového spektra, zastavte kreslení pro ukončení pozorování spektra.
3.4 Demo ovládání
běhání po nohou:
Nastavte maximální rychlost, klikněte na Spustit a poté klikněte na JOG pro spuštění motoru v předním a zpětném směru
Přepínání režimu ovládání:
Režim řízení motoru lze převést na rozhraní režimu pohybu.
3.4.1 Režim nulového bodu
Klikněte na přepínač napravo a motor se pomalu vrátí do mechanické nulové polohy.
3.4.2 Režim ovládání provozu
Klikněte na přepínač napravo, poté nastavte pět hodnot parametrů, klikněte na Start nebo Nepřetržité odesílání, motor se vrátí do zpětnovazebního rámce a poběží podle cílového pokynu; znovu klikněte na přepínač napravo a motor se zastaví.
3.4.2 Aktuální režim
Manuálně přepněte aktuální režim, klikněte na přepínací tlačítko vpravo, poté nastavte hodnotu příkazu proudu Iq, spusťte nebo odesílejte nepřetržitě, motor bude následovat příkaz proudu, znovu klikněte na přepínací tlačítko vpravo, motor se zastaví.
Klikněte na přepínač na pravé straně režimu ovládání, zadejte amplitudu a frekvenci sinusového automatického testu, a poté klikněte na přepínač na pravé straně automatického testu sinusovky, a proud iq (A) motoru poběží podle nastavené amplitudy a frekvence.
3.4.3 Režim rychlosti
Manuálně přepněte do rychlostního režimu, klikněte na přepínač vpravo a poté nastavte hodnotu rychlostního příkazu (-30~30rad/s), spusťte nebo odesílejte nepřetržitě, motor bude následovat rychlostní příkaz, znovu klikněte na přepínač vpravo, motor se zastaví.
3.4.4 Režim určování polohy
Ruční přepnutí režimu polohy, klikněte na přepínací tlačítko vpravo, poté nastavte hodnotu příkazu polohy (rad), spusťte nebo odesílejte nepřetržitě, motor bude následovat cílový příkaz polohy, znovu klikněte na přepínací tlačítko vpravo, motor se zastaví. Maximální rychlost sledování polohy můžete upravit nastavením rychlosti.
Klikněte na přepínač na pravé straně režimu ovládání, zadejte amplitudu a frekvenci automatického testu založeného na sinu, a poté klikněte na přepínač na pravé straně automatického testu založeného na sinu. Poloha motoru (rad) se bude řídit nastavenou amplitudou a frekvencí.
3.5 Aktualizace firmwaru
Prvním krokem je kliknout na aktualizaci modulu zařízení a vybrat binární soubor k nahrání; druhým krokem je potvrdit aktualizaci a motor začne aktualizovat firmware. Po dokončení postupu bude aktualizace motoru dokončena a motor se automaticky restartuje.
Protokol komunikace řidiče a pokyny k použití
Komunikace motoru je rozhraní CAN 2.0, s přenosovou rychlostí 1 Mbps a rozšířeným formátem rámce, jak je uvedeno
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Velikost | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | Typ komunikace | Oblast data 2 | Cílová adresa | Oblast data 1 |
Řídicí režimy podporované motorem zahrnují:
-
Režim řízení provozu: zadáno 5 parametrů pro řízení provozu motoru;
-
Aktuální režim: vzhledem k zadanému specifikovanému proudu Iq motoru;
-
Režim rychlosti: vzhledem k určené provozní rychlosti motoru;
-
Režim polohy: Při zadané specifikované poloze motor poběží do této specifikované polohy;
4.1 Popis typu komunikačního protokolu
4.1.1 Získat ID zařízení (typ komunikace 0); Získat ID zařízení a 64bitový jedinečný identifikátor MCU
Rámec požadavku:
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 0 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | 0 |
Rámec odpovědi:
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 0 | ID CAN_motoru | 0xFE | 64bitový jedinečný identifikátor MCU |
4.1.2 Instrukce řízení motoru (typ komunikace 1) v režimu řízení provozu se používají k odesílání řídicích pokynů motoru.
Rámec požadavku:
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 1 | Byte 2: Točivý moment (0 ~ 65535) odpovídající (- 12Nm ~ 12Nm) | ID CAN_motoru | Byte 0 ~ 1: Cílový úhel [0 ~ 65535] odpovídající (-4π ~ 4π) Byte 2 ~ 3: Cílová úhlová rychlost [0 ~ 65535] odpovídá (- 30rad/s ~ 30rad/s) Byte 4 ~ 5: Kp [0 ~ 65535] odpovídá (0,0 ~ 500,0) Byte 6 ~ 7: Kd [0 ~ 65535] odpovídá (0,0 ~ 5,0) |
Rámec odpovědi: Rámec zpětné vazby motoru (viz typ komunikace 2)
4.1.3 Data zpětné vazby motoru (typ komunikace 2) se používají k zpětné vazbě provozního stavu motoru k hostiteli
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 2 | Bit 8 ~ 15: Motor CAN ID Bit 21 ~ 16: Informace o chybě (0 - Ne, 1 - Ano) Bit 21: není kalibrován Bit 20: selhání kódování HALL Bit 19: Selhání magnetického kódování Bit 18: přehřátí Bit 17: nadproud Bit 16: Porucha podnapětí Bit 22 ~ 23: stav režimu: 0: Režim resetu [reset] 1: Režim kalibrace [Calibration] 2: Režim motoru [Run] |
ID_CAN hostitele | Byte 0 ~ 1: Aktuální úhel [0 ~ 65535] odpovídá (-4π ~ 4π) Byte 2 ~ 3: Aktuální úhlová rychlost [0 ~ 65535] odpovídá (-30rad/s ~ 30rad/s) Byte 4 ~ 5: Aktuální točivý moment [0 ~ 65535] odpovídá (-12Nm ~ 12Nm) Byte 6 ~ 7: Aktuální teplota: Teplota (stupně Celsia) )*10 |
4.1.4 Provoz povolení motoru (typ komunikace 3)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 3 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru |
Rámec odpovědi: Rámec zpětné vazby motoru odpovědi (viz typ komunikace 2)
4.1.5 Motor zastaven (typ komunikace 4)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 4 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | Během normálního provozu je třeba datovou oblast vymazat na 0; Když Byte[0]=1: Vymazat chybu; |
Rámec odpovědi: Rámec zpětné vazby motoru odpovědi (viz typ komunikace 2)
4.1.6 Nastavení mechanické nulové polohy motoru (typ komunikace 6) nastaví aktuální polohu motoru na mechanickou nulovou polohu (ztraceno po výpadku napájení)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 6 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | Byte[0]=1 |
Rámec odpovědi: Rámec zpětné vazby motoru odpovědi (viz typ komunikace 2)
4.1.7 Nastavte CAN_ID motoru (typ komunikace 7) pro změnu aktuálního CAN_ID motoru, která bude mít okamžitý účinek.
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 7 | Bit 15 ~ 8: Host CAN_ID Bit 16 ~ 23: Nové CAN_ID motoru |
ID CAN_motoru | Byte[0]=1 |
Rámec odpovědi: Rámec vysílání motoru odpovědi (viz typ komunikace 0)
4.1.8 Čtení jednoho parametru (typ komunikace 17)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 17 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | Byte 0 ~ 1: index, viz 4.1.11 pro seznam parametrů Bajt 2 ~ 3: 00 Bajt 4 ~ 7:00 |
Rámec odpovědi:
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 17 | Bit 15 ~ 8: Motor CAN_ID | ID_CAN hostitele | Byte 0 ~ 1: index, pro seznam parametrů viz 4.1.11 Bajt 2 ~ 3: 00 Byte 4 ~ 7: data parametru, 1 byte dat je v Byte 4 |
4.1.9 Zápis jednoho parametru (typ komunikace 18) (ztraceno po výpadku napájení)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 18 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | Byte 0 ~ 1: index, viz 4.1.11 pro podrobnosti seznamu parametrů Bajt 2 ~ 3: 00 Byte 4 ~ 7: data parametru |
Rámec odpovědi: Rámec zpětné vazby motoru odpovědi (viz typ komunikace 2)
4.1.10 Rámec zpětné vazby poruchy (typ komunikace 21)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 21 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | Byte 0 ~ 3: hodnota chyby (není 0: chyba, 0: normální) Bit 16: Přetížení vzorkování fázového proudu Bit 15 ~ 8: přetížení závada Bit 7: enkodér není kalibrován Bit 5: Přetížení vzorkování proudu fáze C Bit 4: vzorkování proudu fáze B přetížení bit 3: chyba přepětí Bit 2: chyba podnapětí bit1: chyba řídicího čipu bit0: chyba přehřátí motoru, výchozí 80 stupňů Byte 4 ~ 7: varovná hodnota Bit 0: varování před přehřátím motoru, výchozí 75 stupňů |
4.1.11 Změna přenosové rychlosti (typ komunikace 22) (verze 1.2.1.5 může být upravena, prosím, pečlivě se řiďte dokumentem procesu pro její úpravu. Provozní chyby mohou způsobit problémy, jako je nemožnost připojení k motoru a nemožnost aktualizace)
Datové pole | 29bitové ID | 8bajtová datová oblast | ||
Pozice | Bit 28 ~ 24 | Bit 23 ~ 8 | Bit 7 ~ 0 | Bajt 0 ~ 7 |
Popis | 22 | Bit 15 ~ 8: Host CAN_ID | ID CAN_motoru | Byte0: Přenosová rychlost motoru 1: 1 Mb/s 2: 500 kb/s 3: 250 kb/s 4: 125 kb/s |
Rámec odpovědi: Rámec vysílání motoru odpovědi (viz typ komunikace 0)
4.1.12 Čitelný a zapisovatelný seznam jednoho parametru (7019-7020 je čitelný firmwarovou verzí 1.2.1.5)
Index parametrů | název parametru | popsat | typ | Počet bajtů | Možné hodnoty | Povolení |
0x7005 | run_mode | 0: Režim řízení operace 1: Režim polohy 2: Režim rychlosti 3: Aktuální režim |
uint8 | 1 | Voda/R | |
0x7006 | iq_ref | Příkaz aktuálního režimu Iq | plovák | 4 | -23 ~ 23A | Voda/R |
0x700A | spd_ref | Příkaz rychlosti režimu rychlosti | plovák | 4 | -30 ~ 30 rad/s | Voda/R |
0x700B | limit_torque | Mezní točivý moment | plovák | 4 | 0~12Nm | Voda/R |
0x7010 | cur_kp | Kp proudu | plovák | 4 | Výchozí hodnota 0,125 | Voda/R |
0x7011 | cur_ki | Aktuální klíč | plovák | 4 | Výchozí hodnota 0,0158 | Voda/R |
0x7014 | cur_filt_gain | Aktuální koeficient filtru filt_gain | plovák | 4 | 0~1.0, výchozí hodnota W/R 0.1 | Voda/R |
0x7016 | loc_ref | Příkaz úhlu režimu polohy | plovák | 4 | radiace | Voda/R |
0x7017 | limit_spd | Rychlostní limit v režimu pozice | plovák | 4 | 0 ~ 30 rad/s | Voda/R |
0x7018 | limit_cur | Rychlost Poloha Režim Aktuální limit | plovák | 4 | 0 ~ 23 A | Voda/R |
0x7019 | mechPos | Načíst mechanický úhel počítání koncového překrytí | plovák | 4 | radiace | R |
0x701A | IQF | hodnota filtru iq | plovák | 4 | -23 ~ 23A | R |
0x701B | mechVel | Konečná rychlost zatížení | plovák | 4 | -30 ~ 30 rad/s | R |
0x701C | VBUS | napětí sběrnice | plovák | 4 | V | R |
0x701D | otáčení | Počet otáček | int16 | 2 | Počet otáček | Voda/R |
0x701E | loc_kp | kp pozice | plovák | 4 | Výchozí hodnota 30 | Voda/R |
0x701F | spd_kp | Rychlost v km/h | plovák | 4 | Výchozí hodnota 1 | Voda/R |
0x7020 | spd_ki | Rychlost ki | plovák | 4 | Výchozí hodnota 0,002 | Voda/R |
4.2 Pokyny pro použití režimu ovládání
4.2.1 Ukázka programu
Následující poskytuje příklady řízení motorů v různých režimech (jako příklad je použit gd32f303). Následují knihovny, funkce a definice maker pro různé příklady.
#define P_MIN -12.5f #definovat P_MAX 12.5f #define V_MIN -30.0f #definovat V_MAX 30.0f #definovat KP_MIN 0.0f #define KP_MAX 500.0f #definovat KD_MIN 0.0f #definovat KD_MAX 5.0f #define T_MIN -12.0f #definovat T_MAX 12.0f struktura exCanIdInfo{ uint32_t id:8; uint32_t data:16; režim uint32_t:5; uint32_t res:3; }; can_receive_message_struct rxMsg; can_trasnmit_message_struct txMsg = { .tx_sfid = 0, .tx_efid = 0xff, .tx_ft = CAN_FT_DATA, .tx_ff = CAN_FF_EXTENDED, .tx_dlen = 8, }; #define txCanIdEx (((struct exCanIdInfo)&(txMsg.tx_efid))) // Parse extended frame id into custom data structure #define rxCanIdEx (((struct exCanIdInfo)&(rxMsg.rx_efid))) int float_to_uint(float x, float x_min, float x_max, int bits) { float rozpětí = x_max - x_min; float offset = x_min; if(x > x_max) x=x_max; jinak pokud (x < x_min) x = x_min; return (int) ((x-offset)*((float)((1<
✔ Zkopírováno!
Pokyny pro řízení motoru v režimu ovládání provozu (komunikační typ 1)
void motor_controlmode(uint8_t id, float torque, float MechPosition, float speed, float kp, float kd) { txCanIdEx.mode = 1; txCanIdEx.id = id; txCanIdEx.res = 0; txCanIdEx.data = float_to_uint(torque,T_MIN,T_MAX,16); txMsg.tx_dlen = 8; txMsg.tx_data[0]=float_to_uint(MechPosition,P_MIN,P_MAX,16)>>8; txMsg.tx_data[1]=float_to_uint(MechPosition,P_MIN,P_MAX,16); txMsg.tx_data[2]=float_to_uint(speed,V_MIN,V_MAX,16)>>8; txMsg.tx_data[3]=float_to_uint(speed,V_MIN,V_MAX,16); txMsg.tx_data[4]=float_to_uint(kp,KP_MIN,KP_MAX,16)>>8; txMsg.tx_data[5]=float_to_uint(kp,KP_MIN,KP_MAX,16); txMsg.tx_data[6]=float_to_uint(kd,KD_MIN,KD_MAX,16)>>8; txMsg.tx_data[7]=float_to_uint(kd,KD_MIN,KD_MAX,16); can_txd(); }
✔ Zkopírováno!
Rámec zastavení motoru (typ komunikace 4)
void motor_reset(uint8_t id, uint16_t master_id) { txCanIdEx.mode = 4; txCanIdEx.id = id; txCanIdEx.res = 0; txCanIdEx.data = master_id; txMsg.tx_dlen = 8; for(uint8_t i=0;i<8;i++) { txMsg.tx_data[i]=0; } can_txd(); }
✔ Zkopírováno!
Příkaz zápisu parametru režimu motoru (typ komunikace 18, přepínání provozního režimu)
runtime uint8_t; index uint16_t; void motor_modechange(uint8_t id, uint16_t master_id) { txCanIdEx.mode = 0x12; txCanIdEx.id = id; txCanIdEx.res = 0; txCanIdEx.data = master_id; txMsg.tx_dlen = 8; for(uint8_t i=0;i<8;i++) { txMsg.tx_data[i]=0; } memcpy(&txMsg.tx_data[0],&index,2); memcpy(&txMsg.tx_data[4],&runmode, 1); can_txd(); }
✔ Zkopírováno!
Příkaz pro zápis parametru režimu motoru (typ komunikace 18, zápis řídicího parametru)
index uint16_t; referenční číslo s plovoucí čárkou; void motor_write(uint8_t id, uint16_t master_id) { txCanIdEx.mode = 0x12; txCanIdEx.id = id; txCanIdEx.res = 0; txCanIdEx.data = master_id; txMsg.tx_dlen = 8; for(uint8_t i=0;i<8;i++) { txMsg.tx_data[i]=0; } memcpy(&txMsg.tx_data[0],&index,2); memcpy(&txMsg.tx_data[4],&ref,4); can_txd(); }
✔ Zkopírováno!
4.2.2 Režim řízení provozu
Po zapnutí motoru je výchozím režimem ovládání provozu;
Odeslat rámec povolení běhu motoru (typ komunikace 3) -->
Odeslat příkaz řízení motoru v režimu ovládání operace (typ komunikace 1) -->
Přijmout rámec zpětné vazby motoru (typ komunikace 2)
4.2.3 Aktuální režim
Odešlete příkaz pro zápis parametru režimu motoru (typ komunikace 18) a nastavte parametr runmode na 3 --->
Odeslat rámec povolení běhu motoru (typ komunikace 3) -->
Odešlete příkaz pro zápis parametru režimu motoru (typ komunikace 18) a nastavte parametr iq_ref jako přednastavený proudový příkaz
4.2.4 Režim rychlosti
Odešlete příkaz pro zápis parametru režimu motoru (typ komunikace 18) a nastavte parametr runmode na 2 --->
Odeslat rámec povolení běhu motoru (typ komunikace 3) -->
Odešlete příkaz pro zápis parametru režimu motoru (typ komunikace 18) a nastavte parametr limit_cur pro přednastavený příkaz maximálního proudu -->
Odeslat příkaz pro zápis parametru režimu motoru (typ komunikace 18) pro nastavení parametru spd_ref na přednastavený příkaz rychlosti
4.2.5 Režim určování polohy
Odešlete příkaz pro zápis parametru režimu motoru (typ komunikace 18) a nastavte parametr runmode na 1 -->
Odeslat rámec povolení běhu motoru (typ komunikace 3) -->
Odešlete příkaz pro zápis parametru režimu motoru (typ komunikace 18) a nastavte parametr limit_spd na přednastavený příkaz maximální rychlosti -->
Odeslat příkaz pro zápis parametru režimu motoru (typ komunikace 18) pro nastavení parametru loc_ref na přednastavený příkaz pozice
4.2.6 Zastavení provozu
Odeslat rámec zastavení motoru (typ komunikace 4)
Knihovna CyberGear pro M5 stack
https://github.com/project-sternbergia/cybergear_m5/tree/main
cybergear_m5
Knihovna M5 stack pro cybergear
"Pamatujte, s velkou točivý moment přichází velká odpovědnost."
Podporovaný rámec
-
Arduino pro ESP32
Podporované zařízení (ESP32)
-
M5Stack Basic V2.7
H/W komponenty (MCP2515)
H/W komponenty (ESP32 + PWRCAN)
H/W komponenty (ESP32 + CAN transceiver jednotka)
Jak používat oficiální Grafické uživatelské rozhraní nástroj
Tento software vyžaduje specifický CAN na USB modul. Oficiální dokumentace doporučuje USB na CAN modul od YourCee, který podporuje sériový protokol s hlavičkou rámce 41 54 a koncem rámce 0D 0A, ale ten není snadno dostupný, proto jsme hledali alternativu na Aliexpressu. ※ Upozorňujeme, že toto nebude fungovat pro obecné moduly.
Testováno (pro referenci):
Doporučené předem lisované kabely
-
Kabel XT30(2+2)
Jak na to běh ochutnat
Arduino IDE
-
cd ~/Arduino/libraries
-
git clone https://github.com/coryjfowler/MCP_CAN_lib.git
-
git clone https://github.com/Locoduino/RingBuffer.git
-
git clone git@github.com:project-sternbergia/arduino-CAN.git
-
git clone https://github.com/project-sternbergia/cybergear_m5.git
-
Otevřete cybergear_m5/examples/control_mode_example.ino v Arduino IDE
-
Umístěte tento soubor do stejné složky jako control_mode_example.ino (pro Arduino IDE). Pokud chcete použít knihovnu ESP32_CAN, prosím odkomentujte tyto řádky.
-
Sestavte a nahrajte firmware do M5Stack
Ukázkový kód
control_mode_example.ino
Zkontrolujte chování kybernetického vybavení pomocí M5 stacku.
-
Střední tlačítko - Změnit režim ovládání (Režim polohy -> Režim rychlosti -> Režim proudu)
-
Pravé tlačítko - Zvýšit hodnotu ovládání
-
Levé tlačítko - Snížit hodnotu ovládání
cybergear_bilateral.ino
Tento příklad používá dva kybernetické zařízení pro vůdce a následovníka. Před testováním tohoto příkladu prosím změňte ID kybernetického zařízení následovně. Poté napište cybergear_m5/příklady/cybergear_bilateral.ino do m5 stack přes Arduino IDE.
-
vedoucí kybervýzbroj : 0x7F
-
sledovač kybervýbavy : 0x7E
Doporučené články