System and method for controlling robotic manipulator movement with soft robotic touch

The feedback controller system using tactile sensors to measure and compensate for forces at the end effector of robotic manipulators addresses the challenge of minimizing energy or momentum transfer during collisions, ensuring accurate and efficient robotic manipulation.

JP2026500884APending Publication Date: 2026-01-08MITSUBISHI ELECTRIC CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025559287
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-14
Filing Date
2024-06-21
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

Existing robotic manipulators face challenges in minimizing energy or momentum transfer during collision events without compromising performance metrics such as accuracy and productivity, as conventional strategies like reducing approach speed, introducing compliance, or modifying mechanical impedance often result in inefficiencies or require impractical modifications.

Method used

A feedback controller system that utilizes tactile sensors to directly measure forces between the end effector and object, aligning these measurements with the robotic manipulator's motion, and compensating them to generate impedance shaping signals, which are fed back to the motion controller to adjust the robotic manipulator's impedance, thereby reducing energy or momentum transfer.

Benefits of technology

This approach effectively reduces energy or momentum transfer during collision events while maintaining accuracy and productivity by accurately measuring and compensating for forces at the point of contact, thus minimizing damage and improving control precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026500884000001_ABST
    Figure 2026500884000001_ABST
Patent Text Reader

Abstract

A feedback control method for controlling a robotic manipulator includes receiving measurement signals from one or more tactile sensors and filtering the measurement signals to align them with a direction of motion of an end effector to generate an impedance shaping signal. The feedback control determines one or more control signals for actuators to track a reference state of the end effector based on the measurements of the state of the end effector, and combines the control signals with the impedance shaping signal to generate control commands. The feedback control may also include submitting the determined control commands to the actuators to change the state of the end effector, where the state of the end effector includes one or a combination of end effector position, end effector velocity, and end effector force.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates generally to robotic manipulation, and more particularly to controlling the movement of a robotic manipulator with a soft robotic touch suitable for applications involving contact and collision of objects, such as in object assembly. [Background technology]

[0002] Robotic manipulators are commonly used in applications involving contact or collision between objects, such as in the assembly of objects. In these applications, one or more collision events occur when the robotic manipulator comes into contact with or separates from one or more objects to be manipulated, or when the relative motion of the robotic manipulator causes objects in the environment to come into contact or separate. A collision event occurs when the robotic manipulator and one or more objects to be manipulated come into contact or separate. For example, when a robotic manipulator grasps a stationary object, a collision event occurs between the robotic manipulator and the object. As another example, a robotic manipulator may come into contact with an object, which may collide with another object due to their relative motion.

[0003] When a collision event occurs between a robotic manipulator and one or more objects in its environment, energy or momentum is exchanged between the robotic manipulator and the object. Thus, the collision event results in a change in the energy or momentum of the robotic manipulator and the object during or after the collision event. In many robotic manipulator applications, it is beneficial to minimize the magnitude of the energy or momentum transfer, for example, to avoid damage to the object or the robotic manipulator, or, for example, to successfully accomplish a particular robotic manipulation task.

[0004] Commonly implemented strategies for reducing the magnitude of energy or momentum transfer between a robot manipulator and one or more objects in its environment include reducing the robot manipulator's approach speed, introducing mechanical compliance into the robot manipulator, or reducing the robot manipulator's mass. However, each of these strategies may be impractical or may compromise some performance metrics of the robot manipulator. Reducing the robot manipulator's approach speed may reduce productivity by simply making the robot manipulator move more slowly. Introducing compliance into the robot manipulator may increase trajectory tracking error and reduce the accuracy of the robot manipulator. Reducing the robot manipulator's mass may require modifying or redesigning the robot manipulator, which may be impractical or impossible to achieve without compromising other performance metrics of the robot manipulator.

[0005] Another common strategy for reducing the magnitude of energy or momentum transfer between a robotic manipulator and one or more objects in its environment during or after a collision event is to modify the robotic manipulator motion controller to reduce the mechanical impedance of the robotic manipulator system. As used herein, the term robotic manipulator system refers to the collection of a robotic manipulator, its actuators, and its robotic manipulator motion controller. Mechanical impedance is one of several metrics commonly used to characterize the performance of a robotic manipulator system and is typically defined as the ratio of force to velocity, where force is between the robotic manipulator and the object and velocity is the result of that force.

[0006] For linear systems, impedance is typically expressed in the frequency domain, similar to electrical impedance, which is the ratio of voltage to current. In this case, mechanical impedance can be a frequency-dependent transfer function with magnitude and phase. If the mechanical impedance is relatively large, this means that a given amount of force applied to the robotic manipulator system will result in a relatively small resulting velocity. In this case, the robotic manipulator system is colloquially considered to be "stiff." In comparison, if the mechanical impedance is relatively small, this means that the same given amount of force applied to the robotic manipulator system will result in a relatively large resulting velocity. In this case, the robotic manipulator system is colloquially considered to be "soft."

[0007] Those skilled in the art know that reducing the magnitude of the mechanical impedance of a robotic manipulator system reduces the transfer of energy or momentum between the robotic manipulator and one or more objects in its environment during or after a collision event. Reducing the magnitude of the mechanical impedance of a robotic manipulator system is typically achieved by reducing feedback control gains associated with the robotic manipulator motion controller. However, this strategy can result in increased trajectory tracking errors, reducing the accuracy of the robotic manipulator system. Furthermore, well-known fundamental limitations on the performance of feedback control systems can impose a lower limit on the amount by which the feedback control gains can be reduced in some applications.

[0008] Impedance control is another strategy for modifying the impedance of a robot manipulator by modulating feedback gains and tracking reference signals, or by measuring and feeding back measurements of forces or torques that may be affected by contact between the robot manipulator and an object. Impedance control and its variants, such as hybrid impedance control, may utilize force / torque sensors, typically mounted on the wrist of the robot manipulator, located between the end effector and the set of links and joints that make up the robot manipulator. However, this approach has several limitations. Summary of the Invention

[0009] It is an objective of some embodiments to provide a mechanism for modifying a robot manipulator system impedance without compromising some performance metrics of the robot manipulator system. Accordingly, it is an objective of some embodiments to provide a mechanism by which the magnitude of the robot manipulator system impedance can be modified, specifically reduced, thereby reducing the magnitude of the energy or momentum transfer between the robot manipulator and one or more objects in the robot manipulator's environment that occurs during or after a collision event.

[0010] Some embodiments are based on the understanding that the transfer of energy or momentum between a robotic manipulator and an object can be minimized by reducing the mechanical impedance of the robotic manipulator system. Mechanical impedance is defined as the quotient of force by velocity, where force is what exists between the robotic manipulator and the object due to contact, and velocity is the result of force. For linear systems, mechanical impedance is expressed in the frequency domain, similar to electrical impedance, which is the ratio of voltage to current. In some embodiments, mechanical impedance is frequency-dependent and has a magnitude and phase.

[0011] Some embodiments are based on the recognition that the mechanical impedance of a robotic manipulator system can be reduced by reducing a feedback control gain associated with the feedback loop of the robotic manipulator system. However, reducing the feedback control gain increases trajectory tracking error, which in turn leads to inaccurate control of the robotic manipulator system. Therefore, there is a need to reduce the energy or momentum transfer without compromising the performance metrics of the robotic manipulator system, such as accuracy and / or trajectory tracking error.

[0012] Some embodiments are based on the recognition that the mechanical impedance of a robotic manipulator system can be modified or reduced by measuring the force or torque at the wrist of the robotic manipulator and feeding the measurements back to a robotic motion controller. However, the force / torque measured at the wrist is different from the forces due to contact between the end effector and the object, the forces due to the mass and inertia of the end effector, and the forces due to non-colocation of the force application and force measurement. Therefore, there is a need to modify or reduce the magnitude of the mechanical impedance by utilizing forces measured directly between the robotic manipulator end effector and the object being manipulated.

[0013] Accordingly, some embodiments are based on the recognition that by directly measuring forces between a robotic manipulator end effector and an object in contact with it using one or more tactile sensors that convert forces applied in known directions into tactile sensor signals, properly aligning the tactile sensor signals with a coordinate system associated with the robotic manipulator's motion, compensating the aligned tactile sensor signals, and feeding the results back to the robotic manipulator controller, the mechanical impedance of the robotic manipulator can be modified or reduced without incurring measurement errors due to the end effector's mass or inertia associated with conventional force feedback.

[0014] Accordingly, one embodiment discloses a feedback controller for controlling a robotic manipulator including one or more actuators mechanically connected to joints of the robotic manipulator for moving the end effector based on measurements from one or more tactile sensors attached to the end effector, the feedback controller including circuitry forming a module of the feedback controller.

[0015] The module includes a tactile sensor compensator configured to (1) receive measurement signals from one or more tactile sensors, the measurement signals including measurements of one or more magnitudes of one or more forces along one or more directions relative to the tactile sensors, and the tactile sensor compensator further configured to (2) filter the measurement signals to align some or all of the measurement signals with one or more directions of end effector motion to generate impedance shaping signals, and the module further includes a motion controller configured to (1) determine one or more control signals for actuators to track a reference state of the end effector based on measurements of a state of the end effector, (2) combine the control signals with the impedance shaping signals to generate control commands, and (2) output the determined control commands to the actuators to change the state of the end effector, the state of the end effector including one or a combination of end effector position, end effector velocity, and end effector force.

[0016] Another embodiment discloses a method for feedback control of a robotic manipulator including one or more actuators mechanically coupled to joints of the robotic manipulator for moving an end effector based on measurements of one or more tactile sensors attached to the end effector, the method employing a processor coupled with stored instructions for implementing the method, the instructions, when executed by the processor, performing steps of the method including receiving measurement signals from the one or more tactile sensors, the measurement signals including measurements of one or more magnitudes of one or more forces along one or more directions relative to the tactile sensors, the steps further comprising: The method includes filtering the measurement signals to align some or all of the measurement signals with one or more directions of end effector motion to generate impedance shaping signals; determining one or more control signals for actuators to track a reference state of the end effector based on measurements of the state of the end effector; combining the control signals with the impedance shaping signals to generate control commands; and submitting the determined control commands to the actuators to change the state of the end effector, the state of the end effector including one or a combination of end effector position, end effector velocity, and end effector force. Definition of Terms

[0017] Robotic manipulator: A device used to manipulate objects without direct physical contact by an operator, consisting of a set of one or more rigid links interconnected by one or more joints, some or all of which may be actuated.

[0018] Robot manipulator controller: A device for calculating actuation trajectories using feedback to make control corrections.

[0019] Robot manipulator system: A collection of a robot manipulator, its actuator, and a robot manipulator motion controller.

[0020] Impedance. A measure of how well a structure resists motion when subjected to harmonic forces, defined as the ratio, at a point on the structure, between the force applied at that point and the resulting velocity in the direction of the force at that point.

[0021] Admittance, the multiplicative inverse of impedance.

[0022] Tactile sensor: A device that measures information resulting from physical interaction with the environment, specifically the magnitude of force applied to a structural point in one or more directions.

[0023] Tactile Sensor Compensator: A device for processing the tactile sensor signal to align it with a reference input to the inner loop compensator and to modify the impedance of the extended robotic manipulator system.

[0024] Extended Robot Manipulator System. Robot manipulation system and tactile sensor feedback loop.

[0025] Tactile sensor feedback loop: A feedback interconnection consisting of a robotic manipulator system, one or more tactile sensors, and a tactile sensor compensator.

[0026]

number

[0027] Impedance shaping signal. Vector output signal w of the tactile sensor compensator.

[0028] Inner Loop Compensator. A compensator that takes a reference trajectory as input and produces an actuation trajectory as output to partially or fully compensate for the effects of gravity, damping, friction, coordinate transformations, or multibody motion.

[0029] Outer Loop Compensator: A compensator that takes as inputs a reference trajectory representing a desired robot manipulator motion and a set of measured robot manipulator joint positions and possibly one or more of their derivatives with time, and calculates an output signal intended to cause the robot manipulator system to track the reference trajectory. [Brief explanation of the drawings]

