WO2023029386A1 - 通信方法及装置、电子设备、存储介质和计算机程序 - Google Patents

通信方法及装置、电子设备、存储介质和计算机程序 Download PDF

Info

Publication number
WO2023029386A1
WO2023029386A1 PCT/CN2022/076460 CN2022076460W WO2023029386A1 WO 2023029386 A1 WO2023029386 A1 WO 2023029386A1 CN 2022076460 W CN2022076460 W CN 2022076460W WO 2023029386 A1 WO2023029386 A1 WO 2023029386A1
Authority
WO
WIPO (PCT)
Prior art keywords
computer
data
sensor
lower computer
result
Prior art date
Application number
PCT/CN2022/076460
Other languages
English (en)
French (fr)
Inventor
张军伟
李�诚
Original Assignee
上海商汤智能科技有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 上海商汤智能科技有限公司 filed Critical 上海商汤智能科技有限公司
Publication of WO2023029386A1 publication Critical patent/WO2023029386A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present disclosure relates to but not limited to the technical field of communication, and in particular relates to a communication method and device, electronic equipment, a storage medium, and a computer program.
  • Artificial intelligence robot technology integrates the development results of multiple disciplines and represents the frontier of high-tech development. Artificial intelligence robot involves many fields of information technology. It integrates a variety of advanced technologies and is applied in many fields. For example, in the field of education, the introduction of the teaching of artificial intelligence educational robots will add new vitality to the information technology courses in primary and secondary schools, and become an excellent platform for cultivating primary and secondary students' comprehensive ability and information literacy.
  • the embodiment of the present disclosure proposes a communication technical solution, which is implemented as follows:
  • An embodiment of the present disclosure provides a communication method, the method is applied to a host computer, and includes: in response to the security verification result being verified as passed, performing target identification on the first data to be processed to obtain the identification result; wherein, the first The data includes at least one of image, voice, and text; according to the recognition result, generate a first data packet in a preset protocol format; send the first data packet to the lower computer, so that the lower computer can
  • the data packet control execution component executes the first operation to obtain an operation feedback result; in response to receiving the operation feedback result sent by the lower computer, at least one of display, broadcast, storage, and transmission is performed on the operation feedback result.
  • An embodiment of the present disclosure provides a communication method, and the method is applied to a lower computer, including: in response to receiving a first data packet in a preset protocol format sent by the upper computer, controlling the execution unit of the lower computer to execute the first operation to obtain an operation feedback result, wherein the first data packet is generated based on the identification result of the first data after the security verification between the lower computer and the upper computer is passed; wherein the first data Including at least one of image, voice and text; sending the operation feedback result to the host computer.
  • the flexibility, security and reliability of the two-way communication between the upper computer and the lower computer can be improved.
  • An embodiment of the present disclosure provides a communication device, and the device includes: an identification part configured to, in response to a security verification result that the verification is passed, perform target identification on the first data to be processed to obtain an identification result; wherein, the first The data includes at least one of image, voice, and text; the generating part is configured to generate a first data packet in a preset protocol format according to the recognition result; the sending part sends the first data packet to the lower computer to Make the slave computer execute the first operation according to the first data packet control execution component to obtain the operation feedback result; the feedback part displays the operation feedback result in response to receiving the operation feedback result sent by the slave computer , broadcast, storage, and transmission at least one operation. In this way, the flexibility and reliability of the communication device can be improved.
  • An embodiment of the present disclosure provides a communication device, including: a receiving part configured to, in response to receiving a first data packet in a preset protocol format sent by an upper computer, control the executing part of the lower computer to perform a first operation, Obtain an operation feedback result, wherein the first data packet is generated based on the identification result of the first data after the security verification between the slave computer and the host computer is passed; wherein the first data includes an image At least one of , voice, and text; the return part is configured to send the operation feedback result to the host computer.
  • a receiving part configured to, in response to receiving a first data packet in a preset protocol format sent by an upper computer, control the executing part of the lower computer to perform a first operation, Obtain an operation feedback result, wherein the first data packet is generated based on the identification result of the first data after the security verification between the slave computer and the host computer is passed; wherein the first data includes an image At least one of , voice, and text; the return part is configured to send the operation feedback result to the host
  • An embodiment of the present disclosure provides an electronic device, including: a processor; a memory for storing instructions executable by the processor; wherein the processor is configured to invoke the instructions stored in the memory to execute the above method.
  • An embodiment of the present disclosure provides a computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the foregoing method is implemented.
  • An embodiment of the present disclosure provides a computer program, including computer readable codes.
  • a processor in the electronic device executes the above method.
  • target identification is performed on the first data to be processed, and according to the obtained identification result, a first data packet in a preset protocol format is generated, and then sent to the host computer
  • the first data packet so that the lower computer controls the execution part to perform the first operation according to the first data packet, obtains the operation feedback result, and displays, broadcasts, stores, and transmits the operation feedback result at least in response to the received operation feedback result
  • FIG. 1 is a schematic diagram of an implementation flow of a communication method provided by an embodiment of the present disclosure.
  • Fig. 2 is a schematic diagram of implementation of a communication method provided by an embodiment of the present disclosure.
  • FIG. 3 is a schematic diagram of a hardware connection between a host computer and a slave computer according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic diagram of an implementation flow of a communication method provided by an embodiment of the present disclosure.
  • Fig. 5 is an interactive schematic diagram of a communication method provided by an embodiment of the present disclosure.
  • FIG. 6A is a schematic diagram of a composition and structure of a communication device provided by an embodiment of the present disclosure.
  • FIG. 6B is a schematic diagram of a composition and structure of a communication device provided by an embodiment of the present disclosure.
  • FIG. 7 is a schematic diagram of the composition and structure of an electronic device provided by an embodiment of the present disclosure.
  • FIG. 8 is a schematic diagram of the composition and structure of an electronic device provided by an embodiment of the present disclosure.
  • robot products especially educational robot products used to stimulate students' interest in learning and cultivate students' comprehensive abilities, integrate various technologies such as mechanical principles, electronic sensors, computer software and hardware, but cannot handle artificial intelligence well. Task.
  • the upper computer and the lower computer can be set in the robot, and the upper computer can be used to complete the computationally intensive artificial intelligence tasks such as image processing and speech recognition, and at the same time, the lower computer and external devices such as motors and sensors can be used for interactive control.
  • the upper computer and the lower computer can be used to complete the computationally intensive artificial intelligence tasks such as image processing and speech recognition
  • the lower computer and external devices such as motors and sensors can be used for interactive control.
  • two-way interactive control between the upper computer and the lower computer is required, and the communication efficiency and reliability between the upper computer and the lower computer are directly related to the degree of artificial intelligence of the robot.
  • an embodiment of the present disclosure proposes a communication method, in which the upper computer performs target identification on the first data to be processed in response to the security verification result being verified as passed, and performs interactive communication with the lower computer efficiently, Improve the flexibility, safety and reliability of the communication between the upper computer and the lower computer.
  • FIG. 1 is a schematic diagram of an implementation flow of a communication method provided by an embodiment of the present disclosure.
  • the communication method can be performed by electronic devices such as terminal equipment or servers, and the terminal equipment can be user equipment (User Equipment, UE), mobile equipment, user terminal, terminal, cellular phone, cordless phone, personal digital assistant (Personal Digital Assistant, PDA) ), a handheld device, a computing device, a vehicle-mounted device, a wearable device, etc.
  • the method may be implemented by calling a computer-readable instruction stored in a memory by a processor.
  • the method may be performed by a server.
  • the communication method in the embodiment of the present disclosure will be described below by taking an electronic device as an execution subject as an example.
  • this method can be applied to the upper computer, and the method includes:
  • step S11 in response to the security verification result being verified as successful, perform target recognition on the first data to be processed to obtain a recognition result; wherein the first data includes at least one of images, voices, and texts;
  • step S12 according to the identification result, a first data packet in a preset protocol format is generated
  • step S13 sending the first data packet to the lower computer, so that the lower computer controls the executing component to perform the first operation according to the first data packet, and obtains an operation feedback result;
  • step S14 in response to receiving the operation feedback result sent by the lower computer, perform at least one operation of displaying, broadcasting, storing, and transmitting the operation feedback result.
  • FIG. 2 is a schematic diagram of implementation of a communication method provided by an embodiment of the present disclosure.
  • the Raspberry Pi can be used as the upper computer 210
  • the control module based on the embedded single-chip microcomputer STM32 can be used as the lower computer 220
  • the encryption chip 221 can be installed in the lower computer 220, and the encryption chip 221 can be inserted into the card slot. It is connected with the lower computer or directly welded on the circuit board of the lower computer.
  • the embodiment of the present disclosure does not limit the connection method between the encryption chip and the lower computer.
  • the upper computer can be Raspberry Pi, RockPro64 board (produced by Rockchip), Adapteva board (produced by chip manufacturer Adapteva), etc.
  • the lower computer can be based on single-chip chicken (produced by Italian Massimo Banzi team). ), single-chip Microbit (produced by British BBC), control modules such as embedded single-chip STM8 or embedded single-chip STM32, the disclosed embodiment does not specifically limit the type of the upper computer and the lower computer.
  • the upper computer and the lower computer are set in artificial intelligence robots, such as artificial intelligence robots applied in the field of education, artificial intelligence robots applied in the service industry, artificial intelligence robots applied in the entertainment industry, and artificial intelligence robots applied in the field of industrial control.
  • Artificial intelligence robots, etc., the embodiments of the present disclosure do not limit the types of artificial intelligence robots.
  • the host computer 210 is used to implement artificial intelligence tasks with a large amount of calculation, such as target recognition tasks including face recognition, object detection, speech recognition, text detection, image classification and recognition; the lower computer 220 is used to implement
  • the interaction with the peripheral executing component 230 includes, for example, controlling different motors 231 to rotate according to different laws, controlling different sensors 232 to collect different peripheral information, and the like.
  • the upper computer can perform target recognition based on artificial intelligence algorithms for the input data such as images, voices or texts, and obtain the recognition results, and based on the recognition results
  • Send the control command that is, the first data packet
  • the lower computer parses the received control command (first data packet), and controls the execution unit to perform the first operation according to the parsing instruction, for example, including controlling the rotation of the motor and/or controlling the
  • the sensor collects information, etc., and sends the feedback information after execution (that is, the feedback result) back to the host computer.
  • the host computer renders and displays the feedback information, or the host computer broadcasts the feedback information by voice, or the host computer stores the feedback information in the Reserved in the memory, or the upper computer transmits the feedback information to other devices.
  • the host computer with strong computing and information processing capabilities is used to process artificial intelligence tasks with relatively large computing power
  • the lower computer with weak computing and information processing capabilities is used to control peripheral peripherals (executive components) to achieve more Smart artificial intelligence robot.
  • FIG. 3 is a schematic diagram of a hardware connection between a host computer and a slave computer according to an embodiment of the present disclosure.
  • the hardware of the upper computer (Raspberry Pi) and the lower computer (STM32) can be realized based on the serial port method as shown in Figure 3. connect.
  • the STM32 can convert the Transistor-Transistor Logic (TTL) module (USB signal into a TTL level signal) 310 through the Universal Serial Bus (USB) to convert the STM32
  • TTL Transistor-Transistor Logic
  • USB Universal Serial Bus
  • the hardware connection relationship between STM32 and Raspberry Pi as shown in Figure 3 is the basis for realizing two-way information interaction between STM32 and Raspberry Pi.
  • the STM32 can also be electrically connected to the encryption chip 330 for powering the encryption chip 330 .
  • the communication method shown in FIG. 1 will be described step by step through steps S11 to S14 below.
  • step S11 by installing an encryption chip 221 in the lower computer 220 , it can be used to determine the security verification result between the upper computer 210 and the lower computer 220 . If the security verification result is that the verification is passed, the host computer 210 may perform object recognition on the input first data to obtain a recognition result.
  • the first data may include image, voice, text and so on.
  • the host computer can perform face recognition on the input face image to obtain the recognition result for the face, which can be the image area/position of the target face; or, the host computer can perform object detection on the input image to be processed Get the recognition result for the target object, the recognition result can be the image area/position of the target object; or, the host computer can perform speech recognition on the input voice to be processed to obtain the recognition result for the target voice; or, the host computer can process the input voice
  • the input text is subjected to text detection to obtain the recognition result for the target text.
  • the object recognition method of the first data in the embodiment of the present disclosure may include face recognition, object detection, speech recognition, text detection, etc., and the embodiment of the present disclosure does not limit the specific object recognition method.
  • an encryption chip may also be provided in the upper computer, or in both the upper computer and the lower computer, to determine the security verification result between the upper computer and the lower computer, which is not limited in the embodiments of the present disclosure.
  • a first data packet in a preset protocol format may be generated; the first data packet in a preset protocol format may include an identification start bit, an execution component identification field, a port Part or all of the parameter field, mode identifier field, instruction parameter field, check parameter field, and identifier end bit.
  • the identification start bit is used to determine the beginning of the data to be sent
  • the execution unit identification field carries the execution unit information generated according to the identification result
  • the port parameter field carries the port information of the execution unit generated according to the identification result
  • the mode identification field is used to determine the type of sensor when the execution component identification field is a sensor
  • the instruction parameter field is used to determine the specific actions and functions of the execution component
  • the check parameter field is used for cyclic redundancy
  • the identification end bit is used to determine the end of the sent data.
  • the robot can be commanded to move forward quickly by voice, and the upper computer can generate the first data for controlling the speed of the motor according to the recognition result of the voice command package, the first data package can be expressed as:
  • the identification start bit 0x86 represents the beginning of sending data
  • Executing component identification field 0xAB which means that the executing component is a motor, and is used to indicate the motor control mode
  • the port parameter field 0x02 represents the port of the controlled motor; the host computer can control different motors by setting this field, for example, it can control the motors with serial numbers M0 ⁇ M4, and the corresponding ports are different for motors with different serial numbers.
  • the command parameter field 0x00 represents the speed parameter, which is used to indicate the speed of the motor.
  • the speed range is -100 ⁇ 100;
  • the check parameter field 0x01 is used for Cyclic Redundancy Check (CRC);
  • the robot can be commanded to bend over by voice, and the upper computer can generate the first data for controlling the motor angle according to the recognition result of the voice command package, the first data package can be expressed as:
  • the identification start bit 0x86 represents the beginning of sending data
  • Executing component identification field 0xAB which means that the executing component is a motor, and is used to indicate the motor control mode
  • the port parameter field 0x02 represents the port for controlling the motor.
  • the host computer can control different motors by setting this field. For example, it can control motors with serial numbers M0 ⁇ M4. Motors with different serial numbers have different corresponding ports.
  • the command parameter field 0x81, 0x01, 0x03 is used to control the specific action of the motor, including 0x81 representing the speed parameter, and 0x01, 0x03 representing the angle parameter, where the speed parameter 0x81 is used to indicate the speed of the motor, for example, the speed range is - 100 ⁇ 100; the angle parameters 0x01 and 0x03 are used to indicate the rotation angle of the motor, for example, 0x01 can indicate the rotation angle in the horizontal direction, and 0x03 can indicate the rotation angle in the vertical direction, and the value range of the rotation angle can be -9999 ⁇ 9999 ;
  • the first data packet in the preset protocol format when used to control the sensor to perform the first operation, the first data packet further includes a mode identification field and an instruction parameter, and the mode identification field It carries the type information of the sensor generated according to the recognition result, and the instruction parameter carries the operating parameter of the sensor generated according to the recognition result.
  • the robot can be commanded to collect data by voice, and the upper computer can generate the first data packet for controlling the sensor according to the recognition result of the voice command , the first packet can be expressed as:
  • the identification start bit 0x86 represents the beginning of sending data
  • Executing component identification field 0xCD which means that the executing component is a sensor, and is used to indicate the sensor control mode
  • the port parameter field 0x02 represents the port of the controlled sensor; the host computer can control different sensors by setting this field, for example, it can control sensors with serial numbers P0 ⁇ P8, and sensors with different serial numbers have different corresponding ports.
  • the mode identification field 0xA1 is used to indicate the type of sensor. For example, when the value of this field is 0, it can represent a photoelectric sensor; when the value of this field is 1, it can represent a color sensor; when the value of this field is 2, it can represent Touch sensor; when the value of this field is 3, it can represent an ultrasonic sensor; when the value of this field is 4, it can represent a gyroscope sensor; when the value of this field is 5, it can represent a colored light; when the value of this field is 6. It can represent the temperature and humidity sensor;
  • the instruction parameter fields 0x00, 0x04, and 0xBE are used to control the specific functions of each sensor, for example, they can be used to set the color of colored lights, etc.; the number of parameters in the instruction parameter field can be adjusted according to the sensor type indicated in the mode identification field.
  • the check parameter field 0x01 is used for Cyclic Redundancy Check (CRC);
  • the first data packet in the preset protocol format is compatible with various types of sensors and has strong scalability.
  • the numbers corresponding to the fields in the first data packet are only illustrative, and can be set according to actual requirements or hardware performance when the preset protocol format is met, and are not limited by the embodiments of the present disclosure.
  • the first data packet may include a verification parameter field.
  • the penultimate field is the verification parameter field, which may be 16 bits. The setting of this field is to ensure the accuracy of the transmission results during the information communication process.
  • a verification parameter for verifying the recognition result or the control information can be generated.
  • a preset generator polynomial can be obtained, a binary sequence is generated based on the generator polynomial, and a verification parameter is generated based on the recognition result or the control information and the binary sequence.
  • the generator polynomial can be pre-negotiated with the lower computer to convert the generator polynomial into a binary sequence, and the number of bits in the binary sequence can be a positive integer, such as 8 bits, 4 bits, and so on.
  • the generator polynomial G(x) x3+x2+1, the binary sequence can be 1101.
  • D(x) representing the recognition result or control information and the generator polynomial G(x) can be used to determine the redundant code length R, and then the binary code of D(x) is shifted to the left by R bits to obtain a first binary code, and then divide the first binary code by G(x) to obtain the remainder r. Then perform modulo 2 operation on the last R bit of r to obtain the second binary code, which can be reassigned to r. Then move the binary code of D(x) to the left by R bits and add it to r to obtain the check parameter.
  • the length of D(x) representing the identification result or control information is variable
  • the generator polynomial can be predefined
  • the length of the finally obtained cyclic code that is, the length of the verification parameter
  • the verification parameter information for verifying the identification result or control information can be obtained, and the verification is added to the verification field of the first data packet, and the verification parameter can be used to encrypt the identification result or control information, Improve the accuracy of recognition results or control information transmission.
  • the length of the cyclic code can be customized to achieve a compromise between reliability and efficiency.
  • the first data packet in the preset protocol format not only the efficient communication between the upper computer and the lower computer can be realized, but also the flexibility, security and reliability of the communication between the two can be improved. Moreover, it can also be compatible with a variety of sensors and motors and other actuators, and has strong scalability.
  • step S13 the host computer can send a first data packet in a preset format to the lower computer through the serial port, so that the lower computer can control the executing part to perform the first operation according to the first data packet, and obtain an operation feedback result;
  • the lower computer can use the verification parameter information in the verification parameter field to verify the identification result or control information. If the verification is successful, the first data packet can be retained; otherwise, it can be The first packet received is discarded. By setting the verification parameter field in the first data packet, the accuracy of the identification result or the control information can be guaranteed, and the possibility of being tampered with can be reduced.
  • the first data packet in the preset format can be parsed, and the execution unit is controlled to execute the first operation according to the instruction of the first data packet.
  • the execution unit 230 includes a motor 231 and/or a sensor 232, and the first operation includes controlling at least one motor 231 to drive the artificial intelligence robot to act and/or controlling at least one sensor 232 to perform an action on the current scene.
  • Information Collection includes a motor 231 and/or a sensor 232, and the first operation includes controlling at least one motor 231 to drive the artificial intelligence robot to act and/or controlling at least one sensor 232 to perform an action on the current scene.
  • the artificial intelligence robot can be driven to achieve different actions, such as driving the artificial intelligence robot forward, raising its head, raising its hand, etc.; or it can control different sensors to collect different information and control the temperature
  • the sensor collects the temperature information of the current scene, controls the humidity sensor to collect the current humidity information, and so on.
  • a feedback result can be obtained.
  • the feedback result that can be obtained is the completion of the action; after the sensor collects the information of the current scene, the feedback result that can be obtained is the collected information.
  • step S14 the upper computer receives the operation feedback result sent by the lower computer, renders and displays the operation feedback result.
  • the host computer can call the rendering function to render the feedback result into an image and display it. For example, when the feedback result is the collected temperature information T degree, it can be displayed on the screen connected to the host computer through The rendering function renders the temperature information T degrees into a three-dimensional thermometer image of T degrees, which is displayed in the area used to display the temperature on the screen.
  • the upper computer receives the operation feedback result sent by the lower computer, and can voice broadcast the feedback result, for example, convert the feedback result into an audio signal, send it to the speaker, and control the speaker to broadcast the feedback result.
  • step S14 the upper computer receives the operation feedback result sent by the lower computer, and can store the feedback result in a preset storage location for future use. When the feedback result needs to be used later, it can be read from the preset storage location. Pick.
  • the upper computer receives the operation feedback result sent by the lower computer, and can transmit the feedback result to other devices, for example, through a network interface to the control platform, etc., and the device that obtains the feedback result can be based on
  • the feedback results are displayed, calculated, and sent to the host computer to control commands and other operations.
  • steps S11-S14 when the response to the security verification result is that the verification is passed, the target identification is performed on the first data to be processed, and according to the obtained identification result, a first data packet in a preset protocol format is generated, and then Send the first data packet to the lower computer, so that the lower computer controls the execution part to perform the first operation according to the first data packet, obtains the operation feedback result, and displays, broadcasts, and stores the operation feedback result in response to the received operation feedback result 1.
  • At least one operation in the transmission can improve the flexibility, safety and reliability of the two-way communication between the upper computer and the lower computer.
  • the method in order to obtain the security verification result. Before step S11, the method also includes:
  • step S01 when the first data is received, send a first random number sequence to the encryption chip, so that the encryption chip generates encrypted data based on the first random number sequence;
  • step S02 in response to receiving the encrypted data sent by the lower computer, decrypt the encrypted data to obtain a second random number sequence
  • step S03 the first random number sequence is compared with the second random number sequence to obtain a security verification result.
  • the first encryption key B pre-stored in the dynamic library of the upper computer can be used to burn the second encryption key A in the encrypted chip on the encryption chip of the lower computer through a burning tool.
  • the encrypted chip is unique.
  • the first encryption key B pre-stored in the dynamic library and the second encryption key A in the memory of the encryption chip can be used not only to implement encryption processing on unencrypted data, but also to perform encryption processing on the encrypted data received respectively.
  • Decryption for example, the first encryption key B pre-stored in the dynamic library can decrypt the received content encrypted by the second encryption key A, and the second encryption key A in the encryption chip can decrypt the received content encrypted by the first encryption key The content encrypted with encryption key B is decrypted.
  • step S01 it can be set to a working mode in which the lower computer always supplies power to the encryption chip, that is, the encryption chip of the lower computer can always be in a waiting state.
  • the upper computer receives the input image, voice, text and other first data
  • the upper computer can obtain the current time information, and generate the first random number sequence according to the time information, for example, take the obtained time as the axis (seed)
  • the first random number sequence is generated, and in this way, the encryption information can be effectively prevented from being deciphered by the level method, and the randomness and security of the security verification process can be improved.
  • the host computer sends the first random number sequence to the encryption chip, so that the encryption chip can generate encrypted data based on the first random number sequence.
  • the number sequence is encrypted, and then hashed (Hash) to obtain encrypted data.
  • hash processing is used to perform compression mapping on the encrypted first random number sequence, which can improve storage space utilization and reduce transmission bandwidth. Embodiments of the present disclosure do not limit specific hash algorithms.
  • the upper computer and the encryption chip can be connected through a two-wire serial bus (Inter Integrated Circuit Bus, I2C bus), a serial peripheral interface (Serial Peripheral Interface, SPI), a universal asynchronous receiver transmitter (Universal Asynchronous Receiver Transmitter, UART) ) etc. for data transmission, which is not limited in the embodiments of the present disclosure.
  • I2C bus Inter Integrated Circuit Bus
  • SPI Serial Peripheral Interface
  • UART Universal Asynchronous Receiver Transmitter
  • step S01 when the first data is received, a wake-up instruction is sent to the lower computer, so that the lower computer supplies power to the encryption chip provided in the lower computer ; Sending a first random number sequence to the encryption chip, so that the encryption chip generates encrypted data based on the first random number sequence.
  • the upper computer when it receives the first data such as input images, voices, and texts, it can send a wake-up instruction to the lower computer, so that the lower computer supplies power to the encryption chip arranged in the lower computer; for example, the upper computer ( The wake-up command sent by the Raspberry Pi) can be two high pulses, and after the lower computer (STM32) receives the wake-up command, it supplies power to the encryption chip set in the lower computer.
  • the host computer can obtain current time information, generate a first random number sequence according to the time information, and the host computer sends the first random number sequence to the encryption chip, so that the encryption chip can generate encrypted data based on the first random number sequence.
  • the specific process of the encryption chip generating encrypted data according to the first random number sequence reference may be made to the above.
  • the encryption chip By setting the wake-up command, the encryption chip will be powered only when security verification is required, which can reduce energy consumption and improve information transmission efficiency.
  • step S02 the upper computer decrypts the encrypted data in response to receiving the encrypted data sent by the encryption chip of the lower computer, and obtains a second random number sequence.
  • step S02 includes: performing anti-hash processing on the encrypted data to obtain anti-hash data; The data is decoded to obtain the second random number sequence.
  • the encrypted data is hashed by the encryption chip of the lower computer
  • the encrypted data received by the upper computer is subjected to anti-hash processing (that is, the reverse process of hash processing) to obtain anti-hash data.
  • anti-hash processing that is, the reverse process of hash processing
  • the encrypted data can be de-analyzed and simulated according to the first encryption key in the dynamic library of the host computer, such as including the asymmetric encryption algorithm RSA, etc., to obtain the second random number sequence.
  • loading the first encryption key in the upper computer by means of a dynamic library can prevent key information from being deciphered by means of decompilation and the like, and improve the security and reliability of the method.
  • the second random number sequence for comparison with the first random number sequence generated by the host computer can be obtained, which is beneficial to improve the security and reliability of communication.
  • the first random number sequence stored in the host computer may be compared with the second random number sequence obtained in step S02 to obtain a security verification result. For example, if the first random number sequence is the same as the second random number sequence, the obtained security verification result is that the verification is passed, and normal communication can be carried out between the upper computer and the lower computer; if the first random number sequence is different from the second random number sequence , the obtained security verification result is verification failure, and communication between the upper computer and the lower computer cannot be performed.
  • steps S01-S03 security authentication of the upper computer and the lower computer can be realized, cloning or copying of the upper computer or the lower computer can be prevented, and communication security can be improved.
  • Fig. 4 is a schematic diagram of an implementation flow of a communication method provided by an embodiment of the present disclosure.
  • the method can be applied to a lower computer, including:
  • step S31 in response to receiving the first data packet in the preset protocol format sent by the upper computer, control the execution part of the lower computer to perform the first operation, and obtain the operation feedback result, wherein the first data packet is After the security verification between the lower computer and the upper computer is passed, it is generated based on the recognition result of the first data; wherein the first data includes at least one of image, voice, and text;
  • step S32 sending the operation feedback result to the host computer.
  • the first data packet in the preset protocol format is after the security verification between the lower computer and the upper computer is passed, for example, the first random
  • the number sequence is the same as the second random number sequence, it is generated based on the recognition results of the first data such as images, voices, and texts.
  • step S31 the lower computer receives the first data packet in the preset protocol format sent by the upper computer, and can control the execution unit of the lower computer to execute the first operation to obtain an operation feedback result.
  • the first data packet in the preset protocol format may include part or all of the identification start bit, the execution unit identification field, the port parameter field, the mode identification field, the command parameter field, the check parameter field, and the identification end bit field.
  • the identification start bit is used to determine the beginning of the received data
  • the execution component identification field carries the execution component information generated according to the recognition result
  • the port parameter field carries the port information of the execution component generated according to the recognition result
  • the mode identification field is used to determine the type of sensor when the execution component identification field is a sensor
  • the instruction parameter field is used to determine the specific actions and functions of the execution component
  • the check parameter field is used for cyclic redundancy calibration.
  • the end bit is used to determine the end of the received data.
  • the execution component includes a motor and/or a sensor
  • the first operation includes controlling at least one motor to drive the artificial intelligence robot to act and/or controlling at least one sensor to collect information on the current scene.
  • step S31 includes: when the execution component identification field includes a motor identification, control the motor of the port corresponding to the port parameter field to drive the artificial intelligence robot to act, and obtain motor feedback in response to the completion of the action result;
  • the execution component identification field includes a sensor identification
  • control the sensor of the port corresponding to the port parameter field to collect information on the current scene, and obtain a sensor feedback result in response to the completion of information collection
  • the preset The first data packet of the protocol also includes a mode identification field, which is used to determine the type of sensor corresponding to each port;
  • the operation feedback result includes the motor feedback result and/or the sensor feedback result.
  • the robot can be commanded to move forward quickly by voice.
  • the lower computer will receive the first data sent by the upper computer to control the speed of the motor. package, the first data package can be expressed as:
  • the identification start bit 0x86 represents the beginning of the received data
  • Executing component identification field 0xAB which means that the executing component is a motor, and is used to indicate the motor control mode
  • the port parameter field 0x02 represents the port for controlling the motor.
  • the host computer can control different motors by setting this field. For example, it can control motors with serial numbers M0 ⁇ M4. Motors with different serial numbers have different corresponding ports.
  • the command parameter field 0x00 represents the speed parameter, which is used to indicate the speed of the motor.
  • the speed range is -100 ⁇ 100;
  • the check parameter field 0x01 is used for Cyclic Redundancy Check (CRC);
  • the lower computer can analyze that the execution component identification field is the motor identification 0xAB, and can control the motor at the port corresponding to the port parameter field 0x02 to rotate at the speed indicated by the speed parameter 0x00, and then drive the artificial intelligence robot to move .
  • a motor feedback result can be obtained, such as a field representing the completion of the motor action.
  • the robot can be commanded to bend down by voice.
  • the lower computer will receive the first data sent by the upper computer to control the angle of the motor. package, the first data package can be expressed as:
  • the identification start bit 0x86 represents the beginning of the received data
  • Executing component identification field 0xAB which means that the executing component is a motor, and is used to indicate the motor control mode
  • the port parameter field 0x02 represents the port for controlling the motor.
  • the host computer can control different motors by setting this field. For example, it can control motors with serial numbers M0 ⁇ M4. Motors with different serial numbers have different corresponding ports.
  • the command parameter field 0x81, 0x01, 0x03 is used to control the specific action of the motor, including 0x81 representing the speed parameter, and 0x01, 0x03 representing the angle parameter, where the speed parameter 0x81 is used to indicate the speed of the motor, for example, the speed range is - 100 ⁇ 100; the angle parameters 0x01 and 0x03 are used to indicate the rotation angle of the motor, for example, 0x01 can indicate the rotation angle in the horizontal direction, and 0x03 can indicate the rotation angle in the vertical direction, and the value range of the rotation angle can be -9999 ⁇ 9999 ;
  • the lower computer can analyze that the execution part identification field is the motor identification 0xAB, and the motor at the port corresponding to the port parameter field 0x02 can be controlled according to the speed indicated by the speed parameter 0x81, and the angle parameters 0x00, 0x00 indicated The angle is rotated, and then the artificial intelligence robot is driven to move.
  • the motor at the port completes the task, and a motor feedback result can be obtained, such as a field representing the completion of the motor action.
  • the first data packet in the preset protocol format further includes a mode identification field and an instruction parameter
  • the mode identification field carries the type information of the sensor generated according to the recognition result
  • the instruction parameter carries the information according to the The operating parameters of the sensor generated by the identification result
  • the controlling the sensor of the port corresponding to the port parameter field to collect information on the current scene includes: determining the sensor type to be controlled according to the mode identification field; according to the sensor type and the The instruction parameter sets the parameters of the sensor corresponding to the port in the port parameter field, and controls the sensor to collect information on the current scene.
  • the robot can be commanded to collect data by voice.
  • the lower computer will receive the first data packet sent by the upper computer to control the sensor.
  • the first packet can be expressed as:
  • the identification start bit 0x86 represents the beginning of the received data
  • Executing component identification field 0xCD which means that the executing component is a sensor, and is used to indicate the sensor control mode
  • the port parameter field 0x02 represents the port for controlling the sensor.
  • the host computer can control different sensors by setting this field. For example, it can control sensors with serial numbers P0 ⁇ P8. Sensors with different serial numbers have different corresponding ports.
  • the mode identification field 0xA1 is used to indicate the type of sensor. For example, when the value of this field is 0, it can represent a photoelectric sensor; when the value of this field is 1, it can represent a color sensor; when the value of this field is 2, it can represent Touch sensor; when the value of this field is 3, it can represent an ultrasonic sensor; when the value of this field is 4, it can represent a gyroscope sensor; when the value of this field is 5, it can represent a colored light; when the value of this field is 6. It can represent the temperature and humidity sensor;
  • the command parameter fields 0x00, 0x04, and 0xBE are used to control the specific functions of each sensor, for example, it can be used to set the color of colored lights, etc.
  • the check parameter field 0x01 is used for Cyclic Redundancy Check (CRC);
  • the lower computer can analyze that the execution part identification field is the sensor identification 0xCD, and the port corresponding to the port parameter field 0x02 can be controlled.
  • 0x04, and 0xBE indicate specific operations or collection commands to collect information on the current scene.
  • the collected information can be encapsulated into the sensor feedback result.
  • the information collected by the sensor may be the distance measurement value of the ultrasonic sensor and the color obtained by the color sensor, and the embodiment of the present disclosure does not limit the specific information collected by the sensor.
  • the first data packet in the preset protocol format is compatible with various types of sensors and has strong scalability.
  • the numbers corresponding to each field in the first data packet are only illustrative, and can be set according to actual needs or hardware performance when the preset protocol format is met, and are not limited by the embodiments of the present disclosure.
  • the first data packet received by the lower computer may include a verification parameter field.
  • the penultimate field is a verification parameter field, which can be is 16 bits. The setting of this field is to ensure the accuracy of the transmission results during the information communication process.
  • a verification parameter for verifying the recognition result or the control information can be generated.
  • the lower computer After receiving the first data packet, the lower computer can use the verification parameter information in the verification parameter field to verify the identification result or control information. If the verification is successful, the first data packet can be retained; otherwise, the received data packet can be discarded. The first packet that arrives.
  • the verification parameter information may be carried in the verification parameter field of the first data packet.
  • the lower computer can obtain the pre-stored supervision code sequence, the binary sequence generated by the supervision code sequence, or directly obtain the stored binary sequence. Then, the verification parameter information is divided by the binary sequence to obtain a remainder R, and if the remainder is 0, it can be considered that the recognition result is passed the verification. Otherwise, it can be considered that the recognition result is verification failure. If the verification is passed, the first data packet may be parsed, and related operations indicated by the first data packet may be performed; if the verification fails, the first data packet may be discarded. By setting the verification parameter field in the first data packet, the accuracy of the identification result or the control information can be guaranteed, and the possibility of being tampered with can be reduced.
  • the lower computer can receive the first data packet in the preset protocol format sent by the upper computer, and control the execution unit of the lower computer to execute the first operation, and obtain the operation feedback result.
  • step S32 sending the operation feedback result to the host computer.
  • the feedback result can be sent to the upper computer according to the [0x86, result information of the execution part, 0x01, 0xCF] data packet format.
  • the identification start bit 0x86 represents the beginning of the data sent by the lower computer
  • the check parameter field 0x01 is used for cyclic redundancy check
  • the identification end bit 0xCF represents the end of the data sent by the lower computer.
  • the lower computer responds to receiving the first data packet in the preset protocol format sent by the upper computer, and controls the execution unit of the lower computer to execute the first Operation, obtain the operation feedback result, and send the obtained operation feedback result back to the host computer.
  • the flexibility, safety and reliability of the two-way communication between the host computer and the lower computer can be improved.
  • the lower computer in order to realize security verification between the lower computer and the upper computer, the lower computer is provided with an encryption chip, and before step S31, the method also includes:
  • step S21 in response to receiving the wake-up instruction sent by the host computer, power is supplied to the encryption chip, so that the encryption chip enters a waiting state;
  • step S22 in response to receiving the first random number sequence sent by the host computer through the encryption chip, after waiting for a random first time, encrypt the first random number sequence through the encryption chip processing, generating encrypted data;
  • step S23 sending the encrypted data to the host computer through the encryption chip.
  • the first encryption key B pre-stored in the dynamic library of the upper computer can be used to burn the second encryption key A in the encrypted chip on the encryption chip of the lower computer through a burning tool.
  • the encrypted chip is unique.
  • the first encryption key B pre-stored in the dynamic library and the second encryption key A in the memory of the encryption chip can be used not only to implement encryption processing on unencrypted data, but also to perform encryption processing on the encrypted data received respectively.
  • Decryption for example, the first encryption key B pre-stored in the dynamic library can decrypt the received content encrypted by the second encryption key A, and the second encryption key A in the encryption chip can decrypt the received content encrypted by the first encryption key The content encrypted with encryption key B is decrypted.
  • step S21 in response to receiving the wake-up instruction sent by the upper computer, the lower computer may supply power to the encryption chip, for example, provide a high level of +5V, so that the encryption chip enters a waiting state.
  • the lower computer will supply power to the encryption chip only after receiving the wake-up command, which can reduce energy consumption and improve information transmission efficiency.
  • step S21 in addition to the wake-up command sent by the upper computer in step S21, so that the lower computer supplies power to the encryption chip and wakes up the encryption chip of the lower computer, it can also be set as a working mode in which the lower computer always supplies power to the encryption chip.
  • step S21 can be skipped, and step S22 can be directly executed.
  • the encryption chip of the lower computer receives the first random number sequence sent by the upper computer, and can randomly stay for a first time, such as 1-100ms, and then encrypts the first random number sequence to generate encrypted data.
  • the encryption chip can encrypt the first random number sequence according to the second encryption key A set in the memory, and then perform hash (Hash) processing to obtain encrypted data.
  • the encryption chip can use an encryption circuit to implement encryption.
  • the randomness of the security verification process can be enhanced, and the time randomness and security can be improved.
  • the embodiment of the present disclosure does not limit the specific first time.
  • step S22 includes: performing encoding processing on the first random number sequence according to the second encryption key in the internal memory of the encryption chip to obtain encrypted encoded data; performing encryption on the encoded data Hash processing to obtain the encrypted data.
  • the encryption chip can encode the first random number sequence according to the second encryption key A set in the memory, such as an encryption algorithm based on the asymmetric encryption algorithm RSA and variable-length Hough code, etc., to obtain encrypted encoded data.
  • the second encryption key A set in the memory such as an encryption algorithm based on the asymmetric encryption algorithm RSA and variable-length Hough code, etc.
  • hash (Hash) processing may be performed on the encrypted coded data to obtain encrypted data.
  • the hash processing is used to compress and map the encrypted first random number sequence
  • the hash algorithm can be used to compress information of any length to a function of a preset length of information. Greek algorithm is not limited.
  • the encrypted data can be sent to the upper computer through the encryption chip of the lower computer in step S23, so that the upper computer can perform security verification according to the encrypted data.
  • steps S21-S23 security authentication of the upper computer and the lower computer can be realized, cloning or copying of the upper computer or the lower computer can be prevented, and communication security can be improved.
  • the communication method of the embodiment of the present disclosure will be described below by taking the upper computer and the lower computer set in the artificial intelligence robot as an example.
  • the Raspberry Pi can be used as the upper computer
  • the STM32-based control module can be used as the lower computer.
  • the encryption chip can be fixed on the lower computer through the card slot interface, and the upper computer and the lower computer communicate through the serial port.
  • FIG. 5 is an interactive schematic diagram of a communication method provided by an embodiment of the present disclosure; as shown in FIG. 5 , the communication method may include the following steps S51 to S70:
  • step S51 the host computer starts security verification in response to receiving the first data including images, texts, voices and the like.
  • step S52 the upper computer sends a wake-up instruction to the lower computer.
  • step S53 the lower computer receives a wake-up instruction sent by the upper computer.
  • step S54 the lower computer supplies power to the encryption chip installed in the lower computer, so that the encryption chip enters a working state.
  • step S55 after the host computer sends the wake-up instruction, it can randomly generate the first random sequence according to the current time information.
  • step S56 the encryption chip of the lower computer enters a waiting state, and can receive data sent by the upper computer at any time.
  • step S57 the upper computer sends the first random number sequence to the encryption chip of the lower computer.
  • step S58 the encryption chip of the lower computer receives the first random number sequence, and randomly waits for the first time (1-100 ms), so as to improve the randomness in time.
  • step S59 the encryption chip of the lower computer encodes the received first random number sequence according to the second encryption key in the internal memory to obtain encrypted encoded data.
  • step S60 the encryption chip of the lower computer performs hash processing on the coded data to obtain encrypted data.
  • step S61 the encryption chip of the lower computer sends encrypted data to the upper computer.
  • step S62 the host computer performs anti-hash processing on the encrypted data to obtain anti-hash data.
  • step S63 the host computer decodes the anti-hash data according to the first encryption key in the dynamic library to obtain the second series of random numbers.
  • step S64 the host computer compares the first random number sequence with the second random number sequence to obtain a security verification result.
  • step S65 in response to the security verification result being verified, that is, when the first random number sequence is the same as the second random number sequence, the host computer conducts object recognition on the first data to be processed to obtain a recognition result.
  • step S66 the host computer generates a first data packet in a preset protocol format according to the identification result.
  • step S67 the upper computer sends the first data packet to the lower computer.
  • step S68 the lower computer controls the executing component to execute the first operation according to the received first data packet, and obtains an operation feedback result.
  • step S69 the lower computer sends an operation feedback result to the upper computer.
  • step S70 the upper computer receives the operation feedback result sent by the lower computer, and performs at least one operation among display, broadcast, storage, and transmission of the operation feedback result.
  • the upper computer performs target identification on the first data to be processed, and interacts with the lower computer, so that the upper computer with stronger computing and information processing capabilities It is used to process artificial intelligence tasks with large computing power, and the lower computer with weaker computing and information processing capabilities is used to control peripheral peripherals (executive components), which can not only improve the flexibility of two-way communication between the upper computer and the lower computer, Safety and reliability, and can make artificial intelligence robots more flexible and intelligent.
  • this method is based on serial communication, which can be compatible with more upper and lower computer devices, and a more flexible two-way interaction mechanism is designed, which can easily realize the weak control of the lower computer to the upper computer, and can complete artificial intelligence tasks on educational robots .
  • the target identification of the first data to be processed in response to the security verification result being verified as successful, can be performed, and according to the obtained identification result, the first data packet in the preset protocol format is generated, and then the downstream bit
  • the computer sends the first data packet, so that the lower computer controls the execution part to perform the first operation according to the first data packet, obtains the operation feedback result, and displays, broadcasts, stores, and transmits the operation feedback result in response to the received operation feedback result
  • At least one of the operations can improve the flexibility, safety and reliability of the two-way communication between the upper computer and the lower computer.
  • the embodiments of the present disclosure also provide a communication device, electronic equipment, computer-readable storage media, and computer programs, all of which can be used to implement any communication method provided by the embodiments of the present disclosure.
  • a communication device electronic equipment, computer-readable storage media, and computer programs, all of which can be used to implement any communication method provided by the embodiments of the present disclosure.
  • FIG. 6A is a schematic diagram of the composition and structure of a communication device provided by an embodiment of the present disclosure.
  • the device includes: an identification part 71 configured to respond to the security verification result being verified, and the first to be processed The data is subjected to target recognition to obtain a recognition result; wherein, the first data includes at least one of image, voice, and text; the generation part 72 is configured to generate a first data packet in a preset protocol format according to the recognition result; The sending part 73 sends the first data packet to the lower computer, so that the lower computer performs the first operation according to the first data packet control execution part, and obtains the operation feedback result; the feedback part 74 responds to receiving the operation sent by the lower computer The feedback result is to perform at least one operation of displaying, broadcasting, storing, and transmitting the operation feedback result.
  • the device further includes a verification part
  • the verification part includes: a first sub-part configured to send a first random number sequence to an encryption chip provided in a lower computer when the first data is received , so that the encryption chip generates encrypted data based on the first random number sequence; the second subpart is configured to decrypt the encrypted data in response to receiving the encrypted data sent by the lower computer, and obtain the second random number sequence; the third The sub-part is configured to compare the first random number sequence with the second random number sequence to obtain a security verification result.
  • the first subsection is further configured to: in the case of receiving the first data, send a wake-up instruction to the lower computer, so that the lower computer supplies power to the encryption chip set in the lower computer; Sending the first random number sequence, so that the encryption chip generates encrypted data based on the first random number sequence.
  • the second sub-part is further configured to: perform anti-hash processing on encrypted data to obtain anti-hash data; Perform decoding processing to obtain a second random number sequence.
  • the upper computer and the lower computer are set in the artificial intelligence robot
  • the first data packet in the preset protocol format includes an execution component identification field and a port parameter field
  • the execution component identification field carries the execution component generated according to the recognition result Information
  • the port parameter field carries the port information of the execution component generated according to the recognition result
  • the execution component includes a motor and/or a sensor
  • the first operation includes controlling at least one motor to drive the artificial intelligence robot action and/or controlling at least one sensor pair Collect information about the current scene.
  • the first data packet in the preset protocol format when used to control the sensor to perform the first operation, the first data packet further includes a mode identification field and an instruction parameter, and the mode identification field carries information generated according to the recognition result.
  • the type information of the sensor, the instruction parameter carries the operating parameter of the sensor generated according to the recognition result.
  • FIG. 6B is a schematic diagram of the composition and structure of a communication device provided by an embodiment of the present disclosure.
  • the device includes: a receiving part 75 configured to respond to receiving The first data packet in the preset protocol format sent to the upper computer, controls the execution part of the lower computer to perform the first operation, and obtains the operation feedback result, wherein the first data packet is passed after the security verification between the lower computer and the upper computer , generated based on the recognition result of the first data; wherein, the first data includes at least one of image, voice, and text; the return part 76 is configured to send an operation feedback result to the host computer.
  • the device is provided with an encryption chip, and the device further includes a response part, and the response part includes: a fourth sub-part configured to respond to receiving the first message sent by the upper computer through the encryption chip The random number sequence, after waiting for the random first time, encrypts the first random number sequence through the encryption chip to generate encrypted data; the fifth subpart is configured to send the encrypted data to the host computer through the encryption chip.
  • the device further includes a sixth subsection: in response to receiving a wake-up instruction sent by the host computer, supplying power to the encryption chip so that the encryption chip enters a waiting state.
  • the fourth subsection is further configured to: encode the first random number sequence according to the second encryption key in the memory of the encryption chip to obtain encrypted encoded data; Hash processing to get encrypted data.
  • the upper computer and the lower computer are set in the artificial intelligence robot
  • the first data packet in the preset protocol format includes an execution component identification field and a port parameter field
  • the execution component identification field carries the execution component generated according to the recognition result Information
  • the port parameter field carries the port information of the execution component generated according to the recognition result
  • the execution component includes a motor and/or a sensor
  • the first operation includes controlling at least one motor to drive an artificial intelligence robot action and/or controlling at least one sensor to the current scene Performing information collection
  • the receiving part is further configured to: in the case that the execution component identification field includes a motor identification, control the motor of the port corresponding to the port parameter field to drive the artificial intelligence robot to act, and obtain the motor feedback result in response to the completion of the action; and /or in the case that the execution component identification field includes the sensor identification, the sensor of the port corresponding to the control port parameter field collects information on the current scene, and obtains the sensor feedback result in response to the completion of information collection, and the first data packet of the prese
  • the first data packet in the preset protocol format further includes a mode identification field and an instruction parameter
  • the mode identification field carries the type information of the sensor generated according to the recognition result
  • the instruction parameter carries the type information of the sensor generated according to the recognition result.
  • Operating parameters; controlling the sensor of the port corresponding to the port parameter field to collect information on the current scene includes: determining the sensor type to be controlled according to the mode identification field; according to the sensor type and instruction parameters, setting the parameters of the sensor corresponding to the port in the port parameter field, The control sensor collects information on the current scene.
  • the functions or parts included in the apparatus provided by the embodiments of the present disclosure may be configured to execute the methods described in the above method embodiments, and for specific implementation, refer to the descriptions of the above method embodiments.
  • a "part" may be a part of a circuit, a part of a processor, a part of a program or software, etc., of course it may also be a unit, a module or a non-modular one.
  • Computer readable storage media may be volatile or nonvolatile computer readable storage media.
  • An embodiment of the present disclosure provides an electronic device, including: a processor; and a memory for storing instructions executable by the processor; wherein the processor is configured to invoke the instructions stored in the memory to execute the above method.
  • An embodiment of the present disclosure provides a computer program product, including computer-readable codes, or a non-volatile computer-readable storage medium bearing computer-readable codes, when the computer-readable codes are run in a processor of an electronic device , the processor in the electronic device executes the above method.
  • An embodiment of the present disclosure provides a computer program, including computer readable codes.
  • a processor in the electronic device executes the above method.
  • Electronic devices may be provided as terminals, servers, or other forms of devices.
  • FIG. 7 is a schematic diagram of the composition and structure of an electronic device provided by an embodiment of the present disclosure.
  • the electronic device 800 may be a terminal such as a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, or a personal digital assistant.
  • electronic device 800 may include one or more of the following components: processing component 802, memory 804, power supply component 806, multimedia component 808, audio component 810, input/output (Input/Output, I/O) interface 812 , sensor component 814 , and communication component 816 .
  • the processing component 802 generally controls the overall operations of the electronic device 800, such as those associated with display, telephone calls, data communications, camera operations, and recording operations.
  • the processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the above method. Additionally, processing component 802 may include one or more modules that facilitate interaction between processing component 802 and other components. For example, processing component 802 may include a multimedia module to facilitate interaction between multimedia component 808 and processing component 802 .
  • the memory 804 is configured to store various types of data to support operations at the electronic device 800 . Examples of such data include instructions for any application or method operating on the electronic device 800, contact data, phonebook data, messages, pictures, videos, and the like.
  • the memory 804 can be realized by any type of volatile or non-volatile storage device or their combination, such as Static Random-Access Memory (Static Random-Access Memory, SRAM), Electrically Erasable Programmable Read-Only Memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), Erasable Programmable Read-Only Memory (EPROM), Programmable Read-Only Memory (PROM), Read-Only Memory (Read-Only Memory, Only Memory, ROM), magnetic memory, flash memory, magnetic disk or optical disk.
  • Static Random-Access Memory SRAM
  • Electrically Erasable Programmable Read-Only Memory Electrically Erasable Programmable Read-Only Memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), Erasable
  • the power supply component 806 provides power to various components of the electronic device 800 .
  • Power components 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for electronic device 800 .
  • the multimedia component 808 includes a screen providing an output interface between the electronic device 800 and the user.
  • the screen may include a liquid crystal display (Liquid Crystal Display, LCD) and a touch panel (Touch Pad, TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user.
  • the touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensor may not only sense a boundary of a touch or swipe action, but also detect duration and pressure associated with the touch or swipe action.
  • the multimedia component 808 includes a front camera and/or a rear camera. When the electronic device 800 is in an operation mode, such as a shooting mode or a video mode, the front camera and/or the rear camera can receive external multimedia data. Each front camera and rear camera can be a fixed optical lens system or have focal length and optical zoom capability.
  • the audio component 810 is configured to output and/or input audio signals.
  • the audio component 810 includes a microphone (MIC), which is configured to receive external audio signals when the electronic device 800 is in operation modes, such as call mode, recording mode and voice recognition mode. Received audio signals may be further stored in memory 804 or sent via communication component 816 .
  • the audio component 810 also includes a speaker for outputting audio signals.
  • the I/O interface 812 provides an interface between the processing component 802 and a peripheral interface module, which may be a keyboard, a click wheel, a button, and the like. These buttons may include, but are not limited to: a home button, volume buttons, start button, and lock button.
  • Sensor assembly 814 includes one or more sensors for providing status assessments of various aspects of electronic device 800 .
  • the sensor component 814 can detect the open/closed state of the electronic device 800, the relative positioning of components, such as the display and the keypad of the electronic device 800, the sensor component 814 can also detect the electronic device 800 or a Changes in position of components, presence or absence of user contact with electronic device 800 , electronic device 800 orientation or acceleration/deceleration and temperature changes in electronic device 800 .
  • Sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects in the absence of any physical contact.
  • the sensor assembly 814 may also include an optical sensor, such as a Complementary Metal Oxide Semiconductor (CMOS) or Charge-coupled Device (CCD) image sensor, for use in imaging applications.
  • CMOS Complementary Metal Oxide Semiconductor
  • CCD Charge-coupled Device
  • the sensor component 814 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor or a temperature sensor.
  • the communication component 816 is configured to facilitate wired or wireless communication between the electronic device 800 and other devices.
  • the electronic device 800 can access wireless networks based on communication standards, such as wireless networks (WiFi), second-generation mobile communication technology (2-Generation wireless telephone technology, 2G), third-generation mobile communication technology (3rd-Generation wireless telephone technology , 3G), fourth-generation mobile communication technology (4th-Generation wireless telephone technology, 4G), long-term evolution of general mobile communication technology (Long Term Evolution, LTE), fifth-generation mobile communication technology (5th Generation Mobile Communication Technology, 5G ) or a combination of them.
  • the communication component 816 receives broadcast signals or broadcast related information from an external broadcast management system via a broadcast channel.
  • the communication component 816 also includes a Near Field Communication (NFC) module to facilitate short-range communication.
  • NFC Near Field Communication
  • the NFC module can be based on Radio Frequency Identification (RFID) technology, Infrared Data Association (Infrared Data Association, IrDA) technology, Ultra Wide Band (UWB) technology, Bluetooth (Bluetooth, BT) technology and other technology to achieve.
  • RFID Radio Frequency Identification
  • IrDA Infrared Data Association
  • UWB Ultra Wide Band
  • Bluetooth Bluetooth
  • the electronic device 800 may be implemented by one or more Application Specific Integrated Circuits (Application Specific Integrated Circuit, ASIC), Digital Signal Processor (Digital Signal Processor, DSP), Digital Signal Processing Device (Digital Signal Process Device , DSPD), Programmable Logic Device (Programmable Logic Device, PLD), Field Programmable Gate Array (Field Programmable Gate Array, FPGA), controller, microcontroller, microprocessor or other electronic components to implement the above method.
  • ASIC Application Specific Integrated Circuits
  • DSP Digital Signal Processor
  • DSPD Digital Signal Processing Device
  • PLD Programmable Logic Device
  • Field Programmable Gate Array Field Programmable Gate Array
  • FPGA Field Programmable Gate Array
  • a non-volatile computer-readable storage medium such as a memory 804 including computer program instructions, which can be executed by the processor 820 of the electronic device 800 to implement the above method.
  • FIG. 8 is a schematic diagram of the composition and structure of an electronic device provided by an embodiment of the present disclosure.
  • electronic device 1900 may be provided as a server.
  • electronic device 1900 includes processing component 1922 , which further includes one or more processors, and a memory resource represented by memory 1932 for storing instructions executable by processing component 1922 , such as application programs.
  • the application programs stored in memory 1932 may include one or more modules each corresponding to a set of instructions.
  • the processing component 1922 is configured to execute instructions to perform the above method.
  • Electronic device 1900 may also include a power supply component 1926 configured to perform power management of electronic device 1900, a wired or wireless network interface 1950 configured to connect electronic device 1900 to a network, and an input-output (I/O) interface 1958 .
  • the electronic device 1900 can operate based on the operating system stored in the memory 1932, such as the Microsoft server operating system (Windows Server TM ), the graphical user interface-based operating system (Mac OS X TM ) introduced by Apple Inc., and the multi-user and multi-process computer operating system (Unix TM ), a free and open source Unix-like operating system (Linux TM ), an open source Unix-like operating system (FreeBSD TM ), or the like.
  • Microsoft server operating system Windows Server TM
  • Mac OS X TM graphical user interface-based operating system
  • Unix TM multi-user and multi-process computer operating system
  • Linux TM free and open source Unix-like operating system
  • FreeBSD TM open source Unix-like operating system
  • a non-transitory computer-readable storage medium such as the memory 1932 including computer program instructions, which can be executed by the processing component 1922 of the electronic device 1900 to implement the above method.
  • Embodiments of the present disclosure may be a system, method, apparatus, electronic device, computer readable storage medium, and/or computer program product.
  • the computer program product may include a computer-readable storage medium loaded with computer-readable program instructions for enabling a processor to implement the method provided by the embodiments of the present disclosure.
  • a computer readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device.
  • a computer readable storage medium may be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
  • Computer-readable storage media include: portable computer disks, hard disks, Random Access Memory (RAM), Read Only Memory (ROM), Erasable Programmable Memory Read memory (EPROM or flash memory), Static Random Access Memory (SRAM), Compact Disc Read-Only Memory (CD-ROM), Digital Video Disc (DVD), Memory Stick , floppy disks, mechanically encoded devices, such as punched cards or raised-in-recess structures with instructions stored thereon, and any suitable combination of the foregoing.
  • RAM Random Access Memory
  • ROM Read Only Memory
  • EPROM or flash memory Erasable Programmable Memory Read memory
  • SRAM Static Random Access Memory
  • CD-ROM Compact Disc Read-Only Memory
  • DVD Digital Video Disc
  • Memory Stick Memory Stick
  • mechanically encoded devices such as punched cards or raised-in-recess structures with instructions stored thereon, and any suitable combination of the foregoing.
  • computer-readable storage media are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., pulses of light through fiber optic cables), or transmitted electrical signals.
  • Computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to a respective computing/processing device, or downloaded to an external computer or external storage device over a network, such as the Internet, a local area network, a wide area network, and/or a wireless network.
  • the network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and/or edge servers.
  • a network adapter card or a network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing/processing device .
  • the computer program instructions for executing the method described in the embodiments of the present disclosure may be assembly instructions, instruction set architecture (Instruction Set Architecture, ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or in the form of Source or object code written in any combination of one or more programming languages, including object-oriented programming languages—such as Smalltalk, C++, etc., and conventional procedural programming languages—such as "C" or similar programming language.
  • Computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server implement.
  • the remote computer can be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or it can be connected to an external computer such as use an Internet service provider to connect via the Internet).
  • LAN Local Area Network
  • WAN Wide Area Network
  • an Internet service provider to connect via the Internet.
  • computer-readable program instructions to personalize and customize electronic circuits, such as programmable logic circuits, field programmable gate arrays (FPGAs) or programmable logic arrays (Programmable Logic Array, PLA).
  • the electronic circuit can execute computer-readable program instructions, thereby implementing the embodiments of the present disclosure.
  • Embodiments of the present disclosure are described herein with reference to flowchart illustrations and/or structural block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present disclosure. It should be understood that each block of the flowchart and/or structural block diagram and combinations of blocks in the flowchart and/or structural block diagram can be implemented by computer readable program instructions.
  • These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that when executed by the processor of the computer or other programmable data processing apparatus , producing an apparatus for realizing the functions/actions specified in one or more blocks in the flowchart and/or the structural block diagram.
  • These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause computers, programmable data processing devices and/or other devices to work in a specific way, so that the computer-readable medium storing instructions includes An article of manufacture comprising instructions for implementing various aspects of the functions/acts specified in one or more blocks in flowcharts and/or block diagrams.
  • each block in a flowchart or block diagram may represent a module, a program segment, or a portion of an instruction that contains one or more logical functions for implementing the specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block in the structural block diagrams and/or flowchart illustrations, and combinations of blocks in the structural block diagrams and/or flowchart illustrations can be implemented with a dedicated hardware-based system that performs the specified function or action. may be implemented, or may be implemented by a combination of special purpose hardware and computer instructions.
  • the computer program product can be specifically realized by means of hardware, software or a combination thereof.
  • the computer program product is embodied as a computer storage medium, and in other embodiments, the computer program product is embodied as a software product, such as a software development kit (Software Development Kit, SDK) and the like.
  • the embodiment of the present disclosure discloses a communication method and device, an electronic device, a storage medium, and a computer program, wherein the method includes: responding to the fact that the security verification result is verified as passing, performing target identification on the first data to be processed, and according to The obtained recognition result generates a first data packet in a preset protocol format, and then sends the first data packet to the lower computer, so that the lower computer controls the execution part to perform the first operation according to the first data packet, obtains the operation feedback result, and responds to For the received operation feedback results, perform at least one operation of displaying, broadcasting, storing, and transmitting the operation feedback results.
  • the flexibility, security and reliability of the two-way communication between the upper computer and the lower computer can be improved.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Manipulator (AREA)
  • Selective Calling Equipment (AREA)

