WO2024032578A1 - Control module, control apparatus and robot - Google Patents
Control module, control apparatus and robot Download PDFInfo
- Publication number
- WO2024032578A1 WO2024032578A1 PCT/CN2023/111634 CN2023111634W WO2024032578A1 WO 2024032578 A1 WO2024032578 A1 WO 2024032578A1 CN 2023111634 W CN2023111634 W CN 2023111634W WO 2024032578 A1 WO2024032578 A1 WO 2024032578A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- component
- control
- control module
- sensing
- management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
Definitions
- This application belongs to the field of robot technology, and more specifically, relates to a control module, a control device and a robot.
- Robots such as bionic robots, humanoid robots, operating robots, collaborative robots, and dexterous hand systems have many joints/degrees of freedom and a large number of sensing elements and actuators.
- the robot control system needs to control multiple joints/degrees of freedom. Perform parallel control.
- the design of a robot control system has the following challenges: the design of the control part needs to consider computing efficiency, and needs to support the solution of multiple control loops with coupling relationships. In addition, it also needs to ensure response efficiency and communication efficiency.
- the embodiments of this application provide a control module, a control device and a robot to solve problems existing in related technologies.
- the technical solutions are as follows:
- embodiments of the present application provide a control module.
- a control module includes: a central control component, at least one sensing management driver component, at least one execution management driver component, and at least one control logic component;
- the sensing management driving component is used to drive the sensing management module;
- the execution management driving component is used to drive the execution management module;
- the central control component is connected to the control logic component
- the control logic component is connected to the sensing management drive component and the execution management drive component respectively.
- Each of the control modules of this application can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure.
- a host computer of the robot can control multiple control modules to coordinately control the entire robot body.
- the control module can include multiple control logic components; each joint of the robot can form a control loop by a control logic component. When the robot has many degrees of freedom/joints, multiple control logic components can make each control loop of multiple joints The path can be calculated in parallel and the response efficiency is high.
- control module further includes at least one communication component that communicates with peripheral devices; the communication component is connected with the central control component.
- the communication component transmits the received message to the central control component; the control logic component receives instructions from the central control component.
- the control module of this application can be fully controlled by peripheral devices (including host computers).
- the control module includes a plurality of control logic components, wherein one control logic component can communicate with at least another control logic component. If the robot has a large number of degrees of freedom/joints, and there is coupling between the control models or control loops involved in each degree of freedom/joint, information exchange between control logic components can enable each control loop to complete the solution, which is especially suitable for neural-based systems.
- the communication component communicates with at least one of a sensing management driver component, an execution management driver component, and a control logic component.
- the information from the host computer can be directly transmitted to the corresponding target component through the routing of the communication component without having to go through the central control component, which is highly efficient.
- the central control component is connected to at least one of the sensing management drive component and the execution management drive component.
- control module is configured to include a reconfigurable unit and a general-purpose computing unit; the reconfigurable unit communicates with the general-purpose computing unit;
- the reconfigurable unit includes at least one of the sensing management driver components, at least one of the execution management driver components, at least one of the control logic components, and the central control component as described above.
- the general-purpose computing unit communicates with peripheral devices to exchange first messages; the general-purpose computing unit decodes and encodes the first message to obtain the second message, and communicates with the reconfigurable unit using the second message;
- the reconfigurable unit encodes and decodes the second message, and transmits the instruction to the corresponding component according to the second message.
- the reconfigurable unit may also be configured to include at least one of the communication components according to the complexity of the communication.
- the general computing unit is ARM or DSP
- the reconfigurable unit is FPGA or reconfigurable hardware.
- FPGA field-programmable gate array
- the advantage of using FPGA as a reconfigurable unit in the control module is that the components it carries can be executed in parallel, which is especially suitable for solving the situation of multiple sensing elements, multiple execution elements, and multiple control targets, and can respond at high speed and in real time.
- the advantage of using ARM or DSP for communication management is that because of the high efficiency of ARM or DSP encoding and decoding, software (compared to firmware) can more flexibly implement and upgrade communication protocols and routing rules, making development easier.
- ARM can be used to carry embedded systems and better support WiFi/Ethernet protocol stacks.
- the control module of this application from communicating with peripheral equipment (such as a host computer) to obtain the first message to decoding and encoding the first message to obtain the machine code of the second message, the upgrade and transformation mainly occurs in the general-purpose computing unit, so the upgrade At this time, only the general-purpose computing unit is needed; it is convenient for upgrading and transformation.
- peripheral equipment such as a host computer
- control module supports one or more control modes through control logic components.
- the control module can implement different control modes and control algorithms through control logic components. Different control modes and control algorithms can be controlled by different control logic Edit component implementation. Multiple control modes and control algorithms can also be implemented by the same control logic component.
- control logic component is controlled by a central control component, and the central control component issues instructions to the control logic component to switch between different control modes; or,
- the control logic component is controlled by a peripheral device and switches between different control modes according to instructions from the peripheral device.
- the control module supports the closed-loop control mode of the lower computer; in the closed-loop control mode of the lower computer, target instructions are provided by peripheral devices, and the control module performs closed-loop control as the lower computer.
- the advantage of the closed-loop control mode of the lower computer is that the lower computer responds quickly and has good parallelism; it can reduce the computing pressure of the upper computer.
- control module supports the open-loop control mode of the lower computer; in the open-loop control mode of the lower computer, target instructions are provided by peripheral devices, and the control module performs open-loop control as the lower computer.
- target instructions are provided by peripheral devices, and the control module performs open-loop control as the lower computer.
- the host computer can directly control the actuating components for easy debugging
- the host computer adopts a brain-like computing control method.
- the brain-like neural network can run on the host computer, and the computing power is stronger than that of the host computer;
- the lower computer can still respond to emergencies.
- control module can make a judgment based on information from sensing elements and/or actuating elements and switch between different control modes.
- control module includes a signal processing component, and the signal processing component has at least one filtering method
- the signal processing component is connected to the sensing management driving component, or the signal processing component is arranged in the sensing management driving component.
- control module can switch between different filtering modes according to instructions from peripheral devices; or, the control module can perform operations based on information from sensing elements and/or actuating elements. Make a judgment and switch between different filtering methods.
- control module can adjust the signal sampling mode of the sensing management module.
- the central control component determines the signal sampling mode based on information from the sensing element and/or the actuating element, and instructs the sensing management driving component to adjust the signal sampling mode.
- the peripheral device transmits the control information to the central control component, and the central control component instructs the sensing management driving component to adjust the signal sampling mode according to the control information.
- the information upload mode of the control module includes one or more of the following:
- control module uploads information according to a given frequency
- control module central control component uploads specific information according to given trigger conditions
- control module determines whether to upload any information and the upload frequency based on the change rate of the information.
- the conventional upload mode that is, continuous upload of information; the control module uploads information (including sensor information, monitoring information, actuator information, internal status information, etc.) according to a given frequency.
- the conventional upload mode uses continuous communication.
- the advantage of this method is that the host computer can continuously and intensively monitor whether the lower computer and even the entire system are working normally, and the data is reliable and stable; if there is communication packet loss, it can be discovered and corrected in time.
- the disadvantage of this method is that when the number of sensors is large, it will occupy too much communication bandwidth and put too much computing pressure on the central processing module.
- the event-triggered upload mode means that the central control component adopts corresponding processing procedures to upload given information based on given trigger conditions.
- the event-triggered upload mode uses intermittent communication. The advantage is that it does not have to upload all information in real time, which can save bandwidth.
- Adaptive upload mode means that the control module determines whether to upload any information and how often it should be uploaded based on the change rate of the information.
- the adaptive upload mode communicates only when information changes, further saving bandwidth.
- control module also includes an emergency response control component, capable of emergency response.
- the emergency response control component includes a neural network subcomponent; the neural network subcomponent is used for emergency processing, and controls the execution management driver component during emergency processing;
- the neural network subcomponent encodes motion trajectories through connection relationships and weights between neurons.
- the control module of this application is preferably controlled by a host computer in all directions.
- the host computer adopts a brain-like computing control method.
- the brain-like neural network can run on the host computer and has stronger computing power than the host computer.
- the neural network subcomponent of the slave computer can perform emergency response; the slave computer has a faster emergency response speed and can respond faster.
- the neural network subcomponent is connected to an execution management drive component and a sensing management drive component; the neural network subcomponent receives information from the execution management drive component and/or the sensing management drive component. , and issue instructions to the corresponding execution management driver component and/or sensing management driver component.
- this application also provides a control device, including the control module as described above.
- this application also provides a robot, including a sensing element, an actuator, a plurality of joints, and a control module as described above.
- the robot can further include a host computer,
- the robot includes a host computer, and the control module is connected to the host computer; each controlled joint is connected to a control logic component of the control module to form a control loop; one of the control logic The component communicates with at least one other control logic component.
- Each control module can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure.
- a host computer of the robot can control multiple control modules to coordinately control the entire robot body.
- the control module can include multiple control logic components; each joint of the robot can form a control loop by a control logic component. When the robot has many degrees of freedom/joints, multiple control logic components can make each control loop of multiple joints The path can be calculated in parallel and the response efficiency is high.
- Figure 1 is a schematic diagram of a reconfigurable unit of a control module provided by this application;
- FIG. 2 is a schematic diagram of a control module provided by this application.
- Figure 3 is a schematic diagram of information exchange between control logic components of each control loop of a control module provided by this application;
- Figure 4 is a schematic diagram of a neural network subcomponent of a control module provided by this application.
- FIG. 5 is a schematic diagram of the topology structure of a recurrent neural network (RNN) of a control module provided by this application.
- RNN recurrent neural network
- 10-reconfigurable unit 20-general computing unit, 30-control module, 11-control logic component, 12-central control component, 13-communication component, 14-execution management drive component, 15-sensor management drive component , 40-Host computer, 50-Controlled joints, 16-Neural network subcomponent, 161-Recurrent neural network, 162-Input layer, 163-Hidden layer, 164-Output layer.
- the term “if” may be interpreted as “when” or “once” or “in response to determining” or “in response to detecting” depending on the context. ". Similarly, the phrase “if determined” or “if [the described condition or event] is detected” may be interpreted, depending on the context, to mean “once determined” or “in response to a determination” or “once the [described condition or event] is detected ]” or “in response to detection of [the described condition or event]”.
- control module 30 provided in the embodiment of the present application will now be described.
- the control module 30 provided by this application includes: a central control component 12 , at least one sensing management driver component 15 , at least one execution management driver component 14 , and at least one control logic component 11 .
- the execution management driver component 14 is used to drive the execution management module under its jurisdiction. There may be a one-to-many correspondence relationship between the execution management driver component 14 and the execution management module.
- the execution management module connects to and controls at least one execution element.
- the sensor management driver component 15 is used to drive the sensor management module under its jurisdiction.
- the sensor management module connects and controls at least one sensor element.
- the sensor management module can be configured as a signal sampling circuit; further, the sensor management module can perform signal processing on the output signal of the signal sampling circuit to convert the analog signal into a digital signal.
- the control module 30 may include an independent signal processing component unit connected to the sensor management drive component 15, and is suitable for situations where the signal volume is particularly large and the processing algorithm is particularly complex. There may be a one-to-many correspondence relationship between the sensor management drive component 15 and the sensor management module.
- the actuator may include one or more of motors, hydraulic components, pneumatic components, and artificial muscles.
- the execution components are controlled by the execution management module.
- the execution management module is configured as a driving circuit for an actuator, such as a motor driving circuit.
- the execution management driver component 14 may be configured to include a firmware program, a software program, or hardware for driving the execution management module.
- the execution management drive component 14 can accept the binary code of the target steering, target speed, target current, and target voltage of the target execution element (such as a motor), and convert it into the binary code required by the execution management module. input signal (such as PWM waveform).
- the sensing management module can supply power to the sensing element by applying constant power or applying power in a periodic scanning manner.
- the sensing management module can amplify, filter, sample and convert the output signals of these sensing elements, and monitor whether any sensing elements are missing or working abnormally. and upload the monitoring results to the sensing management drive component 15.
- the sensing management module can use analog-to-digital conversion devices, control devices, communication protocol chips, power management chips and other components to form circuits, and be equipped with programs to achieve the above functions.
- the sensing management driving component 15 may be configured to include a firmware program, a software program, or hardware for driving the sensing management module.
- the sensing management drive component 15 can accept the binary encoding of the target sampling frequency and target signal transmission baud rate of the target sensing element, and convert it into the input signal required by the sensing management module (such as SPI protocol and modulus conversion chip communication).
- the execution management module generally only monitors the current, voltage, temperature, etc. of the actuator, forming a current loop, voltage loop, temperature loop, etc.
- the execution management module also monitors the actuating components such as the motor's own encoder to measure rotation speed and angle.
- the execution management module controls the execution elements, monitors whether the execution elements are missing or works abnormally, and uploads the current, voltage, speed and monitoring results of the execution elements to the execution management drive component 14 .
- the control logic component 11 and the central control component 12 are connected to each other and exchange information.
- the control logic component 11 is connected to each other and exchanges information with the sensing management driving component 15 and the execution management driving component 14 respectively.
- the control logic component 11 can perform calculations according to the received instructions, and pass the calculated information to the execution management driver component 14 and/or the sensing management driver component 15 .
- control module 30 further includes at least one communication component 13 .
- the communication component 13 communicates with peripheral devices. Peripheral devices may include the host computer 40 and input and output devices, etc.
- the communication component 13 is connected with the central control component 12 .
- the control module 30 of the present application can be fully controlled by peripheral devices (including the host computer 40 ): the communication component 13 transmits the received messages from the peripheral devices to the central control component 12 .
- the control logic component 11 receives instructions from the central control component 12 .
- the target instruction received by the central control component 12 from the host computer 40 includes the target angle of the relevant joint, and is solved by the control logic component 11 to obtain the execution parameters (such as direction, speed, current, voltage) of the actuator corresponding to the relevant joint;
- the execution management driver component 14 further translates the execution parameters into signals required by the execution management module (such as direction signals, PWM frequency and duty cycle signals); and then the execution management driver component 14 drives the execution management module.
- control module 30 includes a plurality of control logic components 11 .
- one host computer 40 of the robot can control multiple control modules 30 .
- Each control module 30 can be used to control a limb with multiple degrees of freedom.
- a humanoid robot can be equipped with a control module 30 for each arm, torso, and leg.
- the central processing module located on the head of the robot serves as the host computer 40 to manage all control modules 30 to coordinately control the entire body of the robot. .
- any control logic component 11 can be connected with at least one other control logic component 11 to perform one-way or two-way communication and exchange information.
- the beneficial effect of this design is that if the robot has a large number of degrees of freedom/joints, the control model involved in each degree of freedom/joint or When there is coupling between control loops, the information exchange between the control logic components 11 can enable each control loop to complete the solution, which is especially suitable for control algorithms based on neural networks, control algorithms based on computational torque methods, and control based on state space methods. Algorithms, observer-based control algorithms, state machine-based control algorithms. For example, as shown in FIG. 3 , the control module 30 is connected to the host computer 40 .
- Each controlled joint 50 is connected to a control logic component 11 to form a control loop (the drive circuit and sampling circuit have been omitted). Each controlled joint 50 needs to exchange status information, that is, through communication between different control logic components 11 To achieve decoupling or coupling between the control variables of each joint.
- the communication component 13 communicates with at least one of the sensing management driving component 15, the execution management driving component 14, and the control logic component 11.
- the message sent from the host computer 40, after being decoded, can be directly transmitted to the corresponding target component through the routing of the communication component 13 without having to go through the central control component 12, which is highly efficient.
- the communication component 13 communicates with the control logic component 11 , and the communication component 13 directly transmits the decoded message sent from the host computer 40 to the corresponding control logic component 11 .
- the communication component 13 communicates with the execution management drive component 14, and the communication component 13 directly transmits instructions from the host computer 40 to the corresponding execution management drive component 14.
- the communication component 13 communicates with the sensor management drive component 15 , and the communication component 13 directly transmits instructions from the host computer 40 to the corresponding sensor management drive component 15 .
- the central control component 12 may be connected to at least one of the sensing management driving component 15 and the execution management driving component 14 . In this way, the central control component 12 can receive the status information of the sensing management driving component 15 and the execution management driving component 14 and make better decisions. For example, the central control component 12 can receive the status information of the sensing management driving component 15, make a decision based on the change rate of the sensing information, and instruct the sensing management driving component 15 to adjust the sampling frequency.
- the control module 30 of the present application can be configured as an embedded circuit including a reconfigurable unit 10 and a general-purpose computing unit 20 .
- the reconfigurable unit 10 communicates with the general computing unit 20 .
- the reconfigurable unit 10 and the general computing unit 20 can communicate in full duplex.
- the reconfigurable unit 10 can be configured as an FPGA, and the general computing unit 20 can be configured as an ARM.
- the FPGA and the ARM as the general computing unit 20 can be independent chips; they can also be bound to the same chip; the ARM firmware can also be embedded in the FPGA of the reconfigurable unit 10 .
- the FPGA and ARM of the reconfigurable unit 10 are bound in the same chip to increase the communication bandwidth between them.
- the ARM of the general-purpose computing unit 20 can also be replaced by a DSP circuit/chip, which can achieve the same function.
- the former is more flexible and can support any communication protocol stack; the latter is simple, reliable and cheap.
- the general-purpose computing unit 20 can be used as a part of the reconfigurable unit 10 , that is, the firmware of the general-purpose computing unit 20 (ARM or DSP) is embedded in the reconfigurable unit 10 (FPGA). .
- the advantage of using FPGA as the reconfigurable unit 10 in the control module 30 is that its various components can be executed in parallel, which is especially suitable for solving the situation of multiple sensing elements, multiple execution elements, and multiple control targets, and can respond at high speed and in real time.
- the advantage of using ARM or DSP for communication management is that because of the high efficiency of ARM or DSP encoding and decoding, software (compared to firmware) can more flexibly implement and upgrade communication protocols and routing rules, making development easier.
- ARM can be used to carry embedded systems and better support WiFi/Ethernet protocol stacks.
- reconfigurable unit 10 may also be configured as reconfigurable hardware.
- Reconfigurable hardware refers to hardware devices whose hardware circuits and functions can be reconstructed according to software at runtime.
- the general computing unit 20 communicates with peripheral devices (such as the host computer 40).
- peripheral devices such as the host computer 40
- the general-purpose computing unit 20 (such as ARM) communicates with a peripheral device (such as the host computer 40) in full-duplex, exchanges first messages (such as Ethernet data packets), and transmits the first message (such as an Ethernet data packet) from the peripheral device (such as the host computer 40) to the general-purpose computing unit 20.
- Unit 20 (such as ARM) sends the first message.
- the general-purpose computing unit 20 decodes and encodes the first message to obtain the second message (machine code), and communicates with the reconfigurable unit 10 using the second message.
- the general computing unit 20 can decrypt the first message.
- the general computing unit 20 (such as ARM) can encrypt the second message sent from the reconfigurable unit 10 to obtain the first message, and then sends it to the peripheral device (such as the host computer 40).
- the communication component 13 of the reconfigurable unit 10 can communicate with the general computing unit 20 (such as ARM).
- the communication component 13 of the reconfigurable unit 10 is capable of full-duplex communication with the general-purpose computing unit 20 (such as ARM), and full-duplex communication with peripheral devices through the general-purpose computing unit 20 (such as ARM).
- the general computing unit 20 (such as ARM) transmits the second message to the reconfigurable unit 10 (such as FPGA).
- the reconfigurable unit 10 encodes and decodes the second message; reassembles the second message into an appropriate control instruction (format) according to the target in the second message, and transmits it to the corresponding component (i.e., the target component);
- This control instruction (format) can contain target number, instruction (i.e. machine code), and parameters. Parameters can include: angle values, speed values, torque values, importance coefficients, etc.
- the reconfigurable unit 10 includes the above-mentioned central control component 12, at least one of the sensing management driver components 15, at least one of the execution management driver components 14, and at least one of the control logic components 11; in addition, the reconfigurable unit 10 includes: The reconfigurable unit 10 may also include at least one of the communication components 13 (depending on the complexity of the communication); if the communication is more complex, the reconfigurable unit 10 uses the communication component 13 to encode and decode the second message. , and route to the corresponding component. Within the control module 30, the central control component 12 can perform unified coordination and control.
- the control module 30 of the present application obtains the first message by communicating with the peripheral device (such as the host computer 40) to decoding and encoding the first message.
- the code obtains the machine code of the second message.
- the upgrading and transformation of the communication protocol mainly occurs in the general-purpose computing unit 20 (such as ARM). Therefore, only the general-purpose computing unit 20 (such as ARM) is needed during the upgrade; it is convenient for upgrading and reforming.
- the control module 30 supports one or more control modes.
- the control module 30 can implement different control modes and control algorithms through the control logic component 11 .
- the control logic component 11 may be configured to include a control algorithm, which may be configured as a neural network-based control algorithm, a computational moment method-based control algorithm, a state space method-based control algorithm, an observer-based control algorithm, or a state machine-based control algorithm. control algorithm, etc.
- a control algorithm which may be configured as a neural network-based control algorithm, a computational moment method-based control algorithm, a state space method-based control algorithm, an observer-based control algorithm, or a state machine-based control algorithm. control algorithm, etc.
- control logic component 11 may be controlled by the central control component 12 .
- the central control component 12 issues instructions to the corresponding control logic component 11 to switch between different control modes.
- control logic components 11 can be implemented by different control logic components 11; when switching control modes and control algorithms, the central control component 12 can enable the corresponding control logic component 11.
- one control logic component 11 may provide a control algorithm based on a neural network, and another control logic component 11 may provide a control algorithm based on a state space method.
- control logic component 11 can also be implemented by the same control logic component 11; when switching control modes and control algorithms, the central control component 12 issues instructions to the control logic component 11, and the control logic component 11 internally switches to the corresponding control mode, control algorithm.
- control module 30 can switch between different control modes according to instructions from peripheral devices.
- the peripheral device transmits the first message
- the general-purpose computing unit 20 ARM
- the reconfigurable unit 10 FPGA
- the reconfigurable unit 10 receives the second message, which includes control mode instructions, targets, and parameters. If the control mode instruction specifies that some execution components (ie, target components) adopt the open-loop control mode of the lower computer, the central control component 12 disables the corresponding control logic component 11 .
- the second message can be directly delivered to the execution management driver component 14 through the routing of the communication component 13 . In other embodiments, the second message can also be directly delivered to the sensing management driver component 15 or the control logic component 11 through the routing of the communication component 13 .
- the control module 30 of the present application can support the closed-loop control mode of the lower computer, that is, the peripheral device (such as the upper computer 40) provides target instructions, and the control module 30 acts as the lower computer to perform closed-loop control.
- control logic component 11 performs calculations and passes the calculated information to the execution management drive component 14 and/or the sensing management drive component 15 .
- the target instruction specifies the target angle of any joint.
- the target voltage and/or target current that should be applied to the corresponding execution element is obtained, and then the execution management drive component 14
- the drive execution management module provides voltage and/or current to the actuator. Feedback value information such as voltage and/or current of the actuator is uploaded to the control module 30 through the execution management module to form a feedback closed loop.
- the advantage of the closed-loop control mode of the lower computer is that the lower computer responds quickly and has good parallelism; it can reduce the computing pressure of the upper computer 40 .
- the control module 30 of the present application can also support the slave computer open-loop control mode, that is, the peripheral device (such as the host computer 40) provides target instructions, and the control module 30 acts as the slave computer to perform open-loop control.
- the execution management driving component 14 can control the execution management driving component 14 according to the target instructions provided by the peripheral device, and/or the sensing management driving component 15 can control the execution management driving component 14 according to the target instructions provided by the peripheral device.
- the target instructions provided by the device control the sensing management driving component 15 .
- the target instruction specifies the target voltage and/or target current of any actuator, and the execution management drive component 14 drives the execution management module to provide voltage and/or current for the actuator. There is no need to go through the control logic component 11 to form a closed loop.
- the host computer 40 can directly control the actuating components, which facilitates debugging;
- the upper computer 40 adopts a brain-like computing control method.
- the brain-like neural network can run on the upper computer 40, and the computing power is stronger than that of the lower computer;
- the lower computer can still respond to emergencies.
- control module 30 can make a judgment based on information from sensing elements and/or actuating elements, and switch between different control modes.
- the sensing management driving component 15 and/or the execution management driving component 14 uploads information to the central control component 12 .
- the central control component 12 determines which control mode to adopt based on the uploaded information, and controls (or enables the corresponding) control logic component 11 to switch between different control modes.
- the sensing management driver component 15 determines that the sensor is missing and transmits this information to the central control component 12.
- the central control component 12 decides to adopt the state space method for control in the involved control loop, that is, using the preset
- the model estimates the missing sensor information and enables corresponding control logic components 11 .
- the sensing management drive component 15 determines that the temperature of the actuator is too high, and transmits this information to the central control component 12, and the central control component 12 decides to take action on the actuator. For protection measures, reduce the supply voltage/current, or even cut off the power, the central control component 12 controls the execution management drive component 14, which is further executed by the execution management drive component 14.
- control module 30 may include a signal processing component.
- the signal processing component has at least one filtering method.
- the signal processing component is connected to the sensing management driving component 15 , or the signal processing component is arranged within the sensing management driving component 15 .
- the control module 30 can switch between different filtering modes according to instructions from peripheral devices.
- different filtering methods are implemented by different sensing management driving components 15 .
- the second message includes a filter mode instruction, a target, and parameters.
- the filter mode instruction specifies that some sensing elements (i.e., targets) adopt an average filtering method, then the central control component 12 responds accordingly.
- the sensing element enables the corresponding sensing management drive component 15 (that is, the average filtering method is adopted), and assigns a value (filter parameter) to the corresponding sensing management drive component 15.
- the same sensor management driving component 15 can support multiple filtering modes, and the central control component 12 controls the sensor management driving component 15 to switch among different filtering modes according to the second message, which will not be described again.
- the control module 30 can also make judgments based on information from sensing elements and/or actuating elements, and switch between different filtering modes.
- the control module 30 of the present application can adjust the signal sampling mode of the sensing management module.
- Signal sampling mode includes: signal sampling frequency, signal sampling baud rate, signal sampling bits, number of signal sampling channels, signal sampling channel switching, etc.
- Sensing management modules generally include ADC and auxiliary circuits.
- the ADC's signal sampling frequency, signal sampling baud rate, signal sampling bits, number of signal sampling channels, signal sampling channel switching speed, etc. can be adjusted by communication between the control module 30 and the sensing management module.
- control module 30 can adjust the signal sampling mode according to the information of the sensing element and/or the actuating element.
- the central control component 12 may include a signal sampling control sub-component, which determines the signal sampling mode based on information from sensing elements and/or actuating elements, and instructs the sensing management driving component 15 to adjust the signal sampling mode.
- control module 30 can reduce the sampling frequency of the sensing element, or temporarily skip sampling of the sensing element when the signal sampling channel is switched.
- the sensing management driving component 15 monitors the change rate of the output signal of the sensing element and transmits the monitoring information to the central control component 12; the central control component 12 decides which sampling mode to adjust to and instructs the sensing management driving component 15 to drive Sensing management module implementation.
- control module 30 can adjust the signal sampling mode according to instructions from peripheral devices.
- the peripheral device transmits the control information to the central control component 12;
- the central control component 12 includes a signal sampling control sub-component, which instructs the sensing management driving component 15 to adjust the signal sampling mode according to the control information.
- the peripheral device such as the host computer 40
- the control module 30 the host computer
- the second message (machine code) is obtained, and the second message (machine code) is passed to the reconfigurable unit 10 (FPGA); routed through the communication component 13, the central control component 12 receives the second message, and the second message includes The target (sensor number), instruction (adjustment of sampling frequency), and parameters (sampling frequency) further instruct the central control component 12 to instruct the sensing management drive component 15 to adjust the sampling mode.
- control module 30 can adjust the information upload mode to save upload communication bandwidth.
- the information upload mode of the control module 30 includes one or more of the following:
- control module 30 uploads information according to a given frequency
- control module 30 (central control component 12) uploads specific information according to given trigger conditions;
- control module 30 determines whether to upload any information and the frequency of uploading based on the change rate of relevant information.
- the conventional upload mode is to continuously upload information; the control module 30 uploads information (including sensor information, monitoring information, actuator information, internal status information, etc.) according to a given frequency.
- the conventional upload mode uses a continuous communication method.
- the advantage of this method is that the upper computer 40 can continuously and intensively monitor whether the lower computer and even the entire system are working normally, and the data is reliable and stable; if there is communication packet loss, it can be discovered and corrected in time.
- the disadvantage of this method is that when the number of sensors is large, it will occupy too much communication bandwidth and put too much computing pressure on the central processing module.
- the event-triggered upload mode means that the central control component 12 adopts corresponding processing procedures to upload given information based on given trigger conditions.
- the event-triggered upload mode uses intermittent communication. The advantage is that it does not have to upload all information in real time, which can save bandwidth.
- the control module 30 determines whether to upload any information and the upload frequency based on the change rate of the information.
- the adaptive upload mode communicates only when information changes, further saving communication bandwidth. For example, if the sensing management driver component 15 determines that the tactile sensing element information has not changed for a long time (below a given change rate threshold), or the amplitude has been lower than a given amplitude threshold for a long time, it will coordinate the communication component 13 to reduce the upload frequency. Even stops uploading tactile sensing element information and vice versa.
- control module 30 is capable of emergency response.
- the control module 30 may include an emergency response control component.
- the emergency response control component includes a neural network subcomponent 16.
- the neural network subcomponent 16 is used for emergency response management, and controls and executes the management driver component 14 during emergency processing.
- the control module 30 of the present application is preferably controlled in all directions by the host computer 40.
- the host computer 40 adopts a brain-like computing control method.
- the brain-like neural network can run on the host computer 40, and the computing power is stronger than that of the host computer.
- the neural network subcomponent 16 of the slave computer can perform emergency response; the slave computer has a faster emergency response speed and can perform response processing faster.
- the neural network subcomponent 16 may include a neural network such as a recurrent neural network (RNN).
- RNN recurrent neural network
- the spinal cord neural circuit can be used when emergency handling actions have complex trajectories, and the motion trajectories can be encoded by neural networks.
- Figure 5 shows a schematic diagram of the topology of a recurrent neural network (RNN), including an input layer 162, a hidden layer 163, and an output layer 164.
- the neural network subcomponent 16 can encode motion trajectories through connection relationships and weights between neurons.
- the motion trajectory includes a combination of one or more action sequences; each action sequence is composed of one or more meta-actions arranged in the time dimension; each meta-action represents the action of a corresponding execution element.
- the neural network subcomponent 16 can be connected to the execution management driver component 14 and the sensing management driver component 15 .
- the neural network subcomponent 16 is connected to the execution management drive component 14, and can control the execution management drive component 14 according to the encoded motion trajectory to control the execution elements.
- the central control component 12 activates a motion control algorithm based on a neural network to enable the robot to execute the encoded motion trajectory to achieve emergency response.
- a recurrent neural network can be embedded in a reconfigurable unit 10 (such as an FPGA), and the neural network subcomponent 16 including the recurrent neural network (RNN) is independent of other components of the FPGA.
- the neural network sub-component 16 can communicate with the execution management drive component 14 and the sensor management drive component 15 one-way or two-way at the same time, that is, it accepts information from the execution management drive component 14 and/or the sensor management drive component 15 and sends it to the corresponding The execution management driving component 14 and/or the sensing management driving component 15 issue instructions. As shown in Figure 4, the neural network sub-component 16 can be connected to the central control component 12 and accept unified coordinated control.
- the central control component 12 may be implemented as a state machine, or a collection of logic, implemented through firmware programming.
- the present application also provides a control device.
- the control device includes a control module 30 as described in Embodiment 1.
- the robot includes a control module 30 as described in Embodiment 1.
- Robots include but are not limited to bionic robots, humanoid robots, operating robots, collaborative robots, manipulators or dexterous hand systems with multiple degrees of freedom, bionic mechanical feet with multiple degrees of freedom, other types of multi-jointed machines, etc. .
- the robot includes a plurality of joints, and also includes a sensing element, an actuator element, an execution management module, and a sensing management module as described in Embodiment 1.
- the robot may further include a host computer 40 .
- the control module 30 can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure.
- a host computer 40 of the robot can control multiple control modules 30 to coordinately control the entire robot body.
- the control module 30 is connected to the host computer 40 .
- Each controlled joint 50 is connected to a control logic component 11 of the control module 30 to form a control loop (the driving circuit and sampling circuit are omitted); one of the control logic components 11 communicates with at least another control logic component 11 .
- Each controlled joint 50 needs to exchange status information, which is achieved through communication between different control logic components 11 to decouple or couple the control variables of each joint.
- Other components of the control module 30 are not shown in FIG. 3 .
- control module 30 The beneficial effects of the control module 30, control device and robot provided by this application are:
- Each control module 30 can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure.
- a host computer 40 of the robot can control multiple control modules 30 to coordinately control the entire robot body.
- the control module 30 may include multiple control logic components 11; each joint of the robot may form a control loop by a control logic component 11. When the robot has many degrees of freedom/joints, the control logic component 11 may make each joint of the multiple joints
- the control loop can be calculated in parallel and has high response efficiency.
- Any control logic component 11 can perform one-way or two-way communication and exchange information with at least one other control logic component 11 .
- the any control logic component 11 completes control calculation according to the received information.
- the beneficial effect of this design is that if the robot has a large number of degrees of freedom/joints and there is coupling between the control models or control loops involved in each degree of freedom/joint, the information exchange between the control logic components 11 can make each control loop Complete the solution and realize the decoupling or coupling between the control quantities of each joint.
- each control loop can be calculated in parallel and has high response efficiency.
- each component it carries can be executed in parallel, which is especially suitable for solving the situation of multiple sensing elements, multiple execution elements, and multiple control targets, and can respond in real time at high speed; when the robot is free
- the control logic component 11 can enable the control loops of multiple joints to be calculated in parallel, resulting in high response efficiency.
- the control module 30 of the present application has high communication efficiency.
- the general-purpose computing unit 20 communicates with the peripheral device (such as the host computer 40) to exchange the first message; the general-purpose computing unit 20 decodes and encodes the first message to obtain the second message (machine code), and uses the second message with the repeatable structure Unit 10 Communication.
- the general computing unit 20 is configured as ARM or DSP. ARM or DSP encoding and decoding are more efficient, can more flexibly implement and upgrade communication protocols and routing rules, and facilitate development. In particular, ARM can be used to carry embedded systems and better support WiFi/Ethernet protocol stacks.
- the communication component 13 can communicate with the general computing unit 20, encode and decode the second message, and transmit instructions to the corresponding components according to the second message, such as the central control component 12, the control logic component 11, the sensor management driver component 15, At least one of the management driver components 14 is executed. In addition, one-way or two-way communication can be performed between different control logic components 11 .
- the control module 30 of the present application from communicating with the peripheral device (such as the host computer 40) to obtain the first message to decoding and encoding the first message to obtain the machine code of the second message, the upgrade and transformation of the communication protocol mainly occurs in the general computing unit 20, so only the general-purpose computing unit 20 needs to be upgraded during upgrading; it is convenient for upgrading and transformation.
- the control module 30 of the present application has multiple control modes: it can be fully controlled by peripheral devices (including the host computer 40), and can also be coordinated and controlled by the central control component 12 (the host computer autonomously controls it); in the former, The peripheral device can directly communicate with at least one of the sensing management driver component 15, the execution management driver component 14, and the control logic component 11 through the communication component 13 without having to go through the central control component 12, so the response efficiency is high.
- the control module 30 of this application supports switching between different control modes: the control module 30 can switch between different control modes according to instructions from peripheral devices; the control module 30 can also switch between different control modes according to the sensing elements and/or execution The component's information switches between different control modes.
- the control module 30 can support the closed-loop control mode of the lower computer; the advantage of the closed-loop control mode of the lower computer is that the lower computer responds quickly and has good parallelism; it can reduce the computing pressure of the upper computer 40 .
- the control module 30 can support the open-loop control mode of the lower computer; the advantage of the open-loop control mode of the lower computer is that the upper computer 40 can directly control the actuating components, which is convenient for debugging; it supports all-round control by the upper computer 40,
- the upper computer 40 adopts a brain-like computing control method.
- the brain-like neural network can run on the upper computer 40 and has stronger computing power than the lower computer.
- the lower computer can still respond to emergencies.
- the control module 30 may include signal processing components.
- the signal processing component can have multiple filtering modes, and the control module 30 can switch between different filtering modes according to instructions from peripheral devices.
- the control module 30 of the present application can adjust the signal sampling mode of the sensing management module.
- the control module 30 can adjust the signal sampling mode according to information from the sensing element and/or the actuating element.
- the control module 30 can adjust the signal sampling mode according to instructions from the peripheral device.
- the control module 30 of the present application has multiple information upload modes and can adjust the information upload mode according to needs.
- Information upload modes include regular upload mode, event-triggered upload mode, and adaptive upload mode.
- the conventional upload mode uses a continuous communication method.
- the advantage of this method is that the host computer 40 can continuously and intensively monitor whether the lower computer and even the entire system are working normally, and the data is reliable and stable.
- the event-triggered upload mode uses intermittent communication.
- the advantage is that it does not have to upload all information in real time, which can save bandwidth.
- the control module 30 determines whether to upload any information and the upload frequency based on the change rate of the information, thereby further saving bandwidth.
- the control module 30 of this application can be based on actual Adopt appropriate information upload mode according to actual needs.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
Description
本申请属于机器人技术领域,更具体地说,是涉及一种控制模组、控制装置及机器人。This application belongs to the field of robot technology, and more specifically, relates to a control module, a control device and a robot.
仿生机器人、人型机器人、操作型机器人、协作型机器人、灵巧手系统等机器人的关节/自由度很多,传感元件和执行元件的数量也很多,机器人的控制系统需要对多个关节/自由度进行并行控制。机器人的控制系统的设计具有以下挑战:控制部分的设计需要考虑计算效率,需要支持具有耦合关系的多个控制环路的解算,除此以外,还需要保证响应效率和通讯效率。Robots such as bionic robots, humanoid robots, operating robots, collaborative robots, and dexterous hand systems have many joints/degrees of freedom and a large number of sensing elements and actuators. The robot control system needs to control multiple joints/degrees of freedom. Perform parallel control. The design of a robot control system has the following challenges: the design of the control part needs to consider computing efficiency, and needs to support the solution of multiple control loops with coupling relationships. In addition, it also needs to ensure response efficiency and communication efficiency.
发明内容Contents of the invention
本申请实施例提供一种控制模组、控制装置及机器人,以解决相关技术存在的问题,技术方案如下:The embodiments of this application provide a control module, a control device and a robot to solve problems existing in related technologies. The technical solutions are as follows:
第一方面,本申请实施例提供了一种控制模组。In a first aspect, embodiments of the present application provide a control module.
在本申请的一个实施例中,一种控制模组,包括:中央控制组件,至少一个传感管理驱动组件、至少一个执行管理驱动组件、至少一个控制逻辑组件;In one embodiment of the present application, a control module includes: a central control component, at least one sensing management driver component, at least one execution management driver component, and at least one control logic component;
所述传感管理驱动组件用于驱动传感管理模组;所述执行管理驱动组件用于驱动执行管理模组;The sensing management driving component is used to drive the sensing management module; the execution management driving component is used to drive the execution management module;
所述中央控制组件与所述控制逻辑组件连接;The central control component is connected to the control logic component;
所述控制逻辑组件分别与所述传感管理驱动组件、所述执行管理驱动组件连接。The control logic component is connected to the sensing management drive component and the execution management drive component respectively.
本申请的控制模组,每个控制模组可用于控制一个多自由度肢体或者多自由度部分结构,机器人的一个上位机可通过控制多个控制模组,进而协调控制机器人全身。控制模组可包括多个控制逻辑组件;机器人的每个关节可由一个控制逻辑组件形成控制环路,当机器人的自由度/关节较多时,多个控制逻辑组件可以使得多个关节的各控制环路能并行计算,响应效率高。Each of the control modules of this application can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure. A host computer of the robot can control multiple control modules to coordinately control the entire robot body. The control module can include multiple control logic components; each joint of the robot can form a control loop by a control logic component. When the robot has many degrees of freedom/joints, multiple control logic components can make each control loop of multiple joints The path can be calculated in parallel and the response efficiency is high.
在本申请的一个实施例中,所述控制模组还包括至少一个通讯组件,所述通讯组件与外围设备通讯;所述通讯组件与所述中央控制组件连接。In one embodiment of the present application, the control module further includes at least one communication component that communicates with peripheral devices; the communication component is connected with the central control component.
在本申请的一个实施例中,所述通讯组件将接收的讯息传递给中央控制组件;所述控制逻辑组件接收来自中央控制组件的指令。本申请的控制模组,可由外围设备(包括上位机)进行全方位控制。 In one embodiment of the present application, the communication component transmits the received message to the central control component; the control logic component receives instructions from the central control component. The control module of this application can be fully controlled by peripheral devices (including host computers).
在本申请的一个实施例中,所述控制模组包括多个控制逻辑组件,其中一控制逻辑组件可与至少另一控制逻辑组件通讯。若机器人的自由度/关节数量多,各自由度/关节涉及的控制模型或者控制环路间存在耦合时,控制逻辑组件之间的信息交换能够使各控制环路完成解算,尤其适合基于神经网络的控制算法、基于计算力矩法的控制算法、基于状态空间法的控制算法、基于观测器的控制算法、基于状态机的控制算法。In one embodiment of the present application, the control module includes a plurality of control logic components, wherein one control logic component can communicate with at least another control logic component. If the robot has a large number of degrees of freedom/joints, and there is coupling between the control models or control loops involved in each degree of freedom/joint, information exchange between control logic components can enable each control loop to complete the solution, which is especially suitable for neural-based systems. Network control algorithm, control algorithm based on computational moment method, control algorithm based on state space method, observer-based control algorithm, and state machine-based control algorithm.
在本申请的一个实施例中,所述通讯组件与传感管理驱动组件、执行管理驱动组件、控制逻辑组件中的至少一个进行通讯。上位机的讯息,经通讯组件的路由可直接传给相应的目标组件而不必经过中央控制组件,效率高。In one embodiment of the present application, the communication component communicates with at least one of a sensing management driver component, an execution management driver component, and a control logic component. The information from the host computer can be directly transmitted to the corresponding target component through the routing of the communication component without having to go through the central control component, which is highly efficient.
所述中央控制组件与所述传感管理驱动组件、所述执行管理驱动组件中的至少一个连接。The central control component is connected to at least one of the sensing management drive component and the execution management drive component.
在本申请的一个实施例中,所述控制模组配置为包括可重构单元和通用运算单元;所述可重构单元和通用运算单元通讯;In one embodiment of the present application, the control module is configured to include a reconfigurable unit and a general-purpose computing unit; the reconfigurable unit communicates with the general-purpose computing unit;
所述可重构单元包括如上所述的至少一个所述传感管理驱动组件、至少一个所述执行管理驱动组件、至少一个所述控制逻辑组件、以及所述中央控制组件。The reconfigurable unit includes at least one of the sensing management driver components, at least one of the execution management driver components, at least one of the control logic components, and the central control component as described above.
所述通用运算单元与外围设备通讯,交换第一讯息;所述通用运算单元对第一讯息进行解码、编码,得到第二讯息,并以第二讯息与可重构单元通讯;The general-purpose computing unit communicates with peripheral devices to exchange first messages; the general-purpose computing unit decodes and encodes the first message to obtain the second message, and communicates with the reconfigurable unit using the second message;
所述可重构单元对第二讯息进行编码、解码,根据第二讯息将指令传至对应的组件。The reconfigurable unit encodes and decodes the second message, and transmits the instruction to the corresponding component according to the second message.
此外,在本申请的一个实施例中,根据通讯的复杂程度,所述可重构单元还可以配置为包括至少一个所述通讯组件。Furthermore, in one embodiment of the present application, the reconfigurable unit may also be configured to include at least one of the communication components according to the complexity of the communication.
在本申请的一个实施例中,所述通用运算单元为ARM或DSP,所述可重构单元为FPGA或者可重构硬件。所述控制模组采用FPGA作为可重构单元的好处是,其搭载的各个组件可以并行执行,尤其适合解决多传感元件、多执行元件、多控制目标的情况,能够高速实时响应。而采用ARM或DSP进行通讯管理的好处,是因为ARM或DSP编解码的高效,软件(相较于固件)可以更灵活地实现、升级通讯协议、路由规则,开发便捷。尤其是使用ARM可以搭载嵌入式系统,更好的支持WiFi/以太网协议栈。In one embodiment of the present application, the general computing unit is ARM or DSP, and the reconfigurable unit is FPGA or reconfigurable hardware. The advantage of using FPGA as a reconfigurable unit in the control module is that the components it carries can be executed in parallel, which is especially suitable for solving the situation of multiple sensing elements, multiple execution elements, and multiple control targets, and can respond at high speed and in real time. The advantage of using ARM or DSP for communication management is that because of the high efficiency of ARM or DSP encoding and decoding, software (compared to firmware) can more flexibly implement and upgrade communication protocols and routing rules, making development easier. In particular, ARM can be used to carry embedded systems and better support WiFi/Ethernet protocol stacks.
本申请的控制模组,从与外围设备(如上位机)通讯获得第一讯息到对第一讯息进行解码、编码得到第二讯息的机器码,升级改造主要发生在通用运算单元中,因此升级时仅需对通用运算单元进行;便于进行升级改造。The control module of this application, from communicating with peripheral equipment (such as a host computer) to obtain the first message to decoding and encoding the first message to obtain the machine code of the second message, the upgrade and transformation mainly occurs in the general-purpose computing unit, so the upgrade At this time, only the general-purpose computing unit is needed; it is convenient for upgrading and transformation.
在本申请的一个实施例中,所述控制模组通过控制逻辑组件支持一种或者多种控制模式。所述控制模组通过控制逻辑组件可以实现不同控制模式、控制算法。不同控制模式、控制算法可以由不同控制逻 辑组件实现。多种控制模式、控制算法也可以由同一个控制逻辑组件实现。In one embodiment of the present application, the control module supports one or more control modes through control logic components. The control module can implement different control modes and control algorithms through control logic components. Different control modes and control algorithms can be controlled by different control logic Edit component implementation. Multiple control modes and control algorithms can also be implemented by the same control logic component.
在本申请的一个实施例中,所述控制逻辑组件受中央控制组件的控制,由中央控制组件向所述控制逻辑组件发出指令,在不同的控制模式间切换;或者,In one embodiment of the present application, the control logic component is controlled by a central control component, and the central control component issues instructions to the control logic component to switch between different control modes; or,
所述控制逻辑组件受外围设备的控制,根据外围设备传来的指令在不同的控制模式间切换。The control logic component is controlled by a peripheral device and switches between different control modes according to instructions from the peripheral device.
在本申请的一个实施例中,所述控制模组支持下位机闭环控制模式;在下位机闭环控制模式中,由外围设备提供目标指令,所述控制模组作为下位机进行闭环控制。下位机闭环控制模式的好处在于:下位机响应快速,并行度好;能减少上位机的运算压力。In one embodiment of the present application, the control module supports the closed-loop control mode of the lower computer; in the closed-loop control mode of the lower computer, target instructions are provided by peripheral devices, and the control module performs closed-loop control as the lower computer. The advantage of the closed-loop control mode of the lower computer is that the lower computer responds quickly and has good parallelism; it can reduce the computing pressure of the upper computer.
在本申请的一个实施例中,所述控制模组支持下位机开环控制模式;在下位机开环控制模式中,由外围设备提供目标指令,所述控制模组作为下位机进行开环控制。所述下位机开环控制模式的好处在于:In one embodiment of the present application, the control module supports the open-loop control mode of the lower computer; in the open-loop control mode of the lower computer, target instructions are provided by peripheral devices, and the control module performs open-loop control as the lower computer. . The advantages of the open-loop control mode of the slave computer are:
(1)上位机可以直接控制到执行元件,便于调试;(1) The host computer can directly control the actuating components for easy debugging;
(2)支持由上位机进行全方位控制,例如上位机采用类脑计算的控制方式,类脑神经网络可以在上位机运行,算力比下位机更强;(2) Supports all-round control by the host computer. For example, the host computer adopts a brain-like computing control method. The brain-like neural network can run on the host computer, and the computing power is stronger than that of the host computer;
(3)在下位机开环控制模式,下位机仍可以进行应急响应。(3) In the open-loop control mode of the lower computer, the lower computer can still respond to emergencies.
在本申请的一个实施例中,控制模组能够根据传感元件和/或执行元件的信息做出判断,在不同的控制模式间切换。In one embodiment of the present application, the control module can make a judgment based on information from sensing elements and/or actuating elements and switch between different control modes.
在本申请的一个实施例中,所述控制模组包括信号处理组件,所述信号处理组件具有至少一种滤波方式;In one embodiment of the present application, the control module includes a signal processing component, and the signal processing component has at least one filtering method;
所述信号处理组件与传感管理驱动组件相连接,或者,所述信号处理组件设置在传感管理驱动组件内。The signal processing component is connected to the sensing management driving component, or the signal processing component is arranged in the sensing management driving component.
在本申请的一个实施例中,所述控制模组能够根据外围设备传来的指令在不同的滤波方式间切换;或者,所述控制模组能够根据传感元件和/或执行元件的信息做出判断,在不同的滤波方式间切换。In one embodiment of the present application, the control module can switch between different filtering modes according to instructions from peripheral devices; or, the control module can perform operations based on information from sensing elements and/or actuating elements. Make a judgment and switch between different filtering methods.
在本申请的一个实施例中,所述控制模组能够调整传感管理模组的信号采样模式。In one embodiment of the present application, the control module can adjust the signal sampling mode of the sensing management module.
在本申请的一个实施例中,所述中央控制组件根据传感元件和/或执行元件的信息判断信号采样模式,并指令传感管理驱动组件调整信号采样模式。In one embodiment of the present application, the central control component determines the signal sampling mode based on information from the sensing element and/or the actuating element, and instructs the sensing management driving component to adjust the signal sampling mode.
在本申请的一个实施例中,所述外围设备将控制信息传递给中央控制组件,所述中央控制组件根据所述控制信息指令传感管理驱动组件调整信号采样模式。In one embodiment of the present application, the peripheral device transmits the control information to the central control component, and the central control component instructs the sensing management driving component to adjust the signal sampling mode according to the control information.
在本申请的一个实施例中,所述控制模组的信息上传模式包括以下的一种或多种: In one embodiment of the present application, the information upload mode of the control module includes one or more of the following:
常规上传模式,所述控制模组按照给定频率上传信息;In the regular upload mode, the control module uploads information according to a given frequency;
事件触发上传模式,所述控制模组(中央控制组件)根据给定触发条件上传特定的信息;Event-triggered upload mode, the control module (central control component) uploads specific information according to given trigger conditions;
自适应上传模式,所述控制模组根据信息的变化率,判断是否上传任一信息以及上传频率。In the adaptive upload mode, the control module determines whether to upload any information and the upload frequency based on the change rate of the information.
常规上传模式,即连续上传信息;控制模组按照给定频率上传信息(包括传感器信息、监测信息、执行元件信息、内部状态信息等)。常规上传模式采用持续通讯方式,该方式优点是可以让上位机持续密集监测下位机乃至整个系统的工作是否正常,数据可靠稳定;如果有通讯丢包情况,也能及时发现并纠正。该方式缺点是当传感器数量较多,会占用过多通讯带宽,也会给中央处理模组太多运算压力。Conventional upload mode, that is, continuous upload of information; the control module uploads information (including sensor information, monitoring information, actuator information, internal status information, etc.) according to a given frequency. The conventional upload mode uses continuous communication. The advantage of this method is that the host computer can continuously and intensively monitor whether the lower computer and even the entire system are working normally, and the data is reliable and stable; if there is communication packet loss, it can be discovered and corrected in time. The disadvantage of this method is that when the number of sensors is large, it will occupy too much communication bandwidth and put too much computing pressure on the central processing module.
事件触发上传模式,即中央控制组件根据给定触发条件,采取相应处理过程,上传给定信息。事件触发上传模式采用间歇性通讯,优点是不必实时上传所有信息,可以节省带宽。The event-triggered upload mode means that the central control component adopts corresponding processing procedures to upload given information based on given trigger conditions. The event-triggered upload mode uses intermittent communication. The advantage is that it does not have to upload all information in real time, which can save bandwidth.
自适应上传模式,即控制模组根据信息的变化率,判断是否上传任一信息、上传频率。自适应上传模式针对信息有变化的情况才进行通讯、进一步节省带宽。Adaptive upload mode means that the control module determines whether to upload any information and how often it should be uploaded based on the change rate of the information. The adaptive upload mode communicates only when information changes, further saving bandwidth.
在本申请的一个实施例中,所述控制模组中还包括应急响应控制组件,能够进行应急响应。In one embodiment of the present application, the control module also includes an emergency response control component, capable of emergency response.
在本申请的一个实施例中,所述应急响应控制组件中包括神经网络子组件;所述神经网络子组件用于应急处理,并在应急处理时控制执行管理驱动组件;In one embodiment of the present application, the emergency response control component includes a neural network subcomponent; the neural network subcomponent is used for emergency processing, and controls the execution management driver component during emergency processing;
所述神经网络子组件通过神经元间的联接关系和权重来编码运动轨迹。The neural network subcomponent encodes motion trajectories through connection relationships and weights between neurons.
本申请的控制模组,优选由上位机进行全方位控制,例如上位机采用类脑计算的控制方式,类脑神经网络可以在上位机运行,算力比下位机更强。但是在突发情况下,下位机的神经网络子组件可以进行应急响应;下位机的应急响应速度较快,可以更快进行响应处理。The control module of this application is preferably controlled by a host computer in all directions. For example, the host computer adopts a brain-like computing control method. The brain-like neural network can run on the host computer and has stronger computing power than the host computer. However, in the event of an emergency, the neural network subcomponent of the slave computer can perform emergency response; the slave computer has a faster emergency response speed and can respond faster.
在本申请的一个实施例中,所述神经网络子组件与执行管理驱动组件、传感管理驱动组件相连接;所述神经网络子组件接收执行管理驱动组件和/或传感管理驱动组件的信息,并向相应的执行管理驱动组件和/或传感管理驱动组件发出指令。In one embodiment of the present application, the neural network subcomponent is connected to an execution management drive component and a sensing management drive component; the neural network subcomponent receives information from the execution management drive component and/or the sensing management drive component. , and issue instructions to the corresponding execution management driver component and/or sensing management driver component.
第二方面,本申请还提供了一种控制装置,包括如上所述的控制模组。In a second aspect, this application also provides a control device, including the control module as described above.
第三方面,本申请还提供了一种机器人,包括传感元件、执行元件、多个关节、以及如上所述的控制模组。机器人可进一步包括上位机,In a third aspect, this application also provides a robot, including a sensing element, an actuator, a plurality of joints, and a control module as described above. The robot can further include a host computer,
在本申请的一个实施例中,所述机器人包括上位机,所述控制模组与上位机连接;每个被控关节与控制模组的一个控制逻辑组件连接形成控制环路;其中一控制逻辑组件与至少另一控制逻辑组件通讯。 In one embodiment of the present application, the robot includes a host computer, and the control module is connected to the host computer; each controlled joint is connected to a control logic component of the control module to form a control loop; one of the control logic The component communicates with at least one other control logic component.
本申请所提供的一种控制模组、控制装置及机器人,有益效果在于:The beneficial effects of the control module, control device and robot provided by this application are:
每个控制模组可用于控制一个多自由度肢体或者多自由度部分结构,机器人的一个上位机可通过控制多个控制模组,进而协调控制机器人全身。控制模组可包括多个控制逻辑组件;机器人的每个关节可由一个控制逻辑组件形成控制环路,当机器人的自由度/关节较多时,多个控制逻辑组件可以使得多个关节的各控制环路能并行计算,响应效率高。Each control module can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure. A host computer of the robot can control multiple control modules to coordinately control the entire robot body. The control module can include multiple control logic components; each joint of the robot can form a control loop by a control logic component. When the robot has many degrees of freedom/joints, multiple control logic components can make each control loop of multiple joints The path can be calculated in parallel and the response efficiency is high.
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or description of the prior art will be briefly introduced below. Obviously, the drawings in the following description are only for the purpose of the present application. For some embodiments, for those of ordinary skill in the art, other drawings can be obtained based on these drawings without exerting creative efforts.
图1为本申请提供的一种控制模组的可重构单元的示意图;Figure 1 is a schematic diagram of a reconfigurable unit of a control module provided by this application;
图2为本申请提供的一种控制模组的示意图;Figure 2 is a schematic diagram of a control module provided by this application;
图3为本申请提供的一种控制模组的各控制环路的控制逻辑组件之间的信息交换示意图;Figure 3 is a schematic diagram of information exchange between control logic components of each control loop of a control module provided by this application;
图4为本申请提供的一种控制模组的神经网络子组件的示意图;Figure 4 is a schematic diagram of a neural network subcomponent of a control module provided by this application;
图5为本申请提供的一种控制模组的循环神经网络(RNN)的拓扑结构示意图示意图。Figure 5 is a schematic diagram of the topology structure of a recurrent neural network (RNN) of a control module provided by this application.
其中,图中各附图标记:Among them, each figure in the figure is marked with:
10-可重构单元,20-通用运算单元,30-控制模组,11-控制逻辑组件,12-中央控制组件,13-通讯组件,14-执行管理驱动组件,15-传感管理驱动组件、40-上位机、50-被控关节、16-神经网络子组件、161-循环神经网络、162-输入层、163-隐藏层、164-输出层。10-reconfigurable unit, 20-general computing unit, 30-control module, 11-control logic component, 12-central control component, 13-communication component, 14-execution management drive component, 15-sensor management drive component , 40-Host computer, 50-Controlled joints, 16-Neural network subcomponent, 161-Recurrent neural network, 162-Input layer, 163-Hidden layer, 164-Output layer.
为了使本申请所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。In order to make the technical problems, technical solutions and beneficial effects to be solved by this application more clear, this application will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present application and are not used to limit the present application.
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的现有技术的详细说明,以免不必要的细节妨碍本申请的描述。In the following description, for the purpose of explanation rather than limitation, specific details such as specific system structures and technologies are provided to provide a thorough understanding of the embodiments of the present application. However, it will be apparent to those skilled in the art that the present application may be practiced in other embodiments without these specific details. In other instances, detailed descriptions of well-known prior art are omitted so as not to obscure the description of the present application with unnecessary detail.
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。It will be understood that, when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, integers, steps, operations, elements and/or components but does not exclude one or more other The presence or addition of features, integers, steps, operations, elements, components and/or collections thereof.
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。 It will also be understood that the term "and/or" as used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。As used in this specification and the appended claims, the term "if" may be interpreted as "when" or "once" or "in response to determining" or "in response to detecting" depending on the context. ". Similarly, the phrase "if determined" or "if [the described condition or event] is detected" may be interpreted, depending on the context, to mean "once determined" or "in response to a determination" or "once the [described condition or event] is detected ]" or "in response to detection of [the described condition or event]".
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。In addition, in the description of this application and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the description, and cannot be understood as indicating or implying relative importance.
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。Reference in this specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Therefore, the phrases "in one embodiment", "in some embodiments", "in other embodiments", "in other embodiments", etc. appearing in different places in this specification are not necessarily References are made to the same embodiment, but rather to "one or more but not all embodiments" unless specifically stated otherwise. The terms “including,” “includes,” “having,” and variations thereof all mean “including but not limited to,” unless otherwise specifically emphasized.
实施例一Embodiment 1
请参阅图1至图5,现对本申请实施例提供的控制模组30进行说明。Referring to FIGS. 1 to 5 , the control module 30 provided in the embodiment of the present application will now be described.
如图1所示,本申请提供的控制模组30,包括:中央控制组件12,至少一个传感管理驱动组件15、至少一个执行管理驱动组件14、至少一个控制逻辑组件11。As shown in FIG. 1 , the control module 30 provided by this application includes: a central control component 12 , at least one sensing management driver component 15 , at least one execution management driver component 14 , and at least one control logic component 11 .
其中,执行管理驱动组件14用于驱动其下辖的执行管理模组。执行管理驱动组件14与执行管理模组之间可以是一对多的对应关系。执行管理模组连接并控制至少一个执行元件。Among them, the execution management driver component 14 is used to drive the execution management module under its jurisdiction. There may be a one-to-many correspondence relationship between the execution management driver component 14 and the execution management module. The execution management module connects to and controls at least one execution element.
传感管理驱动组件15用于驱动其下辖的传感管理模组。传感管理模组连接并控制至少一个传感元件。The sensor management driver component 15 is used to drive the sensor management module under its jurisdiction. The sensor management module connects and controls at least one sensor element.
在一种实施例中,传感管理模组可配置为信号采样电路;进一步的,传感管理模组可对信号采样电路的输出信号进行信号处理,将模拟信号转化为数字信号。控制模组30可包括独立的信号处理组件单元,与传感管理驱动组件15连接,适用于信号量特别大,处理算法特别复杂的情况。传感管理驱动组件15与传感管理模组之间可以是一对多的对应关系。In one embodiment, the sensor management module can be configured as a signal sampling circuit; further, the sensor management module can perform signal processing on the output signal of the signal sampling circuit to convert the analog signal into a digital signal. The control module 30 may include an independent signal processing component unit connected to the sensor management drive component 15, and is suitable for situations where the signal volume is particularly large and the processing algorithm is particularly complex. There may be a one-to-many correspondence relationship between the sensor management drive component 15 and the sensor management module.
执行元件可包括电机,液压元件,气动元件,人工肌肉中的一种或多种。执行元件受执行管理模组的控制。在一种实施例中,执行管理模组配置为执行元件的驱动电路,如电机驱动电路。执行管理驱动组件14可配置为包括用于驱动执行管理模组的固件程序、软件程序、或者硬件。在执行管理驱动组件14的其中一项工作中,执行管理驱动组件14可接受目标执行元件(如电机)的目标转向、目标速度、目标电流、目标电压的二进制编码,转换成执行管理模组需要的输入信号(如PWM波形)。The actuator may include one or more of motors, hydraulic components, pneumatic components, and artificial muscles. The execution components are controlled by the execution management module. In one embodiment, the execution management module is configured as a driving circuit for an actuator, such as a motor driving circuit. The execution management driver component 14 may be configured to include a firmware program, a software program, or hardware for driving the execution management module. In one of the tasks of the execution management drive component 14, the execution management drive component 14 can accept the binary code of the target steering, target speed, target current, and target voltage of the target execution element (such as a motor), and convert it into the binary code required by the execution management module. input signal (such as PWM waveform).
传感管理模组可对传感元件供电,通过施加恒定电源或以周期扫描的方式施加电源。传感管理模组可对这些传感元件的输出信号进行放大、滤波、采样与转换,监测是否有传感元件缺失或工作异常,以 及将监测结果上传至传感管理驱动组件15。传感管理模组可采用模数转换器件、控制器件、通讯协议芯片、电源管理芯片等元件构成电路,并搭载程序以实现上述功能。传感管理驱动组件15可配置为包括用于驱动传感管理模组的固件程序、软件程序、或者硬件。所述传感管理驱动组件15可接受针对目标传感元件的目标采样频率、目标信号传输波特率的二进制编码,并转换成传感管理模组需要的输入信号(如以SPI协议与模数转换芯片通讯)。The sensing management module can supply power to the sensing element by applying constant power or applying power in a periodic scanning manner. The sensing management module can amplify, filter, sample and convert the output signals of these sensing elements, and monitor whether any sensing elements are missing or working abnormally. and upload the monitoring results to the sensing management drive component 15. The sensing management module can use analog-to-digital conversion devices, control devices, communication protocol chips, power management chips and other components to form circuits, and be equipped with programs to achieve the above functions. The sensing management driving component 15 may be configured to include a firmware program, a software program, or hardware for driving the sensing management module. The sensing management drive component 15 can accept the binary encoding of the target sampling frequency and target signal transmission baud rate of the target sensing element, and convert it into the input signal required by the sensing management module (such as SPI protocol and modulus conversion chip communication).
执行管理模组一般只监测执行元件的电流、电压、温度等,形成电流环、电压环、温度环等。执行管理模组还监测执行元件如电机自带的编码器以测量转速、转角。执行管理模组对执行元件进行控制,并监测执行元件是否缺失或工作异常,并将执行元件的电流、电压、速度和监测结果上传至执行管理驱动组件14。The execution management module generally only monitors the current, voltage, temperature, etc. of the actuator, forming a current loop, voltage loop, temperature loop, etc. The execution management module also monitors the actuating components such as the motor's own encoder to measure rotation speed and angle. The execution management module controls the execution elements, monitors whether the execution elements are missing or works abnormally, and uploads the current, voltage, speed and monitoring results of the execution elements to the execution management drive component 14 .
所述控制逻辑组件11与所述中央控制组件12相互连接、交换信息。所述控制逻辑组件11分别与所述传感管理驱动组件15、所述执行管理驱动组件14相互连接、交换信息。The control logic component 11 and the central control component 12 are connected to each other and exchange information. The control logic component 11 is connected to each other and exchanges information with the sensing management driving component 15 and the execution management driving component 14 respectively.
控制逻辑组件11可根据收到的指令进行解算,将解算后的信息传递给执行管理驱动组件14和/或传感管理驱动组件15。The control logic component 11 can perform calculations according to the received instructions, and pass the calculated information to the execution management driver component 14 and/or the sensing management driver component 15 .
在本申请的一个实施例中,所述控制模组30还包括至少一个通讯组件13。通讯组件13与外围设备通讯。外围设备可包括上位机40以及输入、输出设备等。通讯组件13与中央控制组件12连接。In one embodiment of the present application, the control module 30 further includes at least one communication component 13 . The communication component 13 communicates with peripheral devices. Peripheral devices may include the host computer 40 and input and output devices, etc. The communication component 13 is connected with the central control component 12 .
本申请的控制模组30,可由外围设备(包括上位机40)进行全方位控制:所述通讯组件13将接收到的外围设备的讯息传递给中央控制组件12。所述控制逻辑组件11接收来自中央控制组件12的指令。The control module 30 of the present application can be fully controlled by peripheral devices (including the host computer 40 ): the communication component 13 transmits the received messages from the peripheral devices to the central control component 12 . The control logic component 11 receives instructions from the central control component 12 .
例如,中央控制组件12接收到的上位机40目标指令包括相关关节的目标角度,经过控制逻辑组件11解算,得到相关关节对应的执行元件的执行参数(如方向、速度、电流、电压);执行管理驱动组件14进一步将执行参数翻译成执行管理模组所需要的信号(如方向信号、PWM频率和占空比信号);再由执行管理驱动组件14驱动执行管理模组。For example, the target instruction received by the central control component 12 from the host computer 40 includes the target angle of the relevant joint, and is solved by the control logic component 11 to obtain the execution parameters (such as direction, speed, current, voltage) of the actuator corresponding to the relevant joint; The execution management driver component 14 further translates the execution parameters into signals required by the execution management module (such as direction signals, PWM frequency and duty cycle signals); and then the execution management driver component 14 drives the execution management module.
在一个实施例中,控制模组30包括多个控制逻辑组件11。实际使用时,机器人的一个上位机40可控制多个控制模组30。每个控制模组30可用于控制一个多自由度肢体。例如人型机器人可以为每个手臂、躯干、腿部分别配以一个控制模组30,由位于机器人头部的中央处理模组作为上位机40,统管所有控制模组30,进而协调控制机器人全身。In one embodiment, the control module 30 includes a plurality of control logic components 11 . In actual use, one host computer 40 of the robot can control multiple control modules 30 . Each control module 30 can be used to control a limb with multiple degrees of freedom. For example, a humanoid robot can be equipped with a control module 30 for each arm, torso, and leg. The central processing module located on the head of the robot serves as the host computer 40 to manage all control modules 30 to coordinately control the entire body of the robot. .
进一步的,任一控制逻辑组件11可以与至少一其它控制逻辑组件11连接,进行单向或双向通讯、交换信息。该设计的有益效果在于,若机器人的自由度/关节数量多,各自由度/关节涉及的控制模型或者 控制环路间存在耦合时,控制逻辑组件11之间的信息交换能够使各控制环路完成解算,尤其适合基于神经网络的控制算法、基于计算力矩法的控制算法、基于状态空间法的控制算法、基于观测器的控制算法、基于状态机的控制算法。例如,如图3所示,控制模组30与上位机40连接。每个被控关节50与一个控制逻辑组件11连接形成控制环路(驱动电路、采样电路已略去),各被控关节50间需要交换状态信息,就是通过不同控制逻辑组件11之间的通讯来实现,以进行各关节控制量之间的解耦或者耦合。Furthermore, any control logic component 11 can be connected with at least one other control logic component 11 to perform one-way or two-way communication and exchange information. The beneficial effect of this design is that if the robot has a large number of degrees of freedom/joints, the control model involved in each degree of freedom/joint or When there is coupling between control loops, the information exchange between the control logic components 11 can enable each control loop to complete the solution, which is especially suitable for control algorithms based on neural networks, control algorithms based on computational torque methods, and control based on state space methods. Algorithms, observer-based control algorithms, state machine-based control algorithms. For example, as shown in FIG. 3 , the control module 30 is connected to the host computer 40 . Each controlled joint 50 is connected to a control logic component 11 to form a control loop (the drive circuit and sampling circuit have been omitted). Each controlled joint 50 needs to exchange status information, that is, through communication between different control logic components 11 To achieve decoupling or coupling between the control variables of each joint.
进一步的,本申请中,所述通讯组件13与传感管理驱动组件15、执行管理驱动组件14、控制逻辑组件11中的至少一个进行通讯。上位机40发来的讯息,经解码后,可经通讯组件13的路由直接传给相应的目标组件而不必经过中央控制组件12,效率高。Further, in this application, the communication component 13 communicates with at least one of the sensing management driving component 15, the execution management driving component 14, and the control logic component 11. The message sent from the host computer 40, after being decoded, can be directly transmitted to the corresponding target component through the routing of the communication component 13 without having to go through the central control component 12, which is highly efficient.
在一个实施例中,通讯组件13与控制逻辑组件11进行通讯,所述通讯组件13将经解码的上位机40发来的讯息直接传递给相应的控制逻辑组件11。In one embodiment, the communication component 13 communicates with the control logic component 11 , and the communication component 13 directly transmits the decoded message sent from the host computer 40 to the corresponding control logic component 11 .
在一个实施例中,通讯组件13与执行管理驱动组件14进行通讯,所述通讯组件13将上位机40的指令直接传递给相应的执行管理驱动组件14。In one embodiment, the communication component 13 communicates with the execution management drive component 14, and the communication component 13 directly transmits instructions from the host computer 40 to the corresponding execution management drive component 14.
在一个实施例中,通讯组件13与传感管理驱动组件15进行通讯,所述通讯组件13将上位机40的指令直接传递给相应的传感管理驱动组件15。In one embodiment, the communication component 13 communicates with the sensor management drive component 15 , and the communication component 13 directly transmits instructions from the host computer 40 to the corresponding sensor management drive component 15 .
所述中央控制组件12可与所述传感管理驱动组件15、所述执行管理驱动组件14中的至少一个连接。这样,中央控制组件12能够收到所述传感管理驱动组件15、所述执行管理驱动组件14的状态信息,进行更好的决策。例如,中央控制组件12能够收到所述传感管理驱动组件15的状态信息,根据传感信息的变化率做出决策,并指示传感管理驱动组件15调整采样频率。The central control component 12 may be connected to at least one of the sensing management driving component 15 and the execution management driving component 14 . In this way, the central control component 12 can receive the status information of the sensing management driving component 15 and the execution management driving component 14 and make better decisions. For example, the central control component 12 can receive the status information of the sensing management driving component 15, make a decision based on the change rate of the sensing information, and instruct the sensing management driving component 15 to adjust the sampling frequency.
如图2所示,本申请的控制模组30可配置为包括可重构单元10和通用运算单元20的嵌入式电路。其中,所述可重构单元10和通用运算单元20通讯。例如,所述可重构单元10和通用运算单元20之间可全双工通讯。As shown in FIG. 2 , the control module 30 of the present application can be configured as an embedded circuit including a reconfigurable unit 10 and a general-purpose computing unit 20 . The reconfigurable unit 10 communicates with the general computing unit 20 . For example, the reconfigurable unit 10 and the general computing unit 20 can communicate in full duplex.
可重构单元10可配置为FPGA,通用运算单元20可配置为ARM。FPGA与作为通用运算单元20的ARM可以为独立芯片;也可以绑定在同一个芯片中;还可以在可重构单元10的FPGA中嵌入ARM的固件。在一个优选的方案中,可重构单元10的FPGA与ARM绑定在同一个芯片中,以提高二者间通讯带宽。The reconfigurable unit 10 can be configured as an FPGA, and the general computing unit 20 can be configured as an ARM. The FPGA and the ARM as the general computing unit 20 can be independent chips; they can also be bound to the same chip; the ARM firmware can also be embedded in the FPGA of the reconfigurable unit 10 . In a preferred solution, the FPGA and ARM of the reconfigurable unit 10 are bound in the same chip to increase the communication bandwidth between them.
或者,通用运算单元20的ARM也可由DSP电路/芯片替代,可实现相同功能。前者更灵活可以支持任意通讯协议栈;后者简单可靠,价格便宜。 Alternatively, the ARM of the general-purpose computing unit 20 can also be replaced by a DSP circuit/chip, which can achieve the same function. The former is more flexible and can support any communication protocol stack; the latter is simple, reliable and cheap.
在另一种实施例中,通用运算单元20(ARM或DSP)可以作为可重构单元10的一部分,即在可重构单元10(FPGA)中嵌入通用运算单元20(ARM或DSP)的固件。In another embodiment, the general-purpose computing unit 20 (ARM or DSP) can be used as a part of the reconfigurable unit 10 , that is, the firmware of the general-purpose computing unit 20 (ARM or DSP) is embedded in the reconfigurable unit 10 (FPGA). .
所述控制模组30采用FPGA作为可重构单元10的好处是,其搭载的各个组件可以并行执行,尤其适合解决多传感元件、多执行元件、多控制目标的情况,能够高速实时响应。而采用ARM或DSP进行通讯管理的好处,是因为ARM或DSP编解码的高效,软件(相较于固件)可以更灵活地实现、升级通讯协议、路由规则,开发便捷。尤其是使用ARM可以搭载嵌入式系统,更好的支持WiFi/以太网协议栈。The advantage of using FPGA as the reconfigurable unit 10 in the control module 30 is that its various components can be executed in parallel, which is especially suitable for solving the situation of multiple sensing elements, multiple execution elements, and multiple control targets, and can respond at high speed and in real time. The advantage of using ARM or DSP for communication management is that because of the high efficiency of ARM or DSP encoding and decoding, software (compared to firmware) can more flexibly implement and upgrade communication protocols and routing rules, making development easier. In particular, ARM can be used to carry embedded systems and better support WiFi/Ethernet protocol stacks.
作为替代的方案,可重构单元10还可以配置为可重构硬件。可重构硬件是指硬件线路、功能可以根据软件在运行时重构的硬件设备。As an alternative, the reconfigurable unit 10 may also be configured as reconfigurable hardware. Reconfigurable hardware refers to hardware devices whose hardware circuits and functions can be reconstructed according to software at runtime.
通用运算单元20(如ARM)与外围设备(如上位机40)通讯。例如,所述通用运算单元20(如ARM)与外围设备(如上位机40)全双工通讯,交换第一讯息(例如以太网数据包),由外围设备(如上位机40)向通用运算单元20(如ARM)发送第一讯息。所述通用运算单元20(如ARM)对第一讯息进行解码、编码,得到第二讯息(机器码),并以第二讯息与可重构单元10通讯。The general computing unit 20 (such as ARM) communicates with peripheral devices (such as the host computer 40). For example, the general-purpose computing unit 20 (such as ARM) communicates with a peripheral device (such as the host computer 40) in full-duplex, exchanges first messages (such as Ethernet data packets), and transmits the first message (such as an Ethernet data packet) from the peripheral device (such as the host computer 40) to the general-purpose computing unit 20. Unit 20 (such as ARM) sends the first message. The general-purpose computing unit 20 (such as ARM) decodes and encodes the first message to obtain the second message (machine code), and communicates with the reconfigurable unit 10 using the second message.
如果第一讯息是加密的,则通用运算单元20(如ARM)可对第一讯息进行解密。通用运算单元20(如ARM)可对可重构单元10发来的第二讯息进行加密得到第一讯息,再发给外围设备(如上位机40)。If the first message is encrypted, the general computing unit 20 (such as ARM) can decrypt the first message. The general computing unit 20 (such as ARM) can encrypt the second message sent from the reconfigurable unit 10 to obtain the first message, and then sends it to the peripheral device (such as the host computer 40).
可重构单元10的通讯组件13能够与通用运算单元20(如ARM)通讯。在一个实施例中,可重构单元10的通讯组件13能够与通用运算单元20(如ARM)全双工通讯,并通过通用运算单元20(如ARM)与外围设备全双工通讯。通用运算单元20(如ARM)将所述第二讯息传给可重构单元10(如FPGA)。所述可重构单元10对第二讯息进行编码、解码;根据第二讯息中的目标,将第二讯息重组成合适的控制指令(format),并传给相应的组件(即目标组件);这个控制指令(format)中可带有目标编号、指令(即机器码)、参数。参数可以包括:角度值、速度值、力矩值、重要性系数等等。The communication component 13 of the reconfigurable unit 10 can communicate with the general computing unit 20 (such as ARM). In one embodiment, the communication component 13 of the reconfigurable unit 10 is capable of full-duplex communication with the general-purpose computing unit 20 (such as ARM), and full-duplex communication with peripheral devices through the general-purpose computing unit 20 (such as ARM). The general computing unit 20 (such as ARM) transmits the second message to the reconfigurable unit 10 (such as FPGA). The reconfigurable unit 10 encodes and decodes the second message; reassembles the second message into an appropriate control instruction (format) according to the target in the second message, and transmits it to the corresponding component (i.e., the target component); This control instruction (format) can contain target number, instruction (i.e. machine code), and parameters. Parameters can include: angle values, speed values, torque values, importance coefficients, etc.
所述可重构单元10包括上述的中央控制组件12、至少一个所述传感管理驱动组件15、至少一个所述执行管理驱动组件14、至少一个所述控制逻辑组件11;此外,所述可重构单元10还可以包括至少一个所述通讯组件13(取决于通讯的复杂程度);如果通讯较复杂,则所述可重构单元10由所述通讯组件13对第二讯息进行编码、解码,以及路由给相应的组件。在控制模组30内部,可由中央控制组件12进行统一协调、控制。The reconfigurable unit 10 includes the above-mentioned central control component 12, at least one of the sensing management driver components 15, at least one of the execution management driver components 14, and at least one of the control logic components 11; in addition, the reconfigurable unit 10 includes: The reconfigurable unit 10 may also include at least one of the communication components 13 (depending on the complexity of the communication); if the communication is more complex, the reconfigurable unit 10 uses the communication component 13 to encode and decode the second message. , and route to the corresponding component. Within the control module 30, the central control component 12 can perform unified coordination and control.
本申请的控制模组30,从与外围设备(如上位机40)通讯获得第一讯息到对第一讯息进行解码、编 码得到第二讯息的机器码,通讯协议的升级改造主要发生在通用运算单元20(如ARM)中,因此升级时仅需对通用运算单元20(如ARM)进行;便于进行升级改造。The control module 30 of the present application obtains the first message by communicating with the peripheral device (such as the host computer 40) to decoding and encoding the first message. The code obtains the machine code of the second message. The upgrading and transformation of the communication protocol mainly occurs in the general-purpose computing unit 20 (such as ARM). Therefore, only the general-purpose computing unit 20 (such as ARM) is needed during the upgrade; it is convenient for upgrading and reforming.
所述控制模组30支持一种或者多种控制模式。所述控制模组30通过控制逻辑组件11可以实现不同控制模式、控制算法。The control module 30 supports one or more control modes. The control module 30 can implement different control modes and control algorithms through the control logic component 11 .
控制逻辑组件11可配置为包括控制算法,控制算法可配置为基于神经网络的控制算法、基于计算力矩法的控制算法、基于状态空间法的控制算法、基于观测器的控制算法、或者基于状态机的控制算法等。The control logic component 11 may be configured to include a control algorithm, which may be configured as a neural network-based control algorithm, a computational moment method-based control algorithm, a state space method-based control algorithm, an observer-based control algorithm, or a state machine-based control algorithm. control algorithm, etc.
在本申请的一个实施例中,所述控制逻辑组件11可受中央控制组件12的控制。由中央控制组件12向相应控制逻辑组件11发出指令,在不同的控制模式间切换。In one embodiment of the present application, the control logic component 11 may be controlled by the central control component 12 . The central control component 12 issues instructions to the corresponding control logic component 11 to switch between different control modes.
不同控制模式、控制算法可以由不同控制逻辑组件11实现;切换控制模式、控制算法时,由中央控制组件12使能相应的控制逻辑组件11即可。例如,一个控制逻辑组件11可以提供基于神经网络的控制算法,另一个控制逻辑组件11可以提供基于状态空间法的控制算法。Different control modes and control algorithms can be implemented by different control logic components 11; when switching control modes and control algorithms, the central control component 12 can enable the corresponding control logic component 11. For example, one control logic component 11 may provide a control algorithm based on a neural network, and another control logic component 11 may provide a control algorithm based on a state space method.
多种控制模式、控制算法也可以由同一个控制逻辑组件11实现;切换控制模式、控制算法时,由中央控制组件12向控制逻辑组件11发出指令,控制逻辑组件11内部切换至相应控制模式、控制算法。Multiple control modes and control algorithms can also be implemented by the same control logic component 11; when switching control modes and control algorithms, the central control component 12 issues instructions to the control logic component 11, and the control logic component 11 internally switches to the corresponding control mode, control algorithm.
在本申请的一个实施例中,所述控制模组30能够根据外围设备传来的指令在不同的控制模式间切换。In one embodiment of the present application, the control module 30 can switch between different control modes according to instructions from peripheral devices.
例如,外围设备(上位机40)传来第一讯息,经由通用运算单元20(ARM)对第一讯息进行解码、编码,得到第二讯息(机器码),并传给可重构单元10(FPGA)。可重构单元10(FPGA)接收到第二讯息,该第二讯息包括控制模式指令、目标、参数。如控制模式指令指定一些执行元件(即目标元件)采用下位机开环控制模式,则中央控制组件12对相应控制逻辑组件11去使能。第二讯息可通过通讯组件13的路由,被直接传递给执行管理驱动组件14。在其它实施例中,第二讯息也可通过通讯组件13的路由,被直接传递给传感管理驱动组件15或者控制逻辑组件11。For example, the peripheral device (host computer 40) transmits the first message, and the general-purpose computing unit 20 (ARM) decodes and encodes the first message to obtain the second message (machine code), which is then transmitted to the reconfigurable unit 10 ( FPGA). The reconfigurable unit 10 (FPGA) receives the second message, which includes control mode instructions, targets, and parameters. If the control mode instruction specifies that some execution components (ie, target components) adopt the open-loop control mode of the lower computer, the central control component 12 disables the corresponding control logic component 11 . The second message can be directly delivered to the execution management driver component 14 through the routing of the communication component 13 . In other embodiments, the second message can also be directly delivered to the sensing management driver component 15 or the control logic component 11 through the routing of the communication component 13 .
本申请的控制模组30可支持下位机闭环控制模式,即由外围设备(如上位机40)提供目标指令,所述控制模组30作为下位机进行闭环控制。The control module 30 of the present application can support the closed-loop control mode of the lower computer, that is, the peripheral device (such as the upper computer 40) provides target instructions, and the control module 30 acts as the lower computer to perform closed-loop control.
在下位机闭环控制模式中,根据外围设备提供的目标指令,控制逻辑组件11进行解算并将解算后的信息传递给执行管理驱动组件14和/或传感管理驱动组件15。 In the closed-loop control mode of the lower computer, according to the target instructions provided by the peripheral device, the control logic component 11 performs calculations and passes the calculated information to the execution management drive component 14 and/or the sensing management drive component 15 .
例如,在下位机闭环控制模式下,目标指令指定任意关节的目标角度,经过控制逻辑组件11的解算,得到相应执行元件应施加的目标电压和/或目标电流,再由执行管理驱动组件14驱动执行管理模组为执行元件提供电压和/或电流。执行元件的电压和/或电流等反馈值信息经执行管理模组上传至控制模组30形成反馈闭环。For example, in the closed-loop control mode of the lower computer, the target instruction specifies the target angle of any joint. After calculation by the control logic component 11, the target voltage and/or target current that should be applied to the corresponding execution element is obtained, and then the execution management drive component 14 The drive execution management module provides voltage and/or current to the actuator. Feedback value information such as voltage and/or current of the actuator is uploaded to the control module 30 through the execution management module to form a feedback closed loop.
下位机闭环控制模式的好处在于:下位机响应快速,并行度好;能减少上位机40的运算压力。The advantage of the closed-loop control mode of the lower computer is that the lower computer responds quickly and has good parallelism; it can reduce the computing pressure of the upper computer 40 .
本申请的控制模组30还可以支持下位机开环控制模式,即由外围设备(如上位机40)提供目标指令,所述控制模组30作为下位机进行开环控制。The control module 30 of the present application can also support the slave computer open-loop control mode, that is, the peripheral device (such as the host computer 40) provides target instructions, and the control module 30 acts as the slave computer to perform open-loop control.
在下位机开环控制模式中:所述执行管理驱动组件14可根据外围设备提供的目标指令对所述执行管理驱动组件14进行控制,和/或,所述传感管理驱动组件15可根据外围设备提供的目标指令对所述传感管理驱动组件15进行控制。例如,在下位机开环控制模式下,目标指令指定任意执行元件的目标电压和/或目标电流,由执行管理驱动组件14驱动执行管理模组为执行元件提供电压和/或电流。不需要经过控制逻辑组件11形成闭环。In the open-loop control mode of the lower computer: the execution management driving component 14 can control the execution management driving component 14 according to the target instructions provided by the peripheral device, and/or the sensing management driving component 15 can control the execution management driving component 14 according to the target instructions provided by the peripheral device. The target instructions provided by the device control the sensing management driving component 15 . For example, in the open-loop control mode of the host computer, the target instruction specifies the target voltage and/or target current of any actuator, and the execution management drive component 14 drives the execution management module to provide voltage and/or current for the actuator. There is no need to go through the control logic component 11 to form a closed loop.
所述下位机开环控制模式的好处在于:The advantages of the open-loop control mode of the slave computer are:
(1)上位机40可以直接控制到执行元件,便于调试;(1) The host computer 40 can directly control the actuating components, which facilitates debugging;
(2)支持由上位机40进行全方位控制,例如上位机40采用类脑计算的控制方式,类脑神经网络可以在上位机40运行,算力比下位机更强;(2) Support all-round control by the upper computer 40. For example, the upper computer 40 adopts a brain-like computing control method. The brain-like neural network can run on the upper computer 40, and the computing power is stronger than that of the lower computer;
(3)在下位机开环控制模式,下位机仍可以进行应急响应。(3) In the open-loop control mode of the lower computer, the lower computer can still respond to emergencies.
在本申请的一个实施例中,控制模组30能够根据传感元件和/或执行元件的信息做出判断,并在不同的控制模式间切换。In one embodiment of the present application, the control module 30 can make a judgment based on information from sensing elements and/or actuating elements, and switch between different control modes.
所述传感管理驱动组件15和/或所述执行管理驱动组件14将信息上传至中央控制组件12。由中央控制组件12根据上传的信息判断采用何种控制模式,并控制(或使能相应的)控制逻辑组件11在不同的控制模式间切换。The sensing management driving component 15 and/or the execution management driving component 14 uploads information to the central control component 12 . The central control component 12 determines which control mode to adopt based on the uploaded information, and controls (or enables the corresponding) control logic component 11 to switch between different control modes.
例如,某传感器缺失,传感管理驱动组件15判断该传感器缺失并将此信息传给中央控制组件12,中央控制组件12决定在所涉及的控制环路采取状态空间法进行控制,即以预设模型估测缺失传感器的信息,并使能相应的控制逻辑组件11。For example, if a sensor is missing, the sensing management driver component 15 determines that the sensor is missing and transmits this information to the central control component 12. The central control component 12 decides to adopt the state space method for control in the involved control loop, that is, using the preset The model estimates the missing sensor information and enables corresponding control logic components 11 .
再如,如果某执行元件的温度达到预设温度上限,传感管理驱动组件15判断该执行元件温度过高,并将此信息传给中央控制组件12,中央控制组件12决定对该执行元件采取保护措施,降低供电电压/电流,甚至断电,中央控制组件12对执行管理驱动组件14进行控制,由执行管理驱动组件14进一步执行。 For another example, if the temperature of an actuator reaches the preset temperature upper limit, the sensing management drive component 15 determines that the temperature of the actuator is too high, and transmits this information to the central control component 12, and the central control component 12 decides to take action on the actuator. For protection measures, reduce the supply voltage/current, or even cut off the power, the central control component 12 controls the execution management drive component 14, which is further executed by the execution management drive component 14.
作为进一步改善的方案,所述控制模组30可包括信号处理组件。信号处理组件具有至少一种滤波方式。As a further improvement solution, the control module 30 may include a signal processing component. The signal processing component has at least one filtering method.
所述信号处理组件与传感管理驱动组件15相连接,或者,所述信号处理组件设置在传感管理驱动组件15内。The signal processing component is connected to the sensing management driving component 15 , or the signal processing component is arranged within the sensing management driving component 15 .
所述控制模组30能够根据外围设备传来的指令在不同的滤波方式间切换。The control module 30 can switch between different filtering modes according to instructions from peripheral devices.
在一种实施例中,不同的滤波方式由不同的传感管理驱动组件15实现。例如,当中央控制组件12接收到第二讯息,该第二讯息包括滤波模式指令、目标、参数,滤波模式指令指定一些传感元件(即目标)采用平均滤波方式,则中央控制组件12为相应传感元件使能相应的传感管理驱动组件15(即采用了平均滤波方式),并给相应的传感管理驱动组件15赋值(滤波参数)。In one embodiment, different filtering methods are implemented by different sensing management driving components 15 . For example, when the central control component 12 receives a second message, the second message includes a filter mode instruction, a target, and parameters. The filter mode instruction specifies that some sensing elements (i.e., targets) adopt an average filtering method, then the central control component 12 responds accordingly. The sensing element enables the corresponding sensing management drive component 15 (that is, the average filtering method is adopted), and assigns a value (filter parameter) to the corresponding sensing management drive component 15.
或者,同一个传感管理驱动组件15可以支持多种滤波方式,由中央控制组件12根据第二讯息控制传感管理驱动组件15在不同滤波方式中切换,不再赘述。Alternatively, the same sensor management driving component 15 can support multiple filtering modes, and the central control component 12 controls the sensor management driving component 15 to switch among different filtering modes according to the second message, which will not be described again.
所述控制模组30还能够根据传感元件和/或执行元件的信息做出判断,在不同的滤波方式间切换。The control module 30 can also make judgments based on information from sensing elements and/or actuating elements, and switch between different filtering modes.
本申请的控制模组30,能够调整传感管理模组的信号采样模式。The control module 30 of the present application can adjust the signal sampling mode of the sensing management module.
信号采样模式包括:信号采样频率、信号采样波特率、信号采样位数、信号采样通道数量、信号采样通道切换等。Signal sampling mode includes: signal sampling frequency, signal sampling baud rate, signal sampling bits, number of signal sampling channels, signal sampling channel switching, etc.
传感管理模组一般包括ADC和辅助电路。ADC的信号采样频率、信号采样波特率、信号采样位数、信号采样通道数量、信号采样通道切换速度等可以调整,由控制模组30与传感管理模组之间的通讯来实现调整。Sensing management modules generally include ADC and auxiliary circuits. The ADC's signal sampling frequency, signal sampling baud rate, signal sampling bits, number of signal sampling channels, signal sampling channel switching speed, etc. can be adjusted by communication between the control module 30 and the sensing management module.
在本申请的一个实施例中,所述控制模组30能够根据传感元件和/或执行元件的信息调整信号采样模式。In one embodiment of the present application, the control module 30 can adjust the signal sampling mode according to the information of the sensing element and/or the actuating element.
中央控制组件12可包括信号采样控制子组件,信号采样控制子组件根据传感元件和/或执行元件的信息判断信号采样模式,并指令传感管理驱动组件15调整信号采样模式。The central control component 12 may include a signal sampling control sub-component, which determines the signal sampling mode based on information from sensing elements and/or actuating elements, and instructs the sensing management driving component 15 to adjust the signal sampling mode.
例如,某传感元件的输出信号长时间不变化,则控制模组30可以降低对该传感元件的采样频率,或者在信号采样通道切换时暂时跳过对该传感元件的采样。For example, if the output signal of a certain sensing element does not change for a long time, the control module 30 can reduce the sampling frequency of the sensing element, or temporarily skip sampling of the sensing element when the signal sampling channel is switched.
传感管理驱动组件15对传感元件的输出信号变化率进行监测,并将监测信息传给中央控制组件12;由中央控制组件12决定调整为何种采样模式,并指令传感管理驱动组件15驱动传感管理模组实现。 The sensing management driving component 15 monitors the change rate of the output signal of the sensing element and transmits the monitoring information to the central control component 12; the central control component 12 decides which sampling mode to adjust to and instructs the sensing management driving component 15 to drive Sensing management module implementation.
在本申请的一个实施例中,所述控制模组30能够根据外围设备传来的指令调整信号采样模式。外围设备将控制信息传递中央控制组件12;中央控制组件12包括信号采样控制子组件,所述信号采样控制子组件根据所述控制信息指令传感管理驱动组件15调整信号采样模式。In one embodiment of the present application, the control module 30 can adjust the signal sampling mode according to instructions from peripheral devices. The peripheral device transmits the control information to the central control component 12; the central control component 12 includes a signal sampling control sub-component, which instructs the sensing management driving component 15 to adjust the signal sampling mode according to the control information.
例如,当外围设备(如上位机40)需要加强对触觉信号的采样频率,则向控制模组30(下位机)发出第一讯息,经由通用运算单元20(ARM)对第一讯息进行解码、编码,得到第二讯息(机器码),第二讯息(机器码)传递给可重构单元10(FPGA);经由通讯组件13路由,中央控制组件12接收到第二讯息,该第二讯息包括目标(传感器编号)、指令(调整采样频率)、参数(采样频率),进一步由中央控制组件12指示传感管理驱动组件15实现调整采样模式。For example, when the peripheral device (such as the host computer 40) needs to increase the sampling frequency of the tactile signal, it sends a first message to the control module 30 (the host computer), and decodes the first message through the general-purpose computing unit 20 (ARM). Encoding, the second message (machine code) is obtained, and the second message (machine code) is passed to the reconfigurable unit 10 (FPGA); routed through the communication component 13, the central control component 12 receives the second message, and the second message includes The target (sensor number), instruction (adjustment of sampling frequency), and parameters (sampling frequency) further instruct the central control component 12 to instruct the sensing management drive component 15 to adjust the sampling mode.
在本申请的一个实施例中,所述控制模组30能够调整信息上传模式,以节省上传通信带宽。所述控制模组30的信息上传模式包括以下的一种或多种:In one embodiment of the present application, the control module 30 can adjust the information upload mode to save upload communication bandwidth. The information upload mode of the control module 30 includes one or more of the following:
常规上传模式,所述控制模组30按照给定频率上传信息;In the conventional upload mode, the control module 30 uploads information according to a given frequency;
事件触发上传模式,所述控制模组30(中央控制组件12)根据给定触发条件上传特定的信息;In the event-triggered upload mode, the control module 30 (central control component 12) uploads specific information according to given trigger conditions;
自适应上传模式,所述控制模组30根据相关信息的变化率,判断是否上传任一信息以及上传频率。In the adaptive upload mode, the control module 30 determines whether to upload any information and the frequency of uploading based on the change rate of relevant information.
常规上传模式,即连续上传信息;控制模组30按照给定频率上传信息(包括传感器信息、监测信息、执行元件信息、内部状态信息等)。常规上传模式采用持续通讯方式,该方式优点是可以让上位机40持续密集监测下位机乃至整个系统的工作是否正常,数据可靠稳定;如果有通讯丢包情况,也能及时发现并纠正。该方式缺点是当传感器数量较多,会占用过多通讯带宽,也会给中央处理模组太多运算压力。The conventional upload mode is to continuously upload information; the control module 30 uploads information (including sensor information, monitoring information, actuator information, internal status information, etc.) according to a given frequency. The conventional upload mode uses a continuous communication method. The advantage of this method is that the upper computer 40 can continuously and intensively monitor whether the lower computer and even the entire system are working normally, and the data is reliable and stable; if there is communication packet loss, it can be discovered and corrected in time. The disadvantage of this method is that when the number of sensors is large, it will occupy too much communication bandwidth and put too much computing pressure on the central processing module.
事件触发上传模式,即中央控制组件12根据给定触发条件,采取相应处理过程,上传给定信息。事件触发上传模式采用间歇性通讯,优点是不必实时上传所有信息,可以节省带宽。The event-triggered upload mode means that the central control component 12 adopts corresponding processing procedures to upload given information based on given trigger conditions. The event-triggered upload mode uses intermittent communication. The advantage is that it does not have to upload all information in real time, which can save bandwidth.
自适应上传模式,即控制模组30根据信息的变化率,判断是否上传任一信息、上传频率。自适应上传模式针对信息有变化的情况才进行通讯,进一步节省通讯带宽。例如,如果传感管理驱动组件15判断触觉传感元件信息长时间无变化(低于给定变化率阈值),或者幅值长时间低于给定幅值阈值,就协调通讯组件13减少上传频率甚至停止上传触觉传感元件信息,反之亦然。In the adaptive upload mode, the control module 30 determines whether to upload any information and the upload frequency based on the change rate of the information. The adaptive upload mode communicates only when information changes, further saving communication bandwidth. For example, if the sensing management driver component 15 determines that the tactile sensing element information has not changed for a long time (below a given change rate threshold), or the amplitude has been lower than a given amplitude threshold for a long time, it will coordinate the communication component 13 to reduce the upload frequency. Even stops uploading tactile sensing element information and vice versa.
在本申请的一个实施例中,所述控制模组30能够进行应急响应。控制模组30中可包括应急响应控制组件。In one embodiment of the present application, the control module 30 is capable of emergency response. The control module 30 may include an emergency response control component.
在一个实施例中。应急响应控制组件中包括神经网络子组件16。所述神经网络子组件16用于应急处 理,并在应急处理时控制执行管理驱动组件14。In one embodiment. The emergency response control component includes a neural network subcomponent 16. The neural network subcomponent 16 is used for emergency response management, and controls and executes the management driver component 14 during emergency processing.
本申请的控制模组30,优选由上位机40进行全方位控制,例如上位机40采用类脑计算的控制方式,类脑神经网络可以在上位机40运行,算力比下位机更强。但是在突发情况下,下位机的神经网络子组件16可以进行应急响应;下位机的应急响应速度较快,可以更快进行响应处理。The control module 30 of the present application is preferably controlled in all directions by the host computer 40. For example, the host computer 40 adopts a brain-like computing control method. The brain-like neural network can run on the host computer 40, and the computing power is stronger than that of the host computer. However, in the event of an emergency, the neural network subcomponent 16 of the slave computer can perform emergency response; the slave computer has a faster emergency response speed and can perform response processing faster.
所述神经网络子组件16可包括循环神经网络(RNN)等神经网络。通过循环神经网络(RNN)模拟脊髓神经环路的算法或程序。脊髓神经环路,可用于应急处理的动作为复杂轨迹的情况,运动轨迹可由神经网络编码。图5所示为一种循环神经网络(RNN)的拓扑结构示意图,包括输入层162、隐藏层163、输出层164。The neural network subcomponent 16 may include a neural network such as a recurrent neural network (RNN). An algorithm or program that simulates spinal cord neural circuits through recurrent neural networks (RNN). The spinal cord neural circuit can be used when emergency handling actions have complex trajectories, and the motion trajectories can be encoded by neural networks. Figure 5 shows a schematic diagram of the topology of a recurrent neural network (RNN), including an input layer 162, a hidden layer 163, and an output layer 164.
所述神经网络子组件16可通过神经元间的联接关系和权重来编码运动轨迹。运动轨迹包括一至多个动作序列的组合;每个动作序列由一至多个元动作在时间维度排列组成;每个元动作表示一个对应的执行元件的动作。The neural network subcomponent 16 can encode motion trajectories through connection relationships and weights between neurons. The motion trajectory includes a combination of one or more action sequences; each action sequence is composed of one or more meta-actions arranged in the time dimension; each meta-action represents the action of a corresponding execution element.
如图4所示,所述神经网络子组件16可与执行管理驱动组件14、传感管理驱动组件15相连接。例如,神经网络子组件16与执行管理驱动组件14连接,并根据编码运动轨迹可控制执行管理驱动组件14进而对执行元件进行控制。As shown in FIG. 4 , the neural network subcomponent 16 can be connected to the execution management driver component 14 and the sensing management driver component 15 . For example, the neural network subcomponent 16 is connected to the execution management drive component 14, and can control the execution management drive component 14 according to the encoded motion trajectory to control the execution elements.
例如,当出现压力过载、关节位置超限等情况,为避免损伤机器人,中央控制组件12启动基于神经网络的运动控制算法,使机器人执行编码的运动轨迹,从而实现应急响应。For example, when pressure overload, joint position exceeds limits, etc., in order to avoid damaging the robot, the central control component 12 activates a motion control algorithm based on a neural network to enable the robot to execute the encoded motion trajectory to achieve emergency response.
循环神经网络(RNN)可以嵌入到可重构单元10(如FPGA)中,包括该循环神经网络(RNN)的神经网络子组件16独立于FPGA的其它组件。A recurrent neural network (RNN) can be embedded in a reconfigurable unit 10 (such as an FPGA), and the neural network subcomponent 16 including the recurrent neural network (RNN) is independent of other components of the FPGA.
所述神经网络子组件16可同时与执行管理驱动组件14、传感管理驱动组件15单向或双向通讯,即接受执行管理驱动组件14和/或传感管理驱动组件15的信息、并向相应的执行管理驱动组件14和/或传感管理驱动组件15发出指令。如图4所示,所述神经网络子组件16可与中央控制组件12连接,接受统一协调控制。The neural network sub-component 16 can communicate with the execution management drive component 14 and the sensor management drive component 15 one-way or two-way at the same time, that is, it accepts information from the execution management drive component 14 and/or the sensor management drive component 15 and sends it to the corresponding The execution management driving component 14 and/or the sensing management driving component 15 issue instructions. As shown in Figure 4, the neural network sub-component 16 can be connected to the central control component 12 and accept unified coordinated control.
在一种实施例中,中央控制组件12可以实现为状态机,或者逻辑集合,通过固件编程实现。In one embodiment, the central control component 12 may be implemented as a state machine, or a collection of logic, implemented through firmware programming.
实施例二Embodiment 2
在另一方面,本申请还提供了一种控制装置。所述控制装置包括如实施例一所述的一种控制模组30。 On the other hand, the present application also provides a control device. The control device includes a control module 30 as described in Embodiment 1.
实施例三Embodiment 3
本申请还提供了一种机器人。所述机器人包括如实施例一所述的一种控制模组30。机器人包括但不限于仿生机器人、人型机器人、操作型机器人、协作型机器人、具有多个自由度的机械手或者灵巧手系统、具有多个自由度的仿生机械足、其它类别的多关节的机器等。This application also provides a robot. The robot includes a control module 30 as described in Embodiment 1. Robots include but are not limited to bionic robots, humanoid robots, operating robots, collaborative robots, manipulators or dexterous hand systems with multiple degrees of freedom, bionic mechanical feet with multiple degrees of freedom, other types of multi-jointed machines, etc. .
所述机器人包括多个关节,还包括如实施例一所述的传感元件、执行元件、执行管理模组以及传感管理模组。The robot includes a plurality of joints, and also includes a sensing element, an actuator element, an execution management module, and a sensing management module as described in Embodiment 1.
机器人可进一步包括上位机40。控制模组30可用于控制一个多自由度肢体或者多自由度部分结构,机器人的一个上位机40可通过控制多个控制模组30,进而协调控制机器人全身。The robot may further include a host computer 40 . The control module 30 can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure. A host computer 40 of the robot can control multiple control modules 30 to coordinately control the entire robot body.
如图3所示,控制模组30与上位机40连接。每个被控关节50与控制模组30的一个控制逻辑组件11连接形成控制环路(驱动电路、采样电路已略去);其中一控制逻辑组件11与至少另一控制逻辑组件通讯11。各被控关节50间需要交换状态信息,就是通过不同控制逻辑组件11之间的通讯来实现,以进行各关节控制量之间的解耦或者耦合。图3中控制模组30的其他组件未示意出。As shown in FIG. 3 , the control module 30 is connected to the host computer 40 . Each controlled joint 50 is connected to a control logic component 11 of the control module 30 to form a control loop (the driving circuit and sampling circuit are omitted); one of the control logic components 11 communicates with at least another control logic component 11 . Each controlled joint 50 needs to exchange status information, which is achieved through communication between different control logic components 11 to decouple or couple the control variables of each joint. Other components of the control module 30 are not shown in FIG. 3 .
本申请所提供的一种控制模组30、控制装置及机器人,有益效果在于:The beneficial effects of the control module 30, control device and robot provided by this application are:
每个控制模组30可用于控制一个多自由度肢体或者多自由度部分结构,机器人的一个上位机40可通过控制多个控制模组30,进而协调控制机器人全身。控制模组30可包括多个控制逻辑组件11;机器人的每个关节可由一个控制逻辑组件11形成控制环路,当机器人的自由度/关节较多时,控制逻辑组件11可以使得多个关节的各控制环路能并行计算,响应效率高。Each control module 30 can be used to control a multi-degree-of-freedom limb or a multi-degree-of-freedom partial structure. A host computer 40 of the robot can control multiple control modules 30 to coordinately control the entire robot body. The control module 30 may include multiple control logic components 11; each joint of the robot may form a control loop by a control logic component 11. When the robot has many degrees of freedom/joints, the control logic component 11 may make each joint of the multiple joints The control loop can be calculated in parallel and has high response efficiency.
任一控制逻辑组件11可以与至少一其它控制逻辑组件11进行单向或双向通讯、交换信息。所述任一控制逻辑组件11根据收到的信息完成控制解算。该设计的有益效果在于,若机器人的自由度/关节数量多,各自由度/关节涉及的控制模型或者控制环路间存在耦合时,控制逻辑组件11之间的信息交换能够使各控制环路完成解算,实现各关节控制量之间的解耦或者耦合。Any control logic component 11 can perform one-way or two-way communication and exchange information with at least one other control logic component 11 . The any control logic component 11 completes control calculation according to the received information. The beneficial effect of this design is that if the robot has a large number of degrees of freedom/joints and there is coupling between the control models or control loops involved in each degree of freedom/joint, the information exchange between the control logic components 11 can make each control loop Complete the solution and realize the decoupling or coupling between the control quantities of each joint.
本申请的控制模组30,各控制环路可并行计算,响应效率高。作为可重构单元10的FPGA或者可重构硬件,其搭载的各个组件可以并行执行,尤其适合解决多传感元件、多执行元件、多控制目标的情况,能够高速实时响应;当机器人的自由度/关节较多时,控制逻辑组件11可以使得多个关节的各控制环路能并行计算,响应效率高。In the control module 30 of the present application, each control loop can be calculated in parallel and has high response efficiency. As the FPGA or reconfigurable hardware of the reconfigurable unit 10, each component it carries can be executed in parallel, which is especially suitable for solving the situation of multiple sensing elements, multiple execution elements, and multiple control targets, and can respond in real time at high speed; when the robot is free When there are many degrees/joints, the control logic component 11 can enable the control loops of multiple joints to be calculated in parallel, resulting in high response efficiency.
本申请的控制模组30的通讯效率高。通用运算单元20与外围设备(如上位机40)通讯,交换第一讯息;通用运算单元20对第一讯息进行解码、编码,得到第二讯息(机器码),并以第二讯息与可重构 单元10通讯。通用运算单元20配置为ARM或DSP,ARM或DSP编解码比较高效,可以更灵活地实现、升级通讯协议、路由规则,开发便捷。尤其是使用ARM可以搭载嵌入式系统,更好的支持WiFi/以太网协议栈。通讯组件13能够与通用运算单元20通讯,对第二讯息进行编码、解码,并根据第二讯息将指令传至对应的组件如中央控制组件12、控制逻辑组件11、传感管理驱动组件15、执行管理驱动组件14中的至少一个。另外,不同控制逻辑组件11之间可进行单向或双向通讯。The control module 30 of the present application has high communication efficiency. The general-purpose computing unit 20 communicates with the peripheral device (such as the host computer 40) to exchange the first message; the general-purpose computing unit 20 decodes and encodes the first message to obtain the second message (machine code), and uses the second message with the repeatable structure Unit 10 Communication. The general computing unit 20 is configured as ARM or DSP. ARM or DSP encoding and decoding are more efficient, can more flexibly implement and upgrade communication protocols and routing rules, and facilitate development. In particular, ARM can be used to carry embedded systems and better support WiFi/Ethernet protocol stacks. The communication component 13 can communicate with the general computing unit 20, encode and decode the second message, and transmit instructions to the corresponding components according to the second message, such as the central control component 12, the control logic component 11, the sensor management driver component 15, At least one of the management driver components 14 is executed. In addition, one-way or two-way communication can be performed between different control logic components 11 .
本申请的控制模组30,从与外围设备(如上位机40)通讯获得第一讯息到对第一讯息进行解码、编码得到第二讯息的机器码,通讯协议的升级改造主要发生在通用运算单元20中,因此升级时仅需对通用运算单元20进行;便于进行升级改造。The control module 30 of the present application, from communicating with the peripheral device (such as the host computer 40) to obtain the first message to decoding and encoding the first message to obtain the machine code of the second message, the upgrade and transformation of the communication protocol mainly occurs in the general computing unit 20, so only the general-purpose computing unit 20 needs to be upgraded during upgrading; it is convenient for upgrading and transformation.
本申请的控制模组30,具有多种控制模式:可由外围设备(包括上位机40)进行全方位控制,还可由中央控制组件12进行统一协调、控制(下位机自主控制);在前者中,外围设备可以通过通讯组件13直接与传感管理驱动组件15、执行管理驱动组件14、控制逻辑组件11中的至少一个进行通讯,而不必经过中央控制组件12,响应效率高。The control module 30 of the present application has multiple control modes: it can be fully controlled by peripheral devices (including the host computer 40), and can also be coordinated and controlled by the central control component 12 (the host computer autonomously controls it); in the former, The peripheral device can directly communicate with at least one of the sensing management driver component 15, the execution management driver component 14, and the control logic component 11 through the communication component 13 without having to go through the central control component 12, so the response efficiency is high.
本申请的控制模组30支持在不同的控制模式下切换:控制模组30可根据外围设备传来的指令在不同的控制模式间切换;控制模组30也可以根据传感元件和/或执行元件的信息在不同的控制模式间切换。The control module 30 of this application supports switching between different control modes: the control module 30 can switch between different control modes according to instructions from peripheral devices; the control module 30 can also switch between different control modes according to the sensing elements and/or execution The component's information switches between different control modes.
控制模组30可支持下位机闭环控制模式;下位机闭环控制模式的好处在于:下位机响应快速,并行度好;能减少上位机40的运算压力。The control module 30 can support the closed-loop control mode of the lower computer; the advantage of the closed-loop control mode of the lower computer is that the lower computer responds quickly and has good parallelism; it can reduce the computing pressure of the upper computer 40 .
所述控制模组30可支持下位机开环控制模式;所述下位机开环控制模式的好处在于:上位机40可以直接控制到执行元件,便于调试;支持由上位机40进行全方位控制,例如上位机40采用类脑计算的控制方式,类脑神经网络可以在上位机40运行,算力比下位机更强;在下位机开环控制模式,下位机仍可以进行应急响应。The control module 30 can support the open-loop control mode of the lower computer; the advantage of the open-loop control mode of the lower computer is that the upper computer 40 can directly control the actuating components, which is convenient for debugging; it supports all-round control by the upper computer 40, For example, the upper computer 40 adopts a brain-like computing control method. The brain-like neural network can run on the upper computer 40 and has stronger computing power than the lower computer. In the open-loop control mode of the lower computer, the lower computer can still respond to emergencies.
所述控制模组30可包括信号处理组件。信号处理组件可具有多种滤波方式,所述控制模组30能够根据外围设备传来的指令在不同的滤波方式间切换。The control module 30 may include signal processing components. The signal processing component can have multiple filtering modes, and the control module 30 can switch between different filtering modes according to instructions from peripheral devices.
本申请的控制模组30能够调整传感管理模组的信号采样模式。控制模组30能够根据传感元件和/或执行元件的信息调整信号采样模式。或者,控制模组30能够根据外围设备传来的指令调整信号采样模式。The control module 30 of the present application can adjust the signal sampling mode of the sensing management module. The control module 30 can adjust the signal sampling mode according to information from the sensing element and/or the actuating element. Alternatively, the control module 30 can adjust the signal sampling mode according to instructions from the peripheral device.
本申请的控制模组30具有多种信息上传模式,能够根据需求调整信息上传模式。信息上传模式包括常规上传模式、事件触发上传模式、自适应上传模式。常规上传模式采用持续通讯方式,该方式优点是可以让上位机40持续密集监测下位机乃至整个系统的工作是否正常,数据可靠稳定。事件触发上传模式采用间歇性通讯,优点是不必实时上传所有信息,可以节省带宽。在自适应上传模式下,控制模组30根据信息的变化率,判断是否上传任一信息、上传频率,进一步节省带宽。本申请的控制模组30可根据实 际需求采用合适的信息上传模式。The control module 30 of the present application has multiple information upload modes and can adjust the information upload mode according to needs. Information upload modes include regular upload mode, event-triggered upload mode, and adaptive upload mode. The conventional upload mode uses a continuous communication method. The advantage of this method is that the host computer 40 can continuously and intensively monitor whether the lower computer and even the entire system are working normally, and the data is reliable and stable. The event-triggered upload mode uses intermittent communication. The advantage is that it does not have to upload all information in real time, which can save bandwidth. In the adaptive upload mode, the control module 30 determines whether to upload any information and the upload frequency based on the change rate of the information, thereby further saving bandwidth. The control module 30 of this application can be based on actual Adopt appropriate information upload mode according to actual needs.
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。In the above embodiments, each embodiment is described with its own emphasis. For parts that are not detailed or documented in a certain embodiment, please refer to the relevant descriptions of other embodiments.
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请。尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。 The above descriptions are only preferred embodiments of the present application and are not intended to limit the present application. Although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application do not invalidate the corresponding technical solution. Anything that essentially deviates from the spirit and scope of the technical solutions of the embodiments of this application shall be included in the protection scope of this application.
Claims (26)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210948357.7A CN117621031A (en) | 2022-08-09 | 2022-08-09 | Control modules, control devices and robots |
| CN202210948357.7 | 2022-08-09 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024032578A1 true WO2024032578A1 (en) | 2024-02-15 |
Family
ID=89850877
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/111634 Ceased WO2024032578A1 (en) | 2022-08-09 | 2023-08-08 | Control module, control apparatus and robot |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN117621031A (en) |
| WO (1) | WO2024032578A1 (en) |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101216711A (en) * | 2008-01-08 | 2008-07-09 | 哈尔滨工程大学 | Hierarchical control device and control method for amphibious mechanical crabs |
| CN101592951A (en) * | 2009-07-02 | 2009-12-02 | 上海交通大学 | Common distributed control system for humanoid robot |
| US20110071672A1 (en) * | 2009-09-22 | 2011-03-24 | Gm Global Technology Operations, Inc. | Framework and method for controlling a robotic system using a distributed computer network |
| CN105446345A (en) * | 2015-07-02 | 2016-03-30 | 浙江大学 | Control system of humanoid biped robot |
| US20160313725A1 (en) * | 2014-01-17 | 2016-10-27 | Chongqing University | A dynamically configurable intelligent controller and control method for machine tools based on dsp/fpga |
| CN109249395A (en) * | 2018-10-18 | 2019-01-22 | 清华大学深圳研究生院 | A kind of multi-functional multi-foot robot control system |
-
2022
- 2022-08-09 CN CN202210948357.7A patent/CN117621031A/en active Pending
-
2023
- 2023-08-08 WO PCT/CN2023/111634 patent/WO2024032578A1/en not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101216711A (en) * | 2008-01-08 | 2008-07-09 | 哈尔滨工程大学 | Hierarchical control device and control method for amphibious mechanical crabs |
| CN101592951A (en) * | 2009-07-02 | 2009-12-02 | 上海交通大学 | Common distributed control system for humanoid robot |
| US20110071672A1 (en) * | 2009-09-22 | 2011-03-24 | Gm Global Technology Operations, Inc. | Framework and method for controlling a robotic system using a distributed computer network |
| US20160313725A1 (en) * | 2014-01-17 | 2016-10-27 | Chongqing University | A dynamically configurable intelligent controller and control method for machine tools based on dsp/fpga |
| CN105446345A (en) * | 2015-07-02 | 2016-03-30 | 浙江大学 | Control system of humanoid biped robot |
| CN109249395A (en) * | 2018-10-18 | 2019-01-22 | 清华大学深圳研究生院 | A kind of multi-functional multi-foot robot control system |
Also Published As
| Publication number | Publication date |
|---|---|
| CN117621031A (en) | 2024-03-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3148752B1 (en) | Systems and methods for modular units in electro-mechanical systems | |
| JP5916716B2 (en) | Method for controlling an automated work cell | |
| CN102248536B (en) | Mobile mechanical arm control system used for extendable modularization | |
| US20240033025A1 (en) | Surgical robotic system with velocity limits | |
| US20230346489A1 (en) | Power management architecture for surgical robotic systems | |
| CN103324178A (en) | Wireless robot long-range control system based on WIFI | |
| CN106985140A (en) | Robot point-to-point motion control method and system | |
| WO2024032578A1 (en) | Control module, control apparatus and robot | |
| CN107030695B (en) | Robot returning to origin motion control method and system | |
| CN109391191A (en) | A kind of electric machine control system and method | |
| CN103246253A (en) | Multi-motor distributed type control system under wireless network and multi-motor distributed type control method | |
| US20230210613A1 (en) | Surgical robotic system with motion integration | |
| CN106959694B (en) | Robot linear motion control method and system | |
| CN109479520B (en) | A bilateral remote operation control method for a fruit and vegetable picking robot | |
| CN108663958B (en) | A fully automatic coupling control system of a transmission line inspection robot | |
| CN119030396A (en) | Motor servo control method and device | |
| CN103552072B (en) | A kind of robot control method based on embedded controller and device | |
| CN205353744U (en) | Delta robot drives accuse system | |
| CN105945952A (en) | A control device and control method for a mechanical gripper | |
| CN219999385U (en) | A multi-degree-of-freedom linkage auxiliary device for MIMO agricultural information interaction equipment | |
| CN103545918A (en) | Intelligent energy-saving system with power line for remotely controlling power and control method of intelligent energy-saving system | |
| KR101229911B1 (en) | Method for communication between upper controller for controlling movement of robot arm and main controller for driving many articulations of robot arm | |
| CN105071741A (en) | Apparatus and method for controlling geared motor with limit switch | |
| CN115026811A (en) | A multi-robot serial port to WIFI communication and collaborative motion control method | |
| CN210256165U (en) | Mobile manipulator teleoperation device based on game handle |
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: 23851799 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 23851799 Country of ref document: EP Kind code of ref document: A1 |