一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种总线通讯控制电路及其控制方法与流程

2021-11-15 17:42:00 来源:中国专利 TAG:


1.本发明涉及电路设计技术领域,具体涉及一种总线通讯控制电路及其控制方法。


背景技术:

2.任何一个微处理器都要与一定数量的部件和外围设备连接,但如果将各部件和每一种外围设备都分别用一组线路与cpu直接连接,那么连线将会错综复杂,甚至难以实现。为了简化硬件电路设计、简化系统结构,常用一组线路,配置以适当的接口电路,与各部件和外围设备连接,这组共用的连接线路被称为总线。采用总线结构便于部件和设备的扩充,尤其制定了统一的总线标准则容易使不同设备间实现互连。
3.总线通讯(如can总线、485总线等)具有简单、便捷、安装方便等优点。总线上一般连接有多路设备,总线上的干扰会通过总线影响每一台设备,设备上的干扰也会通过总线影响其他设备,一般来说,总线越长,所挂设备越多,通讯就越容易受到干扰,可靠性也会降低。


技术实现要素:

4.有鉴于此,本发明的目的在于提供一种总线通讯控制电路及其控制方法,以解决现有技术中总线上连接的设备相互干扰的问题。
5.根据本发明实施例的第一方面,提供一种总线通讯控制电路,包括:
6.至少一个开关模块;
7.一个待连接设备与总线之间设置有一个所述开关模块;
8.所述开关模块,用于检测待连接设备的通讯状态,并根据所述通讯状态,控制所述待连接设备接入总线或断开与总线的连接。
9.优选地,不同的开关模块对应不同的通讯启动信号,所述通讯启动信号用于触发所述开关模块将待连接设备接入总线;
10.所述通讯启动信号至少有两种,每种通讯启动信号的通讯启动时长不同。
11.优选地,所述开关模块,包括:
12.双向通讯线路,连接在总线与待连接设备之间;
13.至少一个开关元件,设置在所述双向通讯线路上。
14.优选地,所述开关模块,还包括:
15.储能模块,通过至少一个电容与所述双向通讯线路相连,用于存储双向通讯线路上的总线通讯信号的能量;
16.检测控制模块,与所述储能模块及双向通讯线路相连,用于根据所述双向通讯线路上的总线通讯信号和/或设备通讯信号,判断待连接设备的通讯状态,并根据所述通讯状态控制所述开关元件的启闭,进而控制所述待连接设备接入总线或断开与总线的连接。
17.根据本发明实施例的第二方面,提供一种总线通讯控制电路的控制方法,包括:
18.检测待连接设备的通讯状态;
19.根据所述通讯状态,控制所述待连接设备接入总线或断开与总线的连接;
20.所述通讯状态包括:主动通讯,和/或,被动通讯。
21.优选地,所述检测待连接设备的通讯状态,包括:
22.若检测到连接在总线与待连接设备之间的双向通讯线路上存在设备通讯信号,则判定待连接设备的通讯状态为主动通讯;和/或,
23.若检测到连接在总线与待连接设备之间的双向通讯线路上存在总线通讯信号,则判定待连接设备的通讯状态为被动通讯。
24.优选地,所述控制所述待连接设备接入总线或断开与总线的连接,具体为:
25.通过控制开关元件的启闭,控制所述待连接设备接入总线或断开与总线的连接;所述开关元件,设置在所述双向通讯线路上。
26.优选地,所述通过控制开关元件的启闭,控制所述待连接设备接入总线或断开与总线的连接,包括:
27.若待连接设备的通讯状态为主动通讯,控制开关元件闭合,以使待连接设备发送通讯启动信号到总线,等待总线上其他设备响应;
28.和/或,
29.若待连接设备的通讯状态为被动通讯,控制开关元件断开,仅在判定检测到的总线通讯信号为其他设备发送的通讯启动信号时,控制所述开关元件闭合,且仅在判定待连接设备需要和其他设备通讯时,控制所述开关元件保持闭合状态,否则,控制所述开关元件断开。
30.优选地,所述判定检测到的总线通讯信号为其他设备发送的通讯启动信号,具体为:
31.若储能模块输出高电平信号,且所述高电平信号持续时长大于预设的通讯启动时长,则判定所述总线通讯信号为其他设备发送的通讯启动信号;
32.所述储能模块,通过至少一个电容与所述双向通讯线路相连,用于存储双向通讯线路上的总线通讯信号的能量。
33.优选地,所述判定待连接设备需要和其他设备通讯,包括:
34.待连接设备在接收到其他设备发送的通讯启动信号后,向总线发送响应信号,以使其他设备接收到所述响应信号后,反馈一验证信号;
35.待连接设备从所述验证信号中解析出设备地址,并在判断所述设备地址为自身的设备地址时,判定需要和发送所述通讯启动信号的其他设备通讯。
36.优选地,所述待连接设备发送通讯启动信号到总线,等待总线上其他设备响应,包括:
37.待连接设备发送第一通讯启动信号到总线,若没有其他设备响应,则发送第二通讯启动信号到总线,直至遍历所有的通讯启动信号;
38.若在遍历的过程中,有其他设备响应所述通讯启动信号,则向响应的其他设备发送通讯数据;
39.若遍历完所有的通讯启动信号预设次数后,仍无其他设备响应,则判定为通讯故障,发出通讯异常预警信号。
40.本发明的实施例提供的技术方案可以包括以下有益效果:
41.通过在待连接设备与总线之间设置一个开关模块,通过检测待连接设备的通讯状态,控制所述待连接设备接入总线或断开与总线的连接,相比现有技术所有设备始终与总线相连的技术方案,本发明提供的技术方案,可以让待连接设备根据需要接入到总线,减少了受总线上其他设备干扰及对总线上其他设备造成干扰的概率,提高了通讯可靠性。
42.另外,由于同一时刻并不是所有设备都与总线相连,所以可以备选多台待连接设备与总线相连,可以提高总线的通讯节点数,提升总线使用率。
43.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
45.图1是根据一示例性实施例示出的一种总线通讯控制电路的示意框图;
46.图2是根据一示例性实施例示出的一种开关模块的电路原理图;
47.图3是根据一示例性实施例示出的一种总线通讯控制电路的控制方法的流程图;
48.图4是根据另一示例性实施例示出的一种总线通讯控制电路的控制方法的流程图;
49.图5是根据另一示例性实施例示出的一种总线通讯控制电路的控制方法的流程图。
具体实施方式
50.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
51.实施例一
52.图1是根据一示例性实施例示出的一种总线通讯控制电路的示意框图,如图1所示,该总线通讯控制电路包括:
53.至少一个开关模块100;
54.一个待连接设备与总线之间设置有一个所述开关模块100;
55.所述开关模块100,用于检测待连接设备的通讯状态,并根据所述通讯状态,控制所述待连接设备接入总线或断开与总线的连接。
56.可以理解的是,由于一个待连接设备与总线之间设置有一个开关模块100,所以开关模块100的数量与待连接设备的数量相同。每个待连接设备通过各自的开关模块100接入总线,每个待连接设备独立控制、互不干扰,提高了控制电路的可靠性。
57.在具体实践中,可以设置不同的开关模块100对应不同的通讯启动信号,所述通讯启动信号用于触发所述开关模块100将待连接设备接入总线;
58.所述通讯启动信号至少有两种,每种通讯启动信号的通讯启动时长不同。
59.需要说明的是,所述“通讯启动时长”是指通讯启动信号保持某种电平状态的持续
时长,例如,保护高电平状态的持续时长。
60.在具体实践中,根据通讯启动信号的不同,可以将开关模块100分为不同的种类。例如,参见图1,可以设置总线通讯控制电路包括两种开关模块100:开关模块a和开关模块b,其中,开关模块a对应通讯启动信号a,只有通讯启动信号a到来时,开关模块a才能闭合;开关模块b对应通讯启动信号b,只有通讯信号b到来时,开关模块b才能闭合。
61.其中,开关模块a和开关模块b的内部电路结构相同,不同的只是其对应的通讯启动信号,例如,开关模块a对应通讯启动信号a,通讯启动时长为t
a
;开关模块b对应通讯启动信号b,通讯启动时长为t
b
,t
a
≠t
b

