Movement system configured for moving a payload
09850108 ยท 2017-12-26
Assignee
Inventors
- Dalong Gao (Rochester, MI, US)
- Alexandre Lecours (Quebec, CA)
- Thierry LALIBERTE (Quebec, CA)
- Simon Foucault (Quebec, CA)
- Clement Gosselin (Quebec, CA)
- Boris Mayer-St-Onge (Quebec, CA)
- Roland J. Menassa (Macomb, MI, US)
- Pierre-Luc Belzile (Quebec, CA)
Cpc classification
B66C13/30
PERFORMING OPERATIONS; TRANSPORTING
B66C17/00
PERFORMING OPERATIONS; TRANSPORTING
International classification
B66C23/00
PERFORMING OPERATIONS; TRANSPORTING
B66C13/30
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A movement device is moved along an X axis and a Y axis by providing a sensor configured to measure angle of rotation of at least one of a first and a second kinematic link about a respective axis of rotation. A force is imparted on the first and second kinematic links such that an angular displacement of the first and second kinematic links about the respective axis of rotation is achieved. The angular displacement of the first and second kinematic links about the respective axis of rotation is determined. The movement device is moved along the X axis and/or the Y axis in response to the determination of the angle of rotation of the first and second kinematic links about the respective axis of rotation until first and second kinematic links are vertical.
Claims
1. A method of moving a movement device along at least one of an X axis and a Y axis, the method comprising: providing a sensor configured to measure angle of rotation of at least one of a first and a second kinematic link about a respective axis of rotation; imparting a force on at least one of the first and second kinematic links such that an angular displacement of at least one of the first and second kinematic links about the respective axis of rotation is achieved; determining the angular displacement of the at least one of the first and second kinematic links about the respective axis of rotation; and moving the movement device along the at least one of the X axis and the Y axis in response to the determination of the angle of rotation of the at least one of the first and second kinematic links about the respective axis of rotation until first and second kinematic links are vertical.
2. A method of moving a movement device, as set forth in claim 1, further comprising ceasing movement of the movement device along the at least one of the X axis and the Y axis in response to the determination of the angle of rotation the at least one of the first and second curved element to be zero.
3. A method of moving a movement device, as set forth in claim 2, wherein determining the angular of rotation is further defined as: sensing, with the sensor, the angle of rotation of the at least one of the first and second kinematic links about the respective axis of rotation; calculating, in a controller, a direction of movement along at least one of the X axis and the Y axis based on the sensed angle of rotation of the at least one of the first and second kinematic link about the respective axis of rotation; and providing a signal to a cart to move the movement device along the at least one of the X axis and the Y axis in response to the calculation of the direction of movement such that the first and second kinematics links are vertical.
4. A method of moving a movement device, as set forth in claim 3, wherein sensing, with the sensor, is further defined as sensing, with a Hall effect sensor and an encoder, the angular of rotation of the at least one of the first and second kinematic links; and wherein calculating, in a controller, is further defined as combining the angle of rotation sensed by each of the Hall effect sensor and the encoder to determine a direction of movement along at least one of the X axis and the Y axis.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION
(7) Referring to the drawings, wherein like reference numbers refer to like components, a movement system 10 configured for moving a payload 12 in a plurality of directions is shown at 10 in
(8) The movement system 10 includes a bridge crane 18, a trolley 20, and a movement device 22. The bridge crane 18 is a structure that includes at least one girder 30 that spans the pair of parallel rails 16. The bridge crane 18 is adapted to carry the payload 12 along a Y axis 19. The trolley 20 is movably attached to girders 30 of the bridge crane 18 such that the trolley 20 is adapted to carry the payload 12 along an X axis 17, in generally perpendicular relationship to the Y axis 19. The movement device 22 is operatively attached to the trolley 20. A Z axis 21 extends in a vertical direction, with respect to the ground, and is defined between the intersection of the X axis 17 and the Y axis 19.
(9) The movement device 22 includes four-bar mechanisms 24 and is configured to be a two degree-of-freedom articulated mechanism (X and Y). A two degree-of-freedom articulated mechanism is shown in
(10) With reference to
(11) The first four-bar linkage 32a and the second four-bar linkage 32b of each of the first and second four-bar mechanisms 24a, 24b are disposed in spaced and generally parallel relationship to one another such that the first kinematic link 34a of the first four-bar linkage 32a is disposed in spaced and generally parallel relationship to the second kinematic link 34b of the second four-bar linkage 32b and the second kinematic link 34b of the first four-bar linkage 32a is disposed in spaced and generally parallel relationship to the first kinematic link 34a of the second four-bar linkage 32b. Additionally, the first base link 36a and the second base link 36b of the first four-bar linkage 32a are disposed in spaced and generally parallel relationship to a corresponding first base link 36a and second base link 36b of the second four-bar linkage 32b.
(12) A first axis 48 extends through the first joint 40 of the first four-bar linkage 32a and the third joint 44 of the second four-bar linkage 32b. A second axis 50 extends through the second joint 42 of the first four-bar linkage 32a and the fourth joint 46 of the second four-bar linkage 32b. A third axis 52 extends through the third joint 44 of the first four-bar linkage 32a and the first joint 40 of the second four-bar linkage 32b. A fourth axis 54 extends through the fourth joint 46 of the first four-bar linkage 32a and the second joint 42 of the second four-bar linkage 32b. The first axis 48, second axis 50, third axis 52, and fourth axis 54 extend in spaced and generally parallel relationship to one another for each of the four-bar mechanisms 24a, 24b. Additionally, the first axis 48, second axis 50, third axis 52, and fourth axis 54 of the first four-bar mechanism 24a are generally perpendicular to the first axis 48, second axis 50, third axis 52, and fourth axis 54 of the second four-bar mechanism 24b.
(13) Referring to
(14) The first four-bar mechanism 24a is operatively attached to the trolley 20. More specifically, the first four-bar mechanism 24a depends from the trolley 20. The second four-bar mechanism 24b depends from the first four-bar mechanism 24a. More specifically, the second four-bar mechanism 24b depends from the first four-bar mechanism 24a such that the first axis 48, second axis 50, third axis 52, and fourth axis 54 of the first four-bar mechanism 24a are in generally perpendicular relationship to the first axis 48, second axis 50, third axis 52, and fourth axis 54 of the second four-bar mechanism 24b.
(15) Referring to
(16) Referring to
(17) During operation, an oscillation frequency of the movement device 22 is a function of a length L of the kinematic links 34, but not on a position of the center of mass 26 of the payload 12, with respect to the Z axis 21. Shorted kinematic link 34 lengths L may be used to save space, while longer kinematic link 34 lengths L may be used to reduce the oscillation natural frequency.
(18) The movement device 22 includes a cart 62 and a controller 63. The cart 62 is configured for moving the bridge crane 18 and/or the trolley 20 along the respective X axis 17 and Y axis 19 in response to the application of a force F to the payload 12. As the force F is applied to the payload 12 a direction along the X axis 17 and/or the Y axis 19, the kinematic links 34 of the first and/or second four-bar mechanism 24a, 24b rotate about the respective axes. Sensors 64 are operatively connected to at least one joint of each of the first and second four-bar mechanisms 24a, 24b. These sensors 64 measure an angle of rotation .sub.1 and .sub.2 of the kinematic links 34 about the respective axes. The sensor 64 may include an encoder 66 and a Hall effect sensor 68 operatively disposed along the respective axis. While only one sensor 64 may be used per axis, signals from the combination of the encoder 66 and the Hall effect sensor 68 can be combined by using data fusion to obtain improved signal quality over using a single sensor 64. Additionally, using two signals provides redundancy such that signals from both sensors 64 can be compared to one another to detect any signal problems. Additionally, the Hall effect sensor 68 provides an absolute signal, whereas the encoder 66 offers a precise signal. It should be appreciated that other sensors 64 may also be used. Absolute encoders, potentiometers or linear accelerometers (used as inclinometers) could be used as the position sensor. A gyroscope could be used to obtain the angular velocity while an accelerometer could be used to obtain angular acceleration. Accelerometers or gyroscopes placed on slotted parts could also help determine different dynamical effects. Photointeruptors could also be used at strategic places. Finally, the above signals can be derived/integrated to obtain corresponding signals.
(19) The angular displacement and angular velocity estimations are obtained from the Kalman state estimation. Each signal, i.e., from the encoder 66 and the Hall effect sensors 68, are independently Kalman filtered and then combined in proportion of their Kalman covariance matrix corresponding state value.
(20) In order to be desensitized to small angle measurement precision errors, a deadband on the angle may be used. The deadband is an area of a sign range where no action on the system occurs. The movement device 22 may also be excited by small amplitude, high frequency unmodeled dynamics or it may be difficult for the control to manage high frequency oscillations. During oscillations, when the kinematic links 34 are close to a vertical position, since the angle measurement often changes sign, it becomes difficult to suppress the oscillations. One method of suppressing these oscillations is to increase the angle deadband. An algorithm, shown as an oscillation logic block 70 in
(21)
and the signal .sub.p1 is determined in a deadband and saturation block 74 and expressed as follows:
(22)
(23) The signal .sub.p0 then corresponds to the input angle signal above .sub.db1 while .sub.p1 corresponds to the input signal between .sub.db2 and .sub.db3. In order to remove the high frequency oscillations from .sub.p1, this signal is further processed. While a low pass filter could be used, phase delays may result, causing system instability. The absolute signal of .sub.p1 is determined in an absolute logic block 76 and then the absolute signal passes through a rate limiter block 78. The rising limit is low and the falling limit is high, such that it takes time for the output signal to increase, filtering high frequency oscillations. However, the signal of the .sub.p1 can return to zero rapidly, avoiding a phase shift. This signal is then multiplied by the sign of .sub.p1 stored in a sign block 82. The resulting signal, can then optionally be slightly filtered with a usual low pass filter at a low pass block 80, resulting in the signal .sub.p2. Although, .sub.p0 and .sub.p2 can be used individually in the control, they can also be grouped as:
.sub.pf=.sub.p0+.sub.p2
(24) In the following, the equations of motion are first obtained with a complete model called coupled motion. Then, with simplifications, a simplified model is obtained. With reference to
{dot over (X)}.sub.p={dot over (X)}.sub.c+L cos .sub.1 {dot over ()} .sub.1l.sub.4 {dot over ()}
{dot over (Y)}.sub.p={dot over (Y)}.sub.c+L cos .sub.2 {dot over ()} .sub.2l.sub.3 {dot over ()}
.sub.p=.sub.c+L sin .sub.1 {dot over ()} .sub.1 +L sin .sub.2 {dot over ()} .sub.2
{dot over ()} .sub.p={dot over ()} .sub.c+{dot over ()} .sub.e
where X.sub.p, Y.sub.p and Z.sub.p are the payload 12 center of mass position in fixed coordinates (the X axis 17 is aligned with the tubes 60), X.sub.C, Y.sub.C, Z.sub.C are the cart 62 coordinates in fixed coordinates, .sub.C is the mechanism rotation about the vertical axis and .sub.e is the payload 12 rotation about the end-effector axis. .sub.p is the total translation of .sub.e plus .sub.c. The potential energy is provided as follows:
V=mgL(cos .sub.1+cos .sub.2)Z.sub.c
where m is the payload 12 mass and the kinetic energy is expressed as:
(25)
where M.sub.X is the cart 62 mass in the X direction and M.sub.Y the cart 62 mass in the Y direction and M.sub.Z is the cart 62 mass in the Z direction. One should note that masses of the kinematic links 34 were neglected. The equations of motion are obtained from the previous two equations and the Lagrange method as follows:
F.sub.X=M.sub.x{umlaut over (X)}.sub.c+m({umlaut over (X)}.sub.cL sin .sub.1 {dot over ()} .sub.1.sup.2+L cos .sub.1 {umlaut over ()} .sub.1l.sub.4 {umlaut over ()} )
F.sub.Y=M.sub.y.sub.c+m(.sub.cL sin .sub.2 {dot over ()} .sub.2.sup.2+L cos .sub.2 {umlaut over ()} .sub.2+l.sub.3{umlaut over ()} )
F.sub.Z=+M.sub.z{umlaut over (Z)}.sub.c+m({umlaut over (Z)}.sub.c+L cos .sub.1 {dot over ()} .sub.1.sup.2+L sin .sub.1 {umlaut over ()} .sub.1+L cos .sub.2 {dot over ()} .sub.2.sup.2+L sin .sub.2 {umlaut over ()} .sub.2+g)
F.sub.1=0=mL({umlaut over (X)}.sub.c cos .sub.1l.sub.4 cos .sub.1 {umlaut over ()} +{umlaut over (Z)}.sub.c sin +L{umlaut over ()} .sub.1+L sin .sub.1 cos .sub.2 {dot over ()} .sub.2.sup.2+L sin .sub.1+L sin .sub.1 sin .sub.2 {umlaut over ()} .sub.2+mg sin .sub.1)
F.sub.1=0=mL(.sub.c cos .sub.2 +l.sub.3 cos .sub.2 {umlaut over ()} +{umlaut over (Z)}.sub.c sin .sub.2+L{umlaut over ()} .sub.2+L sin .sub.2 cos .sub.1 {dot over ()} .sub.1.sup.2+L sin .sub.1 sin .sub.2 {umlaut over ()} .sub.1 +mg sin .sub.2)
(26) One should note that similar equations could be found with the other angle representation as (.sub.2, .sub.2). Additionally, the coupling between angles .sub.1 and .sub.2 is negligible for relatively small angles and angular velocities. Thus, motion along the X axis 17 and Y axis 19 will be treated separately, as described below.
(27) Referring to
F=(M+m){umlaut over (x)}+m{umlaut over ()} L cos mL{dot over ()} .sup.2 sin +m{umlaut over (L)} sin +2m{dot over (L)} cos
=0=({umlaut over (x)} cos +g sin +L{umlaut over ()} +2{dot over (L)}{dot over ()})mL
which can be simplified to the pendulum equations for constant link lengths L of the kinematic links 34 as follows:
F=(M+m){umlaut over (x)}+m{umlaut over ()} L cos mL{dot over ()} .sup.2 sin +m{umlaut over (L)} sin +2m{dot over (L)} cos
=0=({umlaut over (x)} cos +g sin +L{umlaut over ()})mL
where M is the mass of the cart 62 and m is the mass of the payload 12. Assuming small angles and a slowly varying vertical translation and neglecting {dot over ()} .sup.2, the equations can be approximated as follows:
F=(M+m){umlaut over (x)}+m{umlaut over ()}L
0={umlaut over (x)}+g+L{umlaut over ()}
(28) The movement mechanism may be operated in a cooperation mode. It is possible to manage an offset of the center of mass 26 of the payload 12 from the central line 25. In
(29) More specifically, the angle .sub.1 and .sub.2 is imparted by the kinematic links 34 of the first and/or second four-bar mechanisms 24a, 24b pivoting about the axes in response to the operator 28 pushing on the mechanism. An objective of the control system is to move the overhead cart 62, in response to the imparted angles .sub.1 and .sub.2 to keep the kinematic links 34 vertical. Thus, the cart 62 moves in the direction imparted by the operator 28 to the payload 12, while controlling swaying of the kinematic links 34. Additionally, since the controller 63 ensures that the kinematic links 34 remain vertical, the operator 28 is not required to stop the load. More specifically, the control system functions to stop the cart 62, and the associated payload 12.
(30) The force F required for an operator 28 to move the payload 12 would be reduced because a measure of the imparted angle(s) .sub.1 and .sub.2 of the kinematic links 34 about the respective axes can be precisely and accurately measured. This results in a system that moves along the corresponding X axis 17 and/or Y axis 19.
(31) The controller 63 includes a control block 86, shown in
{umlaut over (X)}(s)+g(s)+s.sup.2L(s)=0
The state-space representation is as follows:
y.sub.S=C.sub.S
where y.sub.S the output vector,
(32)
(33) The above equation, obtained from the Laplace domain, is used, where u={umlaut over (x)}, the control law is u.sub.S=K.sub.Re, where:
(34)
where {dot over (x)}.sub.d, .sub.d, and {dot over ()} .sub.d equal zero.
(35) Referring again to the control logic block of
(36) In the cooperation mode, the state space controller block 90 output of
{umlaut over (x)}.sub.d(k)=u=K.sub.re
{dot over (x)}.sub.d(k)={dot over (x)}.sub.d(k1)+{umlaut over (x)}.sub.d(k)T.sub.S
Likewise, in the autonomous mode, the state space controller block 90 output of
x.sub.d(k)=x.sub.d(k1)+{dot over (x)}.sub.d(k-1)T.sub.S+0.5{umlaut over (x)}.sub.d(k)T.sub.S.sup.2
(37) It should be appreciated that the measured velocity could be used in the preceding equations, instead of the last time step desired value.
(38) One should note that the measured velocity could be used in the preceding equations instead of the last time step desired value. This integration method is used to achieve acceleration control in an admittance control scheme. The desired acceleration is then obtained by using velocity or position control, which is more practical. It is also possible to additionally use computed torque control using the previous force equations. Although the payload 12 and cart 62 mass would then be required, an approximation is sufficient since feedback control is also used. Additionally, the payload 12 and cart 62 mass are not required in order to adapt the state space controller block 90 gains to varying parameters. Additionally, a limit and saturation block 92 may be used for virtual walls and to limit velocity and acceleration of the cart 62.
(39) In the cooperation mode, since there is no reference position, K.sub.x is set to zero. The control gain K.sub.p, i.e., gain on the angular velocity signal, can be optionally used, depending on the angle derivative signal quality. An adaptive controller 63, based on pole placement and state space control may be used. The pole of the system may be obtained by:
det[sIA+BK.sub.r]
leading to the equation:
(40)
where K.sub. and K.sub.p are assumed negative.
(41) The transfer function from angle to an angle initial condition .sub.0 is as follows:
(42)
(43) The poles may be placed to the following:
(s+p.sub.1)(s.sup.2+2.sub.1.sub.n1+.sub.n1.sup.2)
(44) In a first method, K and K.sub. are used, which leads to the following:
(45)
and then, the following are used:
(46)
where
(47)
and are design parameters. The control gains are thus obtained. The transfer function zero influences the response, but without practical effect, since it is relatively high, .sub.n1 is chosen very close to
(48)
but not too close to avoid numerical problems.
(49) Referring again to
(50) In a second method, K, K.sub., and K.sub.p are used, which leads to the following:
(51)
(52) The second method allows the poles to remain constant. Using the gain K.sub.p allows the cart 62 to move in regards to the angle and angular velocity. The following is then obtained:
(53)
where
(54)
, and K.sub.p are design parameters. The control gains are thus obtained. The transfer function zero influences the response, but without practical effect since it is relatively high, .sub.n1 is chosen very close to
(55)
but not too close to avoid numerical problems.
(56) Referring again to
(57) Neglected terms from the complete model as {dot over (L)}, {dot over ()} , {dot over ()} .sup.2 and viscous friction can be compensated for, for example, with gains K.sub. and K.sub.p by considering the terms constant over a time step, similarly as with the lengths L of the kinematic links 34.
(58) Control gains may also be heuristically modified from the computed gains. Additionally, control gains on .sub.p0 and .sub.p2 and their derivatives may be different from each other.
(59) In the autonomous mode, K.sub.x is used to control the cart 62 position. The control gain K.sub.p can be optionally used. An adaptive controller 63 based on pole placement and state space control using K.sub.p is provided. Similar to the cooperation mode, the system poles are:
(60)
where K.sub. and K.sub.p are assumed to be negative.
(61) There is a compromise between the cart 62 position trajectory and the kinematic links 34 oscillations cancellation. In regards to the equations, this is due to the transfer function zeros.
(62) Pole placement is used using the characteristic equation:
(s+p.sub.1).sup.2(s.sup.2+2.sub.1.sub.n1+.sub.n1.sup.2)
(63) Equaling the previous equations for the system poles and pole placement provides:
(64)
and then the following are used:
(65)
where
(66)
and are design parameters and p.sub.1 is heuristically chosen to be equal to .sub.n1 as to lie on the same circle as the other poles. It is a design choice to use two complex poles and two equal real poles as other choices are possible. The state space controller 63 gains to adapt are thus obtained. The transfer function zero influence the response but without practical effect since it is relatively high. .sub.n1 is chosen very close to
(67)
but not too close to avoid numerical problems.
(68) One should note that the operator 28 can still push the payload 12 in autonomous mode. The cart 62 position will move in the direction desired by the operator 28, while being attracted to its reference position and cancelling oscillations of the movement device 22. Depending on the control gains, it will be more or less easy to move the cart 62 away from its reference position. Referring to
(69) Neglected terms from the complete model as {dot over (L)}, {dot over ()} , {dot over ()} .sup.2 and viscous friction can be compensated for, for example, with gains K.sub. and K.sub.p by considering the terms constant over a time step, similarly as with the lengths L of the kinematic links 34.
(70) Control gains can also be heuristically modified from the computed gains. Additionally, control gains on .sub.p0 and .sub.p2 and their derivatives can be different from one another.
(71) When switching between the modes, i.e., cooperation mode, autonomous mode, stopping, and the like, rude acceleration and jerk profile may be required. The most frequent abrupt profile happens when switching modes when the angles .sub.1 and .sub.2 of the kinematic links 34 are non-zero. Bumpless transfer or smooth transfer between modes may be achieved. In one embodiment, the last control input is memorized or observed. In another embodiment, the measured velocity is memorized when the mode switch happens. In the cooperation mode, the output bumpless velocity is as follows:
.sub.DesBumpl=.sub.bt.sub.mem+(1.sub.bt).sub.des
(72) The variable .sub.bt is reinitialized at 1 when a mode switch happens and is then multiplied by b.sub.bt at each time step. At first .sub.Desbumpl is then equal to the measured velocity (.sub.mem) and after some time, depending on parameter b.sub.bt, .sub.bt goes to 0 and .sub.DesBumpl to .sub.des. b.sub.bt should be defined as a parameter to be chosen by the designer. The goal is to go from the present velocity as the mode switch moment (.sub.mem) to the desired velocity (.sub.des) in a smooth filtered way. For the autonomous mode, the desired position is first reset to the measured position and the desired bumpless velocity is integrated to obtain a new desired position respecting this velocity. Further smoothing may also be possible by considering the acceleration in the mode switch.
(73) It should also be appreciated that the movement device 22 may be configured such that the payload 12 may include an end effector which is slidable, relative to the four-bar mechanisms 24a, 24b and which also allows the payload to be rotated, as indicated at 94 in
(74) While the best modes for carrying out the disclosure have been described in detail, those familiar with the art to which this disclosure relates will recognize various alternative designs and embodiments for practicing the disclosure within the scope of the appended claims.