[0030] [Figure 1] FIG. 1 is a block diagram illustrating a tactile sensor feedback loop according to some embodiments. [Figure 2] FIG. 10 is a block diagram illustrating a tactile sensor feedback loop according to another embodiment, comprising a robotic manipulator, an end effector including fingers, a tactile sensor, and an object in contact with the tactile sensor. [Figure 3] FIG. 1 is a schematic diagram illustrating an embodiment of a tactile sensor feedback loop in which a robotic motion controller includes an outer loop compensator implemented as a proportional-derivative (PD) type compensator. [Figure 4] FIG. 4 is a schematic diagram illustrating the frequency response of admittance, which is the reciprocal of impedance, for the embodiment of FIG. 3. [Figure 5] 10A-10C are schematic diagrams showing animations of two simulations illustrating the effect of a tactile sensor feedback loop according to some embodiments. [Figure 6] FIG. 6 is a schematic diagram showing the time trajectories of the robot manipulator horizontal displacement for the two simulations illustrated in FIG. 5. [Figure 7] FIG. 1 is a block diagram illustrating an embodiment of a tactile sensor feedback loop with a robotic manipulator and an end effector with a rotational degree of freedom. [Figure 8] FIG. 1 is a schematic diagram illustrating a coordinate frame used by some embodiments when a tactile sensor measures the magnitude and direction of an applied force. [Figure 9] FIG. 1 is a schematic diagram illustrating a coordinate frame used by some embodiments when a tactile sensor measures the magnitude of an applied force in a particular direction. [Figure 10] FIG. 1 is a schematic diagram illustrating an embodiment for a three-degree-of-freedom robot with two translational degrees of freedom and one rotational degree of freedom. [Figure 11] FIG. 2 is a schematic diagram illustrating an example implementation of the robotic manipulator system of FIG. 1 for playing a game of chess, according to an exemplary embodiment of the present disclosure. [Figure 12] 1 is a flowchart illustrating an exemplary method according to some embodiments. [Figure 13] FIG. 1 is a schematic diagram illustrating a computing device for implementing the robotic motion controller and tactile sensor compensator of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0031] In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. However, it will be apparent to those skilled in the art that the present disclosure may be practiced without these specific details. In other instances, devices and methods are shown only in block diagram form in order to avoid obscuring the present disclosure.

[0032] As used in this specification and claims, the words "for example," "for example," and "such as," as well as "comprises," "has," "includes," and other verb forms thereof, when used in conjunction with a list of one or more components or other items, should be construed as open-ended. This means that the list should not be considered to exclude other additional components or items. The term "based on" means based at least in part on. Furthermore, it should be understood that the terms and terminology used herein are for descriptive purposes and should not be considered limiting. Any headings used within this specification are for convenience only and have no legal or limiting effect.

[0033] 1 shows a block diagram of a tactile sensor feedback loop 117 according to some embodiments. The tactile sensor feedback loop 117 includes a robotic manipulator 101 mechanically connected to an end effector 120 including fingers 102 and 103 on which tactile sensors 104 and 105 are attached. An object 106 is shown in contact with the tactile sensor 104. The tactile sensors 104 and 105 convert force measurements at the tactile sensors 104 or 105, respectively, into one or more signals 109, 110, which are provided to a tactile sensor compensator 106. The tactile sensor compensator 106 processes the tactile sensor signals 109, 110 to align them with the robotic manipulator coordinate system and filters the results to generate a tactile sensor compensator output 111. The output 111 of the tactile sensor compensator is comprised of one or more signals that are aggregated into a signal vector, denoted an impedance shaped signal, which is further fed to a robot motion controller 107, which outputs a set of one or more signals 108 to a set of robot manipulator actuators 115. The set of robot manipulator actuators 115 are mechanically connected to the joints of the robot manipulator 101 to close a tactile sensor feedback loop 117. The tactile sensor feedback loop 117 is itself comprised of the robot manipulator 101 and includes an end effector 120, a set of one or more tactile sensors 104, 105, a tactile sensor compensator 106, a robot motion controller 107, a set of one or more robot manipulator actuators 115, and signal interconnections 108, 109, 110, and 111.

[0034] In FIG. 1 , object 106 is shown in contact with tactile sensor 104 (118), but not with tactile sensor 105. This is one embodiment, and embodiments are not limited to having only one tactile sensor in contact with one or more objects. In FIG. 1 , end effector fingers 102 and 103 can move independently to the left 112 and right 113 sides, respectively, and the robotic manipulator can move to the left 112 and right 113 sides. It is understood that FIG. 1 illustrates one embodiment, and other embodiments are not limited to robotic manipulators limited to movement in only one dimension, nor are the number of degrees of freedom of the end effector limited to one or two fingers, nor is the movement of the end effector limited to linear movement only. Other embodiments may have one or more rotational or translational degrees of freedom in the end effector, one or more rotational or translational degrees of freedom in the robotic manipulator, and one or more tactile sensors.

[0035] One effect of the tactile sensor feedback loop 117 is to modify the impedance of the robot manipulator system as it is defined at one or more contact points 118 with one or more objects 106. Here, the robot manipulator system is extended to become the assembly of the robot manipulator system and the tactile sensor feedback loop. This assembly is referred to herein as the augmented robot manipulation system. One effect of this embodiment is to modify, and in particular reduce, the magnitude of the impedance of the augmented robot manipulator system as it is defined at one or more contact points between the robot manipulator end effector and the object 118, when compared to a conventional robot manipulator system essentially lacking the tactile sensor feedback loop 117. As a result, the magnitude of energy or momentum transfer that occurs between the robot manipulator and one or more objects in the robot manipulator's environment during or after a collision event is modified, and in particular reduced.

[0036] Some embodiments are based on the recognition that the feedback loop of the feedback controller of FIG. 1 can reduce the impedance of a robot manipulator. This recognition is based on several understandings. First, the force or torque measured by a wrist-mounted force / torque sensor is not the same as the force or torque at one or more contact points between an object and the end effector, but rather the force or torque at the wrist, which is located away from the one or more contact points. The force or torque measured at the wrist is affected by the mass or inertia of the end effector and will therefore exhibit measurement errors caused by the motion and inertia of the end effector, as well as the effect of gravity on the end effector. For this reason, to reduce the measurement error of the force or torque at the wrist due to the inertia of the end effector, the magnitude of the robot manipulator system velocity is typically reduced. This has a negative impact on the productivity of the robot manipulator system. Furthermore, the resolution of the force or torque due to contact, which may be smaller in magnitude than the set of forces or torques measured at the wrist due to gravity or inertia, can be limited, for example, by constraints on the dynamic range of the measurement.