62.参见图1,假设共有2n(n≥1)个待连接设备,可以设置n个待连接设备通过开关模块a接入总线,设置n个待连接设备通过开关模块b接入总线。当总线上的总线通讯信号为通讯启动信号a时,只有开关模块a能够闭合,与开关模块a相连的待连接设备才可以接入总线;当总线上的总线通讯信号为通讯启动信号b时,只有开关模块b能够闭合,与开关模块b相连的待连接设备才可以接入总线。这样设置的好处是,当任一待连接设备发起主动通讯时,只允许一定数量的待连接设备接入总线进行响应,可以减少总线数据传输压力,同时也可以减少多个待接入设备同时接入总线带来的通讯干扰。
63.当然,上述图1只是一个示例,在具体实践中,设置多少个开关模块a和设置多少个开关模块b可以根据用户需要进行设置。
64.甚至,在一些实施例中,可以设置包括多种开关模块100,例如,包括开关模块a、开关模块b、开关模块c

,每种开关模块100对应一种通讯启动信号,那么就分别对应通讯启动信号a、通讯启动信号b、通讯启动信号c

其中,通讯启动信号a只能被开关模块a识别,通讯启动信号b只能被开关模块b识别,通讯启动信号c只能被开关模块c识别


65.需要说明的是,上述各种开关模块100在具体实践中可以采用电路结构相同的开关模块100,只是通讯启动时长被设置为不同的数值,所以变为不同种类的开关模块100。例如,将开关模块a、开关模块b、开关模块c

