You are on page 1of 44

Abstract

Through mathematical modeling, control scheme development, and extensive testing, this project
has taken the first steps in rendering a miniature helicopter autonomous. This report contains the
relevant equations of motion, the associated control schemes, as well as the steps taken to create
a sensor-driven flight computer allowing autonomous operation. Further development and testing
of the control board is necessary to apply the completed control scheme which allows
autonomous flight of a remote control helicopter to a preselected position.

INTRODUCTION:-
PC CONTROLLED HELICOPTOR
The helicopter plays an invaluable role in many fields, incurring countless uses; from military
combat to scenic tourism and everything in between. Helicopters today undertake a myriad of
different and highly specialized missions; such as search and rescue, seek and destroy, and
simple transportation. The purpose of this project is to take the first steps in creating a helicopter
capable of completing such a mission entirely on its own. The goal is to create an autonomous
helicopter. While the implementation of an autonomously operated helicopter has obvious
benefits in almost every conceivable mission, it is the surveillance based ones that make the most
use of this technology. Surveillance, with its demand for covertness and inherent danger in the
case of enemy and unfriendly observation profits from autonomization in two ways. It does not
put the pilot in danger, as it does in any mission; but it also allows the helicopter to be built on
the scale of an R/C toy, something a transportation mission could never accommodate. It is this
platform that the team has chosen to use to develop a computer controlled guidance system for.
For the purposes of this project, the final goal will be to design an R/C helicopter capable of
following a lead ground vehicle at a predetermined height with a payload of a video capture
device relaying images back to base. The real world corollaries to this demonstration are clear. A
direct comparison would be a network of autonomous helicopters following a mission sensitive
ground unit, such as a military transportation vehicle, at a predetermined radius and height
alerting the vehicle of any present danger in its vicinity well before it is ever encountered. The
project entails technical work from many disciplines. The helicopter has been optimized to
operate efficiently and for long periods of time. This requires improvements in the aeronautical
and electronic mechanisms. The system of circuits of sensors and processors required to allow
such operation had to be designed and constructed. Lastly, the computer program, based on
algorithms derived from aeronautical laws and equations was written. For this project, these
subjects came together to create a helicopter that will pave the way for future autonomous
vehicles.
CIRCUIT DIAGRAM:-
RC HELICOPTOR:-
1.6 PNP 4.... Transistors for making a computer controlled switch.
2. A breadboard.
3. Connecting wires.
4. 9V-12 V battery or power supply.
5. Wireless web camera.
6. A parallel port wire/ Printer cable.
7. A PC or laptop to work on with a parallel port.

RC Helicoptor
PARALLEL PORT CONNECTION:-

Now take out the parallel port cable. Now use the multimeter to find the corresponding
wires on the side you have cut which corresponds to pin D0 to D7 shown in the figure. Mark
the colors and note them down. You will need to refer them a lot while making
connections.Also, please find a wire corresponding to any of the ground pins (18-25) shown
in the image above.

Computer controlled switch:-

Extending the things to the RC remote:-

Now that you have the remote opened using a screwdriver and you know the various
combination of terminals which when connected together work as same as buttons on the remote
(STEP 1 above). Suppose there are four controls on your remote, you would need 4 such
computer controlled switches (using transistors). You just need 4 data pins from the parallel port,
corresponding to each data pin you would have control over one button of the remote.If you will
be using the above program for switching on and off the data pins you would only be able to
control the flight or drive using a mouse and you would have to click each time for each control.
It would have been much better if you would have had a pre-programmed flight. Its not difficult.

Relay board
Before we start with the programming let me show you an alternate method to just avoid most of
the crap I have written above. But believe me know its much better to know it because that is
how the relay boards work. So you must be wondering by now what are relay boards actually.
These are pre built circuits with 8-16 computer controlled switches. So you just don’t have to
search for all those transistors and make all those circuits if you want. Here’s an example of a
relay board from ‘Robokits India’. Although they have some nice stuff but its weird that they
don’t have a nice support or a good tutorial. Very soon you can buy a “relay board” from our site
“EMBED AUTOMATION” with a full video tutorial and anytime support. We have first-hand
experience as students who strive hard to work on hobby robotics and I believe we know your
problems better. Coming back to the relay board. It’s really easy to make the connections. You
can see 8 channels on the board in the image. Each corresponds to one data pin and there is an
LED to show if that data pin is on or the computer controlled switch is ON. You will need a
parallel port cable to connect the board to the computer. Also you will need to give the board
some power (+9V or +12V, please check the rating, but the 9V battery wont work- Use a power
supply).

Fig.Relay Board

Programmed flights:-
For achieving this you just need to know how to toggle a data pin using C++ or Matlab. I prefer
Matlab for the same as sometimes there are problems of accessing parallel port using C or C++.
Suppose you have 4 throttle (upward speed) levels in your remote. So what you can do is
program a nice take off or a landing for your RC helicopter. Just connect the terminals
corresponding to throttle level 1 on the remote to the two terminals of transistors as explained
above. Similarly do it for other 3 throttle levels. So now if you switch on 1st data pin, your
helicopter blade would be moving on the speed corresponding to level 1 on remote. Now to
achieve a stable take off, we need to program the flight such as say:

Helicopter Components:-

The laws and equations governing the dynamics of helicopter flight certainly are extensive and
intricate; it comes with no surprise then that the components controlling the helicopter reflect
that complexity. A modern full scale helicopter contains thousands of moving parts, most
machined to very tight tolerances. While this platform, an R/C helicopter, does not match its full
size cousin in number of components, it certainly does in regards to their complexity. A typical
helicopter uses its single main rotor to produce both lift and planar velocity vectors. This rotor
typically is an assembly of four symmetric aerofoil blades (see Fig. 2.1). This is where the first
and most striking difference between a full scale and R/C helicopter comes into play.

Figure : Apache Helicopter showcasing symmetric main rotor


Unlike the full scale helicopter, the R/C uses two horizontally opposed miniature stabilizer blades in
conjunction with two horizontally opposed main blades to control planar motion while the main
blades control lift characteristics. Figure 2.2 depicts the set up in the T-Rex 450. 4
Figure 2.2: T-Rex 450S showcasing main/stabilizer blade configuration

During ascent and descent, a typical helicopter will increase and decrease the angle of attack of
its blades respectively; this is known as collective pitch, each blade angles up or down an
identical amount. To pitch and roll, the helicopter will tilt the entire rotor assembly in the
direction of the desired force vector; this is known as cyclic pitch. Whereas the R/C helicopter
will produce lift in the same fashion, by increasing the angle of attack of its two main blades, it
pitches and rolls by modulating the pitch of the auxiliary stabilizer blades, known as fly bars.
The device that controls all this blade activity is called the swash plate. It allows the main rotor
shaft to spin while simultaneously controlling the collective pitch of all of the blades and the
angle of each individual blade to produce cyclic pitch. Figure 2.3 depicts the swash plate from a
T-Rex 450SE alongside a swash plate from a full scale helicopter, the AH-64. Although the
linkages differ between the R/C and full scale helicopters, their function is identical

Figure 2.3: Comparison of AH-64 [3] and T-Rex 450S swashplates

Power to the main and tail rotors in a typical standard full size helicopter is provided via a gas
powered internal combustion engine. In the case of the R/C helicopter, power is provided via an
electric motor run off of a battery. For the purposes of this project the details of the propulsive
system that are relevant are efficiency and power requirements. On this scale, an electric motor
excels in both. The final critical component on a helicopter is its tail rotor. The purpose of this part is
twofold. It allows the helicopter to yaw, to change angle of orientation with respect to its central z
axis. It also cancels out the torque produced by the main rotor which allows the helicopter to hover in
position without changing its heading and rotating about itself. The operation of the R/C tail rotor is
identical to the full scale helicopter. Changing the angle attack of the tail rotor blades changes the lift
they produce which, since the rotor is mounted horizontally, produces a thrust vector normal to the
aircraft body in a direction opposite the torque produced by the main rotor.

R/C helicopter tail rotor

Mission Specifications:-
Objective
While the implications of this project are as broad and expansive as they come, the final
objective of this MQP is in fact very defined. It is true the goal is quite simply to create an
autonomous helicopter; there are however, many details to that goal. Many attempts, some
successful, others not, have been made at achieving autonomous flight, what separates this
project from others is both the specific objective, and the path towards it. The success of this
project relied on creating a control scheme which allows an R/C hobby helicopter to
autonomously maneuver to a predetermined location. A simple goal, yet there were many
variables inhibiting its achievement. In the following chapters the team will outline the precise
steps and approach taken to get the helicopter to operate in this fashion. Component selection,
hardware arrangement, the guidance and navigation strategy, as well as the inhibiting variables
are described in detail.

Component Selection:-
The selection of proper components was a vital first step in the completion of this project.
Components had to meet strenuous regulations set forth by the team before they were discussed
officially, presented, and ultimately acquired. Due to the high cost of precision aero and
electrical parts required for the success of this project, it was imperative that the right
components were attained. An untimely failure would not only set the project back, it would
cripple it. Different parts had different requirements, with a project of this caliber, borrowing
from many disciplines; the various components had to meet specialized and particular
requirements. Essential properties of the mechanical components included weight and strength.
Desirable sensor properties were precision, accuracy, and data transmission rate. Cost
transcended all categories. The following sections outline in detail the individual components
purchased to construct the helicopter, how they work, and what part they play in the final
product.
Chassis:-
The remote control helicopter model ultimately chosen was the T-Rex 450SE. Made by Align, a
popular and highly recommended Taiwanese electronics company, the T-Rex 450SE is a mid-
size R/C helicopter relative to others on the market.
Fig 3.1 Basic T-Rex 450S model
Figure 3.1 shows the T-Rex 450SE base model without certain mechanisms required for flight,
such as the servos, gyro and battery. The T-Rex’s dimensions are 650mm (from tail to tip of
main rotor blade) by 228mm tall with a ready flight mass of about 680g. The main frame
components are made from high strength carbon fiber and aluminum alloy. As a result, this
model is capable of both high stability in all reasonable weather conditions and precision flying.
The main rotor blades that came with the helicopter kit are Align 325mm Carbon blades, which
are strong and stable in moderate flying conditions. However, carbon blades are not as efficient
as wooden blades for hovering and low-speed maneuvers. Since this is how the helicopter will be
behaving, the team has chosen to replace the current blades with Align PRO Wooden blades.
These 335mm wooden blades will provide the most efficiency in terms of flight time.

Motor:-

Align 430L 3550KV 300W Brushless Motor


The motor is the Align model number: 430L 3550KV 300W Brushless Motor. This is a highly
efficient (91%) electric motor that is designed to be light weight, power-saving, and powerful.
The motor is the main power source of the helicopter, providing power that turns both the main
and tail rotor blades. The dimensions of this particular motor are 3.17x27.5x33mm; it weighs
58g and has a maximum continuous current of 28A.

Electronic Speed Controller