[0037] Second, wrist-mounted force / torque sensors can only measure the sum of all forces or torques acting at multiple contact points, and are unable to resolve the individual forces or torques associated with multiple contact points. This limits the effectiveness of impedance control in modifying the impedance of a robotic manipulator and reducing the magnitude of energy or momentum transfer between the robotic manipulator system and one or more objects in its environment during or after a collision event.

[0038] Therefore, strategies for reducing the magnitude of energy or momentum transfer between a robotic manipulator system and one or more objects in its environment during or after a collision event may be insufficient or impractical in some robotic manipulator applications. As such, some embodiments provide means for reducing the magnitude of energy or momentum transfer between a robotic manipulator and objects in its environment during or after a collision event without requiring impractical modifications to the robotic manipulator or compromising performance metrics of the robotic manipulator system, such as accuracy or productivity metrics.

[0039] Some embodiments are based on the recognition that feedback control varies impedance by combining the control signals with measurements from tactile sensors when determining one or more control signals for actuators to track a reference state of the end effector based on measurements of the state of the end effector. To that end, in some embodiments, feedback control for controlling a robotic manipulator includes receiving measurement signals from one or more tactile sensors and filtering the measurement signals to align the measurement signals with a direction of movement of the end effector to generate impedance shaping signals. The feedback control determines one or more control signals for actuators to track a reference state of the end effector based on measurements of the state of the end effector and combines the control signals with the impedance shaping signals to generate control commands. The feedback control may also include submitting the determined control commands to the actuators to vary the state of the end effector, where the state of the end effector includes one or a combination of end effector position, end effector velocity, and end effector force.

[0040]

number

[0041]

number

[0042]

number

[0043] The embodiment shown in FIG. 2 includes feedback loops corresponding to inner loop compensator 223, tactile sensor compensator 213, and outer loop compensator 221, which are arranged in a cascade configuration such that impedance shaping signal w (217) is fed back to signal v (222) intermediate between the inner feedback loop compensated by inner loop compensator 223 and the outer feedback loop compensated by outer loop compensator 221.

[0044]

number

[0045] Figure 4 shows the frequency response of admittance, which is the reciprocal of impedance, for the embodiment of Figure 3 for specific values ​​of components of the robot manipulator, such as mass, inertia, and other geometric and kinematic parameters. * By increasing the magnitude of admittance 402 compared to the value of k = 0 (401), *4 shows the effect of the tactile sensor feedback loop on the magnitude and phase of the admittance at the tactile sensor contact point at frequency 402 = 2. The effect is to increase the magnitude of the admittance by approximately 2 dB over the bandwidth of the tactile sensor feedback loop, which in this particular embodiment is 100 rad / s, while having a negligible effect on phase 403. This corresponds to a drop in impedance over this frequency range by the same amount. Note that while the admittance of the augmented robot manipulator system is modified relative to a conventional robot manipulator system at the bandwidth of the tactile sensor feedback loop, the admittance cannot be changed outside this bandwidth using feedback due to fundamental limitations of feedback. At frequencies above 100 rad / s, the admittance is limited by the mass of the robot manipulator system and can only be increased by reducing the mass of the robot manipulator.

[0046] Figure 5 shows an animated schematic of two simulations illustrating the effect of a tactile sensor feedback loop according to some embodiments. In the initial configuration 501, the block is off-center with two parallel fingers 504 and 505 on which tactile sensors 506 and 507 are attached. * 4 is simulated with k = 0, during which fingers 504, 505 close like a vice on block 502. The fingers close on the block with equal but opposite movements, resulting in tactile sensor 507 contacting the block before tactile sensor 506. Feedback gain k * With k = 0, the tactile sensor feedback loop is essentially open, so no tactile sensor measurements are used. As a result, at the end of the simulation 509, the block is displaced from its initial position 510 by a distance of 4 mm in this example. *Repeating the same simulation with the tactile sensor compensator gain set to =20 (511) results in a much smaller displacement 512 of 0.2 mm because the tactile sensor feedback loop has lowered the robot manipulator system impedance, resulting in less energy or momentum transfer between the tactile sensors 507 and 506 and the object being manipulated (in this case, the block) during or after a collision event.

[0047] Figure 6 shows a schematic diagram of the time trajectories of the robot manipulator horizontal displacement q1, finger displacement q2, and block displacement q3 for the two simulations illustrated in Figure 5. The time trajectories of the simulations are k * =0 and k * 6 shows the robot manipulator displacement 601, finger displacement 602, and block displacements 603 and 604 for respective values ​​of ρ = 20. The final block displacement 604 is reduced from 4 mm to 0.2 mm by the action of the tactile sensor feedback loop, which has the effect of moving the robot manipulator around block position 601 rather than moving block 604. The reduced block displacement demonstrates the effectiveness of the tactile sensor feedback loop in reducing the transfer of energy or momentum during or after a collision event because less energy or momentum is transferred to the block.

[0048] Figure 7 shows a block diagram of an embodiment of a tactile sensor feedback loop with a robot manipulator 701 and an end effector 703 with a rotational degree of freedom. In this embodiment, the tactile sensor compensator takes the difference between a pair of tactile sensors 705 and 706 attached to the two fingers of the end effector, thereby aligning their measurements with the rotational direction of actuation. The tactile sensor compensator also uses a constant gain -k to generate an impedance shaping signal w(708) that is fed back to the robot motion controller 710 at point 711 between the inner loop compensator 716 and the outer loop compensator 714 to close the tactile sensor feedback loop. * Includes.

[0049] 8 shows a schematic diagram of the coordinate frame used by some embodiments when a tactile sensor measures the magnitude and direction of an applied force. A robotic manipulator 801 including an end effector 802 includes a set of n joints, whose positions q i (where 1≦i≦n) are measured and used as input to forward kinematics 805 to calculate the position and orientation of the end effector frame 804 centered at 802. In this frame, the point p i The tactile sensor 806 is placed at the coordinate n i The frame 808 is attached to the tactile sensor 806. The force f applied to the tactile sensor 806 i (807) is shown.

