Development UAV

5
Abstract—Unmanned aerial vehicles are aircrafts capable of flight without an on-board operator. Such vehicles can be controlled remotely by an operator on the ground, or autonomously via a pre- programmed flight path. UAVs are already being used by the military for recognizance and search and rescue operations. This paper describes design and implementation of manual remote control system for UAV. The testing system in our lab includes two control systems: automatic control and manual control. This paper is for manual control of vehicle to get the desired target via the joysticks. UHF wireless transmitter and receiver pairs are used for data communication link between the ground station and the receiver on the vehicle. The control system is based on microcontroller PIC16F877 that is used for low part cost, software tools available, inexpensive. The microcontroller C language is used for this control system. KeywordsRemote control, manual control, unmanned aerial (UAV), microcontroller, radio control. I. INTRODUCTION NMANNED aerial vehicles (UAVs) are crafts capable of flight without an onboard pilot. They can be controlled remotely by an operator, or can be controlled autonomously via preprogrammed flight paths. Such aircraft have already been implemented by the military for recognizance flights. Further use for UAVs by the military, specifically as tools for search and rescue operations, warrant continued development of UAV technology. An uninhabited air vehicle has found diverse applications for both civil and military missions. To achieve the stated mission, the vehicle needs to have a certain level of autonomy to maintain its stability following a desired path under embedded guidance, navigation and control algorithm. To meet the increasingly more stringent operation requirements, the UAV relys on the skill of the ground pilot and the autonomous capabilities dictated by a reliable onboard computer system. Therefore, the objective of this paper is to deliver a control command to steer UAV’s control surfaces by using manual remote control system. Manuscript received November 15, 2007. This work was supported in part by the Ministry of Science and Technology, Union of Myanmar. Thae Su Aye and Pan Thu Tun are with the Mandalay Technological University, Mandalay, Myanmar (phone: 095-2-88704(Electronic Engineering Department), fax: 095-2-88702(Office, MTU), e-mail: [email protected] and [email protected]). Zaw Min Naing, PhD, is their supervisor and he is pro-rector of Technological University (Maubin), Myanmar. Yin Mon Myint, PhD, is their co-supervisor, head of department at MTU. Fig. 1 Avionic System of Quad-rotor UAV project Normally, the architecture of UAV project is shown in Fig. 1. The content of this paper is just only for the manual remote control system from the ground station via the home make joysticks. For data communication link between ground station and the vehicle, TWS434 transmitter and RWS434 receiver from Reynolds Electronics Co.ltd with PIC16F877 are used in this system. II. SYSTEM HARDWARE COMPONENTS The overall system configuration is briefly represented in this section and the hardware used in this research and the physical integration of the components are also described. System architecture is shown in Fig. 2. A. PIC Microcontroller The PIC 16F877 (Microchip Technology, Inc., www.microchip.com) 8-bit microcontroller was chosen to obtain the analog data from the joysticks in transmitting section and control the motors on the UAV. This microcontroller has a 25 MHz processor (the current compiler runs the processor at 20 MHz), 33 input/output (I/O) pins, (8k*14words) of Enhanced FLASH program memory, (386*8bytes) of RAM, (256*8bytes) of data EEPROM. The PIC does not have an operating system and simply runs the program in its memory when it is turned on. This PIC microcontroller has several hardware features that are very useful for use in a UAV and simplify the interfacing of sensors and motors with the microcontroller, such as an analog to digital converter (ADC), interrupts, timers, and capture/compare/pulse width modulation (CCP) channels. Development of Unmanned Aerial Vehicle Manual Control System Thae Su Aye, Pan Thu Tun, Zaw Min Naing, and Yin Mon Myint U World Academy of Science, Engineering and Technology 42 2008 392

Transcript of Development UAV

Abstract—Unmanned aerial vehicles are aircrafts capable of

flight without an on-board operator. Such vehicles can be controlled

remotely by an operator on the ground, or autonomously via a pre-

programmed flight path. UAVs are already being used by the military

for recognizance and search and rescue operations.

This paper describes design and implementation of manual remote

control system for UAV. The testing system in our lab includes two

control systems: automatic control and manual control. This paper is

for manual control of vehicle to get the desired target via the

joysticks. UHF wireless transmitter and receiver pairs are used for

data communication link between the ground station and the receiver

on the vehicle. The control system is based on microcontroller

PIC16F877 that is used for low part cost, software tools available,

inexpensive. The microcontroller C language is used for this control

system.

Keywords—Remote control, manual control, unmanned aerial

(UAV), microcontroller, radio control.

I. INTRODUCTION

NMANNED aerial vehicles (UAVs) are crafts capable of

flight without an onboard pilot. They can be controlled

remotely by an operator, or can be controlled autonomously

via preprogrammed flight paths. Such aircraft have already

been implemented by the military for recognizance flights.

Further use for UAVs by the military, specifically as tools for

search and rescue operations, warrant continued development

of UAV technology.

An uninhabited air vehicle has found diverse applications

for both civil and military missions. To achieve the stated

mission, the vehicle needs to have a certain level of autonomy

to maintain its stability following a desired path under

embedded guidance, navigation and control algorithm. To

meet the increasingly more stringent operation requirements,

the UAV relys on the skill of the ground pilot and the

autonomous capabilities dictated by a reliable onboard

computer system. Therefore, the objective of this paper is to

deliver a control command to steer UAV’s control surfaces by

using manual remote control system.

Manuscript received November 15, 2007. This work was supported in part

by the Ministry of Science and Technology, Union of Myanmar.

Thae Su Aye and Pan Thu Tun are with the Mandalay Technological

University, Mandalay, Myanmar (phone: 095-2-88704(Electronic

Engineering Department), fax: 095-2-88702(Office, MTU), e-mail:

[email protected] and [email protected]).

Zaw Min Naing, PhD, is their supervisor and he is pro-rector of

Technological University (Maubin), Myanmar.

Yin Mon Myint, PhD, is their co-supervisor, head of department at MTU.

Fig. 1 Avionic System of Quad-rotor UAV project

Normally, the architecture of UAV project is shown in Fig.

1. The content of this paper is just only for the manual remote

control system from the ground station via the home make

joysticks. For data communication link between ground station

and the vehicle, TWS434 transmitter and RWS434 receiver

from Reynolds Electronics Co.ltd with PIC16F877 are used in

this system.

II. SYSTEM HARDWARE COMPONENTS

The overall system configuration is briefly represented in this

section and the hardware used in this research and the physical

integration of the components are also described. System

architecture is shown in Fig. 2.

A. PIC Microcontroller

The PIC 16F877 (Microchip Technology, Inc.,

www.microchip.com) 8-bit microcontroller was chosen to

obtain the analog data from the joysticks in transmitting

section and control the motors on the UAV. This

microcontroller has a 25 MHz processor (the current compiler

runs the processor at 20 MHz), 33 input/output (I/O) pins,

(8k*14words) of Enhanced FLASH program memory,

(386*8bytes) of RAM, (256*8bytes) of data EEPROM. The

PIC does not have an operating system and simply runs the

program in its memory when it is turned on. This PIC

microcontroller has several hardware features that are very

useful for use in a UAV and simplify the interfacing of sensors

and motors with the microcontroller, such as an analog to

digital converter (ADC), interrupts, timers, and

capture/compare/pulse width modulation (CCP) channels.

Development of Unmanned Aerial Vehicle

Manual Control System

Thae Su Aye, Pan Thu Tun, Zaw Min Naing, and Yin Mon Myint

U

World Academy of Science, Engineering and Technology 42 2008

392

Fig. 2 Block diagram of the System

B. Transmitter Receiver Modules

A pair of TWS/RWS 434 transmitter receiver module

interfacing microcontroller is used to send and receive data

between the ground station and quad-rotor. Two 433MHz

whip style antenna s are also used in the set up for long range

detection.

The TW-434 outputs up to 8mW at 433.92 MHz. It has an

operating range of about 400 ft. outdoors, or about 200 ft.

indoors. It can go through most walls. The operational voltage

varies from 1.5 to 12 V and it accepts both linear and digital

input. Fig. 3 below shows the schematic of the transmitter with

its pin specifications.

Fig. 3 RF Transmitter Schematic

The RWS-434 receiver also operates at 433.92 MHz with

an operational voltage of around 4.5 – 5.5VDC. It’s sensitivity

is 3 µV, and it can have both linear and digital outputs. Fig.4

below shows the schematic of this receiver with the pin

specifications.

Fig. 4 RF Receiver Schematic

C. Servo Motor (F-S148)

This kind of servo motor was chosen according to the

following advantages.

1) High torque at all speeds

2) Capable of holding a static (no motion)

position

3) Able to reverse directions quickly

4) Able to accelerate and decelerate to reach a

position or rate of speed quickly

D. Servo Control

The servo control board is a homemade prototype. The

processor is PIC16F877 with 8 channel PWM signal out put. It

can command 8 servos at the same time with RS-232 serial port.

PWM signal is used extensively on DC servo control, such as the

hobby model DC servo. A square wave is outputted 50 times per

second. The width of the square wave decides the horn of the

servo oscillating angle, and the wave width is described

according to the continuous time. When the width of the

square wave equals1.5 millisecond, the horn of the servo keeps

on neutral position, 45degree angle. The width of square will

change from 1 to 2 millisecond, and the horn of servo will

