文档详情

嵌入式课程设计-化学反应过程控制系统程序设计.doc

发布:2017-06-11约4.2千字共27页下载文档
文本预览下载声明
嵌 入 式 课 程 设 计 课程标题: 化学反应过程控制系统程序设计 任课老师: 设计时间: 一、设计描述 某化学反应过程的装置如下图,它由4个容器组成(4#池很大),容器之间用泵连接,以此进行化学反应。1#--3#容器都有检测容器空和满的传感器,2#容器还有加热器和温度传感器,3#容器还有搅拌器。化学反应流程如下: 按启动按钮后,1#、2#容器分别用泵P1、P2抽入碱和聚合物,抽满后各自的传感器发出信号,P1、P2关闭。2#容器在P2启动后10s开始启动加热器,当2#容器中的聚合物加热到60℃时,温度传感器发出信号,关闭加热器。 当加热器关闭后,P3和P4启动,分别将1#、2#容器中的溶液送到3#反应器中,同时启动搅拌器,当3#满或1#、2#空,则P3、P4停止,P3、P4停止后搅拌器继续搅拌60s后,P5启动将混合液抽到产品池4#容器,直到3#空。 当按下停止按钮后,应该完成一个完整的生产流程,即把1#、2#容器中的反应物用完,把3#容器所有混合液抽空到4#池,最终1#、2#、3#池处于空状态,然后才停止所有工作。 设计要求 在LPC2292开发板上编程实现上述控制流程。 S1为启动按钮,S2为停止按钮。1#--3#池的空和满传感器都是数字量输入,分别通过键盘S3--S8输入;2#池温度为模拟量输入,接AIN0,需要进行AD转换。 P1--P4、加热器、搅拌器的控制都使用开关量控制,用D1--D6指示,指示灯亮表示“开”。 要求在液晶屏上第一行显示2#池温度。界面设计要求简单清晰明了。 扩展功能 增加智能检测功能,能够判断系统以下基本故障,并在液晶屏上第二行显示故障类型信息。 1)当P1开时间超过2分钟,1#满传感器没有指示则指示故障1; 2)当P3开时间超过2分钟,1#空传感器没有指示则指示故障2; 3)当加热器开时间超过3分钟,温度没有达到60度则显示故障3; 4)当P5开时间超过3分钟,3#空传感器没有指示则指示故障4. 增加并行功能以提高工作效率,即当P3、P4关闭后,即启动P1、P2。 设计流程 仔细分析整个工作流程——细化成状态——找出状态切换条件——将状态逐步联系起来——绘制状态网络图,如图一 根据状态网络图和开发板硬件原理图合理的设置状态指示和开关切换状态 根据上面的状态网络图和硬件设置,绘制程序流程图 仔细分析流程图编写程序 进行程序调试,修改 验证程序,确认设计要求 设计总结 设计方案分析说明 设计方案总体框架图 总说明:8路LED做状态指示,8路按键引发状态切换,12864液晶显示各种故障提示以及实时显示温度,AD模拟温度, 子说明:LED详细状态说明及按键详细说明见下表 LED1 LED2 LED3 LED4 LED5 LED6 LED7 LED8 P1开 P2开 P3开 P4开 P5开 加热 搅拌 ------ KEY1 KEY2 KEY3 KEY4 KEY5 KEY6 KEY7 KEY8 开始 停止 1#满 1#空 2#满 2#空 3#满 3#空 注:1、P1~P5开都是在其对应的LED亮的情况下,类推,当对应的LED暗的时候就意味着是关的状态; LED1~LED8对应开发板的D1~D8; KEY1~KEY8对应开发板的K1~K8; 设计软件程序图 体会 参考文献 周立功主编,ARM嵌入式系统基础教程,北京航空航天大学出版社,2008.9 附录 程序清单 注:相关头文件在项目压缩文件中均已包含 /******************************************************************** * 文 件 名:main.c * 功 能:LED显示控制。 * 通过GPIO直接控制4个LED产生流水灯效果 * 说 明:将跳线器JP12全部短接 * 这个警告可忽略,C2892E: signed constant overflow ********************************************************************/ #include config.h #include def.h #include LPC2294.h #include LCD_YM12864I.c #define uchar unsigned char #define uint unsigned int #define LED1_ON
显示全部
相似文档