Development of Sensorial Subsystem Hardware for Mechatronic Systems

The paper deals with hardware design of sensorial subsystem for strapdown inertial navigation for mechatronic system that is characterized by a long-term stability and it generates data in real time about accelerations, angular rates and position during the mechatronic system operation. This sensorial system can be used in many applications such as automotive systems or aircraft navigation. In our paper we used small model helicopter for testing sensorial subsystem in demanding conditions. The sensorial system is based on powerful 32-bit processors with the cores ARM7 and Cortex-M3. The main unit for data processing presents an embedded computer built on a mini-ITX motherboard with the processor Intel i3. The helicopter presents a system with six degrees of freedom. In the fact, during the flight, there is not any fixed point that would enable to caliber the sensors placed on the helicopter board, so for processing sensor data complex stochastic calculations are necessary. They are based on a discrete Kalman filter that presents a main computing tool of the control system. DOI: http://dx.doi.org/10.5755/j01.eee.20.2.6377


I. INTRODUCTION
Navigation presents a very old art which has become a complex science.It is essentially about finding the right way of a body moving from one place to another.There exist many possibilities to achieve this objective.
The operation of an inertial navigation system depends upon laws of classical mechanics as were formulated by Sir Isaac Newton.For example, if given the ability to measure acceleration, it would be possible to calculate the change in velocity and position by performing successive mathematical integration of the acceleration with respect to time.In many sensorial systems the inertial sensors are mounted on a stable platform and are mechanically isolated from the rotational motion of the vehicle.Modern sensorial systems have removed most of the mechanical complexity of platform systems by attaching the sensors rigidly, or "strapped down" to the body of the vehicle.The potential benefits of this approach are lower cost, reduced size and greater reliability.The major disadvantage consists in increase of computing complexity.At present, the tasks of strapdown inertial navigation [1] are used in modern robotic systems.
Current development of considerably cheap MEMS sensors [2] and powerful processors enable to implement techniques of inertial navigation [3,4] into a light-weight and powerful equipment.One of new promising way is based on utilization of small commercial mini-ITX boards with the Intel processors that allow to install an arbitrary operational system and to utilize its advantages for data processing.
In the contribution we describe development of a sensorial system hardware placed on board of a real helicopter model (Fig. 1) enabling to process and evaluate flight data.Based on input vector components and sensed output vector components it is possible to derive a fuzzy model of the system.Computing of the state vector, based on data collected from various sensors, is performed in realtime.This solution was chosen due to a possible implementation of the sensorial system into a real-time control system what we are going to perform in the next step of our research.The debugged program is based on the Linux operational system, utilization of the GNU Scientific Library [5], and subsystems utilizing powerful 32-bit processors with the cores ARM7 and Cortex-M3 [6].

II. EQUATIONS FOR STRAPDOWN INERTIAL NAVIGATION OF
THE BODY IN SPACE WITH 6 DEGREES OF FREEDOM As it is mentioned above, the inertial navigation is based on Newton differential equations that can be expresses in the form (1)-( 4) [1]: Development of Sensorial Subsystem Hardware for Mechatronic Systems J. Bacik 1 , P. Fedor 1 , V. Fedak where TBE -matrix of transformation from the earth frame to the body frame, Pe -position vector in regard to earth frame, Vb -vector of linear velocities regarding to the body frame (u, v, w), ωb -vector of angular speeds regarding to the body frame (p, q, r), αe -vector of body orientation regarding to the earth frame, consisting of Euler's angles (Φ, Θ, ψ), E -transformation matrix of angular speeds, Mbdiagonal matrix of dimension 3x3, which elements are created by total mass of the body, In -matrix 3x3 representing distribution of the mass along particular axes: its elements consist of moments of inertia related to particular axes, Fcg -vector of resultant forces reduced to the centre of gravity of the body, Mcg -vector of resultant torques reduced to the centre of gravity of the body.These equations are valid for any arbitrary body having six degrees of freedom in the space.The vector α presents the body orientation in respect to the reference coordinate system that is identical with the Earth coordinate system.Resultant forces Fcg and resultant torques Mcg present external forces/torques created by the forces and torques generated by actuator of mechatronic system, in our case by the main rotor and tail rotor of the helicopter.The most important vector for navigation is the vector Pe presenting the position of the body in the environment.

III. HARDWARE DESIGN
The main computing unit consists of a small embedded computer based on a motherboard mini-ITX with the processor Intel i3.Advantage of the motherboard consists in integrating a supply unit with the board (for supplying the motherboard it is enough to connect a stabilized voltage 19 V with the tolerance of ±10 %).The supply source consists of five Li-Pol accumulators.The control computer communicates with other subsystems through USB interfaces that are converted into the RS422 bus.To eliminate vibrations during flight, the motherboard is fixed by small shock absorber blocks (Fig. 2). Figure 3 shows the block interconnection of particular subsystems and control computer.Four printed boards with electronics that fulfill individual tasks are connected to the motherboard.
The main board presents a communication, supply, and control node.Embedded linear stabilizers ensure supply of servomotors for cyclic control of the helicopter; further they ensure supply of components of the board itself and they also supply other parts of the sensorial system.To the board there are connected USB busses from the control computer that are converted into the signals of the RS422 form.RS422 is then connected to the connectors of the type RJ-11.Communication with the operator is ensured by small high-frequency transceivers NRF905 embedded on small printed circuit boards that are connected to the main board by connectors (Fig. 4).The processor accepts control signals from the operator and then it generates the control signals for the servomotors of cyclical control.Among important subsystems for model identification based on experimental data there are two boards: a board of artificial horizon and a board of altimeter.The main sensor at the altimeter horizon board is the sensor ADIS16405, that presents a complete inertial systems including triaxal magnetometer, triaxial accelerometer, and triaxal gyroscope with digital data output.The board is also embedded by sextuplet of triaxial magnetometers of the MAG3110 type (their arrangement is shown in Fig. 5) that serve to real-time computation of calibration data for the magnetometer installed in the sensor ADIS16405.The calibration data are computed by fitting ellipsis of the magnetic field vector trajectory.Due to presence of ferromagnetic materials in close surrounding of the sensors an ideal circular vector trajectory is deformed to an elliptical one (it is so called "hard and soft iron effect").A GPS receiver presents the last sensor installed on the artificial horizon board.The altimeter board includes ultrasound sensors which enable to estimate helicopter model speed in the z-axis.These sensors are fixed on a twoaxis gimbal ensuring a continuous routing of sound waves vertically to the earth.A small pressure sensor serves for flight level determination and filtering out of terrain ruggedness.
Data from gyroscope serve as information about angular rates of the helicopter.Its orientation towards the earth is based on Euler angles as follows [1] = + ( ) + . ( The data are disturbed by a noise and time-variable bias that bring an error in correct computation of required variables.This is a reason why for the proper data processing the higher harmonics components are filtered by a low-frequency filter.For estimation of Euler angles, equations ( 6) and (7) were established: Here the measured output vector y for the x-and y-axes presents the angles calculated from the accelerometer data using vector filtration: As a measured output y for the z-axis there serves the angle calculated from magnetometer data ). (10) The linear speeds u, v, w are estimated by triaxial accelerometer output signals.From the accelerometer equation [1] .= + + + + ( ) + ,(11) it follows that the accelerometer output except of the bias, scale factor, and own noise, is also influenced by a gravitation force component g.Due to this reason it is necessary to filter out this component of acceleration.
The filtering runs in two steps: In the first step the data from accelerometer are recounted from the body frame to the earth frame using the rotation matrix that contains Euler angles estimated by the discrete Kalman filter.From the data there is subsequently subtracted the gravity acceleration vector having the components [0, 0, g] which magnitude is well known: In the second step of the procedure the vector of linear acceleration vector is transformed into the body frame for reason of expressing the gravity acceleration vector in the body frame that we want to filter: Acquirement of the speed vector components runs on basis of estimation of these values by a similar discrete Kalman filter like that one used for estimation of the Euler angles: Here, as the measured output y there serves: in the x-and y axis the speed derived by the GPS receiver and in the z axis the speed derived using ultrasound in combination with the pressure sensor.

IV. EXPERIMENTAL RESULTS
To verify correctness of the hardware and the debugged program with discrete Kalman filter the helicopter model was tested in the following maneuver: as the input signal we have chosen a ramp function with the increasing collective pitch angle of the main rotor blades θo while other control variables were kept at the zero level.All input variables are expressed as ratio of variation of joystick`s control stick position within range ±100 %.During the test there was blowing a moderate wind with speed below 1 m/s.
Figure 6 shows time responses of the system, namely the control variables: In time t = < 0 s; 30 s) the helicopter was landed on the earth and overshoots in the time courses of the lateral cyclic pitch were caused by testing of connection establishment between the helicopter and the operator.The test of response to the ramp signal θo was running within the time interval t = <30 s; 38 s>.During this interval the main collective pitch angle θo presented the only control variable.In the time t > 38 s the operator made a manual intervention there, the helicopter was stabilized, and afterwards it landed.
Figure 7 shows time responses of the helicopter state vector x (including linear speeds, angular rates and Euler angles) that corresponds to the system reaction to inputs described above.The components of angular velocities p, q, r show oscillation of the system that is caused mainly by vibration of the helicopter motor.From time responses of linear speeds u, v, w and Euler angles Φ, θ, ψ it follows that the helicopter has a tendency to lift up its nose and to move backward what is a typical phenomena of the helicopter behaviour and it also try to move in direction to the right what is caused by thrust force of tail rotor.

V. CONCLUSIONS
The paper deals with development of hardware for a sensorial system of a small helicopter real model in order to get data from sensors of various types.After signal data acquisition and processing there follows real-time calculation of the helicopter state vector components.Designed hardware is able to process large dataflow at sampling frequency 819,2 Hz in real time.A discrete Kalman filter was used for signal processing.
The data processing in real-time is important for control helicopter as a system.Without valid data of the helicopter state vector it is not possible to control it.
The future research will concentrate to development of a complete unmanned aerial vehicle based on developed hardware design.

Fig. 2 .
Fig. 2. Fixing the motherboard to the helicopter frame by shock absorbers.

Fig. 3 .
Fig. 3. Interconnection of subsystems in the control system.

Fig. 5 .
Fig. 5. Placement of sextuplet of calibration magnetometers on the board.
Time responses of the helicopter state vector.