Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND SYSTEM FOR ORDERED IDENTIFYING SLAVE ADDRESS FROM MASTER-SLAVE SCENE BUS
Document Type and Number:
WIPO Patent Application WO/2012/167736
Kind Code:
A1
Abstract:
A method for ordered identifying slave address from master-slave scene bus includes: setting a slot voltage bus(SVB)which is used to connect the master and slaves in series, and at least one diode is connected in series among the slaves by SVB bus; When the slave addresses conflict or new slaves are added, the said master controls the slave to output a pre-destined voltage to SVB bus, and resets slaves address by measuring the voltage of slaves. Corresponding system is provided. The said method and system for ordered identifying slave address from master-slave scene bus enables auto ordered identifying slave address from master-slave scene bus.

Inventors:
XIONG YONG (CN)
Application Number:
PCT/CN2012/076591
Publication Date:
December 13, 2012
Filing Date:
June 07, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
XIONG YONG (CN)
International Classes:
H04L12/40
Foreign References:
CN101482749A2009-07-15
CN101355482A2009-01-28
US7444453B22008-10-28
CN1949734A2007-04-18
Other References:
See also references of EP 2688248A4
Attorney, Agent or Firm:
AFD CHINA INTELLECTUAL PROPERTY LAW OFFICE (CN)
北京安信方达知识产权代理有限公司 (CN)
Download PDF:
Claims:
权 利 要 求 书

1、 一种主从式现场总线中从机地址顺序识别的方法, 包括:

设置一槽位电压 (SVB ) 总线, 用于串联主机和从机, 各从机之间通过 SVB总线串联至少一二极管;

当从机的地址冲突或新的从机加入时, 所述主机控制从机输出一预设的 电压至 SVB总线, 并通过检测各从机的电压值重新设置各从机的地址。

2、 如权利要求 1所述的方法, 其中, 所述主机控制从机输出一预设的电 压至 SVB总线, 并通过检测各从机的电压值重新设置各从机的地址包括:

( a )所述主机获取所有从机的 ID;

( b )指定任一 ID的从机输出所述预设的电压至 SVB总线;

( c )检测本端的电压值, 同时接收各从机检测并上^艮的各从机的电压值 和 ID;

( d )根据所述主机和从机的电压值, 获取电压值非 0的从机的 ID和地 址的对应关系, 得到从机的地址;

( e )当存在电压值为 0的从机时, 指定任一电压值为 0的从机输出所述 预设的电压至 SVB总线, 并返回步骤(c ) 。

3、 如权利要求 2所述的方法, 其中, 所述指定任一 ID的从机输出所述 预设的电压至 SVB总线包括:

通过现场通信总线发送控制信号至对应所述任一 ID的从机的控制开关, 通过该控制开关导通所述从机的电压输出端与 SVB总线。

4、 如权利要求 2或 3所述的方法, 其中, 所述检测本端的电压值为: 通过 A/D检测电路检测本端的电压值。

5、 如权利要求 2或 3所述的方法, 其中, 所述根据电压值和 ID, 获取 电压值非 0的从机的 ID和地址的对应关系, 得到从机的地址包括:

分别计算主机的电压值与各从机的电压值的电压差;

据所述电压差和二极管的压降, 判断所述各从机所属槽位号;

将所述槽位号设置为对应从机的地址。 6、 一种主从式现场总线中从机地址顺序识别的系统, 包括主机、 至少一 从机和一槽位电压 (SVB ) 总线, 其中,

所述 S VB总线设置为: 串联主机和从机, 各从机之间通过 S VB总线串 联至少一二极管;

所述主机设置为: 当从机的地址冲突或新的从机加入时, 控制从机输出 一预设的电压至 SVB总线,并通过检测各从机的电压值重新设置各从机的地 址。

7、 如权利要求 6所述的系统, 其中, 所述主机包括:

获取 ID模块, 设置为: 获取所有从机的 ID;

指定模块, 设置为: 指定任一 ID的从机输出所述预设的电压至 SVB总 线;

检测模块, 设置为: 检测本端的电压值, 同时接收各从机检测并上报的 各从机的电压值和 ID;

获取地址模块, 设置为: 根据所述主机和从机的电压值, 获取电压值非 0的从机的 ID和地址的对应关系, 得到从机的地址;

循环模块, 设置为: 当存在电压值为 0的从机时, 指定任一电压值为 0 的从机输出所述预设的电压至 SVB总线,并返回通过检测模块检测本端的电 压值 , 同时接收各从机检测并上报的各从机的电压值和 ID。

8、 如权利要求 7所述的系统, 其中, 所述指定模块设置为:

通过现场通信总线发送控制信号至对应所述任一 ID的从机的控制开关, 通过该控制开关导通所述从机的电压输出端与 SVB总线。

9、 如权利要求 7或 8所述的系统, 其中, 所述检测模块设置为: 通过 A/D检测电路检测本端的电压值。

10、 如权利要求 7或 8所述的系统, 其中, 所述获取地址模块包括: 计算单元,设置为: 分别计算主机的电压值与各从机的电压值的电压差; 判断单元, 设置为: 据所述电压差和二极管的压降, 判断所述各从机所 属槽位号;

设置单元, 设置为: 将所述槽位号设置为对应从机的地址。

Description:
主从式现场总线中从机地址顺序识别的方法及 系统

技术领域

本发明涉及到通信领域, 特别涉及到一种主从式现场总线中从机地址顺 序识别的方法及系统。

背景技术

随着技术的发展和生活水平的提高, 越来越多的工业控制、 医疗、 通讯、 消费等电子产品日趋智能化, 以微处理器为核心的嵌入式系统得到日益广泛 的应用, 对这些智能化设备进行现场组网和管理也成为 嵌入式应用的一个重 点。 用户可以通过设备提供的智能接口如串口、 并口、 以太网口等, 对其进 行配置、 管理和监控。 基于复杂的 TCP/IP协议的高速以太网接口是未来发展 方向, 实现丰富的监控管理功能。 但是, 目前多数的嵌入式设备, 釆用 8、 16 或 32位的 MCU组成廉价系统, 出于简单、 方便、 低成本的考虑, 还是釆用现 场总线, 如 RS485总线、 CAN总线等, 实现现场设备级的局域网通讯。 其中, 大部分应用了主从式现场总线进行管理, 即一个嵌入式设备(称为主机)可 监控其他嵌入式设备(称为从机) 。

通过主从式现场总线组成现场局域网时, 需要通过设备标识来区分各个 从机, 最简单的办法是釆用设备地址来区分。每个从 机都有独一无二的地址, 避免总线冲突。 但当出现某些从机出现故障, 丟失了配置地址, 或者多个从 机位置随意更换, 造成地址冲突, 或者某些从机并非连续进行配置, 中间有 些空的槽位。对于上述情况此时必须重新设置 从机的地址, 保证正常的通讯。 如果从机有拨码开关或者其他人机交互设备如 键盘、 显示屏等, 是可以设置 地址的。 但 4艮多情况下, 出于成本和空间的考虑, 从机并没有这些交互设备。 这就带来了实际的难题: 如何方便的设置从机的地址? 如何快速定位从机位 置?

最简单的方法是按现场总线的连接顺序或者按 照从机处于的槽位顺序, 依次设置从机的地址。 但无法解决中间某些从机被拔出, 出现空的槽位的情 况。 另一个可行的方法是每个从机额外增加一个输 入信号线: 片选信号线, 通过主机对每个从机设置地址。 例如主机首先使能第一个从机的片选, 设置 该从机的地址为 1 (其他从机因片选信号无效, 不予响应设置命令), 依次设 置其他从机的地址即可。 该方法比较简单, 但要增加多个信号线, 尤其当组 网的设备非常多时, 需要增加的信号线就很多, 这在很多场合是不适用的。

还有一种可行的方法是, 增加一对信号线, 各个从机信号间通过可控的 连接器件级联, 比如 DSDT (双刀双掷)开关或继电器。 通过令牌环的方式, 可 以实现各个从机的顺序识别。 但是, 该方法成本较高, 且对于控制信号连接 的 DSDT (双刀双掷)开关或继电器等器件来说, 可靠性不高, 出现故障整个串 行环路断开, 只能顺序识别地址, 对于空缺槽位(从机不在位) 的情况无法 获悉。 发明内容

本发明的主要目的为提供一种主从式现场总线 中从机地址顺序识别的方 法及系统, 实现主从式现场总线中从机地址的自动顺序识 别。

本发明提出一种主从式现场总线中从机地址顺 序识别的方法, 包括: 设置一 S VB总线, 用于串联主机和从机, 各从机之间通过 S VB总线串 联至少一二极管;

当从机的地址冲突或新的从机加入时, 所述主机控制从机输出一预设的 电压至 SVB总线, 并通过检测各从机的电压值重新设置各从机的 地址。

优选地, 所述主机控制从机输出一预设的电压至 SVB总线, 并通过检测 各从机的电压值重新设置各从机的地址:

( a )所述主机获取所有从机的 ID;

( b )指定任一 ID的从机输出所述预设的电压至 SVB总线;

( c )检测本端的电压值, 同时接收各从机检测并上^艮的各从机的电压 和 ID;

( d )根据所述主机和从机的电压值, 获取电压值非 0的从机的 ID和地 址的对应关系, 得到从机的地址;

( e )当存在电压值为 0的从机时, 指定任一电压值为 0的从机输出所述 预设的电压至 SVB总线, 并返回步骤(c ) 。 优选地,所述指定任一 ID的从机输出所述预设的电压至 SVB总线包括: 通过现场通信总线发送控制信号至对应所述任 一 ID的从机的控制开关, 通过该控制开关导通所述从机的电压输出端与 SVB总线。

优选地, 所述检测本端的电压值为:

通过 A/D检测电路检测本端的电压值。

优选地, 所述根据电压值和 ID, 获取电压值非 0的从机的 ID和地址的 对应关系, 得到从机的地址包括:

分别计算主机的电压值与各从机的电压值的电 压差;

据所述电压差和二极管的压降, 判断所述各从机所属槽位号;

将所述槽位号设置为对应从机的地址。 本发明还提出一种主从式现场总线中从机地址 顺序识别的系统, 包括主 机、 至少一从机和一 S VB总线, 其中,

所述 S VB总线设置为: 串联主机和从机, 各从机之间通过 S VB总线串 联至少一二极管;

所述主机设置为: 当从机的地址冲突或新的从机加入时, 控制从机输出 一预设的电压至 SVB总线,并通过检测各从机的电压值重新设置 各从机的地 址。

优选地, 所述主机包括:

获取 ID模块, 设置为: 获取所有从机的 ID;

指定模块, 设置为: 指定任一 ID的从机输出所述预设的电压至 SVB总 线;

检测模块, 设置为: 检测本端的电压值, 同时接收各从机检测并上报的 各从机的电压值和 ID;

获取地址模块, 设置为: 根据所述主机和从机的电压值, 获取电压值非

0的从机的 ID和地址的对应关系, 得到从机的地址;

循环模块, 设置为: 当存在电压值为 0的从机时, 指定任一电压值为 0 的从机输出所述预设的电压至 SVB总线,并返回通过检测模块检测本端的电 压值 , 同时接收各从机检测并上报的各从机的电压值 和 ID。

优选地, 所述指定模块设置为: 通过现场通信总线发送控制信号至对应所述任 一 ID的从机的控制开关, 通过该控制开关导通所述从机的电压输出端与 SVB总线。

优选地, 所述检测模块设置为:

通过 A/D检测电路检测本端的电压值。

优选地, 所述获取地址模块包括:

计算单元,设置为: 分别计算主机的电压值与各从机的电压值的电 压差; 判断单元, 设置为: 据所述电压差和二极管的压降, 判断所述各从机所 属槽位号;

设置单元, 设置为: 将所述槽位号设置为对应从机的地址。 本发明实施例提出的一种主从式现场总线中从 机地址顺序识别的方法及 系统, 解决了在现场总线网络中, 从机由于地址丟失导致总线冲突或者标识 错误的难题, 在仅增加两根传输信号线和少量硬件的情况下 , 完成各个从机 地址的重新设置和识别, 保证了现场总线的正常通讯。 另外, 还可以实现从 机自由扩展, 投入时自动识别, 提高监控系统的智能化程度。

附图概述

图 1 为本发明主从式现场总线中从机地址顺序识别 的方法- 实施例的流 程示意图;

图 2 为本发明主从式现场总线中从机地址顺序识别 的方法- 实施例中主 机设置从机地址步骤的流程示意图;

图 3 为本发明主从式现场总线中从机地址顺序识别 的方法- 实施例中获 取地址步骤的流程示意图;

图 4 为本发明主从式现场总线中从机地址顺序识别 的方法- 实施例中的 现场总线布局图;

图 5 为本发明主从式现场总线中从机地址顺序识别 的方法- 实施例中整 流器的现场总线布局图;

图 6 为本发明主从式现场总线中从机地址顺序识别 的系统- 实施例的结 构示意图;

图 7 为本发明主从式现场总线中从机地址顺序识别 的系统- 实施例中主 机的结构示意图;

图 8 为本发明主从式现场总线中从机地址顺序识别 的系统一实施例中获 取地址模块的结构示意图。 本发明目的的实现、 功能特点及优点将结合实施例, 参照附图做进一步 说明。 本发明的较佳实施方式

应当理解, 此处所描述的具体实施例仅仅用以解释本发明 , 并不用于限 定本发明。 参照图 1 ,提出本发明主从式现场总线中从机地址顺序 别的方法一实施 例, 包括:

步骤 S10、 设置一槽位电压(Socket Voltage Bus, SVB )总线, 用于串联 主机和从机 , 各从机之间通过 S VB总线串联至少一二极管;

在 SVB总线上, 各从机间以二极管串连。 主机发现从机地址冲突或者从 机地址需要重置时, 主机通过现场总线, 通知某个指定的从机, 在 SVB总线 上输出电压; 由于二极管单向导通、 正向压降固定的特点, 所有不同槽位的 从机都从 SVB上检测到特定的、 不同电压幅值, 从而区分槽位、 以及重置该 从机地址。

步骤 Sl l、 当从机的地址冲突或新的从机加入时, 所述主机控制从机输 出一预设的电压至 SVB总线,并通过检测各从机的电压值重新设置 各从机的 地址。

参照图 2, 步骤 S11进一步包括:

步骤 Sl l l、 所述主机获取所有从机的 ID;

步骤 S112、 指定任一 ID的从机输出所述预设的电压至 SVB总线; 步骤 S113、 检测本端的电压值, 同时接收各从机检测并上报的各从机的 电压值和 ID;

步骤 S114、根据所述主机和从机的电压值, 获取电压值非 0的从机的 ID 和地址的对应关系, 得到从机的地址; 步骤 S115、 当存在电压值为 0的从机时, 指定任一电压值为 0的从机输 出所述预设的电压至 SVB总线, 并返回步骤 S113 , 否则, 结束流程。

在上述实施例中, 步骤 S112具体包括:

通过现场通信总线发送控制信号至对应所述任 一 ID的从机的控制开关, 通过该控制开关导通所述从机的电压输出端与 SVB总线。

参照图 3 , 在上述实施例中, 步骤 S114具体包括:

步骤 S1141、 分别计算主机的电压值与各从机的电压值的电 压差; 步骤 S1142、 根据所述电压差和二极管的压降, 判断所述各从机所属槽 位号;

步骤 S1143、 将所述槽位号设置为对应从机的地址。

参照图 4, 下面结合附图对本实施例的技术方案作进一步 的详细描述: 首先构建现场总线网络, 包括选用电缆、 选用器件、 设计电路、 工程应 用等。 现场总线的通讯线缆一般情况下可釆用双绞线 缆。 本实施例中, 釆用 的双绞线缆除用于保障现场通信总线的物理连 接外, 还需要 1对线缆(为方便 阐述, 称为 SVB总线)用于传送槽位电压信号, 这 1对线缆可以为普通线缆, 也可用双绞线。 如现场总线釆用 RS485总线或 CAN总线, 需要釆用至少 4线制 ( 2对)双绞线缆; 而如果釆用 RS422总线, 需要釆用至少 6线制 (3对)双绞 线缆。

现场总线配线可釆用串联地址分配方式,主机 位于现场通信总线的一端, 离主机最近的为一号槽位的从机,依次连接, 离主机最远的从机槽位号最大, 串联在总线末端。 现场通信总线使用方法不作任何改变, 用于主机与从机间 正常的通讯, 实现系统的监控,

新增的 SVB总线, 用于串连主机和从机, 这一对 SVB总线定义为公共地 线 SVB-G、 电压信号线 SVB-V。 各个从机间需要在 SVB-V串连单向导通的二 极管, 二极管的数量根据需要设置一或多个, 电压通过二极管后, 得到稳定 的电压压降, 以确保每个槽位上的从机, 能检测到不同的电压值, 从而通过 不同的电压值确定不同的槽位号, 然后将从机所在的槽位号设置为从机的地 址, SVB总线通过主机构成回路。 主机和各个从机需要增加一检测电压的装 置如 A/D检测电路,用于检测本槽位上 SVB-V线上电压值,主机可在 SVB总线 末端, 增加电阻回路, 用于保障各串连二极管导通的最小电流, 也可以借用 A/D检测电路的输入阻抗电路来实现。

当主机识别现场通信总线上有从机的地址冲突 , 或有新的从机投入时, 启动重新设置从机的地址的流程:

( 1 )主机通过已有的现场通信总线, 如 CAN总线、 RS485总线、 RS422 总线等, 发出指令, 要求所有从机上报该机器的唯一标识 ID,

( 2 )各从机分别通过现场通信总线, 向主机告知该从机的 ID。对于 CAN 网络,其本身能够实现冲突检测, 因此,告知 ID不会有任何问题,对于 RS485、 RS422等网络, 也可以籍由不同 ID号, 通过简单的时间避退算法, 向主机告 知 ID。 主机接收到所有从机反馈的 ID, 据此获知当前网络中从机的数量。

( 3 )主机通过现场通信总线, 指定某一 ID号的从机进入 "槽位识别"状 态即输出电压到 SVB总线。

( 4 )进入"槽位识别"状态的从机,通过控制端,输 出一定的电压到 SVB 总线上,控制端可用常用的可控器件实现如继 电器、 晶闸管、 BJT、 MOSFET、 IGBT等。

( 5 )所有从机通过 A/D检测电路检测 SVB总线上的电压值, 其中也包括 进入 "槽位识别" 状态、 输出电压的从机。

( 6 )主机也通过 A/D检测电路检测 SVB总线上的电压值。

( 7 )所有从机把检测到的 SVB总线上的电压值, 依次通过现场通信总线 送给主机。

( 8 )由于各个槽位的 SVB总线上的电压值不同, 因此主机能够判断出各 个从机的槽位号。

( 9 )由于 SVB总线上串连的二极管单向导通, 所有槽位在该处于槽位识 别状态之后的从机, 没有构成电流回路, 检测到的 SVB总线上电压值均为 0, 而由于二极管正向压降固定的特点, 所有槽位在该处于槽位识别状态之前的 从机,检测到的 SVB总线上的电压值, 以一个二极管为例,依次会下降约 0.7V (硅管、 锗管约 0.3 V ) ,

( 10 )主机通过现场通信总线, 通知此从机退出 "槽位识别" 状态, 该 从机关闭输出电压到 SVB总线。

( 11 )主机如发现有上报的检测 SVB总线电压值为 0的从机, 则通过现场 通信总线, 指定电压值为 0的任一个 ID号的从机进入 "槽位识别"状态。 返回 步骤(4 ) , 直到所有从机上报的检测 SVB总线的电压值都不为 0。

( 12 )主机根据各个 ID号的从机上报的检测 SVB电压值, 即可得到各个 从机的槽位,当槽位号根据与主机距离远近依 次递减时,第一个从机检测 SVB 电压值应该和主机检测至的电压值相同; 第二个从机检测 SVB电压值依次下 降约 0.7V (硅管、 锗管约 0.3V ) , 依次类推。

( 13 )主机根据各个槽位号, 设置各个从机的地址和槽位号一致, 以实 现地址的顺序识别。

本实施例中, 应用二极管单向导电、 正向压降的特点, 通过将各个二极 管串连, 巧妙实现了槽位的顺序识别, 解决了槽位和地址不匹配的现象, 方 便现场维护和检修, 彻底解决了从机自动竟争导致的地址随意变更 的缺陷。 比较通过拨码开关等硬件配置方式实现地址设 置, 本实施例实现全自动化设 置, 不需要人工参与, 避免了人工疏忽导致的地址重复、 地址 /槽位不匹配等 常见问题。

优选地, 本实施例成本低、 实现容易。 总线系统中, 只需要增加一对 SVB 总线, 可使用标准的 RJ45、 RJ11等连接器, 成本低廉, 从机仅仅在背板上增 加一或多个二极管 (如常用的 IN4002 ) 、 一个可控器件和一个 SVB总线的电 压检测电路, 可控器件可以用常用的继电器、 晶闸管、 BJT、 MOSFET、 IGBT 等, 而电压检测电路由于从机通常都有 A/D功能, 因此,只需复用该 A/D即可。

优选地,本实施例适用性强。如每个 SVB总线上的二极管典型压降为 0.7V (硅管), 当从机为整流器时, 其正常输出电压为 53.5V。 因此, 可以适用于 53.5/0.7=76个整流器组成的超大容量通信直流电 系统中, 适用性非常广。 如果提高整流器输出电压到均充点 56.4V、或者选择正向压降较低的其他二极 管(锗管 0.3V ) , 则能够支持更大容量(更多节点)的电源系统 , 扩展性好。

参照图 5, 以整流器为例对上述实施例作进一步说明:

某公司生产某种型号的通信基站电源系统, 广泛应用于全国各个电信设 备制造商和运营商。该电源系统由交流配电、 直流配电、最多 40个整流器(作 为从机)和一个监控单元(作为主机)组成。 整流器由于功率密度的要求、 成本压力、 即插即用的要求, 除了告警指示灯和 CAN接口外, 没有其他人机 交互设备。 因此, 需要监控单元通过 CAN总线和这 40个整流器通讯, 通过地 址来区分和识别各个整流器, 以便监控单元轮询获取各个整流器的数据和告 警信息, 并且控制整流器的运行状态。

第一步、 硬件实现:

选择线缆。 由于主从机间釆用 CAN总线, 因此只需要一对线缆即可, 再 增加一对线缆作为 SVB总线。 通讯电缆可以釆用至少 4线制(2对)双绞线缆, 比如通用的 10/100BASE-以太网线缆 T568A/B (该线缆内包含 4对色标双绞线, 还可以扩充备用) , 连接器选用配套的 RJ45。

网络连接。 为了连接监控单元和各个整流器, 以及分配各个整流器地址, 需要通过以太网线缆顺序串连。 在配线上, 保证监控单元位于一端, 其他各 个整流器依次串连, 最远槽位的整流器位于网线的末端。 各个整流器插入的 背板, 需要有两个 RJ45连接器, 其中 CAN总线的两线(CAN-H、 CAN-L )在 背板直接短路。 SVB的一线 (SVB-G ) 直接短路, 另外一线(SVB-V ) 间串 连一个二极管 (如常用的 IN4002 ) 。 监控单元背板上也需要类似变更, 但可 以省去二极管。

整改整流器电路。 各个整流器本身都有 53.5V直流电压输出, 增加一个继 电器以控制使能输出到 SVB-V线上。 同时, 增加一个 A/D检测电路, 以检测 SVB-V线上的电压幅值。该 A/D检测电路可以是先通过运放进行调理后送到 整 流器自带的 A/D检测电路中。

整改监控单元。 监控单元增加一个 A/D检测电路, 以检测 SVB-V线上的 带的 A/D检测电路中,借用调理电路的电阻构成 SVB回路。选择合适调理电路 的电阻, 保证在全电压范围内所有二极管能导通。 假设该二极管完全导通电 流最小 5mA, 系统配置整流器的数量最大 40, 则该电阻小于 (53.5-0.7 x 39)/5, 即 5.2ΚΩ即可。 当然电阻选择越小, 二极管上流经的电流会越大, 但损耗系 统较多的功耗, 因此, 建议尽量选择该电阻值的上限, 如 5ΚΩ即可。

监控单元或者整流器识别 CAN总线上有整流器地址冲突, 或有新整流器 投入, 启动重新设置整流器地址的流程如下:

( 1 )监控单元通过 CAN总线发出指令,要求所有整流器上报唯一标 识 ID; ( 2 )所有整流器通过 CAN总线回应监控主机对应的 ID;

( 3 )监控单元接收到所有整流器回应的 ID,据此获知当前网络中整流器 的数量; ( 4 )监控单元通过 CAN总线发出指令, 指定任一 ID号的整流器进入 "槽 位识别" 状态;

( 5 )此 ID的整流器进入 "槽位识别" 状态, 输出 53.5V的电压值到 SVB 总线上;

( 6 )所有整流器通过 A/D检测电路 SVB总线上的电压值;

( 7 )监控单元也通过 A/D检测电路 SVB上的电压值;

( 8 )所有整流器通过 CAN总线上报检测到的 SVB上的电压值, 上报给监 控单元;

( 9 )由于各个槽位的 SVB总线上的电压值不同, 因此监控单元能够判断 出各个整流器的槽位号;

( 10 )监控单元通过 CAN总线发出指令, 通知此 ID整流器退出 "槽位识 另 J " 状态, 该整流器关闭输出电压到 SVB总线, 此时的 SVB总线上电压为 0;

( 11 )监控单元处理所有整流器上报的 SVB总线的电压值, 如发现有电 压值为 0, 通过 CAN总线发出指令, 指定电压值非 0的另外一个不同 ID的整流 器进入槽位识别状态; 并返回步骤(5 )直到所有整流器上报的检测 SVB总线 的电压值均不为 0;

( 12 )监控单元根据各个 ID的整流器上报的检测 SVB总线的电压值, 即 可得到各个整流器的槽位号, 如第一个整流器检测 SVB总线的电压值应该和 监控单元检测的 SVB总线的电压值相同, 第二个整流器检测的 SVB总线的电 压值依次下降约 0.7V (硅管、 锗管约 0.3V ) , 依次类推;

( 13 )监控单元根据各个槽位号, 设置各个整流器从机的地址和槽位号 一致, 以实现地址的顺序设置和识别。 参照图 6, 提出主从式现场总线中从机地址顺序识别的系 统一实施例, 包括主机 10、 至少一从机 20和一 SVB总线 30, 其中,

所述 SVB总线 30,用于串联主机 10和从机 20,各从机 20之间通过 SVB 总线 30串联至少一二极管;

所述主机 10, 当从机 20地址冲突或新的从机 20加入时, 所述主机 10 控制从机 20输出一预设的电压至 SVB总线 30,并通过检测各从机 20的电压 值重新设置各从机的地址。 参照图 7, 在一实施例中, 主机 10包括:

获取 ID模块 11 , 用于获取所有从机 20的 ID;

指定模块 12, 用于指定任一 ID的从机 20输出所述预设的电压至 SVB 总线 30;

检测模块 13 , 用于检测本端的电压值, 同时接收各从机 20检测并上报 的各从机 20的电压值和 ID;

获取地址模块 14, 用于根据所述主机 10和从机 20的电压值, 获取电压 值非 0的从机 20的 ID和地址的对应关系, 得到从机 20的地址;

循环模块 15, 用于当存在电压值为 0的从机 20时, 指定任一电压值为 0 的从机 20输出所述预设的电压至 SVB总线 30, 并返回通过检测模块检测本 端的电压值, 同时接收各从机 20检测并上报的各从机 20的电压值和 ID。

在上述实施例中, 指定模块 12具体用于:

通过现场通信总线发送控制信号至对应所述任 一 ID的从机 20的控制开 关, 通过该控制开关导通所述从机 20的电压输出端与 SVB总线 30。

在上述实施例中, 检测模块 13具体用于:

通过 A/D检测电路检测本端的电压值。

参照图 8, 在上述实施例中, 获取地址模块 14包括:

计算单元 141 , 用于分别计算主机 10的电压值与各从机 20的电压值的 电压差;

判断单元 142, 用于据所述电压差和二极管的压降, 判断所述各从机 20 所属槽位号;

设置单元 143 , 用于将所述槽位号设置为对应从机 20的地址。

下面结合附图对本实施例的技术方案作进一步 的详细描述:

首先构建现场总线网络, 包括选用电缆、 选用器件、 设计电路、 工程应 用等。 现场总线的通讯线缆一般情况下可釆用双绞线 缆。 本实施例中, 釆用 的双绞线缆除用于保障现场通信总线的物理连 接外, 还需要 1对线缆(为方便 阐述, 称为 SVB总线)用于传送槽位电压信号, 这 1对线缆可以为普通线缆, 也可用双绞线。 如现场总线釆用 RS485总线或 CAN总线, 需要釆用至少 4线制 ( 2对)双绞线缆; 而如果釆用 RS422总线, 需要釆用至少 6线制 (3对)双绞 线缆。 现场总线配线可釆用串联地址分配方式, 主机 10位于现场通信总线的一 端, 离主机 10最近的为一号槽位的从机 20, 依次连接, 离主机 10最远的从机 20槽位号最大, 串联在总线末端。 现场通信总线使用方法不作任何改变, 用 于主机 10与从机 20间正常的通讯, 实现系统的监控,

新增的 SVB总线 30, 用于串连主机 10和从机 20, 这一对 SVB总线 30定义 为公共地线 SVB-G、 电压信号线 SVB-V。 各个从机 20间需要在 SVB-V串连单 向导通的二极管, 二极管的数量根据需要设置一或多个, 电压通过二极管后, 得到稳定的电压压降, 以确保每个槽位上的从机 20, 能检测到不同的电压值, 从而通过不同的电压值确定不同的槽位号, 然后将从机 20所在的槽位号设置 为从机 20的地址, SVB总线 30通过主机 10构成回路。 主机 10和各个从机 20需 要增加一检测电压的装置如 A/D检测电路,用于检测本槽位上 SVB-V线上电压 值, 主机 10可在 SVB总线 30末端, 增加电阻回路, 用于保障各串连二极管导 通的最小电流, 也可以借用 A/D的输入阻抗电路来实现。

当主机 10识别现场通信总线上有从机 20地址冲突, 或有新的从机 20投入 时, 主机 10通过如下方式重新设置从机 20地址:

