ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:845.96KB ,
资源ID:26971142      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/26971142.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于远程IO和变频器的电机调速系统设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于远程IO和变频器的电机调速系统设计.docx

1、基于远程IO和变频器的电机调速系统设计基于远程IO和变频器的电机调速系统设计计算机测控系统设计课程设计报告 学 院:_电气与信息工程学院_专业班级: 学生姓名: 学 号 设计地点(单位)_ _ I510 _ _ _设计题目: _ 基于远程I/O和变频器的电机调速系统设计_ 完成日期: 2014年 12月 27日 指导教师评语: _ _ _ 成绩(五级记分制):_ _ 指导教师(签字):_ _ 摘要本文介绍了基于ADAM4000系列模块通过远程I/O和变频器控制电机转速的控制系统的工作原理、硬件结构和软件设计。其中PC机作为控制器,变频器作为执行器,电机的转速作为被控对象,、ADAM-4019、

2、ADAM-4024和ADAM-4050等模块作为测量变送器,共同构成一个单回路闭环控制和报警系统。软件设计时我们采用了不完全微分PID控制算法,这种算法与完全微分PID控制想必,明显提高了系统的控制精度。经过系统地测试,该控制系统动态误差控制在较小范围,能够满足控制要求。关键词:远程I/O,ADAM4000,不完全微分PID摘要 21 系统设计方案 21.1 系统概述 21.2设计方案 21.2.1 硬件设计方案 21.2.2 控制方案 22 硬件系统设计 32.1 ADAM-4019+模块 32.2 ADAM-4024模块 42.3 ADAM-4050模块及报警电路 42.4 其他硬件 43

3、 软件设计 53.1 主程序设计 53.2 数据采集和数据发送 73.2.1 数据采集程序设计 73.2.2 控制数据输出程序设计 73.2.3 报警输出程序设计 84 调试过程及结果分析 94.1调试过程 94.2 调试结果 104.3 结果分析 115. 结束语 11致 谢 12参考文献 12附录 程序清单 13重庆科技学院课程设计任务书设计题目:基于远程I/O和变频器的电机调速系统设计学生姓名学生选题后附名单课程名称计算机测控系统设计专业班级测控2011地 点I510、I512起止时间14.12.114.12.26设计内容及要求1. 接线图设计:使用ADAM4000和MM420变频器控制

4、电机转速的所有接线图;包括接线操作、MM420单独控制电机转速的试验和基本应用等。2. 程序设计(1)界面设计:主界面设计,设定转速/实际转速的趋势图和棒图,报警等设计。(2)数据采集与处理程序设计:ADAM4000数据输入/输出程序;利用一元线性回归拟合测量环节的特性曲线;分析系统的系统误差、粗大误差与随机误差,确定减小各类误差的方法;比较常见数字滤波器性能,实现一阶惯性滤波等。(3)电机速度的可编程曲线控制:开环控制电机的转速按预先设定的曲线变化;通过闭环控制(PID调节)将电机的转速控制到任意设定转速。3. 单回路PID参数的整定和分析。要求:根据自己的学号与模8之余确定自己的A/D通道

5、(采集电机的实际转速),据此设计相应的接线图;实现控制死区和输出限幅;整定PID参数满足相应的控制要求;撰写设计报告。设计参数1. 变频器:MM420;电机:具体参数见铭牌2. 稳态误差:20.000) Un=19.998; if(UnPortOpen=false) MSComm1-PortOpen=true; AnsiString SendString=#010; SendString +=xd; MSComm1-Output=OleVariant(AnsiString(SendString); Sleep(200);3.2.2 控制数据输出程序设计数据输出分为4024电流量和4050数字量

6、,分别表示不完全微分PID控制输出和报警信号输出。其程序语句如下:4024模块送D/A数据的命令为:“#AACn(data)”,其中AA为栈号,C为固定字符,n为通道号,data为待发送的数据。4024模块3通道数据输出语句如下:if(MSComm1-PortOpen=false) MSComm1-PortOpen=true; AnsiString SendString1=#02C3; if(Un=10.0) SendString1 +=+; SendString1 +=FloatToStrF(Un,0,5,5); SendString1 +=xd; MSComm1-Output=OleVar

7、iant(AnsiString(SendString1); MSComm1-PortOpen=false;Edit1-Text=FloatToStrF(L_ad,0,5,5);Edit3-Text=FloatToStrF(Un,0,5,5);3.2.3 报警输出程序设计4050模块数字量输出的命令为:“#AABB(data)”其中AA为栈号,BB为输出格式,data为待发送的数据。当测量值大于设定值“dan”或是“PV-SP”大于1.5时则输出报警信号。报警器程序代码如下:/*设置报警限*/ if(PressHL |PressPortOpen=false) MSComm1-PortOpen=t

8、rue; AnsiString SendString2=#030001; SendString2 +=xd; MSComm1-Output=OleVariant(AnsiString(SendString2); MSComm1-PortOpen=false; if( Press(LL+DB)& PressPortOpen=false) MSComm1-PortOpen=true; AnsiString SendString3=#030000; SendString3 +=xd; MSComm1-Output=OleVariant(AnsiString(SendString3); MSComm1

9、-PortOpen=false; 4 调试过程及结果分析4.1调试过程1)首先按照电气CAD的连线图连接好线路。打开配置软件,设置好传输波特率,波特率设置为9600Bps,4024模块的3通道和4019+模块的0通道均设置为4至20mA电流模式。2)输出测试, 使用配置软件,4024分别输出不同毫安的的电流值,观察调节阀的开度是否随着随电流值变化而变化,如果调节阀开度随着电流值的变化而变化即说明调节阀工作正常。3)采集数据单位标定,查看4019+的0通道电流值,可以看到此时为4.000mA,继续打开空气压缩机,压力表示数逐渐增大,4019+采集的电流值也逐渐增大,经标度换算发现,4019采集的

10、电流值与压力计示数对应,说明数据采集正常。 4)设置PID相关参数初始值,控制周期设为500毫秒,采样周期为500毫秒,运行程序。首先,调节比例系数Kp,由小往大调,记录下临近振荡的值约0.8;然后,加入积分环节,由大到小调节积分时间Ti,尽量消除系统余差,观察达到实时曲线已经趋于平稳,记录较理想值在22至24之间;最后,再适当加入微分环节,已达到改变系统动态系能,如减小超调量和数段调节时间等,观察曲线趋势,直到出现比较好的调节效果,记录较为理想数据在4到6之间。4.2 调试结果通过设定不同的PID参数和不同的设定气压值,最终得出了叫理想的实验效果,具体其中PI控制和PID控制如图4-1和4-

11、2所示。图4-1 PID控制趋势图1图4-2 PID控制趋势图2注:趋势图部分从上至下(靠左)分别代表控制输出线、气压设定线和气压测量线;棒状图部分从左至右分别代表气压设定值、气压测量值和控制输出值。4.3 结果分析 综合上述结果,设计各项指标均达到要求。其中稳态误差控制在:0.001至0.007MPa之间。由于电动阀存在滞后,系统调节时间一般在20秒左右。PID参数对系统的影响。本控制周期不宜取得过大,在1秒左右较为合适;Kp偏大或Ti偏小,系统振荡次数增多;Kp太大或Ti太小讲师系统趋于不稳定;Td偏大或偏小均会引起超调量较大或调节时间较长。因此,整定PID参数的过程是较为漫长的,只有合适

12、的参数才能保证系统稳定运行。5. 结束语计算机测控系统设计课程设计为我们提供了一次很实用,很难得的学习和实践的机会。该设计充分利用到了闭环控制系统方面的知识,也提升了闭环PID控制系统的工程实践能力。通过这次课程设计,使我对远程I/O及过程控制有了进一步的了解,对课本上的知识有了近一步的掌握,也深刻明白了自己的不足。通过这次实践,我感觉到自己从课本上学到的理论知识和实践仍有很大的差距。在设计编程过程中,我也遇到很多问题,只有重新看书才能找到答案,这让我体会到了时间的重要性和理论的权威性。理论不经过实践考验,是没法实施的,就像我们编的程序,很多方面考虑的都不够,几乎没有涉及到实际应用时的防范方法

