Ovládání motorů pomocí Raspberry Pi 5: ovladače, BLDC a desky připravené k použití

  • Raspberry Pi 5 potřebuje specializované ovladače motorů, aby bezpečně zvládal vysoké napětí a proudy.
  • K dispozici jsou desky připravené k použití (SN754410, DRV8833 atd.), které zjednodušují zapojení a přidávají vestavěné ochrany.
  • U BLDC motorů nebo motorů s vysokým výkonem je zásadní dodržovat manuály, spouštěcí sekvence a používat vhodné MOSFETy a ovladače.
  • Plánování napájení, ochran a logistiky nákupu zabraňuje poškození motorů, Raspberry Pi a nákladům na dopravu.

regulátor motoru a Raspberry Pi 5

Pokud uvažujete o použití Raspberry Pi 5 jako mozku pro ovládání motorů, ať už v robotu, mobilní základně nebo bláznivějším DIY projektu, pravděpodobně jste narazili na opakující se problém: Raspberry Pi nemůže přímo napájet ani ovládat motoryAby se předešlo okamžitému spálení čehokoli, je potřeba meziobvod, vhodný regulátor motoru a především dobrá znalost zapojení všech součástí.

V následujících řádcích si podrobně rozebereme několik reálných situací: od pokusu o ovládání BLDC motoru integrovaným regulátorem, který nakonec spálí motor, až po hotové komerční desky pro Raspberry Pi (včetně Pica) a běžné otázky ohledně toho, jak pohybovat motory určitého výkonu, aniž by se deska poškodila. Cílem je, abyste měli jasnou představu o... Který regulátor motoru vybrat pro Raspberry Pi 5, jak ho napájet, jak ho zapojit a jakým chybám se vyhnout když si hrajete s napětím 24 V, proudovými špičkami a budiči H-můstku.

Proč potřebujete regulátor motoru s Raspberry Pi 5

ovládání motoru pomocí Raspberry Pi

První věc, kterou je třeba předpokládat, je, že GPIO piny Raspberry Pi 5 Slouží pouze jako signál.Dodávají velmi malé proudy (řádově miliampérů) při 3,3 V, což je více než dostatečné pro odesílání logických příkazů, ale zcela nedostatečné pro napájení stejnosměrného motoru, BLDC motoru nebo dvojice robotických motorů s převodovkou.

Pokud se pokusíte připojit motor přímo k pinu GPIO nebo k pinu 5V, riskujete poškození desky proudovými špičkami a napěťovou zpětnou vazbou. Proto... řidiči motorů (H-můstky, regulátory BLDC, integrované moduly atd.) které jsou zodpovědné za spínání vyšších napětí, zvládání mnohem větších proudů a mimochodem poskytují ochranu před zkraty, nadproudem nebo teplotou.

Kromě toho mnoho motorů, zejména BLDC motory a převodové motory pro robotiku, pracuje s napětí 6V, 9V, 12V nebo 24Vdaleko za hranice toho, co dokáže Raspberry Pi. Typická architektura se proto skládá ze tří jasných bloků: napájecího zdroje pro motory, řídicí jednotky/ovladače motoru a Raspberry Pi 5, která funguje jako logická řídicí jednotka.

Dalším přesvědčivým důvodem pro použití specifického regulátoru je potřeba ovládat směr otáčení, rychlost (pomocí PWM) a někdy i brzdění a prudký couváníTo vše je mnohem jednodušší (a bezpečnější) díky specializovanému čipu, který již implementuje kompletní H-můstek nebo BLDC regulátor s logickým vstupem, namísto volných, špatně dimenzovaných tranzistorů.

Ovládání BLDC motoru integrovaným regulátorem a 24V

BLDC motor s Raspberry Pi

Velmi ilustrativním případem je případ někoho, kdo se pokouší ovládat BLDC motor s integrovaným regulátorem, model DIA42B20W, pomocí Raspberry Pi. Tento typ BLDC motor Není řízen jako „nahý“ BLDC (kde si fáze spravujete sami), ale již v sobě zahrnuje elektronický regulátor, který potřebuje pouze 24V napájení a řídicí signály vhodné dle pokynů výrobce.