[0050] 9 shows a schematic diagram of the coordinate frame used by some embodiments when a tactile sensor measures the magnitude of an applied force in a particular direction. A robotic manipulator 901 including an end effector 902 includes a set of n joints, whose positions q i (where 1≦i≦n) are measured and used as input to forward kinematics 905 to calculate the position and orientation of the end effector frame 904 centered at 902. In this frame, the point p i The tactile sensor 906 is placed at the coordinate ni The frame 909 is attached to the tactile sensor 906. The force f applied to the tactile sensor 906 i (907) is shown, but the tactile sensor 906 is i1 Only the magnitude of the applied force 907 in the direction of (908) can be measured.

[0051] Figure 10 shows a schematic diagram of an embodiment of a three-degree-of-freedom robot, with two translational degrees of freedom and one rotational degree of freedom. Rail 1006 slides along fixed rails 1004 and 1005. Additionally, end effector 1007 slides along rail 1006 and may also rotate (1103). Attached to end effector 1007 is a type of tactile sensor 1008 that measures both the magnitude and direction of an applied force f1 (1009). The frame is attached to tactile sensor 1008 in principal coordinates n1 (1010) and n2 (1011). Tactile sensor 1008 measures the components of applied force 1009 along directions n1 (1012) and n2 (1013). Exemplary Embodiments and Implementations

[0052] One exemplary embodiment includes an n-DOF robotic manipulator having an end effector mounted thereon, i (where 1≦i≦M) a number of M≧1 tactile sensors are attached at points. The present invention defines a tactile sensor as a device that measures the magnitude of a force applied to a point on a structure in one or more directions.

[0053]

number

[0054]

number

[0055]

number

[0056] These embodiments are not limited to a particular number of degrees of freedom. Furthermore, embodiments are not limited to fully actuated robotic manipulators, where n is also the number of actuators. Other embodiments of the present invention enable robotic manipulators with fewer actuators than degrees of freedom, known as under-actuated robotic manipulators, or with more than six actuators, which may be known as over-actuated robotic manipulators. For simplicity of explanation, the following describes embodiments with a number of actuators equal to the number of degrees of freedom, denoted n.

[0057]

number

[0058]

number

[0059] In some embodiments, the forward kinematics include three translational degrees of freedom and three rotational degrees of freedom, so that the task frame 803 or 903 illustrated in Figures 8 and 9 includes a full three degrees of freedom in position and orientation, where n = 6. However, other embodiments include robotic manipulators with fewer than three degrees of freedom or more than three degrees of freedom in translation or orientation.

[0060]

number

[0061]

number

[0062] This linearizes the dynamics from the input v to the task coordinate x and separates the dynamics along each of the x coordinate axes. This is known to those skilled in the art as feedback linearization. Some embodiments of the inner loop compensator may not include the so-called higher-order terms from (9), such as some or all of the Coriolis or centripetal terms, or may not include some or all of the damping terms, for example. Such embodiments of the inner loop compensator are known to those skilled in the art as approximate feedback linearization. For some embodiments, such as Cartesian robotic manipulators, the dynamics expressed in joint coordinates (3) are identical to the dynamics expressed in task coordinates (6), and thus the inner loop compensator may be u=v, i.e., the identity operator, for these embodiments.

[0063]

number

[0064]

number

[0065]

number

[0066]

number

[0067]

number

[0068]

number

[0069]

number

[0070]

number

[0071]

number

[0072]

number

[0073]

number

[0074]

number

[0075]

number

[0076] 11 illustrates a system 1100 for implementing the robotic manipulator system of FIG. 1 for playing a chess game according to an exemplary embodiment of the present disclosure. As shown in FIG. 11 , the system 1100 includes a delta robot 1101, a chess engine 1103 interfaced with a simulator 1105 (such as MATLAB®), a camera 1107, an inner loop server 1109, a trajectory generator 1111, a servo interface 1113, a personal computer (PC) 1115, a PC 1117 including a peripheral component interconnect (PCI) bus 1123, a motion control board 1125, one or more amplifiers, e.g., amplifier 1121 a, amplifier 1121 b, and amplifier 1121 c, and one or more servo motors 1119.

[0077] In some embodiments, the delta robot 1101 includes one or more proximal links, one or more distal links, and a parallel gripper. The one or more proximal links may be actuated by one or more servo motors 1119. The one or more distal links may be hollow carbon fiber tubing to reduce weight. The parallel gripper may be mounted under an aluminum wrist flange. The parallel gripper includes one or more gripper fingers. The one or more gripper sensors may include one or more sensors, such as tactile sensors, attached to one or more of the gripper fingers. In some embodiments, the one or more servo motors 1119 are driven by one or more amplifiers. In some embodiments, the one or more amplifiers may correspond to MR-J4-B servo amplifiers in torque mode. The one or more amplifiers are controlled by a motion control board 1125, such as an MR-MC210 motion control board.

[0078] Furthermore, a motion control board 1125 is installed in a PCI slot of the PC 1117 and interfaces the PC 1117 to the servo amplifiers 1121a, 1121b, and 1121c. Furthermore, an interface board 1127 including an analog-to-digital (A / D) converter and a digital-to-analog (D / A) converter interfaces a set of gripper sensors to the PC 1117 via the PCI slot 1123. The interface board 1127 may be a PCIE-1730 interface board. Further, the interface board 1127 is configured to generate an analog signal. Further, the analog signal includes a velocity command. Further, the parallel gripper is actuated to perform one or more operations based on the velocity command.

[0079] Camera 1107 is configured to monitor chess board 1128. Camera 1107 is further configured to determine one or more chess moves by the person, for example, a move from chess square B2 to chess square B4. Camera 1107 is further configured to communicate the one or more chess moves by the person to simulator 1105, which communicates the one or more chess moves by the person to chess engine 1103.

[0080]

number

[0081] In some embodiments, one or more chess pieces may be moved to new positions on the chessboard. In some embodiments, based on the capture of one or more chess pieces, the delta robot may remove the one or more chess pieces from the chessboard. Additionally, in some embodiments, one or more feedback gains may be modified as a function of distance from the chessboard 1128 to minimize the delta robot's mechanical impedance in the vertical direction to minimize energy or momentum transfer between the delta robot and the chessboard 1128 that may occur during or after a collision event between a grabbed chess piece and the chessboard 1128.

