Uživatelské nástroje

Nástroje pro tento web


cs:hbstep

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
cs:hbstep [2013/07/11 09:37] – [HBSTEP01A] kaklikcs:hbstep [2020/02/03 18:48] (aktuální) – [Přímé řízení z PC] kaklik
Řádek 9: Řádek 9:
 ===== Unipolární motory ===== ===== Unipolární motory =====
  
-Jejich vinutí je konstruováno tak, že obsahuje napájecí odbočky, které umožňují měnit polaritu magnetického pole na pólech motoru bez přepólování napájecího napětí. To umožňuje jednodušší ovládání motoru protože k řízení pak není potřeba plný spínačový most. Ale pouze spínače, které uzemňují jednotlivá vinutí proti napájecímu napětí. +Jejich vinutí je konstruováno tak, že obsahuje napájecí odbočky, které umožňují měnit polaritu magnetického pole na pólech motoru bez přepólování napájecího napětí. To umožňuje elektronicky jednodušší ovládání motoru protože k řízení pak není potřeba plný spínačový most. Ale pouze spínače, které uzemňují jednotlivá vinutí proti napájecímu napětí. 
  
      
-Nevýhodou je že každý pól motoru musí obsahovat dvojnásobné množství závitů (pro jednu a druhou polarizaci magnetického pole), což přináší menší užitný výkon motoru.     +Nevýhodou je že každý pól motoru musí obsahovat dvojnásobné množství závitů (pro jednu a druhou polarizaci magnetického pole), což přináší menší užitný výkon motoru. Proto se tyto motory už obvykle nevyužívají a jsou zastaralé. Nové budiče krokových motorů je už ani neumožňují řídit.
  
 ===== Bipolární motory ===== ===== Bipolární motory =====
Řádek 19: Řádek 19:
  
 Výhodou je hlavně vyšší výkon a moment motoru při malých rozměrech a hmotnosti vzhledem k unipolárním motorům.  Výhodou je hlavně vyšší výkon a moment motoru při malých rozměrech a hmotnosti vzhledem k unipolárním motorům. 
 +
  
 ====== Konstrukce modulu ====== ====== Konstrukce modulu ======
  
