Kinematic Modelling and Position Control of A 3-DOF Parallel Stabilizing Robot Manipulator

This paper focuses on investigating a parallel camera stabilizing manipulator with three angular degrees of freedom controlled by three linear actuators. An experimental setup is designed and manufactured to actively isolate the host vehicle's disturbing motions. The kinematic analysis of the manipulator combined with a controller is used to disturbance rejection coming from the base platform. Two inertia measurement units (IMU) are used for real-time feedback from the base and up-per platforms' orientation. A Kalman filter is implemented for handling the noises and drifts of the IMUs data. Inverse kinematics of the manipulator is used for calculating the actuating commands and velocity control of the linear motors. The experimental results of the proposed camera stabilizing system are shown. The results indicate its good capability in following the reference input of the controller. Considering the closed kinematic chain of the system and its stiff parallel architecture, this system can be a good choice for the stabilizing system of ground and aerial vehicles.


Introduction
There are different manipulator architecture concepts in robotic applications. Generally, it is possible to classify these concepts into two main groups. These groups are serial and parallel robot arms. Serial robot arms are the most common industrial robots. In this concept, there are a couple of links/joints between the robot body and the end-effector, and always the next link is connected in series to the end of the previous link by a joint. These types of robots are called anthropomorphic (in human form) robot arms. The most important advantage of serial robot arms is that they have a large working area. That's why they are widely used in industrial applications. A parallel robot arm is a mechanical system formed by two linked platforms, a fixed platform, and a moving platform. The movable platform is connected to the fixed platform by at least two independent computercontrolled links working in parallel. Compared to serial robot arms, parallel manipulators are more precise and more rigid. Also, the possibility of mounting motors close to the stationary platform is an important feature of robots with parallel kinematic architectures. It can also be used in applications that require higher speed combined with precision and higher payload [1][2][3][4]. The examples of using parallel manipulators in high precision modeling and machining are mentioned in [5][6][7]. The kinematic and dynamic analysis of several parallel manipulators has been done in [3,[8][9][10][11][12][13][14][15][16][17][18][19][20][21][22][23][24]. Rashidnejhad et al. [25] have presented a strategy for optimizing 3RUU robot manipulator trajectory planning. First, position analyses were performed on the 3RUU robot to obtain the optimal trajectory. Next, an objective function with two terms was minimized: the first term relevant to the total execution time and the second term relevant to the integral of the squared jerk (defined as the derivative of the acceleration concerning time) along the trajectory. This ensures that the obtained trajectory is smooth. This technique allowed for the calculation of the kinematic constraints on the robot's motion, defined as upper limits on the absolute values of velocity, acceleration, and jerk, without requiring the execution time to be predetermined. The algorithm has been validated through simulation and compared favorably to other significant trajectory planning algorithms. Position, velocity, and workspace analysis of a specially designed parallel manipulator with six degrees of freedom is explained where every single chain of the manipulator is a so-called "piercing" rod [26]. The motion analysis of a spherical parallel manipulator including coaxial input axes is explained in [27]. A novel kinematic calibration using an error model is developed for a parallel manipulator in [28]. The application of artificial intelligence (AI) techniques has become popular in the modeling, control, and optimization of robots. The genetic algorithm (GA), a well-known evolutionary technique, has been utilized by Azizi [29] to determine the ideal settings for the gimbal joints. Considering that adopting the GA is a time-consuming procedure, an artificial neural network (ANN) architecture has been developed to represent the GA's behavior. The outcome demonstrates that the suggested ANN model can be utilized in place of the sophisticated and time-consuming GA to determine the optimal parameters of the gimbal joint. The AI methods are used for kinematic analysis, path generation, and control of the various parallel manipulators [30][31][32]. A fuzzy-logic control method has been developed for a dynamically uncertain robotic manipulator [33] to improve its trajectory tracking accuracy. To reach the goal, an adaptive fuzzy full-state feedback control scheme is developed using a high-gain observer for estimating unknown states. The comparison between the developed method and the traditional PID and PD controller proved the advantages of their technique both in the simulation and experiments. An adaptive impedance controller for improving the human-robot interaction and the compliant tracking accuracy has been developed in [34,35]. A vision sensor was used to identify the human hand position and motion in combination with a force sensor that was used to measure the interaction force between the robot and the human hand. The dynamic uncertainties of the robot were handled using a developed Neural Network framework. A hierarchical human-in-the-loop technique was used in [36] aiming to assist the cable-driven lower limb exosuits for supporting the human ankle joint. A Quadratic Programming problem with certain constraints was used to optimize the impedance parameters for various terrains. Also, an adaptive controller was developed to handle the nonlinearities and compliance factors.
In this study, a stabilizing robot with three degrees of freedom (3-DOF) is investigated. The proposed study is an experimental work to prove the potential of the 3-DOF parallel platform for being used as a camera stabilizing platform. In this application, it is necessary to control three rotational degrees of freedom in roll, pitch, and yaw directions. That's why compared to the conventional Stewart platform with 6-DOF (3 translational and 3 rotational), the proposed parallel manipulator is more suitable and easier to control and manufacture. Eliminating the three translational degrees of freedom decreases the number of linear actuators to three (compared to the six actuators in the conventional Stewart platform) and consequently simplifies the design and makes it stiffer for stabilizing applications. Inverse kinematic analysis of the parallel manipulators is not complicated and multiple solutions do not exist. Once the top plate position and orientation are fixed, one should expect a unique solution for the struts. It is also possible to implement the inverse kinematics analysis analytically. On the other hand, the forward kinematics of the parallel manipulators is not that easy, and generally numerical methods are used for the forward kinematics analysis. This complicates the analysis in a great deal. Numerical solutions take more time than analytical methods, and, when one uses numerical methods, the convergences of multiple solutions cannot be guaranteed.
In this study, a novel method is proposed for position control of the manipulator based on the inverse kinematic solutions of the manipulator and real-time feedback from the current orientation of the top and base plates. In this method, the strut lengths are calculated for the current and desired orientations of the top plate. Then the error between the current and desired strut lengths is controlled in realtime, based on the orientation feedback from an IMU that is mounted on the top plate. This strategy helps to avoid multiple solutions when solving the forward kinematics of the manipulator with numerical methods. Also, thanks to the analytical inverse kinematics solution, it is useful for real-time applications that need a fast response.
Modeling of the structural and feedback sensor noises and application of the noise handling techniques play a critical role in the robot manipulator accuracy improvement [37][38][39]. Azizi et al. [39] have investigated the effect of the noise on mechanical structures and designed PID and Sliding mode controllers to eliminate the unwanted applied noise to the system. The results show that the controller designs are effective. Especially when multiple sensor feedbacks should be used for the real-time control of a mechanism, the synchronization of all data and processing them simultaneously is very challenging. Synchronized, secure, and stabilized communication is very critical if wireless solutions like RF are used for data transmission [40][41][42][43][44]. In this study, a Kalman filter is used to eliminate the noise of the two IMU sensors and increase the accuracy of the position control of the parallel manipulator.
In this paper, first, the complete analytic inverse kinematic solution of a 3-DOF parallel platform is proposed. Then a hierarchical stabilizing control strategy is proposed based on the kinematic solution and IMUs feedback. The filtering IMU data and its effect on the control strategy of the platform are also explained. The performance of the whole system is evaluated in the results and discussion section. Finally, the whole idea, its unique sides, and future works are mentioned in the conclusion section of the paper.

