本系统采用集中管理、独立控制的模式,各模块都有自己独立的监控程序,当个别模块出现故障时,不会影响整机运行。由于篇幅限制,本文只给出监控模块的软件结构。
主监控模块软件采用模块化结构设计,各种功能都由相应的中断子程序完成。图4是主程序流程图。
系统的初始化包括MCU内部控制寄存器的初始化,寄存器区及数据区的初始化等。自检包括RAM自检及控制系统各传感器自检,自检通过后开放中断及PTS,并调用显示初始化子程序,显示系统主菜单可用键盘选择各子菜单,包括运行参数菜单、状态菜单、故障记录菜单及参数设置菜单。其中参数设置菜单仅供具有权限的维护人员使用,须输入密码才可进行操作。通信握手通过发送特征码55H及接收回弹的AAH来确定通信系统的正常与否。
执行完初始化及自检后,系统进入监控状态,可接收键盘中断,同时保持串口接收中断有效。键盘中断子程序如图5所示。串口数据的发送由子程序调用完成,接收由中断实现,按数据的不同类型进行相应的处理。串口接收子程序如图6所示。
由于本系统检测的模拟量较多,对于A/D转换,系统采用了80C196KC所提供的新功能PTS中断。它以微代码方式运行中断子程序,此普通中断速度快,而且由于PTS提供了一种A/D扫描模式,使得对多个A/D处理更为方便。表1是用于实现A/D的PTS中断的命令块。
首先在主程序中启动ACH4的A/D转换,当该转换完成时,便引发一次A/D结束中断,进而产生一次PTS中断。当PTS中断执行时,它首先读取PTS控制块的内容,如表2所示,依次为命令计数器,命令寄存器,源/目的寄存器和结果寄存器。根据源/目的寄存器的内容,读取该地址的A/D命令并执行,然后根据命令寄存器的UPDT位的值,将源/目的寄存器的地址加二,把上一通道的转换结果送入该寄存器,同时计数器减一,这样完成一个PTS周期。直到计数器为零,PTS中断结束。
3 可*性设计及抗干扰措施
·主电路中主开关采用带保护的IGBT模块,并外加snnbber电路。
·加入冗余整流模块,个别模块出现故障时,不会影响整机运行。
·所有的保护及安全电路都设有全硬件继电保护,各模块入口设熔断保护。
·为减少电磁辐射干扰的影响,对控制板进行了屏蔽。
·采用单点接地和隔离电源供电,消除共阻抗回路。数字地线、模拟地线、信号源地线和负载地线分开设置。数字电路、模拟电路和负载电路分别单独供电,独自构成回路且单点接地。
·加强电源退耦,电源线与地线之间加退耦电容。
·A/D转换采用软件滤波,以减小干扰的影响,提高测量和计算的准确性。
·为防止微机控制器程序执行出错或进入死循环,设WATCHDOG,超出定时时间后能自动使系统复位。
总之,本系统采用分级控制结构,便于系统的升级和维护,同时也提高了系统的安全性。系统在实验室调试、运行稳定,下一步将进行产品化的研究。