的通讯启动时长分别设置为t
a
、t
b
、t
c

其中,每个开关模块100的通讯启动时长皆大于t0(t0为正常通讯信号的持续时长),且各不相同,t
a
≠t
b
≠t
c



66.在具体实践中,所述开关模块100有多种实现方式,图2给出了其中一种实现方式。参见图2,所述开关模块100,包括:
67.双向通讯线路,连接在总线与待连接设备之间(例如,图2中的通讯线路a1
‑‑
a2,通讯线路b1
‑‑
b2);
68.至少一个开关元件,设置在所述双向通讯线路上(例如,图2中的通讯线路a1
‑‑
a2上设置有开关元件k1,通讯线路b1
‑‑
b2上设置有开关元件k2)。
69.因此,所述控制所述待连接设备接入总线或断开与总线的连接,具体为:
70.通过控制开关元件的启闭(例如,图2中的开关元件k1和k2),控制所述待连接设备接入总线或断开与总线的连接。
71.所述开关模块100,还包括:
72.储能模块101,通过至少一个电容(例如,图2中的电容c1和c2)与所述双向通讯线路(例如,图2中的通讯线路a1
‑‑
a2及通讯线路b1
‑‑
b2)相连,用于存储双向通讯线路上的总线通讯信号的能量;
73.检测控制模块102,与所述储能模块101及双向通讯线路相连,用于根据所述双向通讯线路上的总线通讯信号和/或设备通讯信号,判断待连接设备的通讯状态,并根据所述通讯状态控制所述开关元件(例如,图2中的开关元件k1和k2)的启闭,进而控制所述待连接设备接入总线或断开与总线的连接。
74.需要说明的是,所述通讯状态包括:主动通讯,和/或,被动通讯。
75.所述“主动通讯”是指当前待连接设备向总线上发送通讯启动信号,等待其他设备响应并建立通讯连接;
76.所述“被动通讯”是指当前待连接设备接收到总线上其他设备发送的通讯启动信号后,与其他设备建立通讯连接。
77.需要说明的是,总线上存在两种总线通讯信号,一种是发起通讯的通讯启动信号,一种是正常通讯信号,通讯启动信号引起蓄能模块发送高电平的持续时间为t
x
,x=a、b、c

