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

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

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

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

/ E9 x" p2 P/ X8 I$ @; c* M) C

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

下载

1.08 MB, 下载次数: 164

TMC5130-Shield原理图.pdf

下载

673.85 KB, 下载次数: 57

TMC5130_datasheet_Rev1.16.pdf

下载

2.41 MB, 下载次数: 49

TMC5130 SPI SPEED.rar

下载

7.83 MB, 下载次数: 74

TMC5130 SPI POSITION.rar

下载

7.83 MB, 下载次数: 76

TMC5130 DIR STEP.rar

下载

7.5 MB, 下载次数: 79

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

下载

1.05 MB, 下载次数: 36

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

举报

90个回答
mmuuss586 回答时间:2020-3-26 17:32:34
初始化程序如下参考:
: O: [% S  h6 b  E, _3 y- g- {* z1 S//        TMC5130 SET        3 B) I, k! z, c- Z4 H  E
        sendData(0xEC,0x000100C3);                                 * l* e; u# G; d) q  J( M, S  F
//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)
9 v3 |8 b. Y" I( U& u/ g        sendData(0x90,0x0006160A);                                
$ Z) ^* {1 A( `: _, P//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=6 8 w7 M$ ^  l% O" |6 \6 Y
        sendData(0x91,0x0000000A);                                4 L1 [% X7 g* p; u
//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
0 M2 }, H3 \- z) p9 p5 V        sendData(0x80,0x00000004);                                & J7 h8 `* r9 P) ~
//PAGE27:EN_PWM_MODE=1,使能. p- l3 M6 o2 `. q* e( B9 q7 L/ S1 M
        sendData(0x93,0x000001F4);                                : W7 C: C' Q4 E; D
//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM
9 I. Z7 }+ d4 ^3 ?" K  D8 U        sendData(0xF0,0x000401C8);                                ) e) K6 I9 p& M. f* z
//PAGE43WMCONF       
- ^  D; N% t' u, l2 R///////////////////////////////////////////////////////////) o0 T* H1 ~" v* T, u& H0 i
          sendData(0xA4,1000);                                            
- h" z; J! [, i3 ?% {//A1=1000第一阶段加速度2 p6 G1 J+ G7 Y9 j2 ?
        sendData(0xA5,50000);                                     % A  n. R( C8 Z
//V1=50000加速度阀值速度V  
- U3 h1 `; ^& h  }4 y9 P        sendData(0xA6,5000);                                             ; R/ n9 y) S2 V& T0 B
//AMAX=5000大于V1的加速度   
0 ~! P# ^% d( d3 H) _        sendData(0xA7,200000);                                       a; Q! S/ V$ s8 E3 T
//VMAX=200000 . j0 r, ]8 n/ W  ]* e& q- D' }8 L
        sendData(0xA8,700);                                                                , u! V( t( n; E9 ?, g4 i
//DMAX=700大于V1的减速度
  v) q8 ?# C, ^3 ~        sendData(0xAA,1400);                                            
2 y' r- f1 ^# q( J//D1=1400小于V1的减速度
) j! `7 q  T2 p5 {" W  N        sendData(0xAB,10);                                                     ( v3 O- H; Q0 s( U: a- z
//VSTOP=10停止速度,接近于0( B6 i6 V5 \+ q# _- r; V
        sendData(0xA0,0x00000000);                                
" o+ D" L. z, `/ Y//PAGE35:RAMPMODE=0位置模式,使用所有A、V、D参数       
- O+ p7 b1 q3 k: f
mmuuss586 回答时间:2020-3-26 17:32:00
初始化程序如下参考:2 p9 {$ T; M4 h1 {* `/ L3 t
//TMC5130 SET       
% q! M5 U* s; e+ S7 t        sendData(0xEC,0x000100C3);                                 : X) u5 Z8 v2 P  W* i$ J/ |
//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)* F% v, ?# m9 i
        sendData(0x90,0x00011601);                                
: ]( J0 x; |8 X1 h//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=1
4 \# Q: @6 S% N# }        sendData(0x91,0x0000000A);                                6 N) n0 w+ Y6 Z
//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时# F+ E" ?, P& O' O$ ?9 |8 H
        sendData(0x80,0x00000004);                               
: L, ^) m- V2 u6 X) [//PAGE27:EN_PWM_MODE=1,使能
. U' ^- ?: r3 B5 J0 G' A        sendData(0x93,0x000001F4);                                7 [: h& F" E' u
//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM
1 b$ ^* B; Y' d9 Q. E: ~        sendData(0xF0,0x000401C8);                               
' N. J$ Q* ~. F5 J3 ^0 j* r/ {//PAGE43WMCONF         
; j6 X6 M% y' @- [          sendData(0xA4,1000);                                            
$ s  Z% m+ u+ g//A1=1000第一阶段加速度! _- b% B1 s( M  G2 [/ k
        sendData(0xA5,50000);                                     ) H9 ~! _. N' Q9 [
//V1=50000加速度阀值速度V1) W' e+ r6 P9 B! ?+ Y2 i
        sendData(0xA6,5000);                                             " P  s3 x5 {- B1 ^3 m  H( |
//AMAX=5000大于V1的加速度        + A$ q7 s/ y6 m* H
        sendData(0xA7,200000);                                    
! m! a! R8 A0 p- n//VMAX=200000
9 Y% ]( E9 w' Z" F. M& y# t& ^$ G% W        sendData(0xA8,700);                                                                : Y' k$ {: L! Z# N
//DMAX=700大于V1的减速度 ) ~# O* Y2 K; b1 ]
        sendData(0xAA,1400);                                            
) C6 L: O, O* ]) N: F2 R/ M4 A//D1=1400小于V1的减速度
. t* |- r! z. I. x        sendData(0xAB,10);                                                    
, f4 b- J- z3 r6 z2 X; `$ Z( J# R//VSTOP=10停止速度,接近于0
) ~4 g; o/ D, t5 J8 V6 q3 d
Yannike 回答时间:2024-7-5 09:48:42
mmuuss586 回答时间:2020-3-26 17:22:05

# M; [* Y* H6 @$ u
二、硬件设计

7 e9 w- H2 [  _6 [
硬件设计接口上:支持SPI或UART或脉冲+方向控制

* Y# i( {* \. \, n$ N: Z9 v
原理图如下图所示:
1.png 8 |9 j7 a5 K6 }/ G. C) E
/ s3 R% `4 m5 E5 `8 B  D. S) x4 b

' a5 P- y' g4 y% ]

- R/ o% h( E5 N1 o
6 h% y& m1 _: S2 n: I9 G( ]; u$ N9 h
mmuuss586 回答时间:2020-3-26 17:23:36
主芯片部分:
1.png
/ |- Z6 w8 B- Y9 |. w+ o" G; Z

# l( Z& q7 U8 W9 N' w1 D
mmuuss586 回答时间:2020-3-26 17:24:42
补充说明:" ]* m9 C# b; ?. i# }) U- P. G
SPI_MODE、SD_MODE:对应的J10、J11通过跳线帽选择高、低电平选择不同模式4 u0 _9 N. }5 Q" N2 I5 X
VCC、VCC_IO电源:使用芯片内部5V输出电源,如果有外部5V电源可选择外部的,可降低芯片的发热和功耗;
9 F8 M, ~# C- b, o7 L  _% S' t5 E% q
mmuuss586 回答时间:2020-3-26 17:26:03
电源及接电机接口部分如下图:
1.png : \, @/ O( t  {: ^7 T0 V$ E

6 Y% E2 \7 w* z1 [
mmuuss586 回答时间:2020-3-26 17:26:30
补充说明:* W: g. t1 S& C
母线电容CE1选择:一般是1A对应100uF左右(有条件的尽可能大);# u/ B" i8 g1 b/ R) ~* g
电源保护:有条件的最好加防反接、TVS保护、以及保险丝等# S- ]) V- l5 w, {" f9 W+ @
mmuuss586 回答时间:2020-3-26 17:27:12
电机接口:如果对EMC要求较高的,最好加些滤波和保护,参考电路如下图
1.png 3 E+ `, p% {& m- p; m. w

4 V# J2 a" w  Z. h6 o; T! ^
mmuuss586 回答时间:2020-3-26 17:30:40
PCB图参考如下(最好是4层板):
1.png
2.png
  [7 R; ?: ]% A
3 }9 Q9 P5 L0 Z( @- A4 O* j
mmuuss586 回答时间:2020-3-26 17:31:11
补充说明:4 g; V$ U: ^% W5 \: C. ]
芯片底部最好不要走其它线,保证地平面完整及散热;+ t) {3 O. Z$ g' k
电流取样电阻:5130不需要,5160外部MOS,要差分采样(开尔文接法);, Z; b% J6 ~: ^' m9 r" N
mmuuss586 回答时间:2020-3-26 17:31:33
三、软件说明- W: O2 M1 {) I6 E! O
1、SPI接口速度模式
+ Y( ^8 [1 b1 i芯片引脚跳线连接:
: ?) P; W2 z3 J5 Q1 P* h, x  m$ DSPI_MODE:接高电平(VCC_IO)" e( }/ M& j! U) w2 U0 c- i8 B
SD_MODE: 接低电平(GND)1 v! z/ H  h7 i, N2 M2 z* D
J7:短接
0 ^  \3 k. K/ t2 O' [  tCSNB6$ s+ ^7 J+ [0 B8 F  H
SCKA58 |$ J- [4 L: g  r# e) B
SDI:MOSI-PA7" `2 Y! P1 p2 q# {" [$ z
SDO:MISO-PA6$ c( R3 _( \( G; g$ _
mmuuss586 回答时间:2020-3-26 17:32:18
2、SPI接口位置控制模式
7 l( O8 Q6 [* S7 P2 J; N芯片引脚跳线连接:0 F7 H$ X! S% }) K
SPI_MODE:接高电平(VCC_IO)4 X) R; N' |$ S2 t
SD_MODE: 接低电平(GND): A8 b+ H" ?2 P; H: c: u' J, ^
J7:短接& e/ r2 [4 n+ Q4 ]
CSNB6' L9 g$ L  I( w# S, v9 R5 S
SCKA5
/ E) ?8 E9 Q0 }; g/ w2 W6 c; oSDI:MOSI-PA70 @8 d+ w4 B1 r  e1 T1 Z
SDO:MISO-PA6
3 G7 w/ q- D. A% [% Z
mmuuss586 回答时间:2020-3-26 17:33:02
3、DIR+STEP接口模式位置控制(无需SPI接口)
  @4 z& n: M' @3 _/ v  X芯片引脚跳线连接:
. \) ^% ^) }& D" x- ~& tSPI_MODE:接低电平(GND)
# R% r# Y7 d+ M- t% MSD_MODE:接高电平(VCC_IO)2 t8 V+ j9 w0 s8 U$ q
STEP:REFL-PB4,J2:短接
; C/ ~9 b- G( w- d2 w. U& PDIR: REFR-PB5,J5:短接* Z, ?8 \' }, J9 F1 u8 `8 P/ G
CFG6RV_ENN-PC5,通过杜邦线接到底板PC5脚
' e, L0 i3 P" ^/ E. Z- oCFG5:ENCA-PC8,通过杜邦线接到底板PC8脚
  H% L7 u5 Z, ]+ e2 zCFG4:ENCB-PC6,通过杜邦线接到底板PC6脚
5 m2 f6 l5 _- GCFG3:CSN-PB6 ,J7:短接
1 q6 J  Z2 J* c, E5 T/ {7 b7 FCFG2: SCK-PA5
  S- P# m4 Y) C$ ?CFG1: MOSI-PA7( H" q$ O* L  Z7 _- h
CFG0: MISO-PA6
3 d+ X  \3 _+ @3 l# m9 K  ?# m
mmuuss586 回答时间:2020-3-26 17:33:26
初始化程序如下参考:
: h, k$ u* y% U* \        HAL_GPIO_WritePin(CFG0_GPIO_Port,CFG0_Pin, GPIO_PIN_SET);                        //PAGE:110 CFG0设置为高,TOOF:236Tclk/ [9 T" ~4 C- I$ y6 L. K- H8 ^
        SubdivisionSet(16);                //PAGE:111 细分设置为16
; X% y4 |; _5 |0 v/ A% i        ISet();                                        //电流设置AGE:111
- f9 ^; c- O8 P# N        HAL_GPIO_WritePin(CFG4_GPIO_Port,CFG4_Pin, GPIO_PIN_SET);                        //PAGE:111 CFG4设置为高,chopper hysteresis斩波器滞后 设置为9
/ D2 W# Q0 M3 H% v, O        HAL_GPIO_WritePin(CFG5_GPIO_Port,CFG5_Pin, GPIO_PIN_SET);               
/ [& n. E. u" o0 r9 \2 U$ ~1 X* u//PAGE:111 CFG5设置为低,chopper blank time斩波器切换期间间隔时间设置为24  w: S; j# q( L3 a0 }/ J
        HAL_GPIO_WritePin(CFG6_GPIO_Port,CFG6_Pin, GPIO_PIN_RESET);
& S0 N/ F# C6 P( W; o- E7 t7 d//PAGE:112 CFG6设置为低电机驱动使能,为高关闭: B& R+ t+ c- d
        HAL_GPIO_WritePin(STEP_GPIO_Port,STEP_Pin, GPIO_PIN_SET);                        //STEP设置为高
* O5 n7 Y) q$ j# H) v% A

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版