[0082] The inner loop server 1109 is configured to grasp one or more chess pieces using the delta robot. The inner loop server 1109 is further configured to implement an inner loop compensator that can compensate for the effects of gravity and configuration-dependent inertia of the delta robot. The inner loop server 1109 is further configured to implement an outer loop compensator that includes a proportional-integral-derivative (PID) type compensator. The inner loop server 1109 is further configured to implement a tactile sensor compensator that receives a tactile sensor signal as an input via the interface board 1127, subtracts the tactile sensor signal to align it with the gripper finger actuation direction, and filters the result with a constant gain to generate an impedance shaping signal. The inner loop server is further configured to add the impedance shaping signal to the output of the inner loop compensator to generate an input to the inner loop compensator, thereby forming a tactile sensor feedback loop. The inner loop compensator is further configured to generate an actuation signal that is applied to the servo interface 1113.

[0083] The inner loop server 1109 is configured to implement a tactile sensor feedback loop to reduce the magnitude of the delta robot's impedance in the direction of gripper finger movement at the location of the gripper sensor. This reduces the magnitude of energy or momentum transfer between the delta robot and the chess piece during or after a collision event. A collision event may include, for example, grasping or placing the chess piece. As a result, the chess piece is unlikely to fall over during or after the collision event.

[0084] The servo interface 1113 is configured as an interrupt service routine (ISR) running on the PC 1117 and is triggered by the motion control board 1125 after a defined period, e.g., every 0.88 ms, to measure the angle or velocity of the servo motor and provide one or more actuation signals to the servo motor. Based on a client-server architecture, one or more components may communicate with each other via the UDP protocol. Additionally, one or more processes may run on the PC 1115 or PC 1117.

[0085] 12 is a flowchart of an example method 1200 according to some embodiments. In some implementations, one or more method blocks of FIG. 12 may be performed by a feedback controller.

[0086] As shown in FIG. 12 , method 1200 may include receiving measurement signals from one or more tactile sensors. In this case, the measurement signals include one or more magnitude measurements of one or more forces along one or more directions relative to the tactile sensors (block 1202). For example, a device may receive measurement signals from one or more tactile sensors, where the measurement signals include one or more magnitude measurements of one or more forces along one or more directions relative to the tactile sensors, as described above. As also shown in FIG. 12 , method 1200 may include filtering the measurement signals to align some or all of the measurement signals with one or more directions of movement of the end effector to generate an impedance shaping signal (block 1204). For example, the device may filter the measurement signals to align some or all of the measurement signals with one or more directions of movement of the end effector to generate an impedance shaping signal, as described above.

[0087] 12, the method 1200 may include determining one or more control signals for the actuators to track a reference state of the end effector based on the measurements of the state of the end effector (block 1206). For example, the device may determine one or more control signals for the actuators to track a reference state of the end effector based on the measurements of the state of the end effector, as described above. As also shown in FIG. 12, the method 1200 may include combining the control signals with an impedance shaping signal to generate control commands (block 1208). For example, the device may combine the control signals with an impedance shaping signal to generate control commands, as described above.

[0088] 12, the method 1200 may include submitting the determined control command to an actuator to change a state of the end effector, where the state of the end effector includes one or a combination of end effector position, end effector velocity, and end effector force (block 1210). For example, the device may submit the determined control command to an actuator to change a state of the end effector, where the state of the end effector includes one or a combination of end effector position, end effector velocity, and end effector force, as described above.

[0089] 12 illustrates example blocks of method 1200, in some implementations method 1200 may include additional blocks, fewer blocks, different blocks, or blocks in a different arrangement than that shown in FIG 12. Additionally or alternatively, two or more of the blocks of method 1200 may be performed in parallel.

[0090] Method 1200 may include additional implementations, such as any single implementation or any combination of implementations described below and / or in connection with one or more other processes described elsewhere herein. In a first implementation, method 1200 further includes modifying the magnitude of the impedance measured at the one or more tactile sensors using a filter.

[0091] In the second implementation example alone or in combination with the first implementation example, method 1200 further includes the steps of combining the values ​​of the measurement signals into a measurement vector, multiplying the measurement vector by a sensor alignment matrix, and filtering the product of the measurement vector and the sensor alignment matrix using a filter having a non-zero gain.

[0092] In the third implementation alone or in combination with the first and second implementations, the gain is negative.

[0093] In the fourth implementation example alone or in combination with one or more of the first to third implementation examples, a sensor alignment matrix is ​​calculated from one or more Jacobians of the robot manipulator forward kinematics from joint coordinates of the positions of one or more tactile sensors, where the sensor alignment matrix includes multiple rows and multiple columns that define the dimensions of the sensor alignment matrix as a function of the degrees of freedom of the end effector.

[0094] 12 illustrates example blocks of method 1200, in some implementations method 1200 may include additional blocks, fewer blocks, different blocks, or blocks in a different arrangement than that shown in FIG 12. Additionally or alternatively, two or more of the blocks of method 1200 may be performed in parallel.

[0095] 13 is a schematic diagram illustrating a computing device 1300 for implementing the robotic motion controller 107 and tactile sensor compensator 106 of the present disclosure. The computing device 1300 includes a power supply 1301, a processor 1303, a memory 1305, and a storage device 1307, all connected to a bus 1309. Further, a high-speed interface 1311, a low-speed interface 1313, a high-speed expansion port 1315, and a low-speed connection port 1317 can be connected to the bus 1309. Additionally, a low-speed expansion port 1319 is connected to the bus 1309. Furthermore, an input interface 1321 can be connected to an external receiver 1323 and an output interface 1325 via the bus 1309. The receiver 1327 can be connected to an external transmitter 1329 and a transmitter 1331 via the bus 1309. An external memory 1333, an external sensor 1335, a machine 1337, and an environment 1339 can also be connected to the bus 1309. Additionally, one or more external input / output devices 1341 may be connected to the bus 1309. A network interface controller (NIC) 1343 may be adapted to connect to a network 1345 via the bus 1309, allowing data or other data to be rendered on a third party display device, a third party imaging device, and / or a third party printing device, among others, outside the computing device 1300.

[0096] The memory 1305 can store instructions executable by the computing device 1300 and any data that can be utilized by the methods and systems of the present disclosure. The memory 1305 can include random access memory (RAM), read only memory (ROM), flash memory, or any other suitable memory system. The memory 1305 can be a volatile and / or non-volatile memory unit. The memory 1305 can also be another form of computer-readable medium, such as a magnetic disk or an optical disk.

