两相4线步进电机驱动时序
- 格式:pdf
- 大小:62.10 KB
- 文档页数:1
2H42B细分步进电机驱动器使用手册V ersion 2.0版权所有不得翻印【使用前请仔细阅读本手册,以免损坏驱动器】东莞市一能机电技术有限公司DONGGUAN ICAN-TECH CO.,LTD地址:东莞市万江区新和工业区瑞联振兴工业园B栋4楼/Email:tech@2H42B 步进电机驱动器一、 2H42B 步进电机驱动器产品简介1.1概述2H42B 步进电机驱动器是一款高性价比的细分两相步进电机驱动器。
最大可提供2.0A 的电流输出。
由于采用了双极性恒流斩波控制技术,与市面上同类型步进电机驱动器相比,其对步进电机噪声和发热均有明显改善。
适用于尺寸为28,35,39,42等各类2相或4相混合式步进电机,具有体积小,使用简单方便等特点。
1.2特点◆低噪声,高速大转矩特性 ◆光电隔离差分信号输入,响应频率最高200K ◆供电电压12VDC-36VDC ◆细分精度1,2,4,8,16,32,64,128, ◆输出电流峰值可达2.0A 倍细分可选 ◆静止时电流自动减半 ◆外形尺寸小(96*60*24mm ) ◆可选择脉冲上升沿或下降沿触发 ◆电流设定方便,八档可选 ◆可驱动4、6、8线二相、四相步进电机 ◆具有过流,过温保护功能1.3应用领域适用于各类型自动化设备或仪器,如雕刻机、打标机、切割机、激光照排、绘图仪、数控机床、机械手,包装机械,纺织机械等,极具性价比和竞争力。
二、 2H42B 步进电机驱动器 电气、机械和环境指标1 网址:www 2.2 2H42B 步进电机驱动器使用环境及参数 图1.安装尺寸图2.4加强散热方式1) 2H42B 步进电机驱动器的可靠工作温度通常在60℃以内,电机工作温度为80℃以内; 2) 建议使用时选择自动半流方式 (即电机停止时电流自动减至60% ),以减少电机和驱动器的发热;3)安装步进电机驱动器时请采用立式侧面安装,使散热面向易于空气对流的方向,必要时在机箱内靠近驱动器处应安装排气风扇,进行强制散热,从而保证驱动器在可靠工作温度范围内工作。
2相四线,四相五线,四相六线步进电机接线及驱动方法分类:单片机2010-07-18 09:24 5085人阅读评论(9) 收藏举报步进电机原理按照常理来说,步进电机接线要根据线的颜色来区分接线。
但是不同公司生产的步进电机,线的颜色不一样。
特别是国外的步进电机。
那么,步进电机接线应该用万用表打表。
步进电机内部构造如下图:通过上图可知,A,~A是联通的,B和~B是联通。
那么,A和~A是一组a,B和~B是一组b。
不管是两相四相,四相五线,四相六线步进电机。
内部构造都是如此。
至于究竟是四线,五线,还是六线。
就要看A和~A之间,B和B~之间有没有公共端com抽线。
如果a组和b组各自有一个com端,则该步进电机六线,如果a和b组的公共端连在一起,则是5线的。
所以,要弄清步进电机如何接线,只需把a组和b组分开。
用万用表打。
四线:由于四线没有com公共抽线,所以,a和b组是绝对绝缘的,不连通的。
所以,用万用表测,不连通的是一组。
五线:由于五线中,a和b组的公共端是连接在一起的。
用万用表测,当发现有一根线和其他几根线的电阻是相当的,那么,这根线就是公共com端。
对于驱动五线步进电机,公共com端不连接也是可以驱动步进电机的。
六线:a和b组的公共抽线com端是不连通的。
同样,用万用表测电阻,发现其中一根线和其他两根线阻止是一样的,那么这根线是com端,另2根线就属于一组。
对于驱动四相六线步进电机,两根公共com端不接先也可以驱动该步进电机的。
步进电机相关概念相数:产生不同对极N、S磁场的激磁线圈对数。
常用m表示。
拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。
θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。
两相步进电机控制程序一、初始化设置在控制步进电机之前,需要进行一些初始化设置。
这包括:1. 配置微控制器:选择适合的微控制器,并为其分配必要的资源和接口。
2. 电机参数设定:根据步进电机的规格和性能,设定合适的参数,如步进角度、驱动电流等。
3. 接口配置:配置微控制器与步进电机驱动器之间的接口,包括电源、信号线等。
二、电机驱动脉冲生成为了使步进电机按照设定的方向和步数转动,需要生成合适的驱动脉冲。
这通常通过微控制器实现,具体步骤如下:1. 确定目标位置:根据应用需求,确定步进电机需要转到的目标位置。
2. 计算步数:根据目标位置和步进电机的步进角度,计算出需要转动的步数。
3. 生成驱动脉冲:根据步数和电机的工作模式(单拍、双拍等),生成合适的驱动脉冲序列。
三、电机方向控制步进电机的方向可以通过改变驱动脉冲的顺序来控制。
一般来说,有两种方式来控制电机的方向:1. 通过改变脉冲的顺序:正向或反向发送脉冲序列,可以控制电机向正向或反向转动。
2. 通过使用不同的工作模式:一些步进电机驱动器支持不同的工作模式,如全步、半步、1/4步等。
通过选择不同的工作模式,可以改变电机的转动方向和速度。
四、电机速度调节调节步进电机的速度可以通过改变驱动脉冲的频率来实现。
一般来说,脉冲频率越高,电机转速越快。
同时,也可以通过改变工作模式来调节电机的速度。
五、电机状态监测与保护为了确保步进电机的安全运行,需要实时监测电机的状态,并进行必要的保护措施。
这包括:1. 温度监测:监测电机的温度,防止过热。
2. 电流监测:监测电机的驱动电流,防止过流。
3. 位置监测:通过编码器等传感器监测电机的实际位置,防止位置丢失或错误。
4. 故障诊断:通过分析监测数据,判断电机是否出现故障,并采取相应的处理措施。
六、异常处理与故障诊断为了提高控制程序的鲁棒性,需要设计异常处理与故障诊断机制。
这包括:1. 异常情况检测:通过分析监测数据和运行状态,检测出异常情况。
通过上图可知,A,~A是联通的,B和~B是联通。
那么,A和~A是一组a,B和~B是一组b。
不管是两相四相,四相五线,四相六线步进电机。
内部构造都是如此。
至于究竟是四线,五线,还是六线。
就要看A和~A之间,B和B~之间有没有公共端com抽线。
如果a组和b 组各自有一个com端,则该步进电机六线,如果a和b组的公共端连在一起,则是5线的。
所以,要弄清步进电机如何接线,只需把a组和b组分开。
用万用表打。
四线:由于四线没有com公共抽线,所以,a和b组是绝对绝缘的,不连通的。
所以,用万用表测,不连通的是一组。
五线:由于五线中,a和b组的公共端是连接在一起的。
用万用表测,当发现有一根线和其他几根线的电阻是相当的,那么,这根线就是公共com端。
对于驱动五线步进电机,公共com端不连接也是可以驱动步进电机的。
六线:a和b组的公共抽线com端是不连通的。
同样,用万用表测电阻,发现其中一根线和其他两根线阻止是一样的,那么这根线是com端,另2根线就属于一组。
对于驱动四相六线步进电机,两根公共com端不接先也可以驱动该步进电机的。
步进电机相关概念:相数:产生不同对极N、S磁场的激磁线圈对数。
常用m表示。
拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。
θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。
四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。
定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。
2相四线,四相五线,四相六线步进电机接线及驱动方法步进电机原理按照常理来说,步进电机接线要根据线的颜色来区分接线 的步进电机,线的颜色不一样。
特别是国外的步进电机那么,步进电机接线应该用万用表打表。
~B 是一组b o 不管是两相四相,四相五线,四相六线步进电机。
内部构造都是如此。
至于究竟是四线,五线,还是六线。
就要看 A 和~A 之间,B 和B~之间有没有公共端com 抽线。
如果a 组和b 组各自有一个com 端,则该步进电机六线,如果 a 和b 组的公 共端连在一起,则是 5 线的。
但是不同公司生产B 和~B 是联通。
那么, A 和~A 是一组a , B 和通过上图可知,A, ~A 是联通的,步进电机内部构造如下图所以,要弄清步进电机如何接线,只需把 a 组和 b 组分开。
用万用表打。
四线:由于四线没有com公共抽线,所以,a和b组是绝对绝缘的,不连通的。
所以,用万用表测,不连通的是一组。
五线:由于五线中,a和b组的公共端是连接在一起的。
用万用表测,当发现有一根线和其他几根线的电阻是相当的,那么,这根线就是公共com端。
对于驱动五线步进电机,公共com端不连接也是可以驱动步进电机的。
六线:a和b组的公共抽线com端是不连通的。
同样,用万用表测电阻,发现其中一根线和其他两根线阻止是一样的,那么这根线是com端,另2根线就属于一组。
对于驱动四相六线步进电机,两根公共com端不接先也可以驱动该步进电机的。
步进电机相关概念:相数:产生不同对极N S磁场的激磁线圈对数。
常用m表示。
拍数: 完成一个磁场周期性变化所需脉冲数或导电状态用n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD- DA-AB四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用9表示。
B =360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。
两相四拍步进电机波形步进电机是一种特殊的电机,它的转动是通过电流的不断变化来实现的。
而步进电机的转动状态可以用波形图来表示,其中最常见的是两相四拍步进电机波形。
下面将详细介绍两相四拍步进电机波形的特点和工作原理。
一、两相四拍步进电机波形的特点两相四拍步进电机波形是指步进电机在一个完整的周期内,电流的变化情况。
它的特点主要有以下几点:1. 波形周期:两相四拍步进电机波形的周期是一个完整的电机转动周期,通常以角度来表示。
在一个周期内,电机会完成一定的转动角度,然后重新回到起始位置。
2. 相位差:两相四拍步进电机波形中的两个相位之间存在一定的差距,通常为90度。
这个相位差是步进电机正常工作的基础,它使得电机能够顺时针或逆时针旋转。
3. 电流变化:在两相四拍步进电机波形中,电流是按照一定的规律变化的。
电流的变化决定了电机的转动方向和速度。
一般来说,电流的变化是通过驱动电机的控制器来实现的。
二、两相四拍步进电机波形的工作原理两相四拍步进电机波形的工作原理是通过改变电流的方向和大小来实现的。
具体步骤如下:1. 步骤一:确定起始位置。
步进电机的起始位置是一个重要的参考点,它确定了电机的转动方向和角度。
在起始位置时,两个相位的电流都为零。
2. 步骤二:改变电流方向。
在起始位置的基础上,通过改变电流的方向,可以使电机顺时针或逆时针旋转。
改变电流方向的方式有多种,最常见的是使用H桥驱动器。
3. 步骤三:改变电流大小。
电流的大小决定了电机的转动速度。
通过改变电流的大小,可以控制电机转动的快慢。
一般来说,电流越大,电机转动的速度越快。
4. 步骤四:循环执行。
在完成一次电机转动后,需要重新回到起始位置,然后继续执行下一次转动。
这样就形成了一个完整的电机转动周期。
三、两相四拍步进电机波形的应用两相四拍步进电机波形在实际应用中具有广泛的用途。
它常被应用于需要精确定位和控制转动角度的场合,如机械臂、数控机床、打印机等。
步进电机的波形可以通过控制器实时调整,以满足不同的需求。
双极性四线步进电机驱动我们常用的步进电机分为单极性和双极性之分,今天介绍一下双极性四线步进电机驱动,这个步进电机我是从打印机中拆下来的,板子上用的驱动芯片是LB11847,带细分的驱动器。
一般双极性四线步进电机线序是 A B A/ B/, 其中A 与A/是一个线圈,B和B/是一个线圈,一般这种驱动需要的是H桥电路,这里就不必介绍H桥了。
下面介绍一下H双极性四线步进电机驱动相序:1.单相四拍通电驱动时序正转:A/ B A B/反转:B/ A B A/2.双相通电四拍驱动时序正转:A/B AB AB/ A/B/反转:A/B/ AB/ AB A/B3.半步八拍驱动时序正转:A/ A/B B AB A AB/ B/ A/B/反转:A/B/ B/ AB/ A AB B A/B A/下面介绍一下LB11847驱动原理:原理图如下:内部H桥驱动:这个只是A相驱动,B相与之相同。
真值表与电流比例表:这里做一下解释:看原理图:BSD是外界线圈对地的二极管,RE是采样电阻,而VREF则是通3.04*RE,这由电流真值表的计算公式可以看出。
下面给出我的一个驱动程序:是对步进脚进行4细分,双线圈导通驱动。
/*LB11847 步进电机驱动*/#include <pic.h>//代表输出电流值//分别代表// 17.39% 26.08% 34.78% 43.48% 52.17% 60.87% 69.56% 73.91% 78.26% 82.61% 86.95% 91.3 0% 95.65% 100%//对应端口// IB4 IB3 IB2 IB1 IA4 IA3 IA2 IA1// RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0const unsigned char TableA[] = {0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0 x0E,0x0F,0x0F,0x0F,0x0f,0x0f,0x0f,0x0f};// 电流输出值对应const unsigned char TableB[] = {0x20,0x30,0x40,0x50,0x60,0x70,0x80,0x90,0xA0,0xB0,0xC0,0xD0,0 xE0,0xF0,0xF0,0xF0,0xf0,0xf0,0xf0,0xf0};// 正转反转时许设定// 1.单相通电// 正转时序// A/ B A B/// 反转时序// B/ A B A/// 2.两相通电// 正转时序// A/B AB AB/ A/B/// 反转时序// A/B/ AB/ AB A/B// 3.半步方式// 正转时序// A/ A/B B AB A AB/ B/ A/B/// 反转时序// A/B/ B/ AB/ A AB B A/B A/// 步进电机对应// 从带蓝边开始依次A B A/ B/// 操作时序// PHASE ENABLE OUTAorB OUTA/orB/// H L H L// L L L H// - H OFF OFFconst unsigned char PositiveTable[]={0x08,0x06,0x09,0x02}; // 正转时序const unsigned char ReverseTable[]={0x02,0x09,0x06,0x08}; // 反响时序const unsigned char PositiveTable1[]={0x04,0x05,0x01,0x00}; // 正转时序const unsigned char ReverseTable1[]={0x00,0x01,0x05,0x04}; // 反响时序const unsigned char PositiveTable2[] ={0x08,0x04,0x06,0x05,0x09,0x01,0x02,0x00}; // 8拍正转时序const unsigned char ReverseTable2[]={0x00,0x02,0x01,0x09,0x05,0x06,0x04,0x08};#define Timer1_Int 0xFF80 // 定时器1初始化值const unsigned char PositiveTable3[]={0x08,0x06,0x09,0x02}; // 正转时序#define PHASEA RC0 // 输出管脚使能#define ENABLEA RC1#define PHASEB RC2#define ENABLEB RC3unsigned char Point_CurrentA; // A相电流输出指针unsigned char Point_CurrentB; // B相电流输出指针unsigned char Point_Running; // 转动指针unsigned char Delay_Counter; // 延时计数器unsigned int Timer_Add;unsigned char Add_Pluse;volatile bit A_Add;volatile bit A_Plus;volatile bit B_Add;volatile bit B_Plus;volatile bit Positive_Reverse_Flage; // 正反标志volatile bit Positive_ReverseA;volatile bit Positive_ReverseB;//#define A_Add 1 // A相电流加操作//#define A_Pluse 2 // A相电流减操作//#define B_Add 3 // B相电流加操作//#define B_Pluse 4 // B相电流减操作void Pic_Int();void delay(unsigned int asd){unsigned int i;for(i=0;i<asd;i++){}}//*****************************************//中断函数//*****************************************void interrupt SDI(){if(TMR1IF) // 定时器中断{TMR1IF = 0;if(Timer_Add<0xFF60){//Timer_Add++;}TMR1H = (unsigned char)(Timer_Add>>4); // 定时器计时初始化TMR1L = (unsigned char)(Timer_Add&0x00ff);Delay_Counter++;if(Delay_Counter>=1);Delay_Counter = 0;PORTC = PositiveTable[Point_Running]; // 正转时序PORTB = (unsigned char)((TableA[Point_CurrentA])|(TableB[Point_CurrentB]));if(A_Add){Point_CurrentA+=4;}if(A_Plus){Point_CurrentA-=4;}if(B_Plus){Point_CurrentB-=4;}if(B_Add){Point_CurrentB+=4;}//Point_Running++;if(A_Add){if(Point_CurrentA == 16){A_Add = 0;A_Plus = 1;if(Positive_ReverseA){Point_Running++;}Positive_ReverseA = 0;}}if(A_Plus){if(Point_CurrentA == 0){A_Add = 1;A_Plus = 0;if(Positive_ReverseA){Point_Running++;}Positive_ReverseA = 0;}if(B_Add){if(Point_CurrentB==16){B_Add = 0;B_Plus = 1;if(Positive_ReverseB){Point_Running++;}Positive_ReverseB = 0;}}if(B_Plus){if(Point_CurrentB==0){B_Add = 1;B_Plus = 0;if(Positive_ReverseB){Point_Running++;}Positive_ReverseB = 0;}}if(Positive_Reverse_Flage==0) // 正转{if(Positive_ReverseA==0){Positive_ReverseB = 1;}if(Positive_ReverseB==0){Positive_ReverseA = 1;}}if(Point_Running>4){Point_Running = 0;}}}}//*****************************************//*****************************************void main(){Pic_Int(); // 初始化//PHASEB = 1;//ENABLEB = 0;while(1){}}//*****************************************//初始化函数//*****************************************void Pic_Int(){ADCON1 = 0x07; // 关闭AD转换器INTCON= 0x00; // 关闭中断TRISB = 0x00; // RB口设置为输出PORTB = 0xff; // 全部电流输出TRISC = 0xF0; // 低四位设置为输出引脚ENABLEB = 1;ENABLEA = 1;T1CON = 0x00; // 定时器1初始化TMR1IE = 1;Timer_Add = Timer1_Int;TMR1H = (unsigned char)(Timer_Add>>4); // 定时器计时初始化TMR1L = (unsigned char)(Timer_Add&0x00ff);GIE = 1; // 中断开始PEIE = 1;TMR1ON= 1; // 定时器运行Point_CurrentA = 0; // 指针初始化Point_CurrentB = 0;Point_Running = 0;Delay_Counter = 0;Positive_Reverse_Flage = 0; // 正转标志Point_CurrentA = 16; // 正转电流A相处于最大Point_CurrentB = 0; // 正转电流B相处于最小Positive_ReverseA = 1;Positive_ReverseB = 0;A_Plus = 1; // 起始B进行加操作A_Add = 0;B_Add = 1; // B加操作B_Plus = 0;}。
ZHH-MC两相混合式步进电机驱动器使用说明书一、概述ZHH-MC细分型两相混合式步进电机驱动器,采用直流18~50V供电,适合驱动电压24V~50V,电流小于4.2A外径42~86毫米的两相混合式步进电机。
此驱动器采用交流伺服驱动器的电流环进行细分控制,电机的转矩波动很小,低速运行很平稳,几乎没有振动和噪音。
高速时力矩也大大高于其它二相驱动器,定位精度高。
广泛适用于雕刻机、数控机床、包装机械等分辩率要求较高的设备上。
主要特点1平均电流控制,两相正弦电流驱动输出2直流24~50V供电3光电隔离信号输入/输出4有过压、欠压、过流、相间短路保护功能5十六档细分和自动半流功能6八档输出相电流设置7具有脱机命令输人端子8电机的扭矩与它的转速有关,而与电机每转的步数无关9高启动转速10高速力矩大一、电气参数输入电压直流24~50V输入输入电流小于4安培输出电流 1.0A~4.2A功耗功耗:80W;内部保险:6A温度工作温度-10~45℃;存放温度-40℃~70℃湿度不能结露,不能有水珠气体禁止有可燃气体和导电灰尘重量200克注:拨码开关请在未上电时调好,严禁带电操作,切记!二、控制信号接口图1是驱动器的接线原理图1、控制信号定义PLS+:步进脉冲信号输入正端或正向步进脉冲信号输入正端PLS-:步进脉冲信号输入负端或正向步进脉冲信号输入负端DIR+:步进方向信号输入正端或反向步进脉冲信号输入正端DIR-:步进方向信号输入负端或反向步进脉冲信号输入负端ENA+:脱机使能复位信号输入正端ENA-:脱机使能复位信号输入负端脱机使能信号有效时复位驱动器故障,禁止任何有效的脉冲,驱动器的输出功率元件被关闭,电机无保持扭矩。
2、控制信号连接上位机的控制信号可以高电平有效,也可以低电平有效。
当高有效时,把所有控制信号的负端连在一起作为信号地,低有效时,把所有控制信号的正端连在一起作为信号公共端。
现在以集电极开路和PNP输出为例,接口电路示意图如下:图2.输入接口电路(共阴极接法)控制器PNP输出注意:VCC值为5V时,R短接;VCC值为12V时,R为1K,大于1/8W电阻;VCC值为24V时,R为2K,大于1/8W电阻;R必须接在控制器信号端。
两相4线步进电机驱动时序
无意中间从网上看到两个人的发言,我总结了一下终于把两相4线步进电机脉冲搞定了.
这个图是我自己画的,从图中可以看出来,要实现步进电机的转动,可以用以下两种方式:
(1)8拍的方式
八个状态:1、在A与A-正电压,B与B-不给电悬空;2、在A与A-正电压,B 与B-也给正电压;3、A与A-不给电压悬空,B与B-正电压;4、A与 A-给负电压,B与B-给正电压;5、A与A-给负电压,B与B-不给悬空;6、A与A-给负电压,B与B-给负电压;7、A与A-不
给电悬空,B与B-给负电压;8、A与给正电压,B与B-给负电压;按以上八个状态轮流供电,控制一下脉宽应该就可以了。
四个引脚各一根控制线:A~H表示各线时序
A B C D E F G H
A 1 1 0 0 0 0 0 1
A- 0 0 0 1 1 1 0 0
B 0 1 1 1 0 0 0 0
B- 0 0 0 0 0 1 1 1 .........
(2)4拍的方式
我的方法
一般是电流驱动的。
我下面的a~ 和b~ 表示反向电流。
两相双二拍:
ab - a~b - a~b~ - ab~ 为一个转向。
ab - ab~ - a~b~ - a~b 为反向。
自己的一点体会:偶觉得两相4线电机 和 四相4线电机 差不多.(这从上面我画的图)也可以看出来,只不过物理上绕线的方式不同(这也导致编程上脉冲表的不同),在功能上是一样的.。