|
|
本文以DL系列真空计为例,介绍RS-485接口在真空计中的使用方法。
" G8 L1 J4 c6 ^ 近年来,许多用户要求用计算机根据压强、温度等参量对一个系统进行控制。压强、温度等传感器通过RS-485接口将数据传送给计算机。选择RS-485是因为它能允许多个传感器连接到同一总线上,如图1所示。0 D" G, a4 v8 w5 n: W
$ b ?' p5 [/ H1 L, F9 o0 N 图1 RS-485接口连接示意图
4 v p+ s4 Z$ b2 c- x/ I; K 计算机(或其它主设备)可以在任意指定时刻与其中一个传感器(从设备)通信,每一个传感器都有一个独立地址。计算机若要得到某一传感器的信息,就发送命令到总线,命令中包含所需采集数据传感器的地址,发送后就等待读传感器的应答。从设备收到自己地址的信息后,就通过总线发送数据给计算机。计算机与从设备之间应有通讯协议,协议可以自行设计,也可以参照相关标准制定。) H+ J/ v( P( p5 b# T
1、通讯协议
7 r7 a$ B- v) N% o2 O4 v. u4 C DL系列真空计与主机的通讯协议是参照Modbus通讯协议及用户要求制定的。Modbus协议是应用于电子控制器上的一种通用语言,传输方式有两种,即ASCII模式和RTU模式。ASCII模式是以ASCII码发送,采用异步通讯传送。
' a. J5 n" U+ U4 `% q1 f; n 例如:DL-6型电阻真空计的地址为06,波特率为9600,计算机应发送:061],其中06为地址,DL-6接收信号后发送:25+3〉,表示压强值为2.5×103Pa。! a8 H2 }4 L) V/ _+ n
再如DL-7型电离真空计的地址为07,发送压强值为4.6×10-2Pa,波特率为9600,计算机应发送:071],其中07为地址,DL-7接收信号后发送:46-2〉,表示压强值为4.6×10-2Pa。RTU模式(远程终端单元)通信是以16进制字符通信,1个起始位,8个数据位,1个停止位,有CRC校验。
8 F" | Y5 S' O9 l2 x+ _ V( P 例如:DL-6型电阻真空计的地址为06,波特率为9600。主机发送格式:060400000002CRC。其中:06表示DL-6地址,02表示发送2个数据,即压强值与指数值。6 N% w1 E, v$ t- d0 h5 Y' Q
DL-6接收信号后发送:060404001C0002CRC。其中:06表示DL-6地址,1C表示压强数值,28的十六进制数,02表示压强指数值,发送压强值为2.8×102Pa。
) }6 R0 ]7 l, u( c$ U 如果是负指数,应以补码表示,例如10-1补码为FFFF。
+ e' Y. c' e# v4 ~ 再如DL-7型电离计的地址为07,波特率为9600。主机发送格式为070400000002CRC。其中:07表示DL-7地址,02表示发送2个数据,即压强值与指数值。
: Z; X+ L$ ^7 `& X( m DL-7接收信号后发送:070404001C0006CRC。其中:07表示DL-7地址,1C表示压强数值,28的十六进制数,06表示压强指数值,发送压强值为2.8×10-6Pa。
+ L# I9 `2 @. O0 @+ l' b5 } 如果是DL-5型电离计,主机发送格式:050400000002CRC,DL-5接收信号后发送:050404001C0003CRC,表示发送:2.8×10-3Pa压强值。
) ~# T# f* h& Q" P. l4 M 2、RS-485接口
1 Y Z- l* K0 W DL系列真空计RS-485接口采用UT-2211转接器,真空计原有RS-232接口,经过UT-2211转换为RS-485信号,波特率是9600。主设备中的RS-485与UT-2211的连接方法如图2所示。
. H6 j5 n$ q, A2 Z1 b
4 ^ K C" i! g4 ]7 J2 y 图2 主设备RS-485与UT-2211的连接
% ?% J/ V7 z3 ~9 ~! u( Z( g 3、真空计主程序框图/ O) G1 S6 D, h7 V, X
配RS-485接口的真空计使用ATMega16单片机,AD变换使用2412芯片,用C语言编程。主程序框图如图3。( `1 L0 `% s0 {0 l
k( m7 Q3 x. b, _
图3 主程序框图
( Z' k+ ^; k" A+ ?! K 4、小结
% M& t- |+ E h/ @' K% c+ s# { 计算机与诸多传感器相连时,采用RS-485接口可以将多个传感器并接在同一总线上,每个传感器有一个地址,计算机需要任何数据,应发送命令给该地址,该传感器收到命令后发送数据给计算机。任何传感器如没有接到命令,是不会发送信号的,以保持总线仅传送单一的信号。 |
|