[0097] The storage device 1307 may be adapted to store supplemental data and / or software modules used by the computing device 1300. The storage device 1307 may include a hard drive, an optical drive, a thumb drive, an array of drives, or any combination thereof. Additionally, the storage device 1307 may include a computer-readable medium, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, or an array of devices including flash memory or other similar solid-state memory devices, or devices in a storage area network or other configuration. The instructions may be stored on an information carrier. When executed by one or more processing devices (e.g., the processor 1303), the instructions perform one or more methods, such as those described above.

[0098] Computing device 1300 can be optionally coupled via bus 1309 to a display interface or user interface (HMI) 1347 adapted to connect computing device 1300 to a display device 1349 and keyboard 1351, which may include, among other things, a computer monitor, a camera, a television, a projector, or a mobile device. In some implementations, computing device 1300 may include a printer interface for connecting to a printing device, which may include, among other things, a liquid inkjet printer, a solid ink printer, a large-scale commercial printer, a thermal printer, a UV printer, or a dye-sublimation printer. High-speed interface 1311 manages bandwidth-intensive operations for computing device 1300, and low-speed interface 1313 manages lower-bandwidth intensive operations. This allocation of functionality is merely an example. In some implementations, the high-speed interface 1311 may be coupled to memory 1305, a user interface (HMI) 1349, a keyboard 1351 and a display 1349 (e.g., via a graphics processor or accelerator), and a high-speed expansion port 1315 that may accept various expansion cards via a bus 1309. In one implementation, the low-speed interface 1313 is coupled to a storage device 1307 and a low-speed expansion port 1317 via a bus 1309. The low-speed expansion port 1317, which may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet), may be coupled to one or more input / output devices 1341. The computing device 1300 may be connected to a server 1353 and a rack server 1355. The computing device 1300 may be implemented in several different forms. For example, the computing device 1300 may be implemented as part of a rack server 1355.

[0099] The description provides exemplary embodiments only and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the following description of exemplary embodiments will provide those skilled in the art with an enablement description for implementing one or more exemplary embodiments. Various changes are contemplated that may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosed subject matter as set forth in the appended claims.

[0100] In the following description, specific details are provided to provide a thorough understanding of the embodiments. However, those skilled in the art will understand that the embodiments may be practiced without these specific details. For example, systems, processes, and other elements of the disclosed subject matter may be shown as components in block diagram form in order to avoid obscuring the embodiments in unnecessary detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments. Furthermore, like reference numbers and names in the various drawings indicate like elements.

[0101] Also, particular embodiments may be described as a process that is depicted as a flowchart, flow diagram, data flow diagram, structure diagram, or block diagram. While a flowchart may describe operations as a sequential process, many of the operations may be performed in parallel or simultaneously. Additionally, the order of operations may be rearranged. A process may terminate when its operations are completed, or may include additional steps not described or included in the diagram. Moreover, not all operations in any specifically described process may be performed in all embodiments. A process may correspond to a method, function, procedure, subroutine, subprogram, etc. Where a process corresponds to a function, the end of the function may correspond to a return of the function to the calling function or the main function. Furthermore, embodiments of the disclosed subject matter may be implemented, at least in part, either manually or automatically. Manual or automatic implementations may be performed, or at least assisted, by machines, hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. If implemented in software, firmware, middleware, or microcode, the program code or code segments to perform the necessary tasks may be stored on a machine-readable medium. A processor may perform the necessary tasks.

[0102] The various methods or processes outlined herein may be coded as software executable on one or more processors employing any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages ​​and / or programming or scripting tools, and compiled as executable machine language code or intermediate code that runs on a framework or virtual machine. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.

[0103] Embodiments of the present disclosure may be embodied as methods, examples of which are provided. The operations performed as part of the method may be ordered in any suitable manner. Thus, while exemplary embodiments are shown as sequential operations, embodiments may be constructed in which operations are performed in a different order than that shown, including performing some operations simultaneously.

[0104] Furthermore, embodiments of the present disclosure and the functional operations described herein can be implemented in digital electronic circuitry, in tangibly embodied computer software or firmware, in computer hardware containing the structures disclosed herein and their structural equivalents, or in one or more combinations thereof. Furthermore, some embodiments of the present disclosure can be implemented as one or more computer programs, i.e., as one or more modules of computer program instructions encoded on a tangible, non-transitory program carrier for execution by or control of the operation of a data processing apparatus. Furthermore, the program instructions can be encoded in an artificially generated propagated signal, for example, a machine-generated electrical, optical, or electromagnetic signal. The propagated signal is generated to encode information that is transmitted to a suitable receiving device for execution by the data processing apparatus. The computer storage medium may be a machine-readable storage device, a machine-readable storage substrate, a random-access or serial-access memory device, or one or more combinations thereof. According to embodiments of the present disclosure, the term "data processing apparatus" can encompass all kinds of apparatuses, devices, and machines for processing data, including, by way of example, a programmable processor, a computer, or multiple processors or computers. An apparatus may include special purpose logic circuitry, such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC). In addition to hardware, the apparatus may also include code that creates an execution environment for the computer program, such as code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or one or more combinations thereof.

[0105] A computer program (which may be called or described as a program, software, software application, module, software module, script, or code) can be written in any form of programming language, including compiled or interpreted, or declarative or procedural, and can be deployed in any form, such as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in part of a file that holds other programs or data, such as one or more scripts stored in a markup language document, in a single file dedicated to the program, or in a coordinated set of files, such as files storing one or more modules, subprograms, or portions of code. A computer program can be deployed to run on one computer or on multiple computers, located at one site or distributed across multiple sites and interconnected by a communications network. A computer suitable for running a computer program may be based, by way of example, on a general-purpose microprocessor, a special-purpose microprocessor, or both, or any other type of central processing unit. Generally, the central processing unit will receive instructions and data from a read-only memory or a random-access memory or both. The essential elements of a computer are a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and data. Typically, a computer will also include one or more mass storage devices, e.g., magnetic, magneto-optical, or optical disks, for storing data, or will be operatively coupled to such storage devices to receive data from, transfer data to, or both. However, a computer need not have such devices.Additionally, a computer can be embedded in another device, such as a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device, such as a universal serial bus (USB) flash drive, to name a few.