Uživatel, znepokojen varováním v manuálu k motoru, se rozhodne přidat do svého obvodu N-kanálový MOSFET, aby zvládl napájení 24 V. Manuál jasně uvádí něco jako: "Je zakázáno připojovat a odpojovat, když je zařízení zapnuté. Připojování nebo odpojování konektoru, když je zařízení pod napětím, může způsobit poškození."Jinými slovy, nechtějí, abyste zapojovali a odpojovali motor, když je zdroj napájení pod proudem, protože přechodové jevy mohou poškodit vnitřní elektroniku.

Nápad tohoto uživatele je použít MOSFET jako elektronický spínač: zdroj 24 V zůstává připojen k obvodu, ale Napětí je na motor skutečně přivedeno pouze tehdy, když MOSFET vede proud.Takto se snaží dodržovat doporučení manuálu a navíc kontrolovat přesný čas startu tak, aby odpovídal časovému diagramu uvedenému také v dokumentaci k motoru.

Nicméně hned při svém prvním pokusu spálil motor, takže vyvstala velká otázka: má obvod smysl, nebo je zásadně chybný? Obavy jsou pochopitelné: Když zkombinujete 24V motory BLDC s citlivou vnitřní elektronikou a Raspberry Pi, jakákoli chyba v zapojení nebo časování může být nákladná..

Kompletní manuál k DIA42B20W (k dispozici ve formátu PDF) podrobně popisuje spouštěcí křivky, doporučené časování mezi napájením a řídicími signály a omezení týkající se spínání pod napětím. Proto je při návrhu obvodu s Raspberry Pi 5 nezbytné tyto faktory zvážit. Respektujte sekvence zapalování, udržujte společné uzemnění mezi Pi a regulátorem motoru a použijte vhodný MOSFET a schéma spínání.vyhněte se mechanickému připojování a odpojování konektoru motoru pod zatížením.

Použití MOSFETu typu N pro spínání 24V motoru

MOSFET a Raspberry Pi 5

Volba N-kanálového MOSFETu jako 24V síťového spínače má své výhody, ale také některé důležité nuance. Cíl uživatele byl dvojí: Vyhněte se fyzickému zapojování a odpojování konektoru, když je zapnutý, a sledujte zpoždění spouštění, aby bylo v souladu s doporučeními výrobce.V principu je to správně: elektronický vypínač je lepší než ruční odpojování kabelů.

Aby byl tento přístup bezpečný, je však třeba vzít v úvahu několik detailů: MOSFET musí být nízký odpor Rds(on) při dostupném napětí na hradleJe schopen pohodlně pracovat s 24V na odtoku a Raspberry Pi by nikdy neměl připojovat svůj GPIO přímo k bráně bez sériového rezistoru a pokud možno i s ochranou proti přepětí.

Dalším klíčovým aspektem je rozhodnutí, zda je MOSFET umístěn na straně vysokého nebo nízkého napětí napájecího zdroje. V mnoha případech je N-MOSFET umístěn na návratu (spínání na straně nízkého napětí), čímž se přeruší zemní cesta motoru. Pokud však interní ovladač BLDC motoru očekává sdílenou zemní referenci se zdrojem i Raspberry Pi, Krájení těsta může způsobit zvláštní chování nebo dokonce poškodit regulátor.Proto se v citlivějších aplikacích na straně vysokého napětí používá MOSFET typu P nebo se používají specifické výkonové spínací moduly.

Pozornost je třeba věnovat také sekvenci signálů. I když vypnete napájení pomocí MOSFETu, pokud Raspberry Pi udržuje řídicí linky aktivní, zatímco je interní ovladač motoru částečně napájen (nebo se kondenzátory vybíjejí), mohou nastat nežádoucí stavy. V ideálním případě by to mělo být... Před připojením nebo odpojením 24V napětí se ujistěte, že jsou řídicí signály v bezpečném stavu.Například zajištěním nízké nebo vysoké impedance GPIO, dokud se napětí nestabilizuje.