-Modul je určen pro řízení jednoho krokového motoru pracujícího v bipolárním režimu (většinu unipolárních motorů lze v tomto režimu provozovat za cenu použití vyššího napájecího napětí). Tj. modul obsahuje dva plné spínačové můstky. Pro konstrukci modulu byl využit čip [[http://www.st.com/internet/analog/product/248592.jsp|L6470]]. +Modul je určen pro řízení jednoho krokového motoru pracujícího v bipolárním režimu (většinu unipolárních motorů lze v tomto režimu provozovat za cenu použití vyššího napájecího napětí). Tj. modul obsahuje dva plné spínačové můstky. Pro konstrukci modulu byl vybrán integrovaný obvod [[http://www.st.com/internet/analog/product/248592.jsp|L6470]]. 
  
-====== Firmware ====== 
  
-V SW dokumentačním adresáři je dostupný demonstrační program pro [[cs:labduino|LABduino]] napsaný ve [[http://wiring.org.co/|Wiringu]].+===== Základní vlastnosti =====
  
-Pro ARM je dostupná knihovna přímo z [[http://www.st.com/internet/analog/product/248592.jsp|webu ST]].  +  * Řídící vstupy modulu jsou ošetřeny definovanými stavy.   
-===== Výchozí Požadavky ===== +  * Modul pracuje ve velkém rozsahu napětí výkonového napájení 8 - 45 V
- +  * Digitální řídící vstupy lze ovládat nízkými logickými úrovněmi 3,3V 5V.  
-  * Řídící vstupy modulu by měly být ošetřeny definovanými stavy, pull-up, nebo pull-down rezistory.   +  * Budící proud motoru je špičkově 7A  a 3A RMS
-  * Měl by pracovat ve velkém rozsahu napětí výkonového napájení. +  * Výkonové výstupy jsou osazeny pružinovou svorkovnicí WAGO
-  * Řídící digitální vstupy by mělo jít provozovat na 3,3V i na 5V.  +  * Výkonový napájecí vstup je osazen pružinovou svorkovnicí WAGO
-  * Minimální budící proud motoru bez použití chladiče by měl být větší než 1A+  * Modul obsahuje tepelnou a nadproudovou ochranu proti přetížení
-  * Výkonové výstupy by měly být osazeny svorkovnicí. +  * Modul umožňuje digitální nastavení omezení budícího proudu vinutí motoru 
-  * Výkonový napájecí vstup by měl být řešen svorkovnicí. +  * Je možné nastavovat profily akcelerace a decelerace. 
-  * Obvod by měl obsahovat tepelnou ochranu. +  * Je možné nastavit náběhový proud budících tranzistorů (Pro omezení rušení) 
-  * Nastaveni omezení budícího proudu odporovým děličemA nebo externě přes Jumper, (Volba vyndáním, nebo zasunutím propojky).+  * Budič umožňuje 1/128 mikrokování 
 +  * Bezsenzorová detekce prokluzu kotvy motoru 
 +  * SPI komunikační rozhraní
    
-===== TODO =====+====== Ovládání ====== 
 + 
 +Modul se ovládá přes rozhraní SPI, kterým se komunikuje přímo s integrovaným obvodem L6470. Pro ovládání motoru je napsáno několik knihoven pro různé architektury. 
 + 
 +===== Wiring ===== 
 + 
 +V SW dokumentačním adresáři na MLAB SVN je dostupný demonstrační program pro [[cs:labduino|LABduino]] napsaný ve [[http://wiring.org.co/|Wiringu]]. 
 + 
 +==== Připojení modulu ==== 
 + 
 +{{ :cs:designs:hbstep01a_wiring_big.jpg?direct&300 |}} 
 + 
 +Propojení obou modulů provedeme vodiči  MLAB podle následující tabulky: 
 + 
 +^ Modul ATmegaTQ3201A ^ Modul HBSTEP01A ^ 
 +| PB2 | CS |  
 +| PB3  | SDI |  
 +| PB4 | SDO | 
 +| PB5 | CK |  
 + 
 + 
 +===== ChibiOS ===== 
 + 
 +Protože ve stavebnici MLAB je tento RTOS systém využíván ta mikrokontrolérech [[cs:stm32f10xrxt|ARM STM32]]. Byla do chibiOS pro ARM naportována knihovna přímo z [[http://www.st.com/internet/analog/product/248592.jsp|webu ST]].  
 + 
 +==== Připojení modulu ==== 
 + 
 +Firmware pro toto zapojení je k dispozici na [[https://github.com/MLAB-project/mlab-chibios/tree/master/STM32F107/ChibiOS_2.6.1/demos/stepper|githubu]] 
 + 
 +{{ :cs:modules:motors:hbstep_chibios_dual.jpg?direct&300 |}} 
 + 
 +Použitý demo kód ovládá dva krokové motory. A připojení přes SPI je multiplexováno mezi oběma obvody přes ChipSelect pin.  
 + 
 +Připojení prvního motoru 
 + 
 +^ Modul STM32F10xRxT01A ^ Modul HBSTEP01A ^ 
 +| PA4 | CS |  
 +| PA5  | CK |  
 +| PA6 | SDO | 
 +| PA7 | SDI |  
 +| PC4 | BUSY/SYNC |  
 + 
 + 
 +Připojení druhého motoru 
 + 
 +^ Modul STM32F10xRxT01A ^ Modul HBSTEP01A ^ 
 +| PC5 | CS |  
 +| RA5  | CK |  
 +| RA6 | SDO | 
 +| RA7 | SDI |  
 + 
 +===== Přímé řízení z PC ===== 
 + 
 +Modul je možné přímo řídit z PC při použití modulů [[cs:usbi2c|USBI2C01B]] a [[cs:i2cspi|I2CSPI01A]], které vytvoří SPI rozhraní ovladatelné z počítače.  
 + 
 +^ Modul I2CSPI01A ^ Modul HBSTEP01A ^ 
 +| #SS0 | CS |  
 +| MOSI  | SDI |  
 +| MISO | SDO | 
 +| CLK | CK |  
 + 
 + 
 +{{youtube>28aWrmkpqYA?medium}} 
 + 
 +==== Daisy chain zapojení ==== 
 + 
 +V případě, že je potřeba řídit více motorů současně, tak je běžným řešením připojení více HBSTEP budičů na jedno SPI rozhraní. Obvykle je to realizováno použitím více chip-select signálů (ke každému SPI slave zvlášť). Taková konstrukce je ale nepraktická.  
 + 
 +U modulů HBSTEP01B je ale možné použít takzvané [[https://www.maximintegrated.com/en/app-notes/index.mvp/id/3947|daisy-chain zapojení]], které umožňuje připojit více SPI slave zařízení na jeden Chip-select. Tím se značně zjednodušší konstrukce takového zařízení. A počet ovládaných motorů pak není limitován počtem chip-select signálů.   
 +===== Příklady využití ===== 
 + 
 +  * [[cs:designs:3dprint]] 
 +  * [[cs:tefo]] 
 +  * [[cs:tedr]]
  
-  * Prozkoumat možnost řízení dvou DC motorů zmíněnou v datasheetu 
    
 +====== TODO ======
  
 +  * Prozkoumat možnost řízení dvou DC motorů zmíněnou v datasheetu
  
-==== Reference ====+===== Reference =====
  
   * http://en.wikipedia.org/wiki/Stepper_motor   * http://en.wikipedia.org/wiki/Stepper_motor
  
cs/hbstep.1373535473.txt.gz · Poslední úprava: 2013/07/11 09:37 (upraveno mimo DokuWiki)