中的任一项;正常通讯信号引起蓄能模块发送高电平的持续时间为t0。在具体实践中,可以设置t
x
>t0,以此来区分总线上的总线通讯信号为正常通讯信号,还是通讯启动信号。
78.以图2为例,对本实施例提供的这种总线通讯控制电路的工作原理解释说明如下:
79.主动通讯模式下:
80.若检测控制模块102检测到连接在总线与待连接设备之间的双向通讯线路上存在设备通讯信号,则判定待连接设备的通讯状态为主动通讯;
81.若待连接设备的通讯状态为主动通讯,检测控制模块102检测开关元件k1和k2是否闭合,若闭合,跳转到下一步;否则,发送控制信号sig2控制所述开关元件k1和k2闭合;
82.待连接设备发送通讯启动信号到总线,等待总线上其他设备响应,包括:
83.待连接设备发送第一通讯启动信号(例如,通讯启动信号a)到总线,若没有其他设备响应,则发送第二通讯启动信号(例如,通讯启动信号b)到总线,直至遍历所有的通讯启动信号(例如,通讯启动信号a、通讯启动信号b、通讯启动信号c

);
84.若在遍历的过程中,有其他设备响应所述通讯启动信号,则向响应的其他设备发送通讯数据;
85.若遍历完所有的通讯启动信号预设次数后(所述预设次数根据用户需要进行设置,例如设置为大于等于2的正整数),仍无其他设备响应,则判定为通讯故障,发出通讯异常预警信号。
86.被动通讯模式下:
87.若检测控制模块102检测到连接在总线与待连接设备之间的双向通讯线路上存在总线通讯信号,则判定待连接设备的通讯状态为被动通讯;
88.若待连接设备的通讯状态为被动通讯,检测控制模块102检测开关元件k1和k2是否断开,若断开,跳转到下一步;否则,发送控制信号sctrl控制开关元件k1和k2断开;
89.蓄能模块101对总线上过来的总线通讯信号进行蓄能,通过两个电容c1、c2与总线连接,总线通讯信号会对电容c1、c2进行充放电,其能量被蓄能模块储存直至达到阈值(阈值根据用户需要进行设置),蓄能模块会发送一个高电平信号sig1给检测控制模块102;
90.检测控制模块102一直检测蓄能模块101是否有高电平信号sig1过来,如果有,继续检测高电平持续时间是否大于预设的通讯启动时长t
x
;如果高电平持续时间小于t
x
,则判定此时总线上的总线通讯信号不是通讯启动信号,开关元件k1和k2保持断开状态;如果检
测到高电平持续时间大于t
x
,则判定总线通讯信号为其他设备发送的通讯启动信号,检测控制模块102发送控制信号sig2控制开关元件k1和k2闭合,待连接设备接入总线;
91.开关元件k1和k2闭合后,待连接设备向总线发送响应信号,以使其他设备接收到所述响应信号后,反馈一验证信号;
92.待连接设备从所述验证信号中解析出设备地址(每个设备的设备地址是唯一的),并判断所述设备地址是否为自身的设备地址,若是,则判定需要和发送所述通讯启动信号的其他设备通讯,控制所述开关元件k1和k2保持闭合状态,否则,检测控制模块102发送控制信号sctrl控制所述开关元件k1和k2断开。
93.可以理解的是,本实施例提供的技术方案,通过在待连接设备与总线之间设置一个开关模块100,通过检测待连接设备的通讯状态,并根据待连接设备的通讯状态,控制待连接设备是否接入总线,相比现有技术所有设备始终与总线相连的技术方案,本实施例提供的技术方案,可以让待连接设备根据需要接入到总线,减少了受总线上其他设备干扰及对总线上其他设备造成干扰的概率,提高了通讯可靠性。
94.另外,由于同一时刻并不是所有设备都与总线相连,所以可以备选多台待连接设备与总线相连,可以提高总线的通讯节点数,提升总线使用率。
95.进一步地,由于通讯过程中,只有参与通讯的设备会与总线连接,不参与通讯的设备都与总线断开连接;不通讯时,所有设备都会与总线断开连接,彼此互不干扰,进一步提高了通讯可靠性。
96.实施例二
97.图3是根据一示例性实施例示出的一种总线通讯控制电路的控制方法的流程图,如图3所示,该控制方法包括:
98.步骤s11、检测待连接设备的通讯状态;
99.步骤s12、根据所述通讯状态,控制所述待连接设备接入总线或断开与总线的连接;所述通讯状态包括:主动通讯,和/或,被动通讯。
100.可以理解的是,本实施例提供的技术方案,通过检测待连接设备的通讯状态,并根据待连接设备的通讯状态,控制待连接设备是否接入总线,相比现有技术所有设备始终与总线相连的技术方案,本实施例提供的技术方案,可以让待连接设备根据需要接入到总线,减少了受总线上其他设备干扰及对总线上其他设备造成干扰的概率,提高了通讯可靠性。
101.另外,由于同一时刻并不是所有设备都与总线相连,所以可以备选多台待连接设备与总线相连,可以提高总线的通讯节点数,提升总线使用率。
102.需要说明的是,所述通讯状态包括:主动通讯,和/或,被动通讯。
103.所述“主动通讯”是指当前待连接设备向总线上发送通讯启动信号,等待其他设备响应并建立通讯连接;
104.所述“被动通讯”是指当前待连接设备接收到总线上其他设备发送的通讯启动信号后,与其他设备建立通讯连接。
105.在具体实践中,所述检测待连接设备的通讯状态,包括:
106.若检测到连接在总线与待连接设备之间的双向通讯线路上存在设备通讯信号,则判定待连接设备的通讯状态为主动通讯;和/或,
107.若检测到连接在总线与待连接设备之间的双向通讯线路上存在总线通讯信号,则
判定待连接设备的通讯状态为被动通讯。
108.可以理解的是,所述总线通讯控制电路有多种实现方式,在具体实践中,可以采用图2所述的实现方式(图2中总线通讯控制电路各模块的实现方式及其有益效果参见实施例一,在此不再赘述)。
109.现以图2所述的总线通讯控制电路为例,对本实施例提供的这种总线通讯控制电路的控制方法解释说明如下:
110.参见图4,主动通讯模式下,所述总线通讯控制电路的控制方法,包括:
111.步骤s21、若检测控制模块102检测到连接在总线与待连接设备之间的双向通讯线路上存在设备通讯信号,则判定待连接设备的通讯状态为主动通讯;步骤s22、若待连接设备的通讯状态为主动通讯,检测控制模块102检测开关元件k1和k2是否闭合,若闭合,跳转到步骤s23;否则,发送控制信号sig2控制所述开关元件k1和k2闭合;
112.步骤s23、待连接设备发送第一通讯启动信号(例如,通讯启动信号a)到总线,若没有其他设备响应,则发送第二通讯启动信号(例如,通讯启动信号b)到总线,直至遍历所有的通讯启动信号(例如,通讯启动信号a、通讯启动信号b、通讯启动信号c

);
113.步骤s24、若在遍历的过程中,有其他设备响应所述通讯启动信号,则向响应的其他设备发送通讯数据;
114.步骤s25、若遍历完所有的通讯启动信号预设次数后(所述预设次数根据用户需要进行设置,例如设置为大于等于2的正整数),仍无其他设备响应,则判定为通讯故障,发出通讯异常预警信号。
115.参见图5,被动通讯模式下,所述总线通讯控制电路的控制方法,包括:
116.步骤s31、若检测控制模块102检测到连接在总线与待连接设备之间的双向通讯线路上存在总线通讯信号,则判定待连接设备的通讯状态为被动通讯;
117.步骤s32、若待连接设备的通讯状态为被动通讯,检测控制模块102检测开关元件k1和k2是否断开,若断开,跳转到步骤s33;否则,发送控制信号sctrl控制开关元件k1和k2断开;
118.步骤s33、蓄能模块101对总线上过来的总线通讯信号进行蓄能,通过两个电容c1、c2与总线连接,总线通讯信号会对电容c1、c2进行充放电,其能量被蓄能模块储存直至达到阈值(阈值根据用户需要进行设置),蓄能模块会发送一个高电平信号sig1给检测控制模块102;
119.步骤s34、检测控制模块102一直检测蓄能模块101是否有高电平信号sig1过来,如果有,继续检测高电平持续时间是否大于预设的通讯启动时长t
x
;如果高电平持续时间小于t
x
,则判定此时总线上的总线通讯信号不是通讯启动信号,开关元件k1和k2保持断开状态;如果检测到高电平持续时间大于t
x
,则判定总线通讯信号为其他设备发送的通讯启动信号,检测控制模块102发送控制信号sig2控制开关元件k1和k2闭合,待连接设备接入总线;
120.步骤s35、开关元件k1和k2闭合后,待连接设备向总线发送响应信号,以使其他设备接收到所述响应信号后,反馈一验证信号;
121.步骤s36、待连接设备从所述验证信号中解析出设备地址(每个设备的设备地址是唯一的),并判断所述设备地址是否为自身的设备地址,若是,则判定需要和发送所述通讯
启动信号的其他设备通讯,控制所述开关元件k1和k2保持闭合状态,否则,检测控制模块102发送控制信号sctrl控制开关元件k1和k2断开。
122.可以理解的是,本实施例提供的技术方案,由于通讯过程中,只有参与通讯的设备会与总线连接,不参与通讯的设备都与总线断开连接;不通讯时,所有设备都会与总线断开连接,彼此互不干扰,进一步提高了通讯可靠性。
123.可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
124.需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
125.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
126.应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
127.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
128.此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
129.上述提到的存储介质可以是只读存储器,磁盘或光盘等。
130.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
131.尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献