Materials and Methods
The parallel stabilizing platform is composed of a lower plate and an upper plate and 3 linear actuators that connect them. These linear actuators are connected to the upper plate by spherical joints and they are connected to the lower platform by universal joints (Fig. 1). In addition, a link that is fixed to the lower platform is connected to the upper platform by a spherical joint. The mentioned link is used for two reasons. The first reason is that it increases the load capacity of the manipulator. Here we need a fast reaction in the rotational degrees of freedom. If we add vertical loads on the three linear actuators, due to not enough locking force/torque of the actuators it is probable to lose the desired orientation of the upper plate. Also, the fast response and real-time control will be difficult because of the vertical loads on the actuators that cause the higher current load. The application of a link that is fixed to the lower plate and connected to the upper plate by a spherical joint helps to decrease the vertical load on the moving actuators and improves their response rate of them which is necessary for stabilizing systems. The second reason is that this link guarantees that the upper plate will not have any translational motion and only rotational motions will be supplied. Such a translational motion may happen due to the backlash or losing the locking force/torque of the actuators. Thanks to this combination, a parallel mechanism with three degrees of freedom (Roll-Pitch-Yaw) is obtained.

Kinematic analysis of the parallel stabilizing system
As is shown in Fig. 1, the stabilizing platform is composed of a base plate, a top plate, and three parallel linear actuators that connect the base and top plate. Also, a shaft that is fixed to the base plate and connected to the top plate via a spherical joint is used to prevent translational motions in the top plate. To calculate the three strut lengths related to the current base and top plate orientations, and to calculate the three strut lengths related to the desired base and top orientations, it is necessary to implement the inverse kinematic analysis. In the inverse kinematic analysis, the actuator (strut) lengths are obtained with the help of the known angular orientation of the base and top plates in roll, pitch and yaw directions. Notice that the coordinate system which is used is given in Fig. 2. For implementing inverse kinematic analysis, a body-fixed reference frame called F B is defined at the mass center of the base plate. In this reference frame, the principal unit axes are defined such that � ⃗ u B 3 points upward and � ⃗ u B 1 points between B 1 and B 3 . As was mentioned before, the parallel actuators are connected to the base plate by universal joints. The coordinates of these joints on the base reference frame are described as follows.
Another body-fixed frame called F T is defined at the mass center of the top plate. In this reference frame, the unit principal unit axes are defined such that � ⃗ u T 3 points upward and � ⃗ u T 1 points between T 1 and T 3 . The parallel actuators are connected to the top plate by spherical joints. The coordinates of these joints on the top reference frame F T are defined as The reference frame F T can be expressed concerning the inertial reference frame F G by the homogeneous transformation matrix Ĥ .
The Ĉ B represents a 3 × 3 rotation matrix of the base body-fixed frame F B with respect to the inertial reference frame F G , with the 1-2-3 Euler angles sequence, and it is expressed in the exponential notation form [45].
The Ĉ represents a 3 × 3 matrix that expresses the rotation between the base and top plates in the 1-2-3 Euler angles sequence.
is a column position vector of the top plate with respect to the base plate expressed in the base body-fixed frame F B .
Here the aim is to find the current strut lengths and the desired strut lengths using the inverse kinematic analysis. For this purpose, the real-time orientation feedback of the base and top body-fixed reference frames ( Ĉ B andĈ T ) are read from two IMUs placed one on the base and the other on the top plates. The relationship between Ĉ B and Ĉ T is as follows To find the current strut lengths, it is necessary to know the rotation matrix between the base and top body-fixed reference frames ( Ĉ ). Multiplying the inverse of the rotation matrix of the base body-fixed frame Ĉ B to both sides of the equation gives us the Ĉ matrix. Now it is possible to calculate the current strut lengths using the Ĉ as follows: The coordinates of the i'th spherical joint on the top plate in the base body-fixed frame can be shown as The left side of Eq. 10 can be expressed as: where the L B i is the vector that connects the base universal joint to the corresponding spherical joint on the top plate and is expressed at the based body-fixed frame. Equation (11) can be written as: Consequently, the L B i will be: With the known 1-2-3 Euler angles sequence between the base and top plates Ĉ , the strut lengths can be derived using the second norm of the vector L B i .
Considering the elements of the rotation transformation matrix as The vector that connects the universal joint 1 to the spherical joint 1 (L B 1 ) will be Therefore, From Eq. (17), the length of strut 1 can be derived as follows: The vector that connects the universal joint 2 to the spherical joint 2 (L B 2 ) will be Therefore, From Eq. (20), the length of strut 2 can be derived as follows: Finally, the vector that connects the universal joint 3 to the spherical joint 3 (L B 3 ) will be as and the length of strut 3 can be derived as follows: Using the two IMU feedbacks and explained inverse kinematic analysis, the current lengths of the struts are calculated.
At this step, we need to calculate the desired strut length to be used in the control algorithm. The desired orientation of the top plate body-fixed frame Ĉ T,desired with respect to the inertial reference frame F G can be defined manually or by the control algorithm. Considering α d , β d andγ d as the 1-2-3 desired Euler angles sequence, the Ĉ T,desired can be calculated as follows: Here the aim is to find the desired orientation of the top plate body-fixed frame Ĉ T,desired with respect to the base plate body-fixed reference frame F B . After finding the Ĉ desired orientation matrix, following the inverse kinematic solution of the robot manipulator, it is possible to find the desired strut lengths that supply the desired top plate orientation. The relationship between Ĉ B , Ĉ T,desired and Ĉ T,desired is as follows: Multiplying the inverse of the rotation matrix of the base body-fixed frame Ĉ B to both sides of the equation gives us the Ĉ desired matrix. Here there is not a singularity issue. Because the Ĉ B is an orthonormal orientations matrix. Based on the properties of the orthonormal matrices, the determinant is always equal to 1. Also, the inverse of the orientation matrix is equal to the transpose of the matrix. Consequently, it is possible to calculate the inverse of the orientation matrix without concerning about singularity.
Considering the elements of the Ĉ desired rotation transformation matrix as The desired strut lengths can be derived using the same inverse kinematic procedure explained above. So following Eqs. (31) -(34): Consequently, using the base plate IMU feedback and the above formulas the desired strut lengths can be written as: It is very important to assign the IMUs axis in the same directions that are used in the inverse kinematic analysis. The control strategy using the calculated current and desired strut lengths ( L current i and L desired i ) are mentioned in the next section.

Stabilizing control strategy
To stabilize the top plate of the parallel manipulator, it is necessary to control the orientation of the plate such that to keep it in the desired orientation. Based on the manipulator components' characteristics and the feedback types, several control strategies can be followed. If the linear actuators are equipped with the encoders and if there is realtime feedback from the length of the struts, it is possible to control the top plate using the inverse kinematics of the robot and single IMU feedback mounted at the base plate of the robot. The IMU will give the orientation of the base body-fixed frame F B with respect to the inertial reference frame F G . Thanks to the close kinematic chain and inverse kinematics of the manipulator, the strut lengths that supply the desired orientation of the top body-fixed frame F T will be calculated. The control command will take the struts to the desired lengths using feedback from the encoders of the actuators. But here in our manipulator, the applied linear actuators have not equipped with encoders. That's why there is not any feedback from strut lengths. To compensate for this shortage, a second IMU is mounted on the top plate of the manipulator. Therefore, the real-time orientation feedbacks of the top and base body-fixed frames with respect to the inertial reference frame are fed to the control algorithm. The flowchart of the control algorithm is shown in Fig. 3.
At each control loop cycle, the base and top plate orientations are read from the related IMUs. Then the data are filtered using the Kalman filter. Then using the inverse kinematics of the manipulator, the current strut lengths will be calculated. Based on the operator's manual command the desired orientation of the top plate will be defined so that to keep this orientation during the operation and compensate for all disturbances. Considering the commanded orientation, the desired strut length will be calculated using inverse kinematic analysis of the manipulator. The error signal for each actuator will be the difference between the desired and current strut length.