[0106] To facilitate user interaction, embodiments of the subject matter described herein can be implemented on a computer having a display device, such as a cathode ray tube (CRT) or liquid crystal display (LCD) monitor, for displaying information to the user, and a keyboard and pointing device, such as a mouse or trackball, for allowing the user to provide input to the computer. Other types of devices can also be used to interact with the user. For example, feedback provided to the user can be any form of sensory feedback, such as visual, auditory, or tactile feedback, and input from the user can be received in any form, including acoustic, speech, or tactile input. Additionally, the computer can facilitate user interaction by sending documents to and receiving documents from a device used by the user, for example, by sending a web page to a web browser on the user's client device in response to a request received from the web browser.

[0107] Embodiments of the subject matter described herein can be implemented in a computing system that includes a back-end component, e.g., a data server, or includes a middleware component, e.g., an application server, or includes a front-end component, e.g., a client computer having a graphical user interface or web browser that allows a user to interact with an implementation of the subject matter described herein, or includes any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include local area networks (LANs) and wide area networks (WANs), e.g., the Internet.

[0108] A computing system may include clients and servers. Clients and servers are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a mutual relationship between the client and server.

[0109] Although the present disclosure has been described with reference to certain preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the disclosure. It is, therefore, the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the present disclosure.

Claims

1. 1. A feedback controller for controlling a robotic manipulator including one or more actuators mechanically connected to joints of the robotic manipulator for moving the end effector based on measurements from one or more tactile sensors attached to the end effector, the feedback controller including circuitry forming a module of the feedback controller, the module comprising: a tactile sensor compensator, the tactile sensor compensator comprising: (1) configured to receive measurement signals from one or more tactile sensors, the measurement signals including measurements of one or more magnitudes of one or more forces along one or more directions on the tactile sensors, the tactile sensor compensator further comprising: (2) filtering the measurement signals to align some or all of the measurement signals with one or more directions of motion of the end effector to generate impedance shaped signals, the module further comprising: a motion controller, the motion controller comprising: (1) determining, based on measurements of the state of the end effector, one or more control signals for the actuator to track a reference state of the end effector; (2) a feedback controller configured to combine the control signal with the impedance shaping signal to generate a control command; and (2) output the determined control command to the actuator to change a state of the end effector, the state of the end effector including one or a combination of an end effector position, an end effector velocity, and an end effector force.

2. The feedback controller of claim 1 , wherein the tactile sensor compensator filter modifies the magnitude of the impedance measured at the one or more tactile sensors.

3. To generate the impedance shaped signal, the tactile sensor compensator comprises: combining the values ​​of the measurement signals into a measurement vector; The feedback controller of claim 1 configured to multiply the measurement vector by a sensor alignment matrix.

4. The feedback controller of claim 3 , wherein the tactile sensor compensator filters the product of the measurement vector and the sensor alignment matrix with a filter having a non-zero gain.

5. The feedback controller of claim 4 wherein the gain is negative.

6. The feedback controller of claim 3 , wherein the sensor alignment matrix is ​​calculated from one or more Jacobian responses of robot manipulator forward kinematics from joint coordinates of the positions of the one or more tactile sensors.

7. The feedback controller of claim 3 , wherein the sensor alignment matrix includes a plurality of rows and a plurality of columns that define a dimension of the sensor alignment matrix as a function of degrees of freedom of the end effector.

8. The feedback controller of claim 1 , wherein the motion controller module includes an inner loop compensator and an outer loop compensator, and the inner loop compensator receives an input that is the sum or difference of an output of the outer loop compensator and the impedance shaping signal.

9. The feedback controller of claim 8 , wherein the inner loop compensator is an identity.

10. The feedback controller of claim 8 , wherein the inner loop compensator is configured to compensate the control command for the effects of gravity, configuration-dependent inertia, centripetal force or torque, and Coriolis force or torque.

11. The feedback controller of claim 8 , wherein the outer loop compensator comprises a proportional-integral-derivative (PID) controller or a proportional-derivative (PD) controller.

12. The feedback controller of claim 2 , wherein the filter is a matrix of one or more linear gains, a low pass filter, a band pass filter, or a combination thereof.

13. The feedback controller of claim 4 , wherein the filter is a matrix of one or more linear gains, a low pass filter, a band pass filter, or a combination thereof.

14. A robotic manipulator controlled by the feedback controller of claim 1.

15. A robot manipulator system comprising a collection of robot manipulators including the robot manipulator of claim 14.

16. 1. A method for feedback control of a robotic manipulator including one or more actuators mechanically coupled to joints of the robotic manipulator for moving the end effector based on measurements of one or more tactile sensors attached to the end effector, the method employing a processor coupled with stored instructions for carrying out the method, the instructions, when executed by the processor, performing steps of the method, the steps including: receiving measurement signals from one or more tactile sensors, the measurement signals comprising measurements of one or more magnitudes of one or more forces along one or more directions relative to the tactile sensors, the step further comprising: filtering the measurement signals to align some or all of the measurement signals with one or more directions of motion of the end effector to generate impedance shaped signals; determining, based on the measurements of the state of the end effector, one or more control signals for the actuator to track a reference state of the end effector; combining the control signal with the impedance shaping signal to generate a control command; and submitting the determined control command to the actuator to change a state of the end effector, wherein the state of the end effector includes one or a combination of an end effector position, an end effector velocity, and an end effector force.

17. The method of claim 16 , further comprising modifying the magnitude of the impedance measured at the one or more tactile sensors with a filter.

18. combining values ​​of the measurement signals into a measurement vector; multiplying the measurement vector by a sensor alignment matrix; 17. The method of claim 16, further comprising filtering the product of the measurement vector and the sensor alignment matrix with a filter having a non-zero gain.

19. 20. The method of claim 18, wherein the gain is negative.

20. 20. The method of claim 18, wherein the sensor alignment matrix is ​​calculated from one or more Jacobians of robot manipulator forward kinematics from joint coordinates of the positions of the one or more tactile sensors, the sensor alignment matrix comprising a number of rows and a number of columns defining a dimension of the sensor alignment matrix as a function of degrees of freedom of the end effector.