直流电机闭环调速控制系统设计报告 (2)

上传人:无*** 文档编号:116081484 上传时间:2022-07-04 格式:DOC 页数:20 大小:198.50KB
收藏 版权申诉 举报 下载
直流电机闭环调速控制系统设计报告 (2)_第1页
第1页 / 共20页
直流电机闭环调速控制系统设计报告 (2)_第2页
第2页 / 共20页
直流电机闭环调速控制系统设计报告 (2)_第3页
第3页 / 共20页
资源描述:

《直流电机闭环调速控制系统设计报告 (2)》由会员分享,可在线阅读,更多相关《直流电机闭环调速控制系统设计报告 (2)(20页珍藏版)》请在装配图网上搜索。

1、目录1一、 课设任务.2 1.1设计内容.2 1.2具体要求.2 1.3程序调试建议 .2二、 系统方案.3三、 硬件设计.3 3.1数码管显示和行列式键盘电路.4 3.2数模变换电路.5 3.3直流电机驱动电路.6 3.4片选译码电路7 3.5 RAM电路.7四、 软件设计8五、 调试及结果.19六、 心得体会.19七、 参考文献.20八、 附录.20直流电机闭环调速控制系统设计报告一、课设任务11设计内容:以实验室实验装置为设计对象,从中选择出合适的部分,构成一个直流电机恒转速控制系统,具有如下功能:1、可以通过按键设定直流电机转速(转 / 分钟,r/min);2、可以实时显示电机转速,同

2、时显示设定值(各用三位显示);3、运行过程中改变负载可以维持设定的转速稳定后保持不变。(稳态误差小于等于设定值的5%)4、开始时只显示设定值,采集值显示为0,按运行键后显示实时采集值与设定值,左边三位是设定值,右边三位是实时值;5、设置停止运行键,控制直流电机停止运行;6、其它扩展发挥功能。1.2 具体要求:1、根据功能要求从实验装置上选择合适电路构成系统,用protel软件画出原理图与控制系统结构图,分析系统工作过程;2、根据实验装置具体情况确定接线方法,从而确定各端口的口地址(D/A、键盘、显示等);3、采用PID算法作为恒转速控制算法,对PID算法加以分析说明;4、按照系统工作过程要求编

3、制程序,画出流程图与编写具体程序;5、调试运行,记录运行结果;6、书写课程设计报告,符合学院有关课程报告的要求。1.3 程序调试建议:1、先通过简单程序验证硬件工作正常(D/A输出,带负载能力,显示器正常等等);不正常时及时与实验室老师联系更换器件。2、 调试测速显示子程序;3、调试参数设置程序;4、调试控制算法程序;5、调试综合程序二、系统方案直流电动机具有良好的起、制动性能,宜于大范围内平滑调速,在许多需要调速或快速正反向的电力拖动领域得到了广泛的应用。采用PID调节的转速单环直流调速系统可以在保证稳定的前提下实现转速无静差。系统进行信号采集进行D/A转换,使单片机送出脉冲来控制触发器,控

4、制电路输出,驱动电动机工作,再由检测电路带回实际转速给单片机,让单片机根据实际转速和给定的转速进行比较,放大及PID运算等操作,从而控制整流电路角的大小,进而改变电机电枢电压的大小,达到调节电动机转速的目的。三、硬件设计3.1 数码管显示和行列式键盘电路数码管显示和行列式键盘电路图3.2数模变换电路数模变换电路图3.3直流电机驱动电路:直流电机驱动电路图3.4片选译码电路:片选译码电路图3.5 RAM电路:RAM电路图四、软件设计 MCS-518031ROM2662DAC0832模数转换LED显示PID调速键盘设定速度LED显示判断按键执行跳转图1 结构框图开始显示初始化有键按下?是运行设定结