Fig. 3 Control algorithm flowchart
A position control strategy is used for supplying the desired strut lengths that lead to the desired top plate orientation. For such a purpose a PID controller is designed using the calculated error signal where the controller output signal u is as follows: The controller output is changed to the PWM signals and drives the linear actuators controlling their velocity. In this study, the aim is to prove the capability of the proposed method to be used in a 3-DOF parallel stabilizing platform. That's why a simple PID controller has been designed and manually tuned. The block diagram of the control algorithm is shown in Fig. 4.
As shown in the Fig. 4 the reference values for the Roll, Pitch, and Yaw Angles of the Top plate are fed to the control algorithm. For example, if it is desired to keep the top plate always in the vertical configuration during its operation, the reference inputs should be set to zero. In the control algorithm, the error is defined as the difference between current and desired strut lengths. The current strut lengths are obtained by using IMU data and inverse kinematic analysis. The desired strut lengths are calculated considering the reference inputs and the inverse kinematic analysis. The calculated three error values are fed into the PID controller. The output signal of the PID controller is a 3 × 1 array where each element of the array is a PWM signal for driving one strut and taking it to the desired length. The control cycle is implemented using an Arduino Due Atmel SAM3X8E ARM Cortex-M3 microcontroller. Two MPU6050 IMUs are used, one for the top plate and another one for the base plate. The data of the top plate IMU are transmitted to the microcontroller using nRF24L01 RF send and receive modules. One of the important challenges in the proposed method is the synchronization of the data acquisition from both IMUs. Synchronizing both the transmitting and receiving rate of the RF modules in the top and base plates may affect the real-time data transmission. So the same baud rate should be used for reading the IMU data from the serial ports. Also, the data should be buffered and synchronized to get accurate and realistic real-time feedback from the base and top bodyfixed frame orientations.
To handle the probable noises on the IMU data and prevent the error drifting in the system, it is necessary to filter the data of both IMUs. Thus to meet the purpose a Kalman filter is used. Generally, two types of disturbances should be considered designing a stabilizing platform. The first one is to handle high-frequency structural vibration disturbances such as motor vibration. For such a purpose, the application of passive or active dampers or advanced control algorithms can be effective. Also, a stiff structural design can be helpful. The closed kinematic chain and stiff design of the parallel mechanism used in this study is an advantage against such disturbances. The second type of disturbance is due to the ground or aerial vehicle maneuver. In ground vehicles, such a maneuver is due to the road profile, especially in the Pitch and Roll axes. In aerial vehicles, it is due to flight maneuvers. In this study, the stabilizing platform aims to handle the second type of disturbance. The aim of using IMU feedback is to handle these types of disturbances in Roll, Pitch, and Yaw directions. Generally, the frequency of these disturbances is considered 1 Hz in test platforms [46]. Implementation of the Kalman filter improves the accuracy of the IMU feedback and the performance of the controller by eliminating the probable noises. In this study, the data sampling Baud rate is set to 115,200 per second. Considering the 32-bit ARM Cortex M3 architecture running at 84 MHz clock speed, the delay caused by the filtering algorithm has not had a significant effect on the stabilizing performance of the platform.

Fig. 4 Control algorithm block diagram
Regarding the frequency of the control loop, especially for aerial vehicles where fast motions can be observed, it is preferred to have a 1 kHz control loop frequency for supplying smooth motions. Considering the mentioned characteristics and performance of the IMUs and processor, the expected control loop frequency has been supplied. The smooth motion of the top plate following the desired motion path in the experiments reflects the successful performance of the controller and its frequency loop.

Filtering of the IMU data
Kalman filter is a filter that predicts the current data value of a modeled system according to the previous data values. It can be considered as a prediction method than a filter. Thanks to the algorithm used by this filter and the defined error model in the system, which can be used in real-time, very successful results can be obtained. The more data, the stronger the forecast will be. This feature distinguishes it from other filters. The basic formula of the Kalman filter is: where θ k is the calculated value using the Kalman filter algorithm, K k is the Kalman gain, Φ k is the measured value from the sensor and θ k−1 is the previously calculated value by the Kalman algorithm.
Also, the measured values and predicted values can be modeled considering the effects of the noise on them.
Here W k−1 is the noise of the previous process and v k is the noise of the measured process. u k is a control signal and is not used here. So coefficient B loses its importance. The values A and H can be calculated for different systems. However, in many cases especially for one-dimensional arrays, they can be considered as 1 for simplicity. The error covariance P k is a value used to calculate the Kalman gain. It is updated regardless of the values obtained. It is calculated with the R and Q values determined during the modeling of the system. Based on try and error, the values Q = 0.51 and R = 0.88 are used in this implementation. There are three stages in the application of the Kalman filter. These are Prediction, Correction, and Update. These two stages are calculated in the same time step "k" [47] and [48]. (40) P k = P k−1 + Q

