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

一种用于冰箱的半双工通信方法和冰箱与流程

2022-02-25 18:30:41 来源:中国专利 TAG:


1.本发明涉及家电控制技术领域,特别是涉及一种用于冰箱的半双工通信方法和冰箱。


背景技术:

2.现有冰箱的功能越来越复杂,冰箱内一般具有多个电路板,为了协调运行,电路板之间需要进行数据传输。其中,各个电路板之间的通信一般采用主从半双工通信方式,该通信方式简单可靠。现有主从半双工通信方式之间的握手采用统一的数据格式,即握手时主控板向其他单一从板发送一帧数据(约20byte,用时20ms),然后从板回复主控板一帧数据后进行连接建立。但是,从板需要对接收的一帧数据进行识别后才能够确认该一帧数据是否为握手请求,增加了从板的工作量并且降低了握手效率。另外,随着冰箱功能的扩展,从板的数量、通信次数、通信数据也持续地增加,随着从板数量的增加,会造成握手用时较长,通信延迟,从而导致从板反应比较迟钝,对于一些优先级较高的数据,传送效率也比较低。


技术实现要素:

3.鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种用于冰箱的半双工通信方法和冰箱。
4.本发明的一个目的是要提供一种减少从通信端工作量以及传输效率更高的用于冰箱的半双工通信方法和冰箱。
5.本发明一个进一步的目的是要使得冰箱主从通信端之间的通信更加快速稳定。
6.特别地,本发明提供了一种用于冰箱的半双工通信方法,冰箱包括主通信端、至少一个从通信端,以及连接从通信端和主通信端的通信总线,半双工通信方法包括:
7.从通信端获取主通信端通过通信总线发送的通信信息,并检测获取到通信信息前通信总线的空闲时间;
8.比较通信总线的空闲时间是否大于第一阈值,若是,确认接收的主通信端发送的通信信息为握手请求;
9.解析握手请求中的传送地址,并判断传送地址和从通信端自身的地址是否相同,若相同,返回握手回复至主通信端,并进入通信状态。
10.可选地,若通信总线的空闲时间小于第一阈值,确认通信信息为数据,并忽略数据。
11.可选地,传送地址和数据的位数均为8位。
12.可选地,若传送地址和从通信端自身的地址不同,从通信端进入挂起状态。
13.可选地,在主通信端发送通信信息前,主通信端还配置成:
14.获取到通信发起事件,根据通信发起事件确定通信模式;
15.获取作为通信对象的从通信端的地址段,并从地址段中确定出与通信模式对应的传送地址,每个从通信端的地址段包括多个对应于不同通信模式的传送地址,并且不同从
通信端的地址段配置为不同;
16.主通信端发送握手请求,并在接收到握手回复后向通信对象发起通信流程,握手请求至少包括确定出的传送地址。
17.可选地,通信模式包括常规通信模式以及优先通信模式;每个从通信端的地址段包括对应于常规通信模式的基础传送地址以及对应于优先通信模式的基础传送地址的优先传送地址;
18.在常规通信模式下,握手请求中包括通信对象的基础传送地址,并且主通信端在接收到通信对象的响应于握手请求的握手回复后,执行与握手回复对应的通信流程;
19.在优先通信模式下,握手请求中包括通信对象的优先传送地址,并且主通信端在接收到通信对象的响应于握手请求的握手回复后,直接发送优先数据。
20.可选地,每个从通信端的地址段还包括:第一基础应答地址以及第二基础应答地址;并且
21.从通信端在接收到包含属于自身的基础传送地址的握手请求后,若处于接收数据状态,则向主通信端发送包含第一基础应答地址的握手回复;
22.与包含第一基础应答地址的握手回复对应的通信流程包括:主通信端发送数据,以供从通信端接收;
23.从通信端在接收到包含属于自身的基础传送地址的握手请求后,若处于发送数据状态,则向主通信端发送包含第二基础应答地址的握手回复;
24.与包含第二基础应答地址的握手回复对应的通信流程包括:从通信端发送数据,以供主通信端接收。
25.可选地,从通信端发送的数据包括:向另一从通信端传送的转发数据;主通信端在接收到转发数据后还包括:
26.确定作为转发对象的从通信端的地址段,并将转发数据作为优先数据,并以优先通信模式向转发对象发送转发数据。
27.可选地,在常规通信模式下,主通信端在完成对某一从通信端的通信流程后,还包括:主通信端按照设定的循环顺序向下一从通信端发送握手请求;
28.在优先通信模式下,主通信端中断常规通信模式的循环通信,向优先通信的通信对象发送握手请求,并发送优先数据后,重新返回执行常规通信模式的循环通信。
29.根据本发明的另一个方面,还提供了一种冰箱,该冰箱包括:
30.主通信端;
31.至少一个从通信端;
32.通信总线,连接主通信端与从通信端;
33.主通信端和从通信端在通信过程中,执行上述任一种用于冰箱的半双工通信方法。
34.在本实施例的用于冰箱的半双工通信方法中,从通信端根据通信总线的空闲时间便可以确定接收的来自主通信端的通信信息是否为握手请求,减少了从通信端分析通信信息来确定通信信息是否为握手请求的过程,减少了从通信端的工作压力,也提高了确定通信信息是否为握手请求的效率,进而提高了主从通信端的传输效率。
35.进一步地,在本实施例的用于冰箱的半双工通信方法中,位数为8位的传送地址和
数据具有更好的兼容性,能够适应更多类型的单片机,从而可以选择性价比更高的单片机,节约了冰箱的成本。
36.根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
37.后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
38.图1是根据本发明一个实施例的冰箱的示意性图;
39.图2是根据本发明一个实施例的用于冰箱的半双工通信方法中从通信端接收数据的流程图;
40.图3是根据本发明一个实施例的用于冰箱的半双工通信方法中主通信端发送数据的流程图;
41.图4是根据本发明一个实施例的用于冰箱的半双工通信方法中主通信端发送数据的示意性图;
42.图5是根据本发明一个实施例的用于冰箱的半双工通信方法中主通信端接收数据的示意性图;
43.图6是根据本发明一个实施例的用于冰箱的半双工通信方法中主通信端执行优先通信模式的示意性图;
44.图7是根据本发明一个实施例的用于冰箱的半双工通信方法中从通信端之间通信的示意性图;
45.图8是根据本发明另一个实施例的用于冰箱的半双工通信方法中从通信端接收数据的流程图。
具体实施方式
46.图1是根据本发明一个实施例的冰箱20的示意性图。该冰箱20一般性地可包括至少一个从通信端220、主通信端210,以及连接从通信端220和主通信端210的通信总线230。
47.其中,主通信端210可以为冰箱20的主控装置,作为冰箱20的信息处理核心。从通信端220可以为各执行部件的控制板,例如变温控制板(用于控制不同档位切换的时变温风门、风机、压缩机的状态)、制冰机控制板(用于控制进出水制冰、碎冰、以及取冰的动作)、微风道控制板等。从通信端220的数量和类型可以根据冰箱20的功能进行配置。本实施例并不对具体的从通信端220的类型和数量进行限制,主要针对主通信端210和从通信端220的通信过程进行改进。
48.并且,通信总线230可以为串行通信总线,通过串行半双工通信方式在主通信端210与从通信端220之间进行数据传输。
49.下面结合实施例的用于冰箱20的半双工通信方法对上述实施例的冰箱20的通信过程进行介绍。该半双工通信方法由上述主通信端210和从通信端220执行,完成冰箱20主控装置与各执行部件的控制板的数据通信。
50.图2是根据本发明一个实施例的用于冰箱20的半双工通信方法中从通信端220接收数据的流程图。该方法一般性地可以包括以下步骤s102至步骤s112。
51.步骤s102:从通信端220获取主通信端210通过通信总线230发送的通信信息,并检测获取到通信信息前通信总线230的空闲时间。
52.步骤s104:比较通信总线230的空闲时间是否大于第一阈值。第一阈值可以为5ms,当然,也可以为6ms或者其他值,本发明实施例对此不做具体地限定。
53.若大于,执行步骤s106:确认接收的主通信端210发送的通信信息为握手请求。
54.步骤s108:解析握手请求中的传送地址。
55.步骤s110:判断传送地址和从通信端220自身的地址是否相同。
56.若相同,执行步骤s112:返回握手回复至主通信端210,并进入通信状态。
57.在本实施例的用于冰箱20的半双工通信方法中,主通信端210采用将握手请求和数据分开发送的方式,从通信端220根据通信总线230的空闲时间便可以确定接收的来自主通信端210的通信信息是否为握手请求,减少了从通信端220分析通信信息来确定通信信息是否为握手请求的过程,减少了从通信端220的工作压力,也提高了确定通信信息是否为握手请求的效率,进而提高了主通信端210和从通信端220之间的通信效率。另外,主通信端210在与一个从通信端220通信结束后,若需要与另外其他的从通信端220进行通信,需要在通信总线230的空闲时间大于第一阈值的情况下,与其他的从通信端220进行握手。
58.在本发明一个实施例中,若通信总线230的空闲时间小于第一阈值,确认通信信息为数据,并忽略数据。在通信总线230的空闲时间小于第一阈值的情况下,主通信端210在与除本从通信端220以外的其他的从通信端220进行数据通信。因此,本从通信端220可以直接忽略这些数据。之后继续执行步骤s102。主通信端210发送数据的间隔一般可以为3ms,当然也可以为小于5ms的其他值,本发明实施例对此不做具体地限定。该方式相对于从通信端220分析通信信息来确定通信信息是否为数据的过程,提高了确定通信信息是否为数据的效率,也进一步减少了从通信端220的工作压力。
59.在本发明一个实施例中,若传送地址和从通信端220自身的地址不同,从通信端220进入挂起状态。之后继续执行步骤s102。从通信端220进入挂起状态可以避免接收与自身无关的数据。
60.在本发明一个实施例中,传送地址和数据的位数均可以为8位。位数为8位的传送地址和数据具有更好的兼容性,能够适应更多类型的单片机,从而可以选择性价比更高的单片机,节约了冰箱20的成本。
61.参见图3,在本发明一个实施例中,在主通信端210发送通信信息前,主通信端210还可执行以下步骤s302至步骤s306。
62.步骤s302:主通信端210还获取到通信发起事件,根据通信发起事件确定通信模式。其中,通信发起事件可以为冰箱20的通信轮询事件,例如定时查看从通信端220的运行状态等;也可以是冰箱20的上电启动信号;也可以是冰箱20的执行控制事件,例如制冰取冰、变温调整等。在本实施例的通信方法中,通信过程均由主通信端210发起。
63.步骤s304:获取作为通信对象的从通信端220的地址段,并从地址段中确定出与通信模式对应的传送地址。通信对象为从通信端220中的一个。每个从通信端220的地址段分别可以包括多个对应于不同通信模式的传送地址,并且不同从通信端220的地址段配置为
不同。例如每个从通信端220的地址段包括多个连续的地址,这也可以理解为,每个从通信端220具有一个基础地址add,以及从基础地址add逐渐累加的地址add 1、add 2、add 3、add 4
……
等。
64.一种从通信端220的地址配置方式为:每个从通信端220分配m个地址,地址相邻。地址段的首地址=m*模块序号 1,其后地址逐一累加。即通过从通信端220的模块序号就可以简单的地址配置。上述每个通信地址用于指示出对应的通信模式。
65.步骤s306:主通信端210发送握手请求,并在接收到握手回复后向通信对象发起通信流程,握手请求至少包括确定出的传送地址。在一些实施例中,可以直接将传送地址作为握手请求。
66.上述通信过程中,通信由主通信端210发起,直接使用作为通信对象的从通信端220的传送地址进行通信握手,相比于现有技术中使用数据传输格式进行通信握手的方式,大大提高了握手效率,在保证数据能够快速、稳定发送接收的同时,加快冰箱20的响应速度。
67.在本发明一个实施例中,通信模式可包括常规通信模式以及优先通信模式。每个从通信端220的地址段包括对应于常规通信模式的基础传送地址(可以选择直接将基础传送地址作为握手请求)以及对应于优先通信模式的基础传送地址的优先传送地址(可以选择直接将优先传送地址作为握手请求)。常规通信模式可以是正常执行的通信流程,例如主通信端210按照次序逐一与从通信端220通信;而优先通信模式可以是中断常规通信模式的轮询过程,向特定的从通信端220直接进行通信。其中常规通信模式可以包括主通信端210向从通信端220发送数据的过程,也可以包括主通信端210从从通信端220接收数据的过程。
68.在常规通信模式下,握手请求中包括通信对象的基础传送地址,并且主通信端210在接收到通信对象的响应于握手请求的握手回复后,执行与握手回复对应的通信流程。
69.在优先通信模式下,握手请求中包括通信对象的优先传送地址,并且主通信端210在接收到通信对象的响应于握手请求的握手回复后,直接发送优先数据。
70.在本实施例中,在常规通信模式下,主通信端210采用顺序轮循的方式对各从通信端220进行切换。在一个从通信端220通信完成后,切换到下一从通信端220。切换间隔时间可以为毫秒级,例如2ms。如果有从通信端220进入优先通信模式优先执行该优先通信的通信过程,完成优先通信后,再重新进行轮循切换。在同一时间,只能有一个从通信端220进行数据通信,在轮到该从通信端220收发数据时,仅能选择进行接收和发送,完成后需释放通信总线230资源。优先通信模式下,主通信端210可以中断常规通信模式的轮询过程,向特定的从通信端220直接进行通信,提高主通信端210和特定的从通信端220之间的通信效率。并且,利用不同的传送地址对应不同的通信模式,通过一次握手就可以指示出通信模式,进一步提高了通信效率。并且利用常规通信模式、优先通信模式可以满足不同应用场景的通信要求。另外,上述常规通信模式,主通信端210和从通信端220只需要通过地址交互就可以实现通信握手,进入数据收发过程,大大提高了握手的效率。
71.在本发明一个实施例中,每个从通信端220的地址段还可包括第一基础应答地址(用于指示接收来自于主通信端210的数据)以及第二基础应答地址(用于指示向主通信端210发送数据)。并且从通信端220在接收到包含属于自身的基础传送地址的握手请求后,若处于接收数据状态,即接收主通信端210的指令时,则向主通信端210发送包含第一基础应
答地址的握手回复。与包含第一基础应答地址的握手回复对应的通信流程包括:主通信端210发送数据,以供从通信端220接收。
72.从通信端220在接收到包含属于自身的基础传送地址的握手请求后,若处于发送数据状态,即需要向主通信端210传送数据时,则向主通信端210发送包含第二基础应答地址的握手回复;与包含第二基础应答地址的握手回复对应的通信流程包括:从通信端220发送数据,以供主通信端210接收。
73.另外,每个从通信端220的地址段还包括:优先应答地址;并且从通信端220在接收到包含属于自身的优先传送地址的握手请求后,则向主通信端210发送包含优先应答地址的握手回复(可以选择直接将优先应答地址作为握手回复)。主通信端210与从通信端220之间传输的数据的格式包括:帧头(或称为特征值)、有效数据、校验和,其中有效数据的长度为固定长度。数据可以采用位模式传输、波特率可以根据需要进行设置,例如设置为9600,一个起始位,一个停止位,无奇偶校验,低位先发。
74.在本发明一个实施例中,在两个从通信端220需要通信的情况下,从通信端220发送的数据包括:向另一从通信端220传送的转发数据。主通信端210在接收到转发数据后还包括:确定作为转发对象的从通信端220的地址段,并将转发数据作为优先数据,并以优先通信模式向转发对象发送转发数据。在完成优先通信后,重新返回与从通信端220的常规通信过程。
75.在本实施例中,主通信端210可以根据转发对象的从通信端220的地址段将一个从通信端220的转发数据转发到另一个从通信端220,提高了数据传输的灵活性。
76.在一些其他实施例中,在主通信端210连续设定次数与某一从通信端220通信失败后,主通信端210输出通信故障报警信息,从而保证通信可靠性。
77.在一些其他实施例中,在冰箱20上电启动后,主通信端210首先进行从通信端220的确认。如果在设定时间内存在一次通信正常的过程,则确认该从通信端220存在。若如果不存在则认为相应从通信端220不存在,后续不再与该地址的从通信端220进行通信。对于确认已经存在的从通信端220,如果出现被移除再重新安装后的情况,主通信端210也可以自动识别。从通信端220的地址段需要保证不存在重复的地址。
78.图4是根据本发明一个实施例的用于冰箱20的半双工通信方法中主通信端210发送数据的示意性图。主通信端210在向某一从通信端220发起通信时,首先确定该从通信端220的基础传送地址(add=m*n 1,其中m为从通信端220个数、n为从通信端220的序号),主通信端210发送该基础传送地址;从通信端220在收到基础传送地址后,回复第一基础应答地址(例如为add 1),表示从通信端220已经准备接收来自于主通信端210的数据;主通信端210向从通信端220发送数据。
79.图5是根据本发明一个实施例的用于冰箱20的半双工通信方法中主通信端210接收数据的示意性图。主通信端210在向某一从通信端220发起通信时,首先确定该从通信端220的基础传送地址,主通信端210发送该基础传送地址;从通信端220在收到基础传送地址后,回复第二基础应答地址(例如为add 2),表示从通信端220通知主通信端210准备接收数据,然后从通信端220向主通信端210发送数据。
80.图6是根据本发明一个实施例的用于冰箱20的半双工通信方法中主通信端210执行优先通信模式的示意性图。主通信端210如果有优先数据需要传送,则中断常规通信,确
定从通信端220的优先传送地址(例如为add 3),主通信端210发送该优先传送地址;从通信端220在收到优先传送地址后,回复优先应答地址(例如为add 4),表示从通信端220通知主通信端210准备接收优先数据,主通信端210向从通信端220发送优先数据。优先通信数据的优先级要高于常规通信数据。
81.图7是根据本发明一个实施例的用于冰箱20的半双工通信方法中从通信端220之间通信的示意性图。第一从通信端221和第二从通信端222之间可以通过主通信端210进行数据交互,实现第一从通信端221和第二从通信端222之间的相互控制。在第一从通信端221进行通信时,例如当主通信端210轮询到第一从通信端221,若第一从通信端221需要向第二从通信端222发送转发数据(控制数据),则第一从通信端221将转发数据发送到主通信端210,由主通信端210执行向第二从通信端222的优先通信模式,将转发数据作为优先数据进行发送给第二从通信端222。主通信端210完成转发后,重新返回执行轮询常规通信。即利用主通信端210的优先通信模式,实现第一从通信端221和第二从通信端222之间的数据交互。
82.在通信过程中,对于已经连接过的从通信端220,如果出现主通信端210连续设定次数连接失败(无法收到握手回复或者接收错误数据),认为通信失败,主通信端210应进行通信故障报警,然后切换为下一从通信端220。如果后续通信过程中出现故障的从通信端220再次成功连接,则消除故障报警。
83.在故障期间主通信端210同样会遍历查询所有从通信端220,如果从通信端220故障持续,则持续报警;如果期间从通信端220恢复正常通信则故障解除。如果从通信端220被拆除,主通信端210仍会遍历查询该从通信端220,当从通信端220再次安装后,主通信端210会立即识别该从通信端220并完成通信。如果断电过程中拆除从通信端220,重新上电后,由于主通信端210没有识别到该新安装的从通信端220,则默认该从通信端220不存在,不与其通信。
84.从通信端220仅接收到主通信端210的发送的正确握手请求后,发送相应握手回复予以响应,其他状况均不回复,进入挂起状态。主通信端210接收到错误地址和数据需进行滤除。
85.主通信端210、从通信端220的发送数据应连续,各字节之间应无间隔。数据采取固定字节,发送频率由主通信端210确定。
86.本实施例的用于冰箱20的半双工通信方法,采用地址数据分开发送的模式,在保证数据能够快速、稳定发送接收的同时,加快了冰箱20的响应速度。
87.参见图8,图8是根据本发明另一个实施例的用于冰箱20的半双工通信方法中从通信端220接收数据的流程图。该方法一般性地可以包括以下步骤s402至步骤s416。
88.步骤s402:从通信端220获取主通信端210通过通信总线230发送的通信信息,并检测获取到通信信息前通信总线230的空闲时间。
89.步骤s404:比较通信总线的空闲时间是否大于第一阈值。
90.若否,执行步骤s414:确认通信信息为数据,并忽略数据。之后返回步骤s402。
91.若是,执行步骤s406:确认接收的主通信端210发送的通信信息为握手请求。
92.步骤s408:解析握手请求中的传送地址。
93.步骤s410:判断传送地址和从通信端220自身的地址是否相同。
94.若相同,执行步骤s412:返回握手回复至主通信端210,并进入通信状态。
95.若不同,执行步骤s416:从通信端220进入挂起状态。之后返回步骤s402。
96.上述各个实施例可以任意组合,根据上述任意一个优选实施例或多个优选实施例的组合,本发明实施例能够达到如下有益效果:
97.主通信端210采用将握手请求和数据分开发送的方式,从通信端220根据通信总线230的空闲时间便可以确定接收的来自主通信端210的通信信息是否为握手请求,减少了从通信端220分析通信信息来确定通信信息是否为握手请求的过程,减少了从通信端220的工作压力,也提高了确定通信信息是否为握手请求的效率,进而提高了主从通信端的传输效率。
98.至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
再多了解一些

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

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

相关文献