用RS-485构成总线型多点数据采集系统
RS485总线标准和接口介绍(标准、两线、四线)
RS485总线标准和接口介绍(标准、两线、四线)RS485总线标准是工业中(考勤,监控,数据采集系统)使用非常广泛的双向、平衡传输标准接口,支持多点连接,允许创建多达32个节点的网络;最大传输距离1200m,支持1200 m时为100kb/s的高速度传输,抗干扰能力很强,布线仅有两根线很简单。
RS485通信网络接口是一种总线式的结构,上位机(以个人电脑为例)和下位机,都挂在通信总线上,RS485物理层的通信协议由RS485标准和51单片机的多机通讯方式。
由于rs-485/' target='_blank'>RS-485是从RS-422基础上发展而来的,所以rs-485/' target='_blank'>RS-485许多电气规定与RS-422相仿。
如都采用平衡传输方式、都需要在传输线上接终接电阻等。
RS-485可以采用二线与四线方式,二线制可实现真正的多点双向通信。
下面介绍以下rs485通讯接口定义的标准1.英式标识为TDA(-)、TDB(+)、RDA(-)、RDB(+)、GND2.美式标识为Y 、Z 、A 、B 、GND3.中式标识为TXD(+)/A 、TXD(-)/B 、RXD(-)、RXD(+)、GNDrs485两线一般定义为:A,B或Date+,Date-即常说的:485+,485-rs485四线一般定义为:Y,Z,A,B,一般rs485协议的接头没有固定的标准,可能根据厂家的不同引脚顺序和管脚功能可能不尽相同,但是官方一般都会提供产品说明书,用户可以查阅相关rs485管脚图定义或者引脚图《rs232转rs485电路图》上图中rs232转rs485电路中hin232(max232可以起到同样的作用但是要贵一点)起到转换pc端rs232接口电平的作用,然后把信号由max485这个芯片转换成485电平由AB 两根线输出,如果接上双绞线信号rs485总线接口的信号的通信距离至少是1千米远。
rs485原理(一)
rs485原理(一)RS485通信协议RS485是一种常用的串行通信协议,用于在远距离通信中传输数据。
它具有高可靠性、抗干扰能力强等特点,被广泛应用于工业控制、自动化、仪器仪表等领域。
本文将从浅入深介绍RS485通信协议的相关原理,帮助读者更好地理解和应用。
1. RS485基础概念RS485是一种差分信号通信协议,即使用两个相反的电信号来表示数据位的“0”和“1”。
它可以同时支持半双工和全双工通信,允许多个节点连接在同一总线上进行通信。
2. RS485物理层连接RS485通信协议的物理层使用一对绞线进行连接,其中一根线为正线(A)、另一根线为负线(B)。
这样设计的目的是为了减小信号的传输噪声和干扰。
3. RS485传输方式RS485协议支持两种不同的传输方式:单点通信和多点通信。
单点通信在单点通信中,RS485总线上只有一个主节点与一个从节点进行通信。
主节点负责发送指令,从节点负责接收并执行指令。
这种方式适用于简单的控制系统,如智能家居等。
多点通信在多点通信中,RS485总线上可以连接多个主节点和从节点,节点之间通过地址进行区分。
主节点可以发送指令给指定的从节点,从节点也可以发送数据给主节点。
这种方式适用于复杂的工业自动化系统,如工控行业等。
4. RS485通信协议RS485通信协议定义了数据帧的格式和通信规则。
数据帧格式RS485通信使用统一的数据帧格式,包括起始位、数据位、校验位和停止位。
典型的数据帧格式为1个起始位、8个数据位、1个校验位和1个停止位。
通信规则RS485通信遵循“主—从”通信模式,主节点负责发起通信,从节点被动接收和响应。
主节点发送数据后,从节点通过校验位判断数据是否正确,并返回响应信息。
5. RS485的优势和应用优势RS485通信协议具有以下优势:•高可靠性:使用差分信号传输,能够有效抵抗干扰和噪声。
•长距离通信:RS485总线可以支持长达1200m的通信距离。
•多点通信:多个节点可以连接在同一总线上进行通信,灵活且经济。
基于RS-485总线远程多点分布式温度监控系统的设计
图 1 原 理 图
视 化 程 序 设计 语 言 , 简单 易行 , 吸 收 了 面 向 对 象 程 序 设 计 的 既 又 新 思 维 , 其 功 能 更 加 加 强 , 发 周 期短 。 使 开 Vs a B sc . 制 实 时 动 态 血线 , i l a i60绘 u 方法 有 以下 几 种 : 1使 用 Pcue o ) i rB x控 件 , 合 Ln t 结 ie方 法绘 制 。将 串 口或 是 其他 仪 器 中监 测 到 的 数 据 送 往 Pcue o ,而 曲线 的绘 制 一 般 i rB x t
D 1 B 0在 使 用 中不 需 要 任何 外 围 元 件 , 部 传 感 元 件 及 转 换 S 2 8 全
2 使用 Wid ws AP 的 Ln T 0 Pcre o ) no I i o 在 it B x上绘 制 。 e u
优 点 速度 较 快 。
3 使用 Wid w P 的 L e o 在内存 中绘 制 , ) n o sA I i T0 上 2页 )
黑 军
‘L. I ‘ 上jI - L jI L
.
;
[ ] 振 海 . 通 MA L 7编 程 与 数 据 库 应 用 [ . 京 : 子 工 业 出 版 6董 精 T AB M] 北 电
社 ,0 7 2 0
回
. 屯 ;
. . I.| ‘ 址 ; 1L.t L
冷 雪锋
( 常州轻工职业技术学院, 江苏 常州 2 3 6 ) 1 14
摘 要
设 计 了一 种 基 于 R 一 8 S 4 5总线 远程 多点 分布 式 温度 监控 系统 , 系统通 过 在 环 境现 场 放 置 多 个 D 1 B 0数 字 温度 传 感 该 S8 2
基于RS-485总线的粮仓多点温度监测系统
口设置的数据作为本机 地址 。
饲 喂。一般 情况 下 ,使用氨化秸秆 ,不会 使家畜氨 中毒 。一 旦 发生 氨 中毒 ,家 畜会 出现神 情 不安 、腹 部膨 胀 、肌 肉振
颤 、运 动失 调 、呼吸困难等症状 时 ,就需 进行救治 。常用的
从 而缓减 瘤 胃吸收氨 的速 度) 。若 内服冷水稀 释 的醋或带酸
维普资讯
学术交流
E强慝詈四皿蕊脚 口 i
基 于 RS 4 5总线 的粮仓 多点温度监测 系统 -8
r
口 向
摘要
阳
熊
瑛
研制 了一种基 于 RS 4 5总线的粮仓 多点温度监 测 系统 ,介 绍 了系统的组成 结构和工作原理及 主要 元器 一8
件 的选型 ,分析 了软件 系统的工作流程 和通信协议 的格 式。
FA H程序存储 器及 E P O lS E R M存储 器 ,支持 IP S 在线 编程 。
同时 A R单片机具 有 串行异步通讯 U R V A T接 口,且 不 占用 定时 器和 S I P 传输 功能。其 中 A m g 系列单 片机属 于 A R T ea V 中的高档产品 。考虑到液 晶显示 、键盘输入等 I / 口需要 , O端 故 上位机选 用 A m g l 片。此外 ,下位机选 用 A m g8 T ea6芯 T ea
址分配采用跳线设 置方式 ,即采用跳线 短接的方法设置其 中
一
各点 温度 。上位机作为总控 台安装在便于操作人员 观察与操
作 的位置 ,不间断地循环读取各点温度 ,根据设 置对温度异 常进 行报警 ,并提供查询与设置功能 。上位机 与各下位机通
过 R - 5总线联接 。 S 8
组通 用 I / O端 口各引脚 的 电位 。开机时 ,下位 机读取该端
基于RS485通信的远程数据采集与控制系统设计
基于RS485通信的远程数据采集与控制系统设计
邓鹏;张明星;唐文涛;马雪芬
【期刊名称】《无线互联科技》
【年(卷),期】2016(000)018
【摘要】文章设计了基于RS485通信的远程数据采集与控制系统.系统采用1个主机和3个从机的总线型主从式结构,主从机都采用STC89C52单片机为主控制器,主从机之间的通信电路通过1对双绞线连接,3个从机把温度、湿度、压力信号通过RS485总线传输给主机,主机对数据进行相应的处理.各从机都有唯一的地址字节,主机可通过寻址的方式查询从机设备并发送相应的命令,实现了对多路现场数据的实时采集和现场设备的控制,系统具有较强的拓展性和实用性,且造价较低.
【总页数】3页(P4-6)
【作者】邓鹏;张明星;唐文涛;马雪芬
【作者单位】荆楚理工学院电子信息工程学院,湖北荆门 448000;荆楚理工学院电子信息工程学院,湖北荆门 448000;荆楚理工学院电子信息工程学院,湖北荆门448000;荆楚理工学院电子信息工程学院,湖北荆门 448000
【正文语种】中文
【相关文献】
1.基于RS485总线和实时数据库的液压支架远程控制系统通信设计 [J], 林福严;韦成龙;陶显;程显明;张彦超
2.基于GPRS远程通信的嵌入式低功耗数据采集系统设计 [J], 尹汪宏;李媛媛;徐莹;苏警
3.基于变频器RS485通信的自动抓棉机控制系统设计 [J], 蒋玲
4.基于RS485总线的远程称重终端数据采集系统设计 [J], 许连阁
5.基于RS485总线的多机通信控制系统设计 [J], 邓炜;郭语;陈健;朱君;代康
因版权原因,仅展示原文概要,查看原文内容请购买。
基于RS485总线的分布式高精度数据采集系统
㊀2021年㊀第2期仪表技术与传感器Instrument㊀Technique㊀and㊀Sensor2021㊀No.2㊀基金项目:国家自然科学基金杰出青年基金资助项目(61525107)收稿日期:2020-03-24基于RS485总线的分布式高精度数据采集系统陈㊀航1,严㊀帅2,刘㊀胜1,张会新1(1.中北大学,仪器科学与动态测试教育部重点实验室,山西太原㊀030051;2.北京宇航系统工程研究所,北京㊀100076)㊀㊀摘要:针对分布式测试系统中物理量种类多㊁相互之间易干扰,数据需要远距离传输的要求,设计了一种基于RS485总线的分布式数据采集系统㊂该系统主要包含上位机㊁主控站点和被控站点,通过定制USB和RS485总线通信协议,实现了总线上40个站点的轮询测量或单站点单通道测量㊂实验结果表明,该系统实现了数据的可靠传输,有效解决了大面积环境下进行分布式高精度数据采集的问题,具有较好的实用价值㊂关键词:分布式;RS485总线;高精度;智能化;ADS1258;数据采集中图分类号:TP302㊀㊀㊀文献标识码:A㊀㊀㊀文章编号:1002-1841(2021)02-0071-04DistributedHigh⁃precisionDataAcquisitionSystemBasedonRS485BusCHENHang1,YANShuai2,LIUSheng1,ZHANGHui⁃xin1(1.NorthUniversityofChinaTheMinistryofEducationKeyLaboratoryofInstrumentScienceandDynamicMeasurement,Taiyuan030051,China;2.BeijingAerospaceSystemsEngineeringInstitute,Beijing100076,China)Abstract:AdistributeddataacquisitionsystembasedonRS485buswasdesignedforthesituationthattherearemanykindsofphysicalquantitieswhichareeasytointerferewitheachother,andthedataneedstobetransmittedoverlongdistances.Thissystemmainlyincludedthehostcomputer,themasterstationandthecontrolledstation.BycustomizingtheUSBandRS485buscommunicationprotocols,itimplementedpollingmeasurementof40stationsonthebusorsingle⁃channelmeasurement.Theexper⁃imentalresultsshowthatthesystemachievesreliabledatatransmissionandeffectivelysolvestheproblemofdistributedandhigh⁃precisiondatacollectioninlarge⁃scaleenvironment,whichhashighpracticalvalue.Keywords:distributed;RS485bus;highaccuracy;intelligent;ADS1258;dataacquisition0㊀引言在一些分布式测试系统中,不可避免地要对被测环境不同位置地点多种物理量(湿度㊁温度㊁压力等)进行精确采集和测量[1-2]㊂传统的测试系统大多采用点对点连线的电缆对传感器的模拟量信号进行传输,这种方式一方面容易受到周围电磁环境的影响,降低采集精度;另一方面增加了测试系统中电缆的消耗量和成本,还在一定程度上影响采集系统的健壮性㊂为了提高测试系统的智能化程度和精确度,设计了一个基于RS485总线的分布式高精度数据采集系统,将各地点的传感器信号通过采样转换为数字信号,通过RS485总线传至系统主控站点[3-5]㊂和现有的测试系统相比,增加了数据采集通道个数和采集精度,最多可实现640个测点数据的轮询采集,提高了数据传输的智能化水平㊂1㊀系统总体设计分布式数据采集系统主要包含上位机㊁RS485总线主控站点和40个RS485总线被控站点等部分,原理框图如图1所示㊂主控站点与上位机通过USB接口交换数据,在上位机下传的数据被解析后,FPGA将其通过主站RS485模块发出并与配对成功的被控站点通信㊂根据不同的命令,可以实现不同速率下的固定通道和自动扫描通道数据采集功能㊂主控站点在接收到数据后进行打包,通过USB接口传至上位机,实现了一主控站点多被控站点的高速RS485通信㊂每个被控站点包含RS485总线模块㊁FPGA控制模块㊁A/D采集模块等,属于独立的数据采集子系统,原理设计图如图2所示㊂与主控站点下传的站点号匹配正确后,FPGA首先对ADS1258相关寄存器进行配置,开始A/D采集,完成后将数据传至主控单元㊂㊀㊀㊀㊀㊀72㊀InstrumentTechniqueandSensorFeb.2021㊀图1㊀系统整体原理框图图2㊀被控站点设计示意图2㊀系统硬件设计2.1㊀FPGA控制模块系统选用Spartan-6系列FPGA作为主控芯片㊂在主控站点的硬件电路设计中,选择XC6SLX150芯片对RS485总线通信芯片ISO1176T和USB接口芯片FT2232进行控制,其电路连接示意如图3所示㊂被控站点的A/D采集芯片ADS1258及RS485通信芯片通过SPI接口与FPGA连接,电路设计如图4所示㊂图3㊀主控站点FPGA电路设计图图4㊀被控站点FPGA电路设计图2.2㊀RS485总线模块分布式数据采集系统具有分布范围大㊁电磁环境复杂㊁传输节点要求多等特点㊂为满足设计要求,选用RS485总线通过差分线的压差传输数据,可以极大地减少传输过程中的共模干扰,提高数据传输系统的健壮性[6]㊂总线接口芯片ISO1176T内部集成了变压器驱动器,在不要外部光耦的情况下实现隔离式供电,该芯片最大可支持256个从节点,最大数据传输速率达到40Mbps,详细的电路连接图如图5所示㊂图5㊀RS485总线模块电路连接图2.3㊀A/D转换模块被控站点采用ADS1258对来自传感器的模拟量信号进行模数转换㊂ADS1258具有24位采样分辨率,固定通道的采样速率能达到125KSPS,16个通道同时采集最高速率可达23.7KSPS,同时还集成了片上温度传感器,可以通过读取寄存器来读取芯片工作温度,它的工作温度为-40 105ħ,此外还有低温漂㊁低噪声等特点,非常符合系统的设计要求[7-8]㊂FPGA和ADS1258通过SPI接口相连,CLKIO为外部时钟输入引脚,来自FPGA的16MHz时钟通过50Ω电阻后与其相连,同时要将时钟选择引脚CLKSEL置高,芯片模拟供电电压为AVDD=5V,AVSS=AGND,参考电压为VREF=VREFP-VREFN=5V,数字供电电压为DVDD=3.3V,DVSS=DGND㊂ADS1258的硬件电路如图6所示㊂㊀㊀㊀㊀㊀第2期陈航等:基于RS485总线的分布式高精度数据采集系统73㊀㊀图6㊀ADS1258接口电路设计图2.4㊀USB接口设计FT2232H为支持高速USB2.0通信的接口芯片,支持最高480Mbps的通信速度㊂它有A㊁B2个数据传输通道,根据设计需要可以配置成多种速度模式,具体的接口如图3所示㊂芯片的工作模式为FT245异步FIFO接口模式,93LC56B为EEPROM,用于保存FT2232H配置完后的相关信息[9]㊂3㊀系统软件设计3.1㊀主控站点软件设计主控站点通过USB接口实现和上位机的数据交换,根据不同指令实现数据打包传输和被控站点寄存器配置功能[10]㊂FT2232H的数据收发时序通过FPGA控制,具体的读写时序如图7所示㊂RXF#信号为芯片输出信号,当缓存Buffer内部有读数空间时输出为低,这时可以拉低RD#信号进行一次8位FIFO数据的读取,然后RXF#信号被拉高,这期间不能进行读数操作,等RXF#再次拉低时进行下一次读数操作,写数据过程和读数据过程类似㊂图7㊀FT2232H读写时序图上位机和主控站点的通信协议如表1所示㊂在系统上电完成复位后,若接收到命令的第一个字节为25h,再继续判断下一个字节,若命令是55h(查询指令),则根据表1所示的通信协议进行RS485总线通信,主控站点从1到40依次查询被控站点,并将收到被控站点的数据上传至上位机进行显示㊁存储;若命令是ACh(寄存器配置指令),则对上位机的命令拆分处理,把后4个字节的数据根据总线通信协议进行打包,然后转发至对应的被控站点㊂表1㊀上位机通信协议命令有效标志8bit命令字8bit数据位32bit寄存器配置命令25hACh被控站点地址8bit站点配置数据24bit查询命令25h55h无效位停止命令25h90h无效位㊀㊀总线数据传输采取CRC-4进行差错控制,通信协议如表2所示㊂主控站点将校验无误的数据传送给上位机显示存储,校验不通过则再一次查询该站点,如果连续3次数据校验不通过,则将站点序号告诉上位机,然后进行下一个站点查询,避免了因某个站点工作异常而使整个系统无法工作,提高了数据采集系统的可靠性性和抗干扰能力[11]㊂表2㊀RS485总线通信协议起始位1bit有效数据位32bitCRC码4bit停止位3bit0被控站点地址8bit站点数据㊀24bitCRC-41113.2㊀被控站点软件设计被控站点作为独立的数据采集系统,主要完成16路模拟量信号采集和RS485总线通信工作㊂根据系统设计要求,ADS1258默认工作模式为以23.7KSPS㊀㊀㊀㊀㊀74㊀InstrumentTechniqueandSensorFeb.2021㊀采样速率自动扫描16个模拟量输入通道,寄存器通过SPI接口进行配置,DIN管脚为数据输入引脚,CONFIG1寄存器主要涉及采样速率的设置,命令字和寄存器地址为61h,相应的配置数据为03h;MUXSG0和MUXSG1寄存器主要进行采样通道选择,命令字和寄存器地址分别为64h和65h,相应的配置数据都为FFh㊂根据SCLK管脚的时序写入配置寄存器的数据,如图8所示,在片选信号CS拉低时,有效命令和数据在SCLK上升沿从最高位开始顺序进入DIN管脚㊂图8㊀ADS1258寄存器配置时序图系统运行后,被控单元首先按照默认值对ADS1258的寄存器进行配置,配置完成后对相关寄存器的值进行读取,验证是否配置正确,随后开始监测RS485总线上的数据,当与总线上的站点序号验证成功后,进行数据采集和发送数据,工作软件设计流程如图9所示㊂上位机可以对各被控站点的寄存器进行重新配置,以满足特殊测试要求㊂图9㊀被控站点软件设计流程图ADS1258开始进行数据采集时,首先将START管脚进行拉高,程序开始检测DRDY管脚的电平状态,当为低电平时,表示一个通道模拟量完成转换,读取有效数据共计32位,高8位包含状态信息和通道信息,低24位代表转换的有效数据㊂ADS1258可以在小于700μs的时间内处理完16路通道的数据采集㊂4㊀测试结果分布式数据采集系统的RS485总线上间隔1m设置一个被控站点,总线长度共计40m㊂系统测试时,在第一个被控站点15通道输入2V电压,其余的被控站点和通道不输入电压,使用上位机发送查询命令后回传的数据见图10㊂图10㊀测试数据根据上位机的数据显示,主控站点按顺序查询了被控站点的16路采集通道,EB90EB90是子站点数据发送结束标志,很好地完成了主控站点控制下的数据采集功能㊂数据 ADD00001962F77E9 中 ADD0000196 表示第一个被控站点15通道的数据采集结果, 2F77E9 转变成电压为1.9778V,高精度万用表显示实际电压为1.9789V,所以系统的采集精度为0.6%,表明数据采集系统的精度很高㊂5㊀结束语分布式数据采集系统的设计采用24位的模数转换芯片ADS1258,提高了模拟量数据采集精度,选用RS485总线进行数据的传输,增加了系统挂载的站点数量,总线驱动器芯片ISO1176T的使用实现了电源隔离,减少了周围环境的干扰㊂测试表明,系统数据传输可靠,精度很高,同时还可以根据(下转第79页)㊀㊀㊀㊀㊀第2期李鹏飞等:基于NVIDIATX2模块的双目视觉信号采集系统设计79㊀㊀效果图,在界面上定义一个全黑灰度图,将接收到的坐标点以白色画出,实时采集发送帧率为140fps,采集处理图像无丢帧失帧现象,发送数据包无丢包现象,稳定性好,满足了设计要求㊂6 结论针对胶体三维信息检测面临的缺失高帧率㊁采集实时性的问题,设计了一套双目视觉信号采集系统,该采集系统具有4路线结构光采集系统,实现了双目实时信号采集㊂其中以嵌入式NVIDIATX2为核心详细介绍了图像采集㊁处理以及中心线坐标发送的全过程,结合了小型化硬件以及简便的上位机界面,集成了一套小体积㊁高效率㊁方便操作和移动的采集系统㊂实验测试表明系统稳定性好,精度高,满足了设计要求,为汽车关键部件胶体三维测量做好了充分准备,具有较好的实用价值㊂参考文献:[1]㊀任勇峰,王国忠.基于CMOS传感器的高性能图像采集系统设计[J].仪表技术与传感器,2019(1):64-67.[2]㊀岳昊,武栓虎.基于机器视觉的医用瓶盖质检系统设计[J].仪表技术与传感器,2019(10):83-87.[3]㊀杨长辉,黄琳.基于机器视觉的滚动接触疲劳失效在线检测[J].仪表技术与传感器,2019(4):65-69.[4]㊀相江.线结构光传感器系统建模与误差分析[D].合肥:合肥工业大学,2019.[5]㊀章金敏.基于激光三角法的物体三维轮廓测量系统[D].武汉:武汉理工大学,2015.[6]㊀戴力.汽车涂胶工艺应用研究[J].汽车零部件,2017,23(8):71-74.[7]㊀朱立忠,陈美洋.一种基于机器学习的汽车涂胶缺陷检测研究[J].沈阳理工大学学报,2018,23(4):18-22.车工艺师,2019,25(7):61-64.[9]㊀吴勇,雷旭智.科惠力测量技术在缸体表面刀痕问题中的应用[J].装备制造技术,2017,16(8):121-123.[10]㊀唐广辉,穆建华,夏志豪.基于科惠力测量技术的发动机故障诊断应用[J].汽车科技,2015,23(1):52-56.[11]㊀OLENSKYJAG,DONISIR,BORNHORSTGM.Nonde⁃structivecharacterizationofstructuralchangesduringinvitrogastricdigestionofapplesusing3Dtime⁃seriesmicro⁃computedtomography[J].JournalofFoodEngineering,2020,267:1-11.[12]㊀金贝.基于HALCON的机器视觉教学实验系统设计[D].北京:北京交通大学,2012.[13]㊀方玉红.基于机器视觉的轨道缺陷图像检测系统设计[D].南昌:南昌大学,2013.[14]㊀MICHAELLB,NELEV,PANFILOVAV,etal.R⁃From⁃TasacommonmechanismofarrhythmiainitiationinlongQTsyndromes[J].Circulation.ArrhythmiaandElectrophysiology,2019,12(12):1-15.[15]㊀李杰强.基于线阵CCD的微位移传感器设计与研究[D].广州:华南理工大学,2012.[16]㊀刘文倩,沈三民,刘利生,等.基于以太网与FPGA的多通道信号源的系统设计[J].仪表技术与传感器,2019(1):30-33.[17]㊀何能正,董建云,何岸.以太网数据包分段传输技术[J].光通信技术,2013,37(9):24-27.作者简介:李鹏飞(1994 ),硕士研究生,主要研究方向为嵌入式机器视觉㊂E⁃mail:lipengfeihuft@163.com通信作者:卢荣胜(1963 ),教授,博士生导师,主要从事机器视觉和精密测量等方面的研究㊂E⁃mail:rslu@hfut.edu.cn(上接第74页)要求变换采集通道数量和采集速率,该分布式数据采集系统具有较好的实用价值㊂参考文献:[1]㊀韩慧.基于RS485总线的温室环境监测系统[J].仪表技术与传感器,2012(3):64-65.[2]㊀李木国,王延国,孙慧涛.基于EtherCAT总线的串联型分布式据采集系统设计[J].计算机测量与控制,2016,24(6):195-198.[3]㊀童一飞,王红亮,低功耗IEPE传感器数据采集系统的设计与实现[J].电测与仪表,2019,56(5):101-104.[4]㊀唐夕晴,李建闽,佘晓烁.RS485总线接口性能测试仪设计与开发[J].电测与仪表,2018,56(7):142-147.[5]㊀张志,李琮琮,王平欣,等.智能电能表RS485接口设计方案综述[J].电测与仪表,2015,53(5):124-128.[6]㊀白冰.基于485总线的分布式输入输出系统[D].天津:天津大学,2017.[7]㊀吴平,骆朝亮.基于USB的ADS1258传感器信号采集系统[J].软件导刊,2010(6):65-67.[8]㊀金永杰,龙平,熊剑平.24位高精度模数转换器ADS1258的原理及应用[J].电子设计工程,2008(6):61-64.[9]㊀王辉,陈爱生.基于FT2232H的USB2.0数据采集系统设计[J].电子器件,2015(1):144-147.[10]㊀李超.基于FPGA+USB2.0高速数据采集系统的研究与设计[D].武汉:武汉理工大学,2013.[11]㊀TONGXR,SHENGZB.DesignofUARTwithCRCcheckbasedonFPGA[J].AdvancedMaterialsResearch,2012,490-495:1241-1245.作者简介:陈航(1993 ),硕士研究生,研究方向为嵌入式智能仪器㊂E⁃mail:614441509@qq.com通信作者:张会新(1980 ),博士,副教授,研究方向为动态测试技术与仪器㊂E⁃mail:zhanghx@nuc.edu.cn。
rs485集线器原理
rs485集线器原理RS485集线器原理一、引言RS485集线器是一种常用的数据通信设备,用于将RS485总线上的多个设备连接在一起,实现数据的传输和集中管理。
本文将从RS485集线器的工作原理、特点和应用等方面进行介绍。
二、RS485总线简介RS485总线是一种多点通信总线,可以实现多个设备在同一总线上进行通信。
它采用差分传输方式,使用两根数据线分别传输正负信号,具有抗干扰能力强、传输距离远等优点,因此广泛应用于工业自动化领域。
三、RS485集线器的工作原理RS485集线器主要通过信号的放大和重构来实现数据的传输和分配。
其工作原理如下:1. 信号放大:RS485集线器通过内部的驱动电路将接收到的信号进行放大,以确保信号能够有效地传输到下一个设备。
2. 信号重构:RS485集线器会对接收到的信号进行重新构造,保证信号的质量和稳定性,从而提高数据传输的可靠性。
3. 数据分配:RS485集线器可以将主控设备发送的数据分配给总线上的每个设备,也可以将总线上各个设备发送的数据集中传输给主控设备。
四、RS485集线器的特点1. 多设备连接:RS485集线器可以连接多个RS485设备,实现多点通信,方便进行数据的传输和管理。
2. 长距离传输:RS485集线器采用差分传输方式,具有抗干扰能力强、传输距离远的特点,适用于工业环境中长距离的数据传输。
3. 高速传输:RS485集线器支持高速数据传输,能够满足大部分工业自动化系统对数据传输速度的要求。
4. 灵活可扩展:RS485集线器可以根据实际需求进行灵活的扩展和配置,方便进行系统的升级和维护。
五、RS485集线器的应用RS485集线器广泛应用于工业自动化领域,常见的应用场景包括以下几个方面:1. 工业控制:RS485集线器可以连接多个工业控制设备,实现数据的传输和集中管理,方便进行系统的监控和控制。
2. 仪器仪表:RS485集线器可以连接多个仪器仪表,实现数据的采集和传输,方便进行数据的分析和处理。
RS485总线介绍
RS485总线介绍
工业现场经常要采集多点数据,模拟信号或开关信号,一般用到RS485总线,RS-485采用半双工工作方式,支持多点数据通信。
RS-485总线网络拓扑一般采用终端匹配的总线型结构。
即采用一条总线将各个节点串接起来,不支持环形或星型网络。
RS485无具体的物理形状,根据工程的实际情况而采用的接口,RS485采用差分信号负逻辑,+2V~÷6V表示"0”,・6V~・2V表示
RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线制接线方式,这种接线方式为总线式拓朴结构在同一总线上最多可以挂接32个结点。
485总线的通讯距离可以达到1200米。
根据485总线结构理论,在理想环境的前提下,485总线传输距离可以达到1200米。
其条件是通讯线材优质达标,波特率为9600,只负载一台485设备,才能使得通讯距离达到1200米,所以通常485总线实际的稳定的通讯距离往往达不到1200米。
如果负载485设备多,线材阻抗不合乎标准,线径过细,转换器品质不良,设备防雷保护复杂和波特率的提高等等因素都会降低通讯距离。
Devicenet现场总线的一些普及知识
Devicenet现场总线的普及知识终端电阻在通信中的作用终端电阻是为了消除在通信电缆中的信号反射在通信过程中,有两种信号因导致信号反射:阻抗不连续和阻抗不匹配。
阻抗不连续,信号在传输线末端突然遇到电缆阻抗很小甚至没有,信号在这个地方就会引起反射。
这种信号反射的原理,与光从一种媒质进入另一种媒质要引起反射是相似的。
消除这种反射的方法,就必须在电缆的末端跨接一个与电缆的特性阻抗同样大小的终端电阻,使电缆的阻抗连续。
由于信号在电缆上的传输是双向的,因此,在通讯电缆的另一端可跨接一个同样大小的终端电阻。
引起信号反射的另个原因是数据收发器与传输电缆之间的阻抗不匹配。
这种原因引起的反射,主要表现在通讯线路处在空闲方式时,整个网络数据混乱。
要减弱反射信号对通讯线路的影响,通常采用噪声抑制和加偏置电阻的方法。
在实际应用中,对于比较小的反射信号,为简单方便,经常采用加偏置电阻的方法DeviceNet 网络的使用体会。
(1)DeviceNet现场总线可以节省大量费用。
从安装阶段来看,只通过一根通讯缆,就实现了对整个网上各站点供电及通讯,相对于点对点的控制方式,节省大量的电缆,桥架等。
不但缩短了安装时间,而且降低了安装费用。
从控制上来看:利用网络通讯及“软”I/O方式,也节约了I/O模块和大笔资金。
如对变频器工作站,启动/停止,加速/减速等命令;电压、电流、温度等参数,都可从DeviceNet网络通讯实现,节约了I/O模块,尤其是模拟I/O模块,费用相当昂贵。
(2)设备故障率大大降低,且诊断方便,排除迅速。
DeviceNet由于仅用一条通讯电缆控制整个设备网络,使设备故障率大大降低;各站点通讯端子支持带电热插拔,若某一站点出现问题及故障排除,不影响网上其他站点正常工作。
采用数据通讯方式来控制各站,不但极大减少了传统点对点方式的电缆数量,也使故障环节大大减少,系统稳定性进一步提高。
通过设备网使MCC的集中控制的形式十分有效,极大方便了设备故障的诊断。
多功能电能表rs一485接口多主通信方式分析
调度自动化系统与电能采集系统、负荷管理系 统分别或同时并接同一个485接口时,调度自动化 系统通信正常能够采集到数据,另外2个系统无法 通信。因当调度自动化系统与电能表建立通信链路
中国电机工程学会电力通信季_王}垂另会第七届学术含议论主
·357·
单元或其他数据终端为主站,费率装置为从站。每 个费率装置均有各自的地址编码。通信链路的建立 与解除均由主站发出的信息帧来控制。每帧由帧起 始符、从站地址域、控制码、数据长度、数据域、 帧信息纵向校验码及帧结束符等7个部分组成。每 部分由若干字节组成,其结构如图l所示。
2多功能电能表的规约
2.1 物理层 DL/T 645-1997《多功能电能表通信规约》中规
定电能表采用Rs一485标准串行电气接口,除上述 规格还应符合下列要求b1。
1)驱动与接收端耐静电放电(ESD)±15 kV(人 体模式)。
2)差模输入电压大于0.2 V。 3)在负载阻抗54 Q时,驱动的输出电压最大 为5 V,最小为1.5 V。 4)三态方式输出。 5)半双工通信方式。 6)总线是无源的,由费率装置或数据终端提 供隔离电源。 2.2链路层 协议采用主一从结构的半双工通信方式。手持
·356·
中回电机Z程学会电力通僧号趾垂另会第七届孝木金仪论支
多功能电能表RS-485接口多主通信方式分析
刘建戈
(淮安金湖供电公司,江苏金湖211600)
摘要:根据多功能电能表的规约和485通信接口的技术标准,提出了电能表485通信接13实时系 统、非实时异步系统及非实时同步系统3种情况下的系统多主通信方案。
一种RS_485总线自定义通信协议及其应用
一种RS_485总线自定义通信协议及其应用RS-485总线是一种常用的串行通信接口,适用于多点通信和远距离通信。
在RS-485总线上可以使用自定义通信协议,来实现不同设备之间的通信和数据传输。
本文将介绍一种基于RS-485总线的自定义通信协议及其应用。
一、自定义通信协议的设计在设计自定义通信协议时,需要考虑以下几个方面:1.数据格式:通常包括数据头、数据体和数据尾。
数据头用于标识一个数据包的开始,数据体用于传输实际的数据,数据尾用于标识一个数据包的结束。
2.数据传输方式:可以选择同步传输或异步传输。
同步传输通常使用固定的数据传输速率,而异步传输可以根据实际需求进行调整。
3.数据校验:为了确保数据传输的正确性,通常会采用一些校验算法,例如CRC校验。
发送方在发送数据前会对数据进行校验,接收方在接收数据后也会对数据进行校验,如果校验失败,则说明数据传输中出现错误。
4.地址和命令:每个设备在总线上都有一个唯一的地址,用于标识设备的身份。
在每个数据包中,除了数据外,还应该包含地址和命令信息。
接收方根据接收到的地址和命令来判断下一步的操作。
二、自定义通信协议的应用RS-485总线的自定义通信协议可应用于以下方面:1.远程监控系统:通过RS-485总线实现多个监控设备之间的数据传输,包括温度、湿度、压力等监测数据。
通过自定义通信协议,可以实现数据的采集、传输和处理,并将数据展示在中心监控系统上。
2.工业控制系统:在工业自动化控制系统中,可以使用RS-485总线作为通信接口,将各种传感器、执行器和控制器连接到总线上。
通过自定义通信协议,实现设备之间的数据交换和控制指令的发送。
3.楼宇自控系统:楼宇自控系统包括照明控制、空调控制、门禁系统等。
通过RS-485总线和自定义通信协议,可以实现这些设备之间的数据传输和控制指令的发送,从而实现对楼宇设备的集中管理和控制。
4.电力系统监测与控制:电力系统中包含各种传感器和执行器,如电流传感器、电压传感器、断路器等。
rs485知识点总结
rs485知识点总结RS-485的特点:1. 多点通信:RS-485可以支持最多256个节点的通信,每个节点都可以发送和接收数据。
这使得RS-485非常适合于工业控制系统和自动化系统等场合,可以满足复杂的通信需求。
2. 高速传输:RS-485支持最高10Mbps的传输速率,可以满足大部分工业控制系统和自动化系统对于高速数据传输的需求。
3. 高抗干扰:RS-485是差分信号通信协议,具有很好的抗干扰能力。
在工业场合,由于存在各种电磁干扰,差分信号通信协议可以有效地减小干扰的影响,保证通信的稳定和可靠。
4. 长距离传输:RS-485可以实现1200米的长距离传输,即使是在工厂车间等大型场合,也可以满足通信需求。
5. 低成本:RS-485通信设备价格低廉,成本低,容易应用。
RS-485通信原理:1. 差分信号:RS-485通信采用差分信号传输,即发送方发出的信号为正负两个相互互补的信号。
接收方通过比较这两个信号的差值来获取数据。
2. 线路匹配:RS-485通信需要采用120欧姆的平衡线路,保证信号的传输质量。
同时,RS-485需要端子电容进行匹配,确保通信的稳定。
3. 数据编码:RS-485通信采用差分数据编码,发送方将逻辑数据转换为正负两个信号进行传输,接收方再将这两个信号还原为逻辑数据。
RS-485通信协议:RS-485通信协议一般采用半双工通信方式。
在RS-485总线上,不同的节点可以轮流发送数据,但同一时间只能有一个节点发送数据,其他节点必须处于接收状态。
RS-485通信协议一般采用MODBUS协议。
MODBUS是一个通用的工业领域通信协议,常用于PLC、变频器、仪表等设备之间的通信。
MODBUS协议包含了数据帧的格式、功能码、寄存器地址等内容,非常适合于工业控制系统的通信需求。
RS-485通信接口:RS-485通信接口一般是通过RS-485芯片实现的。
RS-485芯片可以将UART格式的数据转换为RS-485格式的差分信号,实现数据在RS-485总线上传输。
基于485总线的多路数据采集系统
维普资讯
基 于 4 5总线 的多 8
陈 玉 堂
( 天津 工业大学信 息与通信
[ 摘 要 ] 本 文介 绍 了一 种 基 于 RS 4 5 场 总 线 的 数 据 采 . 8现 一
对 象技 术设计的软件具有 易于扩展 、 用性 强的特点 。 通
[ 关键 词 ] RS 45总 线 ;多路 数 据 采 集 系统 . 8 -
理 、 制 及 管 理 , 现 测 、 、 的 自动 化 与 系 统 化 。 介 绍 了 控 实 控 管
一
网络 , 一般只 需二根连 线 , 以 R 4 5接 口均 采用 屏蔽双 绞 所 S8
线传输 。
RS 8 4 5接 口 连 接 器 采 用 D . B 9的 9芯 插 头 座 ,与 智 能 终 端 R 4 5 口采 用 D .( )与 键 盘 连 接 的键 盘 接 口 R 4 5 S8 接 B 9孔 , S 8 采 用 DB 9针 ) 在 使 用 R 4 5接 口时 , 于 特 定 的传 输 线 经 , -( 。 S8 对
不 涉 及 接 插 件 电缆 或 协 议 ,在 此 基 础 上 用 户 可 以建 立 自 己
的高层通信协议 。
2 2 S4 5特 性 . R -8 逻 辑 “ ” 两 线 间 的 电 压 差 为 +2 ) 表 示 : 辑 “ ” 1以 ( ~6v 逻 0
设备485采集方案
设备485采集方案1. 引言设备485采集方案是一种用于数据采集的方案,适用于需要远程监测和控制设备状态的场景。
本文档将介绍设备485采集方案的基本原理、主要组成部分以及实施步骤。
2. 基本原理设备485采集方案基于RS-485通信协议,通过485总线连接各个设备以实现数据采集和控制。
485总线是一种串行通信接口,具有多点通信能力和长距离传输特性。
设备通过485总线进行数据传输,包括传感器数据的采集和控制命令的发送。
3. 组成部分设备485采集方案主要包括以下组成部分:3.1 传感器传感器是采集设备采集数据的核心组件,例如温度传感器、湿度传感器、光照传感器等。
传感器通过485接口与主控设备相连,将采集到的数据传输给主控设备进行处理。
3.2 主控设备主控设备是设备485采集方案的核心,负责与传感器通信和数据处理。
主控设备包括微处理器、通信模块以及相关的电路和接口电路。
主控设备能够解析传感器发送的数据,并根据需要进行控制命令的生成和发送。
3.3 电源模块电源模块为设备提供稳定可靠的电源,保证设备正常运行。
电源模块需要满足设备的功耗需求,并具备过载保护和短路保护等功能。
3.4 485总线485总线是主控设备、传感器和其他设备之间连接的通信总线。
它能够支持多个设备的连接,并能够实现长距离传输。
485总线需要采用合适的线缆和终端电阻以确保数据的可靠传输。
4. 实施步骤设备485采集方案的实施步骤如下:4.1 设计硬件电路根据具体需求,设计主控设备的硬件电路。
包括选择合适的微处理器、通信模块和电源模块,设计相应的电路和接口电路。
同时考虑485总线的连接和终端电阻的设置。
4.2 编写软件程序编写主控设备的软件程序,包括传感器数据的解析和控制命令的生成与发送。
根据具体的传感器类型和通信协议进行相应的开发工作。
4.3 进行硬件连接将主控设备和传感器进行硬件连接,包括电源连接、信号线连接以及485总线连接。
确保连接的可靠性和正确性。
基于RS_485总线的数据采集系统
收稿日期:2007-02-12 收修改稿日期:2007-07-26基于RS -485总线的数据采集系统苏晓龙,王香婷(中国矿业大学,江苏徐州 221008) 摘要:基于RS -485总线的数据采集系统可实现对大坝坝体各方位的应变数据进行采集与数据处理。
介绍了系统硬件和软件的设计,重点阐述了硬件电路中信号获取、信号放大、A/D 转换、电源、通讯、数据存储以及时钟等模块的设计与实现方法。
给出了系统的软件设计框图。
关键词:RS -485总线;数据采集;应变;单片计算机中图分类号:TP274 文献标识码:A 文章编号:1002-1841(2007)12-0052-03Data Collection System B ased on RS -485BusS U X iao 2long ,WANG X iang 2ting(China U niversity of Mining and T echnology ,Xuzhou 221008,China)Abstract :The and disposal of all the dam ’s azimuth ’s strain data was realized ,using the data collecting system based on RS -485bus.The design of system hardware and s oftware were introduced.The design and realization methods of the signal obtainer ,sig 2nal ’s enlarger ,A/D conversion ,power supply ,communication and data 2storage m odule were expatiated.K ey w ords :RS -485bus ;data collection ;strain ;SC M 1 硬件设计111 系统整体框图系统实质上是一个集散控制系统,更准确地说是一个远程数据采集系统,系统概念设计图如图1所示,系统整体框架图如图2所示。
树莓派如何采集RS485数据
树莓派如何采集RS485数据1、RS485介绍RS485是有线传输串行数据的标,支持同时传输485总线上的多点数据。
传输速率为10Mbps,传输距离可达50英尺。
传输速率为100Kbps时,传输距离可达4000英尺。
RS485总线通常为4芯或2芯,现在普遍采用2芯总线。
一条总线最多支持32个设备。
总线之间还可以串接,从而支持成百以上的节点。
RS485主要技术规格如下:2、RS485和树莓派的连接目前有一种RS485 Shield的设备,可以直接连接到树莓派上。
硬件连接图如下:3、配置Update source list$ sudo apt-get updateInstall python-pip$ sudo apt-get install python-pipUse pip to install WiringPi (WiringPi is designed for raspberry pi to behave similarly to that of the wiring library under Arduino. After this libraryis installed,c or shell or python can use the function to configure and control GPIOs directly. :$ sudo pip install wiringpiInstalled the associated library files of serial ports :$ sudo apt-get install python-serial.Test whether the GPIO library and the serial library is installed or not:$ python$ import RPi.GPIO$ import serialIf there is no error , then the two libraries are installed correctly.We need to configure file ‘/boot/cmdline.txt’ to remove the kernel booting information and debug message:$ sudo nano / boot / cmdline.txtYou can see the following information:dwc_otg.lpm_enable = 0 console = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 console = tty1 root = / dev/mmcblk0p2 rootfstype = ext4 elevator = deadline rootwaitRemove “console = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200″so that the information becomes:dwc_otg.lpm_enable = 0 console = tty1 root = / dev/mmcblk0p2 rootfstype = ext4 elevator = deadline rootwaitDisable log in from the serial port:$ sudo nano / etc / inittaband comment out ” T0: 23: respawn :/ sbin / getty-L ttyAMA0 115200 vt100″Restart Raspberry Pi:$ sudo rebootNow you can use / dev/ttyAMA0 like the regular COM port.4、测试代码Test code(serial_test.py):1 2 3 4 5 6 7 8 910111213 import serialport = ”/dev/ttyAMA0″usart = serial.Serial(port,9600)usart.flushInput()print (“serial test: BaudRate = 9600″) usart.write(“please enter the character:\r”) while True:141516171819202122232425if( usart.inWaiting()>0) :receive = usart.read(1)print ”receive: ”,receiveusart.write(“ send: ’”)usart.write(receive)usart.write(“‘\r”)6、基于RS232转RS485的测试例程硬件连接方式:硬件管脚对应关系:RS485 Shield ‘A’-> RS232-RS485 converter ‘ T/R + ‘RS485 Shield ‘B’-> RS232-RS485 converter ‘ T/R- ‘RS485 Shield ‘GND’ -> RS232-RS485 converter’ GND ‘After the wiring is done, launch a serial terminal. We use X-CTU in our case, and set the baud rate to 9600After running serial_test.py, enter the characters in the X-CTU:欢迎您的下载,资料仅供参考!致力为企业和个人提供合同协议,策划案计划书,学习资料等等打造全网一站式需求。
RS485数据采集卡的应用范围
RS485数据采集卡的应用范围RS485数据采集卡是通过485总线接入个人计算机,然后实现数据采集功能的计算机扩展卡。
数据采集是指从传感器和其它待测设备,等模拟和数字被测单元中,自动采非电量或者电量信号,送到上位机中进行分析处理。
数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品,来实现灵活的、用户自定义的测量系统。
如国内知名的厂家有,研华,深圳诚控电子等制造的RS485采集卡,都有不错的品质和客户反馈。
为了满足IBM-PC机及其兼容机用于数据采集与控制的需要,厂商生产了各种各样的数据采集板卡。
这类板卡都是参照IBM-PC机的总线技术标准设计和生产,用户只要把这类板卡插入IBM-PC机主板上相应的IO扩展槽中,就可以迅速方便地构成一个数据采集与处理系统,也就大大节省了硬件的研制时间和投资,又可以充分利用IBM-PC 机的软硬件资源,还可以使用户集中精力对数据采集与处理中的理论和方法进行研究、进行系统设计以及程序的编制等。
基于PC总线的板卡种类很多,分类方法也有很多种,按照板卡处理信号的不同可以分为模拟量输入板卡、模拟量输出板卡、开关量输入板卡、开关量输出板卡、脉冲量输入板卡、多功能板卡等。
其中多功能板卡可以集成多个功能,而根据总线的不同,可分为PXI/CPCI板卡和PCI板卡。
还有其它一些专用IO板卡,如智能接口卡、虚拟存储板、信号调理板、专用端子板等,这些种类齐全、性能良好的IO板卡与IPC配合使用,使系统的构成十分容易。
就像在工业现场会安装很多各种类型的传感器,受现场环境的限制传感器信号,如压力传感器输出的电压或者电流信号不能远传,又或者因为传感器太多布线复杂,就会选用分布式或者远程的采集卡模块,在现场把信号较高精度地转换成数字量,然后通过各种远传通信技术,把数据传到计算机或者其他控制器中进行处理。
这样的也算作是数据采集卡的一种,只不过它对环境的适应能力更强,可以应对各种恶劣的工业环境。
研华基于RS485网络的数据采集方案
ADAM-4100系列特点:宽温宽压
Wide Operating Temperature
-40oC <
< 85oC
Wide Power Source Range
10 VDC <
< 48 VDC
ADAM-4100系列特点:现场抗干扰
200VDC High Common Mode Voltage against channel voltage deviation
ADAM系列数据采集模块工作原理
+
采集
A/D
采集
D/A
RTD mV + V mA +
RS-485
微处理器
C/P
DI
0 5
DO
控制
...
工业现场
控制
1999
D I P
监控计算机
ADAM 系列产品 RS-485总线架构
输出 输入 模拟量 热电偶
输入 输入
ADAM 4012 ADAM 4011
RS-485 RS-232
ADAM模块的三端隔离 (I/O,电源和通讯)
RS-485
I/O Processor
I/O
I/O
I/O
Power
In/Out
In/Out
In/Out
In/Out
ADAM-4100 加固系列—关键任务应用
ADAM-4150
Channels: 7 DI / 8 DO Digital Input:
- Support Dry/Wet Contact: - Support 1 KHz counter
Configurable Digital Filter against micro contact error 4 KV EFT (Electrical Fast Transient) Protection against Magnetic Noise
RS-485网络多主机接口解决方案
RS-485网络多主机接口解决方案RS-485 网络综述RS-485 是一种符合工业通讯标准的数据传输总线,它是美国电子工业协会(EIA)制定的平衡发送、差分接收的标准异步串行总线。
RS-485 传输数据线路少,易于实现和扩展,传输距离远,最大传输距离可达1200 米;它的通讯速率高,数据最高传输速率为10Mbps;它从根本上消除了信号地线,具有很强的抗干扰能力。
它易于实现一对多点的通讯,接口总线上可连接32 个站点,加中继器后可达255 个站点。
竞争冒险RS-485 为半双工接口,采用双向单信道通信方式。
在485 网络中,同一个时刻只能有一个站点发送数据,其它站点处于接收状态,以免发生485 总线竞争冒险。
485 网络中,一台主机控制多台从机,采用主/从通信方式,从机不主动发送数据。
每次通信均从主机发起,不会出现485 总线竞争冒险。
在有些工业现场,需要多台主机同时控制从机,如果将主机与从机直接互连,每台主机发送数据为主动的且随机的,直接互连势必出现两台以上主机同时发送数据的情况,数据同时发送到485 总线上,造成485 总线竞争冒险。
为了避免此错误的发生,在多台主机与485 总线之间分别加入一个模块,使多台主机在同一个时刻只能有一台主机数据发送到485 总线上,屏蔽其它主机发送信号。
屏蔽原则:在空闲状态下,第一个发送数据的主机不屏蔽,在该主机发送数据结束之前,屏蔽其它主机发送的数据。
这样有效地降低了485 总线竞争冒险的概率。
硬件设计本设计采用74123 可重触发单稳态触发器构成屏蔽信号电路,485 总线数据,当485 总线空闲时,主机发送数据可以通过485 芯片输出到485 总线上;当485 总线有数据时,自动屏蔽该主机发送的数据,待485 总线空闲时,该主机发送端的数据方可输送到485 总线上。
下面先简单介绍一下。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用RS-485构成总线型多点数据采集系统
摘要:工业自动化中远程控制很适合用RS-485组网。
文章以总线型多点数据采集系统为例,介绍了用RS-485构成主从机方式通信网络的一般组网方法。
关键词:RS-485;网络协议;总线拓扑;主从方式;数据采集系统
一、概述
在数据通信、计算机网络以及工业上的分布式控制系统中,经常需要采用串行通信来达到远程信息交换的目的。
目前,有多种接口标准可用于串行通信,包括RS-232、RS-422、RS-423和RS-485[2]。
RS232是最早的串行接口标准,在短距离、较低波特率串行通信中得到了广泛应用。
其后发展起来的RS-422、RS-485是平衡传送的电气标准,比起RS-232非平衡的传送方式在电气指标上有了大幅度的提高。
RS-485串行接口的电气标准实际上是RS-422的变型,它属于七层OSI(Open System Interconnection,开放系统互连)模型物理层的协议标准。
由于性能优异、结构简单、组网容易,RS-485总线标准得到了越来越广泛的应用。
其互连方式如图1所示。
图1 RS-485互连示意图
RS-485采用平衡发送和差分接收方式来实现通信:在发送端TXD将串行口的TTL电平信号转换成差分信号A、B两路输出,经传输后在接收端将差分信号还原成TTL电平信号。
两条传输线通常使用双绞线,又是差分传输,因此有极强的抗共模干扰的能力,接收灵敏度也相当高。
同时,最大传输速率和最大传输距离也大大提高。
如果以10Kbps速率传输数据时传输距离可达12m,而用100Kbps时传输距离可达1.2km。
如果降低波特率,传输距离还可进一步提高。
另外RS-485实现了多点互连,最多可达32台驱动器和32接收器,非常便于多器件的连接。
不仅可以实现半双工通信,而且可以实现全双工通信。
下面以RS-485总线型网络为原型,介绍它的软硬件构成。
二、RS-485总线型多点互连设计
1、硬件电路设计
图2 RS-485总线型网络原理图
分布式多点数据采集系统或集中控制系统的网络拓扑一般采用总线方式,传送数据采用主从站的方法。
图2所示是用RS-485构成的总线型网络系统,采用主从方式进行多机通信。
主机可以是PC机、工控机或单片机,从机一般是单片机。
每个从机拥有自己固定的地址,由主机控制完成网上的每一次通信。
R为平衡电阻,通常取为120欧。
开始时所有从机复位,即处于监听状态,等待主机的呼叫。
当主机向网上发出某一从机的地址时,所有从机接收到该地址并与自己的地址相比较。
如果相符,说明主机在呼叫自己,应发回应答信号,表示准备好开始接收后面的命令和数据;否则不予理睬,继续监听呼叫地址。
主机收到从机的应答后,则开始一次通信。
通信完毕,从机继续处于监听状态,等待呼叫。
图3 单片机的RS-485接口
采用单片机和RS-485接口的原理图如图3所示。
由于使用半双工方式,RS-485接口芯片采用的是SN75LBC184集成电路。
这是具有瞬变高压抑制功能的芯片,能抗雷击、静电放电,避免因交流电故障引起的非正常高压脉冲冲击。
A、B为RS-485总线接口,DI是发送端,RO为接收端,分别与单片机串行口的TXD、RXD连接,RE、DE为收发使能端,由单片机的P1.4口作为收发控制。
数据采集或控制信号的输出通过P0口进行,P2的口线可用来控制A/D或D/A转换。
2、网络协议
SN75LBC184仅能保证在物理层上二进制信号流的畅通。
为了能使具体的命令、数据在网络上正确地传输,在数据链路层必须提供一定的网络协议,保证在物理层的比特流出现错误时进行检测和校正,同时实现生成数据帧和命令帧的功能。
主机发出的信息分为地址和数据,它们必须区分开。
单片机[1]串行口模式3是波特率可变的9位通信方式,可编程位(TB8)由主机单片机自动打包区别地址和数据,TB8为1表示地址字节,否则是数据字节。
从机接收时则根据这一位来区别地址和数据。
通信开始前,所有的从机处于复位状态,监听主机的地址呼叫。
FFH的呼叫地址将使所有的从机复位。
这时的从机只对TB8为1的地址字节敏感,对数据字节不予理睬。
如果有地址呼叫,则中断所有的从机。
每个从机都把接收到的呼叫地址和本机地址相比较,如果相符,则该从机开始接收数据帧。
其他从机则保持不变,后面的数据字节由于TB8为0,它们不接收,继续监听地址呼叫。
通信的从机完成通信后自动转入复位状态。
通信的数据长度必定大于一个字节,必须将他们合成一帧。
网络数据协议帧的格式如表1所示。
表1 网络数据协议
第一部分只有一个字节,代表该帧的长度为N+2。
第二部分是N个数据的数据包。
具体地说,当主机发给从机的时候,数据包包括命令字及参数;当从机回送给主机的时候,包括状态字以及必要的数据。
最后一部分是采用CCITT(Consultative Committee International for Telephony and Telegraph,国际电报电话咨询委员会)的CRC(Cyclic Redundancy Cheek,循环冗余校验)码,长度是两个字节。
三、服务软件
按照网络?议的帧格式编写的通信软件通过物理层最终完成主机与从机之间的数据交换。
在总线型拓扑结构构成的分布式数据采集系统中,主机和各从机间传送的命令和数据是二进制的直接传送,并且从机还要完成采集数据和控制的任务,主机要完成集中处理的任务,所以服务软件要使主机和各从机协调一致地工作,尽量减小通信对其他工作的影响。
下面以单片机构成的总线型多点数据采集系统为例,给出用C51编写的RS-485通信部分服务软件。
1、主机程序
#define uchar unsigned char
...
sbit tr=p1.4:
void main()
{
//初始化
PCON=0; //SMODE=0
TMOD=0x20; //定时器1设为模式2,作为串行口的波特率发生器
EA=0; //禁止定时器中断
TH1=0xf3;
TL1=0xf3; //定时起始值,6MHz晶振时波特率为1200bps
SCON=0xd8; //串行口模式3,TB8=1发送地址呼叫
TR1=1; //启动定时器1
while(TI=0); //等待发送结束
TI=0;
...
}
//发送子程序
uchar SendMsg(uchar msg,uchar len,uchar IDnum)
//msg:发送缓冲区指针;len:要发送的数据长度;IDnum:从机号{
...
TB8=1;
tr=1;
SBUF=0xff; //复位从机
while(TI=0);
TI=0;
SBUF=IDnum; //呼叫从机
while(TI=0);
TI=0;
tr=0;
while(RI=0); //等待从机回应 RI=0; //清除串行口中断标志//下面是数据帧
TB8=0;
tr=1;
SBUF=len+2;
while(TI=0)
TI=0
for(i=0;i<LEN;I++)< p>
{
SBUF=*(msg+i);
while(TI=0);
TI=0;
}
//下面计算 @#@冗余校验码并发送
...
//等待从机回应,看是否接收正确
...
return 0; //正确返回
}
2、从机程序
#define ADDRESS 0x01
...
sbit tr=P1.4;
//中断接收程序
void sevice-serial(void)interrupt 4 using 1 {
uchar rs;
RI=0;
ES=0; //关串行口中断
tr=0;
rs=SBUF;
if(rs=0xff) //是复位命令
{
SM2=1;
ES=1;
return;
}
if(rs!=ADDRESS) //不是呼叫本机{
ES=1;
return;
}
SM2=0;
tr=1;
SBUF=ADDRESS; //用本机地址作为应答while(TI=0);
TI=0;
tr=0;
//下面开始接收
...
}
四、结束语
本文着重讨论了用RS-485构成网络系统的基本组网方法,当然在具体的应用中还会有一些变化。
由于RS-485具有性能优异、组网简单的优点,它在集中控制系统、分布式控制系统中的应用相当广泛,特别是在要求远距离传输的应用中。
由于其硬件电路已比较成熟,设计中的问题主要集中在网络协议和服务软件的设计上。
网络协议是保证通信畅通的关键,在一定程度上也影响着网络通信的可靠性,即它必须能够抵抗实际运作环境的干扰。
另外通信只是整个系统中的一个部分,系统还必须完成诸如数据采集和控制的功能。
这就要求通信占用尽量少的时间,以求达到整个系统的高效率。
在通信数据量一定的情况下,采用较高的波特率当然比较好,但高的波特率必定要降低传输距离,在实际应用中必须仔细衡量。
更好的办法就是采用数据压缩算法,在传输前对数据进行压缩,可使通信数据量大大减少,网络效率成倍提高。