结 论
在本设计中,通过软件编程的方式实现了双直流电机的主从式同步控制,并整定了三组PID控制参数,由记录的主从电机的实时速度来看,三个速度段内的控制效果都是令人满意的。尤其是在高速段内,从电机能够很好地跟踪主电机工作在设定速度上,偏差值很小。
程序的实现体现了C51语言编程的优越性。相对于传统的汇编语言,C51语言更接近人的自然语言和思维,编程效率明显加快,排错也更容易。
在该题目设计中,我们采用的是最基本的同步控制结构和常规的PID算法,虽然控制的只是两台小功率低电压的直流电机,控制结果仍然令人欣喜,这证明了这种基本控制方法的有效性。
本论文只是初步探讨了一下实现多电机同步控制的基本方法,在电机的低速段内控制效果不如高速段的控制精度高,还有待提高。在实际中,为了满足工业控制的精度,人们已研制出了各种控制策略,其中将现代控制理论同传统的PID控制相结合,即现代PID控制器,已成为新一代控制器的另一个方向,它包括3类:基于专家系统的智能PID控制器,基于模糊逻辑的智能PID控制器和基于神经网络的智能PID控制器。随着这些控制理论的不断完善,我们相信,电机同步控制技术将成为电机驱动控制中的热门技术,多电机同步也将更加广泛地被采用。
41
致 谢
经过大半个学期的努力,在指导老师和周围同学的帮助下,我终于顺利地完成了设计任务,时间没有白费,我对自己的设计成果感到满意,更为学到书本上学不到的东西感到高兴。我的收获离不开我的指导老师黄梦涛老师 、师姐康方方和同学郑涌的指点和帮忙,在此我要向他们一一致谢。
在论文设计的各个阶段,黄梦涛老师都为我们作了积极的引导和细心的指点。一开始导师就给我们介绍了师姐康方方,并让师姐给我们推荐了一些与论文相关的资料让我们学习。在以后每周都督促我们,我们出现的问题,黄老师都能为我们做出分析,指出可以怎么做。黄老师的平易近人和诲人不倦都让我深深难忘。在此我向黄老师表达最真诚的谢意。
师姐康方方给了我们很多实际上的帮助,遇到问题时和我们一起讨论。师姐康方方是在设计中给了我们最多帮助的人,我在此表示深深的感谢。
郑涌和我一起做这个毕业设计题目,他做出了他力所能及的事情,我们的合作非常愉快,在此我向他也表示感谢。
42
参考文献
[1].张贵强.无轴传动技术同步控制的研究[J].东北大学论文,2005
[2].卢金铎,刘锦波. 双电机传动机械系统的同步控制[J] .控制工程,2005,4 [3].王国亮.基于模糊PID补偿器的多电机同步控制策略研究[J].东北大学,2006 [4].秦继荣,沈安俊.现代直流伺服控制技术及其系统设计[M].机械工业出版社,1999 [5].王树青.先进控制技术及应用[M].北京工业出版社,2002
[6].孙立志.PWM与数字化电动机控制技术应用[M].中国电力出版社,2001 [7].沈安俊.直流PWM技术的发展[M].电气传动,1987
[8].刘福才,张学莲.多电动机传动系统控制理论与应用研究[J].控制工程,2002 [9].周兴华.单片机智能化产品C语言设计实例详解[M].
[10].张桂香,王辉.计算机控制技术.电子科技大学出版社[M],2001 [11].余永权.单片机在自动控制系统中的应用[M].电子工业出版社,1999
[12].童长飞.C8051F系列单片机开发与C语言编程[M].北京航空航天大学出版社,2005 [13].马忠梅,籍顺心,张凯.单片机的C语言应用程序设计[M].北京航空航天大学出版
社,2001
[14].余永权,汪明慧,黄英.单片机在控制系统中的应用[M].电子工业出版社,2002 [15].曲金玉,任桂周,侯树展,刘大叔.基于C8051F单片机的发动机转速测量[J]. 拖拉机与农用运输车,2007
[16].杨云龙.电动自行车调速系统研究[J].西安科技大学论文,2007
43
附录1 总程序
#include \头文件程序不附 typedef unsigned int uint; typedef unsigned char uchar; typedef unsigned long ulong;
uint cesu1=0,cesu2=0; //0.1秒所测主从电机的脉冲个数 uchar temppage;
uchar i=0,j=0; //i为T4循环标志,j为主程序运算标志 uchar m=0,n=0; //m为通信接收位数,n为发送位数 uchar cs1[4],cs2[4]; //cs1,cs2保存主从电机的速度脉冲 uchar js[3],fs[6]; //发送和接收数据数组
uint shd,shj; //主电机设定速度及对应的标准脉冲值 uint speed1=0,speed2=0; //主从电机实际速度
xdata float T1,T2,Ti1,Ti2,Td1,Td2; //采样积分微分时间常数 xdata float A11,A12,A13,A21,A22,A23,Kp1,Kp2; //PID运算系数
void t4ISR(); //T4中断程序说明
void Uart_ISR(); //串口通信中断程序说明
void pwm_set() //PCA0初始化 {
SFRPAGE=0x00; //PCA0特殊功能寄存器所在分页
PCA0MD=0X04; //禁止PCA定时器中断,时基为Timer0 PCA0CPM0=0X42; //模块0:8为PWM模式,禁止中断 PCA0CPL0=0XFF; //PWM0赋初值 PCA0CPH0=0XFF;
PCA0CPM1=0X42; //模块1:8位PWM,禁止中断 PCA0CPL1=0XFF; //PWM1赋初值 PCA0CPH1=0XFF;
PCA0CN=0X40; }
void Uart0init() //串口通信中断程序 {SFRPAGE=0X00;
SADEN0=0X00; SADDR0=0X00;
44
SSTA0=0X10; //2分频开启,波特率为T1溢出率的16分频
SCON0=0X50; //工作在模式1,为8位可变波特率通信,允许接收 SCON0&=0XF0; //将TI0和RI0清0 IE|=0X10; //UART0中断开启
PS=1; //UART0中断优先级为高 }
void timer0() //Timer0{
SFRPAGE=0X00;
TMOD=0X02; //T0 CKCON=0X08; //T0 TH0=0XA0; //T0 TL0=TH0; ET0=0;
TR0=1; //}
void timer1() //T0{SFRPAGE=0X00;
TMOD|=0X20; // CKCON|=0X10; // TH1=0XF3; TL1=TH1; TR1=1; }
void timer2() //Timer2{
SFRPAGE=0X00;
TMR2CF=0X00; // RCAP2=0X0000; // TMR2=0X0000;
TMR2CN=0X06; // T2}
void timer3() //Timer3{
SFRPAGE=0X01; TMR3CF=0X00;
初始化 为模式2,8位自动重载 时钟为系统时钟 赋计数初值 启动T0 作为UART0波特率发生器 模式2,8位自动重载 采用系统时钟 初始化,T2计主电机脉冲 自增模式 计数初值清0 工作在计数模式,启动T2 初始化与T2相同,T2计主电机脉冲45
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库多电机同步控制(9)在线全文阅读。
相关推荐: