# Design of a 3-DOF Parallel Hand-Controller

Authors: Chengcheng Zhu; Aiguo Song
Journal: Journal of Sensors
 (2017)

---

## Abstract

Hand-controllers, as human-machine-interface (HMI) devices, can transfer the position information of the operator’s hands into the virtual environment to control the target objects or a real robot directly. At the same time, the haptic information from the virtual environment or the sensors on the real robot can be displayed to the operator. It helps human perceive haptic information more truly with feedback force. A parallel hand-controller is designed in this paper. It is simplified from the traditional delta haptic device. The swing arms in conventional delta devices are replaced with the slider rail modules. The base consists of two hexagons and several links. For the use of the linear sliding modules instead of swing arms, the arc movement is replaced by linear movement. So that, the calculating amount of the position positive solution and the force inverse solution is reduced for the simplification of the motion. The kinematics, static mechanics, and dynamic mechanics are analyzed in this paper. What is more, two demonstration applications are developed to verify the performance of the designed hand-controller.


---

## Body

## 1. Introduction

At present, human exploration activities have reached every corner of the world. Those exploration tasks may be hazardous, such as space telerobotic maintenance, deep-sea exploration, decontamination, and decommissioning of chemical and nuclear facilities. To ensure the safety of the operators, all these tasks need teleoperated robotic systems, which contain human-machine-interface (HMI) devices. Due to the combination of human decision-making capacity and the operational capability of robots, these complex tasks can be done better [1, 2]. What is more, a series of computer aided tasks, such as computer aided design models, telerobotic surgery, flight simulators, and feeling and telling different material [3, 4], also need high accuracy haptic interface devices. All these tasks can allow the user to practice in a safe, structured environment, perhaps providing haptic feedback or enhancing the user’s ability to understand and control the stored digital model [5]. The tasks’ execution performance is effected by the human-machine interface device [6, 7]. Hand-controller is the most widely used human-machine interface device. It can be treated as a kind of sensor which tracks the operator’s hand’s position and outputs feedback force.As the medium between the operators and the target environment, hand-controllers can display the haptic information to the operators and can send the position information of the operators’ hand to the actuators in the target environment [8].A number of haptic devices have been developed in the past decade. The PHANTOM Haptic Device from SensAble Technologies designed by Massie et al. [9, 10] is a convenient desktop device with 3-DOF (Degrees of Freedom). Due to its cost-effectiveness, it has been widely used in a multitude of applications. It is a series mode device. Series device has the advantages of simple structures, low production cost, and concise algorithm. However, the rigidity of series device is low. The normal range of the series device’s stress deformation is 1~5 N/mm. Most of the SensAble Technologies’ series devices’ stress deformation is in the range of 1~3.5 N/mm. However, a true representation of haptic information needs 1 N/mm stress deformation at least, while a representation of a “rigid body,” for example, wall, needs more than 24 N/mm stress deformation [11, 12].Parallel devices usually have high rigidity and high position accuracy. Hand-controllers with closed polygon structure are not easy to deform. They can keep less deformation while reflecting relatively higher force feedback. The stress deformation of them can be much bigger than 24 N/mm. In addition, the force feedback provider, motors or hydraulic components, can be placed on the base of the parallel hand-controller. It means that the hand-controller’s execution mechanism is made up with several hollow alloy tubes. Its mass is reduced for much. The mass of this kind of haptic devices is usually as low as 0.05 kg, while the series haptic devices may be as high as 2~5 kg [13]. At least one motor must be paced at the mid-joint of a series hand-controller. Reducers must be used on series haptic devices to reduce the volume and mass of the force feedback source, while keeping enough force feedback output. The reduction ration usually as high as 40 to reduces the volume and mass of the force feedback source motors. The dumping of the joint will be increased. So, a parallel haptic device can be used in the environment with low inertia and low damping [14, 15]. The Novint Falcon is a parallel mode haptic device made by Novint for the gaming industry [16]. It has features of low inertia, high stiffness, high operating rate, and better position repeatability for the designer adopted a parallel mechanism, the delta mechanism [17], and lightweight material. So, a parallel haptic device has many advantages that a serial haptic device does not have, such as compact structure, not being easy to deform, bigger force feedback, and higher response frequency. However, most of the traditional delta haptic devices have too complex position solution algorithm and the force decomposition algorithm. Those advantages and disadvantages exist on most of the parallel haptic devices such as the OMEGA Haptic Devices from Force Dimension, designed by Arata et al. [18, 19], and the delta haptic device from Force Dimension [20]. Complex algorithms need more time and steps of calculation. The precision and response frequency may be reduced.Therefore, an improved type of hand-controller with parallel structure is proposed in this paper. This type of parallel hand-controller can simplify the position solution algorithm and the force decomposition algorithm than the traditional parallel devices. This kind of hand-controller has all the delta hand-controller’s characteristics such as low inertia, low friction, high stiffness, back-drivability, zero backlash, and gravitational counterbalancing. Besides, it has a simpler mechanism structure than the traditional delta structure. The simplified structure can reduce the calculation amount in kinematics and mechanics. Less calculation amount in kinematics can improve the position-sampling rate and accuracy. Less calculation amount in mechanics can enhance the feedback force’s frequency response and precision.


## 2. Function and Structure

### 2.1. Function

Most of the hand-controllers, as human-machine integration devices, can send the operator’s hand’s position information to the virtual environment, which is built in a computer. What is more, hand-controllers can display feedback force to the operators to reflect the situations in the virtual environment, such as contact, collision, extrusion, and friction. So, the position measurement and the feedback force display are the two key functions of a hand-controller.Figure1 shows how the hand-controller plays its row in the common application. In the control unit, the counters count the number of the pulses generated by the photo encoders. The DSP calculates the displacement of the sliders according to the counted number and then calculates the position of the hand-controller’s end moving platform. In addition, the control unit also drives the motors to output specific torques so that the end moving platform of the hand-controller can output the required feedback force. Of course, the control unit also has the function to implement the data exchange between the hand-controller and the virtual environment. However, the performance of the control unit is limited by the cost, the DSP’s calculation speed, and other factors. The performance of the hand-controller is limited in precision, frequency response capability, and so on. Simplifying the structure of the hand-controller helps to reduce the burden on the control unit, thereby improving the performance of the hand-controller.Figure 1
Application scenario of the hand-controller.


### 2.2. Structure

Figure2 shows the porotype of the hand-controller proposed in this paper. It is one type of parallel device, which is simplified from the traditional delta hand-controller. Two hexagons and several links are used to compose the base of the hand-controller. Three guide rails connect the two hexagons on three of the sides. Sliders are assembled on the rails. They can move on the rails with tiny friction. Universal cardan joints are assembled on each of the sliders as shown in Figure 3. Same cardan joints are mounted on the end moving plane too. Connecting one pair of cardan joints with two hollow aluminum tubes forms a set of parallelogram mechanism as shown in Figure 4. The advantage of this structure is that it has strong antideformation capability but can move freely. What is more, it has a lighter weight. It is important to reduce inertia and enhance response frequency of a hand-controller. It is also used in traditional delta hand-controllers and some of the serial hand-controllers too, such as the OMEGA Haptic Devices and the PHANTOM Haptic Device mentioned in the Introduction.Figure 2
The improved parallel hand-controller designed in this paper.Figure 3
The universal cardan joint and guide rail.Figure 4
The parallelogram mechanism.However, the swing arms in conventional delta devices, as shown in Figure5, are replaced with the slider rail modules here. The linear slider modules and the parallelogram mechanisms form a variant delta mechanism, an orthogonal delta mechanism. The orthogonal delta mechanism is usually used as an execution unit. To achieve higher position controlling accuracy and larger load capability, screws are used instead of rails. However, for a hand-controller is a bidirectional control device, the screws cannot be used here because it is one kind of self-locking structure. It makes the operator hard to push the hand-controller to input his hand’s position to the system. However, a hand-controller with high performance can be moved freely when there is no need to output a force. Any extra dumping will decrease the accuracy of the outputting force.Figure 5
The conventional parallel hand-controller—OMEGA 3.When one of the three parallelogram mechanisms is perpendicular to the relative rail, this hand-controller cannot be pushed along the parallelogram mechanism. If the pushing force is not along the parallelogram mechanism, the hand-controller will enter into the following two statuses: the angle between the parallelogram mechanism and the rail is bigger than 90° or smaller than 90°. Both of the two statuses are the same in the position solving result. So, every point, at which the parallelogram mechanism is perpendicular to the relative rail, is the singularity of the hand-controller. Printing all those points shows that they are three cylindrical sections. To avoid this situation, the limiter is installed on the cardan joints as shown in Figure3 so that the angles between the parallelogram mechanisms and the rails are always smaller than 90°.Therefore, pulling the operating point, which is the end moving plane of the hand-controller, can bring the three sliders moving on the rails linearly. It is easy to calculate out the hand-controller’s end coordinate through measuring the displacements of the sliders. Meanwhile, applying pulling forces on the sliders drives the hand-controller outputting a needed feedback force.The measuring of the displacement of the sliders and the applying of the pulling forces on the sliders are accomplished by the structure shown in Figure6. It is called transmission mechanism here. Three sets of transmission mechanism are used in the hand-controller. Each transmission mechanism includes a pulley, two pairs of bevel gears, and several couplings. The pulleys are connected to the sliders with low malleability steel wire. The rotation of the pulleys courses the sliders sliding on the rails. Meanwhile, the sliding of the sliders makes the pulleys rotating. A photo-encoder is connected to the pulley with a coupling. Photo-encoder can measure the rotation angle of the pulley, and then the slider’s sliding distance can be obtained. At the same time, a DC motor is connected to the pulley with two pairs of bevel gears. The motor can output torque to the pulley. The pulley applies pulling force on the slider through the steel wire. After that, the three sliders transfer the forces to the end moving plane through the parallelogram mechanisms. Operators can feel the feedback force with the hand-controller. The direction and the value of the force can be adjusted by changing the forces applied on the sliders, which can be done through controlling the torques of each motor. The two pairs of bevel gears can help reduce the volume of the transmission mechanism and increase the outputting torque of the motor. Low malleability steel wire is used here as the transmission media. It makes the movement continuous and supple and it is not self-locking. So, the damping of the bidirectional transmission is small.Figure 6
The transmission mechanism.


## 2.1. Function

Most of the hand-controllers, as human-machine integration devices, can send the operator’s hand’s position information to the virtual environment, which is built in a computer. What is more, hand-controllers can display feedback force to the operators to reflect the situations in the virtual environment, such as contact, collision, extrusion, and friction. So, the position measurement and the feedback force display are the two key functions of a hand-controller.Figure1 shows how the hand-controller plays its row in the common application. In the control unit, the counters count the number of the pulses generated by the photo encoders. The DSP calculates the displacement of the sliders according to the counted number and then calculates the position of the hand-controller’s end moving platform. In addition, the control unit also drives the motors to output specific torques so that the end moving platform of the hand-controller can output the required feedback force. Of course, the control unit also has the function to implement the data exchange between the hand-controller and the virtual environment. However, the performance of the control unit is limited by the cost, the DSP’s calculation speed, and other factors. The performance of the hand-controller is limited in precision, frequency response capability, and so on. Simplifying the structure of the hand-controller helps to reduce the burden on the control unit, thereby improving the performance of the hand-controller.Figure 1
Application scenario of the hand-controller.


## 2.2. Structure

Figure2 shows the porotype of the hand-controller proposed in this paper. It is one type of parallel device, which is simplified from the traditional delta hand-controller. Two hexagons and several links are used to compose the base of the hand-controller. Three guide rails connect the two hexagons on three of the sides. Sliders are assembled on the rails. They can move on the rails with tiny friction. Universal cardan joints are assembled on each of the sliders as shown in Figure 3. Same cardan joints are mounted on the end moving plane too. Connecting one pair of cardan joints with two hollow aluminum tubes forms a set of parallelogram mechanism as shown in Figure 4. The advantage of this structure is that it has strong antideformation capability but can move freely. What is more, it has a lighter weight. It is important to reduce inertia and enhance response frequency of a hand-controller. It is also used in traditional delta hand-controllers and some of the serial hand-controllers too, such as the OMEGA Haptic Devices and the PHANTOM Haptic Device mentioned in the Introduction.Figure 2
The improved parallel hand-controller designed in this paper.Figure 3
The universal cardan joint and guide rail.Figure 4
The parallelogram mechanism.However, the swing arms in conventional delta devices, as shown in Figure5, are replaced with the slider rail modules here. The linear slider modules and the parallelogram mechanisms form a variant delta mechanism, an orthogonal delta mechanism. The orthogonal delta mechanism is usually used as an execution unit. To achieve higher position controlling accuracy and larger load capability, screws are used instead of rails. However, for a hand-controller is a bidirectional control device, the screws cannot be used here because it is one kind of self-locking structure. It makes the operator hard to push the hand-controller to input his hand’s position to the system. However, a hand-controller with high performance can be moved freely when there is no need to output a force. Any extra dumping will decrease the accuracy of the outputting force.Figure 5
The conventional parallel hand-controller—OMEGA 3.When one of the three parallelogram mechanisms is perpendicular to the relative rail, this hand-controller cannot be pushed along the parallelogram mechanism. If the pushing force is not along the parallelogram mechanism, the hand-controller will enter into the following two statuses: the angle between the parallelogram mechanism and the rail is bigger than 90° or smaller than 90°. Both of the two statuses are the same in the position solving result. So, every point, at which the parallelogram mechanism is perpendicular to the relative rail, is the singularity of the hand-controller. Printing all those points shows that they are three cylindrical sections. To avoid this situation, the limiter is installed on the cardan joints as shown in Figure3 so that the angles between the parallelogram mechanisms and the rails are always smaller than 90°.Therefore, pulling the operating point, which is the end moving plane of the hand-controller, can bring the three sliders moving on the rails linearly. It is easy to calculate out the hand-controller’s end coordinate through measuring the displacements of the sliders. Meanwhile, applying pulling forces on the sliders drives the hand-controller outputting a needed feedback force.The measuring of the displacement of the sliders and the applying of the pulling forces on the sliders are accomplished by the structure shown in Figure6. It is called transmission mechanism here. Three sets of transmission mechanism are used in the hand-controller. Each transmission mechanism includes a pulley, two pairs of bevel gears, and several couplings. The pulleys are connected to the sliders with low malleability steel wire. The rotation of the pulleys courses the sliders sliding on the rails. Meanwhile, the sliding of the sliders makes the pulleys rotating. A photo-encoder is connected to the pulley with a coupling. Photo-encoder can measure the rotation angle of the pulley, and then the slider’s sliding distance can be obtained. At the same time, a DC motor is connected to the pulley with two pairs of bevel gears. The motor can output torque to the pulley. The pulley applies pulling force on the slider through the steel wire. After that, the three sliders transfer the forces to the end moving plane through the parallelogram mechanisms. Operators can feel the feedback force with the hand-controller. The direction and the value of the force can be adjusted by changing the forces applied on the sliders, which can be done through controlling the torques of each motor. The two pairs of bevel gears can help reduce the volume of the transmission mechanism and increase the outputting torque of the motor. Low malleability steel wire is used here as the transmission media. It makes the movement continuous and supple and it is not self-locking. So, the damping of the bidirectional transmission is small.Figure 6
The transmission mechanism.


## 3. Kinematics

### 3.1. Position Positive Solutions

Position tracking is one of a hand-controller’s main functions. As for the hand-controller designed in this paper, when the operator is using it to input his hand’s position information to the virtual environment, the hand-controller’s end moving platform is guided by the operator’s hand. It makes the three sliders moving on the rails. The displacements of the three sliders can be measured with the transmission mechanisms and the photo encoders. The kinematics analysis of a hand-controller is to derive the calculation equations of the hand-controller’s end moving platform’s midpoint from the sliders’ displacements.Figure7 shows the structure diagram of the hand-controller. The parallelogram mechanisms’ length is L. Connecting the three guide rails’ ends on the hand-controller’s base brings an equilateral triangle with side length of l′. The side length of the end moving triangle is l. Coordinate system o-xyz is established as shown in Figure 6. The origin point o is set at the midpoint of the line which connects the two bottom rails’ tails. Axis x is alone the connecting line, pointing to the end moving plane. Axis y points to the third rail’s tail. Axis z points to the end moving plane, along the direction of the guide rails. The end moving platform is pushed until all the three sliders get to the end of the rails and this status is treated as the beginning point of the hand-controller. Pulling or pushing the end moving plane drives the parallelogram mechanisms’ cardan bases sliding on the guide rails. The photoelectric encoders and the steel wire traction mechanism can measure the distance between the plane xoy and the cardan bases. They are hA, hB, and hC. The goal here is to calculate the coordinate of the end moving platform’s midpoint.Figure 7
The hand-controller’s structure diagram.Moving the three parallelogram mechanisms’ equivalent midlines inward until they intersect at the midpoint of the end moving platform results in a triangular pyramidD-ABC. The length of the triangular pyramid’ edge is L. Foot point D′ can be obtained by drawing planeABC’s perpendicular line through point D. So that point D′ is the circumcenter of ΔABC. LineAB’s midpoint is point E. Therefore, (1)ED⃑′=ED′⃑•nED′⃑.Vector nED′ is the unit vector of vector ED. It can be obtained by (2)nED′⃑=AB⃑×BC⃑×AB⃑AB⃑•BC⃑•AB⃑.In (1), ED′⃑ is the length of the vector ED⃑. It can be got by (3)ED′⃑=AD′⃑2-AE⃑2,where AD′⃑ is the circumradius of ΔABC. According to law of sines, it can be obtained by formula (4).(4)AD′⃑=a2sin⁡A,a=BC⃑.Meanwhile,(5)AD⃑=AD′⃑+D′D⃑in which, D′D⃑=D′D⃑•nD′D⃑=AD⃑2-AD′⃑2•(AB⃑×BC⃑/AB⃑•BC⃑) and AD⃑′=AE⃑+ED′⃑=AE⃑+AD′⃑2-AE⃑2(AB⃑×BC⃑×AB⃑/AB⃑BC⃑AB⃑).Ino-xyz, pointA’s coordinate is (-l′/2+l/4,(3/12)l,hA), pointB’s coordinate is (l′/2-l/4,(3/12)l,hB), and pointC’s coordinate is (0,3/2l′-(3/6)l,hC). It is easy to calculate out the pointE’s coordinate and ΔABC’s side length of a, b, and c. Putting them to formula (1)~(5) brings the vectorAD. So, the coordinate of point D is gotten.By now, the coordinate of pointD is obtained. In the entire derivation process, there are no matrix calculation, no complex coordinate transfer, and less trigonometric function (only one time). All those complex calculations bring in the errors when the control unit processes the data. Only simple basic calculation and three times of root operation are needed. The root operation and the trigonometric calculation can be done with the CORDIC (Coordinate Rotation Digital Computer) algorithm [21]. Only after 5 times of iterations, the result of the calculation can achieve the required accuracy. Therefore, the simplified parallel hand-controller reduces a lot of calculation amount. It is benefit for improving the real-time capability, position-sampling accuracy, and sampling rate.


### 3.2. Spatial Extent Definition

When an operator is controlling a mechanical arm with large moving range, incremental control method is usually used. For a long displacement, it can be pushed several times. Hand-controllers with large movement range reduce the times of reciprocating and improve the efficiency of position control in the long displacement control. Less times of reciprocating can also reduce the effect of mechanical hysteresis to the control accuracy.The three guide rails’ length is 330 mm. The parallelogram mechanisms’ length is 250 mm. The distance between two guide rails’ tail,l′, is 369 mm. The end moving platform triangle’s side length is 38 mm. The range in the three-dimensional space, which can be reached by the hand-controller’s end, can be drawn based on those data and formula (5) above as shown in Figure 8. The size of this range reflects the convenience of the hand-controller in controlling large equipment. The angles betweenAD andDD,BD andDD, andCD andDD should be checked. To prevent the hand-controller from entering the unrecoverable status, the limiter is mounted on the universal joint mounted on the end plate. The three angles cannot reach 90 degrees. In fact, it is limited to less than 89°. In the procedure of calculating the hand-controller’s moving range, the point should be abandoned at which more than one of the three angles between the parallelogram mechanisms and the rails is bigger than 89°.Figure 8
Spatial extension of the proposed hand-controller.
(a)
Moving range inXOY plane
(b)
Moving range inXOZ plane
(c)
Moving range inYOZ plane
(d)
Moving range in spaceThe simulation result shows that the movement range of the hand-controller designed here is 110 mm∗ 110 mm ∗ 330 mm. However, it is not a cube, but a similar triangular prism as shown in Figure 8(d). It has a relatively large moving range. This range meets the requirement of general mechanical arms control. Especially in z-axis, the displacement is up to 330 mm. The large moving range is suitable for push-pull action when operating a large mechanical arm.


### 3.3. Position Tracking Accuracy

To verify the hand-controller’s position tracking performance, a verification platform is established. A programmable 3D linear displacing module, as shown in Figure9, is used here to guide the hand-controller’s end moving platform as shown in Figure 10. The coordinate of the linear displacing module’s loading plane can be set by the control panel. For the accuracy of the linear displacing module is less than 0.1 mm, which is much higher than the hand-controller’s common application’s requirement, the set coordinate of the displacing module can be treated as the actual coordinate of the hand-controller’s end moving platform’s midpoint. By comparing the linear displacing module’s set coordinate and the hand-controller’s calculated coordinate, the hand-controller’s position tracking performance can be evaluated.Figure 9
Programmable 3D linear displacing module.Figure 10
Position verification platform assembly.Figure11 shows the result of the position tracking verification. To achieve the max moving range in x-axis and y-axis, the hand-controller should be guided to the middle of z-axis moving range first. The verification result shows that the hand-controller goes well in position tracking. Although the errors in X and Y direction are monotonically increasing, the absolute values of the errors are small enough. The max error in Z direction is up to 1.55 mm. However, it is convergent. The error can be treated as a fixed offset. The offset can be used to adjust the result of the calculated displacement. So, the error can be limited within 0.2 mm. The hand-controller designed in this paper has good performance in position tracking accuracy.Figure 11
Position tracking verification result and error.
(a)
Calculated displacement inX direction
(b)
Error inX direction
(c)
Calculated displacement inY direction
(d)
Error inY direction
(e)
Calculated displacement inZ direction
(f)
Error inZ direction


## 3.1. Position Positive Solutions

Position tracking is one of a hand-controller’s main functions. As for the hand-controller designed in this paper, when the operator is using it to input his hand’s position information to the virtual environment, the hand-controller’s end moving platform is guided by the operator’s hand. It makes the three sliders moving on the rails. The displacements of the three sliders can be measured with the transmission mechanisms and the photo encoders. The kinematics analysis of a hand-controller is to derive the calculation equations of the hand-controller’s end moving platform’s midpoint from the sliders’ displacements.Figure7 shows the structure diagram of the hand-controller. The parallelogram mechanisms’ length is L. Connecting the three guide rails’ ends on the hand-controller’s base brings an equilateral triangle with side length of l′. The side length of the end moving triangle is l. Coordinate system o-xyz is established as shown in Figure 6. The origin point o is set at the midpoint of the line which connects the two bottom rails’ tails. Axis x is alone the connecting line, pointing to the end moving plane. Axis y points to the third rail’s tail. Axis z points to the end moving plane, along the direction of the guide rails. The end moving platform is pushed until all the three sliders get to the end of the rails and this status is treated as the beginning point of the hand-controller. Pulling or pushing the end moving plane drives the parallelogram mechanisms’ cardan bases sliding on the guide rails. The photoelectric encoders and the steel wire traction mechanism can measure the distance between the plane xoy and the cardan bases. They are hA, hB, and hC. The goal here is to calculate the coordinate of the end moving platform’s midpoint.Figure 7
The hand-controller’s structure diagram.Moving the three parallelogram mechanisms’ equivalent midlines inward until they intersect at the midpoint of the end moving platform results in a triangular pyramidD-ABC. The length of the triangular pyramid’ edge is L. Foot point D′ can be obtained by drawing planeABC’s perpendicular line through point D. So that point D′ is the circumcenter of ΔABC. LineAB’s midpoint is point E. Therefore, (1)ED⃑′=ED′⃑•nED′⃑.Vector nED′ is the unit vector of vector ED. It can be obtained by (2)nED′⃑=AB⃑×BC⃑×AB⃑AB⃑•BC⃑•AB⃑.In (1), ED′⃑ is the length of the vector ED⃑. It can be got by (3)ED′⃑=AD′⃑2-AE⃑2,where AD′⃑ is the circumradius of ΔABC. According to law of sines, it can be obtained by formula (4).(4)AD′⃑=a2sin⁡A,a=BC⃑.Meanwhile,(5)AD⃑=AD′⃑+D′D⃑in which, D′D⃑=D′D⃑•nD′D⃑=AD⃑2-AD′⃑2•(AB⃑×BC⃑/AB⃑•BC⃑) and AD⃑′=AE⃑+ED′⃑=AE⃑+AD′⃑2-AE⃑2(AB⃑×BC⃑×AB⃑/AB⃑BC⃑AB⃑).Ino-xyz, pointA’s coordinate is (-l′/2+l/4,(3/12)l,hA), pointB’s coordinate is (l′/2-l/4,(3/12)l,hB), and pointC’s coordinate is (0,3/2l′-(3/6)l,hC). It is easy to calculate out the pointE’s coordinate and ΔABC’s side length of a, b, and c. Putting them to formula (1)~(5) brings the vectorAD. So, the coordinate of point D is gotten.By now, the coordinate of pointD is obtained. In the entire derivation process, there are no matrix calculation, no complex coordinate transfer, and less trigonometric function (only one time). All those complex calculations bring in the errors when the control unit processes the data. Only simple basic calculation and three times of root operation are needed. The root operation and the trigonometric calculation can be done with the CORDIC (Coordinate Rotation Digital Computer) algorithm [21]. Only after 5 times of iterations, the result of the calculation can achieve the required accuracy. Therefore, the simplified parallel hand-controller reduces a lot of calculation amount. It is benefit for improving the real-time capability, position-sampling accuracy, and sampling rate.


## 3.2. Spatial Extent Definition

When an operator is controlling a mechanical arm with large moving range, incremental control method is usually used. For a long displacement, it can be pushed several times. Hand-controllers with large movement range reduce the times of reciprocating and improve the efficiency of position control in the long displacement control. Less times of reciprocating can also reduce the effect of mechanical hysteresis to the control accuracy.The three guide rails’ length is 330 mm. The parallelogram mechanisms’ length is 250 mm. The distance between two guide rails’ tail,l′, is 369 mm. The end moving platform triangle’s side length is 38 mm. The range in the three-dimensional space, which can be reached by the hand-controller’s end, can be drawn based on those data and formula (5) above as shown in Figure 8. The size of this range reflects the convenience of the hand-controller in controlling large equipment. The angles betweenAD andDD,BD andDD, andCD andDD should be checked. To prevent the hand-controller from entering the unrecoverable status, the limiter is mounted on the universal joint mounted on the end plate. The three angles cannot reach 90 degrees. In fact, it is limited to less than 89°. In the procedure of calculating the hand-controller’s moving range, the point should be abandoned at which more than one of the three angles between the parallelogram mechanisms and the rails is bigger than 89°.Figure 8
Spatial extension of the proposed hand-controller.
(a)
Moving range inXOY plane
(b)
Moving range inXOZ plane
(c)
Moving range inYOZ plane
(d)
Moving range in spaceThe simulation result shows that the movement range of the hand-controller designed here is 110 mm∗ 110 mm ∗ 330 mm. However, it is not a cube, but a similar triangular prism as shown in Figure 8(d). It has a relatively large moving range. This range meets the requirement of general mechanical arms control. Especially in z-axis, the displacement is up to 330 mm. The large moving range is suitable for push-pull action when operating a large mechanical arm.


## 3.3. Position Tracking Accuracy

To verify the hand-controller’s position tracking performance, a verification platform is established. A programmable 3D linear displacing module, as shown in Figure9, is used here to guide the hand-controller’s end moving platform as shown in Figure 10. The coordinate of the linear displacing module’s loading plane can be set by the control panel. For the accuracy of the linear displacing module is less than 0.1 mm, which is much higher than the hand-controller’s common application’s requirement, the set coordinate of the displacing module can be treated as the actual coordinate of the hand-controller’s end moving platform’s midpoint. By comparing the linear displacing module’s set coordinate and the hand-controller’s calculated coordinate, the hand-controller’s position tracking performance can be evaluated.Figure 9
Programmable 3D linear displacing module.Figure 10
Position verification platform assembly.Figure11 shows the result of the position tracking verification. To achieve the max moving range in x-axis and y-axis, the hand-controller should be guided to the middle of z-axis moving range first. The verification result shows that the hand-controller goes well in position tracking. Although the errors in X and Y direction are monotonically increasing, the absolute values of the errors are small enough. The max error in Z direction is up to 1.55 mm. However, it is convergent. The error can be treated as a fixed offset. The offset can be used to adjust the result of the calculated displacement. So, the error can be limited within 0.2 mm. The hand-controller designed in this paper has good performance in position tracking accuracy.Figure 11
Position tracking verification result and error.
(a)
Calculated displacement inX direction
(b)
Error inX direction
(c)
Calculated displacement inY direction
(d)
Error inY direction
(e)
Calculated displacement inZ direction
(f)
Error inZ direction


## 4. Static Mechanics Analysis

### 4.1. Static Mechanics Inverse Algorithm

A hand-controller with force feedback can provide accurate feedback force. This parallel hand-controller can provide feedback force with the three servomotors assembled at the tail of each guide rail. The motors can pull the slider with the steel rope through the pulleys. The pulling forces applied on the sliders can provide the resultant force, which is exactly equal to the need feedback force. The static mechanics analysis is to derive the calculation forms with which the control unit can number out how much torque the motors should provide when the hand-controller is controlled to output a feedback force to the operator certain continuously in the static status. This state is usually to display the forces applied to an object which is inside flowing liquid.Suppose that the feedback force which needs to be displayed at the end of the hand-controller isF⃑=(fx,fy,fz). At this time, the pulling forces which need to be applied on the three sliders are fA, fB, and fC. The vector forms of them are presented as follows: FA⃑=(0,0,fA), FB⃑=(0,0,fB), and FC⃑=(0,0,fC). Their respective components in the direction of each parallelogram mechanism are FAD, FBD, and FCD. Equation (6) shows their solution. The parallelogram mechanisms deliver them to the end effect plane.(6)FAD⃑=FAD⃑nAD⃑=zAD⃑fAnAD⃑=xAD⃑zAD⃑fA,yAD⃑zAD⃑fA,zAD⃑2fAFBD⃑=FBD⃑nBD⃑=zBD⃑fBnBD⃑=xBD⃑zBD⃑fB,yBD⃑zBD⃑fB,zBD⃑2fBFCD⃑=FCD⃑nCD⃑=zCD⃑fCnCD⃑=xCD⃑zCD⃑fC,yCD⃑zCD⃑fC,zCD⃑2fC,where nAD⃑ is the unit vector of AD⃑, nBD⃑ is the unit vector of BD⃑, and nCD⃑ is the unit vector of CD⃑.What is more, the relationship between the end feedback force and the three component forces is(7)F⃑=fx,fy,fz=FAD⃑+FBD⃑+FCD⃑.Putting (6) to (7) brings(8)xAD⃑zAD⃑fA+xBD⃑zBD⃑fB+xCD⃑zCD⃑fC=fxyAD⃑zAD⃑fA+yBD⃑zBD⃑fB+yCD⃑zCD⃑fC=fyzAD⃑2fA+zBD⃑2fB+zCD⃑2fC=fz.Presenting (8) in matrix form is (9)fAfBfC=xAD⃑zAD⃑xBD⃑zBD⃑xCD⃑zCD⃑yAD⃑zAD⃑yBD⃑zBD⃑yCD⃑zCD⃑zAD⃑2zBD⃑2zCD⃑2-1fxfyfz.Equation (9) shows the static mechanics decomposition result of the hand-controller designed here.(10)τ=CΦD·I.The DC servomotors apply the pulling forces on the sliders through the pulleys and the steel rope. The pulling force is proportional to the output torque of the motor, and the ratio is the radius of the pulley. What is more, the outputting torque of the motor has the relationship with the loop current as shown in (10). C is the motor’s constant, Φ is the motor’s magnetic flux, and D is the motor’s turning radius. When a motor is in a stalled state or a low speed state and the current is under the limit of the motor’s rated current, the above three parameters are constant. It means that the output torque of the motor is proportional to the current. The torque-current ratio can be obtained through calibrating the motor. Every motor’s torque-current ratio is different. They should be calibrated individually.(11)fA=kA·IAfB=kB·IBfC=kC·IC.Therefore, the outputting torque of a motor is proportional to its loop current. Thus, the pulling forces,fA, fB, and fC, applied on the sliders by the motors are proportional to the loop currents of the three motors’ driving unit too. The ratios are kA, kB, and kC. All of them should be calibrated before being assembled on the device.All the control unit needs to do is solving a linear homogeneous equations group to let the motors’ driving unit output a definite current. The motors should be driven under the constant current mode. Therefore, the hand-controller can output a required feedback force. The simplified parallel hand-controller needs simple algorithm. The simple algorithm needs less calculating time and steps, which may affect the hand-controller’s real-time capability, response frequency, and force feedback accuracy. In contrast, traditional delta hand-controller’s mechanics inverse algorithm needs to find out its Jacobean Matrix. After that, the virtual work principle is used to calculate how much force should the three motors output. In the entire procedure, complex matrix calculations and coordinate system translations are necessary which cost more time and calculation units in DSP.


### 4.2. Gravity Compensation

The hollow aluminum pipes, which constitute the parallelogram mechanism, have a certain mass. The hollow aluminum pipes’ mass will affect the hand-controller’s force feedback precision. As shown in Figure12, in a set of parallelogram mechanism, the two hollow pipes’ mass is equivalent of applying a force size of Fg on the end effect plane of the hand-controller. The direction of Fg is along the y-axis’s negative direction. Three sets of parallelogram mechanism bring 3Fg equivalent force applied on the end moving platform. In addition, the end moving platform has a weight of mpg itself. Its direction is the same as the equivalent force mentioned above. Therefore, the total gravity compensation amount is 3Fg+mpg. If we want the hand-controller to output a feedback force size of F⃑=(fx,fy,fz), we need to output more 3Fg+mpg in y-axis direction. The total output feedback force is F⃑=(fx,fy+3Fg+mpg,fz). Therefore, (9) can be adjusted to (12)fAfBfC=xAD⃑zAD⃑xBD⃑zBD⃑xCD⃑zCD⃑yAD⃑zAD⃑yBD⃑zBD⃑yCD⃑zCD⃑zAD⃑2zBD⃑2zCD⃑2-1fxfy+3Fg+mpgfz.Figure 12
The force distribution of parallelogram mechanism.


## 4.1. Static Mechanics Inverse Algorithm

A hand-controller with force feedback can provide accurate feedback force. This parallel hand-controller can provide feedback force with the three servomotors assembled at the tail of each guide rail. The motors can pull the slider with the steel rope through the pulleys. The pulling forces applied on the sliders can provide the resultant force, which is exactly equal to the need feedback force. The static mechanics analysis is to derive the calculation forms with which the control unit can number out how much torque the motors should provide when the hand-controller is controlled to output a feedback force to the operator certain continuously in the static status. This state is usually to display the forces applied to an object which is inside flowing liquid.Suppose that the feedback force which needs to be displayed at the end of the hand-controller isF⃑=(fx,fy,fz). At this time, the pulling forces which need to be applied on the three sliders are fA, fB, and fC. The vector forms of them are presented as follows: FA⃑=(0,0,fA), FB⃑=(0,0,fB), and FC⃑=(0,0,fC). Their respective components in the direction of each parallelogram mechanism are FAD, FBD, and FCD. Equation (6) shows their solution. The parallelogram mechanisms deliver them to the end effect plane.(6)FAD⃑=FAD⃑nAD⃑=zAD⃑fAnAD⃑=xAD⃑zAD⃑fA,yAD⃑zAD⃑fA,zAD⃑2fAFBD⃑=FBD⃑nBD⃑=zBD⃑fBnBD⃑=xBD⃑zBD⃑fB,yBD⃑zBD⃑fB,zBD⃑2fBFCD⃑=FCD⃑nCD⃑=zCD⃑fCnCD⃑=xCD⃑zCD⃑fC,yCD⃑zCD⃑fC,zCD⃑2fC,where nAD⃑ is the unit vector of AD⃑, nBD⃑ is the unit vector of BD⃑, and nCD⃑ is the unit vector of CD⃑.What is more, the relationship between the end feedback force and the three component forces is(7)F⃑=fx,fy,fz=FAD⃑+FBD⃑+FCD⃑.Putting (6) to (7) brings(8)xAD⃑zAD⃑fA+xBD⃑zBD⃑fB+xCD⃑zCD⃑fC=fxyAD⃑zAD⃑fA+yBD⃑zBD⃑fB+yCD⃑zCD⃑fC=fyzAD⃑2fA+zBD⃑2fB+zCD⃑2fC=fz.Presenting (8) in matrix form is (9)fAfBfC=xAD⃑zAD⃑xBD⃑zBD⃑xCD⃑zCD⃑yAD⃑zAD⃑yBD⃑zBD⃑yCD⃑zCD⃑zAD⃑2zBD⃑2zCD⃑2-1fxfyfz.Equation (9) shows the static mechanics decomposition result of the hand-controller designed here.(10)τ=CΦD·I.The DC servomotors apply the pulling forces on the sliders through the pulleys and the steel rope. The pulling force is proportional to the output torque of the motor, and the ratio is the radius of the pulley. What is more, the outputting torque of the motor has the relationship with the loop current as shown in (10). C is the motor’s constant, Φ is the motor’s magnetic flux, and D is the motor’s turning radius. When a motor is in a stalled state or a low speed state and the current is under the limit of the motor’s rated current, the above three parameters are constant. It means that the output torque of the motor is proportional to the current. The torque-current ratio can be obtained through calibrating the motor. Every motor’s torque-current ratio is different. They should be calibrated individually.(11)fA=kA·IAfB=kB·IBfC=kC·IC.Therefore, the outputting torque of a motor is proportional to its loop current. Thus, the pulling forces,fA, fB, and fC, applied on the sliders by the motors are proportional to the loop currents of the three motors’ driving unit too. The ratios are kA, kB, and kC. All of them should be calibrated before being assembled on the device.All the control unit needs to do is solving a linear homogeneous equations group to let the motors’ driving unit output a definite current. The motors should be driven under the constant current mode. Therefore, the hand-controller can output a required feedback force. The simplified parallel hand-controller needs simple algorithm. The simple algorithm needs less calculating time and steps, which may affect the hand-controller’s real-time capability, response frequency, and force feedback accuracy. In contrast, traditional delta hand-controller’s mechanics inverse algorithm needs to find out its Jacobean Matrix. After that, the virtual work principle is used to calculate how much force should the three motors output. In the entire procedure, complex matrix calculations and coordinate system translations are necessary which cost more time and calculation units in DSP.


## 4.2. Gravity Compensation

The hollow aluminum pipes, which constitute the parallelogram mechanism, have a certain mass. The hollow aluminum pipes’ mass will affect the hand-controller’s force feedback precision. As shown in Figure12, in a set of parallelogram mechanism, the two hollow pipes’ mass is equivalent of applying a force size of Fg on the end effect plane of the hand-controller. The direction of Fg is along the y-axis’s negative direction. Three sets of parallelogram mechanism bring 3Fg equivalent force applied on the end moving platform. In addition, the end moving platform has a weight of mpg itself. Its direction is the same as the equivalent force mentioned above. Therefore, the total gravity compensation amount is 3Fg+mpg. If we want the hand-controller to output a feedback force size of F⃑=(fx,fy,fz), we need to output more 3Fg+mpg in y-axis direction. The total output feedback force is F⃑=(fx,fy+3Fg+mpg,fz). Therefore, (9) can be adjusted to (12)fAfBfC=xAD⃑zAD⃑xBD⃑zBD⃑xCD⃑zCD⃑yAD⃑zAD⃑yBD⃑zBD⃑yCD⃑zCD⃑zAD⃑2zBD⃑2zCD⃑2-1fxfy+3Fg+mpgfz.Figure 12
The force distribution of parallelogram mechanism.


## 5. Dynamic Mechanics Analysis

