基于RS485的远程控制系统设计
扫描二维码
随时随地手机看文章
0 引 言
某型防空指挥系统是一个以微型计算机为核心的模块化和节点化设计的网络系统。全系统由6种基本工作站组成,组成了比较完整的防空作战情报指挥系统,主要用于空中目标情报的快速采集、处理和传递,实现实时有效的射击指挥及办公自动化。由于各工作站所要完成的工作都较复杂,安装、搭载的软件和设备也都很多,因此工作站的计算机上普遍装有多个硬盘,并按照功能的分类装有不同的系统,在使用时,根据需要对系统进行选择和系统间的切换。随着现代科技的发展和军事变革的不断推进,在应用时对系统选控的实时性、可靠性和操控性都提出了更高的要求,传统的控制手段已不能满足新的需要。基于此该文设计了一种由固态继电器和单片机构成的控制单元。该控制单元能够利用固态继电器的断开和导通控制计算机中硬盘的断电和上电。固态继电器功耗较小,且多使用直流电源,是一种性能优良、通用性强、体积小、工作可靠的元器件。利用这种元器件设计的控制单元有着广泛的应用范围和良好的使用前景。
目前,单片机以其成本低、使用灵活、实时性强、具有一定的智能性等优点,广泛应用于国防工业的控制领域和数据采集系统中。但对于某些复杂任务的实现,如大数据量的计算、人机对话等,单片机却无法胜任。相反,PC机在这方面却有着较强的优势。因此,将它们进行有机的结合,组成一个完善的系统就显得非常有必要了。在系统中,单片机负责对数据的采集和执行单元的控制,PC机负责实现数据处理的功能,这时就涉及到了一个单片机与PC机之间通信的问题。在单片机和PC机之间进行高速、可靠的通信,目前较为流行的方式是采用串行通信方式。根据某型防空指挥系统通信距离远的特点,本系统选用RS 485标准作为主要的通信方式。
在远距离控制系统中,控制指令一般通过数据总线进行传输,而通信距离在几十米到上千米的远距离控制系统现在通常采用RS 485总线标准。RS 485标准定义了一个基于单对平衡线的多点、双向(半双工)通信链路,提供了高噪声抑制、高传输速率、长传输距离、宽共模范围和低成本的通信平台。
1 系统的组成及战技指标
作为某型防空指挥系统的子系统,本远距离控制系统由一台PC机,若干个控制单元,以及连接PC机和控制单元的数据线组成,每个控制单元又分别对应三个受控对象,即三个硬盘。其中控制单元主要由单片机和继电器两部分构成,完成对主控机发出指令的接收、分析、处理,和对硬盘的控制等功能。工作原理如下:本系统采用半双工主从通信方式,有一台主机和多台从机,主从机之间通过RS 485总线进行由主机到从机的单向通信,且各从机之间互不通信。从机在读取信息后,对其进行分析、判断,继而完成相应的控制功能。其结构图如图1所示。
本文所提出的控制系统方案是基于RS 485的有线传输,最大传输距离可达1.2 km,数据速率为1 200/2 400 b/s,误码率小于等于1×10-6,系统反应时间小于等于2 s。某型防空指挥系统中,各站间的距离最大可达50 km,当传输距离超过了有线通信的最大值时,可采用数传电台等无线通信的方法代替。当传输距离在有线传输的范围内时,宜采用有线传输,以降低误码率。
2 系统主要芯片。
2.1 C8051F020的性能特点
CYGNAL的C8051F020是集成模拟、数字信号于一体的混合信号系统级SoC单片机。与目前常用的51系列单片机指令集完全兼容具有64个数字I/O引脚。它采用Cygnal公司的专利CIP-51微处理器内核,完全能够满足使用需要。
其主要特性如下:
(1)高速、流水线结构的8051兼容的CIP-51内核(可达25 MIPS)。
(2)真正12位、100 KSPS的8通道ADC,带PGA和模拟多路开关。
(3)两个12位DAC,具有可编程数据更新方式。
(4)64 KB可在系统编程的FLASH存储器。
(5)可寻址64 KB地址空间的外部数据存储器接口。
(6)硬件实现的SPI,SMBus/I2C和2个UART串行接口。
(7)5个通用的16位定时器。
(8)具有5个捕捉/比较模块的可编程计数器/定时器阵列。
(9)片内看门狗定时器、VDD监视器和温度传感器。
2.2 MAX485性能特点
C8051F020是低功耗产品,在选择芯片时应优先选择3 V供电的芯片。为了实现C8051F020与主机的通信,本系统选用MAXIM公司的MAX485作为RS 485到TTL的电平转换器,其引脚结构图如图2所示。
MAX485接口芯片是MAXIM公司的一种RS 485芯片,采用单一电源+5 V工作,额定电流为300μA,采用半双工通讯方式,它完成将TTL电平与:RS 485电平之间转换的功能。
3 接口电路
PC机有一个功能强大的可编程异步串行控制器8250和两个采用RS 232C串行通信标准的接口COM1,COM2,而单片机中有一个TTL电平的可编程串口,采用RS 485进行串行通信,目前常用的方法是将RS 232接口转换成RS 485接口,然后用RS 485进行长距离、高速的串行异步通信。利用PC现有的RS 232接口,本系统选用专用的RS 232/485转换芯片S2 485实现232到485的转换,在进行完传输后,再通过MAX485实现TTL与RS 485之间的转换。电路结构图如图3所示。
C8051F020单片机内集成了多种数字部件,它通过优先权交叉开关译码器,按优先权顺序将端口0~3的引脚分配给数字外设,本系统中要用到UART0通用串口和PC机相连,该通用串口需要占用两个通用引脚,根据优先级顺序将P0.0和P0.1引脚分配给UART0。
在应用时,将RS 485总线的两条数据线分别接至MAX485的A、B两端,将RO经过反相器后接至单片机的P0.1(即RX0)引脚。半双工通信方式在任何时刻只能有一方处于发送状态,所以将控制端RE和DE短接后接至单片机的P2.1引脚即可实现对MAX485通信方式的选择。此外,由于主机发出的信号是从TTL先转成RS 232,再由RS 232转换成RS 485标准的,而从机在接收时,是将RS 485电平直接转换成了TTL电平,所以需要在单片机与MAX485之间加反相器,才能还原相位正确的信号。本系统还采用光隔电路,在无信号传输时将MAX485和单片机进行隔离,减小了各器件间可能存在的干扰。
4 继电器控制电路
固态继电器(又名固体继电器,Solid State Relay,SSR)是用分离的电子元器件、集成电路及混合微电路技术结合发展起来的一种具有继电特性的无触点式电子开关。较之其他工作方式的继电器,固态继电器具有寿命长、可靠性高、开关速度快、电磁干扰小’、无噪声、无火花等特点。
4.1 固态继电器原理分析
固态继电器是采用半导体器件代替传统电接点作为切换装置的具有继电器特性的无触点开关器件,为四端有源器件,其中两个输入控制端,两个输出端,输入输出之间为光隔离,输入端加上直流或脉冲信号到一定电流值后,输出端就能从断态转变成通态,从而接通交流或直流电路。
固态继电器就相当于一个无触点的开关,如图4所示,通过对输入控制端信号的给定,对交流或直流电源的通断进行控制。
4.2 固态继电器构成的控制系统
本系统中,每台从机上所搭载各硬盘的数据线均与PC机的主板相连。主控机发出指令后,由安装在从机内的控制单元进行接收,并通过控制固态继电器来完成对目标硬盘电源的驱动,从而实现硬盘的选择功能。在无控制信号时,继电器控制端的两端电势相等,电位差为0。当接收到控制信号后,单片机在经过处理后,相应的I/O口产生高电平,引导开关三极管导通,继电器的控制端随即接地,在继电器控制端的两端就产生了大小为Vcc的电位差,继电器的输出端转变为通态,外部电源便可通过电源接口给相应的硬盘供电。其电路图如图5所示。
5 软件及通信协议的设计
控制器软件主程序包括初始化程序和主程序,以及串口的中断服务子程序。主控机发送的信息大小为一个字节,包含两部分内容:高四位是地址,低四位是数据。由于RS 485总线并未对内部各节点的地址给出明确的定义,所以本系统在单片机的P3.4~P3.7 I/O口外置一个四位拨码开关,通过调节拨码开关赋给各控制单元互异的地址,分别定义为0001,0010,OO11,0100,0101,0110,0111。数据部分所包含的信息就是待选择硬盘的地址,每台从机中各硬盘的地址依次为0001,0010,0011。
例如,主控机需要与雷达站的空情预警系统(3号机的2号硬盘)进行交互,则发送指令0x32。其流程图如图6所示。
当主机发送信息时,各个从机均可接收。在收到控制指令后,从机上单片机主程序首先进行地址比较,将控制指令的高四位与I/O口P3的高四位进行比较,经判别后地址不符的返回程序初始状态,等待下一条指令;地址相符的则按照数据部分的信息执行下一步的指令。
6 可能存在的问题及解决方法
由于串口以起始位0触发接收,所以RS 485总线上状态的不稳定可能导致接收器错误地接收一些数据。当总线上没有信号传输时,总线处于空置状态,比较容易受到干扰信号的影响。可给A,B两端分别接10 kΩ的偏置电阻,并在A,B间串接20 kΩ的电阻,如图3所示。这样在无信号传输时,利用偏置电阻将A,B偏置在一个确定的电位,这样即使有干扰信号,也很难产生串行通信的起始位0,从而增强了系统的抗干扰能力。此外,还可采用总线匹配、给RO及DI端配置上拉电阻、总线隔离、完善接地系统等多种方法提高系统运行的可靠性。
7 结 语
该远距离控制系统以C8051F020单片机为核心处理器件,以继电器为主要控制器件,具有性价比高、控制功能全、体积小以及使用方便快捷等优点。经实际功能测试证明设计可靠、设计方案可行,且通用性强,维护方便,具有较大的实用价值。