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

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

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

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

' g9 [8 B; c: ~

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

下载

1.08 MB, 下载次数: 141

TMC5130-Shield原理图.pdf

下载

673.85 KB, 下载次数: 35

TMC5130_datasheet_Rev1.16.pdf

下载

2.41 MB, 下载次数: 28

TMC5130 SPI SPEED.rar

下载

7.83 MB, 下载次数: 51

TMC5130 SPI POSITION.rar

下载

7.83 MB, 下载次数: 52

TMC5130 DIR STEP.rar

下载

7.5 MB, 下载次数: 62

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

下载

1.05 MB, 下载次数: 15

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

举报

88个回答
mmuuss586 回答时间:2020-3-26 17:32:34
初始化程序如下参考:
+ b% Y: m) a0 J# S7 `//        TMC5130 SET       
5 O& V' |- L$ \7 Y6 u9 Q: p        sendData(0xEC,0x000100C3);                                 * w# U* N6 |: N- m+ G3 ~# {5 z
//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)
% h. u0 D6 h) N6 |9 i# C9 {        sendData(0x90,0x0006160A);                                 # A7 _6 @1 g% _+ _  o: E$ a
//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=6   U9 U3 j9 j+ p. f# L2 j
        sendData(0x91,0x0000000A);                                ) N' d; J- I. ~1 M
//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
" p4 o1 C' s* \- f$ O1 c  E        sendData(0x80,0x00000004);                                " g, `! z. r. C5 S4 q6 b
//PAGE27:EN_PWM_MODE=1,使能5 m: [, L! `$ r$ k7 p. L! Z
        sendData(0x93,0x000001F4);                               
