本发明涉及控制领域,尤其涉及一种基于串口通讯的通讯连接方法方法、装置和存储介质。
背景技术:
为了满足不同的需求,空调系统中的控制器采用模块化设计,通过通讯组网,进行数据交互,如图1所示。该通讯网络中,设备比较多,按照传统的设计经验,采用can通讯为最优方案,目前没有能够替代can通讯的方案。
技术实现要素:
本发明的主要目的在于克服上述现有技术的缺陷,提供一种基于串口通讯的通讯连接方法、装置和存储介质,以解决现有技术中没有能够替代can通讯的方案的问题。
本发明一方面提供了一种基于串口通讯的通讯连接方法,所属通讯网络中包括两个以上设备系统,每个所述设备系统中包括两个以上不同类型的设备;每个所述设备系统中所述两个以上不同类型的设备的设备地址相同;所述通讯网络中的所有设备连接在一条通讯总线上;每个所述设备系统中所包括的设备的设备类型相同;所述通讯网络中的设备基于设备地址进行通信;两个所述设备系统之间不进行通信;所述通讯连接方法,包括:在所属设备上电后,获取所属设备自身的设备地址;所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备;向与所属设备的设备地址相同的设备发送数据帧;所述数据帧中携带有所属设备的设备类型;判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧;若接收到所述应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
可选地,还包括:持续预设时间判断通讯总线上是否有发送给所属设备的数据;若判断没有发送给所属设备的数据,则确定出现通讯故障;若判断有发送给所属设备的数据,则判断所述数据的数据来源;根据所述数据来源确定所属设备与其他设备的通讯连接是否成功。
可选地,根据所述数据来源确定所属设备与其他设备的通讯连接是否成功,包括:若所述数据来源于与所属设备的设备类型相同的设备,则确定出现通讯故障;若所述数据来源于与所属设备的设备类型不同的设备,则确定与数据来源设备的通讯连接成功。
可选地,所述通讯网络包括空调系统通讯网络;两个以上设备系统中每个所述设备系统包括一个显示板和一个内机主板。
本发明另一方面提供了一种基于串口通讯的通讯连接装置,所属通讯网络中包括两个以上设备系统,每个所述设备系统中包括两个以上不同类型的设备;每个所述设备系统中所述两个以上不同类型的设备的设备地址相同;所述通讯网络中的所有设备连接在一条通讯总线上;每个所述设备系统中所包括的设备的设备类型相同;所述通讯网络中的设备基于设备地址进行通信;两个所述设备系统之间不进行通信;所述通讯连接装置,包括:获取单元,用于在所属设备上电后,获取所属设备自身的设备地址;所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备;发送单元,用于向与所属设备的设备地址相同的设备发送数据帧;所述数据帧中携带有所属设备的设备类型;第一判断单元,用于判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧;第一确定单元,用于若接收到所述应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
可选地,还包括:第二判断单元,用于持续预设时间判断通讯总线上是否有发送给所属设备的数据;第二确定单元,用于若所述第二判断单元判断没有发送给所属设备的数据,则确定出现通讯故障;所述第二判断单元,还用于:若判断有发送给所属设备的数据,则判断所述数据的数据来源;所述第二确定单元,还用于:根据所述数据来源确定所属设备与其他设备的通讯连接是否成功。
可选地,所述第二确定单元,根据所述数据来源确定所属设备与其他设备的通讯连接是否成功,包括:若所述数据来源于与所属设备的设备类型相同的设备,则确定出现通讯故障;若所述数据来源于与所属设备的设备类型不同的设备,则确定与数据来源设备的通讯连接成功。
可选地,所述通讯网络包括空调系统通讯网络;两个以上设备系统中每个所述设备系统包括一个显示板和一个内机主板。
本发明又一方面提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。
根据本发明的技术方案,基于串口通讯,自定义协议通讯,能够解决串口通讯中多个设备之间数据交互握手的问题,可替代can通讯数据交互方式。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是以空调系统通讯网络拓扑图;
图2为以显示板为例的通讯节点网络图;
图3是本发明提供的基于串口通讯的通讯连接方法的一实施例的方法示意图;
图4是本发明提供的基于串口通讯的通讯连接方法的另一实施例的方法示意图;
图5是本发明提供的基于串口通讯的通讯连接方法的一具体实施例的方法示意图;
图6是本发明提供的基于串口通讯的通讯连接装置的一实施例的结构框图;
图7是本发明提供的基于串口通讯的通讯连接装置的另一实施例的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明提供一种基于串口通讯的通讯连接方法和装置。可以用于多个设备的通讯网络中。所属通讯网络中包括两个以上设备系统,每个所述设备系统中包括两个以上不同类型的设备;每个所述设备系统中的所述两个以上不同类型的设备的设备地址相同。所述通讯网络中的所有设备连接在一条通讯总线上;所述两个以上设备系统中各个设备系统中所包含的设备的设备类型相同。两个所述设备系统之间不进行数据交互。
例如,所述通信连接方法可以用于空调系统通信网络。所述空调系统通讯网络中包括;两个以上设备系统,每个所述设备系统包括一个显示板和一个内机主板;每个所述系统中的显示板和内机主板的设备地址相同。
图1是以空调系统为例的通讯网络拓扑图。如图1所示,以空调系统的通讯网络为例,通讯网络采用串口通讯。该通讯网络中有6个设备,其中显示板1、内机主板1构成系统1,显示板2、内机主板2构成系统2,各个设备之间的数据交互关系如下:
外机主板需要与显示板1、内机主板1、显示板2、内机主板2、调试器进行数据交互。显示板1需要与外机主板、内机主板1进行数据交互。内机主板1需要与外机主板、显示板1、调试器进行数据交互。显示板2需要与外机主板、内机主板1进行数据交互。内机主板2需要与外机主板、显示板1、调试器进行数据交互。调试器需要与外机主板、内机主板1、内机主板2进行数据交互。上述数据交互均采用串口通讯。
图2为以显示板为例的通讯节点网络图。如图2所示,显示板需要与外机主板、内机主板交互。本发明利用设备地址进行数据交互,例如,外机主板、调试器在该网络内唯一,地址固定为id1、id2;显示板、内机主板存在同类设备重复,需要设置地址,显示板通过操作窗口设置,内机主板通过拨码设置。
所述通讯网络中的设备基于设备地址进行通信。具体地,数据发送端设备发出数据时,指定接收端设备,并告诉接收端设备自己的地址信息。数据接收端设备,接收通讯总线上指定自己接收的数据,接收成功后,以同样的形式告诉对方数据接收成功(接收设备成功收到数据后,向数据发送端发一帧数据,告诉对方,数据已成功接收)。通讯网络内,如果设备类型唯一且设备地址固定,通讯没有问题;如果设备类型相同的设备有两个以上,就需要设地址,设备地址改变后,将会造成设备之间通讯失败。例如,参考图1所示的通讯网络图中,显示板、内机主板需要设置设备地址,以便保证自己在网络内的唯一性,这样显示板或内机主板在设备地址改变后,作为数据发送端设备时将不知道要将自己的数据发往何处。
根据本发明的技术方案,因任意两个所述设备系统之间不会有数据交互。例如,参考图1所示,系统1与系统2不会有数据交互,因此将显示板的设备地址与内机主板的设备地址设为相同的设备地址。
图3是本发明提供的基于串口通讯的通讯连接方法的一实施例的方法示意图。
如图3所示,根据本发明的一个实施例,所述通讯连接方法至少包括步骤s110、步骤s120、步骤s130、步骤s140和步骤s150。
步骤s110,在所属设备上电后,获取所属设备自身的设备地址。
所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备。
步骤s120,向与所属设备的设备地址相同的设备发送数据帧。
所述数据帧中携带有所属设备的设备类型。
步骤s130,判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧。
步骤s140,若接收到所述应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功。
步骤s150,若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
具体地,读取所属设备自身的设备地址,向与所属设备的设备地址相同的设备发送携带有所属设备的设备类型的数据帧。若接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
图4是本发明提供的基于串口通讯的通讯连接方法的另一实施例的方法示意图。
如图4所示,根据本发明的另一个实施例,所述通讯方法还包括步骤s160、步骤s170、步骤s180和步骤s190。
步骤s160,持续预设时间判断通讯总线上是否有发送给所属设备的数据。
步骤s170,若判断没有发送给所属设备的数据,则确定出现通讯故障。
例如,持续t秒判断总线是否有发送给所属设备的数据。如果没有,说明通讯线没有接好或者设备未接入网络,确定出现通讯故障。可选地,显示板报通讯故障。
步骤s180,若判断有发送给所属设备的数据,则判断所述数据的数据来源。
步骤s190,根据所述数据来源确定所属设备与其他设备的通讯连接是否成功。
具体地,可以通过设备地址或设备类型判断数据来源。例如,空调外机主板和调试器的设备地址固定,通过判断数据来源的设备地址,便可知道对方的设备类型,不需要进一步判断。如果为显示板或内机主板则可以判断数据中携带的设备类型。
其中,若所述数据来源于与所属设备的设备类型相同的设备,则确定出现通讯故障;若所述数据来源于与所属设备的设备类型不同的设备,则确定与数据来源设备的通讯连接成功。
由于同类型的设备处于不同的设备系统中,而两个设备系统之间不进行通信;并且,设备系统中的设备会向与自己设备地址相同数据类型不同的设备发送数据帧,因此,所属设备不会收到与自己同类型的设备发送的数据,如果数据来源中有同类型设备发给自己的数据,说明该设备的设备地址没有设置或者设置失败,需要重新设置,显示板报通讯故障。如果数据来源中,没有同类型设备发给自己的数据,说明设备地址设置成功,与数据来源设备的通讯连接成功,向该设备发送通讯成功的应答帧。
为清楚说明本发明技术方案,下面再以一个具体实施例对本发明提供的基于串口通讯的通讯连接方法的执行流程进行描述。
图5是本发明提供的基于串口通讯的通讯连接方法的一具体实施例的方法示意图。如图5所示,规定显示板的地址与内机主板的地址设为相同的地址。显示板或内机主板上电后,首先获取自己的设备地址n,然后尝试向与自己设备地址相同的设备发送数据帧,数据帧中携带自己的设备类型。持续t秒判断总线上是否有发送给自己的数据,如果没有,说明通讯线没有接好或者设备未接入网络,显示板报通讯故障。如果有,进一步判断数据来源。由于外机主板和调试器的设备地址固定,通过判断数据来源地址,便可知道对方设备类型。如果数据来源中,有同类型设备发给自己的数据,说明该设备地址没有设置,或者设置失败需要重新设置,如果数据来源中,没有同类型设备发给自己的数据,说明设备地址设置成功,发送通讯成功的应答帧。进一步判断,需要与自己通讯的设备是否均以发送应答帧,如果不是,说明通讯超过t秒或者通讯线断开,显示板报通讯故障;如果是,说明地址已按规定设置,可以进入正常通讯,通讯握手成功。
本发明还提供一种基于串口通讯的通讯连接装置。
图6是本发明提供的基于串口通讯的通讯连接装置的一实施例的结构框图。如图6所示,所述通讯连接装置100包括:获取单元110、发送单元120,第一判断单元130和第一确定单元140。
获取单元110用于在所属设备上电后,获取所属设备自身的设备地址;所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备。发送单元120用于向与所属设备的设备地址相同的设备发送数据帧;所述数据帧中携带有所属设备的设备类型。第一判断单元130用于判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧;第一确定单元140用于若接收到所述应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备。所述数据帧中携带有所属设备的设备类型。具体地,获取单元110读取所属设备自身的设备地址,发送单元120向与所属设备的设备地址相同的设备发送携带有所属设备的设备类型的数据帧。第一判断单元130判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,若接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则第一确定单元140确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则第一确定单元140确定出现通讯故障。
图7是本发明提供的基于串口通讯的通讯连接装置的另一实施例的结构框图。如图7所示,所述通讯连接装置100还包括第二判断单元150和第二确定单元160。
第二判断单元150用于持续预设时间判断通讯总线上是否有发送给所属设备的数据;第二确定单元160用于若所述第二判断单元判断没有发送给所属设备的数据,则确定出现通讯故障。
例如,持续t秒判断总线是否有发送给所属设备的数据。如果没有,说明通讯线没有接好或者设备未接入网络,确定出现通讯故障。可选地,显示板报通讯故障。
所述第二判断单元150还用于:若判断有发送给所属设备的数据,则判断所述数据的数据来源;所述第二确定单元160还用于:根据所述数据来源确定所属设备与其他设备的通讯连接是否成功。
具体地,所述第二判断单元150可以通过设备地址或设备类型判断数据来源。例如,空调外机主板和调试器的设备地址固定,通过判断数据来源的设备地址,便可知道对方的设备类型,不需要进一步判断。如果为显示板或内机主板则可以判断数据中携带的设备类型。
第二确定单元160根据所述数据来源确定所属设备与其他设备的通讯连接是否成功,具体包括:若所述数据来源于与所属设备的设备类型相同的设备,则确定出现通讯故障;若所述数据来源于与所属设备的设备类型不同的设备,则确定与数据来源设备的通讯连接成功。
由于同类型的设备处于不同的设备系统中,而两个设备系统之间不进行通信;并且,设备系统中的设备会向与自己设备地址相同数据类型不同的设备发送数据帧,因此,所属设备不会收到与自己同类型的设备发送的数据,如果数据来源中有同类型设备发给自己的数据,说明该设备的设备地址没有设置或者设置失败,需要重新设置,显示板报通讯故障。如果数据来源中,没有同类型设备发给自己的数据,说明设备地址设置成功,与数据来源设备的通讯连接成功,向该设备发送通讯成功的应答帧。
通讯网络内,如果设备类型唯一且设备地址固定,通讯没有问题;如果设备类型重复,就需要设地址,设备地址改变后,将会造成设备之间通讯失败。如图1通讯网络拓扑图,外机主板、调试器在该网络内唯一,地址固定为id1、id2;显示板、内机主板存在同类设备重复,需要设置地址,显示板或者主板地址改变,将会造成显示板与主板之间的数据通讯失败。例如,显示板1、内机主板1、显示板2、内机主板2之间的数据通讯,显示板1、2的默认地址为0x40,内机主板1、2的默认地址为0x01,显示板1需要与内机主板1、外机主板进行数据通讯;显示板2需要与内机主板2、外机主板进行数据通讯,显示板1、内机主板1、显示板2、内机主板2、外机主板在同一总线上,显示板1给内机主板1发送通讯数据时,如果内机主板2的地址不设置,内机主板1、内机主板2将都会接收显示板1的数据,内机主板2实际是不需要接收显示板1的数据的。内机主板2的地址设置后,可解决这个问题,
本发明还提供对应于所述基于串口通讯的通讯连接方法方法的一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。
据此,本发明提供的方案,基于串口通讯,能够解决多个设备之间数据交互握手的问题,可替代can通讯数据交互方式。
本文中所描述的功能可在硬件、由处理器执行的软件、固件或其任何组合中实施。如果在由处理器执行的软件中实施,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体予以传输。其它实例及实施方案在本发明及所附权利要求书的范围及精神内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器、硬件、固件、硬连线或这些中的任何者的组合执行的软件实施。此外,各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为控制装置的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
1.一种基于串口通讯的通讯连接方法,其特征在于,所属通讯网络中包括两个以上设备系统,每个所述设备系统中包括两个以上不同类型的设备;每个所述设备系统中所述两个以上不同类型的设备的设备地址相同;所述通讯网络中的所有设备连接在一条通讯总线上;每个所述设备系统中所包括的设备的设备类型相同;所述通讯网络中的设备基于设备地址进行通信;两个所述设备系统之间不进行通信;
所述通讯连接方法,包括:
在所属设备上电后,获取所属设备自身的设备地址;所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备;
向与所属设备的设备地址相同的设备发送数据帧;所述数据帧中携带有所属设备的设备类型;
判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧;
若接收到所述应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;
若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
2.根据权利要求1所述的方法,其特征在于,还包括:
持续预设时间判断通讯总线上是否有发送给所属设备的数据;
若判断没有发送给所属设备的数据,则确定出现通讯故障;
若判断有发送给所属设备的数据,则判断所述数据的数据来源;
根据所述数据来源确定所属设备与其他设备的通讯连接是否成功。
3.根据权利要求2所述的方法,其特征在于,根据所述数据来源确定所属设备与其他设备的通讯连接是否成功,包括:
若所述数据来源于与所属设备的设备类型相同的设备,则确定出现通讯故障;
若所述数据来源于与所属设备的设备类型不同的设备,则确定与数据来源设备的通讯连接成功。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述通讯网络包括空调系统通讯网络;两个以上设备系统中每个所述设备系统包括一个显示板和一个内机主板。
5.一种基于串口通讯的通讯连接装置,其特征在于,所属通讯网络中包括两个以上设备系统,每个所述设备系统中包括两个以上不同类型的设备;每个所述设备系统中所述两个以上不同类型的设备的设备地址相同;所述通讯网络中的所有设备连接在一条通讯总线上;每个所述设备系统中所包括的设备的设备类型相同;所述通讯网络中的设备基于设备地址进行通信;两个所述设备系统之间不进行通信;
所述通讯连接装置,包括:
获取单元,用于在所属设备上电后,获取所属设备自身的设备地址;所属设备为任一所述设备系统中包括的两个以上不同类型的设备中的任一设备;
发送单元,用于向与所属设备的设备地址相同的设备发送数据帧;所述数据帧中携带有所属设备的设备类型;
第一判断单元,用于判断是否接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧;
第一确定单元,用于若接收到所述应答帧,则确定与所属设备的设备地址相同且设备类型不同的设备通讯连接成功;
若未接收到与所属设备的设备地址相同且设备类型不同的设备返回的应答帧,则确定出现通讯故障。
6.根据权利要求5所述的装置,其特征在于,还包括:
第二判断单元,用于持续预设时间判断通讯总线上是否有发送给所属设备的数据;
第二确定单元,用于若所述第二判断单元判断没有发送给所属设备的数据,则确定出现通讯故障;
所述第二判断单元,还用于:若判断有发送给所属设备的数据,则判断所述数据的数据来源;
所述第二确定单元,还用于:根据所述数据来源确定所属设备与其他设备的通讯连接是否成功。
7.根据权利要求6所述的装置,其特征在于,所述第二确定单元,根据所述数据来源确定所属设备与其他设备的通讯连接是否成功,包括:
若所述数据来源于与所属设备的设备类型相同的设备,则确定出现通讯故障;
若所述数据来源于与所属设备的设备类型不同的设备,则确定与数据来源设备的通讯连接成功。
8.根据权利要求5-7任一项所述的装置,其特征在于,所述通讯网络包括空调系统通讯网络;两个以上设备系统中每个所述设备系统包括一个显示板和一个内机主板。
9.一种存储介质,其特征在于,其上存储有计算机程序,所述程序被处理器执行时实现权利要求1-4任一所述方法的步骤。
技术总结