声明:该文旨在交流—David Xie blog 地址: http://xiewenchao.tianyablog.com http://blog.csdn.net/flyprogrammer/ 主题:基于串口通讯的控制系统 系统:windows xp professional,mfc单文档界面。 系统描述:上位系统将监控1到8个 设备 (device) 。每个设备发送数据的频率为 2ms 。上位系统接收到数据后解析,并做算法处理。将处理后的数据提交给用户,并进行控制 (ctl_device) 。 概要设计: 1、 系统分成如下几个部分: a) 设备驱动模块:与 device 、 ctl_device 等通信; device.dll, ctl_device.dll b) 数据处理模块:调用设备驱动模块,将数据发送给显示模块; _WindowsXP_Proccess.exe c) 显示模块:根据配置文件,与数据处理模块进行通信; _WindowsXP_Display.exe d) 配置管理模块:通过显示模块启动对应的设备管理模块。 _WindowsXP_Configure.exe 2、 系统运行情况: 运行 Configure.exe ,启动日志线程,读取 ini 文件,建立配置的映射并启动 Proccess.exe 。 Proccess.exe 得到配置映射文件。初始化通信端口,并建立数据映射文件和配置管理的映射文件,然后启动通信线程 ( 每个设备对应一个线程 ) 和控制线程 ( 每个设备对应一个 ) ,以及数据存储线程,和 device.dll 、 ctl_device 通信。通过 Display.exe 进入 Configure.exe , Configure.exe 操作完成后,退回到 Display.exe 界面。 3、 硬件配置情况: 一套上位机 ( 工控主板 +MOSA 卡 )+ 设备 + 控制模块。 总结:
优点:易于维护和扩展,易维护表现在工程师通过查询日志记录,清楚的知道故障所在,各部分可以分别维护。扩展性表现在系统可以支持更多的设备。软件框架有利于团队协作开发,通过映射文件来实现进程间通信也带来了许多好处,修改底层的实现,可以进行对其他类型设备的控制(总线结构、工业以太网)。
