基于单片机的报警检测驱动模块设计*
2015-03-14何晋秋
何晋秋 王 磊
(武汉第二船舶设计研究所 武汉 430064)
基于单片机的报警检测驱动模块设计*
何晋秋 王 磊
(武汉第二船舶设计研究所 武汉 430064)
报警检测驱动模块应用于船舶柴油机系统燃油回路,对油箱前及油箱后燃油的含水率超标情况进行报警并控制相应的电磁阀,模块还可进行输出回路的断线故障检测。由于燃油含水率检测装置稳定工作需要一定的时间,要求报警检测驱动模块具有上电延时功能。
延时报警; 故障检测; 电磁阀
Class Number TM15
1 引言
带延时功能的报警检测驱动模块应用于柴油机系统燃油回路,对柴油机油箱前燃油的含水率和油箱后的燃油含水率的超标情况进行报警并控制相应的电磁阀。两套燃油含水率检测装置分别检测油箱前和油箱后的燃油含水率,当油箱前或者油箱后的燃油含水率超标时,燃油含水率检测装置输出开关量信号至报警驱动模块,由报警驱动模板实施报警和控制。由于燃油含水率检测装置稳定工作需要一定的时间,要求报警驱动模板具有上电延时功能,其工作状态分为上电延时等待工作状态和正常工作状态。在延时等待工作状态,模板不对输入的超标信号进行响应,禁止相应的报警输出和控制,同时指示相应的待机工作状态;在正常工作状态,模板监测两路输入信号,根据两路不同的超标信号进行报警和实施控制,模块还可进行输出回路的故障检测。根据要求,上电延时等待时间大约为30min,一般的电磁式等延时继电器难以达到要求。采用微控制器PIC16F88实现上电的长时间延时等待和报警控制功能,将两个不同的要求结合在一起,简化了系统结构。
2 硬件设计
2.1 硬件架构
报警驱动模块采用美国Microchip公司生产的PIC16F88微控制器为核心组成,其外围电路主要由输入光电隔离电路、输出隔离驱动电路、输出电流检测回馈电路、隔离电源电路等部分组成,具体电路详见电路原理图。
图1 硬件组成示意框图
2.2 微控制器基本电路
报警检测驱动模板的主控制芯片(U1)采用美国microchip公司的PIC16F88,是一款8位微功耗、高性能的CMOS微控制器(MCU),PIC16F88微控制器具有8级堆栈,采用RISC指令结构[1],指令简单高效,只有35条指令。同时具有片内WDT等功能,非常适合于恶劣环境使用。微控制器基本电路如图2所示。
图2 微控制器PIC16F88基本电路
2.3 主输出和断线检测电路
主输出的控制对象是电磁阀,电磁阀控制线圈的工作电压为24VDC,工作电流约为4.3A,其负载特性为感性负载,电磁阀控制线圈仅仅是通断工作,通断的工作频率低。根据负载特性和要求,主输出端口要求具有较大的电流输出能力。在本设计中主输出端口的驱动器件采用大功率P沟道MOSFET开关管[2],功率MOSFET内部寄生有二极管,实现电流的续流功能,可直接带感性负载,且MOSFET开关管为电压型控制器件,在对开关速度要求不严格的使用条件下,驱动MOSFET栅极的控制功率非常小。主输出和断线检测电路如图3所示。P沟道MOSFET开关管选用美国国际整流器公司生产的IRF4905。
2.4 输入光电隔离电路
报警驱动模块的输入光电隔离电路分为两个部分,一部分是接受来自两台燃油含水率检测装置的输出信号,输出信号为有源开关量信号,且两台燃油含水率检测仪表之间无电气联系,2路信号独立输入,无公共接点,;另一部分是来自报警消音按钮的无源触点信号,在内部接+24V电源。其电路如图4所示。
图3 主输出和故障检测电路
图4 输入光电隔离电路
2.5 报警指示输出隔离驱动电路
报警指示输出隔离驱动共有7路,分别控制相应的报警或工作状态指示灯和声响报警蜂鸣器等。在本设计中采用美国CLARE公司生产的光电耦合MOSFET固态继电器作为输出隔离驱动级,该固态继电器集成了2路独立控制的常开触点模式,其输出额定电流1.0A,最大漏-源极电压Vblock=60V,IF=10mA时其导通电阻为0.5Ω。采用该电路简化了电路,有利于提高工作的稳定性和可靠性,其最大的好处在于输出为MOSFET,由于内部寄生有二极管,可直接驱动感性负载。报警指示输出隔离驱动电路如图5所示。
图5 报警指示输出隔离驱动电路
2.6 +5V隔离电源电路
报警驱动模块的供电电源为直流24V。控制电路的工作电压为+5V,以保证电路工作的稳定可靠。+5V隔离电源模块的输入电压范围为18VDC~36VDC,输出电压+5V,额定输出电流为600mA。+5V隔离电源电路如图6所示。
图6 +5V隔离电源电路
3 软件设计
根据报警检测驱动模块的功能要求,其控制软件设计采用模块化结构设计方法,将整个控制软件根据功能分为若干个任务模块,分别实现各自的任务和功能[3]。主程序将不同任务模块子程序有效地连接起来实现所要求的控制功能。任务模块包括初始化模块、上电延时检测模块、延时时间设定模块、延时工作模块、报警输入处理模块、主输出处理和断线检测模块、声报警处理模块、输出处理模块、闪光处理模块、10MS定时时基模块、1000MS定时时基模块[4]、延时等待中断[5]模块等12个任务模块子程序。整个控制软件采用PIC16系列汇编语言编制[6]。
采用模块化结构的软件设计可使得软件的架构比较清晰,便于调试、修改和管理。
各模块以及各模块与主程序间的数据和信息交换通过设置特定的中间寄存器和任务标识来实现。采用模块化结构软件设计需要设置一些特定的中间寄存器和任务标识,占用微控制器内部的部分数据RAM区域,系统在初始化时需要对这些要使用数据RAM区域进行清零或初始化,设定相应的初始设定数据[7]。
本报警驱动模块控制软件根据控制要求,主要设置两个控制环路,一个是报警驱动模块的上电延时等待工作的等待分支,实现报警驱动模板在上电延时等待工作状态的工作任务和控制功能。另一个是报警驱动模板的正常工作控制状态的分支,实现报警驱动模板在正常工作状态下的任务和控制功能。
图7 主程序流程图
主程序完整地体现了整个软件架构的细节,把各个任务模块子程序有机地连接起来成为一个完整的控制软件,实现所要求的控制任务和功能。主程序流程图如图7所示。
图7中DWAIT_FLG为延时等待工作标识位;NOMWRK_FLG为正常工作状态标识位;TMR2IF为定时器2计数到标识位;T10MS_FLG为10MS定时到标识位;T1000MS_FLG为1000MS定时到标识位;RB0~RB7为微控制器PIC16F88的RB端口,本应用中设置为输出功能。
4 结语
将单片机技术应用于柴油机系统燃油含水率检测装置,对燃油的含水率超标情况进行延时报警并进行电磁阀的断线故障检测和控制,简化了系统结构,技术成熟,稳定可靠,该技术已在实船得到应用。
[1] 王有绪,许杰,李拉成.PIC系列单片机接口技术及应用系统设计[M].北京:航空航天大学出版社,2001:77-217.
[2] 胡宴如,耿苏燕.模拟电子技术基础[M].北京:高等教育出版社,2003:60-69.
[3] 窦振中.PIC系列单片机原理和程序设计[M].北京:航空航天大学出版社,2001:204-291.
[4] 李学海.PIC单片机实用教程.提高篇[M].北京:航空航天大学出版社,2007:42-119.
[5] 窦振中,汪立森.PIC系列单片机应用设计与实例[M].北京:航空航天大学出版社,2000:87-135.
[6] 冯博琴,吴宁.微型计算机原理与接口技术[M].北京:清华大学出版社,2011:145-186.
[7] 李学海.PIC单片机实用教程.基础篇[M].北京:航空航天大学出版社,2002:69-91.
[8] 姚福安.电子电路设计与实践[M].山东:科学技术出版社,2002:73-112.
[9] 谢自美.电子线路综合设计[M].武汉:华中科技大学出版社,2006.
[10] 周润景,张丽娜,丁丽.基于PROTEUS的电路及单片机设计与仿真[M].北京:航空航天大学出版社,2010:227-302.
Alarm and Test Drive Module Based on Microcontroller
HE Jinqiu WANG Lei
(Wuhan Second Ship Design and Research Institute,Wuhan 430064)
The alarm and test drive module is applied to fuel loop of marine diesel engine system.It gives the alarm when the hydrous rate of diesel oil at the input part or the output part of fuel tank overruns,and controls the relevant electromagnetic valve.The module can detect the fault of the output loop also.For the fuel hydrous rate metrical device needs some time to come into steady state,the module is required to be provided with timedelay function when it is electrified.
timedelay alarm,fault detect,electromagnetic valve
2014年8月3日,
2014年9月26日
何晋秋,女,高级工程师,研究方向:船舶电气控制。王磊,男,硕士,工程师,研究方向:船舶控制技术。
TM15
10.3969/j.issn1672-9730.2015.02.040