著录项信息
专利名称 | 多传感器复用总线系统及方法 |
申请号 | CN201310693449.6 | 申请日期 | 2013-12-17 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2014-03-26 | 公开/公告号 | CN103684950A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L12/403 | IPC分类号 | H;0;4;L;1;2;/;4;0;3查看分类表>
|
申请人 | 唐山轨道客车有限责任公司 | 申请人地址 | 河北省唐山市丰润区厂前路3号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 中车唐山机车车辆有限公司 | 当前权利人 | 中车唐山机车车辆有限公司 |
发明人 | 刘宗祝;张涛;张雷;吴宁;李小军;张莉 |
代理机构 | 北京同立钧成知识产权代理有限公司 | 代理人 | 刘芳 |
摘要
本发明公开了一种多传感器复用总线系统及方法,其中系统包括:多个传感器、主设备、通信总线;各传感器通过通信总线与主设备连接;主设备,用于查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,配置表中包含传感器的设备标识与指令消息有效性之间的对应关系;传感器,用于采集数据,并根据主设备发送的指令消息向主设备返回响应消息。本发明通过确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,通过这种方式仅对配置表中指令消息有效的传感器发送指令消息,从而节约了总线带宽、提高了总线利用率。
1.一种多传感器复用总线系统,其特征在于,包括:多个传感器、主设备、通信总线;
各传感器通过通信总线与所述主设备连接;
所述主设备,用于查询配置表,确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息,所述配置表中包含传感器的设备标识与指令消息有效性之间的对应关系;
所述传感器,用于采集数据,并根据所述主设备发送的指令消息向所述主设备返回响应消息;
所述主设备根据所述各传感器的工作情况,预先在配置表中设置传感器的设备标识与指令消息有效性之间的对应关系;
所述指令消息为查询传感器状态请求消息,所述主设备,具体用于:
用于查询配置表,确定所述配置表中查询传感器状态请求消息有效的设备标识,并向查询传感器状态请求消息有效的设备标识对应的传感器发送所述查询传感器状态请求消息;
相应的,所述传感器,具体用于向所述主设备返回传感器状态信息;
或者,
所述指令消息为获取传感器数据请求消息,所述主设备,具体用于查询配置表,确定所述配置表中获取传感器数据请求消息有效的设备标识,并向获取传感器数据请求消息有效的设备标识对应的传感器发送所述获取传感器数据请求消息;
相应的,所述传感器,具体用于向所述主设备返回传感器数据;
或者,
所述配置表还包括获取传感器数据信息的总次数,所述指令消息为获取传感器数据请求消息,所述主设备,具体用于查询配置表,确定所述配置表中获取传感器数据请求消息有效的设备标识,并根据所述获取传感器数据信息的总次数向获取传感器数据请求消息有效的设备标识对应的传感器发送所述获取传感器数据请求消息;
相应的,所述传感器,具体用于向所述主设备返回传感器数据;
或者,
所述指令消息为查询传感器状态请求消息和获取传感器数据请求消息,所述主设备,具体用于查询配置表,确定所述配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息和获取传感器数据请求消息;
相应的,所述传感器,具体用于向所述主设备返回传感器状态信息和传感器数据;
或者,
所述配置表还包括获取传感器数据信息的总次数,所述指令消息为查询传感器状态请求消息和获取传感器数据请求消息,所述主设备,具体用于查询配置表,确定所述配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息,且根据所述获取传感器数据信息的总次数向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送获取传感器数据请求消息;
相应的,所述传感器,具体用于向所述主设备返回传感器状态信息,且向所述主设备返回传感器数据。
2.根据权利要求1所述的系统,其特征在于,所述主设备,具体用于通过查询配置表,确定所述配置表中各设备标识是否存在对应的指令消息,并向存在指令消息的设备标识对应的传感器发送所述指令消息;
或者,
具体用于通过查询配置表,确定所述配置表中各设备标识对应的指令消息是否标记为有效,并向标记为有效的指令消息的设备标识对应的传感器发送所述指令消息。
3.根据权利要求1所述的系统,其特征在于,所述配置表中还包含指令发送周期;
所述主设备,具体用于根据所述指令发送周期向指令消息有效的设备标识对应的传感器发送所述指令消息。
4.根据权利要求1所述的系统,其特征在于,
所述主设备,还用于在所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息之后,或者,在所述主设备查询配置表,确定所述配置表中指令消息有效的设备标识之前,确定是否存在第二指令消息,并向存在第二指令消息的设备标识对应的传感器发送所述第二指令消息;所述第二指令消息包括传感器的设备标识、配置传感器信息或查询传感器状态信息或获取传感器数据信息;
相应的,
所述传感器,具体用于根据所述主设备发送的第二指令消息向所述主设备返回响应消息。
5.一种多传感器复用方法,其特征在于,包括:
主设备查询配置表,确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息,所述配置表中包含传感器的设备标识与指令消息有效性之间的对应关系;
传感器根据所述主设备发送的指令消息向所述主设备返回响应消息;
其中,所述主设备根据所述各传感器的工作情况,预先在配置表中设置传感器的设备标识与指令消息有效性之间的对应关系;
所述指令消息为查询传感器状态请求消息;
所述确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
确定所述配置表中查询传感器状态请求消息有效的设备标识,并向查询传感器状态请求消息有效的设备标识对应的传感器发送所述查询传感器状态请求消息;
相应的,所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息包括:
所述传感器向所述主设备返回传感器状态信息;
或者,
所述指令消息为获取传感器数据请求消息;
所述确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
确定所述配置表中获取传感器数据请求消息有效的设备标识,并向获取传感器数据请求消息有效的设备标识对应的传感器发送所述获取传感器数据请求消息;
相应的,所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息包括:
所述传感器向所述主设备返回传感器数据;
或者,
所述配置表还包括获取传感器数据信息的总次数,所述指令消息为获取传感器数据请求消息;
所述确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
确定所述配置表中获取传感器数据请求消息有效的设备标识,并根据所述获取传感器数据信息的总次数向获取传感器数据请求消息有效的设备标识对应的传感器发送所述获取传感器数据请求消息;
相应的,所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息包括:
所述传感器向所述主设备返回传感器数据;
或者,
所述指令消息为查询传感器状态请求消息和获取传感器数据请求消息;
所述确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
确定所述配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息和获取传感器数据请求消息;
相应的,所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息包括:
所述传感器向所述主设备返回传感器状态信息和传感器数据;
或者,
所述配置表还包括获取传感器数据信息的总次数,所述指令消息为查询传感器状态请求消息和获取传感器数据请求消息;
所述确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
确定所述配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息、并根据所述获取传感器数据信息的总次数向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送获取传感器数据请求消息;
相应的,所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息包括:
所述传感器向所述主设备返回传感器状态信息、向所述主设备返回传感器数据。
6.根据权利要求5所述的方法,其特征在于,所述确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
确定所述配置表中各设备标识是否存在对应的指令消息,并向存在指令消息的设备标识对应的传感器发送所述指令消息;
或者,
确定所述配置表中各设备标识对应的指令消息是否标记为有效,并向标记为有效的指令消息的设备标识对应的传感器发送所述指令消息。
7.根据权利要求5所述的方法,其特征在于,所述配置表中还包含指令发送周期;
所述向指令消息有效的设备标识对应的传感器发送所述指令消息包括:
根据所述指令发送周期向指令消息有效的设备标识对应的传感器发送所述指令消息。
8.根据权利要求5所述的方法,其特征在于,在所述传感器根据所述主设备发送的指令消息向所述主设备返回响应消息之后,或者,在所述主设备查询配置表,确定所述配置表中指令消息有效的设备标识之前还包括:
所述主设备确定是否存在第二指令消息,并向存在第二指令消息的设备标识对应的传感器发送所述第二指令消息;所述第二指令消息包括传感器的设备标识、配置传感器信息或查询传感器状态信息或获取传感器数据信息;
所述传感器根据所述主设备发送的第二指令消息向所述主设备返回响应消息。
多传感器复用总线系统及方法\n技术领域\n[0001] 本发明涉及传感器通信技术领域,尤其涉及一种多传感器复用总线系统及方法。\n背景技术\n[0002] 在某些特定的工业场合,比如铁路机车上,用户从施工复杂度、成本、系统稳定性等方面考虑,将尽可能多的传感器挂在一条总线上,由于传感器越多对传输总线的带宽要求也就越高,这就对传感器采集系统的设计提出了更高的要求。\n[0003] 目前,通常将主设备和多个传感器通过通信总线连接,其中,主设备和多个传感器能够通过通信总线进行双向通信,从而主设备可以通过通信总线依次执行与各个传感器的数据交换。由于这种方式对于传感器没有数据的情况,依然执行与该传感器操作从而浪费了总线带宽、降低了总线利用率。\n发明内容\n[0004] 本发明提供一种多传感器复用总线系统及方法,用以解决现有技术中主设备轮询传感器的方式,而当传感器没有数据时仍然执行与该传感器的操作从而浪费了总线带宽、降低了总线利用率的问题。\n[0005] 本发明提供一种多传感器复用总线系统,包括:多个传感器、主设备、通信总线;\n[0006] 各传感器通过通信总线与所述主设备连接;\n[0007] 所述主设备,用于查询配置表,确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息,所述配置表中包含传感器的设备标识与指令消息有效性之间的对应关系;\n[0008] 所述传感器,用于采集数据,并根据所述主设备发送的指令消息向所述主设备返回响应消息。\n[0009] 本发明还提供一种多传感器复用方法,包括:\n[0010] 主设备查询配置表,确定所述配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送所述指令消息,所述配置表中包含传感器的设备标识与指令消息有效性之间的对应关系;\n[0011] 传感器根据所述主设备发送的指令消息向所述主设备返回响应消息。\n[0012] 本发明通过查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,通过这种方式仅对配置表中指令消息有效的传感器发送指令消息,从而节约了总线带宽、提高了总线利用率。\n附图说明\n[0013] 图1为本发明提供的多传感器复用总线系统实施例结构示意图;\n[0014] 图2为本发明提供的多传感器复用方法实施例一流程示意图;\n[0015] 图3为本发明提供的多传感器复用方法施例二流程示意图。\n具体实施方式\n[0016] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0017] 实施例一\n[0018] 如图1所示,为本发明提供的多传感器复用总线系统实施例结构示意图,具体包括:多个传感器、主设备11、通信总线12;各传感器通过通信总线12与主设备11连接;主设备\n11,用于查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,配置表中包含传感器的设备标识与指令消息有效性之间的对应关系;传感器,用于采集数据,并根据主设备11发送的指令消息向主设备11返回响应消息。\n[0019] 具体来说,主设备11可以根据每个传感器的工作情况,在配置表中预先设置每个传感器设置对应的信息,包括设备标识、指令消息有效性等。例如\n[0020] 如下表1所示:\n[0021] 表1\n[0022]\n传感器标识 指令消息状态\n传感器1 指令消息1\n传感器2 \n…… ……\n传感器n 指令消息n\n[0023] 其中,指令消息是否有效可以通过如下两种方式来确定,第一种方式,查询配置表,如果配置表中存在各设备标识对应的指令消息,则认为该指令消息有效,否则,则认为该指令消息无效;如上表1中所示,可以看出传感器1和传感器n有对应的指令消息,因此指令消息1和指令消息n是有效的,而传感器2没有对应的指令消息则认为传感器2的指令消息无效;第二种方式,查询配置表,如果配置表中各设备标识对应的指令消息被标记为有效,则认为该指令消息有效,如果配置表中各设备标识对应的指令消息被标记为无效,则认为该指令消息无效。例如如下表2所示:将指令\n[0024] 表2\n[0025]\n传感器标识 指令消息状态\n传感器1 指令消息1=1\n传感器2 指令消息2=0\n…… ……\n传感器n 指令消息n=1\n[0026] 消息通过0和1来进行标记,如果指令消息标记为1,则认为该指令消息有效,如果指令消息标记为0,则认为该指令消息无效,如上表2中,可以看出传感器1对应的指令消息1和传感器n对应的指令消息n均被标记为1,因此指令消息1和指令消息n是有效的,而传感器\n2对应的指令消息2被标记为0则认为传感器2的指令消息无效,当然也可以用其他数字或字符来标记,只要能区分出有效和无效不同即可,这里不作具体限定。需说明的是,这里的主设备11可以通过一台计算机来实现或者采用CPU和FPGA逻辑电路来实现,这里不作具体限定。\n[0027] 主设备11在和各传感器进行通信时,首先查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息。传感器主要用来采集数据,并根据主设备11发送的指令消息向主设备11返回响应消息。这里,需要说明的是,这里的传感器优选数字传感器。\n[0028] 通信总线12主要为主设备11和传感器之间提供通信通道,例如可以为RS232总线、RS485总线等,但不限于此。\n[0029] 另外,还可以在配置表中包含指令发送周期,主设备11根据指令发送周期向传感器发送指令。也就是说,例如设置传感器1的指令发送周期为5s,如果主设备11在11:00:00向传感器1发送了一次指令消息,那么在11:00:05之前即使主设备11查询到配置表中传感器1对应的指令消息有效,那么也不向传感器1发送指令消息。\n[0030] 本实施例主设备11可以根据每个传感器的工作情况,灵活配置每个传感器设置对应的信息,进而通过查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,通过这种方式通过灵活配置各传感器设置对应的信息,仅对配置表中指令消息有效的传感器发送指令消息,从而节约了总线带宽、提高了总线利用率。\n[0031] 另外,本实施例还可以在配置表中包含指令发送周期,可以灵活控制主设备11向各个传感器的指令发送频率,例如,可以对采样频率高的传感器设置一个较短的指令发送周期,而对于采样频率高的传感器设置一个较长的指令发送周期,这样可以根据每个传感器的工作状态灵活设置每个传感器的指令发送周期,进一步提高了总线利用率。\n[0032] 实施例二\n[0033] 参见图1所述的多传感器复用总线系统,主设备11可以根据每个传感器的工作情况,预先在配置表中设置每个传感器设置对应的信息,包括设备标识、指令消息有效性等,主设备11在和各传感器进行通信时,首先查询配置表,确定配置表中指令消息有效的设备标识,其中,指令消息可以包括查询传感器状态请求消息或获取传感器数据请求消息,或者同时包括查询传感器状态请求消息和获取传感器数据请求消息两种消息。因此,当指令消息所包含的消息不同时,主设备11向传感器发送指令消息也不同,因此传感器向主设备11返回响应消息的内容也不同。\n[0034] 具体来说,主要包括以下5种情况:\n[0035] 第一种情况:主设备11查询配置表,如果配置表中的指令消息为查询传感器状态请求消息,则确定查询传感器状态请求消息有效的设备标识,并向查询传感器状态请求消息有效的设备标识对应的传感器发送查询传感器状态请求消息;其中,确定传感器状态请求消息是否有效可以通过上述实施例一中所述的两种方式来实现。传感器向主设备11返回传感器状态信息。\n[0036] 这种情况主要是用来获取传感器的状态信息,例如传感器自身的属性信息以及所处的工作状态信息等,通过这些信息可以判断传感器是否处于正常工作状态信息等。另外需要说明的是,一般情况下传感器的状态都是比较稳定的,主设备11不需要在每次访问传感器时都查询传感器的状态信息,因此,为了提高总线利用率,可以在配置表中设置一个获取周期即查询传感器状态请求消息发送周期。\n[0037] 第二种情况:主设备11查询配置表,确定配置表中的指令消息为获取传感器数据请求消息,则确定获取传感器数据请求消息有效的设备标识,并向获取传感器数据请求消息有效的设备标识对应的传感器发送获取传感器数据请求消息;传感器向主设备11返回传感器数据。\n[0038] 这种情况主要是用来获取传感器采集的数据信息。另外也可以在配置表中设置一个获取传感器数据请求消息发送周期,这样可以灵活控制主设备11向各个传感器的获取传感器数据请求消息发送频率,例如,可以对采样频率高的传感器设置一个较短的获取传感器数据请求消息发送周期,而对于采样频率低的传感器设置一个较长的获取传感器数据请求消息发送周期,这样可以根据每个传感器的通信能力灵活设置每个传感器的获取传感器数据请求消息发送周期,进一步提高了总线利用率。\n[0039] 第三种情况:主设备11查询配置表,确定配置表中的指令消息为查询传感器状态请求消息和获取传感器数据请求消息,则确定配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息和获取传感器数据请求消息;传感器向所述主设备11返回传感器状态信息和传感器数据;\n[0040] 另外需要说明的是,主设备11依次向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识发送查询传感器状态请求消息和获取传感器数据请求消息,发送查询传感器状态请求消息和发送获取传感器数据请求消息的先后顺序不受限制。\n[0041] 第四种情况:主设备11查询配置表,如果配置表还包括获取传感器数据信息的总次数且对应的指令消息为获取传感器数据请求消息时,则确定配置表中获取传感器数据请求消息有效的设备标识,并根据获取传感器数据信息的总次数向获取传感器数据请求消息有效的设备标识对应的传感器发送获取传感器数据请求消息;传感器向主设备11返回传感器数据。\n[0042] 也就是说,如果配置表包括获取传感器数据信息的总次数且对应的指令消息为获取传感器数据请求消息,例如获取传感器数据信息的总次数为5,则主设备11向传感器发送一次获取传感器数据请求消息,则传感器向主设备11返回传感器数据,接着主设备11再次向传感器发送获取传感器数据请求消息,则传感器向主设备11再次返回传感器数据,采用同样的方式主设备11分5次向传感器发送获取传感器数据请求消息。这样分次获取传感器数据可以有效提高总线传输速率。\n[0043] 第五种情况:主设备11查询配置表,如果配置表包括获取传感器数据信息的总次数且指令消息为查询传感器状态请求消息和获取传感器数据请求消息,则确定配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息,且根据获取传感器数据信息的总次数向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送获取传感器数据请求消息;传感器向主设备11返回传感器状态信息,且向主设备11返回传感器数据。\n[0044] 也就是说,如果配置表包括获取传感器数据信息的总次数且指令消息为查询传感器状态请求消息和获取传感器数据请求消息,则主设备11向传感器发送查询传感器状态请求消息,并根据获取传感器数据信息的总次数向传感器发送获取传感器数据请求消息,具体发送方式参见上述第四种情况。\n[0045] 本实施例主设备11可以通过查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,通过这种方式通过灵活配置各传感器设置对应的信息,仅对配置表中指令消息有效的传感器发送指令消息,从而节约了总线带宽、提高了总线利用率。\n[0046] 另外,在主设备11查询配置表执行完与配置表中指令消息有效的传感器之间的通信之后即执行完上述根据配置表与传感器之间可能进行的所有通信之后,主设备11确定是否存在第二指令消息,并向存在第二指令消息的设备标识对应的传感器发送第二指令消息;传感器根据主设备11发送的第二指令消息向主设备11返回响应消息。\n[0047] 或者,在主设备11查询配置表执行与配置表中指令消息有效的传感器之间的通信之前,主设备11确定是否存在第二指令消息,并向存在第二指令消息的设备标识对应的传感器发送第二指令消息。其中,第二指令消息包括传感器的设备标识、配置传感器信息或查询传感器状态信息或获取传感器数据信息;传感器根据主设备11发送的第二指令消息向主设备11返回响应消息。\n[0048] 需要说明的是,配置传感器信息是指主设备11根据需要配置传感器信息即重新设置传感器的工作状态,例如修改传感器的指令消息的有效性或指令发送周期等等。\n[0049] 因此,主设备11通过发送第二指令消息可以根据带宽需求灵活配置各传感器的工作状态,可以提高了总线利用率。并且也可以根据第二指令消息查询传感器状态信息或获取传感器数据。\n[0050] 基于上述多传感器复用总线系统,本发明还提供一种多传感器复用总线系统设计方法,下面通过实施例对本发明中提出的多传感器复用总线系统设计方法进行详细说明。\n[0051] 实施例三\n[0052] 如图2所示,为本发明提供的多传感器复用方法流程示意图,具体包括以下步骤:\n[0053] S101、主设备查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息;\n[0054] 其中,配置表中包含传感器的设备标识与指令消息有效性之间的对应关系。另外,主设备可以根据配置表中各设备标识是否存在对应的指令消息,确定指令消息是否有效,如果配置表中存在各设备标识对应的指令消息,则认为该指令消息有效,否则,则认为该指令消息无效。或者,根据配置表中各设备标识对应的指令消息是否标记为有效确定指令消息是否有效,如果配置表中各设备标识对应的指令消息被标记为有效,则认为该指令消息有效,如果配置表中各设备标识对应的指令消息被标记为无效,则认为该指令消息无效。具体参见上述实施例一中的相关说明。\n[0055] S102、传感器根据主设备发送的指令消息向主设备返回响应消息。\n[0056] 另外,还可以在配置表中包含指令发送周期,主设备根据指令发送周期向传感器发送指令。也就是说,例如设置传感器1的指令发送周期为5s,如果主设备在11:00:00向传感器1发送了一次指令消息,那么在11:00:05之前即使主设备查询到配置表中传感器1对应的指令消息有效,那么也不向传感器1发送指令消息。\n[0057] 本实施例主设备可以根据每个传感器的工作情况,灵活配置每个传感器设置对应的信息,进而通过查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,通过这种方式通过灵活配置各传感器设置对应的信息,仅对配置表中指令消息有效的传感器发送指令消息,从而节约了总线带宽、提高了总线利用率。\n[0058] 另外,本实施例还可以在配置表中包含指令发送周期,可以灵活控制主设备向各个传感器的指令发送频率,例如,可以对采样频率高的传感器设置一个较短的指令发送周期,而对于采样频率高的传感器设置一个较长的指令发送周期,这样可以根据每个传感器的工作状态灵活设置每个传感器的指令发送周期,进一步提高了总线利用率。\n[0059] 实施例四\n[0060] 参见图2所述的多传感器复用方法,当指令消息所包含的消息不同时,主设备向传感器发送指令消息也不同,因此传感器向主设备返回响应消息的内容也不同。\n[0061] 具体来说,实施例三可以采用以下5种方法来实现:\n[0062] 第一种方法:\n[0063] S201、主设备查询配置表,如果配置表中的指令消息为查询传感器状态请求消息,则确定查询传感器状态请求消息有效的设备标识,并向查询传感器状态请求消息有效的设备标识对应的传感器发送查询传感器状态请求消息;\n[0064] 其中,确定传感器状态请求消息是否有效可以通过上述实施例一中所述的两种方式来实现。\n[0065] S202、传感器向主设备返回传感器状态信息。\n[0066] 这种情况主要是用来获取传感器的状态信息,例如传感器自身的属性信息以及所处的工作状态信息等,通过这些信息可以判断传感器是否处于正常工作状态信息等。另外需要说明的是,一般情况下传感器的状态都是比较稳定的,主设备不需要在每次访问传感器时都查询传感器的状态信息,因此,为了提高总线利用率,可以在配置表中设置一个获取周期即查询传感器状态请求消息发送周期。\n[0067] 第二种方法:\n[0068] S301、主设备查询配置表,确定配置表中的指令消息为获取传感器数据请求消息,则确定获取传感器数据请求消息有效的设备标识,并向获取传感器数据请求消息有效的设备标识对应的传感器发送获取传感器数据请求消息;\n[0069] S302、传感器向主设备返回传感器数据。\n[0070] 这种情况主要是用来获取传感器采集的数据信息。另外也可以在配置表中设置一个获取传感器数据请求消息发送周期,这样可以灵活控制主设备向各个传感器的获取传感器数据请求消息发送频率,例如,可以对采样频率高的传感器设置一个较短的获取传感器数据请求消息发送周期,而对于采样频率低的传感器设置一个较长的获取传感器数据请求消息发送周期,这样可以根据每个传感器的通信能力灵活设置每个传感器的获取传感器数据请求消息发送周期,进一步提高了总线利用率。\n[0071] 第三种方法:\n[0072] S401、主设备查询配置表,确定配置表中的指令消息为查询传感器状态请求消息和获取传感器数据请求消息,则确定配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息和获取传感器数据请求消息;\n[0073] S402、传感器向所述主设备返回传感器状态信息和传感器数据;\n[0074] 另外需要说明的是,主设备依次向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识发送查询传感器状态请求消息和获取传感器数据请求消息,发送查询传感器状态请求消息和发送获取传感器数据请求消息的先后顺序不受限制。\n[0075] 第四种方法:\n[0076] S501、主设备查询配置表,如果配置表还包括获取传感器数据信息的总次数且对应的指令消息为获取传感器数据请求消息时,则确定配置表中获取传感器数据请求消息有效的设备标识,并根据获取传感器数据信息的总次数向获取传感器数据请求消息有效的设备标识对应的传感器发送获取传感器数据请求消息;\n[0077] S502、传感器向主设备返回传感器数据。\n[0078] 也就是说,如果配置表包括获取传感器数据信息的总次数且对应的指令消息为获取传感器数据请求消息,例如获取传感器数据信息的总次数为5,则主设备向传感器发送一次获取传感器数据请求消息,则传感器向主设备返回传感器数据,接着主设备再次向传感器发送获取传感器数据请求消息,则传感器向主设备再次返回传感器数据,采用同样的方式主设备分5次向传感器发送获取传感器数据请求消息。这样分次获取传感器数据可以有效提高总线传输速率。\n[0079] 第五种方法:\n[0080] S601、主设备查询配置表,如果配置表包括获取传感器数据信息的总次数且指令消息为查询传感器状态请求消息和获取传感器数据请求消息,则确定配置表中查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识,并向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送查询传感器状态请求消息,且根据获取传感器数据信息的总次数向查询传感器状态请求消息和获取传感器数据请求消息均有效的设备标识对应的传感器发送获取传感器数据请求消息;\n[0081] S602、传感器向主设备返回传感器状态信息,且向主设备返回传感器数据。\n[0082] 也就是说,如果配置表包括获取传感器数据信息的总次数且指令消息为查询传感器状态请求消息和获取传感器数据请求消息,则主设备向传感器发送查询传感器状态请求消息,并根据获取传感器数据信息的总次数向传感器发送获取传感器数据请求消息,具体发送方式参见上述第四种情况。\n[0083] 本实施例主设备可以通过查询配置表,确定配置表中指令消息有效的设备标识,并向指令消息有效的设备标识对应的传感器发送指令消息,通过这种方式通过灵活配置各传感器设置对应的信息,仅对配置表中指令消息有效的传感器发送指令消息,从而节约了总线带宽、提高了总线利用率。\n[0084] 另外,在主设备查询配置表执行完与配置表中指令消息有效的传感器之间的通信之后即执行完上述根据配置表与传感器之间可能进行的所有通信之后,或者,在主设备查询配置表执行与配置表中指令消息有效的传感器之间的通信之前,还可以包括以下步骤:\n[0085] S701、主设备确定是否存在第二指令消息,并向存在第二指令消息的设备标识对应的传感器发送第二指令消息;\n[0086] 其中,第二指令消息包括传感器的设备标识、配置传感器信息或查询传感器状态信息或获取传感器数据信息。\n[0087] 需要说明的是,配置传感器信息是指主设备根据需要配置传感器信息即重新设置传感器的工作状态,例如修改传感器的指令消息的有效性或指令发送周期等等。\n[0088] S702、传感器向主设备返回传感器状态信息,且向主设备返回传感器数据。\n[0089] 因此,主设备通过发送第二指令消息可以根据带宽需求灵活配置各传感器的工作状态,可以提高了总线利用率。并且也可以根据第二指令消息查询传感器状态信息或获取传感器数据。\n[0090] 下面举一具体实施例来详细说明本发明提供的多传感器复用方法。\n[0091] 实施例五\n[0092] 如图3所示,为本发明提供的一种多传感器复用方法实施例二流程示意图,具体包括如下步骤:\n[0093] S801、主设备预先设置配置表;\n[0094] 主设备根据每个传感器的工作情况,预先设置一个配置表,其中配置表中包含每个传感器设置对应的信息,包括设备标识、指令消息有效性等,本实施例设置的配置表如下表3所示\n[0095] 表3\n[0096]\n传感器标识 指令消息sd_en 参数sd_share 指令消息ss_en\n传感器1 sd_en sd_share ss_en\n传感器2 sd_en sd_share ss_en\n…… …… …… ……\n传感器16 sd_en sd_share ss_en\n[0097] 其中,传感器标识可以是传感器的逻辑标识;主设备发送的命令中通过逻辑标识来区分各个传感器;\n[0098] 指令消息sd_en为获取传感器数据信息指令,可以设为高电平有效;\n[0099] 参数sd_share为每个传感器周期执行获取传感器数据信息指令的总次数,有效值为0~15,表示在一个传感器周期内执行1~16次获取传感器数据信息指令;在指令消息sd_en无效时,sd_share没有意义。通过参数sd_share的设置,可以灵活调节每个传感器占用的总线带宽;比如一个高采样率的传感器,其sd_share值肯定要高于低采样率的传感器。\n[0100] 指令消息ss_en为查询传感器状态信息指令,可以设为高电平有效;\n[0101] S802、主设备查询配置表;\n[0102] 在多传感器复用总线系统上电工作后,主设备开始查询配置表,另外,还可以在系统内部设置一个计数器,如果系统一共有16个传感器,那么计数器值从0~15循环。\n[0103] S803、判断指令消息sd_en是否有效;\n[0104] 主设备开始读取配置表中的数据,例如,主设备读取传感器1的数据,则主设备根据配置表判断指令消息sd_en是否有效,如果传感器1的指令消息sd_en有效,则执行步骤S803,如果传感器1指令消息sd_en无效则执行步骤S808。需要说明的是,下面所执行的操作都是针对传感器1的操作。\n[0105] S804、判断share_local是否为0;\n[0106] 其中,share_local的初始值设为sd_share,这里设为传感器1对应的sd_share,主设备向传感器1发送一次指令消息sd_en,则share_local的值就减去一,直到减为0为止。如果share_local为0,则主设备结束向传感器1发送指令消息sd_en,则执行步骤S808。如果share_local不为0,则执行步骤S805。另外,share_local可以采用计数器来实现。\n[0107] S805、生成指令消息sd_en;\n[0108] S806、发送指令消息sd_en;\n[0109] S807、接收传感器返回的响应消息,并且share_local=share_local-1;\n[0110] 主设备向传感器1发送指令消息sd_en之后,传感器1向主设备返回采集的数据,主设备接收传感器返回的数据信息之后,令share_local=share_local-1。或者,传感器发生异常,主设备在预设时间内没有接收到传感器返回的数据信息,则依然令share_local=share_local-1。\n[0111] S808、判断指令消息ss_en是否有效;\n[0112] 主设备继续查看配置表中传感器1的指令消息ss_en是否有效,如果指令消息ss_en有效,则执行步骤S809;如果指令消息ss_en无效,则执行步骤S812。\n[0113] 另外,还可以在配置表中设置一个参数ss_timer,用于触发传感器状态查询命令;\n在实际工作过程中,传感器的状态都是比较稳定的,主设备不需要在每次访问传感器时都查询传感器的状态信息,因此,通过设置参数ss_timer,可以灵活控制每个传感器指令消息ss_en的发送周期;比如设置参数ss_timer为100,那么每100个内部时间单位就触发一指令消息ss_en的操作;\n[0114] S809、生成指令消息ss_en;\n[0115] S810、发送指令消息ss_en;\n[0116] S811、接收传感器返回的响应消息;\n[0117] 主设备向传感器1发送指令消息ss_en之后,传感器1向主设备返回传感器状态信息,主设备接收传感器返回的状态信息信息之后,执行步骤S812。或者,传感器发生异常,主设备在预设时间内没有接收到传感器返回的数据信息,则依然执行步骤S812。\n[0118] S812、判断第二指令消息是否存在;\n[0119] 其中,第二指令消息包含传感器的设备标识、配置传感器信息或查询传感器状态信息或获取传感器数据信息。具体来说,第二指令可以采用下表4的格式来进行表示:\n[0120] 表4\n[0121]\n[0122] 传感器标识可以是传感器的逻辑标识;主设备发送的命令中通过逻辑标识来区分各个传感器;\n[0123] Cmd_type表示第二指令消息的类型,01表示配置传感器信息指令,02表示指令消息sd_en,03表示指令消息ss_en,00表示无定义;\n[0124] Payload只有在cmd_type为01时有意义,表示配置传感器信息指令的内容,即为传感器配置哪些信息,其他无效。\n[0125] 如果存在第二指令消息,则执行步骤S813;如果不存在第二指令消息,则执行步骤S802,继续查询配置表,执行对传感器2的操作。\n[0126] S813、生成第二指令消息;\n[0127] S814、发送第二指令消息;\n[0128] S815、接收传感器返回发的响应消息。\n[0129] 主设备向传感器1发送第二指令消息之后,传感器1根据第二指令信息向主设备返回相应的响应信息,主设备接收传感器返回的响应信息之后,执行步骤S802。或者,传感器发生异常,主设备在预设时间内没有接收到传感器返回的响应信息,则依然执行步骤S802。\n[0130] 本实施例采用查询配置表,根据配置轮询每个传感器的方式和传感器进行通信,并且可以根据每个传感器的工作情况,灵活配置每个传感器设置对应的信息,进而通过查询配置表,仅仅发送有效的指令消息,从而节约了总线带宽、提高了总线利用率。\n[0131] 需要说明的是:对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。\n[0132] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。\n[0133] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;\n而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
法律信息
- 2017-05-24
专利权人的姓名或者名称、地址的变更
专利权人由唐山轨道客车有限责任公司变更为中车唐山机车车辆有限公司
地址由063035 河北省唐山市丰润区厂前路3号变更为063035 河北省唐山市丰润区厂前路3号
- 2016-08-03
- 2014-04-23
实质审查的生效
IPC(主分类): H04L 12/403
专利申请号: 201310693449.6
申请日: 2013.12.17
- 2014-03-26
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2012-08-15
|
2011-02-12
| | |
2
| |
2009-11-18
|
2008-05-13
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |