Altium Designer画的THB7128大功率高细分 混合式步进电机驱动模块的电路原理图和PCB图如下:(51hei附件中可下载工程文件)
【模块的标注图片】 【步进电机控制接线图】 用户可根据需要采用共阳极接法或者共阴极接法。 - 共阳极接法:分别将脉冲+、方向+、使能+连接在一起,连接到控制系统的电源上,如果此电源是+5伏,可直接接入,如果此电源大于+5伏,则需外部另加限流电阻R,保证给驱动器内部光耦提供8—15mA的驱动电流。输入信号低电平有效。
- 共阴极接法:分别将脉冲-、方向-、使能-,连接到控制系统的地端(SGND,与电源地隔离),输入信号高电平有效。限流电阻同上
拨码开关作用: 电机细分设定: (拨码开关常态均为低电平,接通为高电平。) 工作电流设定:
实物图片:
关于THB7128芯片应用注意事项
在使用THB7128过程中,有以下几点需要注意:
1、芯片击穿的电压为36V(空载状态下),电机在运行时会产生的感应电动势,电感越大、速度越快产生的电动势越大。所以在选择电源时,需要把这考虑进去,推荐最高使用32V以下电源。
2、芯片的锁定时间设置在0.6s,也就是说,在0.6s的时间内脉冲(CLK)没有变化,芯片就减小VREF的值,从而达到电机在无信号的情况下低电流工作,降低芯片的功耗。改变下图中电阻R4的大小,即可改变锁定电流的大小。
1、OSC1为衰减时间设置,推荐100pf~470pf之间,对应的衰减时间约10~47us。 Cosc1的大小决定了衰减时间的长短,具体调整方式:更换OSC1电容,由低向高调,以电机运行平稳,噪音低、震动小时为佳。
2、在四个电机输出端与地之间需接入电阻Rx,阻值视供电电压而定,VM/Rx在5mA左右即可。作用是减弱毛刺对芯片的损坏。
3、在画芯片管脚的地线时要尽可能的粗,检测电阻和芯片之间的连线要短、粗,两者的地线端相连也要短粗。
4、 在画PCB时,芯片周围的安全间距至少要15mil(0.3mm),在四个电机输出端和电源端尤其需要注意。
5、在靠近15脚(VCC)、14脚(VM)管脚处各放置1个0.1uf的电容。
6、检测电阻选用2512封装的贴片或1W的金属膜,推荐使用0.22Ω电流大小按下面公式计算:
VREF=5*Io*Rs
【简要说明】 一、 尺寸:长100mm、宽65mm、高30mm.
二、 主要芯片:THB7128、LM2576.
三、 工作电压:控制信号直流4.5~5.5V;最高耐压40伏、大电流3.3A(峰值)
四、 最大工作电流:3A
五、 细分设定:1、1/2、1\4、1\8、1\16、1\32、1\64、1\128。 六、特点:
1、具有电源指示,信号输出指示。
2、转速可调、工作方式,工作电流均可通过拨码开关调节
3、抗干扰能力强
4、自动半流锁定功能
5、内置过流保护及温度保护 6、内置混合式衰减模式
7、可单独控制多种规格的两相混合式步进电机
8、可实现最大功率120W步进电机
单片机源程序如下:
- ///////////////////步进电机调试程序/////////////////
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- /********************************************************
- 控制位定义
- ********************************************************/
- sbit shi_neng=P1^0; // 使能控制位
- sbit fang_xiang=P1^1;// 旋转方向控制位
- sbit mai_chong=P1^2; // 脉冲控制位
- sbit qi_dong=P2^0;// 启动按钮
- sbit ting_zhi=P2^1;//停止按钮
- sbit zheng_zhuan=P2^2;//正转按钮
- sbit fan_zhuan=P2^3;// 反转按钮
- /********************************************************
- 延时函数
- ********************************************************/
- void delay(uint i)//延时函数
- {
- uchar j,k;
- for(j=0;j<i;j++)
- for(k=0;k<50;k++);
- }
- /********************************************************
- 主函数
- ********************************************************/
- main()
- {
- shi_neng=1; // 使能控制位
- fang_xiang=0;// 旋转方向控制位
- mai_chong=0; // 脉冲控制位
-
- while(1)
- {
- mai_chong=~mai_chong; //输出时钟脉冲
- delay(5); //延时 (括号内数值越小,电机转动速度越快)
- if(qi_dong==0) shi_neng=0; //启动按钮
- if(zheng_zhuan==0) fang_xiang=0;//正转按钮
- if(fan_zhuan==0) fang_xiang=1;// 反转
- if(ting_zhi==0) shi_neng=1;//停止
- }
- }
复制代码
电机驱动板的全套设计资料51hei提供下载:
|