目 录
1任务分析和性能指标 3
1.1任务分析 3
1.2性能指标 3
2总体方案设计与实现 4
3软件设计与实现 5
3.1 主程序 5
3.2子程序 5
4 调试及性能分析 8
总 结 9
参考文献 10
附录1 元器件清单 11
附录2 系统调试照片 12
1任务分析和性能指标1.1任务分析
利用VB编写应用程序实现远程I/O模块温度测量与报警系统,实现自动连续读取并显示温度测量值与温度变化曲线,并且当测量温度大于设定值是,线路中指示灯亮。
1.2性能指标
l 分辨率:0.1℃
l 测量范围:0~150℃
2总体方案设计与实现
利用ADAM4000系列实现模数转换与数据通信。PT100热电阻检测温度变化,通过温度变送器转换为4~20mA电流信号,经过250Ω电阻转换为1~5V电压信号送入ADAM4012的模拟量输入通道,如图2.1。通过VB编程实现可视化的显示界面,如图2.2。
图 2.1 硬件电路
图2.2 显示界面
3软件设计与实现3.1 主程序
定义窗口级变量与初始化窗口,如图3.1
图3.1 窗口定义与初始化
3.2子程序
l 选择控制方式
当单击按钮Option1时,标志变量bz=0,打开与关闭指示灯按钮不可用,此时为自动模式。
图3.2.1 控制方式
l 数据读取与发送及显示温度值
因为温度变送器的测温范围为0~200℃,输出4~20mA的电流信号,经过255Ω电阻转换为1~5V电压信号送入ADAM4012模拟量输入通道。输入电压u与检测温度t是线性关系,二者的换算公式为t=(u-1)*40
图 3.2.2 数据读取与发送及温度显示
l 超温报警指示
在自动模式下(bz=0),测量温度大于50℃时打开线路中指示灯(亮),程序画面中指示灯为红色;小于50℃时关闭指示灯。
图3.2.3 超温预警
l 实时温度绘制
为了实时显示测量温度变化过程,需要绘制数据曲线,在darw()过程中实现。
图 3.2.4 实时温度绘制
l 手动打开和关闭指示灯
手动模式下(bz=1),发送控制指令#021001,置输出0端口为高电平,线路中指示灯亮。发送控制指令#021000,置输出0端口为低电平,线路中指示灯灭。
图3.2.5 手动打开和关闭指示灯
4 调试及性能分析
1.在调试过程中出现串口混乱,通过更改串口解决了串口混乱问题。
2.在调试中出现软件编写错误,通过检查找到并解决了软件编写错误的问题。
3.检测温度与实际温度偏差较大,通过改变算法实现温度偏差小与0.5摄氏度。
由于线路中存在电阻使得显示温度与实际温度存在偏差,通过改变温度算法实现温度的精确显示。
总 结
通过此次课程设计,使我更加扎实的掌握了有关温度测量方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。
过而能改,善莫大焉。在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!
参考文献
[1] VB串口通信及测控应用实例[M].北京:电子工业出版社,2014.1
[2] Visual Basic程序设计教程[M].北京:清华大学出版社,2016
[3] 可视化编程应用Visual Basic[M].北京:北京理工大学出版社,2016.3
[4] Visual Basic程序设计经典实例案例集[M].北京:高等教育出版社,2012.4
附录1 元器件清单
附录2 系统调试照片
|