你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

游名:Stm32F0+TMC5130 Arduino接口42/57步进电机驱动参考原理图/...  

[复制链接]
mmuuss586 发布时间:2020-3-26 16:59
基于Stm32F0+TMC5130 Arduino接口42/57步进电机驱动参考原理图/PCB图/教程/源码等开源分享
资料下载见附件,电脑登入
公众号:游名开源
微信图片_20200326165022.jpg
微信图片_20200326165030.jpg
微信图片_20200326165034.jpg 0 d' m- P& u! ]4 k2 g* ], i
一、概述
TMC5130芯片是一款集成式步进电机驱动器和运动控制器(定位控制)解决方案,适用于医疗、3D打印机、云台或其它自动化设备对性能有较高的场合应用和静音控制。该芯片具有集成的SixPoint斜坡控制器,微步进分度器,无传感器失速检测技术StallGuard2和完全无噪声的电流控制模式StealthChop,旨在驱动双极步进电机。输出驱动器模块由低RDSon N沟道功率MOSFET组成,配置为全H桥,以驱动电机绕组。 TMC5130能够从每个输出驱动高达2.5A的电流(具有适当的散热)。TMC5130的供电电压为5-46V。 该器件提供SPI接口,用于配置和诊断以及步进和方向接口。

/ c& ~2 r* z* @8 z$ r/ v' ?3 |
参数及特点:
2A电流(2.5A峰值),电压范围4.75-46VDC,9x9mm2 TQFP48封装
具有sixPoint斜坡的运动控制器
SPI和单线UART和Step / Dir接口,编码器接口和2x参考开关输入
每个完整步骤的最高分辨率256微步
stealthChop用于极其安静的操作和平稳的运动
spreadCycle高动态电机控制斩波器
dcStep负载相关的速度控制
stallGuard2高精度无传感器电机负载检测
coolStep电流控制,节能高达75%
集成电流检测选项,被动制动和续流模式,全面保护和诊断
1.png

) {3 @; D0 P9 q6 U) g

基于Stm32F0+TMC5130 Arduino接口42或57步进电机驱动参考原理图PCB图教程源码等开源分.pdf

下载

1.08 MB, 下载次数: 152

TMC5130-Shield原理图.pdf

下载

673.85 KB, 下载次数: 44

TMC5130_datasheet_Rev1.16.pdf

下载

2.41 MB, 下载次数: 41

TMC5130 SPI SPEED.rar

下载

7.83 MB, 下载次数: 64

TMC5130 SPI POSITION.rar

下载

7.83 MB, 下载次数: 66

TMC5130 DIR STEP.rar

下载

7.5 MB, 下载次数: 70

游名科技产品目录(2020-7-21).pdf

下载

1.05 MB, 下载次数: 26

收藏 3 评论89 发布时间:2020-3-26 16:59

举报

89个回答
mmuuss586 回答时间:2020-3-26 17:32:34
初始化程序如下参考:( t; C$ c! S0 e
//        TMC5130 SET        9 t- B3 e! N: s' e6 z  X" r# S
        sendData(0xEC,0x000100C3);                                
" {+ g5 p$ A7 ^7 P# t. _$ Y: O//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)
" G8 f* x# x5 l2 n# G. ]6 Z1 ]. R        sendData(0x90,0x0006160A);                                
: x+ I: N7 _* a4 o7 g4 ]//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=6 8 }7 W0 w. c. B2 F  B! S1 s! z
        sendData(0x91,0x0000000A);                               