In fact, most of the applications of a hand-controller are to control a virtual or real robot to do some tasks. In the procedure of those operations, both of the hand-controller and the robot are moving. And the robot will contact other objects, which means that the hand-controller needs to output feedback force in motion. So, the dynamic mechanics analysis is to derive the calculation forms with witch the control unit can number out how much torque the motors should provide when the hand-controller wants to output a certain feedback force to the operator when it is in motion.In Section3.1, we have obtained the position of the end moving platform according to the sliders’ displacements moving on the rails. The coordinate of the end moving platform’s center is defined as P=(Px,Py,Pz). The sliders’ displacements are hA, hB, and hC. For the convenience of expression, they are redefined as h1, h2, and h3. Although the end moving platform’s coordinate can be obtained by h1, h2, and h3, we still should build a generalized coordinate system containing h1, h2, h3, and P. This avoids the expression being too complicated. The first type of Lagrangian equation [22] is used to model the mechanism dynamics as (13)ddt∂L∂q˙j-∂L∂qj=Qj+∑i=1kλi∂Γi∂qj,j=1,2,3,…,n.In (13), L is the Lagrangian equation. It can be obtained with L=K-U. K represents the total kinetic energy of the mechanics, and U represents the total potential energy of the mechanics. Г represents the constraint equation. λi represents the Lagrangian operators. qj is the generalized coordinate system. Qj is the generalized forced in the generalized coordinate system qj. When qj=px,py,pz, Qj represents the forces applied on the end moving platform which is fx, fy, and fz. When qj=h1,h2,h3, Qj represents the forces applied on the sliders which is f1, f2, and f3.For the extra generalized coordinatesh1, h2, and h3, we need extra three constraint equations. According to the principle of the parallelogram mechanism’s side length which is constant, we establish the constraint equations as bellow.(14)Γ1=DA2-L2=px+l′2-l42+py-312l2+pz-h12-L2=0Γ2=DB2-L2=px-l′2+l42+py-312l2+pz-h22-L2=0Γ3=DC2-L2=px2+py-32l′+36l2+pz-h32-L2=0.The total kinetic energy of the mechanics is(15)K=Kp+2∑i=13Kti+∑i=13Ksi.K
p means the end moving platform’s kinetic energy. Kt is the hollow aluminum tubes’ kinetic energy. Ks is the sliders’ kinetic energy. For the sake of simplicity of expression, the weight of the universal cardan joints is ignored here.(16)Kp=12mpp˙x2+p˙y2+p˙z2Kti=12mt14p˙x2+14p˙y2+14p˙z2+14h˙i2+12p˙zh˙i+12·13mtL21L2p˙x2+1L2p˙y2+1L2p˙z2+1L2h˙i2-2L2p˙zh˙i=724mtp˙x2+p˙y2+p˙z2+h˙i2-112mtp˙zh˙iKsi=12msh˙i2.The total potential energy of the mechanics is(17)U=Up+2∑i=13Uti=mpgpy+mtg3py+32l′.U
p is the potential energy of the end moving platform. Ut is the hollow aluminum tubes’ potential energy. g is the gravitational acceleration. So, the Lagrangian equation is gotten.(18)L=K-U=74mtp˙x2+p˙y2+p˙z2+712mt+12msh˙12+h˙22+h˙32-16mtp˙zh˙1+h˙2+h˙3-mp+mtgpy-32mtgl′.Puttingqj=px,py,pz into ∂L/∂qj, ∂L/∂q˙j and ∂Γi/∂qj, we can obtain the Lagrangian operators according to (13). Here, Qj=fx,fy,fz.(19)2λ1px+l′2-l4+2λ2px-l′2+l4+2λ3px=72mtp¨x-fx2λ1py-312l+2λ2py-312l+2λ3py-32l′+36l=72mtp¨y+mp+3mtg-fy2λ1pz-h1+2λ2pz-h2+2λ3pz-h3=72mtp¨z-16mth˙1+h˙2+h˙3.Adjusting (19) into matrix form can make it simple to calculate the Lagrangian operators λ1, λ2, and λ3.(20)λ1λ2λ3=2px+l′-l22px-l′+l22px2py-36l2py-36l2py-3l′+33l2pz-h12pz-h22pz-h3-172mtp¨x-fx72mtp¨y+mp+3mtg-fy72mtp¨z-16mth˙1+h˙2+h˙3.f
x, fy, and fz are the forces applied on the end moving platform. They are known. Putting qj=h1,h2,h3 into ∂L/∂qj, ∂L/∂q˙j, and ∂Γi/∂qj, associated with the Lagrangian operators λ1, λ2, and λ3 gotten above, brings the forces f1, f2, and f3 applied on the sliders according to (13).(21)f1f2f3=76mt+msh¨1-16mtp˙z76mt+msh¨2-16mtp˙z76mt+msh¨3-16mtp˙z-2pz-h10002pz-h20002pz-h3λ1λ2λ3.Equation (21) shows that the forces should be applied on the sliders if the feedback force displayed by the end moving platform is (fx, fy, fz) in dynamic situation. There are no trigonometric calculations and less calculation steps than the traditional delta hand-controllers. It means that the parallel hand-controller designed in this paper has higher response frequency and precision in the case of same size, material, and manufacturing accuracy relative to the traditional delta hand-controllers.


## 6. Application Demonstration

In order to verify the performance of the hand-controller designed in this paper, two applications were developed. Operators can control the target objects in the virtual environment with this hand-controller. The target object in first application is a MOTOR MAN robot model as shown in Figure13. The end of the robot translates in the virtual 3D space along with the hand-controller’s end platform in the real 3D space. Three pointer controls dedicate the photo encoders’ turning angles. Meanwhile, edit boxes display the coordinate values of the hand-controller’s end platform. This application shows that the hand-controller’s position acquisition accuracy and stability are in line with the needs of a good human-machine-interface (HMI) input device.Figure 13
First verification applications.Figure14 shows that the target object in the second application is a ball in a wooden box. Suppose that the ball is a rigid body. The deformation of it is zero when it is contacting with the wooden box, while the wall of the box has deformation. Suppose that the deformation is elastic deformation and the contact between the ball and the wall is frontal collision as shown in Figure 15. The contact force between the ball and the wall is proportional to the deformation of the wall. It is F=k·d. When the elasticity coefficient, k, is big, the collision between the ball and the wall can be treated as “rigid contact.” Usually, k is bigger than 24 N/mm as mentioned in the Introduction. In this condition, there is no obvious deformation on the hand-controller. It means that the hand-controller designed in this paper can output proper feedback force and display “rigid contact” truly. Therefore, it can be treated as a qualified HMI output device. In both of the two applications, the delay can be ignored. It is easy to use and the operator has a good sense of immersion.Figure 14
First verification applications.Figure 15
Contact between the ball and the wall.


## 7. Conclusion

A kind of hand-controller with parallel structure is designed in this paper. It is simplified from the traditional delta hand-controller. The swim arms on the traditional delta hand-controller are changed into combination of linear guides and sliders. This helps to simplify kinematics, statics, and dynamics mechanics solving procedure. There is almost no triangular calculation and coordinate system translation which cost lots of calculation resources. Less calculations means that low cost and higher precision in the condition of same level of manufacturing accuracy for every step of calculation may bring in errors. And less calculations also means higher sample rate and output rate. It helps the hand-controller improve its response frequency. Besides, for the power input part, direct driving in the traditional delta hand-controllers is changed into gear driving with two sets of bevel gears. It helps to reduce the motors’ size and can adjust the installation direction of the motors. This makes the hand-controller’s structure compact. Due to the part size error generated during machining and the nonlinearity of the motor torque output, the hand-controller needs to be systematically calibrated before being put into use. Therefore, in the subsequent work, an efficient, simple, highly automated calibration method needs to be designed.



---

*Source: 8162512-2017-10-16.xml*