( 1 )获取 ID模块 11通过已有的现场通信总线,如 CAN总线、 RS485总线、 RS422总线等, 发出指令, 要求所有从机 20上报该机器的唯一标识 ID,

( 2 )各从机 20分别通过现场通信总线, 向获取 ID模块 11告知该从机 20 的 ID。 对于 CAN网络, 其本身能够实现冲突检测, 因此, 告知 ID不会有任何 问题, 对于 RS485、 RS422等网络, 也可以籍由不同 ID号, 通过简单的时间避 退算法,向获取 ID模块 11告知 ID。获取 ID模块 11接收到所有从机 20反馈的 ID, 据此获知当前网络中从机 20的数量。

( 3 )指定模块 12通过现场通信总线, 指定某一 ID号的从机 20进入 "槽位 识别" 状态即输出电压到 SVB总线 30。

( 4 )进入 "槽位识别" 状态的从机 20, 通过控制端, 输出一定的电压到

SVB总线 30上, 控制端可用常用的可控器件实现如继电器、 晶闸管、 BJT、 MOSFET、 IGBT等。

( 5 )所有从机 20通过 A/D检测电路检测 SVB总线 30上的电压值, 其中也 包括进入 "槽位识别" 状态、 输出电压的从机 20。

( 6 )检测模块 13也通过 A/D检测电路检测 SVB总线 30上的电压值。 ( 7 )所有从机 20把检测到的 SVB总线 30上的电压值, 依次通过现场通信 总线送给检测模块 13。

( 8 )由于各个槽位的 SVB总线 30上的电压值不同, 因此获取地址模块 14 能够判断出各个从机 20的槽位号。

( 9 )由于 SVB总线 30上串连的二极管单向导通, 所有槽位在该处于槽位 识别状态之后的从机 20 , 没有构成电流回路, 检测到的 SVB总线 30上电压值 均为 0, 而由于二极管正向压降固定的特点, 所有槽位在该处于槽位识别状态 之前的从机 20 , 检测到的 SVB总线 30上的电压值, 以一个二极管为例, 依次 会下降约 0.7V (硅管、 锗管约 0.3V ) ,

( 10 )主机 10通过现场通信总线, 通知此从机 20退出 "槽位识别" 状态, 该从机 20关闭输出电压到 SVB总线 30。

( 11 )循环模块 15如发现有上报的检测 SVB总线 30电压值为 0的从机 20, 则通过现场通信总线,指定电压值为 0的任一个 ID号的从机 20进入 "槽位识别 " 状态。 并返回通过检测模块 13检测 SVB总线的电压值, 同时接收各从机 20检 测并上报的电压值和 ID, 直到所有从机 20上报的检测 SVB总线 30的电压值都 不为 0。

SVB电压值, 即可得到各个从机 20的槽位, 当槽位号根据与主机 10距离远近 依次递减时, 第一个从机 20检测 SVB电压值应该和主机 10检测至的电压值相 同; 第二个从机 20检测 SVB电压值依次下降约 0.7V (硅管、 锗管约 0.3V ) , 依次类推。

( 13 )获取地址模块 14的设置单元 143根据各个槽位号,设置各个从机 20 地址和槽位号一致, 以实现地址的顺序识别。

本实施例中, 应用二极管单向导电、 正向压降的特点, 通过将各个二极 管串连, 巧妙实现了槽位的顺序识别, 解决了槽位和地址不匹配的现象, 方 便现场维护和检修,彻底解决了从机 20自动竟争导致的地址随意变更的缺陷。 比较通过拨码开关等硬件配置方式实现地址设 置, 本实施例实现全自动化设 置, 不需要人工参与, 避免了人工疏忽导致的地址重复、 地址 /槽位不匹配等 常见问题。

优选地, 本实施例成本低、 实现容易。 总线系统中, 只需要增加一对 SVB 总线 30, 可使用标准的 RJ45、 RJ11等连接器, 成本低廉, 从机 20仅仅在背板 上增加一或多个二极管 (如常用的 IN4002 ) 、 一个可控器件和一个 SVB总线 30的电压检测电路,可控器件可以用常用的继 器、 晶闸管、 BJT、 MOSFET、 IGBT等, 而电压检测电路由于从机 20通常都有 A/D功能, 因此, 只需复用该 A/D即可。

优选地, 本实施例适用性强。 如每个 SVB总线 30上的二极管典型压降为 0.7V (硅管) , 当从机 20为整流器时, 其正常输出电压为 53.5V。 因此, 可以 适用于 53.5/0.7=76个整流器组成的超大容量通信直流电 系统中, 适用性非 常广。 如果提高整流器输出电压到均充点 56.4V、 或者选择正向压降较低的其 他二极管 (锗管 0.3V ) , 则能够支持更大容量(更多节点) 的电源系统, 扩 展性好。

下面以整流器为例对上述实施例作进一步说明 :

某公司生产某种型号的通信基站电源系统, 广泛应用于全国各个电信设 备制造商和运营商。该电源系统由交流配电、 直流配电、最多 40个整流器(作 为从机 20 )和一个监控单元(作为主机 10 )组成。 整流器由于功率密度的要 求、 成本压力、 即插即用的要求, 除了告警指示灯和 CAN接口外, 没有其他 人机交互设备。 因此, 需要监控单元通过 CAN总线和这 40个整流器通讯, 通 过地址来区分和识别各个整流器, 以便监控单元轮询获取各个整流器的数据 和告警信息, 并且控制整流器的运行状态。

第一步、 硬件实现:

选择线缆。 由于主从机间釆用 CAN总线, 因此只需要一对线缆即可, 再 增加一对线缆作为 SVB总线 30。 通讯电缆可以釆用至少 4线制 (2对)双绞线 缆, 比如通用的 10/100BASE-以太网线缆 T568A/B (该线缆内包含 4对色标双 绞线, 还可以扩充备用) , 连接器选用配套的 RJ45。

网络连接。 为了连接监控单元和各个整流器, 以及分配各个整流器地址, 需要通过以太网线缆顺序串连。 在配线上, 保证监控单元位于一端, 其他各 个整流器依次串连, 最远槽位的整流器位于网线的末端。 各个整流器插入的 背板, 需要有两个 RJ45连接器, 其中 CAN总线的两线(CAN-H、 CAN-L )在 背板直接短路。 SVB的一线 (SVB-G ) 直接短路, 另外一线(SVB-V ) 间串 连一个二极管 (如常用的 IN4002 ) 。 监控单元背板上也需要类似变更, 但可 以省去二极管。

整改整流器电路。 各个整流器本身都有 53.5V直流电压输出, 增加一个继 电器以控制使能输出到 SVB-V线上。 同时, 增加一个 A/D检测电路, 以检测 SVB-V线上的电压幅值。该 A/D检测电路可以是先通过运放进行调理后送到 整 流器自带的 A/D检测电路中。

整改监控单元。 监控单元增加一个 A/D检测电路, 以检测 SVB-V线上的 带的 A/D检测电路中,借用调理电路的电阻构成 SVB回路。选择合适调理电路 的电阻, 保证在全电压范围内所有二极管能导通。 假设该二极管完全导通电 流最小 5mA, 系统配置整流器的数量最大 40 , 则该电阻小于 (53.5-0.7 x 39)/5 , 即 5.2ΚΩ即可。 当然电阻选择越小, 二极管上流经的电流会越大, 但损耗系 统较多的功耗, 因此, 建议尽量选择该电阻值的上限, 如 5ΚΩ即可。

监控单元或者整流器识别 CAN总线上有整流器地址冲突, 或有新整流器 投入, 则监控单元通过如下方式重新设置整流器地址 :

( 1 )监控单元通过 CAN总线发出指令,要求所有整流器上报唯一标 识 ID;

( 2 )所有整流器通过 CAN总线回应监控主机 10对应的 ID;

( 3 )监控单元接收到所有整流器回应的 ID,据此获知当前网络中整流器 的数量;

( 4 )监控单元通过 CAN总线发出指令, 指定任一 ID号的整流器进入 "槽 位识别" 状态;

( 5 )此 ID的整流器进入 "槽位识别" 状态, 输出 53.5V的电压值到 SVB 总线 30上;

( 6 )所有整流器通过 A/D检测电路 SVB总线 30上的电压值;

( 7 )监控单元也通过 A/D检测电路 SVB上的电压值;

( 8 )所有整流器通过 CAN总线上报检测到的 SVB上的电压值, 上报给监 控单元;

( 9 )由于各个槽位的 SVB总线 30上的电压值不同, 因此监控单元能够判 断出各个整流器的槽位号;

( 10 )监控单元通过 CAN总线发出指令, 通知此 ID整流器退出 "槽位识 另 , 状态, 该整流器关闭输出电压到 SVB总线 30 , 此时的 SVB总线 30上电压 为 0;

( 11 )监控单元处理所有整流器上报的 SVB总线 30的电压值, 如发现有 电压值为 0, 通过 CAN总线发出指令, 指定电压值非 0的另外一个不同 ID的整 流器进入槽位识别状态; 并返回步骤(5 )直到所有整流器上报的检测 SVB总 线 30的电压值均不为 0;

( 12 )监控单元根据各个 ID的整流器上报的检测 SVB总线 30的电压值, 即可得到各个整流器的槽位号, 如第一个整流器检测 SVB总线 30的电压值应 该和监控单元检测的 SVB总线 30的电压值相同, 第二个整流器检测的 SVB总 线 30的电压值依次下降约 0.7V (硅管、 锗管约 0.3V ) , 依次类推;

( 13 )监控单元根据各个槽位号, 设置各个整流器从机 20的地址和槽位 号一致, 以实现地址的顺序设置和识别。 以上所述仅为本发明的优选实施例, 并非因此限制本发明的专利范围, 凡是利用本发明说明书及附图内容所作的等效 结构或等效流程变换, 或直接 或间接运用在其他相关的技术领域,均同理包 括在本发明的专利保护范围内。

工业实用性 本发明实施例提出的一种主从式现场总线中从 机地址顺序识别的方法及 系统, 解决了在现场总线网络中, 从机由于地址丟失导致总线冲突或者标识 错误的难题, 在仅增加两根传输信号线和少量硬件的情况下 , 完成各个从机 地址的重新设置和识别, 保证了现场总线的正常通讯。 另外, 还可以实现从 机自由扩展, 投入时自动识别, 提高监控系统的智能化程度。