Research Article - (2016) Volume 5, Issue 2
Unmanned Aerial Vehicles have gained well known attention in recent years for a numerous applications such as military, civilian surveillance operations as well as search and rescue missions. The UAVs are not controlled by professional pilots and users have less aviation experience. Therefore it seems to be purposeful to simplify the process of aircraft controlling. The objective is to design, fabricate and implement an unmanned aerial vehicle which is controlled by means of voice recognition. In the proposed system, voice commands are given to the quadcopter to control it autonomously. This system is navigated by the voice input. The control system responds to the voice input by voice recognition process and corresponding algorithms make the motors to run at specified speeds which controls the direction of the quadcopter.
Keywords: Quadcopter; Voice recognition; Arduino; Thrust; Flight controller
The Quadcopter is an emerging Unmanned Aerial Vehicle which is lifted and propelled by four rotors. A quadcopter uses four motors and propellers to create thrust and give the total lift. Two motors rotate in counter clockwise direction and the other two motors rotate in clockwise direction. This configuration causes the torque from each motor to cancel by the corresponding motor rotating in the opposite direction. The difference of quadcopters from helicopters is that in order to control pitch, yaw, and roll the pilot uses variable thrust between the four motors. There is no single large collective pitch rotor or tail rotor that is used to manoeuvre a conventional helicopter. By precisely spinning these four propellers of quadcopter at different speeds, all the common directional movements of a quadcopter are attainable - Hover, forward/backward movement, left/right movement, and yaw (turn rate) movement [1-5].
Working of voice controlled quadcopter
Quadcopters are commonly controlled by RC method. The vehicle is navigated according to the input from the transmitter by giving appropriate throttle, pitch, yaw and roll values manually. In such cases there is a loss in transmission and so the quadcopter takes some time to respond to the signal. Apart from this conventional method, it can be controlled by interfacing voice commands and transmitting using RF module. The balancing and leveling condition during flight is sensed using sensors namely accelerometers and gyroscopes, and its output of the sensors is used in smooth leveling.
Block diagram for voice control system of UAV
Design of quadcopter model: The X type frame used in the quadcopter should be thin, light weight and strong enough to withstand deformation and loads. Usually the frames are indicated as motor to motor distance or the diameter of the circle of frame area. The diameter of the circle of frame area for mini aerial vehicle ranges between ¼ metre and 1 metre. For the mini aerial vehicle ½ metre area is chosen for application. The diagonal distance from motor hub to motor hub is this project is therefore 450mm. At the centre of the frame, a plate or bed is attached for resting of on-board controllers, battery and other electronic components. When the frame is subjected to bending or twisting load, the amount of deformation is related to the cross-sectional shape section. The stiffness of the solid structure is lesser than the hollow structure. The torsional stiffness of a closed square cross-section is greater than the closed circular section. Therefore closed square cross sectional hollow frame is used. This reduces overall weight. The stiffness can be varied by changing crosssectional profile dimensions and wall thickness. Therefore box type frame is chosen (Figures 1 and 2).
The quadcopter virtual model with motors and propellers assembly is designed using CATIA software as shown in Figure 3.
The parameters of the quadcopter frame are shown in Table 1.
|1.||Arm Length (Four arms)||205 mm|
|2.||Arm dimensions (width, height and thickness)||12 × 12 × 0.5mm|
|3.||Central frame Plate dimensions (length, breadth and thickness)||110 × 110 × 1mm|
|4.||Motor to motor distance||450 mm|
|5.||Fastening Screw and nut dimensions||2mm diameter, 15 mm length.|
|6.||Drill size||2 mm hole size (all holes)|
|7.||Total weight||216 g|
Table 1: Quadcopter frame parameters.
The propulsion system consists of motors, propellers, Electronic Speed Controllers (ESCs), batteries and propellers. Both the motor and propeller combination produces thrust and moves the vehicle upwards. As the estimated all up weight is considered to be 1.5 kg, the thrust requirement from four motors should be double that of 1.5 kg. Therefore each motor should be able to produce 850g of thrust force. Motors are selected based on their Kv rating. It is calculated by the formula
RPM = Kv rating × Voltage input
Substituting the values of RPM and Voltage input,
Kv rating = 10378/11.1 ≈ 935 Kv.
Propeller is a type of fan which transmits power by converting rotational motion into thrust. The APC brand propellers are of good quality and are used in many quadcopters. Propellers are generally twisted along the length of the blades. This is to ensure whether the angle of attack of the blades is kept relatively constant along their length. The twisted portion of the propeller is generally termed as pitch. The propeller is specified on the basis of its pitch and diameter in inches.
Power (Watts) = Kp × D4 × P × RPM3
Where Kp is the propeller constant (1.11 for APC propellers), D is the diameter of the propeller in feet, P is the pitch of the propeller in feet and RPM is the rotations per minute in thousands. The propeller is to be chosen which absorbs power of 200Watts at 10378 RPM.
Substituting the values, we get
D = 0.439 = 10 inch.
Static Thrust Calculator software is used to calculate Static Thrust values and power required from the battery source. It is indicated in Figure 4.
The motor and propeller of the above configuration will be able to produce static thrust of 1.32 Kg and required power is 238 watts. Also the estimated flying speed is 37 miles per hour.
Electronic speed controllers
The function of the electronic speed controllers is to get the output signal from the flight controller and precisely control the speed of the motor. It supplies power from battery and it varies according to the input signal. It also has Battery Eliminated Circuit. BEC supplies 5V output from ESC that powers up receiver and Flight controller. Each motor is connected to an electronic speed controller. They give a smooth linear throttle control and a fast response to the throttle input. The electronic speed controller is selected based on its Ampere rating. This should be greater than ampere rating of the motor.
ESC rating = (1.2 to 1.5) × max. Ampere rating of motor
= 1.5 × 15A = 22.5 A.
Lithium Polymer batteries are used in quadcopter. These cells can produce an enormous amount of current, needed for the brushless motors. These batteries are rechargeable, can last longer, have low weight and high voltage capacity compared to other type of batteries. These batteries are available as 3.7V per cell. These batteries are rated based hon their C-rating. C-rating specifies how fast a battery can discharge. A 2000mAh battery with 12C rating would discharge 12 times its capacity i.e., 24000mAh for 1/12th of an hour. These batteries provide burst current and C-ratings are specified as per burst currents.
Maximum current withdrawn by motors
= no. of motors × maximum current withdrawn by single motor
=4 ×15A = 60A.
A flight controller is a microcontroller on which suitable sensors and wireless communication are interfaced that controls the speeds of the motor by receiving the values from transmitter and feedback from sensors. The Arduino Uno is based on the ATmega328, which can be used as flight controller. It has 14 digital input/output pins, of which 6 can be used as PWM outputs, 6 analog inputs, a 16 MHz crystal oscillator for faster performance. It occupies less weight around 20g.
An inertial measurement unit works by detecting the current rate of acceleration using one or more accelerometers in all axes. It detects changes in rotational attributes like pitch, roll and yaw using one or more gyroscopes.
The MPU 6050 is a 6 DOF or a six axis IMU sensor, which means that it gives six values as output. Three values are given from the accelerometer and three are given from the gyroscope. This chip uses I2C (Inter Integrated Circuit) protocol for communication. Its purpose is to stabilize the aircraft during flight. To do this it takes the signal from the three gyros on the board (roll, pitch and yaw) and feeds the information into the Integrated Circuit. This then processes the information according to the Program and sends out a control signal to the Electronic Speed Controllers which are plugged onto the board and also connected to the motors. Depending upon the signal from the IC the ESC’s will either speed up or slow down the in order to establish level flight [6-9].
The RF module comprises of an RF Transmitter and an RF Receiver. The transmitter and receiver (Tx/Rx) pair operates at a frequency range of 434 MHz. An RF transmitter receives serial data and transmits it wirelessly through RF through its antenna connected at pin 4. The transmission occurs at the rate of 1Kbps - 10Kbps. The transmitted data is received by an RF receiver operating at the same frequency as that of the transmitter. The RF module is used with a pair of encoder or decoder. The encoder is used for encoding parallel data for transmission feed while reception is decoded by a decoder.
The assembly and connections of the various electronic components of the Quadcopter is shown in Figure 5.
The fabricated quadcopter model is shown in the Figure 6.
The total mass of the quadcopter is estimated in Table 2.
|1.||Central Frame and arms||216|
|4.||Electronic Speed Controllers (4)||95|
|7.||Receiver and other sensors||100|
Table 2: Mass of the components.
The total empty mass estimated from the above table is about 901 grams. As the expected payload capacity is considered as 300 grams, the quadcopter should be able to fly with a total mass of around 1200 grams. [10-13]
The thrust of the quadcopter  is given by the equation
T = πD2ρvΔv/4
Where T is thrust in N, D is Propeller diameter in m, ρ is Density of the air – 1.22 kg/m3
V = ΔV/2
Where V is the velocity of air at the propeller, ΔV is the velocity of the air accelerated by propeller.
Substituting, we get,
T = πD2ρ(Δv)2/8
P = T(ΔV)/2
Substituting the value of ΔV,
T = [π/2D2ρ(P2)]1/3
Therefore, total mass lifted by the quadcopter vehicle is calculated as
m = Thrust/ acceleration due to gravity = T/g
m = [π/2D2ρ(P2)]1/3/g
Substituting the values, we get
m = 1.739 kg
= Empty Mass of Quadcopter (1.100 kg) + Payload (639 grams).
The results of the thrust calculation of the Quadcopter show that it would be capable of flying with a minimum payload of 539 grams safely.
The aim of voice recognition is to analyze a word or phrase that is picked up by a microphone and record it in text form onto a computer or microcontroller so that it can be used.
1) The acoustic signal is extracted and broken down into 30microsecond segments for analysis. For each of these segments, an acoustic image is extracted. This is a vector of the main characteristics of the signal.
2) Corresponding to this signal, phoneme for each segment is determineds. The phoneme is the smallest unit of spoken language. The English language is made of 44 to 47 phonemes. For each segment of signal, the program determines the probability of match with each phoneme and combines these probabilities with the pronunciation probabilities for a word and the probability of a word occurring in the target language.
Easy VR 3 is a multi-purpose speech recognition module designed to easily add versatile, robust and cost effective speech recognition capabilities to almost any application. The EasyVR 3 module can be used with any host with an UART interface powered at 3.3V – 5V, such as PIC and Arduino boards. This module is interfaced to Arduino microcontroller board and connected to PC to program voice commands and sound outputs into an EasyVR 3 module and quickly test it from the PC as shown in Figure 7.
After interfacing Voice recognition module to the Arduino, Easy VR commander software is downloaded and the application is to be installed. The recognition function of the EasyVR works on a single group at a time, so that all the commands that are to be used at the same time are to grouped together. When EasyVR Commander connects to the module, it reads back all the user-defined commands and groups, which are stored into the EasyVR module non-volatile memory. The main application window is shown in Figure 8.
A new command is added by first selecting the group in which the command needs to be created and then using the toolbar icons or the “Edit” menu. A command is given a label and it is first trained to the label. It should be trained twice with the user's voice. When the voice is spoken within the given time of 5 seconds, it is recorded and appears on the Commands List with the default name TEST_CMD_ZERO. It can be renamed and a group of commands that are needed for the navigation of the quadcopter is trained and recorded.
After a group of commands are trained, the commands can be tested, by using the “Tools” menu, in order to make sure that the trained commands are recognized successfully.
If a command is to be re-trained, previous trained command is to be erased and trained once again by pressing the Phase 1 button as show in Figure 9.
The module is connected to the Arduino which sends signals to the RF transmitter. Based on each command, the speed of the motors is programmed, i.e. how much roll, pitch yaw and throttle values are to be given for each input signal command. For taking off, using the voice recognition function, the quadcopter can respond to the voice command and fly up to a certain height and start hovering. Thus four motors speed up for 5 seconds, which gives lift, and after it hovers in the air. Thus the flight controller is programmed for takeoff, Up, down, Move left, move right, Turn left, and Turn right commands.
The core intention of the project is to control the quadcopter entirely by Human Voice input. In case of failure of a command, it can also be controlled alternatively by remote control. The project can be extended by implementing some add on functions such as “Return to home” which returns way back to the User. Also GPS module can be embedded within the circuit so that the quadcopter can be controlled from very long distance.
The authors would like to acknowledge the Head of Department of Production Technology M.I.T, Anna University who have provided the opportunity and necessary facilities to carry out the project work successfully. The authors also gratefully acknowledge all the people who have contributed to this work.