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

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

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

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

8 w* Q7 O- e# m3 O: N  U+ S4 h# z

基于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
初始化程序如下参考:% Q* M" V: P/ `5 \) h9 [
//        TMC5130 SET        ' b. g& D) }! X8 z5 x( I
        sendData(0xEC,0x000100C3);                                 & O9 B' o* U& J* v; o' t: ]
//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)
) n) s+ r; g. n+ S1 A" ]( K        sendData(0x90,0x0006160A);                                
. ^  ^+ S7 k% Y* l6 p9 {//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=6 - k% }' N# k% D
        sendData(0x91,0x0000000A);                               
$ D+ u" |; r' y3 D//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时
% Z% I( G7 `  @$ F        sendData(0x80,0x00000004);                               
. g* o6 S# r. j//PAGE27:EN_PWM_MODE=1,使能
$ J) X( k1 v, w+ w; G, k        sendData(0x93,0x000001F4);                                  ]2 M' R! e! p% W0 c
//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM, X# n% ^  M2 z3 e# _! A
        sendData(0xF0,0x000401C8);                                / p  R9 N8 u2 G9 v2 i
//PAGE43WMCONF       
0 a) a8 q" g( }  W& {% i///////////////////////////////////////////////////////////+ ~: G. o8 ^# @0 U1 Y) C
          sendData(0xA4,1000);                                             5 x( o) n, g3 S7 k/ @
//A1=1000第一阶段加速度
, B$ J7 O: K1 y5 _5 c* B- S        sendData(0xA5,50000);                                     7 p/ \; m+ L! G# Z
//V1=50000加速度阀值速度V  ! v: B2 ~* p* |
        sendData(0xA6,5000);                                            
$ X$ o! k# Q. \* R: ^//AMAX=5000大于V1的加速度   
- i+ a1 T) L, P* C8 [- |$ X        sendData(0xA7,200000);                                    
8 W- p. l0 K7 F& @+ F//VMAX=200000
  f- {, U# k+ x        sendData(0xA8,700);                                                                4 X+ }8 x1 o. i: M  d& B
//DMAX=700大于V1的减速度 - `7 d: j# Y; b) l' n- @& l
        sendData(0xAA,1400);                                            
* r+ K4 P. L, w//D1=1400小于V1的减速度
; u0 u1 m% P' a- i) l        sendData(0xAB,10);                                                     # N* f* x0 L- F3 G. \; i
//VSTOP=10停止速度,接近于0
5 t1 o! C+ t6 Q4 v2 H+ }4 W        sendData(0xA0,0x00000000);                                 + d1 P: t3 h! N. q, G7 |
//PAGE35:RAMPMODE=0位置模式,使用所有A、V、D参数        ! x' N* Y- O% Q& m2 |
mmuuss586 回答时间:2020-3-26 17:32:00
初始化程序如下参考:
( r1 w$ n4 E" i5 ^! A! n3 r//TMC5130 SET       
: z! b; D+ U" X) }        sendData(0xEC,0x000100C3);                                
6 W* T! J2 F) R* Y, f9 j# V) r//CHOPCONF: TOFF=3, HSTRT=4, HEND=1, TBL=2, CHM=0 (spreadcycle)
" E) K! |% u& R7 e        sendData(0x90,0x00011601);                                
( E+ K% F* J  s4 a% g//PAGE33:IHOLD_IRUN: IHOLD=10, IRUN=22(31 max.current), IHOLDDELAY=1 3 |$ O# J" V; x  u) k
        sendData(0x91,0x0000000A);                               
9 G  d# t( d, Y1 @) f. b//PAGE33:TPOWERDOWN=10:电机静止到电流减小之间的延时& I, ~: F" B) c3 n  c* T
        sendData(0x80,0x00000004);                               
' E5 {/ z7 C6 }% y' z7 o5 O6 c$ N//PAGE27:EN_PWM_MODE=1,使能
: a. f' i1 T- ]9 r! c3 t5 q        sendData(0x93,0x000001F4);                                1 q5 J' G& z* R% }2 ^1 ?
//PAGE33:TPWM_THRS=500,对应切换速度35000=ca.30RPM$ ]( u0 r7 c- b" z
        sendData(0xF0,0x000401C8);                                . U8 k4 x8 X; @0 C6 b$ G
//PAGE43WMCONF         ; w+ f  R% a$ o. t4 `
          sendData(0xA4,1000);                                             1 ^, o  L# [; u1 {* @% M
//A1=1000第一阶段加速度
/ j6 A  F5 A. p8 r        sendData(0xA5,50000);                                     ' A; W0 M  l5 W& p. c5 ]; K
//V1=50000加速度阀值速度V1* w8 Z" ?* B8 o4 \- ]
        sendData(0xA6,5000);                                             9 b# b4 y7 ?5 Y( J
//AMAX=5000大于V1的加速度        
$ O' e& c2 k, Y0 j& \2 E        sendData(0xA7,200000);                                     , b  @# t0 V  o* ]7 X5 X& u: j3 g! X! W
//VMAX=200000
  e0 `3 E4 D8 j3 |: B$ v        sendData(0xA8,700);                                                               
' |% i2 E0 O. `//DMAX=700大于V1的减速度
8 v1 X5 o: d- Q* v% C) d% }        sendData(0xAA,1400);                                             " c3 |# b& h4 o: L# V0 C
//D1=1400小于V1的减速度
1 v. j" L8 F0 V* e. s3 ?# Q        sendData(0xAB,10);                                                    
; W+ @( O" S) Q//VSTOP=10停止速度,接近于0
9 C# C& r8 ]& f) A) M& N3 N
Yannike 回答时间:2024-7-5 09:48:42
mmuuss586 回答时间:2020-3-26 17:22:05
3 @2 g- ?( [& ^6 V1 @' \
二、硬件设计
8 D  u1 _; ]2 N6 i
硬件设计接口上:支持SPI或UART或脉冲+方向控制

- e$ n. y! R/ l
原理图如下图所示:
1.png
# x7 s, \3 G4 b6 R* `; T. Z4 {

$ v4 A- b  V  @6 P* I6 k
2 w/ v) U) P5 h  J4 w1 S
5 P5 _. p4 Z7 T  M( t

# P8 i- Q* k. y$ ~
mmuuss586 回答时间:2020-3-26 17:23:36
主芯片部分:
1.png
5 b: y% W) R: @' K: q. X1 I
6 m7 d6 G- ?1 |1 q( r
mmuuss586 回答时间:2020-3-26 17:24:42
补充说明:
, ^- X& N4 z5 Z6 o) nSPI_MODE、SD_MODE:对应的J10、J11通过跳线帽选择高、低电平选择不同模式
$ |: R" x4 f9 ]$ z) cVCC、VCC_IO电源:使用芯片内部5V输出电源,如果有外部5V电源可选择外部的,可降低芯片的发热和功耗;& \4 r/ k2 s# I9 j. y9 j
mmuuss586 回答时间:2020-3-26 17:26:03
电源及接电机接口部分如下图:
1.png
% m! `/ V8 H/ Z
/ X1 u, y* L! @, O
mmuuss586 回答时间:2020-3-26 17:26:30
补充说明:" |3 Z" G$ G. L# `/ }
母线电容CE1选择:一般是1A对应100uF左右(有条件的尽可能大);
( ~0 k- w- W2 M/ ]; q电源保护:有条件的最好加防反接、TVS保护、以及保险丝等
) z7 m5 C& v; t+ A* e/ ]# v+ L
mmuuss586 回答时间:2020-3-26 17:27:12
电机接口:如果对EMC要求较高的,最好加些滤波和保护,参考电路如下图
1.png $ H- N$ H' g- Q& y( r

, x% K3 d7 E" @& i  k" A) u
mmuuss586 回答时间:2020-3-26 17:30:40
PCB图参考如下(最好是4层板):
1.png
2.png ; e5 r, V. p+ Z) _& J% a9 a
; k, h. q& [% r! a* j9 U
mmuuss586 回答时间:2020-3-26 17:31:11
补充说明:* Y/ |2 {/ M2 H0 _: e$ ~
芯片底部最好不要走其它线,保证地平面完整及散热;
+ `1 x5 ^4 `/ _" p) ?电流取样电阻:5130不需要,5160外部MOS,要差分采样(开尔文接法);1 N- }3 e% M7 K& w+ C. @, I
mmuuss586 回答时间:2020-3-26 17:31:33
三、软件说明$ c( [- f3 L7 [2 N, o+ S9 P
1、SPI接口速度模式
( N' n1 x& [5 `* @芯片引脚跳线连接:
- t4 ?( @$ I+ eSPI_MODE:接高电平(VCC_IO)6 N; u+ \2 H( P- w& V8 N
SD_MODE: 接低电平(GND)0 ]; `- w% B2 U) p& J
J7:短接
6 ^* u1 g, z  j9 n, }/ _- q% `CSNB6
. F5 o8 F) q5 j0 S0 }* t& qSCKA54 l0 p8 O( e6 s" p( `: S
SDI:MOSI-PA7
( l0 s7 n9 a7 j- OSDO:MISO-PA6" d/ _5 S0 v% A! {6 |! \
mmuuss586 回答时间:2020-3-26 17:32:18
2、SPI接口位置控制模式
  ~- b" c/ U- H/ y7 v芯片引脚跳线连接:
- c, H6 a% W/ I7 X/ j0 d/ e1 m% a6 q( HSPI_MODE:接高电平(VCC_IO)
% N. |, U3 d2 {2 h" l3 P3 f: wSD_MODE: 接低电平(GND)8 R; O5 V  T, W
J7:短接
1 p8 C6 ?6 p# S! A1 M0 z# A! ECSNB6
& p) l4 w" U7 JSCKA5: G3 r5 d% ]! Z8 h# S; f: {6 {! b
SDI:MOSI-PA7- N; T/ T$ a2 j! o, K7 f8 ~
SDO:MISO-PA64 [- A' L# h& E
mmuuss586 回答时间:2020-3-26 17:33:02
3、DIR+STEP接口模式位置控制(无需SPI接口)
  g  P2 G9 n1 ~- K# @芯片引脚跳线连接:6 m2 j2 g' E0 I$ A& g
SPI_MODE:接低电平(GND)$ U; G& [) x9 O3 S
SD_MODE:接高电平(VCC_IO)
  G" K9 W, b9 }* e( H# gSTEP:REFL-PB4,J2:短接
4 |" L8 p! t6 r# }  SDIR: REFR-PB5,J5:短接; n) ~$ a2 h! F6 V
CFG6RV_ENN-PC5,通过杜邦线接到底板PC5脚% u& m2 r3 J  G. C
CFG5:ENCA-PC8,通过杜邦线接到底板PC8脚4 A- X/ a2 X1 ^" Y% o+ J1 I8 I& \
CFG4:ENCB-PC6,通过杜邦线接到底板PC6脚
8 X9 I' R& i* ^5 L" ?2 _CFG3:CSN-PB6 ,J7:短接
6 y- M, M; @+ b8 B' YCFG2: SCK-PA5
+ Q9 n  [- Q0 QCFG1: MOSI-PA7' _( x3 A/ L% I, d5 x' _
CFG0: MISO-PA6; W' I( E6 J- g9 Q( [9 P# s: z. J
mmuuss586 回答时间:2020-3-26 17:33:26
初始化程序如下参考:
1 U! I1 V. V7 ]7 f        HAL_GPIO_WritePin(CFG0_GPIO_Port,CFG0_Pin, GPIO_PIN_SET);                        //PAGE:110 CFG0设置为高,TOOF:236Tclk
+ M6 F* b. u' u; t( A        SubdivisionSet(16);                //PAGE:111 细分设置为16( g; z5 I0 U4 D9 ^& q8 |& _6 \5 ~( c
        ISet();                                        //电流设置AGE:111! \' y4 c; r" H+ r/ U7 p
        HAL_GPIO_WritePin(CFG4_GPIO_Port,CFG4_Pin, GPIO_PIN_SET);                        //PAGE:111 CFG4设置为高,chopper hysteresis斩波器滞后 设置为9
$ z- i/ r) ?& K* c        HAL_GPIO_WritePin(CFG5_GPIO_Port,CFG5_Pin, GPIO_PIN_SET);               
/ o4 ~$ y2 [: X) K//PAGE:111 CFG5设置为低,chopper blank time斩波器切换期间间隔时间设置为24
+ A5 P- D4 C& v" a        HAL_GPIO_WritePin(CFG6_GPIO_Port,CFG6_Pin, GPIO_PIN_RESET);
7 b3 E* t, C2 ?; z//PAGE:112 CFG6设置为低电机驱动使能,为高关闭1 Q' i  M" q9 o+ n8 @1 z6 L; }
        HAL_GPIO_WritePin(STEP_GPIO_Port,STEP_Pin, GPIO_PIN_SET);                        //STEP设置为高
$ Z( }4 o6 n4 C8 p% g+ D3 E

所属标签

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