单片机控制步进电机的应用实例
【例9-3】 采用1-2 相励磁法实现电机的正转控制。
单片机的I/O口驱动电流较小,一般无法直接驱动步进电机,图9-10采用ULN2003作为步进电机的驱动芯片,ULN2003工作电压高,工作电流大,灌电流可达500mA,并且能够在关状态时承受50V的电压,输出还可以在高负载电流并行运行。只需按表9-2(c)的8个步序向P1口发送数据,通过ULN2003的驱动,即可实现步进电机按1-2相励磁法正转运行。
图9-10 步进电机驱动控制电路图
C51程序如下:
提示
上面的delay( )程序可参考之前例子中的延时程序编写,这里不再重复。
利用相同的程序编写方式可以实现1相励磁和2相励磁的电机控制。
【例9-4】 步进电机的正反转控制
利用接在单片机P3.7口的开关对步进电机的正反转进行控制,当开关闭合时,步进电机正转运行,当开关断开时,步进电机反转运行。此处采用1相励磁法。步进电机正反转控制电路如图9-11所示。
图9-11 步进电机正反转控制电路图
C51程序如下:
【例9-5】 利用查表方式通过两组开关实现三种励磁状态的切换。
两组开关实现三种励磁状态切换的电路如图9-12所示。利用接在P3.0、P3.1口的两个开关的四种状态实现步进电机的1相励磁、2相励磁、1-2相励磁及停止状态的切换。开关实现步进电机运行状态切换如表9-3所示。
图9-12 两组开关实现三种励磁状态切换的电路图
表9-3 开关实现步进电机运行状态切换表
由于三种励磁状态每拍的状态均为已知,在软件设计中,可以将这些状态预先存储到3个数组当中,根据2组开关的状态去查询对应的数组即可实现步进电机励磁方式的切换。
C51程序如下:
基于单片机步进电机正反转,加减速仿真实例
51单片机+L297+ L298 实现步进电机的正反转,加减速仿真。
main()
{
/*定时器设置*/
TMOD=0x66; //定时器0,1都为计数方式;方式2;
EA=1;//开中断
TH0=0xff;//定时器0初值FFH;
TL0=0xff;
ET0=1;
TR0=1;
TH1=0xff;//定时器1初值FFH;
TL1=0xff;
ET1=1;
TR1=1;
IT0=1;//脉冲方式
EX0=1;//开外部中断0:加速
IT1=1;//脉冲方式
EX1=1;//开外部中断1:减速
inti_lcd();
DoSpeed();
ShowState();
while(1)
{
clock(RunSpeed);
P0_1=P0_1^0x01;
}
}
相关问答
单片机控制步进电机正反转 ,步进电机42步进电机驱动tb6560?[回答]改变控制脉冲的顺序即可实现步进电机的正反转用TPC8-8TD可以直接输出信号到步进电机驱动器,实现步进电机的自动控制。采用表格设置汉字显示方式设...
步进电机 如何用 单片机控制 ?步进电机的驱动是需要驱动器的,驱动器的种类不同,单片机控制的方式也不同,是不能用单片机来直接控制步进电机的。可以选用现成的驱动器,也可以自己做启动器...
51 单片机控制步进电机 ,用按键控制单片机的运转,按一下走一步停下来,再摁一下再走一步,如此循环?这个不难的。就一个电机处理程序,一个按键处理程序呗这个不难的。就一个电机处理程序,一个按键处理程序呗
单片机控制步进电机 驱动器这个驱动器的功能是为了配合控制源来说的。驱动器的脉冲输入和方向信号的输入都是脉冲信号!1:单脉冲就是脉冲输入一直有,通过方向输入的高低电平来...
怎么用51 单片机控制 TB6600驱动器的42两相 步进电机 。程序下载了一个用键控制的,哪位大神可以帮忙修改?单片机接驱动器要3个信号,1、使能即EN2、正反转控制即DIR3、时钟即PUL对于tb6600来说EN低电平有效。DIR低电平正转,高则反转。PUL上升沿有效。如需要电...
步进电机控制 方法?1、可以用单片机+全集成步进电机驱动芯片来整全应用,这样比较简单,控制上很方便。用普通的51单片机像AT89C2051或STC12C1052+THB7128或THB6064这类芯片来组合...
【如何利用 单片机 和传感器信号 控制步进电机 的转停?我现在的...[最佳回答]请详细阐述这几个脚的作用,你的电机需要什么样子的驱动波形?sbitclock=P1^0;//CLOCK产生时钟信号sbitenable=P1^1;//ENABLE使能sbithalf...
单片机控制步进电机 制动?从底层技术上来说,很简单,就是将下一相的通电时间和断电时间,均比前一相延后一点,每次一点,这样就制动了.步进电机在高速运行的时候也会受惯性的影响的,如果...
谁有基于51 单片机 的 步进电机 C程序,可实现启动,停止,加减速,并显示等,找了半天没找到?#includeunsignedcharcodeF_Rotation[4]={0x08,0x10,0x20,0x40};//正转表格unsignedcharcodeB_Rotation...
51 单片机控制步进电机 ?用单片机同时是不可能的,当然,时间间隔小到可以接受,跑几个任务,那也可以视为同时。要实现真正意义上的同时,用FPGA/CPLD是可以完成的。话说回来,也许你的...