Robot arm brain-like control method and apparatus based on spiking neural network
By constructing a robotic arm control model based on a spiking neural network and combining modules of the cerebellum, thalamus, brainstem, and spinal cord to output torque control commands, the problem of insufficient control accuracy and adaptability of robotic arms in complex scenarios is solved, and more efficient load adaptability is achieved.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- TSINGHUA UNIVERSITY
- Filing Date
- 2025-01-13
- Publication Date
- 2026-06-25
AI Technical Summary
Existing robotic arms, due to the differences in the size and mass of the objects they manipulate in complex work scenarios, suffer from limited versatility of ANN-based adaptive control algorithms, while SNN-based algorithms have low control accuracy and poor dynamic performance, making them difficult to adapt to control tasks under various complex load conditions.
A robotic arm control model based on a spiking neural network is constructed, including a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module. The robotic arm control model is constructed through pulse coding and feedforward torque, and the torque control command of the target robotic arm is output.
It improves the control accuracy and dynamic performance of the robotic arm under complex load conditions, enhances its adaptability to different tasks, and solves the problem of the versatility of robotic arm control in complex scenarios.
Smart Images

Figure CN2025072084_25062026_PF_FP_ABST
Abstract
Description
Brain-like Control Method and Device for Robotic Arms Based on Spiking Neural Networks
[0001] Cross-reference to related applications
[0002] This application claims priority to Chinese Patent Application No. 202411853092.8, filed by Tsinghua University on December 16, 2024, entitled "Brain-like Control Method and Device for Robotic Arm Based on Spiking Neural Network". Technical Field
[0003] This application relates to the field of robotic arm control technology, and in particular to a brain-like control method and device for robotic arms based on spiking neural networks. Background Technology
[0004] Robotic arms, as automated control devices that mimic the functions of human arms and can perform various tasks, have been gradually applied to various industrial fields since the 1980s, such as assembly, painting, and welding. With the development of actuator and material technologies, the degrees of freedom of robotic arms have gradually increased while costs have continued to decrease, enabling them to perform more precise operations. In recent years, they have gradually expanded into medical, service, and entertainment fields. However, compared to living organisms in nature, even the most advanced robotic arms cannot compare to the manipulative abilities of even an ant, let alone achieve the dexterity of a human arm.
[0005] In related technologies, with the development of brain science and computing hardware, humans have gradually gained a clearer understanding of biology, especially the physiological structure and function of humans. For example, an adaptive control framework based on ANN (Artificial Neural Network) can be used, which to some extent mimics human learning abilities by utilizing neural networks, providing a solution for controlling robotic arms in complex application environments. Furthermore, the neurons of SNN (Spiking Neural Network) transmit information between neurons through discrete pulses and can store temporal-spatial information using cell membrane potentials, thus possessing a natural advantage in robotic arm control. Therefore, SNNs can be combined with the human central nervous system to control robotic arms, as SNNs have a strong ability to adapt to the environment.
[0006] However, in related technologies, in complex working scenarios, due to the influence of the size and mass of the manipulated object, the working requirements of the robotic arm when performing different tasks may vary significantly, thereby impairing the versatility of ANN-based adaptive control algorithms. Meanwhile, SNN-based algorithms have low control accuracy and poor dynamic performance during the control process. They rely on dynamic models for gravity compensation and cannot adapt well to control tasks under various complex load conditions, so they urgently need improvement. Summary of the Invention
[0007] This application provides a brain-like control method and device for robotic arms based on spiking neural networks, to solve the problems in related technologies, such as the significant differences in the working requirements of robotic arms when performing different tasks in complex working scenarios due to the influence of the size and mass of the manipulated object, which impairs the versatility of ANN-based adaptive control algorithms, while SNN-based algorithms have low control accuracy, poor dynamic performance during control, rely on dynamic models for gravity compensation, and cannot well adapt to control tasks under various complex load conditions.
[0008] The first aspect of this application provides a brain-like control method for a robotic arm based on a spiking neural network, applied in the model building stage. The method includes the following steps: constructing a cerebellar module of the robotic arm control model based on a spiking neural network to obtain an initial torque command for the target robotic arm; constructing a thalamic module of the robotic arm control model based on the initial torque command, and adjusting the initial torque command using the thalamic module to obtain a final torque command corresponding to the initial torque command; constructing a brainstem module of the robotic arm control model using the final torque command to obtain a feedforward torque for the target robotic arm; constructing a spinal cord module of the robotic arm control model based on pulse coding and the feedforward torque, and combining the spinal cord module, the cerebellar module, the thalamic module, and the brainstem module to construct the robotic arm control model, and outputting a torque control command for the target robotic arm using the robotic arm control model.
[0009] Optionally, in one embodiment of this application, the cerebellum module for constructing the robotic arm control model based on the spiking neural network includes: constructing an initial cerebellum module of the robotic arm control model based on the spiking neural network and non-excited spiking neurons; and training the initial cerebellum module using the oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and MSE (Mean Squared Error) of the target robotic arm to obtain the cerebellum module.
[0010] Optionally, in one embodiment of this application, the step of constructing the thalamic module of the robotic arm control model based on the initial torque command includes: constructing an initial thalamic module of the robotic arm control model based on a fully connected spiking neural network and neurons; and training the initial thalamic module using a first loss function based on the initial torque command to obtain the thalamic module.
[0011] Optionally, in one embodiment of this application, the step of constructing the brainstem module of the robotic arm control model using the final torque command includes: establishing a first part of the brainstem module based on a spiking neural network, spiking neurons, and a second loss function; and constructing a second part of the brainstem module based on a single-layer neural network and the final torque command, so as to obtain the brainstem module using the first part and the second part.
[0012] Optionally, in one embodiment of this application, the spinal cord module for constructing the robotic arm control model based on pulse coding and the feedforward torque includes: obtaining the velocity information pulse train and position information pulse train of the target robotic arm through nerve fibers and pulse coding based on the planned trajectory and the actual trajectory; and constructing the spinal cord module according to the velocity information pulse train, the position information pulse train, the feedforward torque, and neurons.
[0013] A second aspect of this application provides a brain-like control method for a robotic arm based on a spiking neural network, applied in the model application stage. The method includes the following steps: acquiring control commands for a robotic arm in a working state; inputting the control commands into a pre-constructed robotic arm control model to output torque control commands for the robotic arm, wherein the pre-constructed robotic arm control model comprises at least one of a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module; and controlling the robotic arm to output corresponding torque based on the torque control commands.
[0014] A third aspect of this application provides a brain-like control device for a robotic arm based on a spiking neural network, applied in the model building stage. The device includes: a first construction module for constructing a cerebellar module of the robotic arm control model based on a spiking neural network, to obtain an initial torque command for the target robotic arm using the cerebellar module; a second construction module for constructing a thalamic module of the robotic arm control model based on the initial torque command, and adjusting the initial torque command using the thalamic module to obtain a final torque command corresponding to the initial torque command; a third construction module for constructing a brainstem module of the robotic arm control model using the final torque command, to obtain a feedforward torque for the target robotic arm; and a fourth construction module for constructing a spinal cord module of the robotic arm control model based on pulse coding and the feedforward torque, and combining the spinal cord module, the cerebellar module, the thalamic module, and the brainstem module to construct the robotic arm control model, so as to output a torque control command for the target robotic arm using the robotic arm control model.
[0015] Optionally, in one embodiment of this application, the first construction module includes: a first construction unit, configured to construct an initial cerebellum module of the robotic arm control model based on the spiking neural network and non-excited spiking neurons; and a first generation unit, configured to train the initial cerebellum module using the oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and MSE of the target robotic arm to obtain the cerebellum module.
[0016] Optionally, in one embodiment of this application, the second construction module includes: a second construction unit, used to construct an initial thalamic module of the robotic arm control model based on a fully connected spiking neural network and neurons; and a second generation unit, used to train the initial thalamic module based on the initial torque command using a first loss function to obtain the thalamic module.
[0017] Optionally, in one embodiment of this application, the third construction module includes: a third construction unit, configured to establish a first part of the brainstem module based on a spiking neural network, spiking neurons, and a second loss function; and a third generation unit, configured to construct a second part of the brainstem module based on a single-layer neural network and the final torque command, so as to obtain the brainstem module using the first part and the second part.
[0018] Optionally, in one embodiment of this application, the fourth construction module includes: a fourth generation unit, used to obtain the velocity information pulse train and the position information pulse train of the target robotic arm through nerve fibers and the pulse coding based on the planned trajectory and the actual trajectory; and a fourth construction unit, used to construct the spinal cord module according to the velocity information pulse train, the position information pulse train, the feedforward torque and neurons.
[0019] A fourth aspect of this application provides a brain-like control device for a robotic arm based on a spiking neural network, applied in the model application stage. The device includes: an acquisition module for acquiring control commands of a robotic arm in a working state; an input module for inputting the control commands into a pre-constructed robotic arm control model to output torque control commands for the robotic arm, wherein the pre-constructed robotic arm control model comprises at least one of a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module; and an output module for controlling the robotic arm to output corresponding torque based on the torque control commands.
[0020] A fifth aspect of this application provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the neuromorphic control method for a robotic arm based on a spiking neural network as described in the above embodiments.
[0021] A sixth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described brain-like control method for a robotic arm based on a spiking neural network.
[0022] A seventh aspect of this application provides a computer program product, including a computer program that, when executed, implements the above-described brain-like control method for a robotic arm based on a spiking neural network.
[0023] This application's embodiments can construct a cerebellum module based on a spiking neural network, a thalamus module based on initial torque commands, a brainstem module using final torque commands, and a spinal cord module based on feedforward torques. Then, a robotic arm control model is constructed by combining the spinal cord, cerebellum, thalamus, and brainstem modules. This robotic arm control model outputs torque control commands for the target robotic arm. By constructing a robotic arm control model, the problem of poor versatility in robotic arm control algorithms is solved, enabling it to handle complex loads. This addresses the issues in related technologies where, in complex working scenarios, the size and mass of the manipulated object significantly affect the working requirements of the robotic arm when performing different tasks, thus impairing the versatility of ANN-based adaptive control algorithms. Furthermore, SNN-based algorithms suffer from low control accuracy, poor dynamic performance during control, reliance on dynamic models for gravity compensation, and an inability to adapt well to control tasks under various complex load conditions.
[0024] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0025] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:
[0026] Figure 1 is a flowchart of a brain-like control method for a robotic arm based on a spiking neural network according to an embodiment of this application;
[0027] Figure 2 is a schematic diagram of the framework of a robotic arm control model constructed according to an embodiment of this application;
[0028] Figure 3 is a block diagram of a brain-like control device for a robotic arm based on a spiking neural network according to an embodiment of this application;
[0029] Figure 4 is a flowchart of a brain-like control method for a robotic arm based on a spiking neural network according to another embodiment of this application.
[0030] Figure 5 is a schematic diagram of the curve of joint position error changing with time during the operation of a robotic arm according to an embodiment of this application;
[0031] Figure 6 is a schematic diagram of the weights provided by the thalamic module according to an embodiment of this application as a function of load quality;
[0032] Figure 7 shows the joints k of the robotic arm during operation according to an embodiment of this application. p and k d A schematic diagram of the curve changing over time;
[0033] Figure 8 is a schematic diagram of the PD algorithm with an accurate dynamic model and the curves of joint error as a function of load mass in three trajectory tracking tasks according to an embodiment of this application.
[0034] Figure 9 is a schematic diagram of the curves showing the change of joint error with load mass in three trajectory tracking tasks according to an embodiment of this application, without an accurate dynamic model.
[0035] Figure 10 is a block diagram of the workspace and joint space trajectory curves in a 2kg load three-dimensional figure-eight trajectory tracking task according to an embodiment of this application;
[0036] Figure 11 is a block diagram of a brain-like control device for a robotic arm based on a spiking neural network according to another embodiment of this application;
[0037] Figure 12 is a schematic diagram of the structure of an electronic device provided according to an embodiment of this application.
[0038] Figure label:
[0039] Wherein: 30-brain-like control device for robotic arm based on spiking neural network; 301-first building module, 302-second building module, 303-third building module, 304-fourth building module; 110-brain-like control device for robotic arm based on spiking neural network; 1101-acquisition module, 1102-input module, 1103-output module; 1201-memory, 1202-processor, 1203-communication interface. Detailed Implementation
[0040] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.
[0041] The following describes, with reference to the accompanying drawings, a brain-like control method and apparatus for a robotic arm based on a spiking neural network, according to embodiments of this application. Addressing the issues mentioned in the background art, where the size and mass of the manipulated object in complex work scenarios can significantly affect the working requirements of a robotic arm performing different tasks, thus impairing the versatility of ANN-based adaptive control algorithms, and where SNN-based algorithms suffer from low control accuracy, poor dynamic performance during control, reliance on dynamic models for gravity compensation, and inability to adapt well to control tasks under various complex load conditions, this application provides a brain-like control method for a robotic arm based on a spiking neural network. In this method, a cerebellum module can be constructed based on a spiking neural network, a thalamus module based on initial torque commands, a brainstem module using final torque commands, and a spinal cord module based on feedforward torque. Furthermore, a robotic arm control model is constructed by combining the spinal cord, cerebellum, thalamus, and brainstem modules. This robotic arm control model outputs torque control commands for the target robotic arm, thus solving the problem of poor versatility in robotic arm control algorithms and enabling them to handle complex loads. This solves the problems in related technologies, such as the significant differences in the working requirements of robotic arms when performing different tasks in complex working scenarios due to the influence of the size and mass of the manipulated object, which impairs the versatility of ANN-based adaptive control algorithms, while SNN-based algorithms have low control accuracy, poor dynamic performance during control, rely on dynamic models for gravity compensation, and cannot adapt well to control tasks under various complex load conditions.
[0042] Before introducing the methods proposed in the embodiments of this application, the relevant concepts involved in the embodiments of this application will be explained first.
[0043] Spiking neurons and spiking neural networks
[0044] In SNNs, neurons transmit information through bursts of impulses, which can be, but is not limited to, represented as: S(t)=∑ f δ(t f -t0),
[0045] Where f = 1, 2, ... are pulse numbers, δ(·) is the Dirac function, and t f t0 is the initial time, and t0 is the pulse firing time. The input current signal generated by a series of pulses acting on a neuron can be represented, but is not limited to, as:
[0046] Where, τ s It is a time constant
[0047] In related technologies, many spiking neuron models have been proposed. Among them, the LIF (Leaky Integrate and Fire) model can not only characterize the dynamic process of cell membrane potential accumulation and leakage, but also maintain high computational efficiency. Therefore, this application focuses on discussing the LIF model. The change in neuronal membrane potential u caused by the neuron's input current can be expressed by, but is not limited to, the following relationship:
[0048] Where, τ m τ is the time constant describing potential leakage. m =RC, where R is the cell membrane resistance, C is the cell membrane capacitance, and u reset i is the electrical potential after neuron repositioning, i0(t) is the external current driving the neuronal state, and i j (t) is the input current of the j-th synapse, w j is the strength of the j-th synapse, and u(t) is the electrical potential of the cell membrane at the current moment.
[0049] Furthermore, in the embodiments of this application, when the cell membrane potential exceeds the excitation threshold u... firc Afterward, the neuron sends a pulse, which can be expressed, but is not limited to, as: s(t)=Θ(u(t)-u fire ),
[0050] Where s(t) is the pulse train function, and Θ(x) is the activation function. The expression for Θ(x) can be, but is not limited to, as follows:
[0051] Then the cell membrane potential is reset to u reset .
[0052] Furthermore, the neural network constructed using spiking neurons in this embodiment is called a SNN, and a key issue with the SNN in this embodiment is how to train it. Since the spiking between neurons is not differentiable, directly calculating its gradient may lead to network instability. In related technologies, ANNs can be trained based on backpropagation. During backpropagation, the gradient of the approximate function is used instead of the gradient of the spiking. This method allows for the convenient transfer of the relevant framework of ANNs to SNNs for network training.
[0053] In addition to the above, SNN applications also face encoding and decoding challenges. There are two main encoding methods: Poisson coding and constant-current input coding. Poisson coding encodes the input data as a pulse sequence with a firing frequency distribution following a Poisson process; constant-current input coding uses a fully connected network of spiking neurons as an encoder. There are two main decoding methods: one is to use the firing frequency of the output layer neurons within a time window; the other is to set the threshold of the output layer neurons to infinity, preventing them from firing pulses, and using the membrane potential at the last moment of the neuron as the output value.
[0054] Specifically, Figure 1 is a flowchart of a brain-like control method for a robotic arm based on a spiking neural network according to an embodiment of this application.
[0055] As shown in Figure 1, this brain-like control method for robotic arms based on spiking neural networks is applied in the model building stage. The method includes the following steps:
[0056] In step S101, a cerebellum module is constructed based on a spiking neural network to build a robotic arm control model, so as to obtain the initial torque command of the target robotic arm using the cerebellum module.
[0057] As can be seen from the above analysis, the embodiments of this application can construct a cerebellum module of the robotic arm control model based on a spiking neural network, and then use the cerebellum module to obtain the initial torque command of the target robotic arm.
[0058] Optionally, in one embodiment of this application, the cerebellum module for constructing a robotic arm control model based on a spiking neural network includes: constructing an initial cerebellum module for the robotic arm control model based on a spiking neural network and non-excited spiking neurons; and training the initial cerebellum module using the target robotic arm's oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and MSE to obtain the cerebellum module.
[0059] As one possible implementation, embodiments of this application can construct an initial cerebellum module of a robotic arm control model based on a spiking neural network and non-excited spiking neurons, and train the initial cerebellum module using the oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and MSE of the target robotic arm, thereby obtaining the cerebellum module.
[0060] For example, in this embodiment of the application, under the condition that the robotic arm dynamics model is determined, the gravity compensation torque is actually a nonlinear mapping from joint position to joint torque. In the field of machine learning, the task of fitting observed data into a curve through supervised learning is called a regression task, and there is already a wealth of research and mature methods for regression tasks in related fields. In this embodiment of the application, the training data used for training can be generated by the robotic arm dynamics model, and the gravity compensation requirement can be met through the regression task when the training data can cover the workspace.
[0061] Further, as shown in Figure 2, the initial cerebellar module constructed in this embodiment is indicated by the dashed box of the initial cerebellar module. It is a four-layer recurrent spiking neural network, and the actual position of the joints... The neurons in the second layer are connected in a fully connected manner to 300 spiking neurons. Next, in this embodiment, they are connected in a similar fully connected manner to 200 neurons in the third layer. In this embodiment, the neurons in the third layer receive information not only from the neurons in the second layer but also from the previous time step. Finally, the output of the third layer is output to 140 non-excited spiking neurons in the fourth layer in a fully connected manner. In this embodiment, the neurons in the fourth layer are averaged in groups of 20, thereby outputting 7 torques.
[0062] Therefore, embodiments of this application may, but are not limited to, using oblique circular trajectories, planar figure-eight trajectories, and planar circular trajectories for training, and using MSE as the loss function; this application does not impose specific limitations. The expression for the oblique circular trajectory may, but is not limited to, be:
[0063] The expression for a planar figure-eight trajectory can be, but is not limited to, as follows:
[0064] The expression for a planar circular trajectory can be, but is not limited to, expressed as:
[0065] Among them, R c =R e =0.14, T c =3s,T e =4s, θ0=30°, 50 cycles for each trajectory.
[0066] It is important to note that, in this embodiment, while humans do not require an accurate dynamic model when manipulating objects with their arms, they can correct their movement patterns by sensing the weight of objects. Therefore, this embodiment constructs two gravity compensation modes—light (no load) and heavy (3kg load)—in the cerebellar module and trains them separately, resulting in two sets of SNNs. During operation, both sets of SNNs can receive the actual joint position q. a It also provides an initial torque command, which can be, but is not limited to, expressed as:
[0067] In step S102, a thalamic module of the robotic arm control model is constructed based on the initial torque command, and the initial torque command is adjusted using the thalamic module to obtain the final torque command corresponding to the initial torque command.
[0068] In some embodiments, the present application can construct a thalamic module of the robotic arm control model based on an initial torque command, and then adjust the initial torque command to obtain the final torque command.
[0069] Optionally, in one embodiment of this application, the thalamic module for constructing a robotic arm control model based on an initial torque command includes: constructing an initial thalamic module for constructing a robotic arm control model based on a fully connected spiking neural network and neurons; and training the initial thalamic module using a first loss function based on the initial torque command to obtain the thalamic module.
[0070] In some embodiments, the present application embodiments can construct an initial thalamic module based on a fully connected network and neurons, and train the initial thalamic module according to an initial torque command and a first loss function to obtain the thalamic module.
[0071] For example, in this embodiment, force sensor data from the end effector of a robotic arm enables the initial thalamus module to "sense" the weight of objects like a human. This allows reinforcement learning to assign weights to the initial torque commands given by the cerebellum module in two gravity compensation modes, thus addressing loads of different masses and shapes. In this embodiment, the initial thalamus module can be a three-layer fully connected network. The input from the 6-dimensional force sensor passes through a fully connected layer with five hidden neurons and a two-neuron output layer to obtain two weights. The initial thalamus module constructed in this embodiment can be as shown in Figure 2.
[0072] Furthermore, in this embodiment, based on the initial torque command, an initial thalamic module is trained using a first loss function to obtain the thalamic module. The expression of the first loss function may be, but is not limited to, as follows:
[0073] Where, q d,j ,qa,j , These are the planned joint position, the actual joint position, the planned joint velocity, and the actual joint velocity, respectively, j = 1, ..., 7.
[0074] In step S103, the brainstem module of the robotic arm control model is constructed using the final torque command to obtain the feedforward torque of the target robotic arm.
[0075] In actual execution, the embodiments of this application can use the final torque command to construct a brainstem module to obtain the feedforward torque of the target robotic arm.
[0076] Optionally, in one embodiment of this application, constructing a brainstem module of a robotic arm control model using a final torque command includes: establishing a first part of the brainstem module based on a spiking neural network, spiking neurons, and a second loss function; and constructing a second part of the brainstem module based on a single-layer neural network and a final torque command, so as to obtain the brainstem module using the first part and the second part.
[0077] In some embodiments, the brainstem module of this application can be functionally divided into two independent parts, as shown in Figure 2. The first part can be viewed as a three-layer spiking neural network trained through reinforcement learning. In this embodiment, the input to the brainstem module is a vector composed of the planned position and velocity of each joint and the actual position and velocity. This input is output in a fully connected manner to a hidden layer with 10 spiking neurons, and then output in a fully connected manner to a vector of 14 elements. Each represents k for each joint. p Parameters and k d Parameters. During training, the second loss function can be used as the loss function, and its expression can be, but is not limited to, as follows:
[0078] Where, q d,j ,q a,j , τ j These are the planned joint position, the actual joint position, the planned joint velocity, the actual joint velocity, and the output torque of the spinal cord module, j = 1, ..., 7.
[0079] Therefore, the second loss function in this application embodiment mainly includes three terms, which represent minimizing position error, minimizing velocity error, and minimizing torque as much as possible.
[0080] The second part can be viewed as a simple single-layer neural network, consisting of 7 non-excited spiking neurons. These neurons receive torque from the thalamic module, meaning the amount of charge on the cell membrane potential at each moment can be expressed, but is not limited to, as: δu(t)=w1τ1+w2τ2,
[0081] In this embodiment of the application, the corresponding cell membrane potential can be, but is not limited to, expressed as:
[0082] Where T is the time constant.
[0083] Therefore, the embodiments of this application can achieve smoothing and filtering of the final torque command through the timing characteristics of the cell membrane potential itself, and take τ g u(t) is output as the feedforward torque at each moment to the spinal cord module.
[0084] Optionally, in one embodiment of this application, the spinal cord module for constructing the control model of the robotic arm using pulse coding and feedforward torque includes: obtaining the velocity information pulse train and position information pulse train of the target robotic arm through nerve fibers and pulse coding based on the planned trajectory and the actual trajectory; and constructing the spinal cord module based on the velocity information pulse train, position information pulse train, feedforward torque, and neurons.
[0085] In some embodiments, the planned trajectory and actual proprioceptive feedback of this application, after entering the spinal cord module, can first be encoded into a discrete pulse sequence, with each joint being independent, and the planned trajectory q of each joint... d,j ,q a,j The values j = 1, ..., 7 activate the input nerve fibers, as shown by the dotted line in Figure 2. The actual proprioceptive feedback... This has an inhibitory effect, as shown by the dotted line in Figure 2. Mathematically, this process is equivalent to subtracting the two. The output generated by the input nerve fiber then enters the Poisson encoding stage, obtaining the velocity information pulse train and the position information pulse train of the target robotic arm. The expression for the position information pulse train can be, but is not limited to, expressed as:
[0086] The expression for the velocity information pulse train can be, but is not limited to, expressed as:
[0087] Among them, u i ~U(0,1), [s q,j,i ], i = 1, ..., 100 are pulse trains containing position information, [s dq,j,i ], i = 1, ..., 100 is the pulse train of velocity information, Δq j , j = 1, ..., 7 represent the position error limit and velocity error limit for each joint, respectively.
[0088] Therefore, in this embodiment, each input nerve fiber is connected to a group of 100 modules. In this embodiment, 50 modules are responsible for processing positive numbers, and 50 modules are responsible for processing negative numbers. This structure corresponds to the paired action characteristic of human muscles, i.e., the characteristic of agonist-antagonist muscles. Each module generates a random number uniformly distributed between 0 and 1. When the absolute value of the input nerve fiber output is greater than this random number, the encoding result is 1 or -1 (depending on whether the agonist or antagonist muscle is being encoded); otherwise, it is 0.
[0089] Therefore, in this embodiment, two sets of discrete pulses can be obtained: a velocity information pulse train and a position information pulse train, and these can be respectively processed by k... p Parameters and k d The adjustment is used to stimulate the activity of non-excited neurons, that is, to obtain the charge of the cell membrane potential at the current moment, which can be expressed, but is not limited to, as:
[0090] Where, τ g (t)=[τ g,j [(t)],j=1,…,7 is the feedforward torque of the brainstem module filter output.
[0091] This allows us to obtain the corresponding cell membrane potential at the current moment, which can be, but is not limited to, expressed as:
[0092] Where T is the time constant, u j (t-1) is the cell membrane potential at the previous moment.
[0093] Furthermore, in the embodiments of this application, τ(t) = [u j [t],j=1,…,7 is output to the actuator in real time as torque control commands. In this form, the output torque at the current moment combines the information of this moment with the information of a past period. Therefore, compared with ANN, it is more suitable for robot control of time-continuous tasks and, theoretically, has better biological basis.
[0094] In step S104, the spinal cord module of the robotic arm control model is constructed using pulse coding and feedforward torque. The robotic arm control model is then constructed by combining the spinal cord module, cerebellum module, thalamus module, and brainstem module, so as to output the torque control command of the target robotic arm using the robotic arm control model.
[0095] As one possible implementation method, embodiments of this application can construct a robotic arm control model based on a spinal cord module, a cerebellum module, a thalamus module, and a brainstem module, and then use the robotic arm control model to output torque control commands for the target robotic arm.
[0096] For example, a schematic diagram of the robotic arm control model constructed in this application embodiment can be shown in Figure 2. The robotic arm control model includes four modules: cerebellum module, thalamus module, thalamus module and brainstem module.
[0097] The cerebellum module learns several different dynamic modes of the robotic arm in advance using a data-driven approach, and provides corresponding initial torque commands based on the current motion information during operation.
[0098] The thalamic module uses feedback from the force sensor at the end of the robotic arm to dynamically learn and adjust the initial torque command from the cerebellar module during operation, thus obtaining the final torque command.
[0099] The brainstem module integrates the final torque command from the thalamus module into a feedforward torque, and dynamically learns and adjusts the proportional parameter k of the feedback control loop during operation. p and k d .
[0100] The spinal cord module performs functions similar to a PD (Proportional Derivative) controller. It integrates feedback and planning quantities to obtain feedback torque, which is then combined with feedforward torque to provide real-time torque control commands to the robotic arm.
[0101] Additionally, it should be noted that different control cycles are introduced between different modules in the embodiments of this application. According to the hierarchical structure from low to high, namely spinal cord-brainstem and thalamus-cerebellum, their control cycles are also set from short to long as T1, T2, and T3, as shown in single-line frame, double-line frame, and triple-line frame.
[0102] The brain-like control method for robotic arms based on spiking neural networks proposed in this application can construct a cerebellum module based on spiking neural networks, a thalamus module based on initial torque commands, a brainstem module based on final torque commands, and a spinal cord module based on feedforward torques. Then, a robotic arm control model is constructed by combining the spinal cord, cerebellum, thalamus, and brainstem modules. This robotic arm control model outputs torque control commands for the target robotic arm. By constructing the robotic arm control model, the problem of poor versatility in robotic arm control algorithms is solved, enabling it to handle complex loads. This addresses the issues in related technologies where, in complex working scenarios, the working requirements of robotic arms may vary significantly due to the size and mass of the manipulated object, thus impairing the versatility of ANN-based adaptive control algorithms. Furthermore, SNN-based algorithms suffer from low control accuracy, poor dynamic performance during control, reliance on dynamic models for gravity compensation, and an inability to adapt well to control tasks under various complex load conditions.
[0103] Next, referring to the accompanying drawings, a brain-like control device for a robotic arm based on a spiking neural network, according to an embodiment of this application, is described.
[0104] Figure 3 is a block diagram of a brain-like control device for a robotic arm based on a spiking neural network according to an embodiment of this application.
[0105] As shown in Figure 3, the brain-like control device 30 for the robotic arm based on spiking neural network is applied in the model building stage. The device includes: a first building module 301, a second building module 302, a third building module 303, and a fourth building module 304.
[0106] The first construction module 301 is a cerebellum module used to construct a robotic arm control model based on a spiking neural network, so as to obtain the initial torque command of the target robotic arm using the cerebellum module.
[0107] The second construction module 302 is used to construct a thalamic module of the robotic arm control model based on the initial torque command, and to adjust the initial torque command using the thalamic module to obtain the final torque command corresponding to the initial torque command.
[0108] The third construction module 303 is a brainstem module used to construct the control model of the robotic arm using the final torque command, so as to obtain the feedforward torque of the target robotic arm.
[0109] The fourth construction module 304 is used to construct the spinal cord module of the robotic arm control model using pulse coding and feedforward torque, and combines the spinal cord module, cerebellum module, thalamus module and brainstem module to construct the robotic arm control model, so as to output the torque control command of the target robotic arm using the robotic arm control model.
[0110] Optionally, in one embodiment of this application, the first building module 301 includes: a first building unit and a first generation unit.
[0111] The first building unit is used as the initial cerebellum module for constructing the robotic arm control model based on spiking neural networks and non-excited spiking neurons.
[0112] The first generation unit is used to train the initial cerebellar module using the target robotic arm's oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and MSE, in order to obtain the cerebellar module.
[0113] Optionally, in one embodiment of this application, the second building module 302 includes: a second building unit and a second generation unit.
[0114] The second building unit is the initial thalamic module used to build a robotic arm control model based on a fully connected spiking neural network and neurons.
[0115] The second generation unit is used to train the initial thalamic module based on the initial torque command and through the first loss function to obtain the thalamic module.
[0116] Optionally, in one embodiment of this application, the third building module 303 includes: a third building unit and a third generation unit.
[0117] The third building unit is used to establish the first part of the brainstem module based on spiking neural networks, spiking neurons, and a second loss function.
[0118] The third generation unit is used to construct the second part of the brainstem module based on a single-layer neural network and the final torque command, so as to obtain the brainstem module by utilizing the first part and the second part.
[0119] Optionally, in one embodiment of this application, the fourth building module 304 includes: a fourth generation unit and a fourth building unit.
[0120] The fourth generation unit is used to obtain the speed information pulse train and position information pulse of the target robotic arm through nerve fibers and pulse coding based on the planned trajectory and the actual trajectory.
[0121] The fourth building unit is used to construct the spinal cord module based on velocity information pulse trains, position information pulse trains, feedforward torques, and neurons.
[0122] It should be noted that the foregoing explanation of the embodiment of the brain-like control method for robotic arms based on spiking neural networks also applies to the brain-like control device for robotic arms based on spiking neural networks in this embodiment, and will not be repeated here.
[0123] The brain-like control device for a robotic arm based on a spiking neural network proposed in this application can construct a cerebellum module based on a spiking neural network, a thalamus module based on initial torque commands, a brainstem module using final torque commands, and a spinal cord module based on feedforward torques. Then, a robotic arm control model is constructed by combining the spinal cord, cerebellum, thalamus, and brainstem modules. This robotic arm control model outputs torque control commands for the target robotic arm. By constructing the robotic arm control model, the problem of poor versatility in robotic arm control algorithms is solved, enabling it to handle complex loads. This addresses the issues in related technologies where, in complex working scenarios, the size and mass of the manipulated object can significantly affect the working requirements of the robotic arm when performing different tasks, thus impairing the versatility of ANN-based adaptive control algorithms. Furthermore, SNN-based algorithms suffer from low control accuracy, poor dynamic performance during control, reliance on dynamic models for gravity compensation, and an inability to adapt well to control tasks under various complex load conditions.
[0124] The above embodiments describe the model building phase. The following describes the embodiments for the testing and application phase.
[0125] Figure 4 is a flowchart of a brain-like control method for a robotic arm based on a spiking neural network according to another embodiment of this application.
[0126] As shown in Figure 4, this brain-like control method for robotic arms based on spiking neural networks is applied in the model application stage. The method includes the following steps:
[0127] In step S401, control commands for the robotic arm in the working state are obtained.
[0128] In step S402, control commands are input into a pre-built robotic arm control model to output torque control commands for the robotic arm. The pre-built robotic arm control model consists of at least one of a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module.
[0129] In step S403, the robotic arm is controlled to output the corresponding torque based on the torque control command.
[0130] In some embodiments, the control commands of the robotic arm in operation can be input into a pre-built robotic arm control model, thereby outputting a torque control command for the robotic arm, and obtaining the corresponding torque of the robotic arm by controlling the torque control command.
[0131] For example, this application embodiment will conduct simulation experiments to verify and demonstrate the superiority of the pre-built robotic arm control model. In this application embodiment, all simulation experiments are conducted on an XX workstation equipped with an XX graphics card and an XX CPU. The simulation environment is PyBulllet, the simulation language is Python, the deep learning framework is PyTorch, the spiking neural network framework is SpikingJelly, and the robotic arm simulation control model is XX from XX company.
[0132] In the trajectory tracking task of this application embodiment, joint positions will generate errors, and the root mean square error (RMSE) changing with time is shown in Figure 5. The expression for the RMS error can be, but is not limited to, as follows:
[0133] As shown in Figure 5, in this embodiment, the robotic arm initially has a 1.5kg load at the end effector, and converges to a stable working state after about 2 seconds. After running for 12 seconds, an additional 1kg load is applied to the end effector, and similarly, the convergence time is only about 2 seconds. After running for another 12 seconds, the additional load is removed, and the algorithm still converges within 2 seconds. It can be seen that the dynamic performance of this embodiment is good, and it can quickly respond to changes in the end effector load mass.
[0134] Figure 6 shows the curves of the two weights generated by the thalamic module changing with the end load. It can be seen that the greater the end load mass in this embodiment, the greater the torque weight assigned to the heavy object mode, and the smaller the torque weight assigned to the light object mode. This indicates that the effect of the thalamic module adjusting the torque weights of different modes through reinforcement learning has certain biomimetic characteristics.
[0135] Furthermore, related physiological studies have shown that the stiffness and damping of joints in the human arm exhibit an inverse correlation. Stiffness decreases as joint movement begins, and increases when at rest; damping decreases as the joint approaches a target, and increases as movement begins. Figure 7(a) illustrates the k-axis of a portion of the joints during operation. p and k d The curves showing the changes during the movement, Figure 7(b) shows the k curve of another part of the joint during the working process. p and k dThe change curves during the movement are shown as solid and dashed lines, respectively. As can be seen from Figure 7, the two parameters of each joint show basically opposite trends, indicating that the effect of the brainstem module adjusting joint stiffness and damping through reinforcement learning has certain biomimetic characteristics. Furthermore, this embodiment also notes that this characteristic is not particularly pronounced in some joints near the bottom, possibly because these joints are affected by the coupled movements of other joints. Combining Figures 6 and 7, this embodiment is not only biomimetic in structure but also possesses a certain degree of biomimetic functionality.
[0136] Figures 8 and 9 show the comparison curves of joint error as a function of load mass for the embodiments of this application and the PD algorithm with an accurate dynamic model, and the comparison curves of joint error as a function of load mass for the PD algorithm without an accurate dynamic model in three trajectory tracking tasks. The dashed line represents the PD algorithm. In this embodiment, the root mean square error of joint position in the trajectory tracking task can be, but is not limited to, expressed as:
[0137] Where N is the simulation duration of a trajectory.
[0138] Furthermore, unless otherwise specified, in all experiments involving the PD algorithm in this application, the parameters can be, but are not limited to, expressed as: k p =[200,100,600,100,200,100,100],k d=[20,30,40,3,10,10,3]. Further, this embodiment assumes that the PD algorithm can accurately obtain the dynamic model of the end load through identification, thereby utilizing a precise gravity compensation torque, as shown in Figure 8. As can be seen from Figure 8, when a 1kg load is attached to the end, the PD algorithm achieves a smaller trajectory tracking error in the first two trajectory tracking tasks compared to this embodiment; however, in the third trajectory tracking task, the trajectory tracking error of the PD algorithm is much larger than that of this embodiment, approximately twice as large. With increasing load mass, the trajectory tracking error of the PD algorithm increases almost linearly, while the trajectory tracking error of this embodiment remains relatively stable, superior to that of the PD algorithm. However, for certain tasks, such as when the load is an elastic body or liquid, this embodiment finds it difficult or impossible to obtain a precise dynamic model through identification, and consequently, cannot use the model to provide an accurate gravity compensation torque for the PD algorithm. In this case, this embodiment assumes that regardless of the load mass, only a 1kg load model can be used to provide gravity compensation for the PD algorithm, as shown in Figure 9. As shown in Figure 9, in the embodiments of this application, as the load mass increases, the gap between the actual model and the preset model widens, and the control accuracy of the PD algorithm decreases significantly. In contrast, the embodiments of this application only require input data from the force sensor and do not require an accurate dynamic model, thus maintaining stable tracking accuracy under various load masses. Overall, the embodiments of this application are more adaptable and have higher tracking accuracy compared to the PD algorithm.
[0139] Furthermore, Table 1 in this embodiment shows in more detail the tracking errors of the PD algorithm with an accurate dynamic model, CBMC-V2, and the embodiment of this application under three trajectories. For planar circular trajectories and oblique circular trajectories, Table 1 shows that although the PD algorithm has an error approximately 10% smaller than the embodiment of this application at 1 kg, the embodiment of this application shows a tracking accuracy improvement of approximately 14%-60% under other mass load conditions. For the three-dimensional figure-eight trajectory, due to its stronger dynamic characteristics, the PD algorithm with the same set of parameters performs worse on this trajectory than the previous two, while the embodiment of this application achieves a tracking accuracy improvement of over 50% under various mass loads. On all three trajectories and various mass loads, the embodiment of this application shows a significant improvement in tracking accuracy compared to CBMC-V2, ranging from 24% to 80%. Table 1 is a comparison table of joint errors of the PD algorithm with an accurate dynamic model, CBMC-V2, and the embodiment of this application under different mass load conditions for three trajectory tracking tasks provided according to an embodiment of this application.
[0140] Table 1
[0141] Figure 10 shows the PD algorithm with an accurate dynamic model under a 2kg load and the trajectory in the workspace and joint space of the embodiment of this application on a 3D figure-eight trajectory. Figure 10 clearly shows that the embodiment of this application has smaller errors and higher tracking accuracy. Furthermore, this embodiment of this application also found that the reason for the poor performance of the PD algorithm is not due to the particularly unsuitable parameters of a single joint, but rather that each joint has a certain error. This indicates that due to the coupling effect of each joint, the PD algorithm requires a large amount of experimentation and engineering experience to tune parameters, and such a set of parameters often only works for certain tasks. The embodiment of this application, however, does not have these problems because it can dynamically adjust network parameters, further proving the versatility of the embodiment of this application. Specifically, Figure 10(a) is a three-dimensional view of the workspace trajectory curve in a 3D figure-eight trajectory tracking task with a 2kg load according to an embodiment of this application; Figure 10(b) is a planar exploded view of the workspace trajectory curve in a 3D figure-eight trajectory tracking task with a 2kg load according to an embodiment of this application; Figure 10(c) is a two-dimensional view of the joint space trajectory curve in a 3D figure-eight trajectory tracking task with a 2kg load according to an embodiment of this application.
[0142] According to the neuromorphic control method for robotic arms based on spiking neural networks proposed in this application, the control commands of the robotic arm in its working state can be input into a pre-built robotic arm control model to output torque control commands for the robotic arm. The robotic arm then outputs corresponding torque. Through the pre-built robotic arm control model, the torque control commands can be precisely processed and converted, generating more accurate torque control commands. This allows the robotic arm to maintain flexibility and adaptability in complex or dynamic working environments, improving overall work efficiency. This solves the problems in related technologies where, in complex working scenarios, the working requirements of the robotic arm may vary significantly due to the size and mass of the manipulated object, thus impairing the versatility of ANN-based adaptive control algorithms. Furthermore, SNN-based algorithms suffer from low control accuracy, poor dynamic performance during control, reliance on dynamic models for gravity compensation, and inability to adapt well to control tasks under various complex load conditions.
[0143] Next, referring to the accompanying drawings, a brain-like control device for a robotic arm based on a spiking neural network, according to an embodiment of this application, is described.
[0144] Figure 11 is a block diagram of a brain-like control device for a robotic arm based on a spiking neural network according to another embodiment of this application.
[0145] As shown in Figure 11, the brain-like control device 110 for the robotic arm based on spiking neural network is applied in the model application stage. The device 110 includes: an acquisition module 1101, an input module 1102, and an output module 1103.
[0146] The acquisition module 1101 is used to acquire control commands for the robotic arm in operation.
[0147] The input module 1102 is used to input control commands into a pre-built robotic arm control model to output torque control commands for the robotic arm. The pre-built robotic arm control model consists of at least one of a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module.
[0148] Output module 1103 is used to control the robotic arm to output the corresponding torque based on torque control commands.
[0149] It should be noted that the foregoing explanation of the embodiment of the brain-like control method for robotic arms based on spiking neural networks also applies to the brain-like control device for robotic arms based on spiking neural networks in this embodiment, and will not be repeated here.
[0150] The neuromorphic control device for a robotic arm based on a spiking neural network proposed in this application can input the control commands of the robotic arm in its working state into a pre-built robotic arm control model to output torque control commands for the robotic arm. The pre-built robotic arm control model can precisely process and convert the torque control commands, generating more accurate torque control commands. This allows the robotic arm to maintain flexibility and adaptability in complex or dynamic working environments, improving overall work efficiency. This solves the problems in related technologies where, in complex working scenarios, the size and mass of the manipulated object can significantly affect the working requirements of the robotic arm when performing different tasks, thus impairing the versatility of ANN-based adaptive control algorithms. Furthermore, SNN-based algorithms suffer from low control accuracy, poor dynamic performance during control, reliance on dynamic models for gravity compensation, and an inability to adapt well to control tasks under various complex load conditions.
[0151] Figure 12 is a schematic diagram of the structure of an electronic device according to an embodiment of this application. The electronic device may include:
[0152] The memory 1201, the processor 1202, and the computer program stored on the memory 1201 and executable on the processor 1202.
[0153] When the processor 1202 executes the program, it implements the brain-like control method for robotic arms based on spiking neural networks provided in the above embodiments.
[0154] Furthermore, electronic devices also include:
[0155] Communication interface 1203 is used for communication between memory 1201 and processor 1202.
[0156] The memory 1201 is used to store computer programs that can run on the processor 1202.
[0157] The memory 1201 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0158] If the memory 1201, processor 1202, and communication interface 1203 are implemented independently, they can be interconnected via a bus to communicate with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of representation, only one thick line is used in Figure 12, but this does not indicate that there is only one bus or one type of bus.
[0159] Optionally, in a specific implementation, if the memory 1201, processor 1202, and communication interface 1203 are integrated on a single chip, then the memory 1201, processor 1202, and communication interface 1203 can communicate with each other through an internal interface.
[0160] The processor 1202 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application.
[0161] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the above-described brain-like control method for a robotic arm based on a spiking neural network.
[0162] This application also provides a computer program product, including a computer program that, when executed, implements the above-described brain-like control method for a robotic arm based on a spiking neural network.
[0163] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0164] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0165] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.
[0166] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.
[0167] It should be understood that the various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, the N steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. If implemented in hardware, as in another embodiment, it can be implemented using any one or more of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0168] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0169] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0170] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.
Claims
1. A method for brain-like control of a robot arm based on a spiking neural network, characterized in that, Applied to the model building phase, the method includes the following steps: A cerebellum module based on a spiking neural network is used to construct a control model for a robotic arm, so as to obtain the initial torque command of the target robotic arm. The thalamic module of the robotic arm control model is constructed based on the initial torque command, and the initial torque command is adjusted using the thalamic module to obtain the final torque command corresponding to the initial torque command. The brainstem module of the robotic arm control model is constructed using the final torque command to obtain the feedforward torque of the target robotic arm; The spinal cord module of the robotic arm control model is constructed based on pulse coding and the feedforward torque. The robotic arm control model is constructed by combining the spinal cord module, the cerebellum module, the thalamus module and the brainstem module, so as to output the torque control command of the target robotic arm using the robotic arm control model.
2. The method of claim 1, wherein, The cerebellum module, which constructs the robotic arm control model based on a spiking neural network, includes: The initial cerebellum module of the robotic arm control model is constructed based on the spiking neural network and non-excited spiking neurons. The initial cerebellar module is trained using the target robotic arm's oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and mean square error (MSE) to obtain the cerebellar module.
3. The method of claim 1, wherein, The thalamic module that constructs the robotic arm control model based on the initial torque command includes: The initial thalamic module of the robotic arm control model is constructed based on a fully connected spiking neural network and neurons. Based on the initial torque command, the initial thalamic module is trained using a first loss function to obtain the thalamic module.
4. The method of claim 1, wherein, The brainstem module that constructs the robotic arm control model using the final torque command includes: The first part of the brainstem module is established based on spiking neural networks, spiking neurons, and a second loss function. The second part of the brainstem module is constructed based on a single-layer neural network and the final torque command, so as to obtain the brainstem module by utilizing the first part and the second part.
5. The method of claim 1, wherein, The spinal cord module, which constructs the robotic arm control model based on pulse coding and the feedforward torque, includes: Based on the planned trajectory and the actual trajectory, the velocity information pulse train and the position information pulse train of the target robotic arm are obtained through nerve fibers and the pulse encoding. The spinal cord module is constructed based on the velocity information pulse train, the position information pulse train, the feedforward torque, and the neurons.
6. A method for brain-like control of a robotic arm based on a spiking neural network, characterized in that, When applied to the model application phase, the method includes the following steps: Obtain control commands from the robotic arm that is in operation; The control commands are input into a pre-built robotic arm control model to output the torque control commands of the robotic arm. The pre-built robotic arm control model consists of at least one of a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module. The torque control command controls the robotic arm to output the corresponding torque.
7. A spiking neural network-based brain-like control device for a robot arm, characterized by, Applied to the model building phase, wherein the apparatus includes: The first construction module is a cerebellum module used to construct a robotic arm control model based on a spiking neural network, so as to obtain the initial torque command of the target robotic arm using the cerebellum module; The second construction module is used to construct the thalamic module of the robotic arm control model based on the initial torque command, and to use the thalamic module to adjust the initial torque command to obtain the final torque command corresponding to the initial torque command. The third construction module is used to construct the brainstem module of the robotic arm control model using the final torque command, so as to obtain the feedforward torque of the target robotic arm; The fourth construction module is used to construct the spinal cord module of the robotic arm control model based on pulse coding and the feedforward torque, and to construct the robotic arm control model by combining the spinal cord module, the cerebellum module, the thalamus module and the brainstem module, so as to output the torque control command of the target robotic arm using the robotic arm control model.
8. The apparatus of claim 7, wherein, The first building module includes: The first building unit is used to build the initial cerebellum module of the robotic arm control model based on the spiking neural network and non-excited spiking neurons; The first generation unit is used to train the initial cerebellar module using the oblique circular trajectory, planar figure-eight trajectory, planar circular trajectory, different gravity compensation modes, and MSE of the target robotic arm to obtain the cerebellar module.
9. The apparatus of claim 7, wherein, The second building module includes: The second building unit is used to construct the initial thalamic module of the robotic arm control model based on a fully connected spiking neural network and neurons; The second generation unit is used to train the initial thalamic module based on the initial torque command using a first loss function to obtain the thalamic module.
10. The apparatus of claim 7, wherein, The third building module includes: The third building unit is used to establish the first part of the brainstem module based on the spiking neural network, spiking neurons, and the second loss function. The third generation unit is used to construct the second part of the brainstem module based on a single-layer neural network and the final torque command, so as to obtain the brainstem module by utilizing the first part and the second part.
11. The apparatus of claim 7, wherein, The fourth building module includes: The fourth generation unit is used to obtain the velocity information pulse train and the position information pulse train of the target robotic arm based on the planned trajectory and the actual trajectory through nerve fibers and the pulse encoding. The fourth construction unit is used to construct the spinal cord module based on the velocity information pulse train, the position information pulse train, the feedforward torque, and the neurons.
12. A spiking neural network based brain-like control device for a robot arm, characterized by, Applied to the model application stage, wherein the device includes: The acquisition module is used to acquire control commands from the robotic arm when it is in operation. An input module is used to input the control commands into a pre-built robotic arm control model to output the torque control commands of the robotic arm, wherein the pre-built robotic arm control model is composed of at least one of a cerebellum module, a thalamus module, a brainstem module, and a spinal cord module. The output module is used to control the robotic arm to output a corresponding torque based on the torque control command.
13. An electronic device, comprising: include: A memory, a processor, and a computer program stored on the memory and executable on the processor, the processor executing the program to implement the brain-like control method of a mechanical arm based on an impulse neural network as claimed in any one of claims 1-5 or claim 6.
14. A computer readable storage medium having stored thereon a computer program, characterized in that, The program is executed by the processor for implementing the brain-like control method of a mechanical arm based on an impulse neural network as claimed in any one of claims 1-5 or claim 6.
15. A computer program product, characterised in that, The program is executed by the processor for implementing the brain-like control method of a mechanical arm based on an impulse neural network as claimed in any one of claims 1-5 or claim 6.