Align 35A Brushless ESC
An electronic speed controller (ESC) serves to vary the motors speed based on the inputs it
receives. The ESC chosen for this project is the Align 35A Brushless ESC. This particular ESC
plugs directly into the receiver’s throttle control and interprets control information from the
transmitter. It supports a continuous current of 35A, is 45x23x12mm and has a mass of 25g.

Servos:-
A servomechanism (servo) is a device that provides control of a desired operation using feedback
loops. An RC servo is made up of a DC motor that is linked to a potentiometer, which serves to
send pulse signals that ultimately translate into position commands. Servos are powered by the
onboard battery and are plugged into the helicopters receiver.

Maxwell-MX56BB Ball-Bearing Servo


Figure 3.4 shows one of the servos that are being used in the helicopter. Three of these control all
pitch and roll functions of the main blades, while a fourth controls the pitch of the tail rotor.

Battery:-
Due to the mission requirements of this project, the selection of an efficient battery was of
utmost importance. The most efficient type of battery that can be used on a RC model is the
Lithium-Polymer pack. These batteries are split into multiple cells with the same standard
voltage. Most Li-Po battery packs are 2-5 cells with a standard voltage of 3.7V per cell. Instead
of the lithium-salt electrolyte being held in an organic solvent as in the Li-Ion battery, it is held
in a solid polymer composite which provides a higher efficiency. The power/weight ratio of a Li-
Po battery is ~2800 W/kg compared to 1800 W/kg of Li-Ion.
APlus 2200mAh-25C 3S1P
The battery chosen to mate with the helicopter was the APlus 3S1P, a 2200mAh Li-Po battery in
a 3-cell series configuration. Each cell has a nominal voltage of 3.7V, giving it a total voltage of
11.1V. The battery is connected to the ESC, which connects to the motor and the receiver. This
battery is 100 x 34 x 23 mm, weighs 179g and has a standard discharge rate of 25C.

Receiver:-

Futaba PCM R146ip Micro Receiver with connected components

Figure 3.6 shows the 6-channel receiver mounted, and connected to the various servos, gyro, and
ESC. It receives radio signals from the remote control transmitter that it interprets and digitizes
to enable a user to manually control all aspects of motion of the helicopter. This receiver is
28.7x42.7x20mm, weighs 16.5g, operates at 72 MHz frequency, and has a receiving range of up
to 300m.
Transmitter
Futaba 6EXH Computer Transmitter 72MHz
Figure 3.7 shows the radio transmitter (remote control) that will be used to test fly the helicopter.
The Futaba 6EXH Computer Transmitter is a 6-channel transmitter has all the controls necessary
for manual helicopter flight. The right stick is used to control the throttle of the motor and the
angle of attack of the tail rotor. The left stick is used to control the angles of attack of the main
rotor blades and stabilizers. A convenient feature that this transmitter has is a simulator cable
port, allowing one to connect it to a computer and use a simulator program to learn to fly.

Architecture:-

Figure 1: Architecture of RCHeli system

There are mainly 5 components in this sys-tem. First, the very essential component ofthis project
is the helicopter. We used Esky 6-channel Belt-CP helicopter, which is capable of 4directional
moves; throttle, roll, pitch, and yaw,using Cyclic/Collective Pitch Mixing (CCPM). Page 1 We
will describe this in detail in section 3.1. Fur-thermore, we introduce a new transmitter, Spek-
trum DX6, as well as Endurance R/C PCTx de-vice; two components combined allows us to
send radio signal from computer. A small and light wireless camera from LYD provides a fairly
re- liable video feed over 2.4GHz, and it is used in inside-out vision from the helicopter. Finally,
a Wiimote is used by a person to control the heli- copter using the devices described above. All
of the devices that we used in this project is fairly inexpensive and easily obtainable from
Internet,
SYSTEM DESCRIPTION:-

Fig. Dimension of the helicopter


A helicopter can general be decomposed in six major components: A main rotor and stabilizer
bar, a tail rotor, a swash plate, a set of control servos, an engine and a fuselage. A technical
scheme of the helicopter used in this project can be found the attached cd. A drawing containing
the measurements of the helicopter can be seen on figure 1.2. The helicopter can be steered
through five control inputs: Collective pitch, cyclic longitudinal pitch, cyclic lateral pitch, yaw
and throttle. The collective pitch and throttle controls are used to control the height of helicopter,
the cyclic pitch controls move the helicopter in the longitudinal and lateral directions, and the
yaw rotates the helicopter. To simplify the notation of the control surfaces the collective pitch
will sometimes be referred to as pitch control and the cyclic pitch controls as the aileron control
(sideways tilt) and the elevator control (forward/backwards tilt). The main rotor blades can be
rotated up to a maximal speed of 1950 rpm. This is done by a two stroke engine named Webra
61-P5, for which data can be found in appendix A.1. The engine is connected to both the main
and the tail rotor through a gear transmission system. The transmission ratios to the rotors are
respectively 1 : 9.23 to the main rotor and 1 : 4.66 to the tail rotor. The speed of the engine is
controlled by the throttle control and the motor is coupled to the rotor-drives through a throw
clutch. Due to the rotation of the main rotor, torque is generated that acts on the whole fuselage
and forces the helicopter to spin around the rotor axis. To prevent this a tail rotor is added to
generate trust to counteract the effect of the main rotor and thereby effectively contributing to
the stability of the fuselage. The tail rotor is also used to alter the heading of the helicopter by
altering the generated thrust and will therefore also be referred to as the rudder control. Changes
of the pitch are done mechanically by the swash plate which is controlled by the aileron and
elevator servos. In addition to main and tail rotors a stabilizer bar can be seen on figure 1.2. The
stabilizer bar adds to the dynamics of the system, and serves to stabilize the helicopter in role and
pitch manoeuvres to make it easier to control for the pilot. A rate gyroscope and a gyroscope
controller of the model GY501 produced by Futaba are mounted on the helicopter. The
gyroscope acts as a yaw-axis (rudder) stabilizer for the helicopter. An example of its function is
that in the case where a force is applied from a side wind on helicopter the rate gyroscope will
counteract the rotation of the tail and bring the tail back to its previous position so the heading of
the helicopter is unchanged. The only effect therefore be lateral drift of the helicopter. To
illustrate the function figure 1.31 and 1.42 shows a helicopter without and with a gyroscope
controller.

