<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article">
 <front>
  <journal-meta>
   <journal-id journal-id-type="publisher-id">
    aast
   </journal-id>
   <journal-title-group>
    <journal-title>
     Advances in Aerospace Science and Technology
    </journal-title>
   </journal-title-group>
   <issn pub-type="epub">
    2473-6708
   </issn>
   <issn publication-format="print">
    2473-6724
   </issn>
   <publisher>
    <publisher-name>
     Scientific Research Publishing
    </publisher-name>
   </publisher>
  </journal-meta>
  <article-meta>
   <article-id pub-id-type="doi">
    10.4236/aast.2025.101001
   </article-id>
   <article-id pub-id-type="publisher-id">
    aast-140903
   </article-id>
   <article-categories>
    <subj-group subj-group-type="heading">
     <subject>
      Articles
     </subject>
    </subj-group>
    <subj-group subj-group-type="Discipline-v2">
     <subject>
      Engineering, Physics 
     </subject>
     <subject>
       Mathematics
     </subject>
    </subj-group>
   </article-categories>
   <title-group>
    Simulation of the Attitude Control System on a CubeSat U1 Using Magneto-Torquers
   </title-group>
   <contrib-group>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Gustavo
      </surname>
      <given-names>
       Mendoza-Torres
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Yolanda Elinor
      </surname>
      <given-names>
       Bravo-Garcia
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Edmundo
      </surname>
      <given-names>
       Reynoso-Lara
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Hilario
      </surname>
      <given-names>
       Pajaro-Adrian
      </given-names>
     </name>
    </contrib>
   </contrib-group> 
   <aff id="affnull">
    <addr-line>
     aFacultad de Electrónica, Benemérita Universidad Autónoma de Puebla, Puebla, México
    </addr-line> 
   </aff> 
   <pub-date pub-type="epub">
    <day>
     27
    </day> 
    <month>
     02
    </month>
    <year>
     2025
    </year>
   </pub-date> 
   <volume>
    10
   </volume> 
   <issue>
    01
   </issue>
   <fpage>
    1
   </fpage>
   <lpage>
    17
   </lpage>
   <history>
    <date date-type="received">
     <day>
      24,
     </day>
     <month>
      December
     </month>
     <year>
      2024
     </year>
    </date>
    <date date-type="published">
     <day>
      24,
     </day>
     <month>
      December
     </month>
     <year>
      2024
     </year> 
    </date> 
    <date date-type="accepted">
     <day>
      24,
     </day>
     <month>
      February
     </month>
     <year>
      2025
     </year> 
    </date>
   </history>
   <permissions>
    <copyright-statement>
     © Copyright 2014 by authors and Scientific Research Publishing Inc. 
    </copyright-statement>
    <copyright-year>
     2014
    </copyright-year>
    <license>
     <license-p>
      This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
     </license-p>
    </license>
   </permissions>
   <abstract>
    In this work, we simulate the proportional derivative (PD) control of the control system for the Attitude of the CubeSat U1 based on a set of 3 orthogonal magnetic torsion coils called Magneto-Torquer and analyze its functionality. The simulation of the PD control of the Attitude system is based on the Propat simulator programmed in MatLab, created by Dr. Valdemir Carrara. We obtain the data that will allow us to position the X face of the CubeSat U1, pointing towards Puebla city. The electromagnetic theory that allows us to generate the magnetic torque in the Magneto-Torquer is described as the variables that will be controlled in its application to control the CubeSat. We consider the radius of the Earth to be 6,371,000 meters. In particular, it is proposed to simulate with an orbit altitude equal to 300,000 meters with an eccentricity of 0.0002, with polar orbit, using a Magneto-Torquer to generate the movements necessary to locate the CubeSat, based on the simulation. For the simulation, the real conditions of outer space and the Earth’s magnetic field at the location of Puebla are considered, and the values for positioning the X face of the CubeSat towards this region are obtained. Confirm that simulation is a necessary and important tool for constructing systems used in Satellite technology, particularly in the Attitude system of a CubeSat. The development of aerospace technology has a fundamental tool in artificial satellites and nanosatellites, including CubeSats. This same tool is available for countries with limited economies to carry out aerospace projects by building their CubeSats. This work is important because it provides the basis for future work and even the start of a project that can be sent into outer space.
   </abstract>
   <kwd-group> 
    <kwd>
     Magneto-Torquer
    </kwd> 
    <kwd>
      Control
    </kwd> 
    <kwd>
      PD
    </kwd> 
    <kwd>
      Attitude
    </kwd> 
    <kwd>
      CubeSat
    </kwd>
   </kwd-group>
  </article-meta>
 </front>
 <body>
  <sec id="s1">
   <title>1. Introduction</title>
   <p>Nowadays, the use of CubeSat promotes the development of aerospace projects as their requirements facilitate their design and manufacturing for easy access to components and software, reducing the cost and the standard size that they must meet, which must be composed in 10 × 10 × 10 cms. Modules and a weight of no more than 1.33 kgs. The CubeSat cannot be compared with a conventional satellite in terms of performance and behavior as they came up with the necessity of designing, building, and operating smaller and more affordable satellites, letting research institutes in developing countries get involved in outer space.</p>
   <p>A CubeSat has different controlling systems depending on the mission to be fulfilled, such as the Attitude, which positions it in outer space. There are three types of controlling systems of attitude that are used for its operation: chemical &amp; electrical propulsion, reaction wheels, and magneto-torques. The Functional Principle of Magneto-Torquer consists of applying electric current to coils to carry a magnetic torque, which, along with the Ambiental magnetic field, produces a torque to rotate the CubeSat. This work focuses on the development of this type of Attitude system.</p>
   <p>Considering the different types of control using inertial wheel systems, Magneto-torque, and other methods, there are studies on Attitude Control Systems. For example, as shown in <xref ref-type="bibr" rid="scirp.140903-1">
     [1]
    </xref>, attitude control for CubeSat orientation is implemented through inertial wheels. The study describes the use of a microcontroller adapted to the characteristics of the system. To calculate the angular velocity and the direction of rotation of the wheels, four methods are used, applying mechanical simulations to model the movements of the CubeSat on a test platform. In <xref ref-type="bibr" rid="scirp.140903-2">
     [2]
    </xref>, the design of a reaction or inertial wheel system is presented, where the angular momentum generated can be transferred in a single direction. This is possible thanks to the Möbius strip, which, after some modifications, becomes a surface capable of allowing the necessary reorientation, along with a secondary actuator that performs the displacement. With the simulation of the response of the motor elements and applying PID controllers, it is demonstrated that the design is effective, as it successfully achieves proper attitude regulation in finite time across all scenarios. In <xref ref-type="bibr" rid="scirp.140903-3">
     [3]
    </xref>, two types of attitude systems were designed, fabricated, and characterized based on magnetic coils and inertial wheels for a 3U CubeSat. Together with the mathematical model of the satellite, the required torques for stabilization were determined, considering the limitations of mass, volume, power, and tolerance. In the attitude control simulation, the physical responses of the prototypes were verified to ensure they were correct, with small errors observed in both. In <xref ref-type="bibr" rid="scirp.140903-4">
     [4]
    </xref>, the concept of exo-vela for a CubeSat is proposed using a parachute with an exobreak for maneuvers. PD controller feedback, with carefully adjusted gains, was proposed to prevent exceeding the control torques induced by the allowed exo-sail. The proposed concept was successfully demonstrated through simulations from the CubeSat control response, measuring the time it takes to correct the errors. The results of the attitude control proposed, and the strategy using the exo-sail are feasible.</p>
   <p>To obtain information about the operation of the attitude control systems in the mentioned studies, simulations are conducted. However, none of these uses MATLAB-based software specifically designed for CubeSat simulations under outer space conditions, which in this study are considered constant and free from external or internal disturbances. For this reason, this study is considered both important and significant.</p>
  </sec><sec id="s2">
   <title>2. Literature Review</title>
   <sec id="s2_1">
    <title>2.1. Description of Magneto-Torque and Operation, Its Theoretical Foundations</title>
    <p>The Magneto-Torquer is a coil wound around with a conductor wire (usually copper) over some kind of support; this wire is coated with varnish to provide electrical insulation. This way of generating a magnetic field is known as an electromagnet, and the density generated due to the magnetic field may differ proportionally from the number of turns the coil might have and the quantity of current flowing through.</p>
    <p>The coil is formed by fitting the core in the solenoid (<xref ref-type="fig" rid="fig1">
      Figure 1
     </xref>). Given that the iron has more permeability than the air, the lines of force can flow easily, and the magnetic field lines generated by the coil are concentrated in the core, producing a flow density increase inside the coil <xref ref-type="bibr" rid="scirp.140903-5">
      [5]
     </xref>.</p>
    <fig id="fig1" position="float">
     <label>Figure 1</label>
     <caption>
      <title>Figure 1. Representation of a current flowing through a solenoid and a coil and its lines of force.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2850325-rId14.jpeg?20250409095737" />
    </fig>
   </sec>
   <sec id="s2_2">
    <title>2.2. Moment of Inertia a Solid</title>
    <p>The moment of inertia of a solid is a scalar magnitude defined as <xref ref-type="bibr" rid="scirp.140903-6">
      [6]
     </xref>:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <mstyle displaystyle="true"> 
        <munderover> 
         <mo>
           ∑ 
         </mo> 
         <mrow> 
          <mi>
            i 
          </mi> 
          <mo>
            = 
          </mo> 
          <mn>
            1 
          </mn> 
         </mrow> 
         <mi>
           N 
         </mi> 
        </munderover> 
        <mrow> 
         <msub> 
          <mi>
            m 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <msubsup> 
          <mi>
            r 
          </mi> 
          <mi>
            i 
          </mi> 
          <mn>
            2 
          </mn> 
         </msubsup> 
        </mrow> 
       </mstyle> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          r 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> represents the distance from the axis of rotation and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          m 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> as the masses.</p>
    <p>Having said this, it can be deduced that the moment of inertia of a solid depends on the axis of rotation, and as mentioned before, when it is about a solid, the addition of the formula can be substituted by the following integral</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         p 
       </mi> 
       <mstyle displaystyle="true"> 
        <mrow> 
         <mo>
           ∫ 
         </mo> 
         <mrow> 
          <mtext>
            d 
          </mtext> 
          <mi>
            m 
          </mi> 
          <msup> 
           <mi>
             r 
           </mi> 
           <mn>
             2 
           </mn> 
          </msup> 
         </mrow> 
        </mrow> 
       </mstyle> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math></p>
    <p>where, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         d 
       </mtext> 
       <mi>
         m 
       </mi> 
      </mrow> 
     </math> represents the mass element of the solid directly related to the solid density 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        p 
      </mi> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        r 
      </mi> 
     </math> is the distance from the axis of rotation.</p>
    <p>Given the mass element of the solid 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         d 
       </mtext> 
       <mi>
         m 
       </mi> 
      </mrow> 
     </math> and the solid density 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        p 
      </mi> 
     </math> besides if this is homogeneous, it is possible to calculate the density of the integral when substituting 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         d 
       </mtext> 
       <mi>
         m 
       </mi> 
      </mrow> 
     </math> in the previous formula</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         d 
       </mtext> 
       <mi>
         m 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         p 
       </mi> 
       <mtext>
         d 
       </mtext> 
       <mi>
         V 
       </mi> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         p 
       </mi> 
       <mstyle displaystyle="true"> 
        <mrow> 
         <mo>
           ∫ 
         </mo> 
         <mrow> 
          <msup> 
           <mi>
             r 
           </mi> 
           <mn>
             2 
           </mn> 
          </msup> 
          <mtext>
            d 
          </mtext> 
          <mi>
            V 
          </mi> 
         </mrow> 
        </mrow> 
       </mstyle> 
      </mrow> 
     </math></p>
    <p>where, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         d 
       </mtext> 
       <mi>
         V 
       </mi> 
      </mrow> 
     </math> represents a solid volume and, to calculate a homogeneous solid’s inertia moment, it is necessary to solve the previous integral.</p>
    <p>Taking the situation above into account, the variation per unit time is the linear velocity factor 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mover accent="true"> 
        <mi>
          r 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         = 
       </mo> 
       <mi>
         v 
       </mi> 
      </mrow> 
     </math> and in case motion may take place along a radius circumference 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        r 
      </mi> 
     </math> the magnitude of the linear velocity will be the following <xref ref-type="bibr" rid="scirp.140903-7">
      [7]
     </xref>,</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         v 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         r 
       </mi> 
       <mfrac> 
        <mrow> 
         <mtext>
           d 
         </mtext> 
         <mi>
           θ 
         </mi> 
        </mrow> 
        <mrow> 
         <mtext>
           d 
         </mtext> 
         <mi>
           t 
         </mi> 
        </mrow> 
       </mfrac> 
       <mo>
         = 
       </mo> 
       <mi>
         r 
       </mi> 
       <mi>
         w 
       </mi> 
      </mrow> 
     </math> (1)</p>
    <p>where, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        v 
      </mi> 
     </math> is the linear velocity, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        w 
      </mi> 
     </math> is the angular velocity.</p>
    <p>Therefore, the angular moment 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        L 
      </mi> 
     </math> applied to a rigid solid is obtained</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         L 
       </mi> 
       <mo>
         = 
       </mo> 
       <mstyle displaystyle="true"> 
        <mrow> 
         <mo>
           ∫ 
         </mo> 
         <mrow> 
          <mi>
            r 
          </mi> 
          <mo>
            ⋅ 
          </mo> 
          <mi>
            m 
          </mi> 
          <mi>
            w 
          </mi> 
          <mi>
            r 
          </mi> 
          <mtext>
            d 
          </mtext> 
          <mi>
            m 
          </mi> 
         </mrow> 
        </mrow> 
       </mstyle> 
       <mo>
         = 
       </mo> 
       <mstyle displaystyle="true"> 
        <mrow> 
         <mo>
           ∫ 
         </mo> 
         <mrow> 
          <mi>
            w 
          </mi> 
          <msup> 
           <mi>
             r 
           </mi> 
           <mn>
             2 
           </mn> 
          </msup> 
          <mtext>
            d 
          </mtext> 
          <mi>
            m 
          </mi> 
         </mrow> 
        </mrow> 
       </mstyle> 
       <mo>
         = 
       </mo> 
       <mi>
         I 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         w 
       </mi> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (2)</p>
    <p>it is known that a Magneto-Torquer operation is based on the ability to create a magnetic dipole; when a current flows through a coil, the equation of angular moment is obtained <xref ref-type="bibr" rid="scirp.140903-8">
      [8]
     </xref>,</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         L 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         I 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         w 
       </mi> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math> (3)</p>
    <p>Remembering that the magnetic torque 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        τ 
      </mi> 
     </math> applied to a coil exposed to an external magnetic field may be expressed as the vector product of dipole moment and external magnetic field <xref ref-type="bibr" rid="scirp.140903-5">
      [5]
     </xref> <xref ref-type="bibr" rid="scirp.140903-9">
      [9]
     </xref>,</p>
    <p>
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         τ 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         μ 
       </mi> 
       <mo>
         × 
       </mo> 
       <mstyle mathvariant="bold" mathsize="normal"> 
        <mi>
          B 
        </mi> 
       </mstyle> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (4)</p>
    <p>where, 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        μ 
      </mi> 
     </math> is the dipole moment produced by the Magneto-torque, 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mstyle mathvariant="bold" mathsize="normal"> 
       <mi>
         B 
       </mi> 
      </mstyle> 
     </math> is the external magnetic field in such a way that the modulus of the magnetic torque can be expressed <xref ref-type="bibr" rid="scirp.140903-9">
      [9]
     </xref>,</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         τ 
       </mi> 
       <mo>
         = 
       </mo> 
       <mi>
         μ 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         B 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         s 
       </mi> 
       <mi>
         e 
       </mi> 
       <mi>
         n 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          θ 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (5)</p>
    <p>where 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        θ 
      </mi> 
     </math> is the angle that forms the axis of action of the magnetic force produced from the Magneto-Torquer and the desired angle. By saying this, it is possible to find the equation of motion of the system. To carry this on, it is necessary to apply the theorem of conservation of angular momentum. The law of conservation of angular momentum states if the net external torque is zero (it does not imply the external forces are zero, but it is an isolated system), the total angular momentum is conserved in other words, it is constant <xref ref-type="bibr" rid="scirp.140903-6">
      [6]
     </xref>.</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mstyle displaystyle="true"> 
        <mo>
          ∑ 
        </mo> 
        <mtext>
          Τ 
        </mtext> 
       </mstyle> 
       <mo>
         = 
       </mo> 
       <mi>
         I 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mover accent="true"> 
        <mi>
          w 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (6)</p>
    <p>with 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mtext>
        Τ 
      </mtext> 
     </math>, it is the torque applied to the system.</p>
    <p>However, the magnetic torque produced by the magneto-torque, Equation (5), is not the only one that interacts with the system; there is also a resistive torque produced by different factors. From Equation (6), it can be deduced that when applying a torque to a solid, it can create an angular acceleration about the axis around which the object rotates, leading to the motion equation for the Magneto-Torquer</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         τ 
       </mi> 
       <mo>
         − 
       </mo> 
       <msub> 
        <mtext>
          Τ 
        </mtext> 
        <mi>
          r 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mi>
         I 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         ω 
       </mi> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (7)</p>
    <p>where 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mtext>
          Τ 
        </mtext> 
        <mi>
          r 
        </mi> 
       </msub> 
      </mrow> 
     </math>, represents the resistive torque which opposes the motion. Besides, the operating principle of a Magneto-Torquer is based on the torque produced by the magnetic dipole moment. Thus, it can possibly be related to the current intensity flowing through the coils along the satellite movement.</p>
    <p>And so, relating the Equations (5), (7) it may bring</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         μ 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         B 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         s 
       </mi> 
       <mi>
         e 
       </mi> 
       <mi>
         n 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          θ 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         − 
       </mo> 
       <mo> 
       </mo> 
       <msub> 
        <mtext>
          Τ 
        </mtext> 
        <mi>
          r 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mi>
         I 
       </mi> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         ω 
       </mi> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (8)</p>
    <p>the dipole moment produced by a coil is calculated as Equation (7) shows. The angular velocity function 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        ω 
      </mi> 
     </math> is obtained as:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         ω 
       </mi> 
       <mo>
         = 
       </mo> 
       <mfrac> 
        <mrow> 
         <mi>
           μ 
         </mi> 
         <mi>
           B 
         </mi> 
        </mrow> 
        <mi>
          I 
        </mi> 
       </mfrac> 
       <mo>
         ⋅ 
       </mo> 
       <mi>
         s 
       </mi> 
       <mi>
         e 
       </mi> 
       <mi>
         n 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          θ 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         − 
       </mo> 
       <mfrac> 
        <mrow> 
         <msub> 
          <mtext>
            Τ 
          </mtext> 
          <mi>
            r 
          </mi> 
         </msub> 
        </mrow> 
        <mi>
          I 
        </mi> 
       </mfrac> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (9)</p>
    <p>where, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        I 
      </mi> 
     </math> represents the moment of inertia, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        μ 
      </mi> 
     </math> is the dipole moment, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        B 
      </mi> 
     </math> is the external magnetic field, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mtext>
          Τ 
        </mtext> 
        <mi>
          r 
        </mi> 
       </msub> 
      </mrow> 
     </math> is a resistive torque, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        θ 
      </mi> 
     </math> is the angle that forms the axis of action of the magnetic force produced by the Magneto-Torque, and the reference angle.</p>
    <p>The inertia matrix is defined as a symmetric matrix whose elements are formed from the moment of inertia of three perpendicular axes and three inertia products. If 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mrow> 
         <mn>
           3 
         </mn> 
         <mo>
           × 
         </mo> 
         <mn>
           3 
         </mn> 
        </mrow> 
       </msup> 
      </mrow> 
     </math> respect to an origin 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        O 
      </mi> 
     </math>, it may bring up <xref ref-type="bibr" rid="scirp.140903-10">
      [10]
     </xref> <xref ref-type="bibr" rid="scirp.140903-11">
      [11]
     </xref>,</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          [ 
        </mo> 
        <mrow> 
         <mtable> 
          <mtr> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mi>
                x 
              </mi> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mrow> 
             <mo>
               − 
             </mo> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mrow> 
               <mi>
                 x 
               </mi> 
               <mi>
                 y 
               </mi> 
              </mrow> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mrow> 
             <mo>
               − 
             </mo> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mrow> 
               <mi>
                 x 
               </mi> 
               <mi>
                 z 
               </mi> 
              </mrow> 
             </msub> 
            </mrow> 
           </mtd> 
          </mtr> 
          <mtr> 
           <mtd> 
            <mrow> 
             <mo>
               − 
             </mo> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mrow> 
               <mi>
                 x 
               </mi> 
               <mi>
                 y 
               </mi> 
              </mrow> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mi>
                y 
              </mi> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mrow> 
             <mo>
               − 
             </mo> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mrow> 
               <mi>
                 y 
               </mi> 
               <mi>
                 z 
               </mi> 
              </mrow> 
             </msub> 
            </mrow> 
           </mtd> 
          </mtr> 
          <mtr> 
           <mtd> 
            <mrow> 
             <mo>
               − 
             </mo> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mrow> 
               <mi>
                 x 
               </mi> 
               <mi>
                 z 
               </mi> 
              </mrow> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mrow> 
               <mi>
                 y 
               </mi> 
               <mi>
                 z 
               </mi> 
              </mrow> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mi>
                z 
              </mi> 
             </msub> 
            </mrow> 
           </mtd> 
          </mtr> 
         </mtable> 
        </mrow> 
        <mo>
          ] 
        </mo> 
       </mrow> 
      </mrow> 
     </math> (10)</p>
    <p>where, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mi>
          I 
        </mi> 
        <mtext>
          T 
        </mtext> 
       </msup> 
      </mrow> 
     </math>.</p>
    <p>Well, if the body’s coordinate system axes coincide with the main axes of inertia, that is, the principal frame of the satellite is chosen where the inertia matrix 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        I 
      </mi> 
     </math> is diagonal, just like it happens with most of the satellites, the matrix is reduced as <xref ref-type="bibr" rid="scirp.140903-10">
      [10]
     </xref> <xref ref-type="bibr" rid="scirp.140903-11">
      [11]
     </xref>,</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          [ 
        </mo> 
        <mrow> 
         <mtable> 
          <mtr> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mi>
                x 
              </mi> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
          </mtr> 
          <mtr> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mi>
                y 
              </mi> 
             </msub> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
          </mtr> 
          <mtr> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mrow> 
             <msub> 
              <mi>
                I 
              </mi> 
              <mi>
                z 
              </mi> 
             </msub> 
            </mrow> 
           </mtd> 
          </mtr> 
         </mtable> 
        </mrow> 
        <mo>
          ] 
        </mo> 
       </mrow> 
      </mrow> 
     </math>. (11)</p>
    <p>Therefore, the satellite’s Attitude dynamics are expressed by applying Euler’s equation:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          I 
        </mi> 
        <mi>
          x 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          x 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            I 
          </mi> 
          <mi>
            z 
          </mi> 
         </msub> 
         <mo>
           − 
         </mo> 
         <msub> 
          <mi>
            I 
          </mi> 
          <mi>
            y 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          y 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          z 
        </mi> 
       </msub> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          τ 
        </mi> 
        <mi>
          x 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (12)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          I 
        </mi> 
        <mi>
          y 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          y 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            I 
          </mi> 
          <mi>
            x 
          </mi> 
         </msub> 
         <mo>
           − 
         </mo> 
         <msub> 
          <mi>
            I 
          </mi> 
          <mi>
            z 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          x 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          z 
        </mi> 
       </msub> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          τ 
        </mi> 
        <mi>
          y 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (13)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          I 
        </mi> 
        <mi>
          z 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          z 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            I 
          </mi> 
          <mi>
            y 
          </mi> 
         </msub> 
         <mo>
           − 
         </mo> 
         <msub> 
          <mi>
            I 
          </mi> 
          <mi>
            x 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          y 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mi>
          x 
        </mi> 
       </msub> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          τ 
        </mi> 
        <mi>
          z 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (14)</p>
    <p>where, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         ω 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            ω 
          </mi> 
          <mi>
            x 
          </mi> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            ω 
          </mi> 
          <mi>
            y 
          </mi> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            ω 
          </mi> 
          <mi>
            z 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mn>
          3 
        </mn> 
       </msup> 
      </mrow> 
     </math> is the angular velocity vector of the satellite and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         τ 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            τ 
          </mi> 
          <mi>
            x 
          </mi> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            τ 
          </mi> 
          <mi>
            y 
          </mi> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            τ 
          </mi> 
          <mi>
            z 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mn>
          3 
        </mn> 
       </msup> 
      </mrow> 
     </math> is the torque vector performing on the system.</p>
   </sec>
  </sec><sec id="s3">
   <title>3. Disruptions to be Considered</title>
   <p>The CubeSats are normally designated for low Earth orbit missions, and as the orientation of the satellites of low orbit defines (Low Earth Orbiters, LEO), they are vehicles located in nearly circular orbits with altitudes between 300 km and 1500 km, which is an advantage due to the low altitude it is required a less power to reach their orbits compared to the conventional satellite. However, because of their orbit, these satellites may be affected by some perturbations due to the constant changes in atmospheric conditions. These perturbations usually affect the orientation and the orbit, which is why such disruptions must be considered in the Attitude control.</p>
   <sec id="s3_1">
    <title>3.1. Geomagnetic Field</title>
    <p>The geomagnetic field is the magnetic field extending from the Earth’s core. The Earth’s magnetic field may be approximated as a dipole inclined to 15 degrees to the axis of rotation of the Earth creates a magnetic field; its magnitude on the Earth’s surface has an average from 25 to 65 μT (microteslas) being stronger at the poles and weaker at the magnetic equator.</p>
    <p>
     <xref ref-type="table" rid="table1">
      Table 1
     </xref> shows the characteristics of the Earth’s geomagnetic field according to <xref ref-type="bibr" rid="scirp.140903-12">
      [12]
     </xref>.</p>
    <table-wrap id="table1">
     <label>
      <xref ref-type="table" rid="table1">
       Table 1
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140903-"></xref>Table 1. Characteristics of the geomagnetic field.</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td custom-top-td acenter" width="59.83%"><p style="text-align:center">Dipole field intensity</p></td> 
       <td class="custom-bottom-td custom-top-td acenter" width="40.59%"><p style="text-align:center">0.306 Gauss-Re<sup>3</sup></p></td> 
      </tr> 
      <tr> 
       <td class="custom-top-td acenter" width="59.83%"><p style="text-align:center">Displacement of 3 dipoles</p></td> 
       <td class="custom-top-td acenter" width="40.59%"><p style="text-align:center">0.076 Re</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="59.83%"><p style="text-align:center">Intensity of the Surface field (1 Re)</p></td> 
       <td class="acenter" width="40.59%"><p style="text-align:center">0.24 - 0.66 Gauss</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="59.83%"><p style="text-align:center">Magnetic poles</p></td> 
       <td class="acenter" width="40.59%"><p style="text-align:center">Model WMM2020</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="59.83%"><p style="text-align:center">Geocentric dipole</p></td> 
       <td class="acenter" width="40.59%"><p style="text-align:center">80.65 N, 72.68 O</p></td> 
      </tr> 
      <tr> 
       <td class="custom-bottom-td acenter" width="59.83%"><p style="text-align:center">Magnetic North pole</p></td> 
       <td class="custom-bottom-td acenter" width="40.59%"><p style="text-align:center">86.50 N, 164.04 E</p></td> 
      </tr> 
     </table>
    </table-wrap>
    <p>where Re, defines the radius of the Earth’s model as 6.378 km. The dipole intensity is the dipolar portion intensity of the planetarium magnetic field outside the planet. In Gauss-Re<sup>3</sup>, Re is in units of the planet’s radius. (Dividing by the distance Re<sup>3</sup> yields the field in Gauss).</p>
   </sec>
   <sec id="s3_2">
    <title>3.2. Atmospheric Conditions</title>
    <p>The Earth’s atmosphere is the gaseous layer of the Earth, being the most outermost and the least dense of the planet. This layer is composed of several gases that vary as the pressure at different altitudes. This mixture of gases that compose the atmosphere is genuinely called air. 75% of the atmospheric mass is at the first 11 km of altitude above the sea level. The main gases that compose it are Oxygen (21%) and nitrogen (78%), followed by argon, carbon dioxide, and water vapor.</p>
    <p>
     <xref ref-type="table" rid="table2">
      Table 2
     </xref> and <xref ref-type="table" rid="table3">
      Table 3
     </xref> point out the characteristics and composition of the Earth’s atmosphere according to <xref ref-type="bibr" rid="scirp.140903-12">
      [12]
     </xref>.</p>
    <table-wrap id="table2">
     <label>
      <xref ref-type="table" rid="table2">
       Table 2
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140903-"></xref>Table 2. Characteristics of the atmosphere.</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td custom-top-td acenter" width="55.31%"><p style="text-align:center">Surface pressure</p></td> 
       <td class="custom-bottom-td custom-top-td acenter" width="44.69%"><p style="text-align:center">1014 mb</p></td> 
      </tr> 
      <tr> 
       <td class="custom-top-td acenter" width="55.31%"><p style="text-align:center">Surface density</p></td> 
       <td class="custom-top-td acenter" width="44.69%"><p style="text-align:center">1.217 kg/m<sup>2</sup></p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="55.31%"><p style="text-align:center">Altitude scale</p></td> 
       <td class="acenter" width="44.69%"><p style="text-align:center">8.5 km</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="55.31%"><p style="text-align:center">Atmosphere’s total mass</p></td> 
       <td class="acenter" width="44.69%"><p style="text-align:center">5.18 ×10<sup>+</sup><sup>18</sup></p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="55.31%"><p style="text-align:center">Average of temperature</p></td> 
       <td class="acenter" width="44.69%"><p style="text-align:center">288˚ k (15˚C)</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="55.31%"><p style="text-align:center">Daily temperature rate</p></td> 
       <td class="acenter" width="44.69%"><p style="text-align:center">10˚C and 20˚C</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="55.31%"><p style="text-align:center">Wind speed</p></td> 
       <td class="acenter" width="44.69%"><p style="text-align:center">0 and 100 m/seg</p></td> 
      </tr> 
      <tr> 
       <td class="custom-bottom-td acenter" width="55.31%"><p style="text-align:center">Average molecular weight</p></td> 
       <td class="custom-bottom-td acenter" width="44.69%"><p style="text-align:center">28.97</p></td> 
      </tr> 
     </table>
    </table-wrap>
    <table-wrap id="table3">
     <label>
      <xref ref-type="table" rid="table3">
       Table 3
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140903-"></xref>Table 3. Atmospheric composition (by fresh air volume).</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td custom-top-td acenter" width="20.95%"><p style="text-align:center">Major gases</p></td> 
       <td class="custom-bottom-td custom-top-td aleft" width="79.05%"><p style="text-align:left">78.08% Nitrogen (N<sub>2</sub>), 20.9% Oxygen (O<sub>2</sub>).</p></td> 
      </tr> 
      <tr> 
       <td class="custom-bottom-td custom-top-td acenter" width="20.95%"><p style="text-align:center">Minor gases</p></td> 
       <td class="custom-bottom-td custom-top-td aleft" width="79.05%"><p style="text-align:left">Argon (Ar) 9340, Carbon dioxide (CO<sub>2</sub>) 410, Neon (Ne) 18.18, Helium (He) 5.24, Hydrogen chloride (HCV<sub>4</sub>) 1.7, Krypton (Kr) 1.14, Hydrogen (H<sub>2</sub>) 0.55.</p></td> 
      </tr> 
     </table>
    </table-wrap>
   </sec>
  </sec><sec id="s4">
   <title>4. Methodology</title>
   <p>Below are some of the requirements and specifications a CubeSat model U1 must meet to be launched according to <xref ref-type="bibr" rid="scirp.140903-13">
     [13]
    </xref> the model mentioned above was selected for the simulations performed <xref ref-type="bibr" rid="scirp.140903-14">
     [14]
    </xref>.</p>
   <sec id="s4_1">
    <title>4.1. Mechanical Requirements</title>
    <p>The CubeSats are cube-shaped satellites with the following specifications:</p>
    <p>1) The coordinate system of a CubeSat 1U must coincide with the P-POD coordinate system (Poly Picosatellite Orbital Deployer), while integrated into the P-POD. The origin of the CubeSat system coordinates is located in the geometric center of the CubeSat.</p>
    <p>2) The maximum mass of a CubeSat 1U is 1.33 kg.</p>
    <p>3) The gravity center must be located no more than 2 cm. from the geometric origin in the X, Y &amp; Z direction.</p>
   </sec>
   <sec id="s4_2">
    <title>4.2. Electrical Requirements</title>
    <p>1) The deployment switch must be operated all the time while it is integrated into the P-POD (Poly Picosatellite Orbital Deployer).</p>
    <p>2) The CubeSat must have an RBF pin (Remove Before Flight).</p>
    <p>3) The CubeSats will incorporate protection in the battery circuit to charge and discharge, thus avoiding unbalanced cell conditions.</p>
   </sec>
  </sec><sec id="s5">
   <title>5. PD Control</title>
   <p>In this section, based on the position and angular velocity error a PD control system will be implemented.</p>
   <p>Starting with the following equation</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        u 
      </mi> 
      <mo>
        = 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         p 
       </mi> 
      </msub> 
      <mi>
        θ 
      </mi> 
      <mi>
        a 
      </mi> 
      <mo>
        + 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         d 
       </mi> 
      </msub> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mrow> 
        <msub> 
         <mi>
           ω 
         </mi> 
         <mrow> 
          <mi>
            o 
          </mi> 
          <mi>
            r 
          </mi> 
          <mi>
            b 
          </mi> 
         </mrow> 
        </msub> 
        <mo>
          − 
        </mo> 
        <msub> 
         <mi>
           ω 
         </mi> 
         <mrow> 
          <mi>
            o 
          </mi> 
          <mi>
            b 
          </mi> 
         </mrow> 
        </msub> 
       </mrow> 
       <mo>
         ) 
       </mo> 
      </mrow> 
      <mo>
        , 
      </mo> 
     </mrow> 
    </math> (15)</p>
   <p>where 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
       θ 
     </mi> 
    </math> and 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
       a 
     </mi> 
    </math> are Euler angles and axes, respectively, caused by a rotation given the matrix of attitude and the Euler axes. 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         ω 
       </mi> 
       <mrow> 
        <mi>
          o 
        </mi> 
        <mi>
          r 
        </mi> 
        <mi>
          b 
        </mi> 
       </mrow> 
      </msub> 
     </mrow> 
    </math> is the orbital angular velocity with respect to the orbital system (angular velocity of the satellite). And 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         ω 
       </mi> 
       <mrow> 
        <mi>
          o 
        </mi> 
        <mi>
          b 
        </mi> 
       </mrow> 
      </msub> 
     </mrow> 
    </math> is the orbit angular velocity.</p>
   <p>The PD control obtained is described as the following equation</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        u 
      </mi> 
      <mo>
        = 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         p 
       </mi> 
      </msub> 
      <mi>
        θ 
      </mi> 
      <mi>
        a 
      </mi> 
      <mo>
        + 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         d 
       </mi> 
      </msub> 
      <msub> 
       <mi>
         ω 
       </mi> 
       <mrow> 
        <mi>
          o 
        </mi> 
        <mi>
          r 
        </mi> 
        <mi>
          b 
        </mi> 
        <mo>
          . 
        </mo> 
       </mrow> 
      </msub> 
     </mrow> 
    </math> (16)</p>
   <p>This control law is based on the Reijneveld and Choukroun algorithm, which is valid only if the satellite’s angular velocity is superior 4 times the revolutions per orbit. Otherwise, there will be absolutely no control <xref ref-type="bibr" rid="scirp.140903-12">
     [12]
    </xref>.</p>
   <p>Starting from</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        M 
      </mi> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mi>
         q 
       </mi> 
       <mo>
         ) 
       </mo> 
      </mrow> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ¨ 
       </mo> 
      </mover> 
      <mo>
        + 
      </mo> 
      <mi>
        C 
      </mi> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mrow> 
        <mi>
          q 
        </mi> 
        <mo>
          , 
        </mo> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
       </mrow> 
       <mo>
         ) 
       </mo> 
      </mrow> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˙ 
       </mo> 
      </mover> 
      <mo>
        = 
      </mo> 
      <mi>
        τ 
      </mi> 
     </mrow> 
    </math>, (17)</p>
   <p>where 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        q 
      </mi> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mi>
         n 
       </mi> 
      </msup> 
     </mrow> 
    </math> is the vector of generalized coordinates, 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        M 
      </mi> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mi>
         q 
       </mi> 
       <mo>
         ) 
       </mo> 
      </mrow> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mrow> 
        <mi>
          n 
        </mi> 
        <mo>
          × 
        </mo> 
        <mi>
          n 
        </mi> 
       </mrow> 
      </msup> 
     </mrow> 
    </math> is the inertia matrix, 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        C 
      </mi> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mrow> 
        <mi>
          q 
        </mi> 
        <mo>
          , 
        </mo> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
       </mrow> 
       <mo>
         ) 
       </mo> 
      </mrow> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˙ 
       </mo> 
      </mover> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mi>
         n 
       </mi> 
      </msup> 
     </mrow> 
    </math> is the angular velocity vector, and 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        τ 
      </mi> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mi>
         n 
       </mi> 
      </msup> 
     </mrow> 
    </math> is the torque vector acting on the system.</p>
   <p>It will use the structure of a PD defined as follows</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mi>
        τ 
      </mi> 
      <mo>
        = 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         p 
       </mi> 
      </msub> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˜ 
       </mo> 
      </mover> 
      <mo>
        − 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         v 
       </mi> 
      </msub> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˙ 
       </mo> 
      </mover> 
      <mo>
        , 
      </mo> 
     </mrow> 
    </math> (18)</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˜ 
       </mo> 
      </mover> 
      <mo>
        = 
      </mo> 
      <mi>
        q 
      </mi> 
      <mo>
        − 
      </mo> 
      <msub> 
       <mi>
         q 
       </mi> 
       <mi>
         d 
       </mi> 
      </msub> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mi>
         n 
       </mi> 
      </msup> 
     </mrow> 
    </math> is the position error, 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         q 
       </mi> 
       <mi>
         d 
       </mi> 
      </msub> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mi>
         n 
       </mi> 
      </msup> 
     </mrow> 
    </math> is the desired position, 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         p 
       </mi> 
      </msub> 
      <mo>
        , 
      </mo> 
      <msub> 
       <mi>
         K 
       </mi> 
       <mi>
         v 
       </mi> 
      </msub> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mrow> 
        <mi>
          n 
        </mi> 
        <mo>
          × 
        </mo> 
        <mi>
          n 
        </mi> 
       </mrow> 
      </msup> 
     </mrow> 
    </math> are the proportional and derivative gains.</p>
   <p>The state variables (canonical form of the controller) obtained when substituting the PD control into the dynamic model are</p>
   <p>Position error:</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         x 
       </mi> 
       <mn>
         1 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˜ 
       </mo> 
      </mover> 
      <mo>
        = 
      </mo> 
      <mi>
        q 
      </mi> 
      <mo>
        − 
      </mo> 
      <msub> 
       <mi>
         q 
       </mi> 
       <mi>
         d 
       </mi> 
      </msub> 
      <mo>
        . 
      </mo> 
     </mrow> 
    </math> (19)</p>
   <p>Note: When performing position control (with regulation), the desired position 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         q 
       </mi> 
       <mi>
         d 
       </mi> 
      </msub> 
      <mo>
        ∈ 
      </mo> 
      <msup> 
       <mi>
         ℝ 
       </mi> 
       <mi>
         n 
       </mi> 
      </msup> 
     </mrow> 
    </math> is assumed to be constant.</p>
   <p>Velocity error:</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mover accent="true"> 
        <mi>
          x 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mn>
         1 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ˙ 
       </mo> 
      </mover> 
      <mo>
        = 
      </mo> 
      <msub> 
       <mi>
         x 
       </mi> 
       <mn>
         2 
       </mn> 
      </msub> 
      <mo>
        . 
      </mo> 
     </mrow> 
    </math> (20)</p>
   <p>Acceleration error</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mover accent="true"> 
        <mi>
          x 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mn>
         2 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <mover accent="true"> 
       <mi>
         q 
       </mi> 
       <mo>
         ¨ 
       </mo> 
      </mover> 
      <mo>
        = 
      </mo> 
      <mi>
        M 
      </mi> 
      <msup> 
       <mrow> 
        <mrow> 
         <mo>
           ( 
         </mo> 
         <mi>
           q 
         </mi> 
         <mo>
           ) 
         </mo> 
        </mrow> 
       </mrow> 
       <mrow> 
        <mo>
          − 
        </mo> 
        <mn>
          1 
        </mn> 
       </mrow> 
      </msup> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <msub> 
         <mi>
           K 
         </mi> 
         <mi>
           p 
         </mi> 
        </msub> 
        <msub> 
         <mi>
           x 
         </mi> 
         <mn>
           1 
         </mn> 
        </msub> 
        <mo>
          − 
        </mo> 
        <msub> 
         <mi>
           K 
         </mi> 
         <mi>
           v 
         </mi> 
        </msub> 
        <msub> 
         <mi>
           x 
         </mi> 
         <mn>
           2 
         </mn> 
        </msub> 
        <mo>
          − 
        </mo> 
        <mi>
          C 
        </mi> 
        <mrow> 
         <mo>
           ( 
         </mo> 
         <mrow> 
          <mi>
            q 
          </mi> 
          <mo>
            , 
          </mo> 
          <mover accent="true"> 
           <mi>
             q 
           </mi> 
           <mo>
             ˙ 
           </mo> 
          </mover> 
         </mrow> 
         <mo>
           ) 
         </mo> 
        </mrow> 
        <msub> 
         <mi>
           x 
         </mi> 
         <mn>
           2 
         </mn> 
        </msub> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
     </mrow> 
    </math>. (21)</p>
   <p>Afterwards, the equation is derived as follows</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mover accent="true"> 
              <mi>
                x 
              </mi> 
              <mo>
                ˙ 
              </mo> 
             </mover> 
             <mn>
               1 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mover accent="true"> 
              <mi>
                x 
              </mi> 
              <mo>
                ˙ 
              </mo> 
             </mover> 
             <mn>
               2 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
      <mo>
        = 
      </mo> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mi>
               x 
             </mi> 
             <mn>
               2 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mrow> 
            <mi>
              M 
            </mi> 
            <msup> 
             <mrow> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mi>
                 q 
               </mi> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mrow> 
              <mo>
                − 
              </mo> 
              <mn>
                1 
              </mn> 
             </mrow> 
            </msup> 
            <mrow> 
             <mo>
               [ 
             </mo> 
             <mrow> 
              <msub> 
               <mi>
                 K 
               </mi> 
               <mi>
                 p 
               </mi> 
              </msub> 
              <msub> 
               <mi>
                 x 
               </mi> 
               <mn>
                 1 
               </mn> 
              </msub> 
              <mo>
                − 
              </mo> 
              <msub> 
               <mi>
                 K 
               </mi> 
               <mi>
                 v 
               </mi> 
              </msub> 
              <msub> 
               <mi>
                 x 
               </mi> 
               <mn>
                 2 
               </mn> 
              </msub> 
              <mo>
                − 
              </mo> 
              <mi>
                C 
              </mi> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mrow> 
                <mi>
                  q 
                </mi> 
                <mo>
                  , 
                </mo> 
                <mover accent="true"> 
                 <mi>
                   q 
                 </mi> 
                 <mo>
                   ˙ 
                 </mo> 
                </mover> 
               </mrow> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
              <msub> 
               <mi>
                 x 
               </mi> 
               <mn>
                 2 
               </mn> 
              </msub> 
             </mrow> 
             <mo>
               ] 
             </mo> 
            </mrow> 
           </mrow> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
     </mrow> 
    </math> (22)</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mover accent="true"> 
              <mi>
                x 
              </mi> 
              <mo>
                ˙ 
              </mo> 
             </mover> 
             <mn>
               1 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mover accent="true"> 
              <mi>
                x 
              </mi> 
              <mo>
                ˙ 
              </mo> 
             </mover> 
             <mn>
               2 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
      <mo>
        = 
      </mo> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
          </mtd> 
          <mtd> 
           <mi>
             I 
           </mi> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mrow> 
            <mi>
              M 
            </mi> 
            <msup> 
             <mrow> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mi>
                 q 
               </mi> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mrow> 
              <mo>
                − 
              </mo> 
              <mn>
                1 
              </mn> 
             </mrow> 
            </msup> 
            <msub> 
             <mi>
               K 
             </mi> 
             <mi>
               p 
             </mi> 
            </msub> 
           </mrow> 
          </mtd> 
          <mtd> 
           <mrow> 
            <mo>
              − 
            </mo> 
            <mi>
              M 
            </mi> 
            <msup> 
             <mrow> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mi>
                 q 
               </mi> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mrow> 
              <mo>
                − 
              </mo> 
              <mn>
                1 
              </mn> 
             </mrow> 
            </msup> 
            <mrow> 
             <mo>
               [ 
             </mo> 
             <mrow> 
              <msub> 
               <mi>
                 K 
               </mi> 
               <mi>
                 v 
               </mi> 
              </msub> 
              <mo>
                + 
              </mo> 
              <mi>
                C 
              </mi> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mrow> 
                <mi>
                  q 
                </mi> 
                <mo>
                  , 
                </mo> 
                <mover accent="true"> 
                 <mi>
                   q 
                 </mi> 
                 <mo>
                   ˙ 
                 </mo> 
                </mover> 
               </mrow> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mo>
               ] 
             </mo> 
            </mrow> 
           </mrow> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mi>
               x 
             </mi> 
             <mn>
               1 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mi>
               x 
             </mi> 
             <mn>
               2 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
      <mo>
        . 
      </mo> 
     </mrow> 
    </math></p>
   <p>Once the equation homogenous 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mover accent="true"> 
        <mi>
          x 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mn>
         1 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <msub> 
       <mi>
         x 
       </mi> 
       <mn>
         2 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <mn>
        0 
      </mn> 
     </mrow> 
    </math>, the existence, uniqueness, and location of the equilibrium point are found out such that, 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <msub> 
       <mi>
         x 
       </mi> 
       <mn>
         1 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <msub> 
       <mi>
         x 
       </mi> 
       <mn>
         2 
       </mn> 
      </msub> 
      <mo>
        = 
      </mo> 
      <mn>
        0 
      </mn> 
     </mrow> 
    </math>, implying the equilibrium point is 
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mrow> 
        <msub> 
         <mi>
           x 
         </mi> 
         <mn>
           1 
         </mn> 
        </msub> 
        <mo>
          , 
        </mo> 
        <msub> 
         <mi>
           x 
         </mi> 
         <mn>
           2 
         </mn> 
        </msub> 
       </mrow> 
       <mo>
         ) 
       </mo> 
      </mrow> 
      <mo>
        = 
      </mo> 
      <mrow> 
       <mo>
         ( 
       </mo> 
       <mrow> 
        <mn>
          0 
        </mn> 
        <mo>
          , 
        </mo> 
        <mn>
          0 
        </mn> 
       </mrow> 
       <mo>
         ) 
       </mo> 
      </mrow> 
     </mrow> 
    </math>,</p>
   <p>
    <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
      <mo>
        = 
      </mo> 
      <mrow> 
       <mo>
         [ 
       </mo> 
       <mrow> 
        <mtable> 
         <mtr> 
          <mtd> 
           <mrow> 
            <msub> 
             <mi>
               x 
             </mi> 
             <mn>
               2 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mrow> 
            <mi>
              M 
            </mi> 
            <msup> 
             <mrow> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mi>
                 q 
               </mi> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mrow> 
              <mo>
                − 
              </mo> 
              <mn>
                1 
              </mn> 
             </mrow> 
            </msup> 
            <msub> 
             <mi>
               K 
             </mi> 
             <mi>
               p 
             </mi> 
            </msub> 
            <msub> 
             <mi>
               x 
             </mi> 
             <mn>
               1 
             </mn> 
            </msub> 
            <mo>
              − 
            </mo> 
            <mi>
              M 
            </mi> 
            <msup> 
             <mrow> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mi>
                 q 
               </mi> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mrow> 
              <mo>
                − 
              </mo> 
              <mn>
                1 
              </mn> 
             </mrow> 
            </msup> 
            <mrow> 
             <mo>
               [ 
             </mo> 
             <mrow> 
              <msub> 
               <mi>
                 K 
               </mi> 
               <mi>
                 v 
               </mi> 
              </msub> 
              <mo>
                + 
              </mo> 
              <mi>
                C 
              </mi> 
              <mrow> 
               <mo>
                 ( 
               </mo> 
               <mrow> 
                <mi>
                  q 
                </mi> 
                <mo>
                  , 
                </mo> 
                <mover accent="true"> 
                 <mi>
                   q 
                 </mi> 
                 <mo>
                   ˙ 
                 </mo> 
                </mover> 
               </mrow> 
               <mo>
                 ) 
               </mo> 
              </mrow> 
             </mrow> 
             <mo>
               ] 
             </mo> 
            </mrow> 
            <msub> 
             <mi>
               x 
             </mi> 
             <mn>
               2 
             </mn> 
            </msub> 
           </mrow> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mo>
         ] 
       </mo> 
      </mrow> 
     </mrow> 
    </math> (23)</p>
   <sec id="s5_1">
    <title>Stability</title>
    <p>Stability can be tested with the Lyapunov function criterion <xref ref-type="bibr" rid="scirp.140903-15">
      [15]
     </xref>. Considering the following positive define function (Lyapunov candidate function),</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         V 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <msubsup> 
        <mi>
          x 
        </mi> 
        <mn>
          1 
        </mn> 
        <mtext>
          T 
        </mtext> 
       </msubsup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         + 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <msubsup> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
        <mtext>
          T 
        </mtext> 
       </msubsup> 
       <mi>
         M 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          q 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (24)</p>
    <p>the representation in terms of position and velocity errors is obtained by substituting the state variables in Equation (24), and the result is a positively defined function</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         V 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˜ 
          </mo> 
         </mover> 
         <mo>
           , 
         </mo> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˜ 
        </mo> 
       </mover> 
       <mo>
         + 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mi>
         M 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          q 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (25)</p>
    <p>when deriving Equation (25):</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mover accent="true"> 
        <mi>
          V 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˜ 
          </mo> 
         </mover> 
         <mo>
           , 
         </mo> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          q 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         + 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mi>
         M 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          q 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mover accent="true"> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         + 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mover accent="true"> 
        <mi>
          M 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          q 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (26)</p>
    <p>The state variable 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
      </mrow> 
     </math> in Equation (21) will give:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         M 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          q 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ¨ 
        </mo> 
       </mover> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˜ 
        </mo> 
       </mover> 
       <mo>
         − 
       </mo> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          v 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         − 
       </mo> 
       <mi>
         C 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           q 
         </mi> 
         <mo>
           , 
         </mo> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ¨ 
        </mo> 
       </mover> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (27)</p>
    <p>when substituting Equations (26), (27):</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mover accent="true"> 
        <mi>
          V 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˜ 
          </mo> 
         </mover> 
         <mo>
           , 
         </mo> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         + 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˜ 
        </mo> 
       </mover> 
       <mo>
         − 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          v 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         + 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mrow> 
        <mo>
          [ 
        </mo> 
        <mrow> 
         <mover accent="true"> 
          <mi>
            M 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mi>
            q 
          </mi> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           − 
         </mo> 
         <mn>
           2 
         </mn> 
         <mi>
           C 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mi>
             q 
           </mi> 
           <mo>
             , 
           </mo> 
           <mover accent="true"> 
            <mi>
              q 
            </mi> 
            <mo>
              ˙ 
            </mo> 
           </mover> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ] 
        </mo> 
       </mrow> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
      </mrow> 
     </math>. (28)</p>
    <p>By applying the antisymmetric matrix properties in Equation (28), we get:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mover accent="true"> 
        <mi>
          V 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˜ 
          </mo> 
         </mover> 
         <mo>
           , 
         </mo> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         + 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˜ 
        </mo> 
       </mover> 
       <mo>
         − 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          v 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math> (29)</p>
    <p>When using the state variable 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mover accent="true"> 
         <mi>
           x 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mn>
          1 
        </mn> 
       </msub> 
      </mrow> 
     </math>, Equation (19) will give:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mover accent="true"> 
         <mi>
           x 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mover accent="true"> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˜ 
         </mo> 
        </mover> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mover accent="true"> 
            <mi>
              q 
            </mi> 
            <mo>
              ˙ 
            </mo> 
           </mover> 
           <mo>
             − 
           </mo> 
           <msub> 
            <mover accent="true"> 
             <mi>
               q 
             </mi> 
             <mo>
               ˙ 
             </mo> 
            </mover> 
            <mi>
              d 
            </mi> 
           </msub> 
           <mo>
             = 
           </mo> 
           <mover accent="true"> 
            <mi>
              q 
            </mi> 
            <mo>
              ˙ 
            </mo> 
           </mover> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <msub> 
            <mover accent="true"> 
             <mi>
               q 
             </mi> 
             <mo>
               ˙ 
             </mo> 
            </mover> 
            <mi>
              d 
            </mi> 
           </msub> 
           <mo>
             − 
           </mo> 
           <mover accent="true"> 
            <mi>
              q 
            </mi> 
            <mo>
              ˙ 
            </mo> 
           </mover> 
           <mo>
             = 
           </mo> 
           <mo>
             − 
           </mo> 
           <mover accent="true"> 
            <mi>
              q 
            </mi> 
            <mo>
              ˙ 
            </mo> 
           </mover> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math> (30)</p>
    <p>And applying the properties of the transpose</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msup> 
        <mrow> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mi>
             x 
           </mi> 
           <mi>
             y 
           </mi> 
           <mi>
             z 
           </mi> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mi>
          x 
        </mi> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msup> 
        <mi>
          y 
        </mi> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msup> 
        <mi>
          z 
        </mi> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (31)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msup> 
        <mrow> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msup> 
            <mi>
              x 
            </mi> 
            <mtext>
              T 
            </mtext> 
           </msup> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <mo>
         = 
       </mo> 
       <mi>
         x 
       </mi> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (32)</p>
    <p>considering that 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
      </mrow> 
     </math> is symmetric, as, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msubsup> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
        <mtext>
          T 
        </mtext> 
       </msubsup> 
      </mrow> 
     </math> and with the described properties in Equations (31), (32), (30) can be modified as follows</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mover accent="true"> 
        <mi>
          V 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˜ 
          </mo> 
         </mover> 
         <mo>
           , 
         </mo> 
         <mover accent="true"> 
          <mi>
            q 
          </mi> 
          <mo>
            ˙ 
          </mo> 
         </mover> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          v 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math> (33)</p>
    <p>Finally, the derivative of the function of Lyapunov is less or equal to zero; this is because when the error of the position is zero, this term 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mo>
         − 
       </mo> 
       <msup> 
        <mover accent="true"> 
         <mi>
           q 
         </mi> 
         <mo>
           ˙ 
         </mo> 
        </mover> 
        <mtext>
          T 
        </mtext> 
       </msup> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          v 
        </mi> 
       </msub> 
       <mover accent="true"> 
        <mi>
          q 
        </mi> 
        <mo>
          ˙ 
        </mo> 
       </mover> 
      </mrow> 
     </math> becomes zero. In other words, it is indeed less or equal to zero. Concluding that the equilibrium point 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mi>
          x 
        </mi> 
        <mo>
          * 
        </mo> 
       </msup> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mn>
           0 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           0 
         </mn> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> located at the origin of the state space, is stable.</p>
   </sec>
  </sec><sec id="s6">
   <title>6. Simulation and Results</title>
   <p>The Propat functions can be grouped into transformations of coordinates, time and ephemerides, transformations and propagation of Attitude, and environmental property conversions and orbit propagation. The sensors used for the Propat are magnetometers of 3 axes and coarse solar sensors along 3 orthogonal magnetic torsion coils set for Attitude control <xref ref-type="bibr" rid="scirp.140903-16">
     [16]
    </xref>. The main coordinated systems used by the Propat are the geocentric inertial system, the geocentric terrestrial system, and the orbital system. The satellites use sensors to define their location in space and their orientation. These sensors work based on the properties of the outer space environment, such as the Earth, Sun, Moon, stars, and the geomagnetic field, among others directions.</p>
   <p>This is why it is important to always simulate these sensors, the Propat library currently includes 3 models: the Sun’s position in the geocentric inertial system, the Earth’s orientation at a given time, and the Earth’s magnetic field. Additionally, there is a function to demonstrate if the satellite is in the Earth’s shadow.</p>
   <sec id="s6_1">
    <title>
     <xref ref-type="bibr" rid="scirp.140903-"></xref>6.1. Variables for Simulation</title>
    <p>For this case, the face X of the satellite is oriented in order to calculate the Attitude matrix between the satellite’s frame and the orbital system based on the Attitude vectors function of the Sun and the geomagnetic field measured by the sensors. In addition, a specific orbit over the State of Puebla was chosen.</p>
    <p>Three sets of orthogonal magnetic torsion coils are used for the Attitude control, and for this case, it is used a NCTR-M002 Magneto-Torquer (see <xref ref-type="table" rid="table4">
      Table 4
     </xref>) whose characteristics make it particularly useful to be implemented for the CubeSat due to its low use of energy and its lightweight. <xref ref-type="table" rid="table5">
      Table 5
     </xref> shows the simulation parameters used.</p>
    <p>It was selected as a 1U CubeSat model as shown in <xref ref-type="fig" rid="fig2">
      Figure 2
     </xref>.</p>
    <table-wrap id="table4">
     <label>
      <xref ref-type="table" rid="table4">
       Table 4
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140903-"></xref>Table 4. NCTR-M002 magneto-torquer rod.</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td custom-top-td acenter" width="51.57%"><p style="text-align:center">Magnetic moment</p></td> 
       <td class="custom-bottom-td custom-top-td acenter" width="48.43%"><p style="text-align:center">&gt;0.24 m<sup>2</sup></p></td> 
      </tr> 
      <tr> 
       <td class="custom-top-td acenter" width="51.57%"><p style="text-align:center">Functionality Range</p></td> 
       <td class="custom-top-td acenter" width="48.43%"><p style="text-align:center">−35˚C and 75˚C</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="51.57%"><p style="text-align:center">Power supply voltage</p></td> 
       <td class="acenter" width="48.43%"><p style="text-align:center">5 V</p></td> 
      </tr> 
      <tr> 
       <td class="custom-bottom-td acenter" width="51.57%"><p style="text-align:center">Mass</p></td> 
       <td class="custom-bottom-td acenter" width="48.43%"><p style="text-align:center">&lt;30 grs</p></td> 
      </tr> 
     </table>
    </table-wrap>
    <table-wrap id="table5">
     <label>
      <xref ref-type="table" rid="table5">
       Table 5
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140903-"></xref>Table 5. Simulation parameters.</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td custom-top-td acenter" width="54.72%"><p style="text-align:center">Initial Euler angles</p></td> 
       <td class="custom-bottom-td custom-top-td acenter" width="45.28%"><p style="text-align:center">[30 50 10]</p></td> 
      </tr> 
      <tr> 
       <td class="custom-top-td acenter" width="54.72%"><p style="text-align:center">Initial angular velocity</p></td> 
       <td class="custom-top-td acenter" width="45.28%"><p style="text-align:center">[0.1 0 0.5] rad/seg</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="54.72%"><p style="text-align:center">Orbit</p></td> 
       <td class="acenter" width="45.28%"><p style="text-align:center">Polar (90˚)</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="54.72%"><p style="text-align:center">Eccentricity</p></td> 
       <td class="acenter" width="45.28%"><p style="text-align:center">0.0002</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="54.72%"><p style="text-align:center">Altitude</p></td> 
       <td class="acenter" width="45.28%"><p style="text-align:center">300 km</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="54.72%"><p style="text-align:center">Argument of perigee</p></td> 
       <td class="acenter" width="45.28%"><p style="text-align:center">111.196˚</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="54.72%"><p style="text-align:center">Average anomaly</p></td> 
       <td class="acenter" width="45.28%"><p style="text-align:center">248.196˚</p></td> 
      </tr> 
      <tr> 
       <td class="custom-bottom-td acenter" width="54.72%"><p style="text-align:center">Ascending node longitude</p></td> 
       <td class="custom-bottom-td acenter" width="45.28%"><p style="text-align:center">6.524 hrs</p></td> 
      </tr> 
     </table>
    </table-wrap>
    <fig id="fig2" position="float">
     <label>Figure 2</label>
     <caption>
      <title>Figure 2. Model of the 1U CubeSat selected.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2850325-rId192.jpeg?20250409095742" />
    </fig>
    <p>With a mass equal to M = 1.2 kg and with an inertia matrix</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         I 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          [ 
        </mo> 
        <mrow> 
         <mtable> 
          <mtr> 
           <mtd> 
            <mrow> 
             <mn>
               2.166 
             </mn> 
             <mtext>
               e 
             </mtext> 
             <mo>
               − 
             </mo> 
             <mn>
               3 
             </mn> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
          </mtr> 
          <mtr> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mrow> 
             <mn>
               2.166 
             </mn> 
             <mtext>
               e 
             </mtext> 
             <mo>
               − 
             </mo> 
             <mn>
               3 
             </mn> 
            </mrow> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
          </mtr> 
          <mtr> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mn>
              0 
            </mn> 
           </mtd> 
           <mtd> 
            <mrow> 
             <mn>
               2.166 
             </mn> 
             <mtext>
               e 
             </mtext> 
             <mn>
               .3 
             </mn> 
            </mrow> 
           </mtd> 
          </mtr> 
         </mtable> 
        </mrow> 
        <mo>
          ] 
        </mo> 
       </mrow> 
      </mrow> 
     </math> (34)</p>
   </sec>
   <sec id="s6_2">
    <title>6.2. Elements for the Simulation</title>
    <p>The next Keplerian elements were taken into consideration for the simulation, such as the Earth’s radius, orbit, eccentricity, and the orbit’s inclination. For this case, a polar orbit was selected, and the rest of the elements, such as the perigee argument, average anomaly, and ascending node longitude, were selected.</p>
    <p>The variation of the Keplerian elements is calculated according to the Earth’s shape. An initial Attitude (initial position) for the CubeSat in radians is proposed, and an angular velocity is given in radians per second.</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         e 
       </mi> 
       <mi>
         u 
       </mi> 
       <mi>
         l 
       </mi> 
       <mi>
         x 
       </mi> 
       <mi>
         y 
       </mi> 
       <mi>
         z 
       </mi> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mrow> 
         <mrow> 
          <mo>
            [ 
          </mo> 
          <mrow> 
           <mn>
             30 
           </mn> 
           <mo>
             , 
           </mo> 
           <mn>
             50 
           </mn> 
           <mo>
             , 
           </mo> 
           <mn>
             10 
           </mn> 
          </mrow> 
          <mo>
            ] 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ′ 
        </mo> 
       </msup> 
       <mfrac> 
        <mi>
          π 
        </mi> 
        <mrow> 
         <mn>
           180 
         </mn> 
        </mrow> 
       </mfrac> 
       <mo>
         ; 
       </mo> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          w 
        </mi> 
        <mrow> 
         <mi>
           a 
         </mi> 
         <mi>
           n 
         </mi> 
         <mi>
           g 
         </mi> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msup> 
        <mrow> 
         <mrow> 
          <mo>
            [ 
          </mo> 
          <mrow> 
           <mn>
             0.1 
           </mn> 
           <mo>
             , 
           </mo> 
           <mn>
             0 
           </mn> 
           <mo>
             , 
           </mo> 
           <mn>
             0.5 
           </mn> 
          </mrow> 
          <mo>
            ] 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ′ 
        </mo> 
       </msup> 
       <mo>
         ; 
       </mo> 
      </mrow> 
     </math></p>
    <p>The inertia matrix is symmetric as it is with most of the satellites, the coordinate system axes coincide with the principal inertia axes. The matrix values must be given in Kg.</p>
    <p>Three magnetic torsion coils are used for the Attitude control, one for each axis, with a magnetic moment of 0.2 Am<sup>2</sup>.</p>
    <p>The satellites usually use sensors to find out their location and orientation in orbit (Attitude). These sensors work based on the direction of the Earth, Sun, Moon, stars, the geomagnetic field, and among others. This is why it is important to keep the sensors mentioned during the simulation in mind. Propat offers distinct models that allow simulating the Sun’s position in the geocentric inertial system, the Earth’s orientation in a specific moment (Greenwich Sidereal Time), and the Earth’s magnetic field. The simulation code shows exactly the model used to test the sensors at a specific time.</p>
    <p>The time propagation of the simulation is given in seconds. The time, angles, angular velocity, and the orbit vector start initializing. The control torque and the current of the magneto torques start initializing.</p>
    <p>As a numeric integration is estimated, the precision is defined. With this, it is now possible to calculate the Orbit and Attitude propagation. Also, the propagation of the orbit and conversion of the Keplerian elements to a vector of state.</p>
    <p>In this case, perturbations will not be considered. Therefore, the Attitude vector will be defined and initialized.</p>
   </sec>
   <sec id="s6_3">
    <title>6.3. X Face of the Satellite Oriented towards the Earth</title>
    <p>It is necessary to have knowledge of the direction and the intensity of the geomagnetic field to orient a Satellite’s face towards the Earth.</p>
    <p>It is also recommended that the ODE45 numerical integrator be used for the propagation of the Attitude.</p>
    <p>Additionally, it is necessary to know not only the position vector but also the Sun’s position vector in the Satellite’s frame.</p>
    <p>The Gaussian was added to the Sun’s position vector and to the geomagnetic field since the data of the sensors is corrupted by the line noise before being processed, thus limiting the transmission distance.</p>
    <p>The axes are adjusted so that the X axis aims at the Earth, the Y axis is orthogonal to the X axis in the orbital plane, and the Z axis is normal to the orbital plane.</p>
    <p>Considering two reference systems, one belonging to the Earth and the other belonging to the satellite, the Attitude matrix is calculated for two pairs of vectors known in two different reference systems. If the two coordinate systems are the same, the matrix gets its identity back, as shown in <xref ref-type="fig" rid="fig3">
      Figure 3
     </xref>. At last, the orbital angular velocity is calculated. As was mentioned previously, the control is valid only if the satellite’s angular velocity is a minimum of four times the revolutions per orbit.</p>
    <fig id="fig3" position="float">
     <label>Figure 3</label>
     <caption>
      <title>Figure 3. Coordinate system.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2850325-rId199.jpeg?20250409095743" />
    </fig>
   </sec>
   <sec id="s6_4">
    <title>6.4. The Control Code in Use during the Simulation</title>
    <p>The current supplied to the Magneto-Torquer is calculated considering the number of spins and the maximum current they can hold.</p>
    <p>Current in the coils</p>
    <p>EB = teta’.*earth_field;</p>
    <p>K = 1e5;</p>
    <p>MI = −k*(cross(EB, (w_ang-wo_b)));</p>
    <p>N = I max;</p>
    <p>xyzC = MI/(710*0.04);</p>
    <p>xcurrent = xyzC(1);</p>
    <p>ycurrent = xyzC(2);</p>
    <p>zcurrent = xyzC(3);</p>
    <p>Finally, the data is saved for plotting.</p>
    <p>time = cat(2, time, t);</p>
    <p>omeg = cat(2, omeg, w_ang);</p>
    <p>euler = cat(2, euler, teta*180/pi);</p>
    <p>corx = cat(2, corx, xcurrent);</p>
    <p>cory = cat(2, cory, ycurrent);</p>
    <p>corz = cat(2, corz, zcurrent).</p>
    <p>According to the next expression of the control PD, we can say:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         u 
       </mi> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mi>
         θ 
       </mi> 
       <mi>
         a 
       </mi> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          d 
        </mi> 
       </msub> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            ω 
          </mi> 
          <mrow> 
           <mi>
             o 
           </mi> 
           <mi>
             r 
           </mi> 
           <mi>
             b 
           </mi> 
          </mrow> 
         </msub> 
         <mo>
           − 
         </mo> 
         <msub> 
          <mi>
            ω 
          </mi> 
          <mrow> 
           <mi>
             o 
           </mi> 
           <mi>
             b 
           </mi> 
          </mrow> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         , 
       </mo> 
      </mrow> 
     </math> (35)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        θ 
      </mi> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        a 
      </mi> 
     </math> are Euler’s angle and axis, while 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mrow> 
         <mi>
           o 
         </mi> 
         <mi>
           r 
         </mi> 
         <mi>
           b 
         </mi> 
        </mrow> 
       </msub> 
      </mrow> 
     </math> is the orbital angular velocity with respect to the orbital system and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          ω 
        </mi> 
        <mrow> 
         <mi>
           o 
         </mi> 
         <mi>
           b 
         </mi> 
        </mrow> 
       </msub> 
      </mrow> 
     </math> is the orbital angular velocity. Meanwhile, the selection of the gain 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <mn>
         0.00025 
       </mn> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          d 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <mn>
         0.002 
       </mn> 
      </mrow> 
     </math> was done based on the criteria of 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
       <mo>
         &lt; 
       </mo> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          d 
        </mi> 
       </msub> 
      </mrow> 
     </math> since this is the way to prioritize the equilibrium point, however, if the value of the gains is reversed, the system reduces its angular velocity, making the system reach its equilibrium point in a longer period <xref ref-type="bibr" rid="scirp.140903-16">
      [16]
     </xref>.</p>
    <p>% Vangular-Vorbital</p>
    <p>cont_torq = −0.00025*teta − 0.002*(w_ang-wo_b)</p>
    <p>Considering the gains of 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          p 
        </mi> 
       </msub> 
      </mrow> 
     </math> &amp; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          K 
        </mi> 
        <mi>
          d 
        </mi> 
       </msub> 
      </mrow> 
     </math> and the characteristics of the satellite the following results are obtained, which represent the orientation measured in Euler angles, the angular velocity measured in rad/s, and finally, the variation of the current supplied to the Magneto-Torquer.</p>
    <p>As <xref ref-type="fig" rid="fig4">
      Figure 4
     </xref> shows, it can be observed that the satellite reached the desired position even after the position error was zero due to the line noise.</p>
    <fig id="fig4" position="float">
     <label>Figure 4</label>
     <caption>
      <title>Figure 4. Position error.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2850325-rId219.jpeg?20250409095743" />
    </fig>
    <p>In <xref ref-type="fig" rid="fig5">
      Figure 5
     </xref>, it can be clearly observed that when the satellite reaches the desired position, the angular velocity is equal to zero.</p>
    <fig id="fig5" position="float">
     <label>Figure 5</label>
     <caption>
      <title>Figure 5. Angular velocity.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2850325-rId220.jpeg?20250409095743" />
    </fig>
    <p>As it is shown in <xref ref-type="fig" rid="fig6">
      Figure 6
     </xref>, the current supplied does not exceed 0.03 A because the maximum current the Magneto-Torquer can handle is 0.04 A.</p>
    <fig id="fig6" position="float">
     <label>Figure 6</label>
     <caption>
      <title>Figure 6. Current supplied to the Magneto-Torque.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2850325-rId221.jpeg?20250409095743" />
    </fig>
   </sec>
  </sec><sec id="s7">
   <title>7. Conclusions</title>
   <p>The simulation carried out for the Attitude control of a CubeSat, using the control PD, provides significant information for the already mentioned mini-satellites development and the implementation of the control system. As we know, the development of this technology is based on high budgets, which, unfortunately, we may not be able to afford due to different circumstances. The simulation is a tool that does not require a high budget to obtain the study and analysis results.</p>
   <p>The results that were obtained show us precisely the data gathered considering the conditions of the outer space the CubeSat was exposed to, the variables that must be kept in mind, and its consideration for the development and implementation, which could be sent to the outer space.</p>
   <p>For the development of this knowledge applied to Satellite Technology, it is important to consider the national context, whether we are slightly or not supported, and notice the difference that exists in many countries for these applications and their importance for their development in every country. Another reason to consider the importance of the work is to recognize how many future projects will continue to keep this line of investigation in demand.</p>
  </sec>
 </body><back>
  <ref-list>
   <title>References</title>
   <ref id="scirp.140903-ref1">
    <label>1</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Lechuga, V.M. (2017) Implementación del Control de Actitud de un CubeSat mediante Ruedas de Reacción. &gt;https://www.researchgate.net/publication/359045661_Implementacion_del_Control_de_Actitud_de_un_CubeSat_mediante_Ruedas_de_R[eaccion 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref2">
    <label>2</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Lechuga, V.M. (2023) Diseño de un Arreglo Reconfigurable de Ruedas de Reacción basado en la Banda de Möbius para el Control de Actitud de Satélites CubeSat. &gt;https://www.researchgate.net/publication/370952991_Diseno_de_un_Arreglo_Reconfigurable_de_Ruedas_de_Reaccion_basado_en_la_Banda_de_Mobius_para_el_Control_de_Actitud_de_Satelites_CubeSat
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref3">
    <label>3</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Prado-Morales, J., Navarrete-Montesinos, M., Molina, J.P. and Hernández-Arias, H. (2019) Diseño e implementación de actuadores del subsistema de determinación y control de orientación de un satélite CubeSat 3U. &gt;https://www.researchgate.net/publication/372855243_Diseno_e_implementacion_de_actuadores_del_subsistema_de_determinacion_y_control_de_orientacion_de_un_satelite_CubeSat_3U 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref4">
    <label>4</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Shan, S. and Westfall, A. (2019) Attitude Control System Design for CubeSats Configured with Exo-Brake Para Chute. &gt;https://ntrs.nasa.gov/api/citations/20190001361/downloads/20190001361.pdf 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref5">
    <label>5</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Hermosa, D.A. (1999) Principios de Electricidad y Electrónica II. Marcombo, 50-62.&gt;https://www.academia.edu/41549740/Principios_de_Electricidad_y_Electronica_I_Antonio_Hermosa_Donate 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref6">
    <label>6</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Landau, L.D. and Lifshitz, E.M. (1970) Física teórica. Mecánica. Reverte, 15-28. &gt;https://www.reverte.com/libro/fisica-teorica-mecanica-vol-i_91625/ 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref7">
    <label>7</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Marion, J.B. (2014) Dinámica clásica de las partículas y sistemas. Reverte, 409-455. &gt;https://books.google.co.ve/books?id=MpblAXz_StkC&amp;printsec=frontcover#v=onepage&amp;q&amp;f=false 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref8">
    <label>8</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Tipler, P.A. and Mosca, G. (2012) Física para la ciencia y la tecnología. Volumen 1A Mecánica. Reverte, 331-354. &gt;https://www.academia.edu/45147942/F%C3%ADsica_Tipler_6a_Ed_Vol_1 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref9">
    <label>9</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Tipler, P.A. and Mosca, G. (2004) Física para la ciencia y la tecnología. Volumen 2 de Electricidad y magnetismo/Luz. Reverte, 887-903.&gt;https://archive.org/details/fisica-para-la-ciencia-y-la-tecnologia-by-paul-a.-tipler-gene-mosca-vol-2-electr 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref10">
    <label>10</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Sidi, M.J. (1997) Spacecraft Dynamics and Control: A Practical Engineering Approach. Cambridge University Press, 22-92. &gt;https://www.google.com/search?q=Sidi%2C+M.+J.+(1997).+Spacecraft+Dynamics+and+Control%3A+A+Practical+Engineering+Approach.&amp;oq=Sidi%2C+M.+J.+(1997).+Spacecraft+Dynamics+and+Control%3A+A+Practical+Engineering+Approach.+&amp;gs_lcrp=EgZjaHJvbWUyBggAEEUYOdIBCTI2ODZqMGoxNagCCLACAQ&amp;sourceid=chrome&amp;ie=UTF-8 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref11">
    <label>11</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Desouky, M.A.A., Prabhu, K. and Abdelkhalik, O. (2018) On Spacecraft Magnetic Attitude Control. 2018 Space Flight Mechanics Meeting, Kissimmee, 8-12 January 2018, 4-6. &gt;https://arc.aiaa.org/doi/10.2514/6.2018-0205 &gt;https://doi.org/10.2514/6.2018-0205 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref12">
    <label>12</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Williams, D.R. (2020) Earth Fact Sheet. 15/03/2021, de NASA Goddard Space Flight Center. &gt;https://nssdc.gsfc.nasa.gov/planetary/factsheet/earthfact.html
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref13">
    <label>13</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     NewSpace (2016) Varilla Magnetorquer NCTR-M002. 12/01/2021, de CubeSatShop, 7-44. &gt;https://www.cubesatshop.com/product/nctr-m002-magnetorquer-rod/ 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref14">
    <label>14</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Munakata, R., Carnahan, J. and Pignatelli, D. (2014) CubeSat Design Specification. California Polytechnic State University, 9-15. &gt;https://static1.squarespace.com/static/5418c831e4b0fa4ecac1bacd/t/62193b7fc9e72e0053f00910/1645820809779/CDS+REV14_1+2022-02-09.pdf 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref15">
    <label>15</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Ogata, K. (2010) Ingeniería de control moderna. Pearson Education. &gt;https://www.academia.edu/9814191/Ingenieria_de_Control_Moderna_Ogata_5ed 
    </mixed-citation>
   </ref>
   <ref id="scirp.140903-ref16">
    <label>16</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Carrara, V. (2015) An Open Source Satellite Attitude and Orbit Simulator Toolbox for Matlab. Proceedings of the XVII International Symposium on Dynamic Problems of Mechanics, Natal, 22-27 February 2015, 2-8.&gt;https://www.researchgate.net/publication/274065310_An_Open_Source_Satellite_Attitude_and_Orbit_Simulator_Toolbox_for_Matlab
    </mixed-citation>
   </ref>
  </ref-list>
 </back>
</article>