rotate amount 0~90 degree angle as shown in Fig. 5.

Fig.5 Servo motor

Fig. 6 Servos are controlled by 1-2 ms pulses

E. Homemade Joystick

The designs of homemade joysticks are made to be able to

control 4 servo motors simultaneously. In this paper, joysticks are

to manage rudder, elevator, and propeller of small UAV model to

get required movement. Physical model is designed to be able to

adjust the range of each angle with response to the range of angle

of joysticks.

World Academy of Science, Engineering and Technology 42 2008

393

F. Small modal UAV

To test the control system, a small model UAV was designed as

a test bed. The range of angle of rudder and elevator was

designed to have a ranging between -45 degree and +45 degree.

III. SYSTEM INTEGRATION AND SOFTWARE

A. CCS C Compiler Feature

CCS, Inc. has developed a C compiler called the PCWH for

the PIC 16F877 microcontroller (http://www.ccsinfo.com).

This compiler is easy to use with CCS’s Windows based IDE

(integrated development environment) and its “C aware”

editor. This is not an ANSI compliant C compiler and it has

some differences from a traditional C compiler because of

separate code and data segments in the PIC hardware. This

compiler does have some of the standard ANSI library and

math functions and has many extensions that are useful when

working with the PIC hardware. The compiler has built-in

libraries for working with RS232 serial input and output,

digital input and output, and precision delays and makes

hardware features such as timers and A/D conversion easy to

use with C functions. It also supports 32 bit floating point

numbers and floating point math, which is very important for

the calculations used in the control algorithm.

B. System Integration: Interface to Hardware

This section describes the C code that was written to

interface the microcontroller with the hardware used in this

project.

1) Joystick and A/D Converter

The 10 bit analog to digital converter on the PIC

microcontroller was used to convert the signal representing the

joystick movement to an integer value that could be used by

the microcontroller.

2) PWM mode in CCP Channel

Since servo motor is controlled by means of managing

PWM, the features of CCP (Capture/Compare/Pulse Width

Modulation) play in important role. The period of the PWM is

set up using the following formula:

PWM period = < (PR2)+1>*4*Tosc*(TMR2

prescaler value)

The PWM duty cycle is specified by writing to the

CCPR1L register and to the CCP1CON<5:4>.The overall

meaning of the control system is to calculate the required duty

cycle to control the servo motor.

3) Timer and Counter

Tmer2 is configured to produce PWM with the required

frequency. According to the nature of servo motor, the

frequency is set up to be 50Hz.

C. Communication Protocols

The transmitter section uses a specific protocol to send

commands to the vehicle over an RS-232 connection. When

manual control is enabled, the transmitter sends a constant

stream of ASCII packet to the vehicle computer. These packets

consist of five pieces of information, separated by underscores.

These pieces of information are: manual control status,

propeller speed, rudder angle, elevator angle, and a check sum.

Manual Control status is denoted by a 0 or a 1. If Manual

Control is enabled, a 1 is the first element of the packet. If

Manual Control is disabled, a single packet of five zeroes,

(separated by underscores) is sent to the vehicle, and then the

transmitter stops streaming data.

Propeller speed is sent to the vehicle as a signed value,

between –300 and +300. This represents propeller speeds

between –300 rotations per minute and +300 rotations per

minute. Rudder angle and elevator angle are both sent to the

vehicle as signed values, ranging from –4500 to +4500. These

numbers represent hundredths of degrees, ranging between –

45 degrees and positive 45 degrees. Positive rudder angles

cause the vehicle to turn to port when moving forward.

Positive elevator angles cause the elevator to go trailing edge

low, causing the vehicle to dive The last element of the packet

is a checksum. The checksum is calculated by summing the

status, the absolute value of propeller speed, the absolute value

of rudder angle, and the absolute value of the elevator angle.

The software on the vehicle also sums these values, and if the

solution that it calculates is different from the sent checksum,

the packet is ignored.

An important consideration when creating this protocol was

the requirement that it could be used by other user-interfaces

to send information to the vehicle. In Manual Control mode,

the vehicle is listening for packets following this protocol. It is

not concerned about what is sending these packets.

Sample packet:

1 _ 250 _ 1000 _ -3000 _ 4251*

Status propeller elevator rudder checksum

speed angle angle

Checksum:

|status| + |propeller speed| + |elevator angle| +

|rudder angle|

D. Software

In order to be compatible with the selected microprocessor,

the code is written in PIC C language. While this has

somewhat limited capabilities, it is appropriate technology for

this system.

Whenever the microprocessor is powered up, its first task is

to calibrate the joysticks. Due to the fact that elevator and

rudder angle, as well as propeller speed, are adjusted by

moving the joysticks.

After calibration, the processor checks the state of the

Manual Control On/Off switch. If the switch is in the Off

World Academy of Science, Engineering and Technology 42 2008

394

position, a single Manual Control off packet is sent to the

vehicle, and then an off loop is entered. In the off loop, the

processor sends no data to the vehicle, and keeps querying the

state of the Manual Control On/off switch. If the switch is set

to Manual Control On, the On subroutine is run and Manual

Control On packet is sent to the vehicle.

Fig. 8 and Fig.9 show the control algorithm for the

transmitting and receiving data between the ground station and

vehicle. The first part of the program declares all of the

variables needed throughout the program. The functions used

to communicate between transmitter and receiver sections are

also defined.

For transmitting section, at the start of the program set up

AD conversion and process this conversion for the analog

signals from each joystick by using ‘ setup_adc(mode),

setup_adc_potrs(value), set_adc_channel(channel) and

reac_adc(mode) ’ functions. This ADC values are encoded and

send the command to the vehicle by the specific protocol.

Fig. 8 Transmit Control Algorithm for one surface

In the receiver portion, at the beginning of the program set

up PWM channel by using ‘setup_ccp1 (mode)’ and set up

timer2 to define period of PWM by using ‘setup_timer_2

(mode, period, post scale)’. And the sending commands are

received and then decoded these data and decide which servo

mounted on the control surface to be driven and output the

PWM signal to responsible servo.

Fig. 9 Receive Control Algorithm for one surface

E. Display Unit

We used Hyperlink software as the monitor. The unit

including RS-232 processes this nature. The program displays

the state of angles controlled by joysticks. Moreover, the

output PWM signals to drive motors are displayed on the

oscilloscope.

IV. CIRCUIT DESIGN OF THE SYSTEM

This section shows how to design the circuit of the remote

control of this system. Fig.10 and Fig.11 show the circuit of

the system. It is very simple and easily constructed.

Fig. 10 Circuit Diagram for Transmitter

World Academy of Science, Engineering and Technology 42 2008

395

Fig. 11 Circuit Diagram for Receiver Section

V. CONCLUSION

A UAV system has been designed with an emphasis on

using inexpensive coat components. The components have

been integrated and manual remote control system has been

successfully implemented by using these components and pre

determined program.

This research has demonstrated that low-cost components

can be used to create a control system that will allow

automatic flight for a UAV with additional sensors such as

cameras, sonar, and optic flow sensors to increase the level of

UAV autonomy.

ACKNOWLEDGMENT

Firstly the authors would like to thank their parents for their

best wishes to join the PhD research. His Excellency Minister

U Thaung, Ministry of Science and Technology will also get

the authors great thanks for his special guidance to pay

chances for them. Special thanks are due to their Supervisors:

Dr.Zaw Min Naing (Pro-rector), Technological University,

Maubin and Dr. Yin Mon Myint (Deputy Professor and Head

of Electronic Engineering Dept) from Mandalay Technological

University, Mandalay, and Union of Myanmar for their

kindness of guidelines for this paper. The authors greatly

express their thanks to the member of their UAV project and

to all persons whom will concern to support in preparing this

paper.

REFERENCES

[1] Allug, E. et al. Control of a Quad-rotor Helicopter Using Visual

Feedback. International Conference on Robotics &Automation,

Washington, DC May 2002.

<http://ieeexplore.ieee.org/iel5/7916/21826/01013341.pdf>.

[2] Nice, Eryk B. Design of Four Rotor Hovering Vehicle. Thesis presented

for the degree of Masters of Science, Cornell University, and May 2004.

[3] Carlo Canetta, Jonathan Chin, Evan Mehrabian, Ludguier Montejo,

Hendrik Thompson, Quad-rotor Unmanned Aerial Vehicle, Final

Report, May 2, 2007.

[4] Microchip Technology, Inc.2001, PIC16F877A Data Sheet,

www.microchip.com

[5] William Finn, 2005, ECE 445, Senior Design Project, Project No.34

[6] Ann Marie Polsenberg, MIT, 2000, Developing an AUV Manual

Remote Control System

[7] Roberts, J.M., Corke, P.I., Buskey, G., “Design of a Four-Rotor Aerial

Robot,” Proceedings of the 2002 Australasian Conference on Robotics

and Automation, Auckland, New Zealand, 2002, pp. 71-76.

[8] Scott D. Hanford, Lyle N. Long†, and Joseph F. Horn., A Small Semi-

Autonomous Rotary-Wing Unmanned Air Vehicle (UAV), American

Institute of Aeronautics and Astronautics, Infotech@Aerospace

Conference, Paper No. 2005-7077

[9] Reynolds Electronics, TWS434/RWS434 datasheet, www.rentron.com

World Academy of Science, Engineering and Technology 42 2008

396