9 Z  o* F3 v- B0 h//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
; H- e! S& G. S8 l9 P        sendData(0x80,0x00000004);                               
9 G2 O$ i& W, o! i) _- O( E//PAGE27:EN_PWM_MODE=1,使能* w$ V/ q- \. h6 N: Z' n( i9 R. C
        sendData(0x93,0x000001F4);                               
" W- a4 C/ R# F$ L8 o//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM+ ?( J" o+ w& X
        sendData(0xF0,0x000401C8);                               
3 y* n& |/ L  e: U) ]) ^, N6 i//PAGE43WMCONF        ' N( l/ \0 p" D- b# J# v
///////////////////////////////////////////////////////////
" [/ R* s5 `$ V6 D  m4 b' X6 X& F          sendData(0xA4,1000);                                            
( V+ X8 q2 i* z//A1=1000第一阶段加速度1 g; D: n$ F! F- Z( C- a
        sendData(0xA5,50000);                                     1 v, `! U7 p1 L% i4 t& x  n
//V1=50000加速度阀值速度V  
& Q* b( ?& P* m0 T        sendData(0xA6,5000);                                             & n7 {8 e5 q4 n2 U
//AMAX=5000大于V1的加速度   6 L( e* L) g) t, u! d
        sendData(0xA7,200000);                                    
* x/ T4 ~( Q1 |! h  O* ?//VMAX=200000
5 U$ @( f/ O; h/ A        sendData(0xA8,700);                                                                % S0 h% ^; A. c8 J; @! ^
//DMAX=700大于V1的减速度
; `" s/ Y2 b- B        sendData(0xAA,1400);                                            
9 r& t; R+ n# E5 J& L  I4 ~6 `* l. U//D1=1400小于V1的减速度
0 `  y9 t$ _0 @& A        sendData(0xAB,10);                                                       O1 R  c; ?: H8 F3 @( x
//VSTOP=10停止速度,接近于0
3 T; i: X  C5 d! Z5 W+ ?        sendData(0xA0,0x00000000);                                 ( o) \& ]: h* u0 I$ h2 V1 E: P
//PAGE35:RAMPMODE=0位置模式,使用所有A、V、D参数        $ z$ N" e- W1 l- M  S+ N! [6 y
mmuuss586 回答时间:2020-3-26 17:32:00
初始化程序如下参考:
1 K  m: q0 k& h4 M6 T//TMC5130 SET       
8 _$ j+ P4 C4 j0 k* A        sendData(0xEC,0x000100C3);                                
3 b3 t" K, i9 k4 B//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)# o% }! a8 @9 w( w. F
        sendData(0x90,0x00011601);                                
4 a3 K' |' Z7 b' D  r; H//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=1
( f+ R  e% z1 g4 R( G        sendData(0x91,0x0000000A);                               
0 Z/ }7 t1 i7 U3 ?7 b//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
' X* d" ^2 N7 t' K5 @, Q        sendData(0x80,0x00000004);                               
5 \+ C0 G' ]' n) j' r4 A  G% H//PAGE27:EN_PWM_MODE=1,使能
' u9 b" L  X$ }+ g, _        sendData(0x93,0x000001F4);                               
" L: W" H) l  L; J6 i- z//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM' b; B+ o# J1 j5 G3 Y4 O3 \5 l
        sendData(0xF0,0x000401C8);                               
3 E8 _" K* L1 n, h7 o1 Q//PAGE43WMCONF         
5 Q8 N; r: s! ?# O7 J* N          sendData(0xA4,1000);                                             4 d2 B+ \' C! {% A1 W
//A1=1000第一阶段加速度
8 u; V* B1 B; E        sendData(0xA5,50000);                                     4 f. L9 R5 C+ E# d) H& K1 P: ]
//V1=50000加速度阀值速度V1: W" R0 g# u! X. }. h
        sendData(0xA6,5000);                                            
& L! C6 @5 [2 f& X//AMAX=5000大于V1的加速度        2 m$ n! ^* h' }+ l& q! R
        sendData(0xA7,200000);                                     - D- ], v3 q: z+ Y# v2 ^
//VMAX=200000
& [8 D0 ^6 I& F        sendData(0xA8,700);                                                                ' [% m; Y# f# m4 k/ T5 T: z" c
//DMAX=700大于V1的减速度
: ^5 H) T5 J& ]6 j" }        sendData(0xAA,1400);                                             : }/ z0 Q! Q) F, G, z5 c/ X
//D1=1400小于V1的减速度
" b% m! L: J, Y; D+ ^, ~& r        sendData(0xAB,10);                                                    
& D1 U  C! T' D7 D+ \/ [//VSTOP=10停止速度,接近于0& p4 z3 @; m; Y" b2 S
Yannike 回答时间:2024-7-5 09:48:42
mmuuss586 回答时间:2020-3-26 17:22:05

" b- s1 x- v1 z; Z
二、硬件设计

. ^) K4 t  _+ u) y" b+ {! s
硬件设计接口上:支持SPI或UART或脉冲+方向控制

" T2 g" O8 X" ^  D2 M
原理图如下图所示:
1.png 8 S5 g" y# d1 O2 N2 `5 f- k) e