Fig. Principle figure without a gyro

Fig. principle figure for a rate gyro


SRS (Software Requirement Specification)
2.1 Development/Operating /Maintenance Environment

2.1.1 Hardware:

• Intel Pentium 4 processor


• RAM:128MB(minimum),256MB(recommended)
• At least one free parallel port through which the movement
signals are transmitted.
• Minimum of 50 MB of free Hard disk space
• CD-ROM drive (for installation)
• Radio freq. transmitter(47MHz)
• Hoverbot.

2.1.2 Environment and Applications:

• Microsoft Windows 9x or any higher version including Windows


XP
• Microsoft Visual Studio .Net
• IIS 5 or Higher
• Internet Explorer 5 or higher.
• Inpout.dll Parallel port Driver

2.2 Goals of Implementation: Surveying capabilities in the Hoverbot.

2.3 Functional Requirements:

I. Get access to the pc–station to which the Hoverbot is connected.

II. Send signal to perform the movement of the Hoverbot to the remote pc.

III. Signal converted to the radio frequency and transmitted to the Hoverbot.

R1.1: Select the Remote pc –station:

• Input: Pc-Station address.


• Output: User prompt to enter the movements.

R1.2: Get Required Movement:

• Input: Only Start, Ready, Fly, Left and Right.


• Output: The requested operation is send to the remote PC-station connected either
through LAN or Internet.

R1.3: Transmit the Signal to Hoverbot.

• Input: Radio Frequency signal to the Hoverbot.


• Output: Functioning of the device according to the signals given.

2.4 Non Functional Requirement:

• Range: Movement of the Hoverbot is about 15 meter high from the PC-station.
• Human Computer Interface: Human Computer Interface is based graphically.

2.5 Foreseeable Modifications and Enhancements:

• The movement range or the mobile device may be increased by increasing the radio
frequency of the transmitter.
• Better control of the movement of the device.

Lifecycle Model and Organizational Structure


Life Cycle Model

The Iterative Enhancement model was used during the development of the system. The
system was developed in increments, each increment adding some functional capability to
the system until the system was full implemented.The advantage of this approach was that
it resulted in better testing as testing of each increment is easier than testing the entire
system in totality. Furthermore, this approach provided us with important feedback that was
very useful in the implementation of the system.
Design 1 Design 2 Design n

Coding 1 Coding 2 Coding n

Testing 1 Testing 2 Testing n

Fig: Iterative Enhancement lifecycle model

The different iterative enhancement phases are:

The first phase of the project consists of programming the parallel port. The first step is to enable
the port to standard mode. Then the parallel port is tested by interfacing a simple circuit which
consists of a LED with the parallel port. The port is programmed such that the LED in the circuit
glows on and off when the commands are given when connected to the port.

The second phase of the project is to prepare the Hoverbot. After the Hoverbot is
prepared it is fitted with the Radio Frequency transmitter. The parallel port is also
interfaced with the Radio Frequency transmitter. The control passed through the port will
be transmitted to the Hoverbot through the Radio Frequency transmitter which in turn
will guide the Hoverbot to perform some certain tasks.
The third phase of the project is to test the interfacing of the device with the port and
transferring the control signals through the radio freq. transmitter to the Hoverbot and
check its functioning of the model.
The fourth phase of the project is to enhance the project by controlling the Hoverbot
through IIS i.e. through internet. Then the model is tested by giving commands to it from
the remote PC which is transferred through the port to the model and certain task is
performed.
Team Structure:-

The team together conducted the project from the start to the finish. This included all the
activities like product analysis, design, testing, preparation of documents and other
related activities.
Member 1 Member 2

Member 3
Software
Engineer
Communication path

Fig. Democratic Team Structure

4. Design:-
TRANSISTION DIAGRAM:-

The transistion diagram given below depicts the various state of the machine.The
function return loop (Q0),takes the machine to starting state.
Flow Chart:-
Flow chart given below depicts the sequence of action that are taken when the various operation
are performed.
Hardware implementation details:-
Block diagram of the radio transmitter:-
Shows the different section of the circuit:-

The pin diagram of the IC TX-2B.


5.1.4 IC Characteristic:

• Working voltage scope: 2.4V~5.0V


• The quiescent current is low.
• May apply to mini remote control and so on compact car, motorcycle, slippery animal-
drawn cart, top, combat tank controls two, the function narration.
• SCTX2B/RX2FS is a pair of CMOS integration chip, specially designs uses in to control
remotely the vehicle application aspect SCTX2B/RX2FS to have 5 control keys to use in
to control controls remotely the vehicle the movement (for example advance, backward
right extension, counterclockwise and revolves function).

Parameter Mark Minimum Typical Maximum


value value

Working VDD 2.4V 4V 5V


voltage

operating Idd 0.5mA - 1mA