7 W2 d- a7 H2 X( l) B3 u7 S//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM
3 o6 B  L' Z% ]        sendData(0xF0,0x000401C8);                                5 J8 i( i& V0 B0 k' L
//PAGE43WMCONF       
: b1 c5 p8 v7 O/ b( N  a5 L7 [///////////////////////////////////////////////////////////
# Y3 w3 N( @7 u) {. t6 k6 z% z5 j          sendData(0xA4,1000);                                            
: Q! c# D! |. |$ L. e' g$ }//A1=1000第一阶段加速度
' t+ z$ [& K% E1 Y        sendData(0xA5,50000);                                     ! l- k8 q/ O9 v' k/ I+ u- I( o, F" x
//V1=50000加速度阀值速度V  
; ?" w% U& A$ e6 T1 D        sendData(0xA6,5000);                                             $ |9 w7 H' @% Y8 L
//AMAX=5000大于V1的加速度   
$ Z' u$ Y$ l; s/ \- R8 w        sendData(0xA7,200000);                                    
9 \, L9 x7 a" {# {) i2 Z/ h//VMAX=200000
: H& ]8 {4 d( f2 E# \* h        sendData(0xA8,700);                                                               
9 W, T) ~* }' `" u//DMAX=700大于V1的减速度 2 z; r  K( z7 o9 a3 V  C
        sendData(0xAA,1400);                                            
3 i: u# B2 P* V//D1=1400小于V1的减速度 / R. x: k& G2 ~  K' A; H
        sendData(0xAB,10);                                                    
, f) g  T( ^' U  O/ C: W//VSTOP=10停止速度,接近于0
+ D- j; T0 V& v2 ?% a        sendData(0xA0,0x00000000);                                
* f- ~1 T8 |1 n& e  h: f3 i//PAGE35:RAMPMODE=0位置模式,使用所有A、V、D参数       
/ s& a$ Z5 l1 _+ `
mmuuss586 回答时间:2020-3-26 17:32:00
初始化程序如下参考:* F! @. H4 E2 q9 C* V
//TMC5130 SET       
* F# m& `1 F# x$ p4 @$ A        sendData(0xEC,0x000100C3);                                
1 w% Z& c( C( M: x) B' ]//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)3 O. i* _3 ]9 d  H5 H1 m0 w
        sendData(0x90,0x00011601);                                 # v# T* ?3 s5 T) e. ]1 E
//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=1 ; V. X5 l: N) w7 R- B) j2 ?1 N
        sendData(0x91,0x0000000A);                                * @% k! q1 G! J4 O5 B6 G0 Y* x
//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
$ n8 t# z- |3 i1 K& V$ h' Y        sendData(0x80,0x00000004);                               
- t/ M8 p3 `' W) t  D7 V: ?//PAGE27:EN_PWM_MODE=1,使能
. E, \/ q) t' A, L        sendData(0x93,0x000001F4);                               
. [$ @0 K4 y3 Q1 p# Y) O//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM
6 Y. D; U+ O- T        sendData(0xF0,0x000401C8);                                : E5 l  k/ ~, K: h5 i
//PAGE43WMCONF         6 Y- Y2 O3 N. j7 V3 a8 j
          sendData(0xA4,1000);                                            
% I) F0 [5 ^! [* ?# w; R//A1=1000第一阶段加速度8 O  J, D! D' }( Z
        sendData(0xA5,50000);                                    
. M) r! O) _  o/ j//V1=50000加速度阀值速度V11 u- X0 x$ ~, ]. w( r
        sendData(0xA6,5000);                                            
' e8 r) ]5 ~5 H8 [5 D; w. |//AMAX=5000大于V1的加速度        ) P2 k. K& ^. g) j
        sendData(0xA7,200000);                                    
! X, ~0 i) G$ ?5 T  \' _% T5 R0 P//VMAX=200000
$ K6 I$ h0 p# y! E: c9 t6 s        sendData(0xA8,700);                                                                " j' |7 Q6 b( W% S7 f+ E4 z8 z8 S
//DMAX=700大于V1的减速度
# d- c9 w% I- s- q% A3 b        sendData(0xAA,1400);                                             ; I9 P' d; T' ~; P4 c9 c( s
//D1=1400小于V1的减速度
7 \8 B' O$ j5 D* O$ o        sendData(0xAB,10);                                                    
3 T( H- v" z6 Y. i8 D//VSTOP=10停止速度,接近于0
, v0 H- \. Q7 ~- \
mmuuss586 回答时间:2020-3-26 17:33:26
初始化程序如下参考:
! B6 `* I- b$ t" k9 L8 t        HAL_GPIO_WritePin(CFG0_GPIO_Port,CFG0_Pin, GPIO_PIN_SET);                        //PAGE:110 CFG0设置为高,TOOF:236Tclk  M5 p+ H9 Y: z
        SubdivisionSet(16);                //PAGE:111 细分设置为162 W$ i% h0 f$ j7 P7 `
        ISet();                                        //电流设置AGE:111
; P. ]. ^, W1 D2 _# f$ Y% O        HAL_GPIO_WritePin(CFG4_GPIO_Port,CFG4_Pin, GPIO_PIN_SET);                        //PAGE:111 CFG4设置为高,chopper hysteresis斩波器滞后 设置为9
5 H- C' N% H" E0 V) m1 D4 U        HAL_GPIO_WritePin(CFG5_GPIO_Port,CFG5_Pin, GPIO_PIN_SET);               
. T& Z. |5 d  k8 G! a//PAGE:111 CFG5设置为低,chopper blank time斩波器切换期间间隔时间设置为240 T: z- T( p! w9 r  {; n
        HAL_GPIO_WritePin(CFG6_GPIO_Port,CFG6_Pin, GPIO_PIN_RESET);
2 d' h/ E* T+ Q" z! O//PAGE:112 CFG6设置为低电机驱动使能,为高关闭
8 F# p$ {  E) c6 D        HAL_GPIO_WritePin(STEP_GPIO_Port,STEP_Pin, GPIO_PIN_SET);                        //STEP设置为高( y0 a3 y2 M" t. Z+ z
mmuuss586 回答时间:2020-3-26 17:22:05
& z" M4 Z; i2 h5 o+ K( N* ~$ J% k& L
二、硬件设计
; e3 Z$ m' t! d9 U7 l% i
硬件设计接口上:支持SPI或UART或脉冲+方向控制
3 [% m" P2 {! U/ V: k+ `+ N
原理图如下图所示:
1.png : ]1 T. U) Z# Q; W4 t

- D9 A6 x+ t1 H% e+ j

+ M! a! J: ]! @- U& j) s

( N+ V) u  |+ R

# c' d0 J; |7 ]3 t: _) Q& K
mmuuss586 回答时间:2020-3-26 17:23:36
主芯片部分:
1.png ; l- t, x, S1 M& T