- J4 L1 j- z# T+ @% c

- e! N- ~* L" N' V& ]
/ U; C% f- G, V; Q
) X/ _" O9 X! E. V+ B5 a) J
mmuuss586 回答时间:2020-3-26 17:23:36
主芯片部分:
1.png
$ z5 B0 H7 c( M5 u" E6 Z6 E
4 x* l$ K+ p- C5 h1 H
mmuuss586 回答时间:2020-3-26 17:24:42
补充说明:
6 R/ b& U4 ?, U) hSPI_MODE、SD_MODE:对应的J10、J11通过跳线帽选择高、低电平选择不同模式
! Q5 _9 E. r9 v8 p% q( b0 qVCC、VCC_IO电源:使用芯片内部5V输出电源,如果有外部5V电源可选择外部的,可降低芯片的发热和功耗;" T# l; `! s- i" {# y
mmuuss586 回答时间:2020-3-26 17:26:03
电源及接电机接口部分如下图:
1.png . t7 Q" Q2 c7 p5 f4 g
6 q4 N+ j2 t4 t) c8 x
mmuuss586 回答时间:2020-3-26 17:26:30
补充说明:
' |( ^  i- }' z: t母线电容CE1选择:一般是1A对应100uF左右(有条件的尽可能大);
. |. N* k' R2 \电源保护:有条件的最好加防反接、TVS保护、以及保险丝等
8 r; t  z# Y' ~: d9 j% ^( t
mmuuss586 回答时间:2020-3-26 17:27:12
电机接口:如果对EMC要求较高的,最好加些滤波和保护,参考电路如下图
1.png # |# J" D, g3 I: J; W- t( O  y
* M/ Y- y  ]& u, x; q& K
mmuuss586 回答时间:2020-3-26 17:30:40
PCB图参考如下(最好是4层板):
1.png
2.png
- p" z" f! c0 |+ A2 o

