854
Figure 1. CNC-machined styrofoam hull base
For minimizing interaction electronic parts with
water they are was placed over the top in separated
covered box mounted with PVC pipes glued to the
USV hull. Placing antennas as high as possible also
gives advantages for reliable connection with ground
station and easy access to electronic, also it worth
because of magnetometer is far enough from engine
containing strong magnets. Final results of the hull is
shown in Figure 2.
We have selected electrical propulsion system
because modern brushless and brushed motors has
enough power and they are has small size suitable for
using in USVs. Electrical propulsion system allows
fast changing battery and it does not pollute water by
any hazardous materials or exhaust gases. Our USV
uses 3S (12 Volts) battery, 4074 sized brushless motor
with 2000kV, total power over 1 kW. Motor is driven
by electric speed controlled (ESC). Because of ESC is
dissipates a lot of heat it is require cooling, cooling is
produced by water injected by water jet.
Figure 2. Unmanned surface vehicle
For steering and movement of USV we used water
jet. Water jet has advantages in safety and
maneuverability. Safety reason is very important if
USV works near the beaches with swimming people.
Because of water jet rotor located inside tube, so there
are almost impossible to injure someone by rotating
blades. Open propellers are more dangerous, also
there are big chances that floating garbage, seaweed
or fish lines could wound up on the shaft and
propeller blades. Even if water jet has no safety lattice
there are always problem of floating garbage and
seaweed (Figure 3).
Figure 3. Seaweed in water jet
For steering of USV was used rotating nozzle.
Nozzle has rotating angle near 30 degrees left and
right. This allows to get very good maneuverability.
3 AUTOPILOT
The main purpose of autopilot is to control USV by
rotating nozzle to steer it at given route point. This
requires sensors (gyro, accelerometer and
magnetometer) integration with microcontroller
(MCU). We selected Atmega2560 on ArduinoMega
board [1]. This MCU has enough interfaces for
connecting with sensors and does not require high
programming skill. For autonomous movement of
USV main measurements is current heading and
current location. Heading is measures by MEMS
magnetometer connected to MCU by I2C interface.
Magnetometer require calibration to minimize hard
and soft iron distortion. For measurement location of
USV uses GPS module U-Blox connected to MCU by
UART interface. For controlling nozzle and motor
ESC uses PWM signal generated by internal
hardware timer [2].
The paper is overviews control system algorithm
for heading hold of USV. Algorithm calculates turn
angle for rudder rotation for steering the USV. This
allow to steer USV in path-following mode to
checkpoints stored in autopilot memory.
For correct work of USV`s control system we have
to consider where USV have to be turn - left or right
when it moves on targeted path line. Thus, a
formalized description of the algorithm is needed,
according to which the calculated angle of rotation
will allow the USV to rotate along the smallest arc to
the azimuth required at the moment.
There are also external factors that influence the
movement of USV. For example, it can be a current or
wind that displaces the USV from the path line.
Therefore, here it is also necessary to know the angle
of rotation so that the USV can correct its movement.
But in order to make a turn, it is not enough to
know only the turning angle. You want to calculate
the steering angle. In the described BMA, such a
device is a rotating nozzle of a water jet.
αrud - steering angle of rudder from -20 ° to + 20 °.
In Figure 4 shows USV (1), its heading relative to
the north (2) is indicated, azimuth (3), i.e. the angle to