13、措施。致 谢这次课程设计在老师和同学的帮助顺利完成了,在设计中遇到了很多编程问题,最后在老师的建议下终于解决了。对我以后的工作和生活将产生很大的影响。特别感谢各位老师给予我很大的关心和支持。同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!参考文献1胡文金等.计算机测控系统.重庆:重庆大学出版社,2003.62误差理论与数据处理(第6 版).北京:机械工业出版社.2006.13压力计使用手册附录 程序清单/-#include #pragma hdrstop#include Unit1.h#include math.h/-#pragma package(smart_init)#pra

14、gma link MSCommLib_OCX#pragma link PERFGRAP#pragma resource *.dfmfloat SP=5.2253;int i;float L_ad,L_ad1;float Press=0.0,SetP=0.0,HL=0.4,LL=0.1,DB=0.0;float KP=0.8,I=22,D=4.00,KD=2.5,PV=0.0;float Un=0.0,Un1=0.0,Val=0.0,DeltaUn=0.0,En=0.0,En1=0.0,Udn=0.0,Udn1=0.0;float TS=4.5;float K1,K2;TForm1 *Form1

15、;/-_fastcall TForm1:TForm1(TComponent* Owner) : TForm(Owner)/-void _fastcall TForm1:Timer1Timer(TObject *Sender)float dav; if(MSComm1-PortOpen=false) MSComm1-PortOpen=true; AnsiString SendString=#010; SendString +=xd; MSComm1-Output=OleVariant(AnsiString(SendString); Sleep(200); PV=AnsiString(WideSt

16、ring(MSComm1-Input).SubString(3,6).ToDouble(); /数据转换 /*一阶惯性滤波*/ L_ad=0.55*PV+0.45*L_ad1; L_ad1=L_ad; Edit1-Text=FloatToStrF(L_ad,0,5,5); Press= L_ad*0.0669-0.2494; /计算设定压强 Edit15-Text=FloatToStrF(Press,0,2,2); Edit14-Text= FloatToStrF(Press-SetP)*100.0)/SetP,0,5,2); /计算相对误差 /*设置报警限*/ if(PressHL |Pre

17、ssPortOpen=false) MSComm1-PortOpen=true; AnsiString SendString2=#030001; SendString2 +=xd; MSComm1-Output=OleVariant(AnsiString(SendString2); MSComm1-PortOpen=false; if( Press(LL+DB)& PressPortOpen=false) MSComm1-PortOpen=true; AnsiString SendString3=#030000; SendString3 +=xd; MSComm1-Output=OleVari

18、ant(AnsiString(SendString3); MSComm1-PortOpen=false; /*不完全微分PID*/ En=L_ad-SP; /反作用 Udn=Udn1+K1*(En-En1)+K2*(En-Udn1); /微分环节的位置型算式 DeltaUn=(KP*TS/I)*Udn+KP*(Udn-Udn1); /整个不完全微分PID的增量式算式 Un=Un1+DeltaUn; /Un为本周期PID控制器的输出 ,P148页由增量式PID算式得到PID控制器输出 if(Un20.000) Un=19.998; if(UnPortOpen=false) MSComm1-PortOpen=true; AnsiString SendString1=#02C2; if(Un=10.0) SendString1 +=+; SendString1 +=FloatToStrF(Un,0,5,5); SendString1 +=xd; MSComm1-Output=OleVariant(AnsiString(SendString1); MSComm1-PortOpen=false;Edit1-Text=FloatToStrF(L_ad,0,5,5);Edit3-Text=FloatToStrF(Un,0,5,5);/-

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1