概述
/****************XY电机后移*******************/
//uint XMtPParameter; //X电机位置参数(上料动作)
//uint YMtSParameter; //Y电机编辑前移
void XYMTBack()
{
uchar ss; //延时系数
uint XYSpeed,XYPosition; //电机延时参数 Y电机运动位置参数
bit Start; //起步标志
ss=20; //延时系数初始化
XYSpeed=XMtSParameter; //速度
XYPosition=XMtPParameter; //位置 XMtPParameter第一步到位置X轴加
DIR1=1; //左移
DIR2=0; //后退
Start=1; //起步标志置一
do
{
if(Start==1) // 起步
{
CP1=!CP1; //输出脉冲
CP2=!CP2; //输出脉冲
delay(XYSpeed+ss*5);//20×5..19*5...1*5
CP1=!CP1; //输出脉冲
CP2=!CP2; //输出脉冲
delay(XYSpeed+ss*5);
XYPosition--;
ss--;
if(ss<1) //小于1加速段完成
{
ss=0;
Start=0; //加速标志置零,结束加速
} // ss=20循环结束,执行else循环体
}
else
{
CP1=!CP1; //输出脉冲
CP2=!CP2; //输出脉冲
delay(XYSpeed+ss*5);//XYPosition大于20ss=0
CP1=!CP1; //输出脉冲
CP2=!CP2; //输出脉冲
delay(XYSpeed+ss*5);
XYPosition--;
if(XYPosition<20) //小于20启动减速
ss++; //减速延时加 1*5..2*5..3*5
}
}
while(XYPosition);
}
最后
以上就是微笑信封为你收集整理的步进电机加减速控制子程序的全部内容,希望文章能够帮你解决步进电机加减速控制子程序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复