展召敏
(上海建桥学院 信息技术学院,上海201319)
由于能源的稀缺,如何使燃料资源利用更高效、更合理,已成为备受关注的民生大事。同时,燃气安全隐患问题也亟待解决。随着技术的进步,相关研究人员逐渐将控制理论应用于燃烧过程控制领域中。目前,西方发达国家燃烧控制技术发展比较成熟,但产品成本较高;我国燃烧控制技术相对落后,生产燃烧器以及燃烧控制设备没有明确的质量安全标准,故欧盟燃烧控制安全标准的引入具有重大意义。封装在同一密闭壳体内的器件,其内部结构如图1所示。工作时输入的电信号驱动发光二极管,使其发出一定波长的光,被光探测器接收,产生光电流,经进一步放大后,将电信号直接输出,即实现了“电→光→电”的转换及输出。把光作为信号传输媒介,输入端和输出端在电气特性上绝缘,这样就实现了“电隔离”。
图1 光耦内部结构图
本设计符合EN298:2003安全标准规范[1]。该标准规定了鼓风或非鼓风燃气燃烧器和燃气用具的自动燃烧控制系统、程序控制装置和与之相连接的火焰检测装置结构、功能、测试方法和标志要求。
光电耦合器是一种把发光源、受光器及信号处理电路
如果解密后的结果和EEPROM中的编码相匹配,则进入正常循环;否则,使程序跑飞的同时清空所有EEPROM。此外,考虑到若加密验证程序只放在主程序的开始执行,则有被专业破解人员直接跳过加密验证程序的可能,故系统设计时采用周期性加密验证方式,提高系统保密性。
FailSafe技术要求在紧急状况下可以立即切断所有的危险输出以防发生事故,即实现“故障导向安全”,也可称作“失效安全”。燃气控制器使用的特殊性决定了该系统对安全性要求比较高,本设计在采用冗余技术的前提下实现了FailSafe。冗余技术又称为储备技术,其核心理念是利用系统并联模型来提高系统可靠性,一般分为工作冗余和后备冗余。本设计中采用前者,即多单元平均负担工作,工作能力有一定冗余。
系统工作过程中,电磁阀对火焰的控制是影响安全的重要因素。当电磁阀打开时即有燃气释放,若没有火焰存在是十分危险的,故需确保在没有火焰时电磁阀处于关闭状态。
如表1所列,设计使用两个MCU对电磁阀和火焰的状态进行检测和控制。在认为两个MCU同时出现故障的可能性非常低的前提下,当有一个MCU或相关器件出现故障时,会在另一个MCU的控制下关闭电磁阀,并切断所有的危险输出,如燃气释放。假设每个MCU及相关部件出现故障的几率是1%,双MCU控制时出现故障的几率仅为0.01%,即通过双MCU控制实现了FailSafe。
表1 双MCU控制下电磁阀工作状态判定表
功能设计要求略——编者注。
燃气控制器的系统运行流程如图2所示,虚线框内的各模块是控制器中实际包含的模块,而左侧矩形框内表示该控制器所要检测和控制的外围设备及相关电路。
图中编号与燃烧控制系统工作流程相对应:
①系统运行过程中,外围输入信号通过接口电路被控制系统的输入模块接收;
②经过输入模块处理后的信号被中央处理模块所接收;
③中央处理模块中的两个MCU对输入信号进行分析和处理;
④通过故障处理模块对系统运行故障进行检测和处理,并将处理结果反馈给中央处理模块;
图2 燃气控制器运行流程图
⑤中央处理模块将分析和处理后的信号传输给输出控制模块;
⑥输出控制模块将低压控制信号通过继电器来控制高压信号,最后通过接口电路对外围设备运行进行自动化控制。
在以上各模块工作的过程中,均由电源管理模块提供适当电压。
3.2.1 系统硬件电路
燃气控制器硬件框图如图3所示,主要包括主控制器STC12C5204、辅助控制器STC12C5201、MCU同步电路、电源电路、输入电路、输出控制电路等几个部分。图3中出现的英文缩写含义略——编者注。
图3 燃气控制器硬件框图
3.2.2 系统输入电路
(1)火焰检测电路
图4为燃气控制器火焰检测电路图,主要利用火焰的导电性和整流效应而设计。火焰检测对系统来说非常重要,故探测点Fire同时连接到了MCU1和MCU2的I/O口上。
图4 火焰检测电路
图4中FE为火焰探测器,电阻R46、R22和电容C4构成低通滤波器。电阻R47和R14组成L型衰减器,使J10与N之间得到10.67 V交流电压。电容C3起到交流耦合作用,使FE端得到纯净的交流信号。在FE点火时,1 mm内约产生两万伏高压脉冲,故电路中采用大功率电阻R46与R22,可以尽量拉开火焰探头与检测电路中比较器及光耦的距离,以保护电路。
无火焰存在时,FE端直流分量为零,在上拉电阻R17作用下,LM393同相输入端INA+电压为+0.7 V,比较器输出为逻辑1,光耦不导通,Fire为低电平;有火焰存在时,燃气燃烧器产生离子体,当电源提供的交流电信号接触到火焰探针时,可在火焰上形成通路,相当于J10与零线之间接入一个二极管,具有单向导通特性,整流后波形如图5所示,此时直流分量为负值。比较器同相输入端INA+为DC-0.7V,比较器的输出为逻辑0,光耦导通,Fire为高电平。
图5 有火焰存在时FE端信号波形图
(2)低压检测电路
如图6所示,为燃气控制器低压检测电路图。由于电压不足时会影响系统的正常运行,因此,需要对系统电压进行实时监测。
低压检测通过比较器和低压检测电路共同完成。图6中LOWVOLT是低压检测点,与主控MCU的I/O口相连接,高电平表示检测电压偏低,低电平表示电压正常。网络点5V1比零线电压高5 V,经分压,反相输入端INB-的电压为1.875 V,同相输入端INB+的电压为30 kΩ/(30 kΩ+3 MΩ)×待测电压
图6 低压检测电路
临界值为181.8 V,若同相输入端的电压低于反相输入端,即供电电压低于预设值,则光耦导通,LOWVOLT检测到上升沿。
3.2.3 系统输出控制电路
系统输出控制电路逻辑如图7所示,故障报警灯和风机连在干路上,其他电路包括两个燃气控制阀门、点火装置以及执行器均需接受风机的总控制,即只有在风机打开的前提下,系统才允许进行输气、点火等动作。
图7 系统输出电路控制图
3.3.1 系统软件架构
图8为燃气控制器软件架构图,显示了软件的主要组成部分及其嵌套关系。
图8 燃气控制器软件架构图
3.3.2 主控MCU芯片加密及加密验证软件设计
主控MCU加密基础是STC12C5201AD系列芯片的每一个单片机在出厂时都具有全球唯一的序列号(ID号),可以在单片机上电后通过相关指令从内部RAM单元F1 H~F7H中存储的连续7个单元值来获取该单片机的ID号,利用其唯一性对MCU进行加密。此时,再烧录流程控制程序则只能匹配当前芯片。加密软件流程、密码验证软件流程如图9、图10所示。
图9 加密软件流程
图10 密码验证软件流程
3.3.3 系统流程控制软件设计
结合系统功能要求及被测参数的相关性,确定各任务如下:
TASK#1:开机检测(锁存错误检测,火焰检测,低压检测),重复检测7次。
TASK#2:CPI检测,重复检测20次。
TASK#3:开机前LP检测,重复检测20次。
TASK#4:打开风机,两个周期后进行风机电平检测。
图11 主程序流程
TASK#5:打开SA,进行火焰检测和RWtest检测,重复检测40次。
TASK#6:关闭SA,进行火焰检测和RWtest检测,重复检测60次。
TASK#7:打开BV2,4个周期后进行火焰检测。
TASK#8:关闭IG点火器,进行RWtest检测,LP检测,重复检测14次。
TASK#9:打开BV2,进行火焰检测,RWtest检测,LP检测,重复检测24小时。
根据任务的执行顺序,画出如图11所示系统主程序流程图,以及图12所示sEOS系统任务调度流程图。系统运行时,首先进行密码验证,验证通过后进行系统初始化,包括I/O口输入输出模式初始化、系统输出控制模块初始化、定时器初始化及任务切换时任务状态值初始化。由于STC芯片内置R/C振荡器随着温度变化,其提供的频率会有一定温漂,加上制造工艺方面的误差,导致内部R/C振荡器不够敏感,因此燃气控制器初始化完成后,需要根据工频交流电频率(50 Hz)来获取校正后的芯片频率,以此来保证系统运行控制的精度。产生中断间隔(一个“Clock Tick”)为20 ms,根据系统功能对时间精度的需求,sEOS任务调度和切换周期定为0.5 s,即每隔0.5 s系统查询一下任务状态当前值,根据该值决定任务的调度。
图12 sEOS系统调度流程
本设计中参照EN298:2003标准,对燃气控制器进行了系统设计,能够有效减少国内燃烧控制设备因缺乏明确的质量安全标准而存在的安全隐患;同时,由于国内劳动力资源和电子元器件成本相对低廉,使该设计兼具了国外产品的高质量和国内产品的低成本这两项优点,希望能在一定程度上推动国内燃烧控制行业的发展,关键技术问题的解决方案也可以给业界同行一个很好的借鉴。
编者注:本文为期刊缩略版,全文见本刊网站www.mesnet.com.cn。
[1]BS EN298-2003.鼓风或非鼓风燃烧器和燃气具的自动燃气控制器[S].
[2]任克强,刘晖.单片机系统硬件及软件加密技术[J].电子设计应用,2003(7).
[3]Michael J Pont.Embedded C[M].London:Pearson Education Limited,2002:143-203.