Results and Discussion
The implementation results of the proposed method are mentioned in this chapter. The effect of the Kalman filter on filtering the IMU data is shown in Fig. 6 and 7. In Fig. 6 the noisy IMU Roll feedback (red) is shown together with the filtered Roll data (blue) using the Kalman algorithm. In Fig. 7 the noisy IMU Pitch feedback (red) is shown together with the filtered Pitch data (blue) using the Kalman algorithm. The filtered data are more realistic and smooth.
Despite the advantages of the closed kinematic chain of the parallel platform that results in rigidity and higher payload manipulation capability, the noise and drifting in IMU data related to each axis can affect the control accuracy of the other two axes either. That's why the Kalman filter implementation is necessary to prevent such uncertainty and probable vibration during the stabilizing operation. To investigate the kinematic solution and control algorithm performance, reference paths are defined for the top plate Roll and Pitch orientations and the real-time orientations of the top plate have been recorded. Before starting the experiment, the platform was in the horizontal configuration and the Roll and Pitch angles were equal to zero. The reference inputs for the starting points of the experiment were set at 5 degrees for the both Roll and Pitch directions. A harmonic path is defined by the operator as reference path and the performance of the proposed algorithm in following the define path is evaluated. Implementing the proposed velocity control on the Roll and Pitch axes is shown in Fig. 8 and 9. In these figures, the desired path is planned by the operator for the Roll and Pitch orientations of the manipulator top plate that is shown in blue in Fig. 8 and 9 respectively. The aim here is to investigate the ability of the manipulator in following the desired orientation path plan using the calculated kinematics, and speed control scenario of the actuators. The top plate motion paths in Roll and Pitch orientations are shown in red in Fig. 8  and 9 respectively. The manipulator adjusted its orientation with the reference path in less than 1 s and the stabilizing platform and the control algorithm kept the top plate on the reference orientation successfully. In the experiment results, there are small errors when changing the direction   of the reference paths. This is because of the response of the actuators. It is possible to handle this small error by using higher-quality actuators with faster responses to the control commands.
The main disadvantage of parallel manipulators is their limited working space. To handle this issue, magnetic spherical joints are used in the connection points of the top plate and the struts and fixed shaft. Such joints increase the motion range of the top plate (± 40°) which is well enough for commercial multi-copters and UAVs. Also, it is recommended to use a specially designed slip ring mounted on top of the fixed shaft to transmit the data and power between the top and base plates. The Yaw axis is used for locking on an object or for changing the camera monitoring direction. Even the parallel manipulator supplies the motion in the Yaw direction but generally, it is needed to control the platform in 360°. That's why another actuator (generally a brushless DC motor) can be added below the base plate to supply a full 360° notion for the platform and payload. In this case, the yaw axis of the platform and the new actuator will be collinear and this phenomenon causes redundancy in the Yaw axis. Consequently, the Yaw axis loses its importance in the parallel platform. But if necessary, it can be used also for accurate motions in this direction.
In order to make a performance comparison, we had no access to any commercial parallel camera stabilizing platform. However, it is possible to compare the performance of the developed parallel stabilizing platform with the common three or two-axis gimbal systems which use an open kinematic chain design. But here the challenging point is the criteria for choosing a proper gimbal model for comparison. The weight of the platform, dimension, maximum power consumption, maximum torque generated by the actuators, etc. can be considered as criteria for choosing a gimbal for comparison purposes. A complete and detailed comparison can be done if both platforms have similar characteristics such as weight, actuators performance, same IMUs, same filtering algorithms, same controller structure, etc. This is the scope of another research paper and can be done as future work. However, for getting an idea of the performance of the parallel camera stabilizing platform, a TG200D three-axis gimbal developed by the TULPAR company ( Fig. 10) is used for implementing a simple performance comparison test. The main reason for such selection is that the authors have access to all characteristics of the gimbal. Also, the dimension of the gimbal is approximately near to the developed parallel platform.
For implementing the test, a disturbance force is applied to the Pitch axis tangent to the camera dome using a force gauge probe. The disturbance force magnitude is increased until observing vibration in the pitch axis. The same process is applied to the developed parallel platform. The comparison of the disturbance force magnitudes gives an idea about the performance of the parallel configuration in handling the disturbances.
For the chosen commercial gimbal, the vibration began while applying 7.3 N disturbance force to the Pitch axis. But in the developed parallel platform due to its rigid closed kinematic chain design, no vibration was observed even when 40 N disturbance force was applied which was the maximum capacity of the used force gauge probe. This