5、束If 09IF DIF Eflag=1?PID控制否显示否是LOOP主程序流程图开始定义变量 扫描模式置初值扫描模式送输入口取显示数据查表转换成段码调用延时子程序扫描模式左移一位循环是否结束返回YN显示程序流程图程序:/*课程设计PID直流电机调速*#include /*地址定义*xdata unsigned char IN _at_ 0x8001; / 键盘读入口xdata unsigned char OUTBIT _at_ 0x8002; / 位控制口xdata unsigned char OUTSEG _at_ 0x8004; / 段控制口xdata unsigned char CS0

6、832 _at_ 0x9000; / DA地址约定/*变量定义* unsigned int VOUT=0 ; / DA输出缓存变量 unsigned int FDC=0,FREF=0,DFDC=0,uctrl=0; / 转速检测值FDC,给定值FREF unsigned int PVAL=10,PIVAL=1,IVAL=0; unsigned int ERROR;/*缓冲区及其长度定义*#define LEDLen 6/数码管数量unsigned char LEDBufLEDLen; / 显示缓冲/* 八段管显示码*code unsigned char LEDMAP = 0x3f, 0x06,

7、 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71;/* 键码定义*code unsigned char KeyTable = 0x16, 0x15, 0x14, 0xff,0x13, 0x12, 0x11, 0x10,0x0d, 0x0c, 0x0b, 0x0a,0x0e, 0x03, 0x06, 0x09,0x0f, 0x02, 0x05, 0x08,0x00, 0x01, 0x04, 0x07;/*延时程序*void Delay(unsigned char CNT) unsi

8、gned char i; while (CNT- !=0) for (i=100; i !=0; i-);/*动态显示程序*void DisplayLED() unsigned char i; unsigned char Pos; unsigned char LED; Pos = 0x20; / 从左边开始显示 for (i = 0; i = 1; / 显示下一位 /*键闭合程序*unsigned char TestKey() OUTBIT = 0; / 输出线置为0 return (IN & 0x0f); / 读入键状态(高四位不用)/*得键值程序*unsigned char GetKey(

9、) unsigned char Pos; unsigned char i; unsigned char k; i = 6; Pos = 0x20; do OUTBIT = Pos; Pos = 1; k = IN & 0x0f; while (-i != 0) & (k = 0); if (k != 0) i *= 4; if (k & 2) i += 1; else if (k & 4) i += 2; else if (k & 8) i += 3; OUTBIT = 1; do Delay(10); while (TestKey(); / 等键释放 return(KeyTablei); /

10、 取出键码 else return(0xff);/*速度设定程序*void speedset() unsigned char i=0,j=0,k=0,s,KEY,m; unsigned char b=0,c=0; LEDBuf0 = LEDMAP0; LEDBuf1 = LEDMAP0; LEDBuf2 =LEDMAP0; LEDBuf3 = LEDMAP0; LEDBuf4 = LEDMAP0; LEDBuf5 = LEDMAP0; while(k!=10) /A键为确认键; /* m=0; LEDBufi=0x00; /关闭相应位; while(m!=10)DisplayLED();m+;

11、 /延时; m=0; LEDBufj = LEDMAPKEY; /重新放回设定值; LEDBufi=LEDBufi+3; /实现闪烁原来的值; while(m!=20)DisplayLED();m+; /延时; m=0; DisplayLED();*/ if( TestKey() ) s= GetKey(); k= s & 0x0f; if(k=0)&(kFDC) ERROR=FREF-FDC; IVAL=IVAL+ERROR/8; if(IVAL=0Xf5) IVAL=0Xf5; uctrl=PVAL*ERROR+PIVAL*IVAL; VOUT=uctrl; if(VOUT0xf0) VO

12、UT=0xf0; if(VOUT0x80) VOUT=0x80; if(FREF=0XF5) IVAL=0XF5; uctrl=-PVAL*ERROR+PIVAL*IVAL; VOUT=uctrl; if(VOUT0xf0) VOUT=0xf0; if(VOUT0x8f) VOUT=0x80; LEDBuf2 = LEDMAPDFDC/1000;/实际转速千位; LEDBuf3 = LEDMAPDFDC%1000/100;/实际转速 百位; LEDBuf4 = LEDMAPDFDC%100/10 ;/实际转速 十位; LEDBuf5 = LEDMAPDFDC%10; /实际转速 个位; Dis