current

quiescent Istb - - 3μA


current

DC O/P Idrive 2.5mA - -


actuation
electric
current

AC O/P Idrive 2.5mA - -


actuation
electric
current

AC O/P Faudio 500Hz - 1KHz


frequency

Parallel Port

Parallel ports are most often used by microprocessors to communicate with peripherals. The
most common kind of parallel port is a printer port, e.g. a Centronics port which transfers eight
bits at a time. Disks are also connected via special parallel ports, e.g. SCSI, ATA.The parallel
port of an IBM-PC compatible is the only standard computer port that brings standard computer
logic voltages directly out to a set of pins. It is much beloved by experimenters and engineers
who often use it for inexpensive computer controlled projects. Standard logic voltages are
virtually harmless: five volts (roughly the same as two run-down flashlight batteries), and ground
(zero volts). On the other hand, the electrical driver of the parallel port is in general quite fragile;
appropriate care must be taken to avoid damaging it.

Parallel ports have four types of pins:


Data pins: usually 8, sometimes 16, and sometimes with an extra pin for a parity bit. They can
be either unidirectional (e.g., from a computer to a printer) or bidirectional.
Control pins: used to send control signals such as STROBE to indicate that the data on the data
pins is ready and R/W to specify whether bidirectional ports are reading or writing data.
Status pins: used to send status signals such as BUSY to indicate the device is not ready to
receive data and ACK to acknowledge successful receipt of the symbol.
Ground pins: to complete the circuits from the other pins.

Fig. Parallel Port Pin Diagram.

Brief description of Radio Signals

Radio frequency, or RF, refers to that portion of the electromagnetic spectrum in which
electromagnetic waves can be generated by alternating current fed to an antenna. Such
frequencies account for the following parts of the spectrum shown in the table below.
Fig. Rough plot of Earth's atmospheric transmittance (or opacity) to various wavelengths of
electromagnetic radiation, including radio waves.

Radio frequency spectrum

ITU Frequency
Band name Abb. Example uses
band Wavelength

< 3 Hz
-
> 100,000 km

Extremely low 3–30 Hz


ELF 1 -
frequency 100,000 km – 10,000 km

Super low 30–300 Hz


SLF 2 Communication with submarines
frequency 10,000 km – 1000 km

300–3000 Hz
Ultra low frequency ULF 3 -
1000 km – 100 km

3–30 kHz Submarine communication, avalanche beacons,


Very low frequency VLF 4
100 km – 10 km wireless heart rate monitors

30–300 kHz
Low frequency LF 5 Navigation, time signals, AM long wave broadcasting
10 km – 1 km

300–3000 kHz
Medium frequency MF 6 AM broadcasts
1 km – 100 m

3–30 MHz
High frequency HF 7 Shortwave broadcasts and amateur radio
100 m – 10 m
Very high 30–300 MHz
VHF 8 FM and television broadcasts
frequency 10 m – 1 m

Ultra high 300–3000 MHz


UHF 9 television broadcasts, mobile phones, wireless LAN
frequency 1 m – 100 mm

Super high 3–30 GHz microwave devices, mobile phones (W-CDMA),


SHF 10
frequency 100 mm – 10 mm WLAN, most modern Radars

Extremely high 30–300 GHz


EHF 11 Radio astronomy, high-speed microwave radio relay
frequency 10 mm – 1 mm

Above 300 GHz


none yet, but see terahertz radiation
< 1 mm

CODING OF FLIGHT CONTROL in visual basic:-

Private Sub Command1_Click()


Out 888, 0
End Sub

Private Sub Command3_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 1
End Sub

Private Sub Command3_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 5
End Sub

Private Sub Command4_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 1
End Sub

Private Sub Command4_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 9
End Sub

Private Sub Command7_Click ()


Out 888, 1
End Sub

Private Sub Command8_Click ()


Out 888, 1
End Sub

Private Sub Form_Load()


Out 888, 0
End Sub

Slow
Out 888, 9
End Sub

Private Sub Command7_Click ()


Out 888, 1
End Sub

Private Sub Command8_Click ()


Out 888, 1
End Sub

Private Sub Form_Load()


Out 888, 0
End Sub

Fast
Out 888, 9
End Sub

Private Sub Command7_Click ()


Out 888, 1
End Sub

Private Sub Command8_Click ()


Out 888, 1
End Sub

Private Sub Form_Load()


Out 888, 0
End Sub

Stop
Private Sub Command1_Click ()
Out 888, 0
End Sub
Private Sub Command3_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As
Single)
Out 888, 1
End Sub

Private Sub Command3_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 5
End Sub

Private Sub Command4_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 1
End Sub

Private Sub Command4_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 9
End Sub

Private Sub Command7_Click ()


Out 888, 1
End Sub

Private Sub Command8_Click ()


Out 888, 1
End Sub

Private Sub Form_Load()


Out 888, 0
End Sub

Left
Private Sub Command3_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As
Single)
Out 888, 1
End Sub

Private Sub Command3_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 5
End Sub

Private Sub Command4_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 1
End Sub

Private Sub Command4_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 9
End Sub

Private Sub Command7_Click ()


Out 888, 1
End Sub

Private Sub Command8_Click ()


Out 888, 1
End Sub

Private Sub Form_Load()


Out 888, 0
End Sub

Right
Private Sub Command4_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As
Single)
Out 888, 1
End Sub

Private Sub Command4_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As


Single)
Out 888, 9
End Sub

Private Sub Command7_Click ()


Out 888, 1
End Sub

Private Sub Command8_Click ()


