CN111367852B - 一种设备的操作方法、装置、设备和存储介质 - Google Patents
一种设备的操作方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111367852B CN111367852B CN202010208194.XA CN202010208194A CN111367852B CN 111367852 B CN111367852 B CN 111367852B CN 202010208194 A CN202010208194 A CN 202010208194A CN 111367852 B CN111367852 B CN 111367852B
- Authority
- CN
- China
- Prior art keywords
- command
- operation command
- controller
- original operation
- serial port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000015654 memory Effects 0.000 claims abstract description 30
- 230000005540 biological transmission Effects 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 abstract description 9
- 238000013461 design Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000005577 local transmission Effects 0.000 description 3
- 238000011017 operating method Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 235000015429 Mirabilis expansa Nutrition 0.000 description 1
- 244000294411 Mirabilis expansa Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 235000019504 cigarettes Nutrition 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 235000013536 miso Nutrition 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明实施例公开了一种设备的操作方法、装置、设备和存储介质,该方法包括:主控制器每间隔预设的主时间时,检测本地存储的命令数据包;主控制器在命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于原始操作命令生成目标操作命令;主控制器通过串口将目标操作命令传输至驱动器;驱动器按照目标操作命令驱动功能器件运行。这种设计方案,可以采用单线程、串口处理,串口具有两条线,为TX、RX,硬件的数量比SPI总线少,从而降低了成本,并且,单线程比双线程的线程数降低了,可以降低对主控制、从控制器的内存等资源占用,从而降低了主控制器、从控制器的负担。
Description
技术领域
本发明实施例涉及设备控制技术,尤其涉及一种设备的操作方法、装置、设备和存储介质。
背景技术
在家居、家电等设备中,通常根据场地的布置,为该设备设置多个控制器,方便不同场所的用户远程控制设备。
如果控制器同时控制这些设备,则设备的状态要在各个控制器上进行同步更新,以便用户准确地进行操作。
目前,控制器之间多采用SPI(Serial Peripheral Interface,串行外设接口)总线连接,实现控制器之间的线路控制和状态同步。
又或者,控制器之间通过双进程进行通信,实现控制器之间的线路控制和状态同步。
但是,SPI总线具有4条线,分别是CS(片选)、CLK(时钟)、MISO(数据输入)、MOSI(数据输出),硬件较多,成本较高,而双进程通信对控制器的内存等资源占用较大,增加控制器的负担。
发明内容
本发明实施例提供一种设备的操作方法、装置、设备和存储介质,以解决针对多控制器操作设备时、如何兼顾成本与资源负载的问题。
第一方面,本发明实施例提供了一种设备的操作方法,包括:
主控制器每间隔预设的主时间时,检测本地存储的命令数据包;
主控制器在所述命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于所述原始操作命令生成目标操作命令;
主控制器通过串口将所述目标操作命令传输至驱动器;
驱动器按照所述目标操作命令驱动功能器件运行。
可选地,所述基于所述原始操作命令生成目标操作命令,包括:
对所述原始操作命令中的命令码进行比较,所述命令码用于表示命令类型;
若所述命令码不同,则将所述原始操作命令中的命令码与命令参数写入目标操作命令,所述命令参数用于表示操作所述功能器件的参数;
若所述命令码相同,则基于所述原始操作命令中的命令参数生成新的命令参数,将所述命令码与所述新的命令参数写入目标操作命令。
可选地,所述基于所述原始操作命令中的命令参数生成新的命令参数,包括:
对所述原始操作命令的生成时间进行比较;
若所述生成时间之间的差值在预设的时间范围内,则确定所述原始操作命令的优先级,其中,由主控制器生成的原始操作命令的优先级高于由从控制器生成的原始操作命令的优先级;
将优先级最高的原始操作命令中的命令参数设置为新的命令参数;
若所述生成时间之间差值超过预设的时间范围,则按照所述命令码对应的合并逻辑、将所述原始操作命令中的命令参数合并为新的命令参数。
可选地,还包括:
主控制器在所述命令数据包为从控制器生成的心跳命令时,生成心跳命令;
主控制器通过串口将所述心跳命令传输至驱动器。
可选地,还包括:
主控制器接收主控制操作,响应于所述主控制操作,根据本地的状态信息生成原始操作命令;
主控制器将所述原始操作命令存储至本地。
可选地,还包括:
从控制器接收从控制操作,响应于所述从控制操作,根据本地的状态信息生成原始操作命令;
从控制器将所述原始操作命令存储至本地。
可选地,还包括:
从控制器每间隔预设的从时间,检测本地存储的命令数据包;
若所述命令数据包包括原始操作命令,则通过串口将所述原始操作命令发送至主控制器;
若所述命令数据包为空,则生成心跳命令,通过串口将所述心跳命令发送至主控制器。
可选地,还包括:
驱动器采集所述功能器件的状态信息,通过串口将所述状态信息传输至主控制器;
主控制器在本地更新所述功能器件的所述状态信息,通过串口将所述状态信息传输至从控制器;
从控制器在本地更新所述功能器件的所述状态信息。
第二方面,本发明实施例还提供了一种设备的操作装置,包括:
主控制器,用于每间隔预设的主时间时,检测本地存储的命令数据包;在所述命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于所述原始操作命令生成目标操作命令;通过串口将所述目标操作命令传输至驱动器;
驱动器,用于按照所述目标操作命令驱动功能器件运行。
可选地,所述主控制器还用于:
对所述原始操作命令中的命令码进行比较,所述命令码用于表示命令类型;
若所述命令码不同,则将所述原始操作命令中的命令码与命令参数写入目标操作命令,所述命令参数用于表示操作所述功能器件的参数;
若所述命令码相同,则基于所述原始操作命令中的命令参数生成新的命令参数,将所述命令码与所述新的命令参数写入目标操作命令。
可选地,所述主控制器还用于:
对所述原始操作命令的生成时间进行比较;
若所述生成时间之间的差值在预设的时间范围内,则确定所述原始操作命令的优先级,其中,由主控制器生成的原始操作命令的优先级高于由从控制器生成的原始操作命令的优先级;
将优先级最高的原始操作命令中的命令参数设置为新的命令参数;
若所述生成时间之间差值超过预设的时间范围,则按照所述命令码对应的合并逻辑、将所述原始操作命令中的命令参数合并为新的命令参数。
可选地,所述主控制器还用于:
在所述命令数据包为从控制器生成的心跳命令时,生成心跳命令;
通过串口将所述心跳命令传输至驱动器。
可选地,所述主控制器还用于:
接收主控制操作,响应于所述主控制操作,根据本地的状态信息生成原始操作命令;
将所述原始操作命令存储至本地。
可选地,所述从控制器还用于:
接收从控制操作,响应于所述从控制操作,根据本地的状态信息生成原始操作命令;
将所述原始操作命令存储至本地。
可选地,所述从控制器还用于:
每间隔预设的从时间,检测本地存储的命令数据包;
若所述命令数据包包括原始操作命令,则通过串口将所述原始操作命令发送至主控制器;
若所述命令数据包为空,则生成心跳命令,通过串口将所述心跳命令发送至主控制器。
可选地,所述驱动器,还用于采集所述功能器件的状态信息,通过串口将所述状态信息传输至主控制器;
所述主控制器,还用于在本地更新所述功能器件的所述状态信息,通过串口将所述状态信息传输至从控制器;
所述从控制器,还用于在本地更新所述功能器件的所述状态信息。
第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一所述的设备的操作方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一所述的设备的操作方法。
在本实施例中,主控制器每间隔预设的主时间时,检测本地存储的命令数据包,在命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于原始操作命令生成目标操作命令,通过串口将目标操作命令传输至驱动器,驱动器按照目标操作命令驱动功能器件运行,通过将数据的发送、接收进行分离,即单向地进行从从控制器到主控制器、从主控制器到驱动器、从驱动器到功能器件的数据传输,或者,单向地进行从功能器件到驱动器、从驱动器到主控制器、从主控器到从控制器的数据传输,可以将处理单向的时序在不同的时间、空间中进行,相互不受影响,这种设计方案,可以采用单线程、串口处理,串口具有两条线,为TX、RX,硬件的数量比SPI总线少,从而降低了成本,并且,单线程比双线程的线程数降低了,可以降低对主控制、从控制器的内存等资源占用,从而降低了主控制器、从控制器的负担。
附图说明
图1示例了本实施例提供的一种电子设备的控制时序图;
图2为本发明实施例一提供的一种设备的操作方法的流程图;
图3是本发明实施例二提供的一种设备的操作方法的流程图;
图4是本发明实施例三提供的一种设备的操作方法的流程图;
图5是本发明实施例四提供的一种设备的操作方法的流程图;
图6是本发明实施例五提供的一种设备的操作方法的流程图;
图7为本发明实施例六提供的一种设备的操作装置的结构示意图;
图8为本发明实施例七提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1示例了本实施例提供的一种电子设备的控制时序图。
如图1所示,电子设备分为如下主控制器110、从控制器120、驱动器130 与功能器件140等组件。
其中,主控制器110、从控制器120与驱动器130通过串口连接,串口具有两条线,一条线为RX(Receive,接收),另一条线为TX(Transmit,传送)。
需要说明的是,串口可以为硬件的线材,也可以为蓝牙等无线的方式虚拟串口协议,本实施例对此不加以限制。
在拓扑上,主控制器110位于从控制器120与驱动器130之间,从控制器 120与主控制器110通信,主控制器110与驱动器130通信,从控制器120与驱动器130之间不通信,但是,从控制器120可以通过主控制器110与驱动器 130相互影响,从控制器120之间不通信。
从通信协议上看,主控制110器属于通信的上位机,从控制器120、驱动器130属于通信的下位机。
在本实施例中,设计了统一的命令数据包,该命令数据包可以表现为心跳命令,也可以表现为操作命令。
示例性地,命令数据包的结构如下:
其中,魔数表示每一帧数据的头部字节,可以用于判断命令数据包的识别码,一般为固定值,如0xA5,命令码用于表示命令类型,即心跳命令、操作命令,该操作命令为具体功能器件具体的操作,如温度控制、水流量控制等,命令参数用于表示操作该功能器件的参数。
对于心跳命令,命令参数为空,对于操作命令,命令参数不为空。
具体而言:
1、主控制器110
主控制器110属于设备的一个控制器,一般情况下,在生产设备时,已设计好作为主控制器110的组件,并将协议写入该组件的代码中,即出厂时烧录对应的代码,通过烧录好的代码可以确认每个组件的版本号,从而定义主控制器110。
当然,用户也可以通过移动终端等第三方设备,使用NFC(Near FieldCommunication,近距离无线通讯技术)、Wi-Fi(无线保真)等方式与组件连接,并定义其为主控制器,等等,本实施例对此不加以限制。
在产品设计上,主控制器110可以为按键式的组件,一般设置在电子设备主体的面板上,也可以设置在远离电子设备主体之外的地方,当然,主控制器 110也可以为带屏幕的触控式组件,本实施例对此不加以限制。
进一步而言,主控制器110包括心跳命令控制器111、操作命令控制器112、状态反馈器113、接收队列(图1中未示出)、发送队列(图1中未示出)、存储器(图1中未示出)等模块。
其中,心跳命令控制器111用于管理心跳命令,操作命令控制器112用于管理操作命令,状态反馈器113用于管理功能模块140的状态,接收队列用于接收命令数据包、状态信息,发送队列用于发送命令数据包、功能器件的状态信息,存储器用于存储功能器件的的状态信息。
需要说明的是,在主控制器110中,心跳命令控制器111、操作命令控制器112、状态反馈器113均可以属于同一条线程,该线程可以称之为CE(Command Executor,命令控制线程)线程。
2、从控制器120
从控制器120属于设备的一个控制器,一般情况下,在生产设备时,已设计好作为从控制器120的组件,并将协议写入该组件的代码中,即出厂时烧录对应的代码,通过烧录好的代码可以确认每个组件的版本号,从而定义从控制器120。
当然,用户也可以通过移动终端等第三方设备,使用NFC、Wi-Fi等方式与组件连接,并定义其为主控制器,等等,本实施例对此不加以限制。
在产品设计上,从控制器120可以为带屏幕的触控式组件,一般设置在远离电子设备主体之外的地方,例如,电子设备为烤箱、冰箱等家电,摆放在厨房,则从控制器120可以安装在客厅,当然,从控制器120也可以为按键式的组件,本实施例对此不加以限制。
进一步而言,从控制器120包括心跳命令控制器121、操作命令控制器122、状态接收器123、接收队列(图1中未示出)、发送队列(图1中未示出)、存储器(图1中未示出)等模块。
其中,心跳命令控制器121用于管理心跳命令,操作命令控制器122用于管理操作命令,状态接收器123用于管理功能模块140的状态,接收队列用于接收命令数据包、状态信息,发送队列用于发送命令数据包、功能器件的状态信息,存储器用于存储功能器件的的状态信息。
需要说明的是,在从控制器120中,心跳命令控制器121、操作命令控制器122、状态接收器123均可以属于同一条线程,该线程可以称之为CE线程。
3、驱动器130
驱动器130为功能器件的驱动装置,可以指的是电源板载体以及电源板上所以的继电器端口输出。
进一步而言,驱动器130包括命令执行器131、状态反馈器132、接收队列 (图1中未示出)、发送队列(图1中未示出)、存储器(图1中未示出)等模块。
其中,命令执行器131用于执行操作命令,状态反馈器132用于管理功能模块140的状态,接收队列用于接收命令数据包、状态信息,发送队列用于发送命令数据包、功能器件的状态信息,存储器用于存储功能器件的的状态信息。
4、功能器件140
功能器件140为电子设备中实现一个或多个功能的组件。
例如,若电子设备为烤箱,则功能器件140可以分别为电源开关、灯、可旋转的托盘、发热管、定时器等等。
又例如,若电子设备为热水器,则功能器件140可以分辨为温度调节器、定时器、水量计等等。
一般而言,驱动器130为一块电源板即可控制多个功能器件140,例如,对于温度调机器,其是电源板载体上的一个继电器端口输出,对于可旋转的托盘,则是其上的另外一个端口输出。
实施例一
图2为本发明实施例一提供的一种设备的操作方法的流程图,本实施例可适用于主机合并操作命令的情况,该方法可以由设备的操作装置来执行,该设备的操作装置可以由软件和/或硬件实现,可配置在电子设备中,例如,烟机、烤箱、冰箱、热水器、洗衣机,等等,该方法具体包括如下步骤:
S201、主控制器每间隔预设的主时间时,检测本地存储的命令数据包。
在本实施例中,在主控制器中可以设置一时间作为主时间,如500ms,每间隔该主时间,则可以准备向驱动器下发命令数据包,此时,本地的CE线程可检查在本地的接收队列所存储的命令数据包的类型。
S202、主控制器在命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于原始操作命令生成目标操作命令。
对于主控制器本地的接收队列存储的命令数据包为原始操作命令时,具有如下几种情况:
如果命令数据包仅为一个主控制器生成的原始操作命令,则本地的CE线程可以将主控制器生成的原始操作命令设置为目标操作命令。
如果命令数据包仅为一个从控制器生成的原始操作命令,则本地的CE线程可以将从控制器生成的原始操作命令设置为目标操作命令。
如果命令数据包仅为两个或两个以上主控制器生成的原始操作命令,或者,两个或两个以上从控制器生成的原始操作命令,或者,同时具有主控制器生成的原始操作命令与从控制器生成的原始操作命令、且数量为两个或两个以上,则本地的CE线程可以将原始操作命令进行合并,从而生成目标操作命令。
此外,如果本地接收队列所存储的命令数据包为空,则表示从控制器断开与主控制器之间的长连接。
需要说明的是,原始操作命令与目标操作命令均为操作命令,仅是为了区分不同的状态而言,其数据包的结构均保持一致。
在具体实现中,命令数据包的结构包括命令码、命令参数,对于合并的情况,可以对原始操作命令中的命令码进行比较。
若命令码不同,表示操作的功能器件的功能不同,原始操作命令之间并不存在冲突,则可以将原始操作命令中的命令码与命令参数写入目标操作命令。
若命令码相同,表示操作的功能器件的功能相同,原始操作命令之间可能存在冲突,则基于原始操作命令中的命令参数生成新的命令参数,将命令码与新的命令参数写入目标操作命令,避免产生冲突。
进一步而言,本地的CE线程对原始操作命令的生成时间进行比较。
若生成时间之间的差值在预设的时间范围(如200ms)内,可以认为是在同一时间发生的原始操作命令,则可以确定原始操作命令的优先级,其中,由主控制器生成的原始操作命令的优先级高于由从控制器生成的原始操作命令的优先级。
将优先级最高的原始操作命令中的命令参数设置为新的命令参数。
若生成时间之间差值超过预设的时间范围(如200ms),可以认为是在不同时间发生的原始操作命令,则可以按照命令码对应的合并逻辑、将原始操作命令中的命令参数合并为新的命令参数。
需要说明的是,不同的功能器件的功能有所不同,本领域技术人员可以根据实际情况设置其命令参数的合并逻辑,本实施例对此不加以限制。
例如,若原始操作命令中的命令码表示温度调节器,则将温度调节器调节为命令参数所表示的温度,此时,按照相应的合并逻辑,可以将生成时间最晚的一个原始操作命令中的命令参数(温度)设置为新的命令参数(温度)。
S203、主控制器通过串口将目标操作命令传输至驱动器。
主控制器本地的CE线程在生成目标操作命令之后,存储至本地的发送队列,通过串口中的TX将该发送队列中的目标操作命令传输至驱动器。
需要说明的是,目标操作命令除了操作功能器件的作用之外,还有心跳的作用,即目标操作命令可以看作携带有操作信息(命令码、命令参数)的心跳命令。
S204、驱动器按照目标操作命令驱动功能器件运行。
驱动器通过串口的RX接收主控制器发送的目标操作命令,存储至本地的接收队列,待其他线程提取该接收队列中的目标操作命令,解析操作码、操作参数,按照驱动的协议,驱动功能器件执行相应的操作。
在本实施例中,主控制器每间隔预设的主时间时,检测本地存储的命令数据包,在命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于原始操作命令生成目标操作命令,通过串口将目标操作命令传输至驱动器,驱动器按照目标操作命令驱动功能器件运行,通过将数据的发送、接收进行分离,即单向地进行从从控制器到主控制器、从主控制器到驱动器、从驱动器到功能器件的数据传输,或者,单向地进行从功能器件到驱动器、从驱动器到主控制器、从主控器到从控制器的数据传输,可以将处理单向的时序在不同的时间、空间中进行,相互不受影响,这种设计方案,可以采用单线程、串口处理,串口具有两条线,为TX、RX,硬件的数量比SPI总线少,从而降低了成本,并且,单线程比双线程的线程数降低了,可以降低对主控制、从控制器的内存等资源占用,从而降低了主控制器、从控制器的负担。
此外,本实施例将操作命令复用心跳命令的作用,可以在时间、空间上减少命令数据包的数量,维持单线程操作,可以降低带宽、内存等资源的占用。
实施例二
图3为本发明实施例二提供的一种设备的操作方法的流程图,本实施例以前述实施例为基础,进一步增加主控制器、从控制器生成原始操作命令的处理操作,该方法具体包括如下步骤:
S301、主控制器接收主控制操作,响应于主控制操作,根据本地的状态信息生成原始操作命令。
S302、主控制器将原始操作命令存储至本地。
在本实施例中,主控制器提供用户交互,用户可以根据实际情况在主控器中触发主控制操作,如按下按键、触摸控件等,此时,主控制器本地的CE线程可以从本地的存储器中读取功能器件的状态信息,在该状态信息的基础上,按照命令数据包的结构生成相应的操作命令,作为原始操作命令,并存储在本地的接收队列。
例如,若用户触发主控制操作,对烤箱的温度调节器增加50℃的温度,此时,主控制器检测本地的存储器中,烤箱的温度为280℃,此时,可以在命令数据包中,命令码表示适用于温度调节器的温度调节命令,命令参数为330(表示将温度调节为330℃)。
S303、主控制器每间隔预设的主时间时,检测本地存储的命令数据包。
S304、主控制器在命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于原始操作命令生成目标操作命令。
S305、主控制器通过串口将目标操作命令传输至驱动器。
S306、驱动器按照目标操作命令驱动功能器件运行。
实施例三
图4为本发明实施例三提供的一种设备的操作方法的流程图,本实施例以前述实施例为基础,进一步增加主控制器下发心跳命令的处理操作,该方法具体包括如下步骤:
S401、主控制器每间隔预设的主时间时,检测本地存储的命令数据包。
S402、主控制器在命令数据包为从控制器生成的心跳命令时,生成心跳命令。
S403、主控制器通过串口将心跳命令传输至驱动器。
对于主控制器本地的接收队列存储的命令数据包为心跳命令,表示主控制器、从控制器在每两次与驱动器通信期间,用户均并未在主控制器与从控制器进行操作。
此时,主控制器本地的CE线程可以按照命令数据包的结构生成相应的心跳命令,并写入本地的发送队列,通过串口中的TX将该发送队列中的心跳命令传输至驱动器,与此同时,主控制器并不直接对从控制器的心跳命令进行反馈,而是等待驱动器对主控制器的心跳命令的反馈。
实施例四
图5为本发明实施例四提供的一种设备的操作方法的流程图,本实施例以前述实施例为基础,进一步增加从控制器生成原始操作命令的处理操作,该方法具体包括如下步骤:
S501、从控制器接收从控制操作,响应于从控制操作,根据本地的状态信息生成原始操作命令。
S502、从控制器将原始操作命令存储至本地。
在本实施例中,从控制器提供用户交互,用户可以根据实际情况在从控器中触发从控制操作,如按下按键、触摸控件等,此时,从控制器本地的CE线程可以从本地的存储器中读取功能器件的状态信息,在该状态信息的基础上,按照命令数据包的结构生成相应的操作命令,作为原始操作命令,并存储在本地的接收队列。
S503、从控制器每间隔预设的从时间,检测本地存储的命令数据包。
在本实施例中,在从控制器中可以设置一时间作为从时间,如500ms,每间隔该从时间,则可以准备向主控制器下发命令数据包,此时,本地的CE线程可检查在本地的接收队列所存储的命令数据包的类型。
S504、若命令数据包包括原始操作命令,则通过串口将原始操作命令发送至主控制器。
对于从控制器本地的接收队列存储的命令数据包包括原始操作命令,表示从控制器在每两次与主控制器通信的期间,用户在从控制器进行了操作。
此时,从控制器本地的CE线程可以将该原始操作命令从本地的接收队列取出,并写入本地的发送队列,通过串口中的TX将该发送队列中的原始操作命令传输至主控制器,并等待主控制器针对该原始操作命令的反馈。
S505、若命令数据包为空,则生成心跳命令,通过串口将心跳命令发送至主控制器。
对于从控制器本地的接收队列存储的命令数据包为空,表示从控制器在每两次与主控制器通信的期间,用户未在从控制器进行操作。
此时,从控制器本地的CE线程可以按照命令数据包的结构生成相应的心跳命令,并写入本地的发送队列,通过串口中的TX将该发送队列中的心跳命令传输至主控制器,等待主控制器对该心跳命令的反馈。
实施例五
图6为本发明实施例五提供的一种设备的操作方法的流程图,本实施例以前述实施例为基础,进一步增加驱动器反馈主控制器、主控制器反馈从控制器的处理操作,该方法具体包括如下步骤:
S601、驱动器采集功能器件的状态信息,通过串口将状态信息传输至主控制器。
在驱动器中可设置一个时间,作为采集时间,如500ms,每间隔该采集时间,采集功能器件的状态信息,写入本地的发送队列,通过串口中的TX将该发送队列中的状态信息传输至主控制器。
需要说明的是,驱动器发送的状态信息除了与主控制器同步功能器件的状态之外,还有心跳的作用,即状态信息可以看作是主控制器对在先心跳命令(目标操作命令)的心跳反馈。
S602、主控制器在本地更新功能器件的状态信息,通过串口将状态信息传输至从控制器。
主控制器本地的CE线程通过串口的RX接收驱动器发送的状态信息,以该状态信息更新本地存储器存储的状态信息,实现功能器件的状态信息在驱动器与主控制器之间同步。
此外,主控制器本地的CE线程将该状态信息写入本地的发送队列中,通过串口的TX该发送队列中的状态信息传输至从控制器。
需要说明的是,主控制器发送的状态信息除了与从控制器同步功能器件的状态之外,还有心跳的作用,即状态信息可以看作是从控制器对在先心跳命令 (原始操作命令)的心跳反馈。
S603、从控制器在本地更新功能器件的状态信息。
从控制器本地的CE线程通过串口的RX接收主控制器发送的状态信息,以该状态信息更新本地存储器存储的状态信息,实现功能器件的状态信息在主控制器与从控制器之间的同步。
在本实施例中,驱动器采集功能器件的状态信息,通过串口将状态信息传输至主控制器,主控制器在本地更新功能器件的状态信息,通过串口将状态信息传输至从控制器,从控制器在本地更新功能器件的状态信息,通过从功能器件至驱动器、从驱动器至主控制器、从主控制器至从控制器的分级同步机制,可以保证主控制器、从控制器对于功能器件的状态的准确性。
实施例六
图7为本发明实施例六提供的一种设备的操作装置的结构示意图,该装置具体可以包括如下模块:
主控制器701,用于每间隔预设的主时间时,检测本地存储的命令数据包;在所述命令数据包包括主控制器701和/或从控制器702生成的原始操作命令时,基于所述原始操作命令生成目标操作命令;通过串口将所述目标操作命令传输至驱动器703;
驱动器703,用于按照所述目标操作命令驱动功能器件运行。
在本发明的一实施例中,所述主控制器701还用于:
对所述原始操作命令中的命令码进行比较,所述命令码用于表示命令类型;
若所述命令码不同,则将所述原始操作命令中的命令码与命令参数写入目标操作命令,所述命令参数用于表示操作所述功能器件的参数;
若所述命令码相同,则基于所述原始操作命令中的命令参数生成新的命令参数,将所述命令码与所述新的命令参数写入目标操作命令。
在本发明的一实施例中,所述主控制器701还用于:
对所述原始操作命令的生成时间进行比较;
若所述生成时间之间的差值在预设的时间范围内,则确定所述原始操作命令的优先级,其中,由主控制器生成的原始操作命令的优先级高于由从控制器生成的原始操作命令的优先级;
将优先级最高的原始操作命令中的命令参数设置为新的命令参数;
若所述生成时间之间差值超过预设的时间范围,则按照所述命令码对应的合并逻辑、将所述原始操作命令中的命令参数合并为新的命令参数。
在本发明的一实施例中,所述主控制器701还用于:
在所述命令数据包为从控制器生成的心跳命令时,生成心跳命令;
通过串口将所述心跳命令传输至驱动器。
在本发明的一实施例中,所述主控制器701还用于:
接收主控制操作,响应于所述主控制操作,根据本地的状态信息生成原始操作命令;
将所述原始操作命令存储至本地。
在本发明的一实施例中,所述从控制器702还用于:
接收从控制操作,响应于所述从控制操作,根据本地的状态信息生成原始操作命令;
将所述原始操作命令存储至本地。
在本发明的一实施例中,所述从控制器702还用于:
每间隔预设的从时间,检测本地存储的命令数据包;
若所述命令数据包包括原始操作命令,则通过串口将所述原始操作命令发送至主控制器;
若所述命令数据包为空,则生成心跳命令,通过串口将所述心跳命令发送至主控制器。
在本发明的一实施例中,
所述驱动器703,还用于采集所述功能器件的状态信息,通过串口将所述状态信息传输至主控制器;
所述主控制器701,还用于在本地更新所述功能器件的所述状态信息,通过串口将所述状态信息传输至从控制器;
所述从控制器702,还用于在本地更新所述功能器件的所述状态信息。
本发明实施例所提供的设备的操作装置可执行本发明任意实施例所提供的设备的操作方法,具备执行方法相应的功能模块和有益效果。
实施例七
图8为本发明实施例七提供的一种电子设备的结构示意图。如图8所示,该电子设备包括处理器800、存储器801、通信模块802、输入装置803和输出装置804;电子设备中处理器800的数量可以是一个或多个,图8中以一个处理器800为例;电子设备中的处理器800、存储器801、通信模块802、输入装置803和输出装置804可以通过总线或其他方式连接,图8中以通过总线连接为例。
存储器801作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本实施例中的设备的操作方法对应的模块(例如,如图7所示的设备的操作装置中的主控制器701、从控制702和驱动器703)。处理器800通过运行存储在存储器801中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的设备的操作方法。
存储器801可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器801可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器801可进一步包括相对于处理器 800远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块802,用于与显示屏建立连接,并实现与显示屏的数据交互。
输入装置803可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取音频数据的拾音设备。
输出装置804可以包括扬声器等音频设备。
需要说明的是,输入装置803和输出装置804的具体组成可以根据实际情况设定。
处理器800通过运行存储在存储器801中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的电子白板的连接节点控制方法。
本实施例提供的电子设备,可执行本发明任一实施例提供的设备的操作方法,具体相应的功能和有益效果。
实施例八
本发明实施例八还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现一种设备的操作方法,该方法包括:
主控制器每间隔预设的主时间时,检测本地存储的命令数据包;
主控制器在所述命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于所述原始操作命令生成目标操作命令;
主控制器通过串口将所述目标操作命令传输至驱动器;
驱动器按照所述目标操作命令驱动功能器件运行。
当然,本发明实施例所提供的计算机可读存储介质,其计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的设备的操作方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器 (Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述设备的操作装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种设备的操作方法,其特征在于,包括:
主控制器的命令控制线程每间隔预设的主时间时,检测本地存储的命令数据包;
主控制器的命令控制线程在所述命令数据包包括主控制器和/或从控制生成的原始操作命令时,基于所述原始操作命令生成目标操作命令;
主控制器通过串口的传送线将所述目标操作命令传输至驱动器,所述串口包括:传送线和接收线;
驱动器通过串口的接收线接收主控制器发送的目标操作命令,按照所述目标操作命令驱动功能器件运行。
2.根据权利要求1所述的方法,其特征在于,所述基于所述原始操作命令生成目标操作命令,包括:
对所述原始操作命令中的命令码进行比较,所述命令码用于表示命令类型;
若所述命令码不同,则将所述原始操作命令中的命令码与命令参数写入目标操作命令,所述命令参数用于表示操作所述功能器件的参数;
若所述命令码相同,则基于所述原始操作命令中的命令参数生成新的命令参数,将所述命令码与所述新的命令参数写入目标操作命令。
3.根据权利要求2所述的方法,其特征在于,所述基于所述原始操作命令中的命令参数生成新的命令参数,包括:
对所述原始操作命令的生成时间进行比较;
若所述生成时间之间的差值在预设的时间范围内,则确定所述原始操作命令的优先级,其中,由主控制器生成的原始操作命令的优先级高于由从控制器生成的原始操作命令的优先级;
将优先级最高的原始操作命令中的命令参数设置为新的命令参数;
若所述生成时间之间差值超过预设的时间范围,则按照所述命令码对应的合并逻辑、将所述原始操作命令中的命令参数合并为新的命令参数。
4.根据权利要求1所述的方法,其特征在于,还包括:
主控制器在所述命令数据包为从控制器生成的心跳命令时,生成心跳命令;
主控制器通过串口将所述心跳命令传输至驱动器。
5.根据权利要求1所述的方法,其特征在于,还包括:
主控制器接收主控制操作,响应于所述主控制操作,根据本地的状态信息生成原始操作命令;
主控制器将所述原始操作命令存储至本地。
6.根据权利要求1所述的方法,其特征在于,还包括:
从控制器接收从控制操作,响应于所述从控制操作,根据本地的状态信息生成原始操作命令;
从控制器将所述原始操作命令存储至本地。
7.根据权利要求1所述的方法,其特征在于,还包括:
从控制器每间隔预设的从时间,检测本地存储的命令数据包;
若所述命令数据包包括原始操作命令,则通过串口将所述原始操作命令发送至主控制器;
若所述命令数据包为空,则生成心跳命令,通过串口将所述心跳命令发送至主控制器。
8.根据权利要求1-7任一项所述的方法,其特征在于,还包括:
驱动器采集所述功能器件的状态信息,通过串口将所述状态信息传输至主控制器;
主控制器在本地更新所述功能器件的所述状态信息,通过串口将所述状态信息传输至从控制器;
从控制器在本地更新所述功能器件的所述状态信息。
9.一种设备的操作装置,其特征在于,包括:
主控制器,用于每间隔预设的主时间时,通过命令控制线程检测本地存储的命令数据包;在所述命令数据包包括主控制器和/或从控制生成的原始操作命令时,通过命令控制线程基于所述原始操作命令生成目标操作命令;通过串口的传送线将所述目标操作命令传输至驱动器,所述串口包括传送线和接收线;
驱动器,用于通过串口的接收线接收主控制器发送的目标操作命令,按照所述目标操作命令驱动功能器件运行。
10.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的设备的操作方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010208194.XA CN111367852B (zh) | 2020-03-23 | 2020-03-23 | 一种设备的操作方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010208194.XA CN111367852B (zh) | 2020-03-23 | 2020-03-23 | 一种设备的操作方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111367852A CN111367852A (zh) | 2020-07-03 |
CN111367852B true CN111367852B (zh) | 2021-08-10 |
Family
ID=71207661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010208194.XA Active CN111367852B (zh) | 2020-03-23 | 2020-03-23 | 一种设备的操作方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111367852B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1910571A (zh) * | 2003-07-25 | 2007-02-07 | 国际商业机器公司 | 单芯片协议转换器 |
CN104092825A (zh) * | 2014-07-07 | 2014-10-08 | 深圳市微思客技术有限公司 | 蓝牙语音控制方法、装置及智能终端 |
CN106406616A (zh) * | 2010-09-07 | 2017-02-15 | 苹果公司 | 触摸感测的主/从控制 |
CN106604213A (zh) * | 2016-12-22 | 2017-04-26 | 上海百芝龙网络科技有限公司 | 一种蓝牙设备配对系统 |
CN110113323A (zh) * | 2019-04-20 | 2019-08-09 | 深圳瀚星翔科技有限公司 | 一种通信方法、电子设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530153B (zh) * | 2015-12-11 | 2019-02-05 | 上海新时达电气股份有限公司 | 网络内的从设备通信方法、通信网络、主设备及从设备 |
-
2020
- 2020-03-23 CN CN202010208194.XA patent/CN111367852B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1910571A (zh) * | 2003-07-25 | 2007-02-07 | 国际商业机器公司 | 单芯片协议转换器 |
CN106406616A (zh) * | 2010-09-07 | 2017-02-15 | 苹果公司 | 触摸感测的主/从控制 |
CN104092825A (zh) * | 2014-07-07 | 2014-10-08 | 深圳市微思客技术有限公司 | 蓝牙语音控制方法、装置及智能终端 |
CN106604213A (zh) * | 2016-12-22 | 2017-04-26 | 上海百芝龙网络科技有限公司 | 一种蓝牙设备配对系统 |
CN110113323A (zh) * | 2019-04-20 | 2019-08-09 | 深圳瀚星翔科技有限公司 | 一种通信方法、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111367852A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102170344B1 (ko) | 지상국, 무인항공기 및 지상국과 무인항공기의 통신 시스템, 방법 | |
CN105723652B (zh) | 用于控制智能家庭系统的方法和电子设备 | |
CN113545009B (zh) | 场景操作方法、装置、电子设备及计算机可读介质 | |
KR20050014786A (ko) | 홈 네트워크 시스템 | |
WO2014067256A1 (zh) | 一种遥控方法、智能终端及智能遥控系统 | |
CN112202654B (zh) | 控制指令处理方法、装置、设备及存储介质 | |
CN108234562B (zh) | 一种设备控制方法、控制设备和受控设备 | |
CN114615307B (zh) | 设备控制方法、控制终端及服务端设备 | |
CN112533242A (zh) | 一种led设备组网方法、装置及设备 | |
CN110501979A (zh) | 一种集群控制方法、系统及终端设备 | |
CN111367852B (zh) | 一种设备的操作方法、装置、设备和存储介质 | |
CN112019409B (zh) | 设备配网处理方法、设备配网处理装置及电子设备 | |
WO2019227379A1 (zh) | 网络连接方法、装置及可读存储介质 | |
JP2015088822A (ja) | 通信装置、通信方法および通信システム | |
CN113254077A (zh) | 智能设备的状态控制方法、装置、电子设备及存储介质 | |
CN108055185B (zh) | 家用电器的通信系统、通信方法以及家用电器 | |
CN111917595A (zh) | 系统升级方法、装置、智能设备以及存储介质 | |
CN111919419A (zh) | 节点、网络系统和数据同步方法 | |
CN115225726B (zh) | 多协议终端的组网方法、通信方法、存储介质及电子设备 | |
CN110719213B (zh) | 一种数据处理方法、装置及电子设备和存储介质 | |
CN112152885B (zh) | 设备控制方法、装置、家电设备和遥控设备 | |
WO2016113870A1 (ja) | 宅内制御装置および宅内制御システム | |
JP2015033122A (ja) | 通信システム、サーバ装置、制御方法、およびプログラム | |
WO2023011309A1 (zh) | 反馈方法、相关设备及可读存储介质 | |
JP6066740B2 (ja) | ネットワークシステム及びサーバ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |