地址自动分配的串行总线通信方法与系统的制作方法
【技术领域】
[0001]本发明涉及通信技术,尤其涉及一种地址自动分配的串行总线通信方法与系统。
【背景技术】
[0002]远程监控系统被广泛的应用于各种场合中。例如,在大型的机房内,就需要对机架上的每个服务器单元进行监控。
[0003]—般来说,远程监控系统都会包括一个主机以及多个从机,其中主机用于数据处理与上报,而从机主要负责数据采集。在主机与从机的通信设计中一般是采用串行通信总线。而串行通信总线要求每个从机具有唯一的总线地址。
【发明内容】
[0004]有鉴于此,有必要提供一种地址自动分配的串行总线通信方法与系统,其可以高效的实现串行通信总线通信系统中从机总线地址的分配过程。
[0005]—种地址自动分配的串行总线通信方法,应用于一个串行总线通信系统中,所述串行通信系统包括:一个主机以及多个分别经由通信总线与所述主机相连的从机,所述主机与所述从机还通过至少一条地址线相连,所述方法包括:
[0006]所述主机在启动后监听多个I/O端口输入的信号,其中监听的I/O端口数不小于所述从机的总数;
[0007]所述从机在启动后通过所述地址线连接所述主机监听的多个I/O端口中的一个并向连接的端口发送一个连接信号,并侦听所述主机发送的地址信号;
[0008]所述主机在检测到连接信号后获取分配的地址,将地址返回给所述从机,并延时预定时间后通过所述通信总线向分配的地址发送握手信号;
[0009]所述从机接收到所述主机返回的地址后初始化所述通信总线并开始侦听所述主机发送的握手信号,并在接收到所述主机发送的握手信号后返回所述从机的身份验证信息;
[0010]所述主机根据所述身份验证信息校验所述从机的身份,若身份校验通过则完成通信地址的分配。
[0011 ]在一个实施例中,上述方法还包括:若所述从机预定时间内未侦听到所述主机发送的地址信号或者所述从机预定时间内未接收主机发送的轮询请求则所述从机再次向所述主机发送连接信号。
[0012]在一个实施例中,上述方法还包括:所述主机通过所述串行通信总线定时向所述从机发送轮询请求以获取所述从机返回的数据,若发出轮询请求后超出预定时间未接收到所述从机返回的数据则所述主机重新侦听所述连接信号。
[0013]在一个实施例中,所述连接信号为一个低-高-低电平信号,所述主机监测到电平信号下降沿时即检测到所述连接信号。
[0014]在一个实施例中,上述方法还包括:所述从机缓存每一条采集的数据与最近一次上报的数据,将当前采集的数据与最近一次上报的数据进行比较,若数据的变化幅度大于或等于设定阈值,则设置当前采集的数据的变化索引为最近一次上报的数据的变化索引值+1,并将最近一次上报的数据更新为当前采集的数据;否则忽略当前采集的数据;
[0015]所述主机在发送轮询请求时在所述轮询请求中包括所述从机中最近一次上报的数据的变化索引;
[0016]所述从机在接收到所述主机发送的轮询请求后根据所述主机发送的变化索引获取对应的待上报数据,待上报数据不为空时将待上报数据发送给所述主机。
[0017]在一个实施例中,所述从机的根据所述主机发送的变化索引获取对应的待上报数据包括:获取所有变化索引值大于所述主机发送的变化索引的数据作为所述待上报的数据。
[0018]在一个实施例中,若所述待上报数据为空,则所述从机将最近一次上报的数据的变化索引发送给所述主机。
[0019]在一个实施例中,上述方法还包括:在完成通信地址的分配后所述主机继续侦听与对应的从机地址线连接的I/O端口;
[0020]所述从机在产生新的变化索引后调用所述地址线发送数据更新通知信号给所述主机;
[0021]所述主机在接收到所述数据通知信号后立即通过所述串行通信总线向所述从机发送数据轮询请求。
[0022]在一个实施例中,所述数据更新通知信号为一个低-高-低电平信号,所述主机在完成通信地址的分配后监测到电平信号下降沿时即检测到所述数据更新通知信号。
[0023]—种基于串行通信总线的通信系统,包括:一个主机以及多个分别经由通信总线与所述主机相连的从机,所述主机与所述从机还通过至少一条地址线相连;
[0024]所述主机在启动后监听多个I/O端口输入的信号,其中监听的I/O端口数不小于所述从机的总数;
[0025]所述从机在启动后通过所述地址线连接所述主机监听的多个I/O端口中的一个并向连接的端口发送一个连接信号,并侦听所述主机发送的地址信号;
[0026]所述主机在检测到连接信号后获取分配的地址,将地址返回给所述从机,并延时预定时间后通过所述通信总线向分配的地址发送握手信号;
[0027]所述从机接收到所述主机返回的地址后初始化所述通信总线并开始侦听所述主机发送的握手信号,并在接收到所述主机发送的握手信号后返回所述从机的身份验证信息;
[0028]所述主机根据所述身份验证信息校验所述从机的身份,若身份校验通过则完成通信地址的分配。
[0029]根据上述的方法与系统,采用地址线实现串行通信总线地址的分配,高效可靠,可以避免使用拨码开关或软件界面对从机进行地址设置,降低了串行通信系统安装维护的工作量,提长工作效率。而且,通过在同一根线缆中同时实现串行通信总线、地址线以及供电功能可以减少使用的线缆的数量,使串行通信总线的连线结构更加精简。
[0030]为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
【附图说明】
[0031]图1为本发明实施例提供的机架服务器信息采集系统的示意图。
[0032]图2为图1的信息采集系统中定位模块分配序号的流程图。
[0033]图3为本发明实施例提供的串行总线通信系统中主机给从机分配地址的流程图。
[0034]图4为本发明实施例提供的数据更新流程图。
[0035]图5为本发明实施例提供的主动通知数据更新流程图。
[0036]图6为本发明另一实施例提供的机架服务器信息采集系统的示意图。
[0037]图7为本发明实施例提供的采用服务器信息方法的流程图。
[0038]图8为本发明实施例提供的服务器信息采集器的模块图。
[0039]图9为本发明另一实施例提供的服务器信息采集器的模块图。
[0040]图10为本发明再一实施例提供的服务器信息采集器的模块图。
【具体实施方式】
[0041]为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的【具体实施方式】、结构、特征及其功效,详细说明如后。
[0042]参阅图1,其为本发明实施例提供的机架服务器信息采集系统100的示意图。如图1所示,机架服务器信息采集系统100包括:机架控制器10以及多个定位模块20。除了定位模块20外,机架控制器10还可以与其他设备,例如电力分配单元(Power Distributing Unit,PDU)50、门禁设备(图未示)以及其他智能设备相连。
[0043]机架控制器10与定位模块20以及其他各种模块之间通过8芯线缆连接,同时提供供电与通信功能。
[0044]在一个实施例中,8芯线缆的线序定义如下:
[0045]P1:电源+5V
[0046]?2:接地_
[0047]P3:保留
[0048]P4:RS485A+
[0049]P5:RS485B-
[0050]P6:保留
[0051]P7:Unit Enable(地址线)
[0052]P8:Data Enable(数据控制)
[0053]可以理解的是,8芯线缆的线序定义并不受上述限制,本领域普通技术人员可以根据具体的需要进行调整。
[0054]参阅图1,每个定位模块20还包括上端通信接口201与下端通信接口 202,对于每个20定位模块,若其具有上游定位模块20,则其上端通信接口 201与其上游定位模块20的下端通信接口 202连接,若其具有下游定位模块20,则其下端通信接口 202与所述下游定位模块20的上端通信接口 201连接。通过这种方式,所有的定位模块20被串联在一起,而位于队首的定位模块20可直接与机架控制器10相连接。定位模块20之间也可以采用如上述的8芯线缆进行连接,在8芯线缆的接口上可以实现不同的通信接口,例如RS232串行通信接口。
[0055]每个定位模块20向其上游定位模块20请求分配模块序号,还根据其下游定位模块20的请求给其下游定位模块20分配模块序号。
[0056]具体地,参阅图2,分配模块序号的流程包括以下步骤:
[0057]步骤S31,定位模块20启动其下端通信接口202进行侦听(服务端模式),并启动其上端通信接口 201进行通信连接(客户端模式)。
当前第1页
1 
2 
3 
4