13、playLED(); /*主程序* void main() unsigned char KEY,i,s; for(i=0;i=5;i+) LEDBufi = LEDMAP0;/初始值显示0; while(1) DisplayLED(); if(TestKey() s=getkey() ; KEY= s & 0x0f; if(KEY=13) / D键运行 ; InitT(); CS0832=0X80; Delay(5); while(KEY!=14) /运行时按E停止键; s=getkey() ; KEY= s & 0x0f; DisplayLED(); CS0832=VOUT; PIDTiao

14、Su(); while(KEY=14) /E键停止 ; for(i=2;i=5;i+) LEDBufi = LEDMAP0; CS0832=0; s=getkey() ; KEY= s & 0x0f; if(KEY=12) speedset(); /停止后设定速度; DisplayLED(); if(KEY=12) speedset(); /C键设置速度值; 五、调试及结果正确连接硬件电路,打开伟福编译程序,将编写好的程序调出,设置伟福实验装置,点击编译、运行。按下设置键C,数码管显示000000,然后按键盘上的数字,设置电机速度,如按下32,显示结果250000,点击A键确定,点击启动键D,

15、电机运转,后四位显示电机实际转速,显示结果321940(理论值应是1920,允许有5%的误差)。E键停止运行。如果想在设置其他值,点击C,设置新的转速,如果想让电机停转,点击停止键E,并且重新设置电机转速。运行过程中,如设置新的转速30,运行结果为301800。但是在程序的编写过程中,由于设置了电机启动电压的上下限,故实际测得的电机转速有一定的范围值,为(2245)r/s。超过这个范围,实际测得的电机转速误差很大。六、心得体会通过这次期两个星期的课程设计,发现了自己的很多不足,自己知识的很多漏洞,看到了自己的实践经验还比较缺乏,理论联系实际的能力还急需提高。这次的课设我感觉收获很大,虽然遇到了

16、很多困难,但还是被我们一一解决了,它不单是要求你单纯地完成一个题目,而是要求你对所学的知识都要弄懂,并且能将其贯穿起来,综合性比较强。首先要把设计任务搞清,不能盲目的去做,如果连任务都不清楚从何做起呢,接下来是我们两人一组,然后找相关的资料,将有用的整理出来。这次的课设我感觉最不好做的还是程序的编程,它需要把所有的电路硬件图以及连线都非常清楚,并根据这些编写相应的程序,最后把这些程序整合到一起进行调试。在完成这次课设的同时,我们也把前边学过的和其有关的课程复习了一遍,把以前没有弄懂得问题也搞清楚了。总之,这次课设带给我的收获是没有预料的,当你解决一个问题后,你会有一种成就感,那种心情是无法比拟

17、的。这次课设我体会到不仅要掌握书本上的基本内容,还要灵活思考,善于变换,这样才能找到最优设计。只有不断的学习、实践、再学习、再实践才能不被社会淘汰。 当然这次课设离不开老师的耐心教导,没有他给我们灌输的知识,我们根本就无从下手,是老师的教导和我们的努努力才能顺利的完成课设的任务。七、参考文献【1】杨学昭 王东云 单片机原理、接口技术及应用(含C51)西安电子科技大学出版社【2】张五一,张道光.微型计算机原理与接口技术M.河南科学技术出版社,2006.【3】郑秋生.C/C+程序设计教程面向过程分册M.电子工业出版社,2007.18-27【4】王宗培.直流电动机及其控制系统M.哈尔滨:哈尔滨工业大学出版社,1985.【5】马忠梅 单片机C语言应用程序设计。北京:北京航空航天大学出版社,2003八、附录- 20 -

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!