Equipment control methods, devices, electronic equipment and storage media
By receiving and analyzing the control command type information of home IoT devices, the target control command is determined, which solves the problem of command conflict in multi-user operation and improves the device control's conformity to user expectations and reliability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-31
- Publication Date
- 2026-03-13
AI Technical Summary
In existing technologies, when multiple people operate home IoT devices in person or remotely, control command conflicts are likely to occur, making it difficult for device control to meet user expectations and prone to malfunctions.
By receiving the first and second control commands, determining their type information, and based on this information, determining the target control command, the device is controlled according to the target command.
This has enabled equipment control to better meet user expectations and reduced the probability of equipment failure.
Smart Images

Figure CN115562061B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of the Internet of Things, and more particularly to a device control method, apparatus, electronic device, and storage medium. Background Technology
[0002] In existing technologies, control command conflicts can easily occur when multiple people operate home IoT devices in person or remotely. For example, if two users simultaneously send different control commands to the same device, the device often cannot determine which control command to follow.
[0003] Currently, the operation of home IoT devices does not take into account how to handle command conflicts caused by multiple people controlling the device simultaneously, making it difficult for the device to be controlled in accordance with user expectations and making the device prone to failure.
[0004] It is evident that how to make equipment control more in line with user expectations and reduce the probability of equipment failure is a technical issue worthy of attention. Summary of the Invention
[0005] In view of this, in order to solve some or all of the above-mentioned technical problems, embodiments of this application provide a device control method, apparatus, electronic device and storage medium.
[0006] In a first aspect, embodiments of this application provide a device control method, the method comprising:
[0007] Receive a first control command and a second control command, wherein the second control command is a conflicting command of the first control command;
[0008] Determine the first type information of the first control instruction and the second type information of the second control instruction;
[0009] Based on the first type of information and the second type of information, the target control command is determined;
[0010] The device is controlled according to the target control command.
[0011] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0012] If the first type of information indicates that the first control instruction is a preset stop instruction, and the second type of information indicates that the second control instruction does not represent the preset stop instruction, then the first control instruction is determined to be the target control instruction.
[0013] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0014] Determine whether the first type of information indicates that the first sending end is connected to the same network as the device, wherein the first sending end is the sending end of the first control command;
[0015] Determine whether the second type of information indicates that the second sending end is connected to the same network as the device, wherein the second sending end is the sending end of the second control command;
[0016] If the first type of information indicates that the first transmitter and the device are connected to the same network, and the second type of information does not indicate that the second transmitter and the device are connected to the same network, then the first control command is determined as the target control command.
[0017] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0018] Determine whether the first type of information indicates that the first control instruction is an online control instruction;
[0019] Determine whether the second type of information indicates that the second control command is an offline control command;
[0020] If the first type of information indicates that the first control instruction is the online control instruction, and the second type of information indicates that the second control instruction is the offline control instruction, then the second control instruction is determined as the target control instruction.
[0021] In one possible implementation, after determining the second control command as the target control command, the method further includes:
[0022] Upon receiving an offline control command instructing the device to stop operating, the device is controlled according to the first control command.
[0023] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0024] Determine whether the first type of information indicates that the first control instruction is the next control instruction after the most recently executed control instruction of the device in a preset control instruction sequence, wherein the preset control instruction sequence represents the control order of the device;
[0025] Determine whether the second type of information indicates that the second control instruction is the next control instruction;
[0026] If the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, then the first control instruction is determined as the target control instruction.
[0027] In one possible implementation, determining the first control instruction as the target control instruction when the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, includes:
[0028] Determine whether the first type of information also indicates that the first sending end is connected to the same network as the device, wherein the first sending end is the sending end of the first control command;
[0029] Determine whether the second type of information also indicates that the second sending end is connected to the same network as the device, wherein the second sending end is the sending end of the second control command;
[0030] If the first type of information indicates that the first control instruction is the next control instruction, and the first type of information also indicates that the first transmitting end and the device are connected to the same network, and the second type of information does not indicate that the second control instruction is the next control instruction, and the second type of information does not indicate that the second transmitting end and the device are connected to the same network, then the first control instruction is determined as the target control instruction.
[0031] In one possible implementation, when the first type of information does not indicate that the first control instruction is the next control instruction, the method further includes:
[0032] Send a first feedback message to the first sending end, wherein the first feedback message indicates that the control command sent by the first sending end is incorrect.
[0033] In one possible implementation, if the first type of information further indicates that the first sending end and the device are connected to the same network, after sending the first feedback information to the first sending end, the method further includes:
[0034] The target control command is determined from a preset set of control commands, wherein the preset set of control commands is a set of online control commands received by the device from transmitters connected to different networks.
[0035] In one possible implementation, the method further includes:
[0036] Determine whether the device is in an idle state;
[0037] When the device is in the idle state, the device is allowed to receive online control commands and offline control commands;
[0038] If the device is not in the idle state, the device is allowed to receive the offline control command, the device is prohibited from receiving the online control command, and if the online control command is sent to the device by the third sending end, a second feedback information is sent to the third sending end, wherein the second feedback information indicates that the device is not in the idle state.
[0039] In one possible implementation, receiving the first control command and the second control command includes:
[0040] Receive a control command once at a preset interval;
[0041] If at least two control commands indicating different operations are received in a single instance, it is determined that the first control command and the second control command have been received.
[0042] Secondly, embodiments of this application provide a device control apparatus, the apparatus comprising:
[0043] A receiving unit is configured to receive a first control instruction and a second control instruction, wherein the second control instruction is a conflicting instruction of the first control instruction;
[0044] The first determining unit is configured to determine the first type information of the first control instruction and the second type information of the second control instruction;
[0045] The second determining unit is used to determine the target control command based on the first type of information and the second type of information;
[0046] The first control unit is used to control the device according to the target control command.
[0047] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0048] If the first type of information indicates that the first control instruction is a preset stop instruction, and the second type of information indicates that the second control instruction does not represent the preset stop instruction, then the first control instruction is determined to be the target control instruction.
[0049] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0050] Determine whether the first type of information indicates that the first sending end is connected to the same network as the device, wherein the first sending end is the sending end of the first control command;
[0051] Determine whether the second type of information indicates that the second sending end is connected to the same network as the device, wherein the second sending end is the sending end of the second control command;
[0052] If the first type of information indicates that the first transmitter and the device are connected to the same network, and the second type of information does not indicate that the second transmitter and the device are connected to the same network, then the first control command is determined as the target control command.
[0053] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0054] Determine whether the first type of information indicates that the first control instruction is an online control instruction;
[0055] Determine whether the second type of information indicates that the second control command is an offline control command;
[0056] If the first type of information indicates that the first control instruction is the online control instruction, and the second type of information indicates that the second control instruction is the offline control instruction, then the second control instruction is determined as the target control instruction.
[0057] In one possible implementation, after determining the second control command as the target control command, the device further includes:
[0058] The second control unit is configured to control the device in accordance with the first control instruction upon receiving an offline control instruction instructing the device to stop operating.
[0059] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0060] Determine whether the first type of information indicates that the first control instruction is the next control instruction after the most recently executed control instruction of the device in a preset control instruction sequence, wherein the preset control instruction sequence represents the control order of the device;
[0061] Determine whether the second type of information indicates that the second control instruction is the next control instruction;
[0062] If the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, then the first control instruction is determined as the target control instruction.
[0063] In one possible implementation, determining the first control instruction as the target control instruction when the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, includes:
[0064] Determine whether the first type of information also indicates that the first sending end is connected to the same network as the device, wherein the first sending end is the sending end of the first control command;
[0065] Determine whether the second type of information also indicates that the second sending end is connected to the same network as the device, wherein the second sending end is the sending end of the second control command;
[0066] If the first type of information indicates that the first control instruction is the next control instruction, and the first type of information also indicates that the first transmitting end and the device are connected to the same network, and the second type of information does not indicate that the second control instruction is the next control instruction, and the second type of information does not indicate that the second transmitting end and the device are connected to the same network, then the first control instruction is determined as the target control instruction.
[0067] In one possible implementation, if the first type of information does not indicate that the first control command is the next control command, the device further includes:
[0068] The sending unit is used to send first feedback information to the first sending end, wherein the first feedback information indicates that the control command sent by the first sending end is incorrect.
[0069] In one possible implementation, if the first type of information further indicates that the first sending end and the device are connected to the same network, after sending the first feedback information to the first sending end, the device further includes:
[0070] The third determining unit is used to determine the target control instruction from a preset control instruction set, wherein the preset control instruction set is a set of online control instructions received by the device from transmitters connected to different networks.
[0071] In one possible implementation, the device further includes:
[0072] The fourth determining unit is used to determine whether the device is in an idle state;
[0073] The third control unit is configured to allow the device to receive online control commands and offline control commands when the device is in the idle state.
[0074] The fourth control unit is configured to, when the device is not in the idle state, allow the device to receive the offline control command, prohibit the device from receiving the online control command, and send a second feedback information to the third sending terminal when the online control command is sent to the device by the third sending terminal, wherein the second feedback information indicates that the device is not in the idle state.
[0075] In one possible implementation, receiving the first control command and the second control command includes:
[0076] Receive a control command once at a preset interval;
[0077] If at least two control commands indicating different operations are received in a single instance, it is determined that the first control command and the second control command have been received.
[0078] Thirdly, embodiments of this application provide an electronic device, including:
[0079] Memory, used to store computer programs;
[0080] A processor is configured to execute a computer program stored in the memory, wherein, when the computer program is executed, it implements the method of any embodiment of the device control method of the first aspect of this application described above.
[0081] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, it implements the method of any embodiment of the device control method of the first aspect described above.
[0082] Fifthly, embodiments of this application provide a computer program comprising computer-readable code, which, when executed on a device, causes a processor in the device to implement the method of any embodiment of the device control method of the first aspect described above.
[0083] The device control method provided in this application embodiment can receive a first control instruction and a second control instruction, wherein the second control instruction is a conflicting instruction of the first control instruction. Then, it determines first type information of the first control instruction and second type information of the second control instruction. Next, based on the first type information and the second type information, it determines a target control instruction. Finally, it controls the device according to the target control instruction. Thus, by using the type information of two conflicting instructions to determine the target control instruction for controlling the corresponding device, the method can automatically determine the target control instruction for controlling the device when a conflicting instruction is received, making the device control more in line with user expectations and reducing the probability of device malfunction. Attached Figure Description
[0084] Figure 1 A schematic flowchart illustrating a device control method provided in an embodiment of this application;
[0085] Figure 2 A flowchart illustrating another device control method provided in an embodiment of this application;
[0086] Figure 3A Figure C is a flowchart illustrating another device control method provided in an embodiment of this application;
[0087] Figure 4 This is a schematic diagram of the structure of a device control apparatus provided in an embodiment of this application;
[0088] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0089] Various exemplary embodiments of this application will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values of the components and steps set forth in these embodiments do not limit the scope of this application.
[0090] Those skilled in the art will understand that the terms "first" and "second" in the embodiments of this application are only used to distinguish different steps, devices or modules, and do not represent any specific technical meaning, nor do they indicate the logical order between them.
[0091] It should also be understood that in this embodiment, "multiple" can refer to two or more, and "at least one" can refer to one, two or more.
[0092] It should also be understood that any component, data or structure mentioned in the embodiments of this application can generally be understood as one or more unless explicitly defined or given contrary guidance in the context.
[0093] Furthermore, the term "and / or" in this application is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this application generally indicates that the preceding and following related objects have an "or" relationship.
[0094] It should also be understood that the description of the various embodiments in this application emphasizes the differences between the various embodiments, and the similarities or similarities can be referred to each other. For the sake of brevity, they will not be described in detail.
[0095] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the scope of this application and its application or use.
[0096] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.
[0097] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.
[0098] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. To facilitate understanding of the embodiments of this application, the application will be described in detail below with reference to the accompanying drawings and embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.
[0099] Figure 1 This is a flowchart illustrating a device control method provided in an embodiment of this application. Figure 1 As shown, the method specifically includes:
[0100] Step 101: Receive a first control instruction and a second control instruction, wherein the second control instruction is a conflicting instruction of the first control instruction.
[0101] In this embodiment, the first control instruction may be an instruction for controlling the aforementioned device.
[0102] The aforementioned device can be any device that can be controlled via a network.
[0103] The second control instruction can be a different instruction for controlling the aforementioned device than the first control instruction. For example, the second control instruction and the first control instruction can be used to instruct the aforementioned device to perform different operations at least partially within the same time period. As another example, the second control instruction and the first control instruction can be used to instruct the aforementioned device to perform the same operation at different time periods.
[0104] For example, the above-mentioned device can be an automatic cooking machine. The first control command can be any one of feeding ingredients, stir-frying, unloading from the pan, or self-cleaning. The second control command can be any one of feeding ingredients, stir-frying, unloading from the pan, or self-cleaning, other than the first control command.
[0105] Step 102: Determine the first type information of the first control instruction and the second type information of the second control instruction.
[0106] In this embodiment, the first type of information may be the type information of the first control instruction. As an example, the first type of information may represent at least one of the following type information of the first control instruction: whether it is an online instruction, whether it is an offline instruction, whether the sending end of the first control instruction (i.e., the first sending end described below) and the device are connected to the same network (i.e., whether they are connected to the same local area network), whether the sending end of the first control instruction and the device are connected to different networks, and the operation identifier of the operation that the first control instruction instructs the device to perform.
[0107] The second type of information can be the type information of the second control instruction. As an example, the second type of information can represent at least one of the following type information of the second control instruction: whether it is an online instruction, whether it is an offline instruction, whether the sending end of the second control instruction (i.e., the second sending end described below) and the device are connected to the same network (i.e., whether they are connected to the same local area network), whether the sending end of the second control instruction and the device are connected to different networks, and the operation identifier of the operation that the second control instruction instructs the device to perform.
[0108] In practice, offline operations transmit electrical signals generated by pressing buttons to the device's control module; online operations transmit wireless signals to the device's communication module, which then outputs data to the control module. There are several ways to distinguish between online and offline control commands. One method is to output a button identification code by pressing a button on the device. The communication module can then output its own identification code, allowing the control module to determine whether the command is online or offline.
[0109] Furthermore, online control commands are relayed to the device, and each relay results in the command being written into specific code. Therefore, by analyzing the data, the IP (Internet Protocol) address that issued the control command can be determined. If the IP address of the control command matches the IP address of the device's network, they are on the same network (otherwise, they are on different networks).
[0110] Step 103: Determine the target control command based on the first type of information and the second type of information.
[0111] In this embodiment, when the type information of the first control instruction indicated by the first type information and the type information of the second control instruction indicated by the second type information are the same, the control instruction with the shorter operation cycle indicated by the first control instruction and the second control instruction can be determined as the target control instruction.
[0112] Step 104: Control the device according to the target control command.
[0113] In this embodiment, the device can be controlled to perform corresponding operations according to the target control command. For example, if the target control command instructs the device to perform a self-cleaning operation, then the device can be controlled to perform a self-cleaning operation.
[0114] In some optional implementations of this embodiment, step 103 can be performed as follows to determine the target control command based on the first type information and the second type information:
[0115] If the first type of information indicates that the first control instruction is a preset stop instruction, and the second type of information indicates that the second control instruction does not represent the preset stop instruction, then the first control instruction is determined to be the target control instruction.
[0116] The preset stop command can be a pre-determined command used to instruct the device to perform a stop operation.
[0117] It is understood that, in the above-mentioned optional implementation methods, if the device receives at least two conflicting instructions including a preset stop instruction, the device can be controlled to perform a stop operation first, so as to reduce the occurrence of failures caused by the device performing non-stop operations.
[0118] In some optional implementations of this embodiment, step 103 can be executed in the following manner (including steps one to three) to determine the target control command based on the first type information and the second type information:
[0119] Step 1: Determine whether the first type of information indicates that the first sending end and the device are connected to the same network. Here, the first sending end is the sending end of the first control command.
[0120] Step two: Determine whether the second type of information indicates that the second sending end is connected to the same network as the device. The second sending end is the sending end of the second control command.
[0121] Step 3: If the first type of information indicates that the first transmitting end and the device are connected to the same network, and the second type of information does not indicate that the second transmitting end and the device are connected to the same network, then the first control command is determined as the target control command.
[0122] The execution order of steps one, two, and three is not limited here. For example, in some cases, step two can be executed first, followed by step one.
[0123] It is understood that in the above-mentioned optional implementations, if the sender of the conflicting command received by the device includes a device connected to the same network as the device, the device can be controlled to execute the corresponding control command first. Since the control command corresponding to the same network can be directly observed on the device, executing the control command sent by the sender on the same network can make the device control more in line with user expectations.
[0124] In some optional implementations of this embodiment, step 103 can be performed in the following manner to determine the target control command based on the first type information and the second type information:
[0125] The first step is to determine whether the first type of information indicates that the first control command is an online control command.
[0126] The second step is to determine whether the second type of information indicates that the second control command is an offline control command.
[0127] Third, if the first type of information indicates that the first control instruction is the online control instruction, and the second type of information indicates that the second control instruction is the offline control instruction, then the second control instruction is determined as the target control instruction.
[0128] The execution order of steps one, two, and three is not limited here. For example, in some cases, step two can be executed first, followed by step one.
[0129] It is understood that, in the above-mentioned optional implementations, if the conflicting instructions received by the device include offline control instructions, the device can be controlled to execute the offline control instructions first. Since offline operations can usually be directly observed on the device, executing the offline control instructions first makes the control of the device more in line with user expectations.
[0130] In some application scenarios of the above-mentioned optional implementation methods, after determining the second control instruction as the target control instruction, the following steps can also be performed:
[0131] Upon receiving an offline control command instructing the device to stop operating, the device is controlled according to the first control command.
[0132] It is understandable that in the above application scenarios, after the device stops operating offline, the device can continue to operate according to the online control instructions, thereby making the control of the device more in line with user expectations.
[0133] In some optional implementations of this embodiment, the following steps may also be performed:
[0134] First, determine whether the device is in an idle state.
[0135] The idle state can be a state in which the device is not performing any operation. For example, the idle state can indicate that the device is powered on and in standby mode.
[0136] Subsequently, while the device is in the idle state, the device is allowed to receive online control commands and offline control commands.
[0137] Then, if the device is not in the idle state, the device is allowed to receive the offline control command, the device is prohibited from receiving the online control command, and if the online control command is sent to the device by the third sending end, a second feedback message is sent to the third sending end.
[0138] The second feedback information indicates that the device is not in the idle state.
[0139] The third transmitting end can be a device that sends online control commands to the device.
[0140] It is understood that in the above optional implementation methods, the device is only allowed to be controlled by online control commands when the device is in an idle state. This can reduce the safety risks and device failures caused by online control commands controlling the device when it is not in an idle state.
[0141] In some optional implementations of this embodiment, step 101 can be performed in the following manner to receive the first control command and the second control command:
[0142] First, it receives a control command at preset intervals.
[0143] The preset duration can be 0.1 seconds, 0.5 seconds, etc.
[0144] Subsequently, if at least two control commands indicating different operations are received in a single instance, it is determined that the first control command and the second control command have been received.
[0145] It is understandable that in the above optional implementation methods, if at least two control commands indicating different operations are received each time, it can be determined that conflicting control commands have been received.
[0146] The device control method provided in this application embodiment can receive a first control instruction and a second control instruction, wherein the second control instruction is a conflicting instruction of the first control instruction. Then, it determines first type information of the first control instruction and second type information of the second control instruction. Next, based on the first type information and the second type information, it determines a target control instruction. Finally, it controls the device according to the target control instruction. Thus, by using the type information of two conflicting instructions to determine the target control instruction for controlling the corresponding device, the method can automatically determine the target control instruction for controlling the device when a conflicting instruction is received, making the device control more in line with user expectations and reducing the probability of device malfunction.
[0147] Figure 2 This is a schematic flowchart illustrating another device control method provided in an embodiment of this application. Figure 2 As shown, the method specifically includes:
[0148] Step 201: Receive a first control instruction and a second control instruction, wherein the second control instruction is a conflicting instruction of the first control instruction.
[0149] In this embodiment, step 201 and Figure 1 Step 101 in the corresponding embodiment is basically the same, and will not be repeated here.
[0150] Step 202: Determine the first type information of the first control instruction and the second type information of the second control instruction.
[0151] In this embodiment, step 202 and Figure 1 Step 102 in the corresponding embodiment is basically the same, and will not be repeated here.
[0152] Step 203: Determine whether the first type of information indicates that the first control instruction is the next control instruction after the most recently executed control instruction of the device in a preset control instruction sequence, wherein the preset control instruction sequence represents the control order of the device.
[0153] In this embodiment, as an example, the preset control command sequence may cover all steps that the device can perform. For example, the preset control command sequence may be: feeding command, stir-frying command, unloading command, and self-cleaning command.
[0154] Step 204: Determine whether the second type of information indicates that the second control instruction is the next control instruction.
[0155] Step 205: If the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, then the first control instruction is determined as the target control instruction.
[0156] Step 206: Control the device according to the target control command.
[0157] In this embodiment, step 206 and Figure 1 Step 104 in the corresponding embodiment is basically the same, and will not be repeated here.
[0158] In some optional implementations of this embodiment, step 205 can be performed in the following manner:
[0159] Step 1: Determine whether the first type of information also indicates that the first sending end is connected to the same network as the device. Here, the first sending end is the sending end of the first control command.
[0160] Step two: Determine whether the second type of information also indicates that the second sending end is connected to the same network as the device. Here, the second sending end is the sending end of the second control command.
[0161] Step 3: If the first type of information indicates that the first control instruction is the next control instruction, and the first type of information also indicates that the first transmitting end and the device are connected to the same network, and the second type of information does not indicate that the second control instruction is the next control instruction, and the second type of information does not indicate that the second transmitting end and the device are connected to the same network, then the first control instruction is determined as the target control instruction.
[0162] The execution order of steps one, two, and three is not limited here. For example, in some cases, step two can be executed first, followed by step one.
[0163] It is understood that, in the above optional implementation methods, when the conflicting instructions received by the device are all online control instructions, the device can be controlled to first execute the next control instruction of the most recently executed control instruction, so that the control of the device is more in line with the user's expectations.
[0164] In some application scenarios of the above optional implementation methods, where the first type of information does not indicate that the first control instruction is the next control instruction, the following steps can also be performed:
[0165] Send the first feedback information to the first sending end.
[0166] The first feedback information indicates that the control command sent by the first sending end is incorrect.
[0167] It is understandable that in the above application scenarios, if the control command sent by the sending end is not the next control command that executes the most recent control command executed by the device, it usually indicates that the command sent by the sending end is incorrect or conflicts with the operation being performed by the device. Therefore, by sending feedback information indicating that the control command is incorrect, the sending end can adjust the control command in a timely manner or wait for a period of time before sending the control command again.
[0168] In some of the above application scenarios, where the first type of information also indicates that the first sending end and the device are connected to the same network, and after sending the first feedback information to the first sending end, the following steps can also be performed:
[0169] The target control command is determined from a preset set of control commands. This preset set of control commands is a collection of online control commands received by the device from transmitters connected to different networks.
[0170] The aforementioned transmitting end that connects to different networks is also the transmitting end that connects to different networks from the device.
[0171] It is understandable that in the above situation, if the instruction sent by the transmitter connected to the same network as the device is incorrect, the device can be controlled according to the online control instruction sent by the transmitter connected to a different network, thereby making the control of the device more in line with the user's expectations.
[0172] It should be noted that, in addition to the contents described above, this embodiment may also include... Figure 1 The corresponding technical features described in the corresponding embodiments, thereby achieving Figure 1 For details on the technical effects of the device control method shown, please refer to [link / reference]. Figure 1The relevant descriptions are presented concisely and will not be elaborated upon here.
[0173] The device control method provided in this application embodiment can control the device to execute the next control instruction first when at least two conflicting instructions received by the device include the next control instruction of the most recently executed control instruction, thereby making the control of the device more in line with user expectations.
[0174] Figures 3A-3C This is a flowchart illustrating another device control method provided in an embodiment of this application. This method can be applied to one or more electronic devices such as various IoT devices, smartphones, laptops, desktop computers, portable computers, and servers. Furthermore, the execution entity of this method can be hardware or software. When the execution entity is hardware, it can be one or more of the aforementioned electronic devices. For example, a single electronic device can execute this method, or multiple electronic devices can cooperate with each other to execute this method. When the execution entity is software, this method can be implemented as multiple software programs or software modules, or as a single software program or software module. No specific limitations are made here.
[0175] Specifically, such as Figures 3A-3C As shown, the method specifically includes:
[0176] Step 0: Set the logical sequence of the working steps of the smart device (i.e., the device mentioned above) (i.e., the preset control instruction sequence mentioned above): R1, R2, R3...Rn (e.g., the working steps of an automatic cooking machine: feeding, stir-frying, unloading, self-cleaning). Each process corresponds to a sequence number value, with R1 sequence number value being 1 and Rn sequence number value being n.
[0177] Step 1: Determine if the smart device is in an idle state. If so, allow offline operation (i.e., receiving offline control commands) and online commands (i.e., receiving online control commands) and proceed to the next step. Otherwise, do not allow receiving online commands and send a "Device in use" message (i.e., the first feedback information mentioned above) to the mobile terminal.
[0178] Step 2: Determine if the buttons on the smart device have been pressed. If yes, it means someone is operating the smart device offline, performing offline operations, and is not allowed to receive online commands, or immediately suspend the execution of online commands; if no, determine that the smart device is not in use (that is, determine that the device is in an idle state) and proceed to the next step.
[0179] Here, when the smart device is in working state (i.e., not idle), offline operations can be stopped and online emergency commands can be used to stop it.
[0180] Steps 1-2 can resolve the following issues: simultaneous online and offline command conflicts, and conflicts between online and offline commands. All of these issues are handled by prioritizing offline operations over online commands.
[0181] Step 3: Determine if the smart device has received an online command. If not, the device remains silent; if an online command has been received, proceed to the next step.
[0182] Step 4: Determine whether the received online instruction sending address is on the same network as the smart device. If so, filter out the online instructions whose sending addresses are on the same network as the smart device, store them in the priority instruction set, and proceed to process a. If not, store the online instructions located on different networks (i.e., different networks) in the data buffer.
[0183] Step 4 resolves the issue of "online command conflicts between different locations". Online commands sent from the same network as the smart device have higher priority than online commands sent from different networks.
[0184] The above process a includes the following steps a0-an:
[0185] Step a0: Determine the overlap rate of multiple online instructions. If multiple instructions are the same (same sequence number), only read the instruction received first (in the order of reception time) and proceed to step a1. If at least two instructions are different (different sequence number), sort the working steps corresponding to the two instructions (according to the sequence number), and take the instruction with the later sequence number in sequence and proceed to step a1.
[0186] Step a1: Determine if the sequence number of the last executed work step on the smart device is x. If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is 1. If the sequence number of the work step corresponding to the received instruction is 1, execute the instruction. Otherwise, send a "instruction error" message (i.e., the first feedback information mentioned above) to the mobile terminal and proceed to process b.
[0187] Step a2: Determine if the sequence number of the last executed work step on the smart device is (x-1). If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is x. If the sequence number of the work step corresponding to the received instruction is x, execute the instruction. Otherwise, send a "instruction error" message to the mobile terminal and proceed to process b.
[0188] Step a3: Determine if the sequence number of the last executed work step on the smart device is (x-2). If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is (x-1). If the sequence number of the work step corresponding to the received instruction is (x-1), execute the instruction. Otherwise, send a "instruction error" message to the mobile terminal and proceed to process b.
[0189] Step an: Determine if the sequence number of the last executed work step on the smart device is 1. If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is 2. If the sequence number of the work step corresponding to the received instruction is 2, execute the instruction. Otherwise, send a "instruction error" message to the mobile terminal and proceed to process b.
[0190] Here, the solution in process a solves the problem of conflicting instructions and conflicting instructions from different times when multiple people use the same location (same network).
[0191] Furthermore, the solution consisting of step 4 and process a can resolve the problems of simultaneous command conflicts at different locations within the same network, as well as conflicts between commands sent from different spaces within a home (e.g., conflicts between control commands sent from different spaces within a home).
[0192] The above process b includes the following steps b0-bn:
[0193] Step b0: After the "instruction error" message is sent to the mobile terminal in process a, process b is triggered to start. The online instructions stored in the data buffer are retrieved from different networks. The overlap rate of multiple online instructions is determined. If multiple instructions are the same (same sequence number value), only the first received instruction is read and the process proceeds to step b1. If at least two instructions are different (different sequence number values), the working steps corresponding to the two instructions are sorted (sorted according to sequence number value), and the later sequence number value is taken and the process proceeds to step b1.
[0194] Step b1: Determine if the sequence number of the last executed work step on the smart device is x. If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is 1. If the sequence number of the work step corresponding to the received instruction is 1, execute the instruction. Otherwise, send a "instruction error" message to the mobile terminal.
[0195] Step b2: Determine if the sequence number of the last executed work step on the smart device is (x-1). If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is x. If the sequence number of the work step corresponding to the received instruction is x, execute the instruction. Otherwise, send a "instruction error" message to the mobile terminal.
[0196] Step b3: Determine if the sequence number of the last executed work step on the smart device is (x-2). If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is (x-1). If the sequence number of the work step corresponding to the received instruction is (x-1), execute the instruction. Otherwise, send a "instruction error" message to the mobile terminal.
[0197] Step bn: Determine if the sequence number of the last executed work step on the smart device is 1. If not, proceed to the next step. If yes, determine if the sequence number of the work step corresponding to the received instruction is 2. If the sequence number of the work step corresponding to the received instruction is 2, execute the instruction. Otherwise, send an "instruction error" message to the mobile terminal.
[0198] Here, the solution in process b solves the problem of conflicting instructions from multiple users in different locations, as well as conflicts between instructions from different points in time.
[0199] In addition, the solution consisting of step 4, process a, and process b can solve the problems of simultaneous command conflicts at different locations and conflicting commands from different points in time.
[0200] This method can resolve conflicts between online and offline commands. For example, if A is operating a soy milk maker in the kitchen and B is simultaneously operating it on their mobile phone, causing a conflict, A's command takes priority. If A stops operating, B can take over. It can also resolve conflicts between online and offline commands. For example, if A is operating a soy milk maker in the kitchen and B is simultaneously operating it on their mobile phone, causing a conflict, the command given offline takes priority. If A stops operating, A's command prevails. If A stops operating, B can take over. Furthermore, it can resolve conflicts between online commands from different locations. For example, if A is operating a soy milk maker using their home network and B is simultaneously operating it using an external network, causing a conflict, A's command takes priority (if A's command conforms to the logical sequence of operations). If A stops operating or issues a command that does not conform to the logical sequence of operations, the person who issued the logical command takes over. This method can resolve conflicts between online commands from different locations. For example: B uses a soymilk maker to make soymilk in the morning and then leaves home; A uses the home network to operate the soymilk maker to make soymilk, while B uses an external network to operate the soymilk maker to perform automatic cleaning. Their operating instructions conflict. In this case, A's operation takes priority (if A's instruction conforms to the process logic). If A stops operating midway or the instruction conforms to the process logic, the person who issued the instruction conforming to the process logic takes over. This can resolve the problem of conflicting instructions from the same location. For example: A uses the home network to operate the soymilk maker (A is in the kitchen), and B simultaneously uses the home network to operate the soymilk maker (B is in the study). Their operating instructions conflict. In this case, the person who issued the instruction conforming to the process logic takes over. This can resolve the problem of conflicting instructions from different points in the same location. For example: B uses a soymilk maker to make soymilk in the morning and then goes to the study; A uses the home network to operate the soymilk maker to make soymilk, and B uses the home network to operate the soymilk maker to perform automatic cleaning. Their operating instructions conflict. In this case, the person who issued the instruction conforming to the process logic takes over.
[0201] here, Figure 3A The question "Whether multiple instructions were received" is related to... Figure 3B The "whether multiple instructions have been received" step refers to the same process. Figure 3B The question "Has all instructions in process a been traversed?" is related to... Figure 3C The question "Has all instructions in process a been traversed?" refers to the same step. Figure 3B The "assignment m=n" in the text and Figure 3C The "assign m = n" in the text refers to the same step.
[0202] It should be noted that, in addition to the contents described above, this embodiment may also include the technical features described in the above embodiments, thereby achieving the technical effects of the device control method shown above. Please refer to the above description for details. For the sake of brevity, it will not be elaborated here.
[0203] The device control method provided in this application addresses the command conflict problem caused by multiple users simultaneously controlling a device, based on the priority levels of the control method, the command issuance path, and the logical order of the device's operating steps. It can distinguish between online and offline operation modes. Since offline operation allows direct observation of the device, it takes priority; if a device button is not activated, it can switch to online operation. It can also distinguish between online commands within the same network and online commands from different locations. Online commands within the same network have higher priority than those from different locations because the device can be directly observed. Regardless of the command issuance time, only online commands that conform to the logical order of the device's operating steps are executed. The priority order of online commands of the same level can be set according to normal user habits, as users will not perform operations across steps without reason. Therefore, after sorting online commands of the same level, the command with the latest sequence number is selected for evaluation. Offline operation can be used to pause the execution of online commands, and in case of emergencies, an emergency online command can be used to stop the operation, ensuring safety.
[0204] Figure 4 This is a schematic diagram of a device control apparatus provided in an embodiment of this application. Specifically, it includes:
[0205] The receiving unit 401 is configured to receive a first control instruction and a second control instruction, wherein the second control instruction is a conflict instruction of the first control instruction;
[0206] The first determining unit 402 is used to determine the first type information of the first control instruction and the second type information of the second control instruction;
[0207] The second determining unit 403 is used to determine the target control command based on the first type of information and the second type of information;
[0208] The first control unit 404 is used to control the device according to the target control command.
[0209] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0210] If the first type of information indicates that the first control instruction is a preset stop instruction, and the second type of information indicates that the second control instruction does not represent the preset stop instruction, then the first control instruction is determined to be the target control instruction.
[0211] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0212] Determine whether the first type of information indicates that the first sending end is connected to the same network as the device, wherein the first sending end is the sending end of the first control command;
[0213] Determine whether the second type of information indicates that the second sending end is connected to the same network as the device, wherein the second sending end is the sending end of the second control command;
[0214] If the first type of information indicates that the first transmitter and the device are connected to the same network, and the second type of information does not indicate that the second transmitter and the device are connected to the same network, then the first control command is determined as the target control command.
[0215] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0216] Determine whether the first type of information indicates that the first control instruction is an online control instruction;
[0217] Determine whether the second type of information indicates that the second control command is an offline control command;
[0218] If the first type of information indicates that the first control instruction is the online control instruction, and the second type of information indicates that the second control instruction is the offline control instruction, then the second control instruction is determined as the target control instruction.
[0219] In one possible implementation, after determining the second control command as the target control command, the device further includes:
[0220] A second control unit (not shown in the figure) is used to control the device in accordance with the first control command upon receiving an offline control command instructing the device to stop operating.
[0221] In one possible implementation, determining the target control command based on the first type of information and the second type of information includes:
[0222] Determine whether the first type of information indicates that the first control instruction is the next control instruction after the most recently executed control instruction of the device in a preset control instruction sequence, wherein the preset control instruction sequence represents the control order of the device;
[0223] Determine whether the second type of information indicates that the second control instruction is the next control instruction;
[0224] If the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, then the first control instruction is determined as the target control instruction.
[0225] In one possible implementation, determining the first control instruction as the target control instruction when the first type of information indicates that the first control instruction is the next control instruction, and the second type of information does not indicate that the second control instruction is the next control instruction, includes:
[0226] Determine whether the first type of information also indicates that the first sending end is connected to the same network as the device, wherein the first sending end is the sending end of the first control command;
[0227] Determine whether the second type of information also indicates that the second sending end is connected to the same network as the device, wherein the second sending end is the sending end of the second control command;
[0228] If the first type of information indicates that the first control instruction is the next control instruction, and the first type of information also indicates that the first transmitting end and the device are connected to the same network, and the second type of information does not indicate that the second control instruction is the next control instruction, and the second type of information does not indicate that the second transmitting end and the device are connected to the same network, then the first control instruction is determined as the target control instruction.
[0229] In one possible implementation, if the first type of information does not indicate that the first control command is the next control command, the device further includes:
[0230] A sending unit (not shown in the figure) is used to send first feedback information to the first sending end, wherein the first feedback information indicates that the control command sent by the first sending end is incorrect.
[0231] In one possible implementation, if the first type of information further indicates that the first sending end and the device are connected to the same network, after sending the first feedback information to the first sending end, the device further includes:
[0232] The third determining unit (not shown in the figure) is used to determine the target control command from a preset control command set, wherein the preset control command set is a set of online control commands received by the device from transmitters connected to different networks.
[0233] In one possible implementation, the device further includes:
[0234] The fourth determining unit (not shown in the figure) is used to determine whether the device is in an idle state;
[0235] A third control unit (not shown in the figure) is configured to allow the device to receive online control commands and offline control commands when the device is in the idle state.
[0236] A fourth control unit (not shown in the figure) is configured to allow the device to receive the offline control command, prohibit the device from receiving the online control command, and send a second feedback information to the third sending terminal when the device is not in the idle state, wherein the second feedback information indicates that the device is not in the idle state.
[0237] In one possible implementation, receiving the first control command and the second control command includes:
[0238] Receive a control command once at a preset interval;
[0239] If at least two control commands indicating different operations are received in a single instance, it is determined that the first control command and the second control command have been received.
[0240] The device control device provided in this embodiment can be as follows: Figure 4 The device control apparatus shown can execute all the steps of the above-described device control methods, thereby achieving the technical effects of the above-described device control methods. For details, please refer to the above descriptions. For the sake of brevity, further details are omitted here.
[0241] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 5 The illustrated electronic device 500 includes at least one processor 501, a memory 502, at least one network interface 504, and other user interfaces 503. The various components in the electronic device 500 are coupled together via a bus system 505. It is understood that the bus system 505 is used to implement communication between these components. In addition to a data bus, the bus system 505 also includes a power bus, a control bus, and a status signal bus. However, for clarity, ... Figure 5 The general designated all buses as Bus System 505.
[0242] The user interface 503 may include a display, keyboard, or clicking device (e.g., mouse, trackball, touchpad, or touchscreen).
[0243] It is understood that the memory 502 in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The memory 502 described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0244] In some implementations, memory 502 stores elements, executable units or data structures, or subsets thereof, or extended sets thereof: operating system 5021 and application program 5022.
[0245] The operating system 5021 includes various system programs, such as the framework layer, core library layer, and driver layer, used to implement various basic business functions and handle hardware-based tasks. The application program 5022 includes various applications, such as a media player and a browser, used to implement various application functions. Programs implementing the methods of this application embodiment can be included in application program 5022.
[0246] In this embodiment, by calling the program or instructions stored in memory 502, specifically the program or instructions stored in application program 5022, processor 501 executes the method steps provided in each method embodiment, including, for example:
[0247] Receive a first control command and a second control command, wherein the second control command is a conflicting command of the first control command;
[0248] Determine the first type information of the first control instruction and the second type information of the second control instruction;
[0249] Based on the first type of information and the second type of information, the target control command is determined;
[0250] The device is controlled according to the target control command.
[0251] The methods disclosed in the embodiments of this application can be applied to or implemented by processor 501. Processor 501 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 501 or by instructions in the form of software. The processor 501 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software units in the decoding processor. The software units may be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 502. Processor 501 reads the information in memory 502 and, in conjunction with its hardware, completes the steps of the above method.
[0252] It is understood that the embodiments described herein can be implemented in hardware, software, firmware, middleware, microcode, or a combination thereof. For hardware implementation, the processing unit can be implemented in one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described above in this application, or combinations thereof.
[0253] For software implementation, the techniques described herein can be implemented by units that perform the functions described above. The software code can be stored in memory and executed by a processor. The memory can be implemented within the processor or external to the processor.
[0254] The electronic device provided in this embodiment may be as follows: Figure 5 The electronic device shown can execute all the steps of the above-described device control methods, thereby achieving the technical effects of the above-described device control methods. For details, please refer to the above descriptions. For the sake of brevity, further details are omitted here.
[0255] This application also provides a storage medium (computer-readable storage medium). This storage medium stores one or more programs. The storage medium may include volatile memory, such as random access memory; it may also include non-volatile memory, such as read-only memory, flash memory, hard disk, or solid-state drive; and it may also include combinations of the above types of memory.
[0256] When one or more programs in the storage medium can be executed by one or more processors to implement the device control method described above that is executed on the electronic device side.
[0257] The processor described above is used to execute a device control program stored in memory to implement the following steps of a device control method executed on the electronic device side:
[0258] Receive a first control command and a second control command, wherein the second control command is a conflicting command of the first control command;
[0259] Determine the first type information of the first control instruction and the second type information of the second control instruction;
[0260] Based on the first type of information and the second type of information, the target control command is determined;
[0261] The device is controlled according to the target control command.
[0262] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0263] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented in hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0264] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of this application. It should be understood that the above descriptions are merely specific embodiments of this application and are not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of this application should be included within the scope of protection of this application. Furthermore, for the foregoing embodiments, for the sake of simplicity, they are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also understand that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily essential to the present invention.
Claims
1. A device control method characterized by, The method comprises: receiving a first control instruction and a second control instruction, wherein the second control instruction is a conflicting instruction of the first control instruction; determining first type information of the first control instruction and second type information of the second control instruction; determining a target control instruction based on the first type information and the second type information; controlling the device according to the target control instruction; the receiving of the first control instruction and the second control instruction comprises: receiving a control instruction every interval of a preset time length; in the case that at least two control instructions indicating different operations are received at a time, it is determined that the first control instruction and the second control instruction are received; the second control instruction is a conflicting instruction of the first control instruction, which comprises: the second control instruction and the first control instruction are respectively used to instruct the device to perform different operations in at least partially same time period; the determining of the target control instruction based on the first type information and the second type information comprises: determining whether the first type information indicates that the first control instruction is a next control instruction of a control instruction that the device has most recently executed in a preset control instruction sequence, wherein the preset control instruction sequence represents a logical order of working steps of the device; determining whether the second type information indicates that the second control instruction is the next control instruction; in the case that the first type information indicates that the first control instruction is the next control instruction, and the second type information does not indicate that the second control instruction is the next control instruction, the first control instruction is determined as the target control instruction.
2. The method of claim 1, wherein, the determining of the target control instruction based on the first type information and the second type information comprises: in the case that the first type information indicates that the first control instruction is a preset stop instruction, and the second type information indicates that the second control instruction is not the preset stop instruction, the first control instruction is determined as the target control instruction.
3. The method of claim 1, wherein, the determining of the target control instruction based on the first type information and the second type information comprises: determining whether the first type information indicates that a first sending end and the device are connected to a same network, wherein the first sending end is a sending end of the first control instruction; determining whether the second type information indicates that a second sending end and the device are connected to the same network, wherein the second sending end is a sending end of the second control instruction; in the case that the first type information indicates that the first sending end and the device are connected to the same network, and the second type information does not indicate that the second sending end and the device are connected to the same network, the first control instruction is determined as the target control instruction.
4. The method of claim 1, wherein, the determining of the target control instruction based on the first type information and the second type information comprises: determining whether the first type information indicates that the first control instruction is an online control instruction; determining whether the second type information indicates that the second control instruction is an offline control instruction; In a case where the first type information indicates that the first control instruction is the online control instruction, and the second type information indicates that the second control instruction is the offline control instruction, the second control instruction is determined as a target control instruction.
5. The method of claim 4, wherein, After the second control instruction is determined as the target control instruction, the method further comprises: In a case where an offline control instruction indicating that the device stops operating is received, the device is controlled according to the first control instruction.
6. The method of claim 1, wherein, In a case where the first type information indicates that the first control instruction is the next control instruction, and the second type information does not indicate that the second control instruction is the next control instruction, the first control instruction is determined as a target control instruction, comprising: determining whether the first type information further indicates that a first sending end is connected to the same network as the device, wherein the first sending end is a sending end of the first control instruction; determining whether the second type information further indicates that a second sending end is connected to the same network as the device, wherein the second sending end is a sending end of the second control instruction; In a case where the first type information indicates that the first control instruction is the next control instruction, the first type information further indicates that the first sending end is connected to the same network as the device, and the second type information does not indicate that the second control instruction is the next control instruction, and the second type information does not indicate that the second sending end is connected to the same network as the device, the first control instruction is determined as the target control instruction.
7. The method of claim 6, wherein, In a case where the first type information does not indicate that the first control instruction is the next control instruction, the method further comprises: sending first feedback information to the first sending end, wherein the first feedback information indicates that the control instruction sent by the first sending end is incorrect.
8. The method of claim 7, wherein, In a case where the first type information further indicates that the first sending end is connected to the same network as the device, after the first feedback information is sent to the first sending end, the method further comprises: from a preset control instruction set, determining a target control instruction, wherein the preset control instruction set is a set of online control instructions sent by sending ends connected to different networks and received by the device.
9. The method according to one of claims 1 to 8, characterized in that The method further comprises: determining whether the device is in an idle state; in a case where the device is in the idle state, allowing the device to receive online control instructions and offline control instructions; in a case where the device is not in the idle state, allowing the device to receive the offline control instructions, prohibiting the device to receive the online control instructions, and in a case where a third sending end sends the online control instruction to the device, sending second feedback information to the third sending end, wherein the second feedback information indicates that the device is not in the idle state.
10. An apparatus control device characterized by comprising: The apparatus comprises: a receiving unit, configured to receive a first control instruction and a second control instruction, wherein the second control instruction is a conflict instruction of the first control instruction; The first determining unit is configured to determine first type information of the first control instruction and second type information of the second control instruction. The second determining unit is configured to determine a target control instruction based on the first type information and the second type information. The first control unit is configured to control the device according to the target control instruction. The receiving of the first control instruction and the second control instruction comprises: receiving a control instruction every interval of a preset time length; and in a case where at least two control instructions indicating different operations are received at a single time, determining that the first control instruction and the second control instruction are received. The second control instruction is a conflict instruction of the first control instruction, and the second control instruction and the first control instruction are respectively used to instruct the device to perform different operations in at least partially same time periods. The determining of the target control instruction based on the first type information and the second type information comprises: determining whether the first type information indicates that the first control instruction is a next control instruction of a control instruction that is most recently executed by the device in a preset control instruction sequence, wherein the preset control instruction sequence represents a logical order of working steps of the device; determining whether the second type information indicates that the second control instruction is the next control instruction; in a case where the first type information indicates that the first control instruction is the next control instruction, and the second type information does not indicate that the second control instruction is the next control instruction, determining the first control instruction as the target control instruction.
11. An electronic device, comprising: The computer program is stored in the memory and executed by the processor, and when the computer program is executed, the method in any one of claims 1-9 is implemented. The computer program is executed by the processor, and when the computer program is executed, the method in any one of claims 1-9 is implemented. 12. A computer readable storage medium having stored thereon a computer program, characterized in that,
Citation Information
Patent Citations
Intelligent household electrical appliance instruction conflict processing method and device, storage medium and electronic device
CN111190353A
Control method of household appliance
CN111988206A
Control method and device, electronic equipment and storage medium
CN112637024A