Modeling and Simulation of Motion of an Underwater Robot
Total Page:16
File Type:pdf, Size:1020Kb
2016 International Symposium on Nonlinear Theory and Its Applications, NOLTA2016, Yugawara, Japan, November 27th-30th, 2016 Modeling and Simulation of Motion of an Underwater Robot Ryo Inoharay, Kaito Isogaiy, Hideo Nakanoz, and Hideaki Okazakiy yGraduate School of Engineering, Shonan Institute of Technology 1–1–25, Tsujidounishikaigan, Fujisawa-shi, Kanagawa Prefecture 251-8511, Japan zFaculty of Engineering, Shonan Institute of Technology 1–1–25, Tsujidounishikaigan, Fujisawa-shi, Kanagawa Prefecture 251-8511, Japan Email: [email protected], [email protected], [email protected], [email protected] Abstract—This paper presents how system dynamics ics [1] of an underwater robot based on [2], [4]. The time and system control equations for an underwater robot were parameter t for all the stated variables, such as r(t), or Ω(t), derived using an Arnold-type operator to control the Open- etc., is omitted for convenience. We use the following no- ROV. Typical behavior of the OpenROV on MATLAB nu- tation as [2] (Fig 2): merical simulations is illustrated. ei 2 w (i = 1; 2; 3) are the base vectors of a right-handed Cartesian stationary coordinate system at the origin O; 2 = ; ; 1. Introduction Ei W (i 1 2 3) are the base vectors of a right moving coordinate system connected to the body at the center of Although there are several designs, control system equa- the mass Oc. tions, and dynamic equations for underwater robots, such as [1], unified methods to describe the dynamic equations Definition 1 Let w and W be oriented euclidean spaces for the rigid body kinetics of an underwater robot have yet (i.e. orthogonal spaces). A motion of W relative to w is to be established. Using the mathematical foundation of a smooth mapping on t: rigid body dynamics provided by V. I. Arnold [2], we ap- B : W ! w; (1) ply Arnold’s operator in order to facilitate the derivation of dynamics for the rigid body kinetics of an underwater which preserves the metric and the orientation (Fig 2). robot. Secondly, OpenROV (Fig 1) (open-source remotely operated vehicle) projects [3] have recently been promoted to examine the sea bottom. Since simulations of the behav- ior of OpenROV are of value, we describe the equations of motion for real OpenROV. Finally, we illustrate the typi- cal behavior of OpenROV on MATLAB numerical simula- tions. In the following, let R be the set of real numbers and Rn be the set of real number vectors. Fig 2: Radius vector of a point with respect to stationary (q) and moving (Q) coordinate systems Definition 2 A motion B is called a rotation if it takes the origin of W to the origin of w (i.e. if B is a linear operator). Definition 3 w is called a stationary coordinate system, W 2 Fig 1: OpenROV version 2.7 a moving one, and q w the radius-vector of a point mov- ing relative to the stationary system; if q= r + ut + BQ (2) 2. Motion in a Moving Coordinate System There exists a flow of fluid velocity vector u in w. Q is In this section, we detail the mathematical foundation called the radius vector of the point relative to the moving for describing the motion of fundamental rigid body kinet- system (Fig 2). We express the “absolute velocity” q˙ in - 161 - terms of the relative motion Q and the motion of the coor- + (sin sin θ sin ϕ + cos cos ϕ)e2 dinate system B. By differentiating with respect to t in Eq. + cos θ sin ϕe3; (9) (2), we arrive at Eq. (3) for the addition of velocities. = θ ϕ + ϕ d BE3 (cos sin cos sin sin )e1 q˙ = r˙ + u˙t + u + (BQ): (3) dt + (sin sin θ cos ϕ − cos sin ϕ)e2 = ; ; In order to carry the stationary frame ei (i 1 2 3) into + cos θ cos ϕe3: (10) the moving frame Ei (i = 1; 2; 3), we perform three rota- tions (Fig 3): Since W is a moving coordinate system connected to the body of an underwater robot, Q is at rest in W (i.e., Q˙ = = 1. Given an angle around the e3 axis, under this rota- 0) and the coordinate system W rotates (i.e., r 0). In −2 tion, e3 remains fixed and e2 goes to E2 by means of this case, the motion of the point q is a transferred rotation Eq. (5). given by Eq. (11). = + + + ˙ = + + + Ω; ; θ −2 q˙ r˙ u˙t u BQ r˙ u˙t u [B BQ] (11) 2. Given an angle around the E2 axis, under this rota- −2 −2 −1 where [ · ; · ]: the vector product. tion, E2 remains fixed and E1 goes to E1 by means of Eq. (6). The vector Ω 2 W is called the vector of angular velocity in the underwater robot. In this case, Ω is expressed by: 3. Given an angle ϕ around the E−1 axis, under this rota- 1 T −1 −1 Ω = B !: (12) tion, E1 remains fixed and E3 goes to E3 by means of Eq. (7). The vector ! 2 w is called the instantaneous angular velocity given by Eq. (13). After all three rotations are completed, e1 has moved to E1, ! = ˙ + θ˙ −2 + ϕ˙ −1: and e2 to E2; therefore, e3 moves to E3. The angles , θ, e3 E2 E1 (13) and ϕ are called the Tait-Bryan angles (one of the Euler In numerous studies and texts, the angular velocity vector angle systems). ( ˙, θ˙, ϕ˙) of the Tait-Bryan angles [5], [6] is often referred to as coordinate components Ei; (i = 1; 2; 3) on the base vec- tors of the moving coordinate system. It must be stressed, however, that the description given in Eq. (13) is correct. Using the angular velocity vector of the Tait-Bryan angles of Eq. (13), we can rewrite Eq. (11), as follows: @ @ @ = + + + ˙ + θ˙ + ϕ˙ : q˙ r˙ u˙t u @ (BQ) ∂θ (BQ) ∂ϕ(BQ) (14) Here, let h 2 w be the angular momentum of the un- derwater robot in the stationary inertia coordinate system, H 2 W be the angular momentum of the underwater robot Fig 3: Rotations defining the Tait-Bryan angles in the moving coordinate system, and Iˆ be the moment of inertia of the underwater robot. Using operator B, we ob- Here we describe an operator B, as follows: tained the following equations: B = R Rθ Rϕ h = Iˆ! = BH 2 w; (15) 0 1 B θ θ ϕ − ϕ θ ϕ + ϕ C B c c c s s s c c s c s s C H = IˆΩ 2 W: (16) = B θ θ ϕ + ϕ θ ϕ − ϕ C; @B s c s s s c c s s c c s AC (4) −sθ cθsϕ cθcϕ In addition, let τ 2 w be the torque of the underwater 0 1 B − C robot. We obtain the time derivative of an angular momen- B cos sin 0 C = B C; R @B sin cos 0 AC (5) tum which is equal to the moment, as follows: 0 0 1 0 1 d d B cos θ 0 sin θ C h = τ = BH = BT; IˆΩ˙ + [Ω; H] − T = 0: (17) = B C; Rθ @B 0 1 0 AC (6) dt dt − sin θ 0 cos θ 0 1 Then, Ω and Ω˙ can be expressed in concrete terms by: B C B 1 0 0 C = B ϕ − ϕ C: Rϕ @B 0 cos sin AC (7) Ω = (− ˙ sin θ + ϕ˙)E1 + ( ˙ cos θ sin ϕ + θ˙ cos ϕ)E2 0 sin ϕ cos ϕ + ( ˙ cos θ cos ϕ − θ˙ sin ϕ)E ; (18) c , s , cθ, sθ, cϕ and sϕ denote cos , sin , cos θ, sin θ, 3 cos ϕ and sin ϕ, respectively. Hence, the base vectors of and the moving coordinate system generated by means of the Ω˙ = (− ¨ sθ − ˙θ˙cθ + ϕ¨)E1 operator B are expressed as: + ( ¨cθsϕ− ˙θ˙sθsϕ+ ˙ϕ˙cθcϕ+θ¨cϕ−θ˙ϕ˙sϕ)E2 BE1 = cos cos θe1 + sin cos θe2 − sin θe3; (8) + ( ¨cθcϕ− ˙θ˙sθcϕ− ˙ϕ˙cθsϕ−θ¨sϕ−θ˙ϕ˙cϕ)E3; (19) BE2 = (cos sin θ sin ϕ − sin cos ϕ)e1 respectively. - 162 - A torque τ of Eq. (17) is also given as: : ≈ τ = [r; f]: (20) The constant, kT , is determined to be approximately 1 5 −8 Nm 10 rpm2 by matching the performance of the simulation to Here, r and f denote the position vector on which external the real system. For the rigid body kinetics of Eq.(3) and forces act and a vector of external forces, respectively. Eq.(17), taking into consideration gravitational or buoy- The coordinate components of an angular momentum of ancy terms, system inertia matrix (including added mass), the underwater robot are given as Eq. (21). system moment matrix (including added moment), viscous X3 damping, current loads, and an assumption of u¨ = 0, we = : HA HiA Ei (21) arrive at the equations of motion for OpenROV, as follows: i=1 (M˙ + Madd)(r¨ + 2u˙) Then, we have the following equation: = (ρVvol − m)ge3 − kDjr˙ − uj(r˙ − u) T T (H ; H ; H ) = Iˆ(Ω ; Ω ; Ω ) : (22) X3 1 2 3 1 2 3 r˙ − u + k jr˙ − uj2( BE − (r˙ − u; BE ) ) L i i jr˙ − uj The moment of inertia Iˆ is also defined by i=1 0 1 − Γ − + − − − + ; B C t(r˙ u) B( ( F1 E1 F2 E1) F3 E3) (26) B I11 I12 I13 C B C Iˆ = B I21 I22 I23 C: (23) @ A (Iˆ + Iˆadd)Ω˙ + [Ω; (Iˆ + Iˆadd)Ω] = −ΓrΩ˙ + (T1 − T2)E1 I31 I32 I33 +[`E2; F2 E1] + [−`E2; F1 E1]: (27) In this paper, for Iˆ, we assume that I = 0, and for k , l.