Stručně řečeno, koncept použití MOSFETu typu N k řízení 24V napájení BLDC motoru s integrovaným regulátorem není přitažený za vlasy, ale Ďábel se skrývá v detailech: typ MOSFETu, umístění obvodu, společná zem, spouštěcí sekvence a další ochrany.Špatně promyšlená konstrukce může způsobit pravý opak toho, co je zamýšleno: místo ochrany motoru může zkrátit jeho životnost nebo ho během několika sekund spálit.

Desky pro řízení motorů připravené pro Raspberry Pi 5

Ve srovnání s návrhem obvodu od nuly s MOSFETy a diskrétními budiči je často mnohem nákladově efektivnější použít Desky pro řízení motorů připravené pro Raspberry PiTyto desky obvykle obsahují řídicí čip (H-můstek typu SN754410, L293D, DRV8833, DRV8825 atd.), šroubovací konektory pro motory, svorky pro externí napájení a piny připravené k přímé montáži na Raspberry Pi.

Klasickým příkladem je deska s ovladačem motoru pro Raspberry Pi založená na integrovaném obvodu SN754410NE. Tento čip je duální H-můstek, který umožňuje ovládat dva stejnosměrné motory s nízkým až středním výkonem. Výhodou tohoto typu desky je, že Stačí ho připojit k Raspberry Pi, přišroubovat napájení motoru a vodiče motoru a začít programovat. bez komplikací jemné výkonové elektroniky.

Tyto desky obvykle podporují různé programovací jazyky, protože v konečném důsledku potřebují pouze logické signály na specifických pinech GPIO. Ačkoli existuje oficiální podpora pro Python nebo Scratch, Platný je jakýkoli programovací jazyk, který zvládá GPIO piny Raspberry Pi (C, Java, PHP, Node.js, Bash atd.).Důležité je vygenerovat odpovídající adresu a PWM výstupy pro každý kanál H-můstku.

Použití SN754410NE umožňuje implementovat softwarovou PWM na Raspberry Pi. Není to tak přesné ani robustní jako použití specializovaného hardwarového generátoru PWM, ale pro většinu DIY projektů je to dostačující. Stačí k řízení otáček dvou stejnosměrných motorů poměrně plynulým způsobem. Je však důležité mít na paměti proudová omezení čipu a samotné desky: nejsou určeny pro obří motory ani pro velmi náročné aplikace z hlediska proudu.

Tyto desky navíc již řeší problém oddělených napájecích zdrojů pro logiku a napájení. Raspberry Pi je obvykle napájeno přes standardní port a deska motoru má vlastní nezávislý zdroj napájení pro motory. Některé dokonce integrují nulové diody, základní ochranné obvody a v některých případech i regulátory, které odvádějí část energie do samotného Raspberry Pi.

Ovladač motoru pro Raspberry Pi Pico založený na DRV8833

Dalším zajímavým případem, který se z hlediska konceptu velmi dobře hodí pro Raspberry Pi 5, je případ Ovladač motoru speciálně pro Raspberry Pi Pico založený na čipu DRV8833Přestože Pico je jiná deska (mikrokontrolér místo SBC), logika za návrhem ovladače je velmi poučná.

Tento modul je určen pro ty, kteří vlastní Pico a chtějí si postavit svého prvního kolového robota bez potíží se zamotanými kabely. Ovladač se montuje přímo na Pico a umožňuje... Pohon až dvou stejnosměrných motorů s proudem až 1,2 A na kanál, více než dost pro většinu malé a střední motory používá se ve vzdělávací a domácí robotice.

DRV8833 poskytuje kompletní řízení obou motorů (vpřed, vzad, brzdění atd.) pomocí logických vstupů, které se připojují k pinu Pico. Velkou výhodou této konstrukce je, že Obsahuje několik ochran: proti zkratu, nadproudu a přehřátíPokud se robot zasekne nebo se kolo zablokuje, čip zabrání vážnému poškození tím, že přeruší nebo omezí proud.

Deska obsahuje šroubovací svorky pro pohodlné a bezpečné připojení motoru. Další svorky přenášejí signály přímo z Raspberry Pi Pico, takže tyto piny lze použít pro senzory nebo jiné příslušenství bez složitého zapojení. Součástí desky je také integrován... Vstupní napětí s regulátorem, akceptuje 3 až 10 VTo umožňuje použití čehokoli od malých baterií až po dobíjecí baterie k napájení desky i Pica.