Conclusion
The stability and performance of the camera stabilizing systems (gimbals) are always challenging. In unmanned aerial vehicles where the weight of the equipment is vital, and especially in the fixed wing UAVs, due to the high disturbance caused by an air drag force, a stiffer and more stable system is desired. In comparison with conventional gimbals with open kinematic chain configuration, parallel manipulators are more stiff and more stable due to their parallel configuration and closed kinematic chain design. But there are several challenges in the application of the parallel platforms as camera stabilizing units. These challenges are lack of analytic forward kinematic solution, insufficient actuator duty cycle, limited motion range, difficulties in data transmission from the top plate to base plate, etc. Considering the mentioned challenges, a system is proposed to handle them through both structural and control algorithm points of view. A 3-DOF parallel stabilizing platform is investigated in this study. It can be considered as a reduced version that developed from the 6-DOF Stewart Platform by eliminating the translational motions and allowing only the three rotational motions in Roll, Pitch, and Yaw directions. The proposed method aims to eliminate the complexity of the numerical methods for calculating the forward kinematics of the parallel manipulator. The analytic kinematic analysis of the manipulator is done, then a control strategy is developed for the velocity control of the linear actuators. A velocity control strategy is proposed based on calculating the error between current and desired strut lengths. The current strut lengths are obtained by using IMU data and inverse kinematic analysis. The desired strut lengths are calculated from reference inputs and the inverse kinematic analysis. However, there are important points that should be considered during the implementation of the proposed method. It is better to use the parallel � ⃗ u (B) i and � ⃗ u (T) i unit axes in the base and top plate body-fixed frames when the plates are in a parallel configuration. It helps to prevent using an extra orientation matrix between the base and top body-fixed frames. In the structural part, the application of magnetic spherical joints between the top plate and linear actuators increased the working range of the top plate. In order to handle the insufficient duty cycle of the actuators, a fixed shaft is used that connects the midpoint of the top plate to the base plate. This shaft tolerates the load of the top plate and the three linear actuators only control the orientation of the top plate. So the loads on the actuators decrease and they can supply fast motions with enough duty cycle. The proposed hierarchical control algorithm is based on the inverse kinematic of the manipulator and provides a completely analytic solution for control strategy and by application of it, it is not necessary to use numeric or semi-analytic forward kinematic solutions that are not always reliable and fast enough. Transferring data using RF signal from the top plate to the base frame is another useful technique for solving the hollow shaft actuator and slip ring application challenges. In this study, a system is designed and experimentally tested that has a great potential to increase the application of the 3-DOF parallel mechanisms for optical payload stabilizing and control especially in aerial vehicles. Due to the strongly coupled nonlinear feature of the platform kinematics, a stronger controller can increase the stabilizing performance of the platform. In future work, it is planned to develop Adaptive PID, Fuzzy PID, and Neuro PID controllers and compare their stabilizing performances against disturbances with different amplitudes and frequencies.