% }/ W$ }  P$ W/ z/ {: k0 t5 _
mmuuss586 回答时间:2020-3-26 17:31:11
补充说明:4 Z5 w' ~9 U8 j/ k& E
芯片底部最好不要走其它线,保证地平面完整及散热;% l7 x+ e  o' l( G
电流取样电阻:5130不需要,5160外部MOS,要差分采样(开尔文接法);
! C1 i; x. E8 N0 r' q
mmuuss586 回答时间:2020-3-26 17:31:33
三、软件说明  o( A- |: k: N, |) K* k# k
1、SPI接口速度模式5 S: M4 B. ^( i9 h1 G( }
芯片引脚跳线连接:4 H# V4 \3 r" Z5 D; a- H- ?
SPI_MODE:接高电平(VCC_IO)
4 n- N6 {' ?0 p) [5 ASD_MODE: 接低电平(GND)
1 G. v: }4 Q; f- aJ7:短接
' [6 h7 A0 B. M! PCSNB6, V3 m; A$ @  O. U! `+ A6 Y
SCKA5
  {6 F: w5 G* |7 P5 A) fSDI:MOSI-PA7
* C2 ]& I( Y- [5 O* M; _. pSDO:MISO-PA6
  |& k% u! w0 h  a. r9 {( B) f
mmuuss586 回答时间:2020-3-26 17:32:18
2、SPI接口位置控制模式  V! h/ u# V$ a7 v
芯片引脚跳线连接:" ^7 ^% |$ z0 _
SPI_MODE:接高电平(VCC_IO)6 C1 W4 ~2 S4 r' r6 {7 R
SD_MODE: 接低电平(GND)
* y0 r" }) @  [3 {) q) F, q  E0 UJ7:短接
1 i0 y! m  b* E$ G. q: P, G+ UCSNB6
3 l7 ?% O; s! T4 BSCKA5
0 [5 x, v' d# \+ kSDI:MOSI-PA7% Z9 g2 x; G  ~( b. V$ [
SDO:MISO-PA6
7 A& w! [( G' m
mmuuss586 回答时间:2020-3-26 17:33:02
3、DIR+STEP接口模式位置控制(无需SPI接口), e5 W3 N- ~  T
芯片引脚跳线连接:
) A% i1 [9 z: }6 l% }: BSPI_MODE:接低电平(GND). _) N+ n! G' A0 e9 U9 D8 N
SD_MODE:接高电平(VCC_IO)' ]5 E5 Y% z/ w3 E. K8 D$ }
STEP:REFL-PB4,J2:短接
! ~. b) F" `- J" {4 S. }! k8 \2 I9 PDIR: REFR-PB5,J5:短接
- O7 e. r8 i. j) LCFG6RV_ENN-PC5,通过杜邦线接到底板PC5脚0 \4 y- d; h  P: V8 _
CFG5:ENCA-PC8,通过杜邦线接到底板PC8脚
. W7 \$ I) ]1 s" PCFG4:ENCB-PC6,通过杜邦线接到底板PC6脚5 j5 r0 W+ M8 d3 U
CFG3:CSN-PB6 ,J7:短接4 S3 U0 z, g) j9 h$ H: L$ |0 \
CFG2: SCK-PA57 L0 y' K( P6 F
CFG1: MOSI-PA7- g5 i5 }8 V# K+ n' ?; u
CFG0: MISO-PA6; g- h" P2 c( G0 k( t
mmuuss586 回答时间:2020-3-26 17:33:26
初始化程序如下参考:
* k" z# F" Y" R" m9 Z        HAL_GPIO_WritePin(CFG0_GPIO_Port,CFG0_Pin, GPIO_PIN_SET);                        //PAGE:110 CFG0设置为高,TOOF:236Tclk
9 g7 u* u) w) X; }/ v% B( [- D0 T        SubdivisionSet(16);                //PAGE:111 细分设置为16
7 z/ ~0 P: |/ H2 J  L        ISet();                                        //电流设置AGE:111
( c9 g: v2 G! r5 g5 K7 k        HAL_GPIO_WritePin(CFG4_GPIO_Port,CFG4_Pin, GPIO_PIN_SET);                        //PAGE:111 CFG4设置为高,chopper hysteresis斩波器滞后 设置为9  f+ G8 y" |4 Y
        HAL_GPIO_WritePin(CFG5_GPIO_Port,CFG5_Pin, GPIO_PIN_SET);                " q# m9 R% F4 Q9 h
//PAGE:111 CFG5设置为低,chopper blank time斩波器切换期间间隔时间设置为24' P9 t% L6 A8 L4 C7 Y. {
        HAL_GPIO_WritePin(CFG6_GPIO_Port,CFG6_Pin, GPIO_PIN_RESET);
6 j- L1 m7 V6 p& M" \//PAGE:112 CFG6设置为低电机驱动使能,为高关闭" [) Q# B2 S: p4 ?% x7 c
        HAL_GPIO_WritePin(STEP_GPIO_Port,STEP_Pin, GPIO_PIN_SET);                        //STEP设置为高/ j, ~% Y5 B0 T5 q) I2 \- y

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版