Díky tomuto integrovanému regulátoru může stejné napětí, jaké používáte pro motory, napájet Raspberry Pi Pico, takže Pro robota nepotřebujete více zdrojů napájení ani různé zásuvky.Deska také obsahuje vypínač, což je velmi užitečné při napájení z baterií: vše můžete vypnout jediným gestem, aniž byste museli odpojovat kabely.

Co se týče softwaru, tato deska je velmi dobře zdokumentovaná a má Příklady kódu v PythonuDíky tomu se výrazně zkracuje doba učení: během několika minut můžete svého robota naučit plnit pohybové povely, otáčet se kolem vlastní osy nebo sledovat čáry. Ačkoli je tento ovladač navržen pro Pico, přístup „deska motoru s regulátorem, ochranou a dokumentací“ je přesně to, co byste měli hledat při výběru ovladače motoru pro váš Raspberry Pi 5.

Řízení pohyblivých základen s většími motory

Dalším běžným scénářem je situace, kdy si někdo chce postavit relativně seriózní pohybovou základnu s použitím motorů typu NeveRest 60, které se široce používají v soutěžní robotice. Někdo zvažoval nahrazení typického rozbočovače REV nebo jiných mikrokontrolérů za... Raspberry Pi jako hlavní řídicí jednotka pohyblivé základnya ptal se, jak bezpečně připojit tyto motory k Raspberry Pi.

V těchto typech projektů motory jednoznačně překračují to, co zvládnou SN754410 nebo DRV8833. Je zapotřebí serióznější regulace výkonu. regulátory a moduly pro vysoké proudyV tomto případě Raspberry Pi funguje jako mozek, který generuje řídicí signály (PWM, směry, režimy) a spoléhá na externí regulátor, který ve skutečnosti přepíná proud do motorů.

Nedoporučuje se připojovat NeveRest 60 (nebo podobný) přímo k levné motorové desce pro vzdělávací projekty, protože Spouštěcí a blokovací proudy mohou daleko překročit limity malých integrovaných budičů.Místo toho lidé obvykle používají regulátory určené pro daný rozsah motorů, často používané v samotných soutěžích, a hledají způsoby, jak je ovládat z Raspberry Pi (například pomocí standardních PWM signálů, I2C, UART nebo dokonce USB, v závislosti na regulátoru).

Základní myšlenka je stejná: Raspberry Pi 5 by neměl nést zátěž napájení. Jeho úlohou je vysílat signály pro nastavení vysokého/nízkého napětí nebo PWM signály na určité frekvenci a nechat... Specializovaný mezilehlý modul zpracovává 12 V nebo 24 V a různé proudy požadované motory.Dále je v konkurenčním prostředí nutné pečlivě zvážit elektrickou robustnost, elektromagnetický šum a tepelné ztráty.

V těchto případech je také vhodné řádně oddělit napájecí zdroje (jeden pro motory a druhý pro Raspberry Pi), pečlivě zvážit velikost kabelů a pojistek a zvážit další ochrany, jako jsou resetovatelné pojistky nebo jističe. Vzhledem k tomu, že Raspberry Pi je připojen k senzorům, kamerám a komunikaci, Mělo by být co nejvíce izolováno od špiček a hluku generovaného výkonnými motory..

Praktické aspekty: jídlo, doprava a dostupnost

Když si ve specializovaných obchodech koupíte řídicí desky motorů, motory nebo robotické sady pro Raspberry Pi 5, obvykle se tam nacházejí Zásady a náklady na dopravu, které je třeba mít na paměti Pokud zpracováváte čísla pro celý projekt, některé obchody pracují s typickými prahovými hodnotami: například objednávky pod určitou částkou (například 50 dolarů) mají fixní náklady na dopravu, zatímco nad tuto částku může být doprava zdarma nebo slevy při používání expresních kurýrních služeb, jako je DHL.

V tomto typu schématu může mít objednávka do 50 dolarů standardní cenu kolem 10 dolarů za „malý letecký balík“ nebo kolem 20 dolarů, pokud zvolíte DHL. U poněkud větších objednávek, řekněme mezi 50 a 150 dolary, Je docela běžné, že standardní letecká doprava je zdarma., a to při zachování snížené ceny (například 15 USD), pokud zvolíte DHL pro rychlejší doručení.

