本发明专利技术公开了一种基于RS485分布式总线系统的控制方法,RS485分布式总线中的各个节点,开始仅处于接收状态,监测RS485分布式总线状态;在本节点需要发送指令或数据时,会启动总线控制权竞争获得机制,密切探测RS485分布式总线状态,若总线状态在一定时间(总线竞争延时探测时间)内始终处于空闲状态,就认为RS485分布式总线处于空闲状态,即可置位本节点的RS485芯片的发送使能引脚“TE”,占用总线,并及时发送数据,直至本节点数据发送完毕,清除本节点的RS485芯片的发送使能引脚“TE”,释放RS485分布式总线资源。本发明专利技术的控制方法采用的是一种通过监测总线空闲状态,竞争获得总线控制权的技术方案。
【技术实现步骤摘要】
本专利技术涉及一种基于RS485分布式总线系统的控制方法。本专利技术适用于异步串行通信,特别适用于数据通信不是很频繁,通信波特率不超过19200BPS,采用短帧通信结构,每一帧的有效字节数为1-255个可变的数据通信、自动控制等应用系统。
技术介绍
RS-485接口具有良好的抗噪声干扰性,长的传输距离和多站点等优点,使其成为首选的异步串行通信接口,在安防领域,特别是电视监控系统得到广泛应用。RS-485网络拓扑一般采用终端匹配的总线型结构(直线拓扑),不支持环形或星形网络。RS-485用于多点互连时非常方便,采用一条屏蔽双绞线电缆作RS-485总线,将各个节点挂接上,联网构成分布式系统,称之为RS485分布式总线系统。参见图1,各个节点也可是是各种设备,如设备1、设备2、设备3、设备4、......、设备n,设备是系统中各种用途的独立设备,例如是控制键盘、显示设备、中控设备、终端驱动设备等;也可以是一个大型设备中各种用途的独立的部件,例如是控制面板部件、显示部件、中控部件、终端驱动部件等。这些部件利用RS485通信芯片,采用异步通信方式,实现双向数据通信。撇开各设备或部件的具体应用功能,仅基于通信方面的功能,将设备1、设备2、设备3、设备4、……、设备η称为RS485分布式总线的节点1、节点2、节点3、节点4、……、节点η,参见图1。RS-485分布式总线一般最大支持32个节点(η〈=32),如果使用特制的485芯片,可以达到128个(η〈=128)或者256个节点(η〈=256),最大的可以支持到400个节点(η〈=400)οRS-485分布式总线采用半双工双向通信工作方式,任何时候只能有一节点处于发送状态。RS485分布式总线各节点,RS485芯片初始状态均为不发送仅接收状态。此时总线电平为高阻状态,称之为总线空闲状态。总线空闲状态时各节点RS485芯片接收引脚R的电平为T T L电平“ 1 ”。各节点始终监测的RS485芯片接收引脚R的电平为T T L电平“0”时,各节点均视RS485分布式总线为非空闲状态。如何保证RS485分布式总线中的各个节点,在需要发送数据时,能不冲突、高效地、可靠地发出数据,并保证RS485分布式总线中只有一节点处于发送状态,是RS485分布式总线系统通信关键技术。目前,常采用以下技术构建RS485分布式总线系统: 1、纯主站系统 系统只有一个主站,独占RS485分布式总线控制权,其它站点均处于接收状态。主站可随时对一个从站、一组从站或所有从站发送信息。该技术构建的是一个单向的RS485通信,应用场合受限,常用于系统中的分支子系统。2、主一从系统(总线时分系统,RS485初始推广令牌环的拓展技术) 一般采用的是主从通信方式,即一个主站带多个从站。首先在RS485分布式总线诸多站点中,定义一个,且仅定义一个主站,主站具有对总线的控制权,可主动发送信息。主站采用令牌方式分配RS485总线控制权,得到令牌的从站可在一个事先规定的时间内拥有总线控制权,向系统各站点发送信息。该技术实现RS485双向通信,通过约定协议,完全可构建多站系统。但该技术存在RS485总线资源利用率不高、实时性差、站点数量少等缺点,无法发展成为“RS485现场总线”。
技术实现思路
本专利技术的目的在于提供一种基于RS485分布式总线系统的控制方法,该控制方法采用的是一种通过监测总线空闲状态,竞争获得总线控制权的技术方案。为了实现上述技术目的,本专利技术采用如下技术方案: 一种基于RS485分布式总线系统的控制方法,所述RS485分布式总线系统是采用一条屏蔽双绞线电缆作RS485总线,将各个节点挂接上,联网构成分布式系统; 所述控制方法包括: 第一,RS485分布式总线中的各个节点,开始仅处于接收状态,监测RS485分布式总线状态; 第二,依据本节点系统控制优先级别,通过与其它节点的通信,竞争获得系统控制编号,进而通过计算确定本节点系统控制延时系数; 第三,判别是否需要发送指令或数据; 第四,若需要发送指令或数据的,则再判别是否已获得总线控制权; 第五,若没有获得总线控制权,则通过密集探测系统总线状态,竞争获得系统总线控制权; 第六,再判别系统总线是否空闲,若空闲,则占用总线,进入发送状态使能,启动送数据机制,开始发送第一个数据,并进入第八步;若系统总线不空闲,则直接进入第八步; 第七,若获得总线控制权,则连续发送数据,并判断发送数据是否完毕,若发送完毕,则关闭发送状态,释放总线,并清除连续发送数据机制;若数据没有发送完毕,则继续发送数据,直至发送数据完毕; 第八,由于节点始终处于接收状态,所以节点不仅能接收到系统其它节点发出的指令或数据,也能接收到本节点发出的指令或数据;通过将接收到的字节与自己刚发出字节比较,能及时知道本节点是否成功地发送了指令或数据,起到自动纠错作用,同时也能判断总线是否正常; 第九,节点接收到系统其它节点发出的指令或数据,判断是否是其它节点向本节点发送的要求入网指令,若是则继续判断其它节点优先级别是否比本节点优先级别高,若是则回复允许入网指令,同时本节点退出已获得的入网权,回到第二步,否则回复不允许入网指令;对于本节点接收到的其它指令或数据,也要及时进行相应处理。本专利技术一种基于RS485分布式总线系统的控制方法采用的是一种通过监测总线空闲状态,竞争获得总线控制权的技术方案。本专利技术的思路是:RS485分布式总线中的各个节点,开始仅处于接收状态,监测RS485分布式总线状态;在本节点需要发送指令或数据时,会启动总线控制权竞争获得机制,密切探测RS485分布式总线状态,若总线状态在一定时间(总线竞争延时探测时间)内始终处于空闲状态,就认为RS485分布式总线处于空闲状态,即可置位本节点的RS485芯片的发送使能引脚“T E”,占用总线,并及时发送数据,直至本节点数据发送完毕,清除本节点的RS485芯片的发送使能引脚“ T E ”,释放RS485分布式总线资源。本专利技术的控制方法是引入RS485总线控制权竞争机制,实现了 RS485总线多主站系统。本专利技术的控制方法已基本解决总线控制、冲突检测、链路维护等问题。本专利技术能使每节点设备均能高效、实时、避免冲突地实现数据通信。本专利技术适用于异步串行通信,特别适用于数据通信不是很频繁,通信波特率不超过19200BPS,采用短帧通信结构,每一帧的有效字节数为1-255个可变的数据通信、自动控制等应用系统。本专利技术把数据通信控制权彻底下放到一根双绞线连接起来RS485分布式总线上的诸多节点设备,实现方法简单,对节点设备的微控制器要求低。【附图说明】图1为RS485分布式总线系统示意图; 图2为本专利技术一种基于RS485分布式总线系统的控制方法总流程图; 图3为依据节点优先级别竞争获得本节点系统控制延时系数的流程图; 图4为通过探测总线状态竞争获得系统总线控制权的流程图; 图5为发送数据流程图; 图6为接收数据流程图; 图7为特例总线数据流状态为数据=255、校验位=1各节点探测原理示意图; 图8为特例总线数据流状态为数据=任意、校验位=0各节点探测原理示意图。【具体实施方式】下面结合附图和具体实施例对本专利技术作进一本文档来自技高网...
【技术保护点】
一种基于RS485分布式总线系统的控制方法,所述RS485分布式总线系统是采用一条屏蔽双绞线电缆作RS485总线,将各个节点挂接上,联网构成分布式总线系统;其特征是:所述控制方法包括:第一,RS485分布式总线中的各个节点,开始仅处于接收状态,监测RS485分布式总线状态;第二,依据本节点系统控制优先级别,通过与其它节点的通信,竞争获得系统控制编号,进而通过计算确定本节点系统控制延时系数;第三,判别是否需要发送指令或数据;第四,若需要发送指令或数据的,则再判别是否已获得总线控制权;第五,若没有获得总线控制权,则通过密集探测系统总线状态,竞争获得系统总线控制权;第六,再判别系统总线是否空闲,若空闲,则进入发送状态使能,占用总线,开始发送第一个数据,并启动连续送数据机制,并进入第八步;若系统总线不空闲,则直接进入第八步;第七,若获得总线控制权,则连续发送数据,并判断发送数据是否完毕,若发送完毕,则关闭发送状态,释放总线,并清除连续发送数据机制;若数据没有发送完毕,则继续发送数据,直至发送数据完毕;第八,由于节点始终处于接收状态,所以节点不仅能接收到系统其它节点发出的指令或数据,也能接收到本节点发出的指令或数据;通过将接收到的字节与自己刚发出字节比较,能及时知道本节点是否成功地发送了指令或数据,起到自动纠错作用,同时也能判断总线是否正常;第九,节点接收到系统其它节点发出的指令或数据,判断是否是其它节点向本节点发送的要求入网指令,若是则继续判断其它节点优先级别是否比本节点优先级别高,若是则回复允许入网指令,同时本节点退出已获得的入网权,回到第二步,否则回复不允许入网指令;对于本节点接收到的其它指令或数据,也要及时进行相应处理。...
【技术特征摘要】
【专利技术属性】
技术研发人员:周海令,
申请(专利权)人:上海海视电子有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。