#### Abstract

We propose a new solution to the active balancing issue under mechanical structural constraint. A dynamic model of the 3-DOF active balancer is established considering the limitations of the mechanical construction due to the lengths of the sliding rails. A methodology for the collision-avoidance trajectory planning is presented in addition to the normal trajectory planning to design the collision-free active balancing strategy. Numerical examples are presented to illustrate the effect of the parameter constrains as well as verify the effectiveness and necessity of trajectory planning.

#### 1. Introduction

Mechanisms are expected to be dynamically balanced, particularly for those engaged in picking and placing variable payloads. Dynamic balancing takes advantages of reducing wear, fatigue, cycle times, vibrations, and noise disturbances in order to improve operating accuracy and control efficiency [1–3]. A mechanism is dynamically balanced when the summations of the reaction forces (excluding gravity) and reaction moments are zero at any time, for any motion of the mechanism [4]. Equivalently, the resultant linear momentum and the angular momentum of all moving elements of the mechanism with respect to a fixed point must remain constant [5].

Many dynamic balancing methods based on the balancing theorem have been applied in many aspects such as the machine tool’s spindle, turbomachine, or robots with variable payload [6–10]. These methods can be classified into two categories:* passive dynamic balancing* (without computer control) and* active dynamic balancing* (with computer control) [4]. Compared with passive dynamic balancing, active dynamic balancing technique with the superiority of adaptability and efficiency attracts many researchers in recent years [11, 12]. The study on the balancing of shaking force and shaking moment of mechanisms with computer control systems has been reported in [13–16]. For instance, a planar parallel mechanism is adopted in order to move counterrotary countermass for a planar robot [17]. An active dynamic mechanism composed of three discs was adopted to simultaneously eliminate shaking forces and moments [18].

Previous research mainly focused on the structural design and experimental verification of active dynamic balancing mechanism. The movement constraints and applicable trajectory planning methods were rarely involved. In practical engineering, the motions of the balancing mechanism are limited by many factors, such as maximum output torques and angular velocity of the motor and mechanical structure. Therefore, we here take the mechanical structure limitation into account and provide solutions to this problem.

In this paper, an ordinary 3-DOF (degree of freedom) planar mechanism is adopted as the ADBM (active dynamic balancing mechanism), and its dynamic modeling is derived. Then, we focus on the analysis of the physical construction and motion constraints of the balancing mechanism. A trajectory planning and optimizing method is offered to address the displacement constraints. Finally, comparison is made to verify the necessity to take the construction constraints into account through simulations with and without “bumper” trajectory, as well as the availability of the motion planning.

#### 2. Mathematical Modeling of the ADBM

For any robot in motion, there are at most three independent net shaking forces (along -axis, -axis, and -axis) and at most three independent net shaking moments (about the -axis, -axis, and -axis). An extreme case is that there are six DOFs of a general spatial robot that should be balanced. Due to the complexity of the structure and actuation of one single spatial balancing element for balancing six DOFs, this paper deals with active balancing of planar robots.

A planar robot is affected by shaking forces in the -axis and -axis. The resultant shaking moment in the -axis should also be considered. As shown in Figure 1, the resultant shaking forces and moments are illustrated in green arrows. In order to fully balance the shaking forces and moment, respectively, the ADBM should be designed to have three DOFs. For instance, two counterbalancing masses (CM) are used for eliminating the shaking forces and one counterbalancing inertia (CI) is used for balancing the shaking torque, as illustrated in gray boxes in Figure 1.

A CRCM (counterrotary countermass) disc is used to realize the ADBM. As presented in Figure 2, the mechanism is fixed on the robot platform. It consists of two perpendicularly crossed tracks in the -axis and -axis mounted on the platform. The disc is installed on the end-effector that can slide in the -axis track while the -axis track can slide in the -axis track carrying the disc. On the one hand the disc works as a CI using its moment of inertia when accelerated by the rotating motor. On the other hand, the disc could be used as a CM due to its mass when accelerated by the linear motors.

To make the disc move or rotate in 3 DOFs, three actuators are included in the device. Actuator is used to rotate the disc, Actuator is used to move the disc on the -slider attached to the -slide rail, and Actuator is used to move the disc in the -axis by attaching to the -sliders and -slide rails. The masses of the disc and Actuator are and . Similarly, the masses of Actuator , the -slide rail, and the -slider attached to the -slide rail are, respectively, , , and . Moreover, , , and denote the mass of Actuator , the -slide rails, and the -sliders.

The inertia of the disc is and the inertia of other elements are ignored here since they are negligible compared with that of the disc. The length of the -rail is and that of -rail is . Two coordinate systems are set. One is the base coordinate fixed on the unbalanced robot with origin . Here, the origin is set at the center of the tracks. The other one is the convected coordinate system with origin fixed at the center of the CRCM, which is denoted as with respect to the fixed origin .

As shown in Figure 2, when Actuator works, the -sliders, Actuator that is mounted on the -slider, as well as the disc, Actuator for rotating the disc, the -slider, and the attached -slide rail all translate in the -axis, which means that all of the masses are used as the CM in the -axis. Therefore, the total mass of the counterbalancing masses in the -axis is . Similarly, the total mass of the counterbalancing masses in the -axis is , and .

Suppose that the planar robot is subjected to external shaking forces and a shaking moment . And the force applied by actuator on the CM in the -axis is and the force applied by actuator is , while the friction forces between the CMs with respective rails are noted to be and . The summations of the reaction forces of the base of the robot can be expressed as

Applying Newton’s second law to the moving masses, one can obtainwhere and are translational accelerations of the CRCM with respect to the fixed inertial frame .

To make shaking forces of the robot dynamically balanced (i.e., the summations of the reaction forces of the base of the robot are zero), the translational accelerations of the ADBM can be calculated as follows:

Similarly, to make the shaking moment dynamically balanced, the angular acceleration of the disc is where is angular acceleration of the disc.

The velocities and displacements can conveniently be obtained using an integration technique. Consequentially, we have the CRCM’s velocity,and displacement,via integration. is the time step and is the sampling period.

#### 3. Collision-Avoidance Trajectory Planning of the ADBM

According to the dynamic analysis of the counterrotary countermass, its motion can be programmed to balance the given shaking forces and moments when no dynamic and kinematic limits are considered. In practice, however, the rotation and translation of the CRCM are constrained by many factors, which consequentially limits the position of the disc. The length of the tracks is one typical limitation, as most robots provide finite installation dimensions to the ABDM. To avoid collision, the position of the CRCM on the sliders is within the finite track length. Therefore, we have And the midpoints of the tracks are set as the original point.

When the CRCM moves without the above limitations, the conventional balancing described by (3)-(4) can be employed. The movement trajectory of the CRCM can be named as the* normal trajectory*. With the above limitations, however, the normal trajectory cannot be used, or collision may occur. To avoid collisions at either end of the track, a new trajectory is used as a “bumper,” named the* collision-avoidance trajectory*. In this case, the* normal trajectory* should be replaced by the* collision-avoidance trajectory*. A hybrid trajectory containing both of the trajectories is thus needed. The collision-avoidance trajectory is supposed to start right after the normal trajectory ends and a switching point is set for the transition between the two trajectories. Boundary conditions are as follows for smooth transition:where is the starting time and is the ending time of the collision-avoidance trajectory, is the position of the CRCM at the end of the normal trajectory with speed and acceleration , is the position of the CRCM at the end of the collision-avoidance trajectory, and the value is or . The collision-avoidance trajectory is expressed as follows:Since , we have .

A normalized variable is used in the above function:

Then the position, velocity, and acceleration can be obtained:where .

is a interpolation function. Researchers have adopted NURBS (Nonuniform Rational B-Splines) curves, time-minimum piecewise quintic polynomials, periodic cubic spline function, hyperbolic trajectories, and other algorithms for automatic planning of smooth trajectories, respectively [19–24]. In this paper, to meet six constraints equations (8), a quintic polynomial is applied to program the collision-avoidance trajectory to address the displacement constraints, where () are the coefficients of the quintic polynomial.

Setting vector can be written as

Substituting (10) into (11) and comparing them with the boundary conditions of (8), we can acquire the necessary conditions that function should satisfy:

Using the boundary conditions of , we have

Consequentially, we have

Equation (16) gives the final form of the collision-avoidance trajectory function. However, this function cannot guarantee collision-avoidance between the starting point and the ending point. Therefore, more conditions are needed. A best choice considering both collision-avoidance and execution efficiency is to make sure that the trajectory curve is monotonic. That is to say, the slider does not change its moving direction within the collision-avoidance route and fluctuations are not expected. We then havewhich yields

Using (13) and (15), it is easy to have

The four roots of the quartic polynomial of the above equation are where

Therefore, to avoid fluctuations of the displacement curve, these roots should be kept out of execution time. This leads to the following inequalities:

As long as inequality (22) is satisfied, the collision-avoidance trajectory is a monotonic curve. Also it shows how to decide the execution time provided the initial and final kinematic and dynamic status. The total procedure of the trajectory planning is listed in Figure 3.

#### 4. Simulations of the Trajectory Planning of the ADBM

As has been stated previously, the structures of the -axis and -axis are similar; therefore, their driving methods should be in common with each other. Here, we investigate the function of the ADBM by carrying out simulation in the -direction to verify the balancing effect and trajectory planning method. First, simulations are carried out to check the principle and effectiveness of the conventional ADBM trajectory planning. The shaking signals are supposed and the balancing trajectory is computed. The collision-avoidance trajectory planning method is employed in the case of possible collision. The function is finally verified by comparing the balancing and the shaking force. Figure 4 gives the flow chart of the whole procedure. The parameters are shown in Table 1. Moreover, two different input shaking force functions are shown in Table 2. Case A presents a typical shaking force and Case B presents the adding of extra disturbance term. They are expressed in the form of the summation of several sinusoidal functions, since the shaking signal can be decomposed into Fourier series.

##### 4.1. Basic Operations in the -Direction

When the robot is subjected to the resultant shaking force as shown in Case A, Table 2, the ADBM should generate a compensating balancing force to make the robot dynamically balanced. Thus, the balancing force can be calculated and the desired linear translational acceleration of the CRCM in -direction is expressed as follows:

Since the midpoint of the track is the original point, the movement scope is from −20 cm to 20 cm. Given the initial velocity and initial position of the slider, , the linear translational velocity and displacement can be, respectively, calculated with MATLAB. The curves of the translational acceleration, speed, and displacement of the CRCM in -direction are shown as in Figure 5. The balancing force is shown in Figure 6 together with the shaking force. The two figures indicate that the ADBM can balance the shaking force while avoiding collision with the track’s endings.

##### 4.2. Collision-Avoidance Trajectory Applied for Avoiding Boundary Overstepping

In Case B, an extra disturbance term is added to the shaking force of the robot. Based on the conventional balancing method, the curves of the expected translational acceleration and displacement of the CRCM under Case B are shown in Figure 7. According to the parameters in Table 1, the displacement scope of the ADBM in the -axis is from −20 cm to 20 cm. Figure 7 shows that the maximum of the displacement is larger than 20 cm, which means that collision would occur. Therefore, we use the collision-avoidance trajectory planning in the movement of the CRCM with length constraints.

When the slider approaches either end of the track, the moving slider should be switched from its normal trajectory to the collision-avoidance trajectory. An appropriate switching point is set aswhere is the position of the switching point and is a factor that can be adjusted from −0.5 to 0.5. In this simulation, . Therefore, the collision-avoidance trajectory should be adopted when either of the following conditions is met:

According to the above conditions, the collision-avoidance trajectory should be adopted when the displacement of the CRCM arrives at the switching points: or . Obviously, the displacement of the CRCM in Figure 7 increases from 0 to 20 cm and satisfies the above conditions, which means that basic operation trajectory should be switched to the collision-avoidance trajectory at the switching point for avoiding boundary overstepping.

In order to calculate the values of the position, velocity, and acceleration of the moving element at the switching point, the software MATLAB is used. Since the discrete period of iterative computation and the numerical value of the position, velocity, and acceleration are as follows,

then the range of the buffer time (i.e., the execution time of the collision-avoidance trajectory) can be calculated based on (20) and (22):

Here, the execution time is . Then, the curves of collision-avoidance trajectory, the corresponding acceleration, and speed can be computed as shown in Figure 8. In Figure 8, we can see that, after passing through this “bumper” stage, the CRCM stops at the edge of the sliding rail with a zero acceleration. Instantly after that, the CRCM moves reversely and the normal trajectory will start again. Notice that, in the third regime of the whole balancing process, the acceleration of the CRCM has jumping from 0 to −3.2 cm/s^{2}.

According to the actual curve of the acceleration of the CRCM, the generated balancing force can also be calculated. The comparison of the shaking force and actual balancing force is shown in Figure 9. In the second regime of the whole process in Figure 9, the CRCM moves along the collision-avoidance trajectory to avoid boundary overstepping. In this regime, the CRCM does not follow the preset acceleration, and the generated balancing force cannot completely balance the resultant shaking force. Hence, the summation of the reaction forces in the direction of the planar robot is not zero and the robot is not dynamically balanced in this period.

According to (27), the upper boundary of execution time of the collision-avoidance trajectory is . A numerical example that the execution time () satisfies this constraint is given in the last simulation. In order to verify and illustrate the necessity of the constraints of the execution time, an execution time that exceeds the upper boundary of the buffer time is adopted for comparative validation. Based on the method and calculation which are exactly the same as mentioned above, the curves of the trajectory and the corresponding acceleration of the CRCM are shown in Figure 10.

From the displacement trajectory in Figure 10, when is beyond the upper boundary, although the initial position and final points of the second regime of the “bumper” satisfy the conditions of the collision-avoidance trajectory, there are overshoots in this period. The peak value of the displacement is larger than 20 cm, which is beyond the motion range of the CRCM. The result suggests that the CRCM will collide with the end of the sliding rail. The necessity of establishing constraints of execution time for the collision-avoidance trajectory is hence demonstrated.

##### 4.3. Influence of Different Buffer Time

In order to analyze the influence of different buffer time on the balancing of the robot, variable execution time of the collision-avoidance trajectory is adopted to make comparisons. Here, different buffer times , 0.8 s, and 1.2 s are chosen to see its influence on the active balancing. Figures 11(a)–11(c), respectively, show the motion curves of the CRCM under these three cases while Figures 11(a′)–11(c′) show the impact on the shaking forces. According to Figure 11, when the buffer time is shorter, the status of dynamic balancing keeps longer and the dynamic balancing can be made as complete as possible. But on the other hand, it can be seen that when the buffer time of the “bumper” trajectory is shorter, the peak value of the acceleration is larger and the shape of the curve in the “bumper” regime is steeper. In this case, the demand on the output torque or the response speed of the actuator which drives the CRCM is much higher. Moreover, the curve of the actual balancing force is also steeper, as shown in Figure 11(a′). This result means that the balancing force is of large deviation from the shaking force and may cause some negative impacts such as vibrations or fatigue. Therefore, a value closer to the upper boundary of the feasible execution time is the best choice for the collision-avoidance trajectory planning.

#### 5. Conclusion and Future Research

In this paper, we built up a mathematical model of the ABDM using a planar 3-DOF CRCM disc. The motion of the CRCM constrained by construction limitation of mechanical structure was first considered, and the influences of displacements constraint on the active dynamic balancing were analyzed and illustrated. With the superiority of high applicability, calculating precision, and efficiency, a quintic polynomial trajectory planning method was proposed for the collision-free active balancing, which consists of the normal trajectory planning and the collision-avoidance trajectory planning. In order to guarantee the validity of the collision-avoidance trajectories, the execution time of the quintic polynomial trajectories was optimized. Finally, numerical examples were presented to verify the impacts of different execution time on collision-avoidance trajectories programming and dynamical balancing.

Future work will focus on the development of experimental prototypes and investigation of other trajectory planning and optimization methods.

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgments

This work was supported by National Natural Science Foundation of China (Grant no. 51505190) and Jiangsu Province Natural Science Foundation of China (Grant no. BK20150153), the open project of Jiangsu Key Laboratory of Advanced Food Manufacturing Equipment & Technology (Grant no. FM-201405), and the fundamental research funds for the central universities (Grant no. JUSRP11456, Grant no. JUSRP51316B). The authors would like to acknowledge the financial support of the Natural Sciences and Engineering Research Council of Canada (NSERC) as well as the Canada Research Chair Program.