Jakmile je dosaženo určitého objemu, například objednávek nad 150 dolarů, mnoho obchodů nabízí Doprava zdarma přes DHLs typickými dodacími lhůtami 3 až 5 pracovních dnů. V závislosti na zeměpisné oblasti však mohou existovat výjimky: některé země v „mezinárodní přepravní zóně 9“ mohou mít vyšší prahové hodnoty, například nákup nad 300 USD pro získání nároku na bezplatnou dopravu DHL.

V oblastech s vyššími náklady může objednávka pod 100 dolarů zahrnovat náklady na dopravu prostřednictvím DHL ve výši přibližně 45 dolarů, u objednávek v hodnotě 100 až 200 dolarů to klesá na 35 dolarů a u objednávek v hodnotě 200 až 300 dolarů na přibližně 25 dolarů. Jakmile objednávka přesáhne 300 dolarů, je doprava obvykle zdarma. také v těchto destinacích, i když vše závisí na konkrétních zásadách daného obchodu.

Co se týče způsobů dopravy, obvykle je k dispozici několik možností: DHL nebo FedEx s dodací lhůtou 5 až 10 pracovních dnů, speciální linky s doručením 10 až 15 dnů, malé letecké balíky s doručením 15 až 30 dnů a v některých případech služby spojené se Světovou poštovní unií. Sledovací číslo je uvedeno téměř vždy.Takto si můžete zkontrolovat stav zásilky na webových stránkách prodejce a kurýra a také obdržet e-mailové oznámení s údaji o sledování.

Důležitým bodem, který se někdy přehlíží, je, že dodací lhůty jsou obvykle uváděny jako „FOB“ z místa původu (např. Šen-čen), což... Nezahrnuje cla, tarify ani daně účtované zemí určení.Tyto dodatečné náklady (DPH, clo, manipulační poplatky kurýrní služby atd.) hradí kupující a mohou výrazně změnit konečnou cenu, pokud objednávka obsahuje baterie nebo motory.

U objednávek, které zahrnují baterie nebo motory, je navíc možné, že Ne všechny kurýrní služby jsou k dispozici. Vzhledem k přepravním předpisům některé obchody uvádějí, že pokud nelze ve vaší zemi použít DHL, v případě potřeby použijí UPS, FedEx nebo „speciální linku“. Je také důležité vědět, že distributoři nebo prodejci jsou obvykle z programů bezplatné dopravy vyloučeni, protože tyto výhody jsou vyhrazeny koncovým zákazníkům.

Vezmeme-li v úvahu všechny tyto faktory (náklady na dopravu, dodací lhůty, clo), je snadné pochopit, proč se to někdy vyplatí. Zkombinujte Raspberry Pi 5, regulátory motorů, motory a příslušenství do jedné objednávky, čímž se dosáhne prahových hodnot pro bezplatnou dopravu a sníží se pravděpodobnost, že se budete muset vypořádat s více přepravními agenturami a celními prohlášeními.

Když se všechny výše uvedené skutečnosti spojí, je zřejmé, že ovládání motorů z Raspberry Pi 5 jde daleko za rámec programování čtyř GPIO pinů: musíte zvolit správný typ regulátoru (BLDC s interní integrací, H-můstek jako SN754410, ovladače jako DRV8833 nebo vysoce výkonné moduly pro velké motory), dodržovat doporučení výrobců týkající se živých zapojení a spouštěcích sekvencí, pečlivě zvážit, jak je napájecí zdroj přepínán (zejména při 24 V s MOSFETy) a naplánovat logistiku nákupu a přepravy komponent. Oddělení logiky a napájení, ochrany zabudované v deskách a dostupná dokumentace, spolu s dobrým plánováním napájení a zapojení, jsou tím, co rozhoduje o projektu, který spálí motory a desky, od projektu, který bude fungovat hladce a spolehlivě po dlouhou dobu.

EVN Alpha
Související článek:
EVN Alpha: řídicí jednotka pro roboty kompatibilní s LEGO dílky

Přidat jako preferovaný zdroj