Abstract

本发明涉及一种通信方法及装置、电子设备、存储介质、计算机程序,其中,该方法包括:响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别(S11),并根据得到的识别结果,生成预设协议格式的第一数据包(S12),然后向下位机发送第一数据包,以使下位机根据第一数据包控制执行部件执行第一操作,得到操作反馈结果(S13),响应于接收到的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作(S14)。

Description

通信方法及装置、电子设备、存储介质和计算机程序
相关申请的交叉引用
本公开基于申请号为202111027673.2、申请日为2021年09月02日、申请名称为“通信方法及装置、电子设备和存储介质”的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本公开作为参考。
技术领域
本公开涉及但不限于通信技术领域,尤其涉及一种通信方法及装置、电子设备、存储介质和计算机程序。
背景技术
人工智能机器人技术综合了多学科的发展成果,代表了高技术的发展前沿,人工智能机器人涉及到信息技术的多个领域,它融合了多种先进技术,应用于众多领域。例如,在教育领域,引入人工智能教育机器人的教学,将给中小学的信息技术课程增添新的活力,成为培养中小学生综合能力、信息素养的优秀平台。
然而,目前人工智能机器人产品的核心处理器大多是基于Arduino(由意大利Massimo Banzi团队推出),Microbit(由英国BBC公司推出),STM32(由意法半导体集团推出)等主控芯片,通过该芯片可较好的实现与电机、颜色传感器、超声传感器的控制与通信。为了进一步提高人工智能机器人产品处理任务的能力,可在机器人中设置多个处理器模块,例如上位机和下位机,利用上位机完成图像处理、语音识别等计算量较大的人工智能类任务,同时利用下位机和电机、传感器等外部设备进行交互控制。
发明内容
本公开实施例提出了一种通信技术方案,该方案是这样实现的:
本公开实施例提供了一种通信方法,所述方法应用于上位机,包括:响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,得到识别结果;其中,所述第一数据包括图像、语音、文本中的至少一种;根据所述识别结果,生成预设协议格式的第一数据包;向下位机发送第一数据包,以使所述下位机根据所述第一数据包控制执行部件执行第一操作,得到操作反馈结果;响应于接收到下位机发送的所述操作反馈结果,对所述操作反馈结果进行显示、播报、存储、传输中至少一种操作。通过这种方式,能够提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性。
本公开实施例提供了一种通信方法,所述方法应用于下位机,包括:响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作,得到操作反馈结果,其中,所述第一数据包是在所述下位机与所述上位机之间安全验证通过之后,基于第一数据的识别结果生成的;其中,所述第一数据包括图像、语音、文本中的至少一种;发送所述操作反馈结果至所述上位机。通过这种方式,能够提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性。
本公开实施例提供了一种通信装置,所述装置包括:识别部分,被配置为响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,得到识别结果;其中,所述第一数据包括图像、语音、文本中的至少一种;生成部分,被配置为根据所述识别结果,生成预设协议格式的第一数据包;发送部分,向下位机发送第一数据包,以使所述下位机根据所述第一数据包控制执行部件执行第一操作,得到操作反馈结果;反馈部分,响应于接收到下位机发送的所述操作反馈结果,对所述操作反馈结果进行显示、播报、存储、传输中至少一种操作。通过这种方式,能够提高通信装置的灵活性和可靠性。
本公开实施例提供了一种通信装置,包括:接收部分,被配置为响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作,得到操作反馈结果,其中,所述第一数据包是在所述下位机与所述上位机之间安全验证通过之后,基于第一数据的识别结果生成的;其中,所述第一数据包括图像、语音、文本中的至少一种;回传部分,被配置为发送所述操作反馈结果至所述上位机。通过这种方式,能够提高通信装置的灵活性和可靠性。
本公开实施例提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
本公开实施例提供一种计算机程序,包括计算机可读代码,在所述计算机可读代码在电子设备中运行的情况下,所述电子设备中的处理器执行用于实现上述方法。
在本公开实施例中,能够响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,并根据得到的识别结果,生成预设协议格式的第一数据包,然后向下位机发送第一数据包,以使下位机根据第一数据包控制执行部件执行第一操作,得到操作反馈结果,响应于接收到的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作,通过这种方式,能够提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开实施例的技术方案。
图1为本公开实施例提供的一种通信方法的实现流程示意图。
图2为本公开实施例提供的一种通信方法的实现示意图。
图3为本公开实施例提供的一种上位机与下位机之间硬件连接的示意图。
图4为本公开实施例提供的一种通信方法的实现流程示意图。
图5为本公开实施例提供的一种通信方法的交互示意图。
图6A为本公开实施例提供的一种通信装置的组成结构示意图。
图6B为本公开实施例提供的一种通信装置的组成结构示意图。
图7为本公开实施例提供的一种电子设备的组成结构示意图。
图8为本公开实施例提供的一种电子设备的组成结构示意图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合 中选择的任意一个或多个元素。另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
相关技术中,机器人产品,尤其是用于激发学生学习兴趣、培养学生综合能力的教育机器人产品,融合了机械原理、电子传感器、计算机软硬件等多种技术,但是无法较好的处理人工智能类任务。
针对上述问题,可在机器人中设置上位机和下位机,利用上位机完成图像处理、语音识别等计算量较大的人工智能类任务,同时利用下位机和电机、传感器等外部设备进行交互控制。在这种情况下,需要上位机与下位机之间可以双向交互控制,并且,上位机与下位机之间的通信效率和可靠性直接关系着机器人的人工智能化程度。
有鉴于此,本公开实施例提出一种通信方法,在响应于安全验证结果为验证通过的情况下,上位机对待处理的第一数据进行目标识别,并且与下位机进行高效率地交互通信,提高上位机和下位机之间通信的灵活性、安全性和可靠性。
图1为本公开实施例提供的一种通信方法的实现流程示意图。该通信方法可以由终端设备或服务器等电子设备执行,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等,所述方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。或者,可通过服务器执行所述方法。下面以电子设备作为执行主体为例对本公开实施例的通信方法进行说明。
如图1所示,该方法可应用于上位机,该方法包括:
在步骤S11中,响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,得到识别结果;其中,所述第一数据包括图像、语音、文本中的至少一种;
在步骤S12中,根据所述识别结果,生成预设协议格式的第一数据包;
在步骤S13中,向下位机发送第一数据包,以使所述下位机根据所述第一数据包控制执行部件执行第一操作,得到操作反馈结果;
在步骤S14中,响应于接收到下位机发送的所述操作反馈结果,对所述操作反馈结果进行显示、播报、存储、传输中至少一种操作。
举例来说,图2为本公开实施例提供的一种通信方法的实现示意图。如图2所示,树莓派可以作为上位机210,基于嵌入式单片机STM32的控制模块可作为下位机220,下位机220中可设置加密芯片221,加密芯片221可通过插卡槽口的方式与下位机连接或者直接焊接在下位机电路板上,本公开实施例对加密芯片与下位机的连接方式不作限制。
应当理解,上位机可以是树莓派、RockPro64板卡(由瑞芯微电子厂商推出)、Adapteva板卡(由芯片厂商Adapteva推出)等,下位机可以是基于单片机Arduino(由意大利Massimo Banzi团队推出)、单片机Microbit(由英国BBC公司推出),嵌入式单片机STM8或者嵌入式单片机STM32等控制模块,本公开实施例对上位机与下位机的类型不作具体限制。
所述上位机与所述下位机设置在人工智能机器人中,例如包括应用于教育领域的人工智能机器人、应用于服务行业的人工智能机器人、应用于娱乐行业的人工智能机器人、应用于工控领域的人工智能机器人等,本公开实施例对人工智能机器人的种类不作限制。
如图2所示,上位机210用于实现计算量较大的人工智能任务,例如包括人脸识别、物体检测、语音识别、文本检测、图像分类识别等目标识别任务;下位机220用于实现和周边执行部件230的交互,例如包括控制不同的电机231按照不同的规律转动、控制 不同的传感器232采集不同的周边信息等。例如,在某一控制流程中,在基于加密芯片的安全验证通过后,上位机可对输入的图像、语音或文本等数据,进行基于人工智能算法的目标识别,得到识别结果,并基于识别结果发送控制指令(即第一数据包)至下位机,以使下位机解析接收的控制指令(第一数据包),按照解析指令控制执行部件执行第一操作,例如包括控制电机转动和/或控制传感器采集信息等,并将执行后的反馈信息(即反馈结果)发送回上位机,上位机实现反馈信息的渲染并显示,或者上位机将反馈信息进行语音播报,或者上位机将反馈信息存储在存储器中备用,又或者上位机将反馈信息传输至其他设备。
通过这种方式,计算与信息处理能力较强的上位机用于处理计算力较大的人工智能任务,计算与信息处理能力较弱的下位机用于控制周边外设(执行部件),实现更加智能的人工智能机器人。
图3为本公开实施例提供的一种上位机与下位机之间硬件连接的示意图。为了实现上位机(树莓派)和下位机(STM32)之间的通信,可按照如图3所示的连接方式,基于串口方式实现上位机(树莓派)与下位机(STM32)的硬件连接。如图3所示,STM32可通过通用串行总线(Universal Serial Bus,USB)转晶体管-晶体管逻辑电路(Transistor-Transistor Logic,TTL)模块(USB信号转换为TTL电平信号)310,将STM32的GND引脚(即信号地引脚)311与树莓派的GND引脚321电连接,将STM32的TXD引脚(即发送数据引脚)312与树莓派的RXD引脚323电连接,将STM32的RXD引脚(即接收数据引脚)313与树莓派的TXD引脚322电连接。STM32与树莓派间如图3所示的硬件连接关系,是实现STM32与树莓派双向信息交互的基础。并且,STM32还可与加密芯片330电连接,用于为加密芯片330供电。
下面通过步骤S11~S14对图1所示的通信方法进行分步说明。
在步骤S11中,如图2所示,通过在下位机220设置加密芯片221,可用于确定上位机210与下位机220间的安全验证结果。在安全验证结果为验证通过的情况下,上位机210可对输入的第一数据进行目标识别,得到识别结果。其中,第一数据可包括图像、语音、文本等。
例如,上位机可对输入的人脸图像进行人脸识别得到针对人脸的识别结果,该识别结果可以是目标人脸的图像区域/位置;或者,上位机可对待处理的输入图像进行物体检测得到针对目标物体的识别结果,该识别结果可以是目标物体的图像区域/位置;或者,上位机可对待处理的输入语音进行语音识别得到针对目标语音的识别结果;或者,上位机可对待处理的输入文本进行文本检测得到针对目标文本的识别结果。
应当理解,本公开实施例对第一数据的目标识别方式可包括人脸识别、物体检测、语音识别、文本检测等,本公开实施例对具体的目标识别方式不作限制。
应当理解,也可以在上位机中设置加密芯片,或者在上位机和下位机中均设置加密芯片,用于确定上位机与下位机间的安全验证结果,本公开实施例对此不作限制。
在步骤S12中,可根据步骤S11中获取的识别结果,生成预设协议格式的第一数据包;所述预设协议格式的第一数据包可包括标识起始位、执行部件标识字段、端口参数字段、模式标识字段、指令参数字段、校验参数字段、标识结束位中的部分或全部字段。
其中,所述标识起始位用于确定发送数据的开端,所述执行部件标识字段携带有根据识别结果生成的执行部件信息,所述端口参数字段携带有根据识别结果生成的执行部件的端口信息,所述模式标识字段用于在执行部件标识字段为传感器的情况下,确定传感器的类型,所述指令参数字段用于确定执行部件的具体动作与功能,所述校验参数字段用于循环冗余校验,所述标识结束位用于确定发送数据的结束。
在一些实施方式中,假设上位机与下位机设置在人工智能教育机器人中,可通过语 音命令该机器人快速前进,上位机可根据该语音命令的识别结果,生成用于控制电机速度的第一数据包,该第一数据包可表示为:
[0x86,0xAB,0x02,0x00,0x01,0xCF]
其中,标识起始位0x86,代表发送数据的开端;
执行部件标识字段0xAB,代表为执行部件为电机,用于指示电机控制模式;
端口参数字段0x02,代表受控电机的端口;上位机可通过设置此字段控制不同电机,例如,可控制序号为M0~M4的电机,不同序号的电机,对应的端口不同。
指令参数字段0x00,代表速度参数,用于指示电机速度大小,例如,速度范围为-100~100;
校验参数字段0x01,用于循环冗余校验(Cyclic Redundancy Check,CRC);
标识结束位0xCF,代表发送数据的结束。
在一些实施方式中,假设上位机与下位机设置在人工智能教育机器人中,可通过语音命令该机器人弯腰,上位机可根据该语音命令的识别结果,生成用于控制电机角度的第一数据包,该第一数据包可表示为:
[0x86,0xAB,0x02,0x81,0x01,0x03,0x00,0xCF]
其中,标识起始位0x86,代表发送数据的开端;
执行部件标识字段0xAB,代表为执行部件为电机,用于指示电机控制模式;
端口参数字段0x02,代表控制电机的端口,上位机可通过设置此字段控制不同电机,例如,可控制序号为M0~M4的电机,不同序号的电机,对应的端口不同。
指令参数字段0x81,0x01,0x03用于控制电机的具体动作,包括代表速度参数的0x81,以及代表角度参数的0x01,0x03,其中,速度参数0x81用于指示电机速度大小,例如,速度范围为-100~100;角度参数0x01,0x03用于指示电机转动角度的大小,例如,0x01可以指示水平方向的转动角度,0x03可以指示垂直方向的转动角度,转动角度的取值范围可以为-9999~9999;
校验参数字段0x00,用于循环冗余校验(Cyclic Redundancy Check,CRC);
标识结束位0xCF,代表发送数据的结束。
在一些实施方式中,在所述预设协议格式的第一数据包用于控制传感器执行第一操作的情况下,所述第一数据包还包括模式标识字段和指令参数,所述模式标识字段携带有根据识别结果生成的传感器的类型信息,所述指令参数携带有根据识别结果生成的传感器的操作参数。
在一些实施方式中,假设上位机与下位机设置在人工智能教育机器人中,可通过语音命令该机器人采集数据,上位机可根据该语音命令的识别结果,生成用于控制传感器的第一数据包,该第一数据包可表示为:
[0x86,0xCD,0x02,0xA1,0x00,0x04,0xBE,0x01,0xCF]
其中,标识起始位0x86,代表发送数据的开端;
执行部件标识字段0xCD,代表为执行部件为传感器,用于指示传感器控制模式;
端口参数字段0x02,代表受控传感器的端口;上位机可通过设置此字段控制不同传感器,例如,可控制序号为P0~P8的传感器,不同序号的传感器,对应的端口不同。
模式标识字段0xA1,用于指示传感器的类型,例如,当该字段的值为0,可代表光电传感器;当该字段的值为1,可代表颜色传感器;当该字段的值为2,可代表触碰传感器;当该字段的值为3,可代表超声传感器;当该字段的值为4,可代表陀螺仪传感器;当该字段的值为5,可代表彩灯;当该字段的值为6,可代表温湿度传感器;
指令参数字段0x00,0x04,0xBE用于控制各传感器的具体功能,例如可用于设定彩灯颜色等;指令参数字段的参数个数可根据模式标识字段中指示的传感器类型调整。
校验参数字段0x01,用于循环冗余校验(Cyclic Redundancy Check,CRC);
标识结束位0xCF,代表发送数据的结束。
通过这种方式,该预设协议格式的第一数据包可兼容多种类型的传感器,可扩展性强。
应当理解,在上述例子中,第一数据包中对应各字段的数字仅作示意,在满足预设协议格式的情况下,可根据实际需求或硬件性能设定,本公开实施例不作限制。
在上述例子中,第一数据包中可以包括校验参数字段,例如,在上述控制电机或传感器的第一数据包中,倒数第二个字段为校验参数字段,可以是16个比特位。该字段的设置是为了保证信息通信过程中传输结果的准确性。可针对识别结果或基于识别结果的控制信息,生成对识别结果或控制信息进行校验的校验参数。
可获取预设的生成多项式,基于所述生成多项式,生成二进制序列,再基于识别结果或控制信息以及二进制序列,生成校验参数。例如,生成多项式可以与下位机预先协商,将生成多项式转换为二进制序列,二进制序列的位数可以为正整数,如8位、4位等。例如,生成多项式G(x)=x3+x2+1,二进制序列可以是1101。然后可以利用代表识别结果或控制信息的D(x)以及生成多项式G(x),确定冗余码长R,然后将D(x)的二进制码向左移动R位,得到一个第一二进制码,然后将该第一二进制码除以G(x),得到余数r。然后将r的最后R位进行模2运算,得到第二二进制码,可以将第二二进制码重新赋值给r。然后将D(x)的二进制码向左移动R位后与r相加,可以得到校验参数。该校验方法中,代表识别结果或控制信息的D(x)的长度是可变的,生成多项式可预定义,最终得到的循环码长度(即校验参数的长度),是可变的,并且可根据需求自动调整。
通过这种方式,可以得到对识别结果或控制信息进行校验的校验参数信息,将校验添加在第一数据包的校验字段中,可以利用校验参数为识别结果或控制信息加密,提高识别结果或控制信息传输的准确性。并且,可以自定义循环码长度,实现可靠性和高效性的折衷。
可见,通过设置预设协议格式的第一数据包,不仅可实现上位机与下位机之间的高效通信,并提高两者间通信的灵活性、安全性和可靠性。而且,还可以兼容多种传感器和电机等执行部件,可扩展性强。
在步骤S13中,上位机可通过串口向下位机发送预设格式的第一数据包,以使下位机根据该第一数据包控制执行部件执行第一操作,得到操作反馈结果;
其中,下位机在接收到第一数据包之后,可以利用校验参数字段中的校验参数信息为识别结果或控制信息进行校验,如果校验成功则可以保留第一数据包,否则,可以丢弃接收到的第一数据包。通过在第一数据包设置校验参数字段,可以保证识别结果或者控制信息的准确行,降低被篡改的可能性。
在校验通过后,可对预设格式的第一数据包解析,按照第一数据包的指示,控制执行部件执行第一操作。如图2所示,所述执行部件230包括电机231和/或传感器232,所述第一操作包括控制至少一个电机231驱动所述人工智能机器人动作和/或控制至少一个传感器232对当前场景进行信息采集。例如,可通过控制不同的电机的转速与转达角度,驱动人工智能机器人实现不用的动作,可驱动人工智能机器人前进、抬头、举手等;或者可控制不同的传感器采集不同的信息,可控制温度传感器采集当前场景的温度信息,控制湿度传感器采集当前的湿度信息等。
在执行部件完成第一操作后,可得到反馈结果。例如,在电机实现驱动人工智能机器人动作后,可得到的反馈结果为动作完成;在传感器对当前场景进行信息采集后,可得到的反馈结果为采集信息。
在步骤S14中,上位机接收到下位机发送的操作反馈结果,对操作反馈结果进行渲 染并显示。上位机接收到反馈结果,可调用渲染函数,将反馈结果渲染成图像并显示,例如,当反馈结果为采集的温度信息T度,可在上位机所连接的用于进行显示的屏幕中,通过渲染函数将温度信息T度渲染成T度的立体温度计图像,在屏幕中用于显示温度的区域显示。
在一些实施方式中,在步骤S14中,上位机接收到下位机发送的操作反馈结果,可以对反馈结果进行语音播报,例如将反馈结果转换为音频信号,发送到扬声器,控制扬声器播报反馈结果。
在一些实施方式中,在步骤S14中,上位机接收到下位机发送的操作反馈结果,可以将反馈结果存储到预设存储位置备用,后续需要使用该反馈结果时,可以从预设存储位置读取。
在一些实施方式中,在步骤S14中,上位机接收到下位机发送的操作反馈结果,可以将反馈结果传输至其他设备,例如通过网络接口传输至控制平台等,获取该反馈结果的设备可以根据反馈结果进行显示、计算、给上位机发送控制指令等操作。
因此,通过步骤S11~S14,在响应于安全验证结果为验证通过的情况下,对待处理的第一数据进行目标识别,并根据得到的识别结果,生成预设协议格式的第一数据包,然后向下位机发送第一数据包,以使下位机根据第一数据包控制执行部件执行第一操作,得到操作反馈结果,响应于接收到的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作,能够提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性。
在一些实施方式中,为了获取安全验证结果。在步骤S11之前,所述方法还包括:
在步骤S01中,在接收到所述第一数据的情况下,向所述加密芯片发送第一随机数序列,以使所述加密芯片基于所述第一随机数序列生成加密数据;
在步骤S02中,响应于接收到所述下位机发送的加密数据,对所述加密数据进行解密处理,获取第二随机数序列;
在步骤S03中,对所述第一随机数序列与所述第二随机数序列进行比对,得到安全验证结果。
举例来说,在步骤S01之前,可在上位机的动态库中预存储的第一加密密钥B,在下位机的加密芯片上,通过烧录工具将第二加密密钥A烧录在加密芯片的内存中,该加密芯片具有唯一性。
其中,动态库中预存储的第一加密密钥B与加密芯片内存中的第二加密密钥A,不仅可用于实现对未加密的数据进行加密处理,也可以对各自收到的加密数据进行解密,例如,动态库中预存储的第一加密密钥B可对收到的经第二加密密钥A加密的内容解密,加密芯片中第二加密密钥A可对收到的经第一加密密钥B加密的内容解密。
在步骤S01中,可以设置为下位机一直对加密芯片供电的工作模式,也即下位机的加密芯片可一直处于等待状态。在上位机接收到输入的图像、语音、文本等第一数据的情况下,上位机可获取当前的时间信息,根据时间信息生成第一随机数序列,例如,以获取的时间为轴(种子)产生第一随机数序列,通过这种方式,可有效防止电平方式破解加密信息,提高安全验证过程的随机性和安全性。
然后上位机发送第一随机数序列至加密芯片,以使加密芯片可基于第一随机数序列生成加密数据,例如,加密芯片可根据设置在内存中的第二加密密钥A,对第一随机数序列进行加密处理,再进行哈希(Hash)处理,得到加密数据。应当理解,哈希处理用于对加密后的第一随机数序列进行压缩映射,可以提高存储空间的利用率,减少传输带宽,本公开实施例对具体的哈希算法不作限制。
其中,上位机与加密芯片可通过两线式串行总线(Inter Integrated Circuit Bus,I2C 总线)、串行外设接口(Serial Peripheral Interface,SPI)、通用异步收发传输器(Universal Asynchronous Receiver Transmitter,UART)等进行数据传输,本公开实施例不作限制。
应当理解,除了上述下位机一直对加密芯片供电,使加密芯片一直处于等待的工作状态,还可以通过上位机发送唤醒指令至下位机,使下位机对加密芯片供电,唤醒下位机的加密芯片。
在一些实施方式中,在步骤S01中,在接收到所述第一数据的情况下,向所述下位机发送唤醒指令,以使下位机对设置于所述下位机中的所述加密芯片供电;向所述加密芯片发送第一随机数序列,以使所述加密芯片基于所述第一随机数序列生成加密数据。
例如,在上位机接收到输入的图像、语音、文本等第一数据的情况下,可向下位机发送唤醒指令,以使下位机对设置于下位机中的加密芯片供电;例如,上位机(树莓派)发送的唤醒指令可以是两个高脉冲,下位机(STM32)接收到唤醒指令后,对设置在下位机的加密芯片供电。上位机可获取当前的时间信息,根据时间信息生成第一随机数序列,上位机发送第一随机数序列至加密芯片,以使加密芯片可基于第一随机数序列生成加密数据。其中,加密芯片根据第一随机数序列生成加密数据的具体过程可参考上文。
通过设置唤醒指令,在需要进行安全验证的情况下,才会对加密芯片供电,能够降低能耗,提高信息传输效率。
在步骤S01使加密芯片生成加密数据之后,在步骤S02中,上位机响应于接收到下位机的加密芯片发送的加密数据,对加密数据进行解密处理,获取第二随机数序列。
在一些实施方式中,步骤S02,包括:对所述加密数据进行反哈希处理,得到反哈希数据;根据所述上位机的动态库中的第一加密密钥,对所述反哈希数据进行解码处理,得到所述第二随机数序列。
举例来说,由于加密数据是经过下位机加密芯片的哈希处理,所以对上位机接收到的加密数据先进行反哈希处理(即哈希处理的逆过程),得到反哈希数据。在得到反哈希数据之后,可根据上位机的动态库中的第一加密密钥,对加密数据进行反解析和模拟运算,例如包括非对称加密算法RSA等,得到第二随机数序列。
其中,通过动态库方式在上位机中加载第一加密密钥,可以防止通过反编译等手段对密钥信息进行破解,提高该方法的安全性和可靠性。
通过这种方式,可得到用于与上位机生成的第一随机数序列进行比对的第二随机数序列,有利于提高通信的安全性和可靠性。
在步骤S03中,可对上位机存储的第一随机数序列与步骤S02得到的第二随机数序列进行比对,得到安全验证结果。例如,如果第一随机数序列与第二随机数序列相同,得到的安全验证结果为验证通过,可在上位机与下位机间进行正常通信;如果第一随机数序列与第二随机数序列不同,得到的安全验证结果为验证失败,上位机与下位机间不能通信。
因此,通过步骤S01~S03,可以实现上位机和下位机的安全认证,防止上位机或下位机的克隆或复制,提高通信安全。
图4为本公开实施例提供的一种通信方法的实现流程示意图,在一些实施方式中,如图4所示,所述方法可以应用于下位机,包括:
在步骤S31中,响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作,得到操作反馈结果,其中,所述第一数据包是在所述下位机与所述上位机之间安全验证通过之后,基于第一数据的识别结果生成的;其中,所述第一数据包括图像、语音、文本中的至少一种;
在步骤S32中,发送所述操作反馈结果至所述上位机。
举例来说,参见应用于上位机中的步骤S01~S03,以及步骤S11~S12可知,预设协 议格式的第一数据包是在下位机与上位机之间安全验证通过之后,例如第一随机数序列与第二随机数序列相同的情况下,基于图像、语音、文本等第一数据的识别结果生成的。
在步骤S31中,下位机接收到上位机发送的预设协议格式的第一数据包,可控制下位机的执行部件执行第一操作,得到操作反馈结果。
其中,所述预设协议格式的第一数据包可包括标识起始位、执行部件标识字段、端口参数字段、模式标识字段、指令参数字段、校验参数字段、标识结束位中的部分或全部字段。所述标识起始位用于确定接收数据的开端,所述执行部件标识字段携带有根据识别结果生成的执行部件信息,所述端口参数字段携带有根据识别结果生成的执行部件的端口信息,所述模式标识字段用于在执行部件标识字段为传感器的情况下,确定传感器的类型,所述指令参数字段用于确定执行部件的具体动作与功能,所述校验参数字段用于循环冗余校验,所述标识结束位用于确定接收数据的结束。所述执行部件包括电机和/或传感器,所述第一操作包括控制至少一个电机驱动所述人工智能机器人动作和/或控制至少一个传感器对当前场景进行信息采集。
在一些实施方式中,步骤S31包括:在所述执行部件标识字段包括电机标识的情况下,控制所述端口参数字段对应端口的电机驱动所述人工智能机器人动作,并响应于动作完成得到电机反馈结果;
和/或,在所述执行部件标识字段包括传感器标识的情况下,控制所述端口参数字段对应端口的传感器对当前场景进行信息采集,并响应于信息采集完成得到传感器反馈结果,所述预设协议的第一数据包还包括模式标识字段,用于确定各端口对应的传感器的类型;
其中,所述操作反馈结果包括所述电机反馈结果和/或所述传感器反馈结果。
通过这种方式,可以兼容多种传感器和电机等执行部件,可扩展性强,并且可实现对执行部件的灵活控制。
举例来说,假设上位机与下位机设置在人工智能教育机器人中,可通过语音命令该机器人快速前进,在这种情况下,下位机会收到上位机发送的用于控制电机速度的第一数据包,该第一数据包可表示为:
[0x86,0xAB,0x02,0x00,0x01,0xCF]
其中,标识起始位0x86,代表接收数据的开端;
执行部件标识字段0xAB,代表为执行部件为电机,用于指示电机控制模式;
端口参数字段0x02,代表控制电机的端口,上位机可通过设置此字段控制不同电机,例如,可控制序号为M0~M4的电机,不同序号的电机,对应的端口不同。
指令参数字段0x00,代表速度参数,用于指示电机速度大小,例如,速度范围为-100~100;
校验参数字段0x01,用于循环冗余校验(Cyclic Redundancy Check,CRC);
标识结束位0xCF,代表接收数据的结束。
下位机通过对该第一数据包解析,可分析出执行部件标识字段为电机标识0xAB,可控制端口参数字段0x02对应的端口处的电机按照速度参数0x00指示的速度转动,进而驱动人工智能机器人动作。在端口处的电机完成任务后,可得到一个电机反馈结果,例如某个代表电机动作完成的字段。
举例来说,假设上位机与下位机设置在人工智能教育机器人中,可通过语音命令该机器人弯腰,在这种情况下,下位机会收到上位机发送的用于控制电机角度的第一数据包,该第一数据包可表示为:
[0x86,0xAB,0x02,0x81,0x01,0x03,0x00,0xCF]
其中,标识起始位0x86,代表接收数据的开端;
执行部件标识字段0xAB,代表为执行部件为电机,用于指示电机控制模式;
端口参数字段0x02,代表控制电机的端口,上位机可通过设置此字段控制不同电机,例如,可控制序号为M0~M4的电机,不同序号的电机,对应的端口不同。
指令参数字段0x81,0x01,0x03用于控制电机的具体动作,包括代表速度参数的0x81,以及代表角度参数的0x01,0x03,其中,速度参数0x81用于指示电机速度大小,例如,速度范围为-100~100;角度参数0x01,0x03用于指示电机转动角度的大小,例如,0x01可以指示水平方向的转动角度,0x03可以指示垂直方向的转动角度,转动角度的取值范围可以为-9999~9999;
校验参数字段0x00,用于循环冗余校验(Cyclic Redundancy Check,CRC);
标识结束位0xCF,代表接收数据的结束。
下位机通过对该第一数据包解析,可分析出执行部件标识字段为电机标识0xAB,可控制端口参数字段0x02对应的端口处的电机按照速度参数0x81指示的速度,以及角度参数0x00,0x00指示的角度进行转动,进而驱动人工智能机器人动作。在端口处的电机完成任务,可得到一个电机反馈结果,例如某个代表电机动作完成的字段。
在一些实施方式中,所述预设协议格式的第一数据包还包括模式标识字段和指令参数,所述模式标识字段携带有根据识别结果生成的传感器的类型信息,所述指令参数携带有根据识别结果生成的传感器的操作参数;所述控制所述端口参数字段对应端口的传感器对当前场景进行信息采集包括:根据所述模式标识字段确定需要控制的传感器类型;根据所述传感器类型和所述指令参数,设置所述端口参数字段对应端口的传感器的参数,控制所述传感器对当前场景进行信息采集。
举例来说,假设上位机与下位机设置在人工智能教育机器人中,可通过语音命令该机器人采集数据,在这种情况下,下位机会收到上位机发送的用于控制传感器的第一数据包,该第一数据包可表示为:
[0x86,0xCD,0x02,0xA1,0x00,0x04,0xBE,0x01,0xCF]
其中,标识起始位0x86,代表接收数据的开端;
执行部件标识字段0xCD,代表为执行部件为传感器,用于指示传感器控制模式;
端口参数字段0x02,代表控制传感器的端口,上位机可通过设置此字段控制不同传感器,例如,可控制序号为P0~P8的传感器,不同序号的传感器,对应的端口不同。
模式标识字段0xA1,用于指示传感器的类型,例如,当该字段的值为0,可代表光电传感器;当该字段的值为1,可代表颜色传感器;当该字段的值为2,可代表触碰传感器;当该字段的值为3,可代表超声传感器;当该字段的值为4,可代表陀螺仪传感器;当该字段的值为5,可代表彩灯;当该字段的值为6,可代表温湿度传感器;
指令参数字段0x00,0x04,0xBE用于控制各传感器的具体功能,例如可用于设定彩灯颜色等。
校验参数字段0x01,用于循环冗余校验(Cyclic Redundancy Check,CRC);
标识结束位0xCF,代表接收数据的结束。
下位机通过对该第一数据包解析,可分析出执行部件标识字段为传感器标识0xCD,可控制端口参数字段0x02对应的端口处,对应模式标识字段0xA1指示的类型的传感器,按照指令参数字段0x00,0x04,0xBE指示的具体操作或采集命令,对当前场景进行信息采集。在传感器完成采集任务,可将采集到的信息封装入传感器反馈结果。其中,传感器采集到的信息,可以是超声传感器的测距值、颜色传感器获取的颜色,本公开实施例对传感器采集到的具体信息不作限制。通过这种方式,该预设协议格式的第一数据包可兼容多种类型的传感器,可扩展性强。
应当理解,在上述例子中,第一数据包中对应各字段的数字仅作示意,在满足预设 协议格式的情况下,可根据实际需求或硬件性能设定,本公开实施例不作限制。
在上述三个例子中,下位机接收的第一数据包中可以包括校验参数字段,例如,在上述控制电机或传感器的第一数据包中,倒数第二个字段为校验参数字段,可以是16个比特位。该字段的设置是为了保证信息通信过程中传输结果的准确性。可针对识别结果或基于识别结果的控制信息,生成对识别结果或控制信息进行校验的校验参数。
下位机在接收到第一数据包之后,可以利用校验参数字段中的校验参数信息为识别结果或控制信息进行校验,如果校验成功则可以保留第一数据包,否则,可以丢弃接收到的第一数据包。
例如,该校验参数信息可以携带在第一数据包的校验参数字段中。下位机可以获取预先存储的监督码序列,由该监督码序列生成的二进制序列,或者,直接获取存储的二进制序列。然后将校验参数信息除以二进制序列,得到余数R,在余数是0的情况下,可以认为识别结果是校验通过。否者,可以认为识别结果是校验失败。在校验通过的情况下,可以对第一数据包进行解析,执行第一数据包指示的相关操作;在校验失败的情况下,可以丢弃第一数据包。通过在第一数据包设置校验参数字段,可以保证识别结果或者控制信息的准确行,降低被篡改的可能性。
可见,下位机可接收到上位机发送的预设协议格式的第一数据包,并控制下位机的执行部件执行第一操作,得到操作反馈结果。
在步骤S32中,发送所述操作反馈结果至所述上位机。例如,在下位机的执行部件执行完毕得到结果信息,可按照[0x86,执行部件的结果信息,0x01,0xCF]数据包格式,将反馈结果发送至上位机。其中,标识起始位0x86代表下位机发送数据的开端,校验参数字段0x01用于循环冗余校验,标识结束位0xCF代表下位机发送数据的结束。
因此,通过步骤S31~S32,在下位机与上位机之间安全验证通过之后,下位机响应于接收到上位机发送的预设协议格式的第一数据包,控制下位机的执行部件执行第一操作,得到操作反馈结果,并将得到的操作反馈结果发送回上位机,通过这种方式,能够提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性。
在一些实施方式中,为了实现下位机与上位机之间安全验证,所述下位机中设置有加密芯片,在步骤S31之前,所述方法还包括:
在步骤S21中,响应于接收到所述上位机发送的唤醒指令,对加密芯片供电,使得所述加密芯片进入等待状态;
在步骤S22中,响应于通过所述加密芯片接收到所述上位机发送的第一随机数序列,在等待随机的第一时间后,通过所述加密芯片对所述第一随机数序列进行加密处理,生成加密数据;
在步骤S23中,通过所述加密芯片发送所述加密数据至所述上位机。
举例来说,在步骤S21之前,可在上位机的动态库中预存储的第一加密密钥B,在下位机的加密芯片上,通过烧录工具将第二加密密钥A烧录在加密芯片的内存中,该加密芯片具有唯一性。
其中,动态库中预存储的第一加密密钥B与加密芯片内存中的第二加密密钥A,不仅可用于实现对未加密的数据进行加密处理,也可以对各自收到的加密数据进行解密,例如,动态库中预存储的第一加密密钥B可对收到的经第二加密密钥A加密的内容解密,加密芯片中第二加密密钥A可对收到的经第一加密密钥B加密的内容解密。
在步骤S21中,响应于接收到所述上位机发送的唤醒指令,下位机可对加密芯片供电,例如提供+5V的高电平,使得加密芯片进入等待状态。通过设置唤醒指令,下位机在接收到唤醒指令的情况下,才会对加密芯片供电,能够降低工作能耗,提高信息传输效率。
应当理解,除了步骤S21通过上位机发送的唤醒指令,使下位机对加密芯片供电,唤醒下位机的加密芯片的方式,也可以设置为下位机一直对加密芯片供电的工作模式,在这种情况下,不需要设置唤醒指令唤醒下位机的加密芯片,可略过步骤S21,直接执行步骤S22。
在步骤S22中,下位机的加密芯片接收到上位机发送的第一随机数序列,可随机停留第一时间,例如1~100ms,再对第一随机数序列进行加密处理,生成加密数据。例如,加密芯片可根据设置在内存中的第二加密密钥A,对第一随机数序列进行加密处理,再进行哈希(Hash)处理,得到加密数据。其中,加密芯片可使用加密电路实现加密。
其中,通过设置随机停留的第一时间,可增强安全验证过程的随机性,提高时间随机性和安全性,本公开实施例对具体的第一时间不作限制。
在一些实施方式中,步骤S22包括:根据所述加密芯片的内存中的第二加密密钥,对所述第一随机数序列进行编码处理,得到加密后的编码数据;对所述编码数据进行哈希处理,得到所述加密数据。
举例来说,加密芯片可根据设置在内存中的第二加密密钥A,对第一随机数序列进行编码处理,例如基于非对称加密算法RSA与变长霍夫码的加密算法等,得到加密后的编码数据。
为了提高存储空间的利用率,减少传输带宽,可对加密后的编码数据进行哈希(Hash)处理,得到加密数据。其中,哈希处理用于对加密后的第一随机数序列进行压缩映射,可通过散列算法,将任意长度的信息压缩到某一预设长度信息的函数,本公开实施例对具体的哈希算法不作限制。
通过这种方式,可得到用于安全验证的加密数据,有利于提高通信的安全性和可靠性。
在步骤S22得到了加密数据之后,可在步骤S23中,通过下位机的加密芯片发送该加密数据至上位机,以便上位机根据加密数据进行安全验证。
因此,通过步骤S21~S23,可以实现上位机和下位机的安全认证,防止上位机或下位机的克隆或复制,提高通信安全。
下面以设置在人工智能机器人中的上位机和下位机为例,对本公开实施例的通信方法进行说明。其中,树莓派可作为上位机,以基于STM32的控制模块可作为下位机,加密芯片可通过卡槽接口固定在下位机上,并且上位机与下位机之间通过串口通信。
图5为本公开实施例提供的一种通信方法的交互示意图;如图5所示,该通信方法可以包括如下步骤S51至步骤S70:
在步骤S51中,上位机响应于接收到包括图像、文本、语音等的第一数据的情况下,启动安全验证。
在步骤S52中,上位机发送唤醒指令至下位机。
在步骤S53中,下位机接收到上位机发送的唤醒指令。
在步骤S54中,下位机对设置在下位机的加密芯片供电,使加密芯片进入工作状态。
在步骤S55中,上位机在发送唤醒指令后,可根据当前时间信息随机生成第一随机序列。
在步骤S56中,下位机的加密芯片进入等待状态,可随时接收上位机发送的数据。
在步骤S57中,上位机向下位机的加密芯片发送第一随机数序列。
在步骤S58中,下位机的加密芯片接收第一随机数序列,并随机等待第一时间(1-100ms),以便提高时间上的随机性。
在步骤S59中,下位机的加密芯片根据内存中的第二加密密钥,对接收到的第一随机数序列进行编码处理,得到加密后的编码数据。
在步骤S60中,下位机的加密芯片对编码数据进行哈希处理,得到加密数据。
在步骤S61中,下位机的加密芯片向上位机发送加密数据。
在步骤S62中,上位机对加密数据进行反哈希处理,得到反哈希数据。
在步骤S63中,上位机根据动态库中的第一加密密钥,对反哈希数据进行解码处理,得到第二随机数系列。
在步骤S64中,上位机对第一随机数序列与第二随机数序列进行比对,得到安全验证结果。
在步骤S65中,上位机响应于安全验证结果为验证通过,即第一随机数序列与第二随机数序列相同的情况下,对待处理的第一数据进行目标识别,得到识别结果。
在步骤S66中,上位机根据所述识别结果,生成预设协议格式的第一数据包。
在步骤S67中,上位机向下位机发送第一数据包。
在步骤S68中,下位机根据接收的第一数据包,控制执行部件执行第一操作,得到操作反馈结果。
在步骤S69中,下位机向上位机发送操作反馈结果。
在步骤S70中,上位机接收下位机发送的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作。
通过这种方式,在响应于安全验证结果为验证通过的情况下,上位机对待处理的第一数据进行目标识别,并且与下位机进行交互通信,以使计算与信息处理能力较强的上位机用于处理计算力较大的人工智能任务,计算与信息处理能力较弱的下位机用于控制周边外设(执行部件),不仅能够提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性,而且可以使人工智能机器人更加灵活与智能。
并且,该方法基于串口通信,可以兼容更多的上下位机设备,设计更为为灵活的双向交互机制,可以方便地实现下位机对上位机弱控制,可以在教育机器人上完成人工智能类任务。
因此,在本公开实施例中,能够响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,并根据得到的识别结果,生成预设协议格式的第一数据包,然后向下位机发送第一数据包,以使下位机根据第一数据包控制执行部件执行第一操作,得到操作反馈结果,响应于接收到的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作,提高上位机和下位机之间的双向通信的灵活性、安全性和可靠性。
可以理解,本公开实施例提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
此外,本公开实施例还提供了一种通信装置、电子设备、计算机可读存储介质、计算机程序,上述均可用来实现本公开实施例提供的任一种通信方法,相应技术方案和描述和参见方法部分的相应记载。
图6A为本公开实施例提供的一种通信装置的组成结构示意图,如图6A所示,所述装置包括:识别部分71,被配置为响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,得到识别结果;其中,所述第一数据包括图像、语音、文本中的至少一种;生成部分72,被配置为根据识别结果,生成预设协议格式的第一数据包;发送部分73,向下位机发送第一数据包,以使下位机根据所述第一数据包控制执行部件执行第一操作,得到操作反馈结果;反馈部分74,响应于接收到下位机发送的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作。
在一些实施方式中,所述装置还包括验证部分,验证部分包括:第一子部分,被配置为在接收到第一数据的情况下,向设置于下位机的加密芯片发送第一随机数序列,以 使加密芯片基于第一随机数序列生成加密数据;第二子部分,被配置为响应于接收到下位机发送的加密数据,对加密数据进行解密处理,获取第二随机数序列;第三子部分,被配置为对第一随机数序列与第二随机数序列进行比对,得到安全验证结果。
在一些实施方式中,第一子部分还被配置为:在接收到第一数据的情况下,向下位机发送唤醒指令,以使下位机对设置于下位机中的加密芯片供电;向加密芯片发送第一随机数序列,以使加密芯片基于第一随机数序列生成加密数据。
在一些实施方式中,第二子部分,还被配置为:对加密数据进行反哈希处理,得到反哈希数据;根据上位机的动态库中的第一加密密钥,对反哈希数据进行解码处理,得到第二随机数序列。
在一些实施方式中,上位机与下位机设置在人工智能机器人中,预设协议格式的第一数据包包括执行部件标识字段、端口参数字段;执行部件标识字段携带有根据识别结果生成的执行部件信息,端口参数字段携带有根据识别结果生成的执行部件的端口信息;执行部件包括电机和/或传感器,第一操作包括控制至少一个电机驱动所述人工智能机器人动作和/或控制至少一个传感器对当前场景进行信息采集。
在一些实施方式中,在预设协议格式的第一数据包用于控制传感器执行第一操作的情况下,第一数据包还包括模式标识字段和指令参数,模式标识字段携带有根据识别结果生成的传感器的类型信息,指令参数携带有根据识别结果生成的传感器的操作参数。
本公开实施例提供了一种通信装置,图6B为本公开实施例提供的一种通信装置的组成结构示意图,如图6B所示,所述装置包括:接收部分75,被配置为响应于接收到上位机发送的预设协议格式的第一数据包,控制下位机的执行部件执行第一操作,得到操作反馈结果,其中,第一数据包是在下位机与上位机之间安全验证通过之后,基于第一数据的识别结果生成的;其中,第一数据包括图像、语音、文本中的至少一种;回传部分76,被配置为发送操作反馈结果至所述上位机。
在一些实施方式中,所述装置中设置有加密芯片,所述装置还包括响应部分,所述响应部分包括:第四子部分,被配置为响应于通过加密芯片接收到上位机发送的第一随机数序列,在等待随机的第一时间后,通过加密芯片对第一随机数序列进行加密处理,生成加密数据;第五子部分,被配置为通过加密芯片发送加密数据至上位机。
在一些实施方式中,所述装置还包括第六子部分:响应于接收到上位机发送的唤醒指令,对加密芯片供电,使得加密芯片进入等待状态。
在一些实施方式中,第四子部分,还被配置为:根据加密芯片的内存中的第二加密密钥,对第一随机数序列进行编码处理,得到加密后的编码数据;对编码数据进行哈希处理,得到加密数据。
在一些实施方式中,上位机与下位机设置在人工智能机器人中,预设协议格式的第一数据包包括执行部件标识字段、端口参数字段;执行部件标识字段携带有根据识别结果生成的执行部件信息,端口参数字段携带有根据识别结果生成的执行部件的端口信息;执行部件包括电机和/或传感器,第一操作包括控制至少一个电机驱动人工智能机器人动作和/或控制至少一个传感器对当前场景进行信息采集,其中,接收部分还被配置为:在执行部件标识字段包括电机标识的情况下,控制端口参数字段对应端口的电机驱动人工智能机器人动作,并响应于动作完成得到电机反馈结果;和/或在执行部件标识字段包括传感器标识的情况下,控制端口参数字段对应端口的传感器对当前场景进行信息采集,并响应于信息采集完成得到传感器反馈结果,预设协议的第一数据包还包括模式标识字段,用于确定各端口对应的传感器的类型;其中,操作反馈结果包括电机反馈结果和/或传感器反馈结果。
在一些实施方式中,预设协议格式的第一数据包还包括模式标识字段和指令参数, 模式标识字段携带有根据识别结果生成的传感器的类型信息,指令参数携带有根据识别结果生成的传感器的操作参数;控制所述端口参数字段对应端口的传感器对当前场景进行信息采集包括:根据模式标识字段确定需要控制的传感器类型;根据传感器类型和指令参数,设置端口参数字段对应端口的传感器的参数,控制传感器对当前场景进行信息采集。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的部分可以被配置为执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述。
在本公开实施例以及其他的实施例中,“部分”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是单元,还可以是模块也可以是非模块化的。
本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
本公开实施例提供一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
本公开实施例提供一种计算机程序,包括计算机可读代码,在所述计算机可读代码在电子设备中运行的情况下,所述电子设备中的处理器执行用于实现上述方法。
电子设备可以被提供为终端、服务器或其它形态的设备。
图7为本公开实施例提供的一种电子设备的组成结构示意图。例如,电子设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等终端。
参照图7,电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(Input/Output,I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在电子设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM),可编程只读存储器(Programmable Read-Only Memory,PROM),只读存储器(Read-Only Memory,ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为电子设备800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述电子设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,LCD)和触摸面板 (Touch Pad,TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当电子设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到电子设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如互补金属氧化物半导体(Complementary Metal Oxide Semiconductor,CMOS)或电荷耦合装置(Charge-coupled Device,CCD)图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如无线网络(WiFi)、第二代移动通信技术(2-Generation wireless telephone technology,2G)、第三代移动通信技术(3rd-Generation wireless telephone technology,3G)、第四代移动通信技术(4th-Generation wireless telephone technology,4G)、通用移动通信技术的长期演进(Long Term Evolution,LTE)、第五代移动通信技术(5th Generation Mobile Communication Technology,5G)或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(Near Field Communication,NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(Radio Frequency Identification,RFID)技术,红外数据协会(Infrared Data Association,IrDA)技术,超宽带(Ultra Wide Band,UWB)技术,蓝牙(Bluetooth,BT)技术和其他技术来实现。
在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理设备(Digital Signal Process Device,DSPD)、可编程逻辑器件(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器804,上述计算机程序指令可由电子设备800的处理器820执行以完 成上述方法。
图8为本公开实施例提供的一种电子设备的组成结构示意图。例如,电子设备1900可以被提供为一服务器。参照图8,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如微软服务器操作系统(Windows Server TM),苹果公司推出的基于图形用户界面操作系统(Mac OS X TM),多用户多进程的计算机操作系统(Unix TM),自由和开放原代码的类Unix操作系统(Linux TM),开放原代码的类Unix操作系统(FreeBSD TM)或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。
本公开实施例可以是系统、方法、装置、电子设备、计算机可读存储介质和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开实施例提供的方法的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(Random Access Memory,RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能盘(Digital Video Disc,DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开实施例所述方法的计算机程序指令可以是汇编指令、指令集架构(Instruction Set Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(Local Area  Network,LAN)或广域网(Wide Area Network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(Programmable Logic Array,PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开实施例。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或结构框图描述了本公开实施例。应当理解,流程图和/或结构框图的每个方框以及流程图和/或结构框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或结构框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或结构框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或结构框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和结构框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或结构框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构框图和/或流程图中的每个方框、以及结构框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一些实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一些实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
工业实用性
本公开实施例公开了一种通信方法及装置、电子设备、存储介质和计算机程序,其中,所述方法包括:响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,并根据得到的识别结果,生成预设协议格式的第一数据包,然后向下位机发送第一数据包,以使下位机根据第一数据包控制执行部件执行第一操作,得到操作反馈结果,响应于接收到的操作反馈结果,对操作反馈结果进行显示、播报、存储、传输中至少一种操作。根据本公开实施例,能够提高上位机和下位机之间双向通信的灵活性、安全性和可靠性。

Claims (17)

  1. 一种通信方法,所述方法应用于上位机,包括:
    响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,得到识别结果;其中,所述第一数据包括图像、语音、文本中的至少一种;
    根据所述识别结果,生成预设协议格式的第一数据包;
    向下位机发送所述第一数据包,以使所述下位机根据所述第一数据包控制执行部件执行第一操作,得到操作反馈结果;
    响应于接收到所述下位机发送的所述操作反馈结果,对所述操作反馈结果进行显示、播报、存储、传输中至少一种操作。
  2. 根据权利要求1所述的方法,其中,在所述对待处理的第一数据进行目标识别,得到识别结果之前,所述方法还包括:
    在接收到所述第一数据的情况下,向设置于所述下位机的加密芯片发送第一随机数序列,以使所述加密芯片基于所述第一随机数序列生成加密数据;
    响应于接收到所述下位机发送的加密数据,对所述加密数据进行解密处理,获取第二随机数序列;
    对所述第一随机数序列与所述第二随机数序列进行比对,得到安全验证结果。
  3. 根据权利要求2所述的方法,其中,所述在接收到所述第一数据的情况下,向设置于所述下位机的加密芯片发送第一随机数序列,以使所述加密芯片基于所述第一随机数序列生成加密数据,包括:
    在接收到所述第一数据的情况下,向所述下位机发送唤醒指令,以使所述下位机对设置于所述下位机中的所述加密芯片供电;
    向所述加密芯片发送第一随机数序列,以使所述加密芯片基于所述第一随机数序列生成加密数据。
  4. 根据权利要求2所述的方法,其中,所述对所述加密数据进行解密处理,获取第二随机数序列,包括:
    对所述加密数据进行反哈希处理,得到反哈希数据;
    根据所述上位机的动态库中的第一加密密钥,对所述反哈希数据进行解码处理,得到所述第二随机数序列。
  5. 根据权利要求1-4中任意一项所述的方法,其中,所述上位机与所述下位机设置在人工智能机器人中;
    所述预设协议格式的第一数据包包括执行部件标识字段、端口参数字段;所述执行部件标识字段携带有根据识别结果生成的执行部件信息,所述端口参数字段携带有根据识别结果生成的执行部件的端口信息;
    所述执行部件包括电机和/或传感器,所述第一操作包括控制至少一个电机驱动所述人工智能机器人动作和/或控制至少一个传感器对当前场景进行信息采集。
  6. 根据权利要求5所述的方法,其中,在所述预设协议格式的第一数据包用于控制传感器执行第一操作的情况下,所述第一数据包还包括模式标识字段和指令参数,所述模式标识字段携带有根据识别结果生成的传感器的类型信息,所述指令参数携带有根据识别结果生成的传感器的操作参数。
  7. 一种通信方法,所述方法应用于下位机,包括:
    响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作,得到操作反馈结果,其中,所述第一数据包是在所述下位机与所述上位机之间安全验证通过之后,基于第一数据的识别结果生成的;其中,所述第一数据 包括图像、语音、文本中的至少一种;
    发送所述操作反馈结果至所述上位机。
  8. 根据权利要求7所述的方法,其中,所述下位机中设置有加密芯片,在所述响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作之前,所述方法还包括:
    响应于通过所述加密芯片接收到所述上位机发送的第一随机数序列,在等待随机的第一时间后,通过所述加密芯片对所述第一随机数序列进行加密处理,生成加密数据;
    通过所述加密芯片发送所述加密数据至所述上位机。
  9. 根据权利要求8所述的方法,其中,所述加密芯片接收到所述上位机发送的第一随机数序列之前,所述方法还包括:
    响应于接收到所述上位机发送的唤醒指令,对所述加密芯片供电,使得所述加密芯片进入等待状态。
  10. 根据权利要求8所述的方法,其中,所述通过所述加密芯片对所述第一随机数序列进行加密处理,生成加密数据,包括:
    根据所述加密芯片的内存中烧录好的第二加密密钥,对所述第一随机数序列进行编码处理,得到加密后的编码数据;
    对所述编码数据进行哈希处理,得到所述加密数据。
  11. 根据权利要求7-10中任意一项所述的方法,其中,所述上位机与所述下位机设置在人工智能机器人中,所述预设协议格式的第一数据包包括执行部件标识字段、端口参数字段;所述执行部件标识字段携带有根据识别结果生成的执行部件信息,所述端口参数字段携带有根据识别结果生成的执行部件的端口信息;所述执行部件包括电机和/或传感器,所述第一操作包括控制至少一个电机驱动所述人工智能机器人动作和/或控制至少一个传感器对当前场景进行信息采集;
    其中,所述响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作,得到操作反馈结果,包括:
    在所述执行部件标识字段包括电机标识的情况下,控制所述端口参数字段对应端口的电机驱动所述人工智能机器人动作,并响应于动作完成得到电机反馈结果;和/或
    在所述执行部件标识字段包括传感器标识的情况下,控制所述端口参数字段对应端口的传感器对当前场景进行信息采集,并响应于信息采集完成得到传感器反馈结果;
    其中,所述操作反馈结果包括所述电机反馈结果和/或所述传感器反馈结果。
  12. 根据权利要求11所述的方法,其中,所述预设协议格式的第一数据包还包括模式标识字段和指令参数,所述模式标识字段携带有根据识别结果生成的传感器的类型信息,所述指令参数携带有根据识别结果生成的传感器的操作参数;
    所述控制所述端口参数字段对应端口的传感器对当前场景进行信息采集,包括:
    根据所述模式标识字段确定需要控制的传感器类型;
    根据所述传感器类型和所述指令参数,设置所述端口参数字段对应端口的传感器的参数,控制所述传感器对当前场景进行信息采集。
  13. 一种通信装置,所述装置包括:
    识别模块,被配置为响应于安全验证结果为验证通过,对待处理的第一数据进行目标识别,得到识别结果;其中,所述第一数据包括图像、语音、文本中的至少一种;
    生成模块,被配置为根据所述识别结果,生成预设协议格式的第一数据包;
    发送模块,向下位机发送所述第一数据包,以使所述下位机根据所述第一数据包控制执行部件执行第一操作,得到操作反馈结果;
    反馈模块,响应于接收到所述下位机发送的所述操作反馈结果,对所述操作反馈 结果进行显示、播报、存储、传输中至少一种操作。
  14. 一种通信装置,所述装置包括:
    接收模块,被配置为响应于接收到上位机发送的预设协议格式的第一数据包,控制所述下位机的执行部件执行第一操作,得到操作反馈结果,其中,所述第一数据包是在所述下位机与所述上位机之间安全验证通过之后,基于第一数据的识别结果生成的;其中,所述第一数据包括图像、语音、文本中的至少一种;
    回传模块,被配置为发送所述操作反馈结果至所述上位机。
  15. 一种电子设备,包括:
    处理器;
    用于存储处理器可执行指令的存储器;
    其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至12中任意一项所述的方法。
  16. 一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现权利要求1至12中任意一项所述的方法。
  17. 一种计算机程序,包括计算机可读代码,在所述计算机可读代码在电子设备中运行的情况下,所述电子设备中的处理器执行用于实现权利要求1至12中任意一项所述的方法。
PCT/CN2022/076460 2021-09-02 2022-02-16 通信方法及装置、电子设备、存储介质和计算机程序 WO2023029386A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111027673.2 2021-09-02
CN202111027673.2A CN113746833B (zh) 2021-09-02 2021-09-02 通信方法及装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
WO2023029386A1 true WO2023029386A1 (zh) 2023-03-09

Family

ID=78735151

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/076460 WO2023029386A1 (zh) 2021-09-02 2022-02-16 通信方法及装置、电子设备、存储介质和计算机程序

Country Status (2)

Country Link
CN (1) CN113746833B (zh)
WO (1) WO2023029386A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113746833B (zh) * 2021-09-02 2023-06-16 上海商汤智能科技有限公司 通信方法及装置、电子设备和存储介质
CN116828457B (zh) * 2023-08-30 2023-11-17 四川轻化工大学 应用于酒窖中智能无线监测方法、系统和介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN203630863U (zh) * 2013-12-23 2014-06-04 在线宝科技有限公司 一种具有人脸识别模块的自动售货机
CN205068294U (zh) * 2015-09-21 2016-03-02 广东省自动化研究所 机器人人机交互装置
US20160379107A1 (en) * 2015-06-24 2016-12-29 Baidu Online Network Technology (Beijing) Co., Ltd. Human-computer interactive method based on artificial intelligence and terminal device
CN106426195A (zh) * 2016-08-31 2017-02-22 佛山博文机器人自动化科技有限公司 一种仿人机器人控制装置及其控制方法
CN107139189A (zh) * 2017-07-11 2017-09-08 吴世贵 一种儿童娱教监护机器人及其人体目标跟踪算法
CN206497336U (zh) * 2017-02-10 2017-09-15 深圳市柚子智能科技有限公司 一种智能家居机器人远程控制系统
CN110286684A (zh) * 2019-07-17 2019-09-27 国网湖北省电力有限公司检修公司 一种变电站巡检机器人及变电站巡检系统
WO2021036407A1 (zh) * 2019-08-29 2021-03-04 上海商汤智能科技有限公司 通信方法及装置、电子设备和存储介质
CN113746833A (zh) * 2021-09-02 2021-12-03 上海商汤智能科技有限公司 通信方法及装置、电子设备和存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020164020A1 (en) * 2001-05-04 2002-11-07 Shakeel Mustafa System and method for encrypting and decrypting information through the use of random numbers
CN205721625U (zh) * 2016-03-08 2016-11-23 龙卷风机电科技(昆山)有限公司 一种表情机器人交互系统
CN106625674B (zh) * 2016-12-29 2019-09-27 北京光年无限科技有限公司 一种用于机器人的指令处理方法及机器人
US11151992B2 (en) * 2017-04-06 2021-10-19 AIBrain Corporation Context aware interactive robot
CN109802800B (zh) * 2017-11-17 2020-12-22 华为技术有限公司 一种通信方法及设备
CN108139752B (zh) * 2017-12-28 2020-09-15 深圳市元征软件开发有限公司 诊断设备的指令验证方法、装置和下位机
CN111086007A (zh) * 2018-10-23 2020-05-01 广州奥睿智能科技有限公司 机器人舞蹈节奏自适应系统及机器人
CN109634132A (zh) * 2019-01-03 2019-04-16 深圳壹账通智能科技有限公司 智能家居管理方法、装置、介质及电子设备
CN111819039B (zh) * 2019-07-15 2023-08-15 深圳配天智能技术研究院有限公司 机器人控制方法、装置及可读存储介质
CN110493197B (zh) * 2019-07-25 2022-02-01 深圳壹账通智能科技有限公司 一种登录处理方法及相关设备
CN110430215B (zh) * 2019-08-16 2021-11-09 深圳特蓝图科技有限公司 一种机器人通信控制方法
CN110753048B (zh) * 2019-10-18 2021-07-30 深圳赛动生物自动化有限公司 干细胞制备数据传输方法、装置、计算机设备及存储介质
CN110765434A (zh) * 2019-10-23 2020-02-07 上海商汤智能科技有限公司 身份验证方法、装置、电子设备和存储介质
CN111168690B (zh) * 2019-12-30 2023-02-10 大连交通大学 一种语音交互的非固定任务多人协作机器人
CN111409068A (zh) * 2020-03-13 2020-07-14 兰州大学 仿生机械手控制系统和仿生机械手
CN111816190A (zh) * 2020-07-08 2020-10-23 苏州思必驰信息科技有限公司 用于上位机与下位机的语音交互方法和装置
CN112182551B (zh) * 2020-12-01 2021-03-16 中国航空油料集团有限公司 Plc设备身份认证系统和plc设备身份认证方法
CN112291058A (zh) * 2020-12-29 2021-01-29 杭州海康威视数字技术股份有限公司 一种管理系统的通讯方法及管理系统
CN112733107B (zh) * 2021-04-02 2021-06-22 腾讯科技(深圳)有限公司 一种信息验证的方法、相关装置、设备以及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN203630863U (zh) * 2013-12-23 2014-06-04 在线宝科技有限公司 一种具有人脸识别模块的自动售货机
US20160379107A1 (en) * 2015-06-24 2016-12-29 Baidu Online Network Technology (Beijing) Co., Ltd. Human-computer interactive method based on artificial intelligence and terminal device
CN205068294U (zh) * 2015-09-21 2016-03-02 广东省自动化研究所 机器人人机交互装置
CN106426195A (zh) * 2016-08-31 2017-02-22 佛山博文机器人自动化科技有限公司 一种仿人机器人控制装置及其控制方法
CN206497336U (zh) * 2017-02-10 2017-09-15 深圳市柚子智能科技有限公司 一种智能家居机器人远程控制系统
CN107139189A (zh) * 2017-07-11 2017-09-08 吴世贵 一种儿童娱教监护机器人及其人体目标跟踪算法
CN110286684A (zh) * 2019-07-17 2019-09-27 国网湖北省电力有限公司检修公司 一种变电站巡检机器人及变电站巡检系统
WO2021036407A1 (zh) * 2019-08-29 2021-03-04 上海商汤智能科技有限公司 通信方法及装置、电子设备和存储介质
CN113746833A (zh) * 2021-09-02 2021-12-03 上海商汤智能科技有限公司 通信方法及装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN113746833B (zh) 2023-06-16
CN113746833A (zh) 2021-12-03

Similar Documents

Publication Publication Date Title
WO2023029386A1 (zh) 通信方法及装置、电子设备、存储介质和计算机程序
JP6374010B2 (ja) 情報交信方法、装置および電子機器
EP3657370B1 (en) Methods and devices for authenticating smart card
US10182255B2 (en) Method, terminal, and system for communication pairing of a digital television terminal and a mobile terminal
US9717002B2 (en) Mobile device digital communication and authentication methods
CN101978652B (zh) 使用单向带外(oob)信道在两个通信端点之间进行双向认证
WO2021135593A1 (zh) 一种分享设备的方法及电子设备
CN104955031A (zh) 信息传输方法及装置
TWI737460B (zh) 通信方法、電子設備和儲存介質
CN106599632B (zh) 密码输入方法和装置
US20180115558A1 (en) Fast multicast messaging encryption and authentication
KR20190016671A (ko) 통신 장치, 서버 및 통신 방법
CN111935166B (zh) 通信认证方法、系统、电子设备、服务器及存储介质
WO2014173199A1 (zh) 转换装置和显示系统
WO2023001082A1 (zh) 一种配网方法及装置
CN107269565A (zh) 风扇摆头的控制方法、装置和设备
CN109102293A (zh) 支付控制方法及装置、电子设备、存储介质
CN105812339A (zh) 加密、解密方法及装置
WO2014173215A1 (zh) 转换装置和显示系统
WO2018082237A1 (zh) 密码输入方法和装置
CN103248486A (zh) 转换装置和显示系统
WO2024109441A1 (zh) 一种解析pb格式流通数据的方法及系统
CN207835499U (zh) 一种多功能安全设备及多功能办公系统
CN117651161A (zh) 流动播放控制方法及装置、电子设备、服务器和存储介质
CN116682390A (zh) 屏幕显示系统、方法、装置、设备以及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22862537

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE