0 引 言
以电子设备故障检修技能考核与训练智能化系统为例,介绍由一台PC机与多台单片机组成的主从式网络通信系统,单片机控制作为下位机,负责对电子设备故障点进行数据采集和控制,通过接口将结果传给PC机;PC机作为上位机,对数据进行分析和处理,根据分析和处理的结果来控制单片机的操作。目前,应用Visual C++开发串行通信实现智能化考核和训练系统的通信方法通常有4种:
(1)调用API(Application Program Interface)函数实现;
(2)利用Visual C++的标准通信函数一inp、一inpw等直接对串口进行操作;
(3)使用Visual C++的通信控件(MSComm);
(4)利用第三方编写的通信类(Cserial)。
以上几种方法中第一种方法使用面较广,但由于需要许多低层设置,比较复杂,专业化程度要求较高,使用困难;第二种需要了解硬件电路结构原理,较难掌握;第三种方法看来较简单,只需要对串口进行简单配置,但使用了令人费解WARIANT类,且不能满足使用多个串口进行复杂处理的需要;第四种方法是利用一个专门针对串行通信的CSerial类,该方法功能较强,只要理解这种类的几个成员函数,就能方便使用。RS 485总线以其灵活性好、成本低、抗干扰能力强、支持节点多、传输距离远、连接简单的优势,被广泛应用于网络单片机系统。在该系统中,上位机采用Visual C++的Cserial类通信方式;下位机采用ATMEL公司的AT89C52单片机,总线采用RS 485标准组网。
l 系统结构
整个系统是一个基于RS 485现场总线,自定义通信协议,在总线上连接各下位机和上位机,由上位机统一管理的主从式总线型的监控系统。该系统包括监控层、通信层、以及现场设备层。其中,监控层由上位机(PC机)承担,负责接收底层现场设备上传的数据,进行数据的分析和存储,下位机参数的设定和修改,以及实时和历史数据的查询,实现对现场设备的监控管理;通信层通过自制定的通信协议与现场下位机设备进行实时通信,完成数据通信包的打包、拆包、检验等处理;现场设备层由多台电子设备、单片机、继电器、键盘、LCD显示器等组成的监控系统。
系统结构方框图如图1所示。
上位机为教师操作的教学控制管理系统,在微机上用Visual C++编程实现功能。教学控制管理系统的主要功能为:
(1)考试的技术准备工作;
(2)考试的监考工作;
(3)辅助完成其他考务信息管理工作。
根据功能要求,教学控制管理系统由通讯模块、代码编译模块、代码执行模块、系统管理模块、历史资料查询模块组成,这几个模块和用户界面用户接口一起构成整个系统软件。
下位机作为这个分布式控制系统的学生客户端,是一个基于AT89C52单片机的应用系统。本系统使用计算机、AT89C52单片机、光电耦合器、驱动电路、继电器、彩色电视机等组成的监控系统,通过局域网,构成一个智能化训练及鉴定系统。AT89C52单片机控制系统如图2所示。