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

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

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

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

基于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, 下载次数: 50

TMC5130 SPI POSITION.rar

下载

7.83 MB, 下载次数: 52

TMC5130 DIR STEP.rar

下载

7.5 MB, 下载次数: 61

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

下载

1.05 MB, 下载次数: 15

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

举报

88个回答
mmuuss586 回答时间:2020-3-26 17:32:34
初始化程序如下参考:" e. h" `4 W* s
//        TMC5130 SET        3 l1 A; ^( j* ?5 ^# {
        sendData(0xEC,0x000100C3);                                 . E' j+ n# }/ J$ }0 v4 K
//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)$ ^8 P  \/ G$ F9 C' h
        sendData(0x90,0x0006160A);                                
9 n: D' z2 p. ?% B3 E- E& D//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=6
- s3 Y, c1 {1 i: _' y        sendData(0x91,0x0000000A);                                7 j1 J8 C* Z* Z7 s. y" n. ~
//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
" h9 I) E% t4 d* Z% D& \        sendData(0x80,0x00000004);                                0 f& Z4 E' g) r- D
//PAGE27:EN_PWM_MODE=1,使能$ H, q4 m: b3 F9 Y0 n
        sendData(0x93,0x000001F4);                               
3 E* D- g/ V1 j; R$ X7 z; v- Y//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM
: B; H9 X/ p2 R; }; O6 ?( M# q1 b        sendData(0xF0,0x000401C8);                                1 [& x2 r: K  J+ W
//PAGE43WMCONF       
, Q2 @5 O5 {; v* f% {///////////////////////////////////////////////////////////( b$ @' N7 c, [6 y1 B3 ~( e9 r
          sendData(0xA4,1000);                                            
) N% }# A' ?- J0 f$ T: P//A1=1000第一阶段加速度1 r7 H- T% }8 v. @
        sendData(0xA5,50000);                                    
( X0 {8 n* r; D/ {//V1=50000加速度阀值速度V  
- @# G+ m4 d4 L9 c! W, Q; I        sendData(0xA6,5000);                                            
9 z# U$ H: g. w- T4 q//AMAX=5000大于V1的加速度   4 T$ x& X% Y7 r; N" O; F
        sendData(0xA7,200000);                                     ; _  u# ]8 _! U) N$ j" F6 a
//VMAX=200000
3 D. H& {4 W. R        sendData(0xA8,700);                                                               
; I0 V# c# r) t: U; c//DMAX=700大于V1的减速度 4 w( i' t" R& g0 U
        sendData(0xAA,1400);                                            
2 |+ j) B. N5 B* }//D1=1400小于V1的减速度 3 m5 n( ?: g( L( ^
        sendData(0xAB,10);                                                     9 z0 w9 p+ z+ S9 c
//VSTOP=10停止速度,接近于0
) f) y, S& j, p5 q" O, Y9 J! }        sendData(0xA0,0x00000000);                                 7 V, }! q1 Z1 {4 K% w# [! z
//PAGE35:RAMPMODE=0位置模式,使用所有A、V、D参数       
+ R. E+ r, o; z$ ?1 d' H
mmuuss586 回答时间:2020-3-26 17:32:00
初始化程序如下参考:' o% ~1 l' l7 x* C) h
//TMC5130 SET       
$ S# c2 ]# [7 Q9 I  @        sendData(0xEC,0x000100C3);                                 * K! N- y3 z; r- t: p4 ^
//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)1 z  `8 q( A. k5 w, Q8 R/ k4 V
        sendData(0x90,0x00011601);                                
7 _2 m9 z+ ~% W//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=1 % n) D& V. O% N$ G/ Q
        sendData(0x91,0x0000000A);                               
* b8 V1 ~! |, Z: Q( J//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时/ Y/ A  |+ ]4 P7 D7 W
        sendData(0x80,0x00000004);                               
* w+ J& x. Q, z* i' M//PAGE27:EN_PWM_MODE=1,使能
" ?( z% n  W2 L5 L5 }        sendData(0x93,0x000001F4);                                3 O: s' A' V& m5 H) s/ Q
//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM
0 [" d9 Y% i. I1 r, F, s        sendData(0xF0,0x000401C8);                               
; o( j& g: h) Y: [//PAGE43WMCONF         9 u6 E- s1 f+ X" @- e2 w
          sendData(0xA4,1000);                                            
; z) x% ~* x" P9 X" Y//A1=1000第一阶段加速度4 U4 ~8 R1 P: c6 n
        sendData(0xA5,50000);                                    
6 \4 z4 @+ p' Y3 X//V1=50000加速度阀值速度V1
( p. J0 @! [5 k# N% m: }2 T        sendData(0xA6,5000);                                             / J+ A" |( X' s! B  A" s
//AMAX=5000大于V1的加速度        
+ _7 }3 N  u4 _; g4 ]0 I        sendData(0xA7,200000);                                    
* i- K8 H$ z5 ^( R$ Z& h# F9 O//VMAX=200000
- @# c: l! g( [4 c% j9 N        sendData(0xA8,700);                                                               
7 [. Z0 u4 t  v7 r6 [4 X* z8 I//DMAX=700大于V1的减速度 6 D: f- {2 Q- V
        sendData(0xAA,1400);                                            
/ g- r6 f4 M( m. l) V2 x//D1=1400小于V1的减速度 ( ]7 v; o4 U# E
        sendData(0xAB,10);                                                     # w; _2 k& ?/ }; T$ N+ N9 q
//VSTOP=10停止速度,接近于06 G# S- `* K/ L4 V
mmuuss586 回答时间:2020-3-26 17:33:26
初始化程序如下参考:
1 }* `  M( m( n) \( `$ S* r5 Y/ @        HAL_GPIO_WritePin(CFG0_GPIO_Port,CFG0_Pin, GPIO_PIN_SET);                        //PAGE:110 CFG0设置为高,TOOF:236Tclk" o+ A) E3 T0 }5 F- S9 f
        SubdivisionSet(16);                //PAGE:111 细分设置为16
0 O% v0 D3 V2 m( }" k0 [% S! t        ISet();                                        //电流设置AGE:1116 W8 d  H# l: b0 M! ?+ H+ \! {
        HAL_GPIO_WritePin(CFG4_GPIO_Port,CFG4_Pin, GPIO_PIN_SET);                        //PAGE:111 CFG4设置为高,chopper hysteresis斩波器滞后 设置为9( C* E5 O- U4 i" l6 S! ~! y7 U+ v! l
        HAL_GPIO_WritePin(CFG5_GPIO_Port,CFG5_Pin, GPIO_PIN_SET);               
9 m$ p7 A  U( \) n2 z: u7 R  u  [//PAGE:111 CFG5设置为低,chopper blank time斩波器切换期间间隔时间设置为24; {* e, z8 C% D" u
        HAL_GPIO_WritePin(CFG6_GPIO_Port,CFG6_Pin, GPIO_PIN_RESET);) Q5 |. D% m+ Z& N2 W) I3 O" N
//PAGE:112 CFG6设置为低电机驱动使能,为高关闭( K7 h% p( P- z$ _: c
        HAL_GPIO_WritePin(STEP_GPIO_Port,STEP_Pin, GPIO_PIN_SET);                        //STEP设置为高
& T* p1 Z  U/ ?6 Y9 _; s( _) c
mmuuss586 回答时间:2020-3-26 17:22:05
  g* R$ |. z! j& k
二、硬件设计
# N. L" O7 j- z  m7 j  b# m
硬件设计接口上:支持SPI或UART或脉冲+方向控制

8 x5 K% J, T$ F6 a3 Y- \) M; z1 o
原理图如下图所示:
1.png
( Q7 t7 q. v4 t- V+ W9 K4 Q0 O) S
, a9 K- N  S% G" X% i

/ E  Z% @9 Y. A

0 f$ p' l& J; j. `. |* ~: D

/ l0 Q% H9 R) h& D- b
mmuuss586 回答时间:2020-3-26 17:23:36
主芯片部分:
1.png - g$ s+ f" L2 k& U* s% y. K; g( j, u
3 t2 V3 y. [! A; \$ F6 j
mmuuss586 回答时间:2020-3-26 17:24:42
补充说明:
" f2 c) v1 u8 l) S& F, ySPI_MODE、SD_MODE:对应的J10、J11通过跳线帽选择高、低电平选择不同模式
7 G/ }' R; l& A0 J2 x7 bVCC、VCC_IO电源:使用芯片内部5V输出电源,如果有外部5V电源可选择外部的,可降低芯片的发热和功耗;5 k; P: N# P( S, r. x# i5 X* P6 L
mmuuss586 回答时间:2020-3-26 17:26:03
电源及接电机接口部分如下图:
1.png . M7 k+ W3 J% ^7 \5 M" b

& `2 R5 Q9 `4 [5 m
mmuuss586 回答时间:2020-3-26 17:26:30
补充说明:- y8 ^4 o2 B6 a" U
母线电容CE1选择:一般是1A对应100uF左右(有条件的尽可能大);" ]6 \% k+ _" V" e2 `6 D3 I
电源保护:有条件的最好加防反接、TVS保护、以及保险丝等
( g( X* p: [/ x. N
mmuuss586 回答时间:2020-3-26 17:27:12
电机接口:如果对EMC要求较高的,最好加些滤波和保护,参考电路如下图
1.png 4 }; T" }2 E. A4 v' T( t+ e$ r6 ^/ i

* \5 m7 x- q# q/ F) n  J
mmuuss586 回答时间:2020-3-26 17:30:40
PCB图参考如下(最好是4层板):
1.png
2.png ! ?3 n3 o0 M9 C4 ?" i( `7 k( {
+ O9 c7 U. [# C6 h% ^0 W4 w! E
mmuuss586 回答时间:2020-3-26 17:31:11
补充说明:
0 P; H7 U: C4 j9 y$ B芯片底部最好不要走其它线,保证地平面完整及散热;
! o; n: Q5 a) C5 k' L电流取样电阻:5130不需要,5160外部MOS,要差分采样(开尔文接法);0 @* L4 }- n5 n# D
mmuuss586 回答时间:2020-3-26 17:31:33
三、软件说明
4 V6 j% n: @1 ^0 X) Y4 u1、SPI接口速度模式9 z$ Y. v; M2 h
芯片引脚跳线连接:
( W* G$ C) d4 P# z, JSPI_MODE:接高电平(VCC_IO)
$ R4 r& J2 h9 `  ~5 iSD_MODE: 接低电平(GND)$ U1 t- Z& @5 o* w6 f# c
J7:短接: @) {4 N0 @4 q. {
CSNB6
0 r" ], e* o9 ]; o0 t' G* W. uSCKA5
* K4 K$ d& `" ]2 Q4 E1 GSDI:MOSI-PA7# \4 ^2 U  o0 J+ D% `4 {
SDO:MISO-PA6( [( }8 [2 l$ \  h
mmuuss586 回答时间:2020-3-26 17:32:18
2、SPI接口位置控制模式
+ d  |  p0 Y# ]) R5 A芯片引脚跳线连接:/ {( M% s5 l) q! z; G4 F  L3 S
SPI_MODE:接高电平(VCC_IO)
, z  a1 D3 g' ?SD_MODE: 接低电平(GND)
% J" v6 v" G) ^* O* F* T  t6 @J7:短接
1 [2 a2 m3 F5 A- cCSNB6  t# L) F& l5 z
SCKA50 R6 p' p1 `7 D6 `& v0 {7 H/ p
SDI:MOSI-PA7
" I1 d7 X) ^3 ISDO:MISO-PA6# K6 q% R6 Y6 Z4 ^1 \1 s! h8 M6 E
mmuuss586 回答时间:2020-3-26 17:33:02
3、DIR+STEP接口模式位置控制(无需SPI接口)' C& }: e& E4 f6 Z% ~# y3 n
芯片引脚跳线连接:
# X: H1 Z4 D. ^SPI_MODE:接低电平(GND). u8 e7 K! O7 u5 T# ^1 w% e
SD_MODE:接高电平(VCC_IO)7 ?+ m$ x( b' ~9 j" ~
STEP:REFL-PB4,J2:短接
  ?4 `# `$ {& r2 z+ R2 e" |6 z) e; oDIR: REFR-PB5,J5:短接" F/ v+ S; ^; m
CFG6RV_ENN-PC5,通过杜邦线接到底板PC5脚
( s/ |- R# K9 GCFG5:ENCA-PC8,通过杜邦线接到底板PC8脚
* K3 u) I! [: }  H  sCFG4:ENCB-PC6,通过杜邦线接到底板PC6脚0 N9 o* T4 S# ]% L' G
CFG3:CSN-PB6 ,J7:短接
. h/ U+ k* t. ^8 j4 g* F  lCFG2: SCK-PA58 `9 A3 ^6 x* y# [  t
CFG1: MOSI-PA7
. J; \2 |0 B8 S6 P" w1 K4 j: SCFG0: MISO-PA6* q6 g( j# E, u% F

所属标签

相似分享

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