Out 888, 1
End Sub

Private Sub Form_Load()


Out 888, 0
End Sub
Goal Mission:
Screenshots
Form Based Program.

Prompt to enter the command

Screenshots when user clicks on the fly button

1.
2.

3.
Screenshots when user clicks on the left button

Screenshots when user clicks on the right button


Screenshots when user clicks on the stop button

1.

2.
Internet Based Program

Server Side

Client Side
User Manual:-
Before user is ready to execute the software the following things are to be done by the user

• Set the parallel port enabled and assign address as 0x378.


• Copy the inpout.dll file to the windows/system32/ directory.
• Execute the program by running led.exe

The Graphics User Interface is very simple; it has 4-buttons for specified purpose.Whenever you
press Fly the Hoverbot prepares to take off and after few second it will take of to its ultimate
height.

Whenever you press Left the Hoverbot takes a left turn.

Whenever you press Right the Hoverbot takes a right turn.


Whenever you press Stop the Hoverbot prepares to land off and after few second it will land.

Operation system for the flight computer


An operating system (OS) will be needed for the flight computer that both offers multitasking
capability in a real-time environment as well as insures general hardware compatibility. Several
operation systems could potentially be used on the helicopter as for example: Linux, Windows
and QNX. All three of these systems have their share of pro and cons, Linux for example is in
contrary toWindows and QNX primarily written as open source which insures good development
capabilities. Windows on the other hand is compatible with a broader span of hardware and QNX
offers a more robustmemory and thread handling scheme in comparison with the other two.
QNX is chosen for the flight computer because of its stability advantages. The QNX real-time
OS software package used in this project is called QNX Momentics Development Suite Non-
Commercial edition 6.2.1 and it is available in two different versions: A full developer version
which requires a licence and a free version without advanced development tools. A licence will
be sought acquired for the full version, but because a long processing time for the licence can be
expected, the development of the flight computer software will be started with the free version of
the OS.
Moment of Inertia Calculations
As outlined in the Section 4.3, among the variables that need calculating are the moments of inertia
of the helicopter. The team set about acquiring these moments by creating a scale model using the
CAD program SolidWorks®. Figure 5.2 shows the completed model

SolidWorks model of helicopter


Each component of the model has been sized and massed to the specifications of the real
helicopter. As a result, the SolidWorks® model is not only built to scale, but it contains all the
same properties as the actual model. The properties of interest for the purposes of this project are
center of mass, and moments of inertia. Figure 5.3 shows these properties which were calculated
using the SolidWorks® mass properties plug-in.
Helicopter moments of inertia
The values of interest are the moments taken at the output coordinate system. These values, which
remain constant, were taken and used in the angular acceleration and velocity equations of motion.
Servo Control
5.3.1 Motor RPM Analysis
In order to obtain the necessary thrust of the helicopter, there must be a known relationship
between the control signals and the rotational speed of the rotor. Without an encoder to monitor
the rotation speed and create a closed loop control, it becomes necessary to make an equation
that changes the signal depending on the angle. This can be done through the use of the data
gathered through the following rpm tests coupled with the power equations. In order to find this
relationship, a circuit was constructed containing a photoelectric resistor and a resistor of equal
impedance. The circuit was placed directly underneath the rotating blades with a laser pointer
positioned directly over the blades aimed at the photoelectric resistor. As the rotor spins, the
blades break the laser beam thereby changing the resistance of the photoelectric resistor (Fig.
5.4). This change in resistance was monitored using Simulink® through dSPACE®, which
measured the frequency of these resistance changes to obtain the rpm of the rotor.

Photo resistor tachometer setup


Fig. 5.5 shows rpm data as a function of controller throttle collected at zero angle of attack.

Throttle vs. RPM chart


The next step is linking rpm with motor input while accounting for variations in rpm due to
different load conditions. These different load conditions arise due to the increase in drag as
angle of attack is increased. As such, rpm is not only a function of voltage input, but of blade
angle of attack as well. Fig. 5.6 shows this relation between rpm and angle of attack. In this test,
the throttle was held constant at 20% while angle of attack was varied from its minimum to its
maximum setting. The tests for this recorded data for 1.5 seconds with a sampling rate of 50
microseconds using dSPACE®. The period was approximated using Microsoft Excel® to
calculate the number of samples between a significant change in the voltage across the resistor.
When analyzing the data it was taken into account that the beam of light was broken twice per
revolution due to there being two blades in the main rotor. As such the voltage changed across
the photoelectric resistor twice per revolution.
Recommendations / Conclusion
This project set about to take the first steps in creating a helicopter capable of operating
autonomously. Having thoroughly analyzed servo behavior, established equations of motion, and
created a control scheme capable of allowing an R/C helicopter to move to any given destination in a
smooth and controlled manner, the team deems this project a success. As with any technical
undertaking, there is still work that can be done to achieve autonomous flight. The team has done all
it can in the development of an autonomous helicopter, what is left to do is implement the control
scheme onto a protoboard and begin testing and optimizing the craft. The team has created a control
board integrating a single axis gyroscope and a 5 degree of freedom sensor board which utilizes 2
gyroscopes and 3 accelerometers; these sensors, once fitted to the board serve as the inputs in the
control scheme. Further development on the software side needs to occur in order to employ the
control code on the board itself. Once completed, autonomous flight will be a matter of mounting the
board followed by thorough testing and refining of control constants developed in Section 5.4. In
regards to a guidance system wherein the helicopter is made to track and follow an object there is
considerable room for development. In order to further develop such a system, the desired position
and orientation for the control loops must be derived from the output of the chosen environment
imaging system. One such environment imaging system is presented in Appendix C. Using the same
control system presented in Section 5.4, it is possible to control the behavior by simply modifying the
values of the desired position and orientation into functions. Simple movements such as circling can
be achieved by making the desired position a function of time. More complicated patterns can be
achieved by making the desired values into if/then statements. It is even hypothetically possible to
make a program that allows the desired states to be changed wirelessly and have it follow any
number of paths. The most difficult part of making the helicopter fully autonomous will be
integrating the environment imaging system. The system in Appendix C is limited in range and
function since it requires line of sight with the ground vehicle. This system’s other limitation is that it
can’t react to anything but the LED light and therefore is likely to collide with other obstacles. In
order to integrate the imaging system from Appendix C with the control scheme presented in Section
5.4 some changes may need to be made. The most likely change would have to be made in the
strength of error correction for yaw. In other words their k-values may need to increase in order to
keep the vehicle in sight at all times. Another solution would be to buy or design a three dimensional
pivot for the goniometer in order to allow a larger range of sight. The last suggestion would be to
acquire better components than those used in this project. A more powerful microcomputer would be
the first choice as the calculations for dynamics and controls tax the limit of the current model
without the environment imaging component. The next priority would be more sensors to provide
redundancy, and thus, more accurate readings. 39
Having made these suggestions, we are reminded of the many potential applications previously been
mentioned in this report. Serving in everything from patrols to rescues, helicopters are the foundation
and tool of choice for many agencies operating in a wide variety of conditions and settings. Linking
all these operations is the explicit need for precision and safety; it is in this realm that autonomous
flight truly excels. It is for this reason that the team has gone to such lengths in achieving this goal.
Results from Wind Tunnel Tests of Main Rotor Blades
Wind tunnel testing was performed to determine the lift curve slop of the blade for the equation for
thrust as well as the drag resulting from changes in the angle of attack. While an approximation of
the lift curve slope was simple to obtain, there was simply not enough drag to be read by the
instruments in the wind tunnel. An alternate method was used to calculate drag by measuring the
change in rotational speed as the angle of attack increases as discussed in Section 5.3.1. The
experimental setup was a rotor blade clamped to a force balance set atop two scales. The force
balance is a mechanism that allows an airfoil to change its angle of attack and uses the scales to
measure lift. The experimental procedure was as follows;
1. Set Blade Angle
2. Set tunnels speed
3. Zero scales
4. Take readings off the scale and add together
5. Turn off tunnel and repeat
Table 2 shows the results of this test for the 325 mm blades used on the final setup of the helicopter.
The test concluded the slope of the lift-curve to be .00384
Appendix B: Z-Axis Moment Test
As described in Section 5.5, it is necessary to include in the control scheme a relation between
moment about the z-axis and the pulse delivered to the tail servo. A simple test apparatus was
constructed by mounting a bearing on the helicopter and placing the assembly in a vice next to a
vertically mounted scale (Fig. B.1). Upon modulating the signal sent to the servo, a change in the
force exerted on the scale was recorded, this force multiplied by the distance to the center of mass of
the helicopter gives us the torque, M3.

Z-Axis Moment Testing


Figure B.2: Z-Axis Moment vs. Pulse Width at 20% and 30% Throttle

• Automatically start operation and takeoff.


• Fly to a designated area on a prescribed path while avoiding obstacles.
• Search and locate object of interest in the designated area.
• Visually lock on to and track or, if necessary, pursue the objects.
• Send back images to a ground station while tracking the objects.
• Safely return home and land.

Appendix C: Considerations for Guided Flight


In preparation for guided flight, the team has developed a guidance and navigation strategy outlined
as follow. In order to find the position of the helicopter relative to the ground vehicle as well as its
orientation, six values must be found. The values for the position in terms of x, y, and z will be found
by making use of a distance sensor to find the value of z, and an optical goniometer capable of
measuring two angles. A cluster of LED lights will be placed on the ground vehicle while the optical
goniometer will be programmed to pick up only that frequency of light. The optical goniometer will
see the light if it is within the cone of its vision, and then map it on to a grid.

Figure C.1: Mapped data point from goniometer


This position of the light on the grid corresponds to the angle between the center of the goniometer’s
cone of vision. From these angles a, b, and distance z, we can calculate the values of x and y.
Figure C.2: Angle / Distance relationships
To find and control the orientation of the vehicle, a gyroscope and a duel axis accelerometer will be
used. The gyroscope will find and balance the angular acceleration of the yaw and use double
integration to find current yaw. The purpose of the accelerometer will be to balance roll and control
the pitch in order to follow the ground vehicle.

Goal Mission Applications

Search & Rescue :-Vision-guided robot helicopters can quickly and systematically search a very
large area to locate victims of an accident or a natural disaster. They can then visually lock on to
objects at the site or stranded victims to guide rescue forces to the scene. They can help focus the
efforts of search and rescue crews to the rescue operation instead of the time consuming search
operation. They can be more readily deployed in weather conditions which would normally
prevent human piloted search and rescue. They can be sacrificed in very dangerous conditions to
save human lives. Prime examples include flying close to a forest fire to look for stranded
individuals, searching in contaminated areas, and identifying potential radioactive leaks after a
nuclear reactor accident.

Surveillance:-
Vision-guided robot helicopters can patrol an area and report interesting or unusual activity.
They can perform a variety of surveillance operations ranging from around-the-clock border
patrolling to looking over the hill for potential danger on the battle field. They can keep watch on
an area non-stop by automatically landing and refueling from ground stations in or near the area.

They can automatically locate and identify suspicious activity and visually lock-on to objects or
persons involved until ground forces arrive.
Law Enforcement :-
Vision-guided robot helicopters can fly overhead to aid the police in dangerous high-speed
chases or criminal search operations.Stationed on top of buildings in urban areas, they can be
dispatched in seconds to takeoff and relay images from trouble spots. This real time imagery is
crucial to the tactical assessment of the situation by human experts who dispatch police units to
the area.

Inspection:-
Vision-guided robot helicopters can inspect high voltage electrical lines in remote locations.They
can inspect large structures such as bridges and dams cost effectively. They can be quickly called
upon to inspect buildings and roads for potential damage after an earthquake. They can locate
hazardous materials in waste sites by providing aerial imagery to human experts or by
automatically identifying waste containers or materials by on-board vision.
Aerial Mapping:-
Vision-guided robot helicopters can build more accurate topological maps than conventional
aircraft at a substantial cost savings. Unlike airplanes, they can fly close to the ground while
carrying cameras or range sensors to build high resolution 3D maps.They can fly in smaller and
more constrained areas to build highly detailed elevation maps.

Cinematography:-

Vision-guided robot helicopters can be a director's eye-in-the-sky camera. They can fly precisely
under computer control which eliminates the need for skilled human pilots for aerial
photography. They can automatically track subjects with their on-board vision-based object
trackers. They can fly a prescribed path over and over again to help plan shots or to aid in
producing special effects

SUMMARY AND CONCLUSION:-


Summary of Achievements:-

It gives us immense pleasure and a sense of satisfaction at having accomplished what we set out
to do at the beginning of the semester. This has been an enlightening and enriching experience to
be associated with this project under the guidance of our project guide Mr. Chingtham Tejbanta
Singh. During the course of this work we made a number of achievements and learnt a lot of
lessons.
Some of our achievements are as follows:

• Learning to work with VS.Net, IIS.


• Learning about the different phases of software development and the software
engineering processes involved in the development of software.
• Learning the documentation process.

Main Difficulties Encountered and how they were tackled:-


The various difficulties encountered were as follows:

• Accessing of the PC-station from remote PC connected through LAN was initially found
difficult but later on with the help of our guide and faculty it become possible.
• Some of the hardware concepts.
However the guidance of our project guide helped us in overcoming these difficulties

Limitations:-
• The software does not provide specific landing for the Hoverbot.
• The device cannot be operated for more than 1-2 min at stretch due to quick discharge of
the device.

Future Scope:-
If money is not a constraint, we today have enough technology by which a Hoverbot can
carry things like high resolution camera to the distant and difficult terrains, and can take pictures
of those places and these pictures can be used by the person sitting at distant place to explore
those difficult terrains.

CONCLUDING REMARKS:-
A method for self-calibration of a camera array has be developed and fielded. In addition, this
work has extended and developed methods for tracking and localizing a helicopter. The system
takes three intrinsically calibrated cameras and places them in the field at unknown locations and
orientations forming an arc angle of approximately 30 degrees with the only constraint that the
helicopter to be tracked will always be in view of all the cameras. A tracking system utilizing
background differencing and a Kalman filter accurately and robustly tracks the helicopter in
motion despite other moving objects in the scene. With at least four non-coplanar data points
taken from each camera simultaneously as the helicopter moves, SFM and least squares can be
used to extract the extrinsic parameters between each of the cameras assuming near perspective
projection. Once the extrinsic parameters have been found, the helicopter can be tracked and
localized up to a scale factor with the origin at camera 1. If the baseline between each of the
cameras is known, an estimate of the scale factor can be found to re-project all the points onto a
Euclidian coordinate system based on a known metric (meters, feet, yards).
Future Work:-
The near-perspective assumption is not very accurate in the case of a moving helicopter. The
helicopter will often move great distances in the z direction and will not stay near the center of
each of the camera’s image plane. Han and Kanade have developed a method based on iterating
the near-perspective SFM algorithm until the perspective SFM solution can be solved [5]. This
will also hopefully help find the scale factor more accurately between what SFM returns and a
world metric. Several helicopter runs still must be performed in order to compare the results
from this method to on-board GPS data. That will provide the final ground truth needed to
validate this technique.

BIBLIOGRAPHY:-
 ASP.Net by G.Andrew Duthie & Matthew MacDonald
 Fundamental of Software Engineering by Rajib Mall
 Programming Windows Driver Model by Walter Oney
 alldatasheets.com
 logix4u.com
 en.wikipedia.com
 C#.Net by Deitel

REFERENCES:-
[1].S. Blackman, “Multiple hypothesis tracking for multiple target tracking,” IEEE Aerospace
and Electronic Systems Magazine, vol. 19:1, Jan. 2004.
[2].A. Blake, D. McCowen, H. R. Lo, and P. J. Lindsey, “Trinocular Active Range Sensing,”
IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol 15:5, 477-483, May 1993.
[3] Jean-Yves Bouguet, “Camera Calibration Toolbox for MATLAB,” MRL, Intel Corp.
[4] D. A. Forsyth and J. Ponce, Computer Vision: A Modern Approach, Prentice Hall, 2003.
[5] M. Han and T. Kanade, “Perspective Factorization Methods for Euclidean Reconstruction,”
Carnegie Mellon CMU-RI-TR-99-22, Aug 1999.
[6] M. Isard and A. Blake, “Condensation: conditional density propagation for vision tracking,”
Int. J. Computer Vision, vol. 29:1, 5-28, 1998.

You might also like