$ K9 L; l9 m: z! l. r" ]
mmuuss586 回答时间:2020-3-26 17:24:42
补充说明:
1 B& C' e+ w$ T' y; a1 DSPI_MODE、SD_MODE:对应的J10、J11通过跳线帽选择高、低电平选择不同模式
" |, ?; U! ]( L) v+ a% u9 LVCC、VCC_IO电源:使用芯片内部5V输出电源,如果有外部5V电源可选择外部的,可降低芯片的发热和功耗;: d' d6 e) i" D; G, ~% [7 X
mmuuss586 回答时间:2020-3-26 17:26:03
电源及接电机接口部分如下图:
1.png 1 I8 I8 N: I) ~
9 |2 M$ n) ]4 c7 y8 S8 _
mmuuss586 回答时间:2020-3-26 17:26:30
补充说明:( u( p! W! J% H) Q, x0 `% Z- j9 A( j% J
母线电容CE1选择:一般是1A对应100uF左右(有条件的尽可能大);
2 G* d0 D! X2 o( @8 ]2 }电源保护:有条件的最好加防反接、TVS保护、以及保险丝等9 |8 H0 Y) k# O1 c7 z
mmuuss586 回答时间:2020-3-26 17:27:12
电机接口:如果对EMC要求较高的,最好加些滤波和保护,参考电路如下图
1.png
) V7 b4 u1 v- n8 H( }3 f

$ O6 j1 u' n1 Q
mmuuss586 回答时间:2020-3-26 17:30:40
PCB图参考如下(最好是4层板):
1.png
2.png 5 c$ Y, }3 J3 o. s0 S8 r
9 N3 d  o1 c& z+ A  k
mmuuss586 回答时间:2020-3-26 17:31:11
补充说明:
2 V# T1 V5 {, k  `芯片底部最好不要走其它线,保证地平面完整及散热;
( f  O4 o+ @; x电流取样电阻:5130不需要,5160外部MOS,要差分采样(开尔文接法);
; E! \) s6 z, Z9 L6 X6 a
mmuuss586 回答时间:2020-3-26 17:31:33
三、软件说明  A% y) w5 I2 s$ a/ n+ }
1、SPI接口速度模式. g9 C. V( Q+ S5 F
芯片引脚跳线连接:
& P/ q/ J" B# E9 R. p& cSPI_MODE:接高电平(VCC_IO)  r! [3 y3 c: ^- h4 }
SD_MODE: 接低电平(GND); R/ g) F( W' R4 C1 W  N
J7:短接9 F/ X8 m% G* n
CSNB6
0 d3 J6 t# i" s: N4 ~SCKA5" R+ U* ^2 K# a! j" O7 l' F2 o
SDI:MOSI-PA7
6 H  @0 M4 R% e9 _4 X3 rSDO:MISO-PA6
% X- W& z% Z% G( D: L2 c! @
mmuuss586 回答时间:2020-3-26 17:32:18
2、SPI接口位置控制模式6 M5 p' k4 a5 C! Z5 ?
芯片引脚跳线连接:: Q- C7 s* h" E" z+ J; ^  v
SPI_MODE:接高电平(VCC_IO)* h8 u4 j4 Q3 S8 r
SD_MODE: 接低电平(GND)
( z. m7 B3 e5 a- sJ7:短接
, ~/ j3 u! B! qCSNB6  F, Y+ X9 L0 V* J% ?4 P
SCKA5
& k1 G. H: N! _2 CSDI:MOSI-PA7
& l3 a% ?6 y4 y& O& p+ Y2 D# aSDO:MISO-PA6
7 L5 B6 s6 A- r* A
mmuuss586 回答时间:2020-3-26 17:33:02
3、DIR+STEP接口模式位置控制(无需SPI接口)
$ v! r: L( \: b" B3 O+ }& |) M6 R芯片引脚跳线连接:: `6 x/ y4 H! F
SPI_MODE:接低电平(GND)) e: v: G) N; w+ k2 ?' l+ d- }! s
SD_MODE:接高电平(VCC_IO)8 P$ C$ e  v3 w
STEP:REFL-PB4,J2:短接2 V( G/ V) \% I- X; U9 H  b
DIR: REFR-PB5,J5:短接7 I6 ]8 F: _9 ~6 p, q
CFG6RV_ENN-PC5,通过杜邦线接到底板PC5脚; ^0 y% t+ v, l; v' E# @
CFG5:ENCA-PC8,通过杜邦线接到底板PC8脚
/ y1 i2 P4 K& |9 N6 w, bCFG4:ENCB-PC6,通过杜邦线接到底板PC6脚) ?& G9 A0 N6 l  a" v: m6 V) s
CFG3:CSN-PB6 ,J7:短接' P6 c: o' ]% ?/ c( r5 i
CFG2: SCK-PA5
9 K& p( |. G: d0 p( S/ J& V; YCFG1: MOSI-PA7
9 G4 e: _8 Z; n, b* iCFG0: MISO-PA6/ e( n9 l% m, [, S0 T

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版