资源简介
简易式步进伺服电机加减速控制程序,加减速各分成三个梯度,开始运行时
到一定位置开始加速,再检测第二个加速位置加速,到第三个位置正常运行,
减速时检测结束运行距离,到设定值开始减速,再判断第二个位置,再减速,
再判断第三个位置,再减速,程序提供加减速控制的模块。实际控制可视现场情况
作出调整。
代码片段和文件信息
/***2017 8 15 PAST 08:10 13775061792******/
/*步进伺服电机加减速测试 L76 CODE406 ******/
#include
#include
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
uint valmt; /*电机运行参数寄存器*/
uint val_mtspeed; /*电机运行速度寄存器*/
uint MtAdDc_mtspeed; /*电机加减速寄存器*/
uint val10; /*电机运行缓冲寄存器*/
sbit MTORCP=P2^4; //
bit MtAdDc_FLAG; /*电机加减速标志01*/
/*------------------延时子程序------------------------*/
void delay10ms(uint x)
{
int i;
for (i=0; i ;
}
/*----------电机前进自动加速------------*/
void Motor_Run10() /**/
{
uchar k;
MtAdDc_FLAG=1; //加减速标志置一
for(val10>0;val10--;)
{
if(MtAdDc_FLAG==1)
{
if(valmt-val10<10) //电机运行总值减缓冲器值
MtAdDc_mtspeed=val_mtspeed*4P0=MtAdDc_mtspeed; //4倍定时设定值
else if(valmt-val10<30&valmt-val10>10)
MtAdDc_mtspeed=val_mtspeed*2P0=MtAdDc_mtspeed; //2倍定时设定值
else if(valmt-val10<50&valmt-val10>30)
{ //定时设定值
MtAdDc_mtspeed=val_mtspeed;
P0=MtAdDc_mtspeed;
MtAdDc_FLAG=0; //加减速标志置零,判断结束
}
}
else if(MtAdDc_FLAG==0)
{
if(val10<50&val10>30) //缓冲器值余50
{
MtAdDc_mtspeed=val_mtspeed*2;
P0=MtAdDc_mtspeed; //2倍设定时间
}
else if(val10<30&val10>10) //缓冲器值余30
{
MtAdDc_mtspeed=val_mtspeed*3;
P0=MtAdDc_mtspeed; //4倍设定时间
}
else if(val10<10) //缓冲器值余10
{
MtAdDc_mtspeed=val_mtspeed*4;
P0=MtAdDc_mtspeed; //8倍设定时间
}
}
for(k=0;k<2;k++) //
{
MTORCP=0; /*子函数开始*/
delay10ms(MtAdDc_mtspeed); //
MTORCP=1;
delay10ms(MtAdDc_mtspeed);
}
P1=val10;
}
}
void main()
{
val_mtspeed=8;
valmt=val10=110;
Motor_Run10();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8723 2017-08-15 08:19 电机加减速控制\test\test
文件 2465 2017-08-15 08:19 电机加减速控制\test\test.c
文件 1228 2017-08-15 08:19 电机加减速控制\test\test.hex
文件 40 2017-08-15 08:19 电机加减速控制\test\test.lnp
文件 6174 2017-08-15 08:19 电机加减速控制\test\test.LST
文件 5801 2017-08-15 08:19 电机加减速控制\test\test.M51
文件 9498 2017-08-15 08:19 电机加减速控制\test\test.OBJ
文件 5143 2017-08-15 08:19 电机加减速控制\test\test.plg
....... 55558 2017-08-15 08:20 电机加减速控制\test\test.uvopt
....... 13256 2017-08-15 08:20 电机加减速控制\test\test.uvproj
....... 0 2017-08-14 22:19 电机加减速控制\test\test_uvproj.bak
目录 0 2017-08-15 08:20 电机加减速控制\test
目录 0 2017-08-14 22:19 电机加减速控制
----------- --------- ---------- ----- ----
107886 13
评论
共有 条评论