A. 用c语言程序实现步进电机的正反转加减速的编程
内容:1、本程序用于测试4相步进电机常规驱动
2、需要用跳帽或者杜邦线把信号输出端和对应的步进电机信号输入端连接起来
3、速度不可以调节的过快,不然就没有力矩转动了
4、按s4(设置成独立按键模式)可以控制正反转
------------------------------------------------*/
#include <reg52.h>
bit Flag;//定义正反转标志位
unsigned char code F_Rotation[4]={0xf1,0xf2,0xf4,0xf8}; //正转表格
unsigned char code B_Rotation[4]={0xf8,0xf4,0xf2,0xf1}; //反转表格
/******************************************************************/
/* 延时函数 */
/******************************************************************/
void Delay(unsigned int i)//延时
{
while(--i);
}
/******************************************************************/
/* 主函数 */
/******************************************************************/
main()
{
unsigned char i;
EX1=1; //外部中断0开
IT1=1; //边沿触发
EA=1; //全局中断开
while(!Flag)
{
P0=0x71;//显示 F 标示正转
for(i=0;i<4;i++) //4相
{
P1=F_Rotation[i]; //输出对应的相 可以自行换成反转表格
Delay(500); //改变这个参数可以调整电机转速 ,数字越小,转速越大
}
}
while(Flag)
{
P0=0x7C;//显示 b 标示反转
for(i=0;i<4;i++) //4相
{
P1=B_Rotation[i]; //输出对应的相
Delay(500); //改变这个参数可以调整电机转速 ,数字越小,转速越大
}
}
}
/******************************************************************/
/* 中断入口函数 */
/******************************************************************/
void ISR_Key(void) interrupt 2 using 1
{
Delay(300);
Flag=!Flag; //s3按下触发一次,标志位取反
}
B. 西门子s7-200plc控制步进电机速度与正反转怎么编程
1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(M0.X),当M.0X闭合,住程序中的反转开始运做。这样子就OK了。
2、用PTO指令让Q0.0 OR Q0.1高速脉冲,另一个点如Q0.2做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。
C. 如何编出电机正反转控制程序
用PLC编。
使用PLC实现电动机可逆运转(正反转)控制程序编写
解如图5-33所示,SB2是正转启动按钮,SB3是反转启动按钮,KM1和KM2分别是控制电动机正转运行和反转运行的交流接触器,KM1得电表示电动机正转,KM2得电表示电动机反转。
其控制要求如下:
(1)按下正转按钮SB2,则接触器KM1得电导通,电动机正转;按下反转按钮SB3,则接触器KM2得电导通,电动机反转。
图5-35正反转控制的梯形图程序
D. 让步进电机正反转如何编程
可以使用表控TPC4-4TD的控制器来实现,参考下图接线:
接线很简单,参考接线图接线。表控与驱动器的接线只有三根线,5V、Y1和Y2,分别连接步进电机驱动器的输入信号端,5V连接步进电机驱动器输入信号的正极,Y1连接脉冲输入信号的负极,Y2连接方向输入信号的负极。
在电脑的功能设置表上设置的正反转功能,见下图:
第1行设置X1作为启动开关,由Y1输出脉冲,频率2000赫兹,脉冲数是2000。如果驱动器细分设置为2000,设置脉冲数为2000正好转一圈。
第2行设置延时1秒,作为正反转间隔的时间。
第3行设置Y2输出方向信号10秒钟,由脉冲结束时关闭此行。
第4行设置的与第一行相同,由于与第3行的方向输出端同事被第2行延时后启动,因此第3、4行实现反转的功能。反转一圈回到原位。
下图是自动生成的汉字显示:
使用表控作为步进电机控制,有几个有点:接线方便、设置简单,表格设置方法代替编程,没学过编程的人员也可以使用。更多功能可以查看详细说明书和视频教程。
E. mcgs电动机正反转程序怎么写
如图所示,5个图,首先建立2个变量,如图1所示,然后放上三个按钮,分别为正转按钮,停止按钮,反转按钮,和两个指示灯,正转指示灯和反转指示灯。然后设置正转按钮的操作属性是正转置一,如图2,可见度属性是反转不可见,如图4。然后设置停止按钮的脚本,如图3,最后设置反转按钮的操作属性为反转置一,可见度属性为正转不可见。按钮就做完了,然后设置正转指示灯,可见度为正转,如图5。设置反转指示灯可见度为反转。
这样按下正转按钮后,正转指示灯亮(变绿),反转按钮消失不见,不可操作了。按下停止按钮后,正转指示灯灭(变红),反转按钮出现,可操作了。同理,按下反转按钮后,反转指示灯亮(变绿),正转按钮消失不见,不可操作了。按下停止按钮后,反转指示灯灭(变红),正转按钮出现,可操作了。
望采纳。。。。。。
F. 汇编语言控制步进电机正反转180°如何编写代码
这是8086微机原理的实验吧,我没有相同的硬件环境,只能给你说一下思路。
首先,步进电机的控制就是在两组不同的线圈上加脉冲信号,对于你提供的实验资料来说,就是向8255的B口发送相应的数据。你可以定义两个内存变量,一个正转,一个反转。当要正转时把正转变量传送给控制过程,反转时把反转变量传送给控制过程。这样就可以控制正反转了。
其次延时30秒,这可以通过做循环程序实现。自己编写一个过程就可以。
第三,写个控制程序过程,设置一个内存变量,当该变量为零时把控制电机正转,非0时,反转,调用延时程序,改变这个变量值,通过取反操作,使其值在0和1之间不断变化,电机就会按要求转动。
G. 单片机控制电机正反转动的c语言程序
首先要看你的电机是直流电机还是步进电机。直流电机就简单了,只有两根线,电机两端电压正负极改变就可以实现正转反转。不过要加电机驱动芯片,或者H桥电路,电机驱动芯片可以选择L298N,加上适当的外围电路就可以直接用单片机控制电机了。比如让单片机P1.0 = 0,P1.1 = 1;(单片机I/0口要与电机驱动芯片的输入脚相连)这样的话,电机驱动芯片就会输出一个电压差,可以使直流电机向一个方向转,如果使P1.0 = 1,P1.1 = 0,则电机驱动芯片会输出一个和刚才相反的电压,使电机向相反的方向转动。H桥电路和电机驱动芯片的原理差不多,网上多的是。我这说的只是简单的原理,实际中,L298N的输入端和单片机相连的时候要加光耦隔离,否则单片机会工作不正常。步进电机就稍微复杂点,也得需要电机驱动芯片才行,只不过控制信号是按一定的规律给的,规律变了,电机转动的方向也就变了。楼上给出的貌似是步进电机的驱动程序。