Final Report  - Harding University
Second Wind
Final Report
April 28, 2010
Josh Dowler
Caleb Meeks
John Snyder
Table of Contents
Requirements Specification .......................................................................................................................... 2
Project Overview and Status ......................................................................................................................... 4
Detailed System Test Plans ........................................................................................................................... 5
Generation System........................................................................................................................................ 6
System Frame ............................................................................................................................................................7
Generator Motor .......................................................................................................................................................8
Gearing Ratio .............................................................................................................................................................9
Return Mechanism ..................................................................................................................................................10
Electrical System ......................................................................................................................................... 12
Microprocessor .......................................................................................................................................................13
Sensors ....................................................................................................................................................................15
Motor Controls ........................................................................................................................................................17
Charge Controller ....................................................................................................................................................18
Control System ............................................................................................................................................ 19
Slider Control System ..............................................................................................................................................20
Tension Sensor ........................................................................................................................................................21
Kite Reel ..................................................................................................................................................................22
Angle Sensor ............................................................................................................................................................22
Product Management Details ..................................................................................................................... 24
Budget and Analysis ................................................................................................................................................25
Schedule and Analysis .............................................................................................................................................26
Appendices.................................................................................................................................................. 27
Appendix A: C18 C Compiler Libraries .........................................................................................................................
Appendix B: Microchip PIC18F4550 ............................................................................................................................
Appendix C: ET-PIC18F4550 USB Development Board ...............................................................................................
Appendix D: LCD Screen ..............................................................................................................................................
Appendix E: Microprocessor Code ..............................................................................................................................
Appendix F: 57BYGH207 Stepper Motor .....................................................................................................................
Appendix G: ULN2003A – Stepper Motor Driver ........................................................................................................
Appendix H: 20TQ – 20A Schottky Rectifier ................................................................................................................
Appendix I: FlexiForce Resistive Force Sensor ............................................................................................................
Appendix J: Angle Sensor Preliminary Testing ............................................................................................................
1
Kite Wind Generator
Requirements Specification
Overview:
Our team will design and prototype a kite wind generator. The generator will
produce electrical power from the drag force applied to the kite by wind. The kite will be
autonomously guided by a microprocessor to perform the gliding maneuvers necessary
to produce power. A kite wind generator would be useful for generating power on large
scale agricultural farms, in remote locations for disaster relief or military, or as a part of a
larger wind farm.
Problem Statement:
Due to pollution and depletion of traditional energy sources there is a need to
generate power from renewable energy sources. Wind is the second most abundant
energy resource, next to solar energy, that can be harnessed to generate power. Kite
wind generation is more effective than conventional turbines in gathering the energy
from the wind for two reasons. First, the kite can reach much higher altitudes than
turbines, where the wind is more reliable and strong. Second, kites can cover more area
in the sky and therefore use more of the energy than a stationary turbine can. This
technology could allow individuals to become energy self-sufficient and it could also be
used in large scale projects as wind farms that produce high power.
Operational Description:
The kite wind generation unit will produce power based on the drag force
produced by the kite in flight and the amount of line pulled, which will be connected to a
generator, over time. When the kite has reached its maximum height the kite
orientation will be changed to reduce its drag coefficient, and the kite will be retracted
using much less power than is generated from the pull up. The kite will run
autonomously in winds of 10 to 45 kilometers per hour. When the wind speeds are too
high the kite will be retracted to prevent damage to the system. If the wind speeds are
too low the kite will be retracted. The system will also have a user interface that displays
the length of line released, and power generation. The user will also have options for
three different modes of operation for the kite; deploy, sustain, and retract.
Technical Requirements:









System will initially supply its own power to initiate energy generation and then store excess
generated power
If power generation is not sufficient to generate excess power the kite will be retracted and the
user interface will run off of stored power
System will generate at least 500 watt hours DC within 10 hours
Kite system will be able to generate power in winds from 10 - 45 kilometers per hour
Setup, including kite deployment, should take no more than 30 minutes
Power generation should occur within five minutes of kite deployment
System must have deploy, sustain, and retract modes of operation
Autonomous control of each mode (deploy, sustain, retract)
User interface to enable user to specify modes of operation (deploy, sustain, retract) and show
user length of line released within one meter and power generated within 20 watts
2


Must be able to sense length of line released within one meter and power generation within 20
watts
System will be able to fit through a standard door frame, with width of one meter and height of
two meters
Design Deliverables:







User manual
Drawings and schematics with analyses
Kite generator unit
User interface
Parts list with associated costs
Test report
Final technical report
System Test Plan
1.
2.
3.
4.
5.
6.
Kite stays aloft in winds of 10 - 45 kilometers per hour
10 minutes of autonomous flight and power generation in winds of 10 - 45 kilometers per hour
Generation of 500 watt hours DC within 10 hours
The electrical system will have a failsafe mechanism that will enable in case of a power surge
Kite retraction of less than 10 minutes in winds of 10 - 45 kilometers per hour
Shows accurate value for length of line released by comparing it with a tape measure within one
meter
7. Shows accurate value for power generation within 20 watts by using current and voltage
measurements using a multimeter
Implementation Consideration:
Follow FAA regulations part 101, subparts A and B: no flight between sunset and sunrise, a
letter of intent to fly the kite above 150 feet sent to the nearest FAA ATC facility, a 100m radius of land
without obstruction around base, set in an area five miles away from an airport, land must have ground
visibility greater than 3 miles, and the kite line must have streamers at 50 foot intervals above 150 feet
that are visible for one mile. The leads for the generator and battery will be covered to prevent shock.
Sprockets and chains are part of the design and could pose some safety issues.
3
Project Overview and Status
The construction of the system frame is currently completed. The generation system has been
constructed, interfaced and tested. The control system and electrical system have been constructed
and have been integrated and tested. Roadblocks related to higher than anticipated torque
requirements for the control slider are being addressed as the total system integration is completed and
testing begins.
The Second Wind project is completely constructed comprising all subsystems. Systems are all
integrated and have been tested as a complete system. The Second Wind project has undergone testing
to prove that it can meet some of the requirements specification developed at the beginning of the
year.
The challenges encountered during the design and implementation of the Second Wind project
have led this team to a deeper understanding associated with engineering design. The lessons learned
from this project have given our team the experience necessary to prepare us for a future in the
engineering field. If our team were to start over from the beginning we would choose to do a few things
differently. One such difference would be choosing a project that did not rely on unpredictable factors
outside of our team’s control, such as the weather. One of this project’s largest roadblocks during
testing has been finding suitable days to test within our schedules, suitable wind and weather
conditions. The weather is very unpredictable. This made proving the concept of this project difficult
with such a short testing period. Even after allocating over a month to testing, the fact that we must
wait for ideal weather conditions made it difficult to fully and properly test the full system. Another
change would be to better understand the intricacies of kite flight, through a more in depth study of kite
flight dynamics and mechanics. This knowledge, although very advanced for undergraduate work, could
have diverted a number of roadblocks which have occurred during the design implementation process.
Individual subsystems have been tested, however all system components have not been fully
integrated. Individual subsystem testing has shown success in their designed functionality. However,
despite showing some functionality, many of the components of the project will not be able to fully
meet specifications as a whole. We believe that each subsystem has flaws which would not cause the
project to fail. However, when the flaws of each subsystem are integrated, the system is not capable to
function as designed. Some issues include a misunderstanding of the magnitude of the forces acting on
the control slider mechanism. We believe that this system will work as designed if it were replaced with
a more powerful motor that could provide a larger torque on the slider mechanism to control the kite.
A smaller generator motor would also improve the performance of the system. This would decrease the
required torque from the kite and would allow the generator motor to run at the high speeds required
to generate enough power to charge the battery. Currently the generation system has been able to
produce instantaneous voltages in excess of six volts with a constant voltage of around 2.5 volts. Some
modifications have been implemented that we believe could improve this. The lack of wind for testing
has not allowed us to be able to further test the system after these modifications have been made. We
believe that given the proper amount of testing days with adequate weather we would be able to
generate some amount of consistent power.
4
Detailed System Test Plans
1. The kite will have 10 minutes of autonomous flight and power generation in winds of 10-45
kilometers per hour. A measurement of the wind speed will be taken while testing. A stop
watch will measure the 10 minute time period when no physical interaction is imparted on the
system. A wattmeter or multimeter will be used to show that power is being generated.
2. Generation of 500 watt hours DC within 10 hours. The average of the instantaneous powers
generated within a given hour will be taken using a wattmeter. This will show the watt hours
that are produced from the system.
3. Kite retraction of less than 10 minutes in winds of 10-45 kilometers per hour. The kite retraction
mechanism will be tested while a force (equivalent to the force applied to the kite during
operation) is applied. The applied force will be between the calculated values of 1.39 N (0.31
lbf) and 28.13 N (6.32 lbf). A stopwatch will monitor the time necessary to retract the full
operational length of the kite.
4. Shows accurate value for length of line released by comparing it with a tape measure within one
meter. The length displayed on the LCD screen will be compared to a tape measure length.
5. Shows accurate value for power generation within 20 watts by using current and voltage
measurements using a multimeter. The instantaneous power generated will be displayed on the
LCD screen by a wattmeter or multimeter.
6. The tension sensor will be tested and calibrated by attaching varying weights to the string and
creating a resistance curve equation that will be used by the microcontroller to convert the
resistance output to tension on the string. Multiple calibration curves will be made and
averaged to find this curve equation.
7. The angles measured by the angle sensor will be compared to those found using a protractor. If
the angles are more than ±10° off of the protractor’s angles the system will require
modifications or a redesign until the angles are within the ±10° range. Preliminary studies
shown that the angle measure design does produce angles with this range.
8. The slider controller will be tested with a maximum designed load of 225 N (50.58 lbf) on the
kite strings. The slider must be able to move at the speeds required to control the kite. These
speeds shall be determined as further testing on how our slider controller interfaces with the
kite.
9. The return mechanism will be tested by flying the kite and using multiple combinations and
variations of springs to find the optimal springs for varying wind conditions. The wind speed will
be measured. The performance of the springs will be measured by the following criterion:
proper length of line released during pull out of the kite, proper length of line retrieved during
the pull in of the kite, and rate of kite during release and retrieval. A table of wind speeds and
proper spring choice for the wind speed will then be generated.
5
Generation System
6
System Frame
In the fall semester the system frame assembly was scheduled to be done after spring break;
however it was necessary for the mounting and testing of other sub-assemblies. Therefore, the system
frame assembly was the first part of the Second Wind project to be manufactured and completed.
Boards 1
Boards 2
Figure 1: Partial System Frame Assembly
The design of the frame underwent some minor changes, from the initial design of last
semester, during its construction. A change was made due to a clearance issue for the generation
system sub-assembly. The pieces labeled ‘Boards 1’ in fig. 1 above are where the generation system
sub-assembly is mounted. These two boards were initially designed under the premise that 2x4 wooden
boards are actually two inches tall and four inches wide. However, boards labeled 2x4 are actually 1.5
inches (38 mm) tall and 3.5 inches (89 mm) wide. This discrepancy caused the flywheel in the
generation system to stick below the frame, meaning it would scrape along the ground. This was solved
by placing ‘Boards 2’ under ‘Boards 1’, instead of having ‘Boards 1’ on the same level as ‘Boards 2’. This
change allowed for plenty of clearance for all parts and it also made attaching the different boards much
easier and sturdier. The increased sturdiness comes from the ability to increase the holding area of the
screws that are placed into the wood. The columns used to support the upper platform were all moved
forward 3.5 inches (89 mm), due to the width of the ‘Boards 2’, to make the frame more compact and to
allow a sturdier place to secure them to the frame. Finally, a metal brace was added at the front of the
system frame to add rigidity and strength. The added rigidity comes from the properties of the metal as
well as from the metal brace attaching to three different wood pieces. Finally, threaded metal rods are
being used to secure the system to the ground. These metal rods are placed near the four corners of
the frame. The system frame has proven to stand up to the forces produced during system testing,
which were in excess of 225 N (50.6 lbf).
7
Generator Motor
The generator motor is a 350 watt brushed DC motor from Monster Scooter Parts (Item # C808759). This motor is reversible, which means that the motor leads can be reversed to allow the motor to
act as a generator. The generator motor was also selected because it is inexpensive and it is rated at
fairly low RPMs (2750 RPM) for this power output level. The low RPM rating is important, because a
motor tends to work best as a generator when operating near its RPM rating.
Figure 2: Generator Motor
The motor has currently been tested using the battery that was purchased for the Second Wind
project. The reversibility of the motor has been verified by switching the positive and negative leads to
the battery and observing how the motor behaves. The motor has also been connected to the complete
generation system sub-assembly through chains and sprockets. Throughout system testing the motor
has shown some small amounts of output only exceeding six volts. This is most likely due to the short
pull stroke that can possibly be corrected by modifying the spring return mechanism. This will be
discussed in the spring return mechanism subheading.
The effectiveness of the flywheel has been evaluated to aid in the possible design of a future
system or prototype. The equations of motion for the system have been formulated and the total
inertia of the generation system has been found from experimental results. This consisted of hanging a
weight from the spool, D0, and measuring the time it took to drop over a distance. These values were
applied to the equations of motion to find the total inertia of the system. There are still unknown
variables to consider for the flywheel analysis. Many educated assumptions were made during the
analysis, which concluded that the flywheel should have a moment of inertia approximately 1.4 times
larger than the current flywheel. This would give only a 10 percent fluctuation in motor speed, whereas
the current flywheel allows 30 percent fluctuation. The values used in the analysis assumed a change in
energy per cycle of 85 watts and an angular velocity of two radians per second.
8
Gearing Ratio
The gearing ratio chosen for the generation system sub-assembly is 7.4:1. This means that for
every one turn of the primary shaft shown in fig. 3, the generator motor shaft will turn 7.4 times. This
gearing ratio is necessary to allow the motor to turn at the proper speed. An intermediate shaft is used
to hold the flywheel, which will increase the moment of inertia of the system to allow for more
consistent operation of the motor. All gears are connected via #25 roller chains and sprockets. The
primary shaft will accept the force from the kite and transfer that force via the large sprocket and chain
to the intermediate shaft. The intermediate shaft will then turn the flywheel and transfer its energy to
the generator motor through the sprockets and chain connecting them.
Primary Shaft
Flywheel
Generator
Motor Shaft
Large Sprocket
Intermediate
Shaft
Figure 3: Gearing Ratio for the Generation System
The only change to the gearing ratio setup was to move the motor from the left side of the
intermediate shaft to the right side of the intermediate shaft. This was done to purely to save space and
make the system more compact. The intermediate shaft was attached to two bearings, which were
then mounted to the frame through nuts and bolts. The intermediate shaft was cut to the correct size
and the flywheel was welded to the shaft. The sprockets and bearings are attached to the shaft by set
screws. Aligning the parts took multiple tries, but finally, with precise measurements the parts were
aligned to decrease the effect of friction on the parts as much as possible. The gearing ratio has been
tested to show that all parts work together and perform as they should, even at high speeds. The tests
proved that when the primary shaft was rotated one revolution the generator motor shaft rotated
approximately 7.4 revolutions. This test consisted of rotating the primary shaft one revolution while
monitoring a small mark put on the motor shaft. This shows that the gearing ratio is functioning as
designed. The gearing ratio has been subjected to testing with the kite attached, and has proven to
withstand the forces (225 N or 50.6 lbf) and torques (8.57 N*m or 75.87 lbf*in) generated by the kite.
9
Return Mechanism
The return mechanism consists of a variation of springs to store energy to return the kite after it
pulls outward due to the force of the wind. The proper linear spring is chosen from the three springs
available for the proper amount of wind present during operation. The user’s manual provides a list of
the proper spring to use for the proper wind conditions. The spring is changed manually to match the
mean wind speed during the operation of the kite (This is done to accommodate varying wind
conditions; otherwise the return mechanism would only function as designed for one wind speed).
There is a spring for light, average, and heavy wind conditions. The spring is then attached to the
primary shaft shown in fig. 4. This stores a part of the energy into potential energy from elongation of
the spring that the kite produces on its outward pull. This occurs due to the spring being on the same
shaft where the power from the kite will be delivered. Originally the cord attached to the spring needed
to be attached to specific diameters on the primary shaft in order to operate as designed (Labeled D1
and D2 in fig. 4). The freewheel is also an important part of the return mechanism; allowing the primary
shaft to transmit energy in one direction only. This allows the intermediate shaft, which includes the
flywheel, and motor to continue spinning. D0 is the spool on the primary shaft where the cord
representing the kite force will be pulled out and in with the kite movement.
D1
D2
D0
Primary
Shaft
Metal Cable
(Kite Force)
Eyehole
Yellow Cord
(Spring Force)
Figure 4: Return Mechanism with Multiple Diameter Spool
However, the varying diameter design is no longer necessary due to the redesign of the spool for the
spring return mechanism shown in fig. 5. The spool no longer consists of mulitple diameters of
attachment for different springs. Instead, only one diameter is being used. This diameter was increased
in order to allow the moment force produced by the spring on the primary shaft to increase. This was
done based upon results and observations from testing which concluded that the springs needed to
offer more resistance to the kite in both the outward and inward pull of the spring return mechanism.
This also means that the eyehole shown in fig. 4 will no longer be necessary, which will reduce friction
on the system. The yellow cord shown in fig. 4 has also been replaced with a metal cable for increased
10
strength as well as a stronger attachment to the primary shaft. This modification was made to the
system due to a failure during testing of the original attachment method. This new system has proven
itself during testing to be more effective and secure. D0 may also be redesigned to allow a longer stroke
length for the kite. This may be done based on observations from testing that show that the kite should
be allowed to pull outward longer than previously designed for.
D1
D0
Primary
Shaft
Metal Cable
(Kite Force)
Metal Cable
(Spring Force)
Figure 5: Redesign of Spring Return Mechanism
Figure 6 shows a voltage test run on the generation system simulating high wind conditions.
The effect of the flywheel can be clearly seen here to stabilize the fluctuating voltage to the motor. This
results in a more stable voltage generated by the generator motor.
Figure 6: Generation System Voltage Test
11
Electrical System
12
Microprocessor
The microprocessor has been a project of higher complexity than was first imagined. The first
roadblock was due to poor documentation from the manufacturer of the PIC18F4550 development
board from Futurlec. The documentation made it ambiguous as to how exactly code gets loaded onto
the microprocessor. The final conclusion after consultation with Harding’s electronic laboratory
technician was that code needs to be programmed via an external programmer. Harding owns a
Microchip PM3 programmer with the MPLab IDE development software which is compatible with the
Microchip PIC18F4550 microprocessor. With this configuration, the code was written and compiled
through the MPLab IDE software then transferred to the microprocessor via the PM3 programmer. A
student version of the C18 C compiler was used so the code for the software could be written using the
C programming language. Conveniently, the C18 compiler features functions which made controlling
the microprocessor’s features easier. Some of these functions include capability to easily control the
A/D converters. Details about these functions can be found in Appendix A. All system test code has
now been programmed and can be found in Appendix E. This code has been complete for some time
but has undergone several revisions to account for calibration with the sensors and the motor.
Figure 7: Development Board with sensor connections
Figure 8: User Interface
13
The kite flight algorithm was produced by using the angle sensors to gain approximate values
from the A/D converter. These values were then used to create thresholds for the kite to cross as it
moves through its pattern. A graphical representation of the kite flight pattern using A/D converter
values can be seen in fig. 9. This is a graphical representation of the kite flight pattern while the kite is in
the sky. The numbers in fig. 9 correspond to values read by the microprocessor’s A/D converter. The
equation y = -0.2584x + 477.57 represents our kite as it is moving to the right and the equation y =
0.2533x + 310.77 represents our kite as it flies to the left. Given a direction and a single x or y value, we
can tell where our kite should be in the air. When the vertical angle reads an A/D value greater than 425
or less than 365, our controls will curve the kite around to complete the figure 8 pattern. It will do the
same when our horizontal angle reads greater than 435 or less than 203. Using this graphical
representation, code was written to orient the motor in order to force the kite to adhere to this pattern.
Vertical Angle (A/D reading)
Kite Path
430
420
410
400
390
380
370
360
y = -0.2584x + 477.57
200
220
240
260
y = 0.2533x + 310.77
280 300 320 340 360
Horizontal Angle (A/D reading)
Right Direction
Figure 9: Kite Flight Graphical Representation
14
Left Direction
380
400
420
440
Sensors
All sensors have been tested with the microprocessor and operate to a level of accuracy which
meets system specifications. All sensor tests produced linear results which adapt sufficiently into the
system. The sensors consist of the ±30V voltage sensor, the 30A current sensor, and the tension sensor.
The voltage sensor takes a voltage in the range of +30V to -30V and outputs a voltage between 0 and 5V
for input into the microprocessors A/D converter. This sensor is working correctly from all tests that
have taken place. It currently displays the correct value being produced to the LCD screen by
transforming the A/D value read by the microprocessor. Results can be seen in fig. 11.
Voltage Sensor Test
5
Output Voltage (V)
4.5
4
3.5
3
2.5
2
0
5
10
Input Voltage (V)
15
20
Figure 10: Voltage Sensor Test Results
A/D Converter Reading
Voltage Sensor A/D Test
1000
900
800
700
600
500
400
300
200
100
0
0
2
4
6
8
10
12
Input Voltage (V)
14
16
18
20
Figure 11: Voltage Sensor Test with A/D Converter
The current sensor is similar in that it will take a value of current between -30A and +30A and
output a voltage between 0-5V. This sensor is also working correctly from what has been tested thus
far. Test results can be seen below in fig. 12.
15
Current Sensor Test
Output Voltage (V)
5
4.5
4
3.5
3
2.5
2
0
2
4
6
Input Current (A)
8
10
Figure 12: Current Sensor Test Results
The tension sensor is a variable resistor that changes resistance with the amount of force
applied. As the force increases, the resistance in the sensor decreases causing the output voltage to
increase. The sensor is rated for 0-45.36kg (0-100lbs) of force, so a great amount of force will need to
be applied by the kite to show noticeable change. The housing for this sensor was built with the rest of
the control system. All of these sensors are working close to the specifications indicated by their
datasheets. The final sensors being used with the microprocessor are the angle sensors. More about
these sensors can be found in the controls description. These sensors can be seen in figs. 13, 14 and 16.
Figure 13: 30V Voltage Sensor
to uP pins
R2
50%
Figure 14: 30A Current Sensor.
R1
1k Ω
Ke y = A
1k Ω
V1
12 V
Figure 15: Angle Sensor Configuration
Figure 16: Tension Sensor
16
Motor Controls
A major change was made in the way the motors are controlled. The 12V DC brushed motor
which is being used to control the reel has undergone a change in concept. Instead of being controlled
by the microprocessor, it will be controlled by the switch on the user interface. That switch will also
notify the microprocessor that the motor is in use so it can set the control slider to the center position.
This configuration can be seen in figs. 17, 18. A new reel motor needed to be purchased because the
current motor draws too much current for the required torque. This large change in motor control
means that only one motor, the control motor, will be controlled by the microprocessor. This change,
while significant, is still okay with the requirements specification. The control motor is a 57BYGH207 2phase, 1.8° per step, 12V, 0.4A, unipolar stepper motor from Mercury Industry Co. This motor will make
all the movements which affect the kite’s flight pattern. The portion of code for the stepper motor
program has been written and implemented. The stepper motor can be controlled by the
microprocessor with accurate precision. It can move in either direction. The motor drive circuit, which
will increase the torque of the motor, is what is seen in fig. 18.
J1
V1
V2
5V
12 V
J1
Ke y = S p a c e
S1
Ke y = A
V1
12 V
U1
2N 7000
to uP
R1
10k Ω
J2
M
MOT OR
Ke y = S p a c e
Figure 17: Reel Motor Circuit
Figure 18: Reel Motor Signal Circuit
Figure 19: Control Motor
17
Charge Controller
The charge controller circuit is currently undergoing testing to provide functionality for the
generation system. The charge controller consists of a few main components. The first component is
the diode. Specifications for the diode can be found in Appendix H. This ensures no current will
backflow into the motor during generation. A capacitor is then placed in parallel to provide a smoother
voltage flowing into the battery. The DC-DC converter ordered from Maxim never arrived so unfiltered
voltage now flows into the battery from the generator. This circuit will deliver power being produced by
the generator motor to the battery. While unfiltered voltage and current is not optimal, the power is
still being filtered somewhat by the generation system flywheel and the large capacitor. The battery will
then provide 12 volts to the electrical system via a 12V regulator (LM1084). These 12 volts is delivered
to the microprocessor, control motor, and reel motor. The microprocessor contains onboard 5 volt
sources to provide voltage to the system’s sensors. This configuration can be seen in fig. 20. The final
configuration for the means by which all subsystems receive power can be seen in figs. 21,22. Fig. 21
shows the power circuit which receives power from the battery to be sent to the microprocessor and
control motor. Fig. 22 shows all connections coming in from the battery and generator motor. These
components are connected to the rest of the electrical subsystems via the screw down panel (used
because of low gauge wire).
U1
LM7812CT
D1
1B H 62
LINE
VOLTAGE
C1
3900uF
V1
12 V
VREG
COMMON
A
V2
12 V
Reel Motor
to uP and sensors
Figure 20: Charge Controller Configuration
Figure 21: Power Circuit
Figure 22: Power Connections
18
Control System
19
Slider Control System
The slider control construction was completed on schedule. After initial testing of the slider
control subsystem it was determined that the planned flight path of the kite demands more torque from
the control motor than it was previously designed for. This is because the physics involved in
controlling the kite are not as much a function of the drag force on the kite as previously thought but a
function of the lift produced as the kite glides forward. With the original thought process the tension in
the strings will be equal to each other thereby allowing the control motor to only overcome friction in
the system as it moves the slider. In reality the kite is producing lift as it flies forward much like an
airplane wing would. This lift is not only caused by the airfoil shape of the kite but also the inclined
angle of attack that makes the kite act much like a airplane that is taking off. This also explains why our
kite is producing much higher force readings than originally expected in lower winds. It also means that
during turns there is a significant difference in tension in the two strings, thereby necessitating the slider
motor to overcome, not only the friction forces in the system, but also the tension differences in the
string. To compensate for this changes have been made to the flight pattern so that the turns needed to
control the kite are smaller, and produce less of a tension difference in the strings.
Figure 23: Constructed Slider Control Subsystem
20
Tension Sensor
The tension sensor subsystem was constructed on schedule, has passed subsystem tests, and
has been integrated in the total system.
Testing consisted of adding known weights to the kite string and measuring the resistance
output of the tension sensor. These values were tabulated and a fit curve equation was produced so
that the resistance readings can be transferred into tension. The curve produced by these tests
reflects the manufacturer curve but has been calibrated to fit to our specific system. Because
the sensor worked successfully and as expected no changes to the design were made.
This device has been successfully integrated with the microcontroller.
Force sensor is
pinched by hinge
Figure 24: Tension Sensor Subsystem
21
Kite Reel
The kite reel was constructed ahead of schedule but the motor was changed out before the
subsystem was integrated into the total system. This was done because, though the torque
requirements for the motor were met, the original motor purchased required more amperage than was
previously thought. The new motor was purchased, attached to the reel system, and has been tested
along with the total integrated system. It was also tested with a simulated max load of about 28 N (6.3
lb) to verify it meets the requirements of our retraction system.
Figure 25: Kite Reel Subsystem
22
Angle Sensor
The angle sensor subsystem has been constructed and integrated into the total system. This
angle sensor has been shown to work both mechanically and electronically as needed. Electronically the
sensor must be able to reliably transmit data to microcontroller in a form that it can then use to
determine the kite’s location. This was done using two potentiometers to measure the vertical and
horizontal angle change of the kite’s string. Mechanically the sensor must be able to withstand the
range of positions and angle change speeds produced by the kite’s flight.
The electrical aspects of the angle sensor were tested by recording and tabulating the resistance
values for the two potentiometers at known angle orientations for the string. The values for the desired
path were determined and are used by the microprocessor to determine the kite is flying in the correct
zone and trajectory. See the Electrical System section for more information on how the microprocessor
uses these values. See also Appendix J for the angle sensor preliminary testing.
The mechanical aspects of the angle sensor were tested by integrating it into the system and
verifying that it will function in a full range of flight possibilities. This was done by flying the kite by hand
in a wide range of flight patterns with the angle sensor integrated. This test verified that the angle
sensor functions successfully when integrated into the system.
This angle sensor design utilizes a steel eye-hole bolted to the system frame for the string’s
entrance into the sensor. The string then passes through an eyelet at the end of the angle sensor’s
angle arm. The entrance eye-hole to acts as a multidirectional pulley and bares the load of the kit’s
tension. The eyelet on the angle arm allows kite string movements to change the resistance values for
the vertical and horizontal potentiometers which are read by the microprocessor and used to control
the kite flight.
String enters
from generator
through eye-hole
Vertical
Potentiometer
String exits to
kite through
eyelet at end of
angle arm
Horizontal
Potentiometer
Figure 26: Angle Sensor
23
Product Management
Details
24
Budget and Analysis
Table 1 – Updated Budget
Updated Budget
Product
Kite
Development Board
Battery
Generator Motor
Wood/Pulleys
Sprockets/Chains/Axle
Axle
Springs
Bearings
Circuit Boards
Controls System
Retraction Motor
Sensors
Electrical Components
Paint
Report Printing Cost
Amount Budgeted
Amount Spent
Total Remaining
Vendor
Kite Wind Surf
Futurlec
atbatt.com
Monster Scooter
Parts
Lowes
Electric Scooter Parts
Lowes
W.B. Jones Spring Co.
VXB.com
4pcb
ebay.com
Trossen Robotics
Trossen Robotics
allelectronics.com
Lowes
HU - ERC
Budgeted
Cost
$131.95
$52.90
$50.42
$47.91
$50.00
$104.87
$5.71
$36.00
$28.43
$50.00
$80.00
$32.00
$78.62
$25.00
$20.00
$10.00
$803.81
$838.56
$11.44
Money
Spent
$131.95
$52.90
$50.42
Difference
$0.00
$0.00
$0.00
$47.91
$61.96
$104.87
$0.00
$36.93
$28.43
$49.55
$80.00
$68.12
$78.62
$15.02
$21.88
$10.00
$0.00
$11.96
$0.00
-$5.71
$0.93
$0.00
-$0.45
$0.00
$36.12
$0.00
-$9.98
$1.88
$0.00
The spring semester budget for the Second Wind project has changed slightly from the budget
proposed in the final design report from last semester. Axle material as well as construction hardware
were obtained from excess parts from previous years’ design projects. The most recent purchases this
semester have been a new retraction motor and pulleys. These purchases were not foreseen purchases.
However, due to insight gained from initial system testing these purchases were deemed necessary.
The professional circuit board has also recently been purchased implemented into the system. Paint
and brushes were purchased to give the project a finishing touch. The final purchase of the semester is
the report printing services offered at the Education Resource Center. This leaves the Second Wind
Project $11.44 under the allotted spending limit of $850.00.
25
Schedule and Analysis
Table 2 - Updated Spring Schedule
Significant alterations have been made to the Second Wind project spring schedule. The system
frame assembly was moved to the first few weeks of the semester, due to the need for a frame on
which to assemble the generation system.
The generation system subassembly has been completed on schedule. Throughout system
testing, modifications have been made as necessary to alter the performance and/or integrity of the
generation subsystem. All parts of the generation subsystem have passed testing individually and as a
complete subsystem.
Though the electrical system was slightly behind schedule at the mid-term point of the
semester, significant time was spent during spring break to get the system back on schedule. The
microprocessor interface setup was moved to the beginning of the semester due to necessity of testing
sensors and other parts. Because of the importance of the microprocessor’s functionality, the charge
controller was pushed back. This is also why the motor controller was moved back slightly. Etching was
moved to the end of the semester since all electrical circuits need to be constructed and tested before
they can be etched. The motor controls have been completed and integrated and all initial system
programming has been completed. All electrical subsystems have been completed and integrated and
are undergoing testing with the final system.
All control subsystems have been constructed and integrated into the total system. Both the
tension sensor and angle sensor have been tested as subsystems and proven to function as desired. The
kite reel and slider controller have been integrated into and will be tested along with the total system.
26
Appendices
27
Appendix A:
C18 C Compiler Libraries
28
Appendix A C18 C Compiler Libraries http://ww1.microchip.com/downloads/en/devicedoc/MPLAB_C18_Libraries_51297f.pdf Appendix B:
Microchip PIC18F4550
29
Appendix B Microchip PIC18F4550 http://ww1.microchip.com/downloads/en/DeviceDoc/39632e.pdf Appendix C:
ET-PIC18F4550 USB Development Board
30
ET-PIC USB/4550
ET-PIC USB / 4550
ET-PICUSB/4550 is a PIC Board Microcontroller from
Microchip Co., Ltd. that develops PIC18F4550 Microcontroller
to be a board. The remarkable specifications of PIC18F4550 is
Module USB (Universal Serial Bus) that is widespread
communication technology today because of its high speed to
communicate data and more convenient to interface. Nowadays,
most computers have not RS-232 Port or LPT Port but most
connective components are designed to use USB Port. So, ET-PIC
USB/4550
is
the
most
suitable
device
to
develop
Microcontroller and suitable to learn and study technology of
USB communication.
Table shows specifications of PIC18F4550 Microcontroller
Specifications
PIC18F4550
Operating Frequency
Program Memory (Bytes)
Data Memory (Bytes)
Data EEPROM Memory (Bytes)
DC – 48 MHz
32768
2048
256
Interrupt Sources
I/O Ports
Timers
Capture/Compare/PWM Modules
Enhanced Capture/Compare/PWM Modules
Universal Serial Bus (USB) Module
Serial Communications
Streaming Parallel Port (SPP)
10-bit Analog-to-Digital Module
Resets (and Delays)
20
Ports A, B, C, D, E
4
1
1
1
MSSP, Enhanced USART
Yes
13 Input Channels
POR, BOR, RESET Instruction, Stack Full, Stack Underflow
(PWRT, OST), MCLR (optional), WDT
Yes
Yes
75 Instructions; 83 with Extended Instruction Set enabled
40-pin PDIP
44-pin QFN
44-pin TQFP
Programmable High/Low-Voltage Detect
Programmable Brown-out Reset
Instruction Set
Packages
-1-
ET-PIC USB/4550
ƒ General Specifications of Board
-
Use 40 PIN PIC18F4550 Microcontroller
Signal Crystal Oscillator 20 MHz(can use PLL to 48 MHz)
5 of 10 Pin I/O Port (under standard arrangement of
ETT)
1 Port of Circuit Driver RS232
1 Port of ET-CLCD to interface LCD (under standard
arrangement of ETT)
Connector ICD2 to download program and Switch
Run/Program
4 Channel LED to test Output
4 Channel Switch BUTTON to test Input
4 Channel 0-5V Voltage Generator from VR to test Module
A/D
Mini Speaker
Switching Regulator to convert DC Input to be 5V
Connector VCC and GND
-2-
ET-PIC USB/4550
Structure of Board ET-PICUSB/4550
1
2
44
3
3
5
7
6
11
8
9
12
10
19
18
15
17
16
-3-
14
13
ET-PIC USB/4550
Detailed description
x No.1 is Test I/O LED that consists of 4 LED as shown in
the circuit below.
x No.2 is 4 Test Voltage Analog that can adjust voltage
from 0V to 5V and the method to interface circuit is
shown below.
x No.3 is 4 Test signal Input from Switch and can create
signal Logic “0” (0 Volt) and Logic “1” (5 Volt) as shown
in the circuit below.
x No.4 is Test Mini Speaker that can input frequency to
make sounds as shown in the circuit below.
-4-
ET-PIC USB/4550
x No.5 is Project board.
x No.6, 7, 8, 9 and 10 are Port I/O of Microcontroller that
consists of Port A, B, C, D and E respectively. Signal of
each Port is arranged as shown in the circuit below.
RA[0..5]
RA[0]
RA[2]
1
2
3
RA[4]
NC
VCC
RB[0..7]
RB[0]
RB[2]
1
2
4
RA[1]
RA[3]
3
4
RB[1]
RB[3]
5
6
RA[5]
RB[4]
5
6
RB[5]
7
8
RB[6]
VCC
8
10
NC
GND
7
9
9
10
RB[7]
GND
RC[0..2]
RC[0]
RC[2]
1
3
4
NC
NC
5
6
7
VCC
9
RD[0..7]
RC[1]
NC
RD[0]
RD[2]
1
2
3
4
RD[4]
RD[6]
5
6
8
NC
NC
7
8
RD[5]
RD[7]
10
GND
VCC
9
10
GND
2
RE[0..2]
RE[0]
RE[2]
1
2
RE[1]
NC
3
4
NC
NC
5
6
7
8
NC
NC
VCC
9
10
GND
-5-
RD[1]
RD[3]
ET-PIC USB/4550
x No.11 is Port ET-LCD to interface with Character LCD
Display and the method to arrange signal Pin is shown in
the circuit below.
PIC18F4550
ET-CLCD
+VCC
VCC
1
2
GND
RS
3
4
EN
5
6
RW
VO
VR10K
D4
D5
RD4
RD5
D6
RD6
D7
RD7
GND
7
8
GND
GND
9
10
GND
EN
D5
11
12
D4
RS
D7
13
14
D6
RW
RD3
RD2
GND
x No.12 is PIC18F4550 Microcontroller.
x No.13 is Connector Power Supply that is designed to be
both 2-Pin CPA and DC-JACK.
x No.14 is Connector USB.
x No.15 is Jumper to select source of Power Supply.
x No.16 is Port RS232 and the method to interface circuit
is shown below.
-6-
ET-PIC USB/4550
x No.17 is Connector Download Program that is arranged
under standard of ICD2, so it can support Programmer that
is ICD2 Interface such as PICKit2, ICD2 and ETT
Programmer “ET-PGMPIC USB”.
x No.18 is Switch to select RUN mode or PROGRAM Mode. When
we shift Switch to PROG position, it will ON/OFF signal
Pin that is used to program data code into programmer and
start programming data that is designed by us instantly.
When we shift Switch to RUN position, signal Pin will be
back to be I/O and we can use it as usual.
x No.19 is RESET Switch.
Source Code Programming
The method to program Source Code into Microcontroller of
Board ET-PICUSB4550 must use external Programmer such as ICD2,
PICKit2 or ETT Programmer “ET-PGMUSB4550” and we must
interface cable Program with Connector ICD2 as shown in the
picture below.
-7-
ET-PIC USB/4550
ET- PICUSB/4550
ET-PGMPIC USB
-8-
A
B
C
D
2
1
VIN
VIN
1
USB CON
4
3
2
1
-
BRIDGE1
VUSB
22pF
100uF/25V
+
22pF
0.1uF
0.1uF
MCLR/VPP
20MHz
AC1
AC2
1
470nF
18
14
13
23
24
31
32
12
11
1
2
IN
FB
OUT
LM2575-5.0
VUSB
OSC2/CLKO/RA6
1N5819
2
4
8
9
10
30
29
28
27
22
21
20
19
17
16
15
26
25
40
39
38
37
36
35
34
33
7
6
5
4
3
2
100uF/25V
100uH
RESET
RE0/AN5
RE1/AN6
RE2/AN7
RD7/SPP7/P1D
RD6/SPP6/P1C
RD5/SPP5/P1B
RD4/SPP4
RD3/SPP3
RD2/SPP2
RD1/SPP1
RD0/SPP0
RC2/CCP1/P1A
RC1/T1OSI/CCP2*
RC0/T1OSO/T13CKI
RC7/RX/DT/SDO
RC6/TX/CK
RB7/PGD
RB6/PGC
RB5/PGM
RB4/AN11
RB3/AN9/CCP2*
RB2/AN8/INT2
RB1/INT1/SCK/SCL
RB0/AN12/INT0/SDI/SDA
OSC1/CLKIN
RC4/ D-
RC5/ D+
GND
VCC
GND
VCC
RA5/AN4/SS
RA4/T0CKI
RA3/AN3/VREF+
RA2/AN2/VREFRA1/AN1
RA0/AN0
PIC18F4550
MCLR/VPP/RE3
2
GND
3
1
ON/OFF
5
3
VREG
10k
+VCC(CPU)
RE0
RE1
RE2
RD7
RD6
RD5
RD4
RD3
RD2
RD1
RD0
RC2
RC1
RC0
RC7
RC6
RB7_CPU
RB6_CPU
RB5_CPU
RB4
RB3
RB2
RB1
RB0
RA5
RA4
RA3
RA2
RA1
RA0
3
RESET
1K
VPP
MCLR/VPP
RESET
RB5_CPU
RB5_IO
ICD2
6
5
4
3
2
1
VPP
VDD
GND
PGD
PGC
6
5
4
3
2
1
+VCC(CPU)
4
VPP
PGD
PGC
2
4
6
8
10
1
3
5
7
9
7
8
9
10
11
12
2
4
6
8
10
PORTC
1
3
5
7
9
PORTB
2
4
6
8
10
PORTA
1
3
5
7
9
PROG
RUN
+VCC(CPU)
RC0
RC2
+VCC(CPU)
RB0
RB2
RB4
RB6_IO
+VCC(CPU)
RA0
RA2
RA4
4
PGC
RB6_CPU
RB6_IO
PGD
RB7_CPU
RB7_IO
RC1
RB1
RB3
RB5_IO
RB7_IO
RA1
RA3
RA5
RD0
RD2
RD4
RD6
Z5V6
5
Date:
File:
B
Size
Title
560
10uF/25V
+VCC(CPU)
RD5
RD7
RD2
RD3
+VCC(CPU)
+VCC(CPU)
RE0
RE2
+VCC(CPU)
5
1
3
5
7
9
11
13
2
4
6
8
10
2
4
6
8
10
12
14
VUSB
CLCD (4 Bits Mode)
JUMPER
VREG
560
GND
VO
R/W
D0
D2
D4
D6
RE1
RD1
RD3
RD5
RD7
Revision
VREG
+VCC
560
RD4
RD6
10k
+VCC(CPU)
6
A
B
C
D
6
3-Apr-2007
Sheet of
C:\Documents and Settings\adminstrator\MyDrawn
Documents\My
By:
eBooks\ET-PIC USB 4550\USB-PIC2.DDB
Number
VUSB
FRB
VCC
RS
EN
D1
D3
D5
D7
1
3
5
7
9
PORTE
2
4
6
8
10
PORTD
1
3
5
7
9
3
2
1
A
B
C
D
1
1
2
1
+VCC(CPU)
10K
2
1
CON2
2
1
CON2
J1
2
1k
R2
10K
+VCC(CPU)
Q1
C547
SPEAKER
LS1
10K
+VCC(CPU)
CON2
2
1
CON2
+VCC(CPU)
D1
1N4148
CON2
2
1
2
1
CON2
CON2
2
1
CON2
SW-PB
2
1
SW-PB
10k
CON2
SW-PB
10k
2
1
SW-PB
10k
+VCC(CPU)
2
1
CON2
CON2
2
1
2
1
CON2
10k
2
CON2
2
1
10k
3
LED
3
LED
10k
10K
+VCC(CPU)
10k
LED
10k
LED
+VCC(CPU)
RS232
1
2
3
4
4
+VCC(CPU)
VCC
RX
TX
GND
1
3
5
7
9
GND
+VCC
1
3
5
7
9
0.1uF
+VCC(CPU)
4
10uF
10uF
+VCC(CPU)
2
4
6
8
10
2
4
6
8
10
13
14
8
7
15
6
2
16
MAX232
R1I
T1O
R2I
T2O
GND
V-
V+
VCC
+VCC(CPU)
R1O
T1I
R2O
T2I
C2-
C2+
C1-
C1+
1
3
5
7
9
GND
+VCC
1
3
5
7
9
5
2
4
6
8
10
2
4
6
8
10
5
Date:
File:
B
Size
Title
12
11
9
10
5
4
3
1
Number
RC7
RC6
Revision
A
B
C
D
6
3-Apr-2007
Sheet of
C:\Documents and Settings\adminstrator\MyDrawn
Documents\My
By:
eBooks\ET-PIC USB 4550\USB-PIC2.DDB
RX
TX
10uF
10uF
6
Appendix D:
LCD Screen
31
PC 1602-D
OUTLINE DIMENSION & BLOCK DIAGRAM
40.6
71.0
5.1
2.5
H1
66.0
2- 2.5
56.21
H2
4- 1.0
17.5
K
25.0
36.0 0.5
11.5
31.0
16.0
A
16.2
2.0
2- 3.0
1.6
5.5
16- 1.0
P2.54 x 15=38.1
3.9
1.8
8.0
2.5
7.0
2.5
16
75.0
2.5
80.0 0.5
COM 16
LCD PANEL
LCD
CONTROLLER
LSI
0.56
SEG 40
CONTROL SIGNALS 4
A
K
0.04
SEGMENT DRIVER
0.04
SEG 40
5.56
E
R/W
RS
Vss
Vdd
Vo
3.55
2.96
0.66
DB0
5.94
DB7
BACKLIGHT
The tolerance unless classified
0.3mm
MECHANICAL SPECIFICATION
Overall Size
View Area
Dot Size
Dot Pitch
80.0 x 36.0
66.0 x 16.2
0.56 x 0.66
0.60 x 0.70
Module
W /O B/L
EL B/L
LED B/L
ABSOLUTE MAXIMUM RATING
PIN ASSIGNMENT
Pin no.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Symbol
Vss
Vdd
Vo
RS
R/W
E
DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
A
K
H2 / H1
5.1 / 9.7
5.1 / 9.7
9.4 / 14.0
Function
Power supply(GND)
Power supply(+)
Contrast Adjust
Register select signal
Data read / write
Enable signal
Data bus line
Data bus line
Data bus line
Data bus line
Data bus line
Data bus line
Data bus line
Symbol Condition
Vdd-Vss
25oC
25oC
LCD driving supply voltage Vdd-Vee
Input voltage
25oC
Vin
Data bus line
Power supply for LED B/L (+)
Power supply for LED B/L ( )
LCM current consumption (No B/L)
Item
Supply for logic voltage
Min.
-0.3
-0.3
-0.3
Max. Units
V
7
13
V
Vdd+0.3 V
ELECTRICAL CHARACTERISTICS
Item
Symbol Condition Min. Typical Max. Units
2.7
5.5
Power supply voltage Vdd-Vss 25oC
V
Top
N W N W N W V
7.9 V
-20oC
7.1
7.5
LCD operation voltage
Backlight current consumption
Vop
Idd
LED/edge
LED/array
0oC
V
V
50oC
4.4
3.8
3.8
V
6.3 V
5.7
6
70oC
2
3
Vdd=5V
mA
VB/L=4.2V
mA
120
VB/L=4.2V
mA
25oC
4.5
4.8
5.1
4.1 6.1 4.1 6.4 4.7 6.7
LCD option: STN, TN, FSTN
Backlight Option: LED,EL Backlight feature, other Specs not available on catalog is under request.
Appendix E:
Microprocessor Code
32
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include
#include
#include
#include
#pragma
#pragma
#pragma
#pragma
#pragma
#pragma
#pragma
#pragma
#pragma
#pragma
#pragma
Wednesday, April 28, 2010 5:50 PM
<p18f4550.h>
<delays.h>
<adc.h>
<stdlib.h>
config
config
config
config
config
config
config
config
config
config
config
#define E_PIN
#define RS_PIN
FOSC = HS,FCMEN = OFF,IESO = OFF
PWRT = ON,BOR = OFF,BORV = 0
WDT = OFF
MCLRE = OFF,LPT1OSC = OFF,PBADEN = OFF,CCP2MX = OFF
STVREN = OFF,LVP = OFF,XINST = OFF,DEBUG = OFF
CP0 = OFF,CP1 = OFF,CP2 = OFF
CPB = OFF,CPD = OFF
WRT0 = OFF,WRT1 = OFF,WRT2 = OFF
WRTB = OFF,WRTC = OFF,WRTD = OFF
EBTR0 = OFF,EBTR1 = OFF,EBTR2 = OFF
EBTRB = OFF
PORTCbits.RC1
PORTCbits.RC0
/* Set E to pin C1 */
/* Set RS to pin C0 */\
void longDelay(void);
void shortDelay(void);
void superDelay(void);
void stepperDelay(void);
void PulseE(void);
void InitializeLCD(void);
void ClearLCD(void);
void PrintLCD(char text[]);
void SpecialPrintLCD(char text[],int linenum);
void StepperMotor(int steps, int dir);
int CheckAD(int linenum);
int DetermineSteps(int old_x, int old_y, int x, int y, int pref);
void main()
{
char string[33] = "Power Gen:
String Len:
";
char pwr_str[6] = "
";
char len_str[6] = "
";
int power, linenum, string_len, string_bool, reel;
int overall_steps, steps, dir, det_step, det_dir;
int old_x, old_y, horizontal, vertical;
TRISB = 0x00;
TRISA = 0xFF;
//make stepper motor pins outputs
//set port A to inputs
string_len = 0;
overall_steps = 0;
steps = 0;
dir = 1;
det_step = 1;
det_dir = 0;
InitializeLCD();
-1-
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
Wednesday, April 28, 2010 5:50 PM
longDelay();
ClearLCD();
longDelay();
PrintLCD(string);
superDelay();
//check angle sensors
linenum = 3;
old_x = CheckAD(linenum);
linenum = 4;
old_y = CheckAD(linenum);
while (1){
//check if reel motor is on
//if its on, move slider to center and check line length
reel = CheckAD(5);
if (reel == 1){
StepperMotor(overall_steps, 0); //move reel to center
overall_steps = 0; //reset total steps moved
//check string length
linenum = 6;
string_bool = CheckAD(linenum);
string_len = string_len + string_bool;
itoa(string_len,len_str);
len_str[4] = 'M';
SpecialPrintLCD(len_str,linenum);
shortDelay();
}
else{
//check power
linenum = 0;
power = CheckAD(linenum);
itoa(power,pwr_str);
//converts the ADC int value into a string
pwr_str[4] = 'W';
SpecialPrintLCD(pwr_str,linenum);
shortDelay();
//check angle sensors
linenum = 3;
horizontal = CheckAD(linenum);
linenum = 4;
vertical = CheckAD(linenum);
//determine number of steps from angles
steps = DetermineSteps(old_x, old_y, horizontal,vertical, det_step);
//determine direction from angles
dir = DetermineSteps(old_x, old_y, horizontal, vertical, det_dir);
old_x = horizontal;
old_y = vertical;
if (dir == 1)
-2-
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
Wednesday, April 28, 2010 5:50 PM
overall_steps += steps;
else
overall_steps -= steps;
//move stepper motor
StepperMotor(steps, dir);
}
}
}
/***************DELAY FUNCTIONS***************/
void longDelay(){
Delay1KTCYx(10);
}
void shortDelay(){
Delay1KTCYx(1);
}
void superDelay(){
Delay10KTCYx(255);
}
void stepperDelay(){
Delay10KTCYx(3);
}
/********************END DELAYS***************/
void PulseE() //Pulse E pin to write a command or data
{
shortDelay();
E_PIN = 1;
shortDelay();
E_PIN = 0;
shortDelay();
}
void InitializeLCD(void)
{
TRISC = 0x00; //make RS and E outputs
TRISD = 0x00; //make data outputs
PORTD = 0x00; //clear data port
PORTC = 0x00; //clear RS and E pins
longDelay();
// DISPLAY ON
RS_PIN = 0;
PORTD = 0x0C; //display on, underline off, blink off (1100)
PulseE();
// FUNCTION SET
PORTD = 0x38;
PulseE();
}
-3-
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
Wednesday, April 28, 2010 5:50 PM
void ClearLCD(void) //clears LCD screen and sets display address
{
// CLEAR SCREEN
RS_PIN = 0;
PORTD = 0x01;
PulseE();
// SET ADDRESS
PORTD = 0x80;
PulseE();
}
void PrintLCD(char text[]) //output a string character by character
{
int i;
for (i=0; text[i]!='\0'; i++)
{
if (i==16) // move to second line
{
RS_PIN = 0;
PORTD = 0xC0;
PulseE();
}
RS_PIN = 1;
PORTD = text[i];
PulseE();
}
}
void SpecialPrintLCD(char text[], int linenum) //output a string character by character
{
int i;
char space = ' ';
RS_PIN = 0;
if (linenum == 0) // move to spot on first line
{
PORTD = 0x8B;
}
if (linenum == 6) // move spot on second line
{
PORTD = 0xCB;
}
PulseE();
for (i=0; i<5; i++)
{
if (text[i] == '\0')
text[i] = ' ';
RS_PIN = 1;
PORTD = text[i];
PulseE();
}
}
-4-
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
Wednesday, April 28, 2010 5:50 PM
void StepperMotor(int steps, int dir)
{
int i;
if (dir == 1)
{
for(i=0;i<steps;i++) //forward
{
PORTB = 0x0C;
stepperDelay();
PORTB = 0x06;
stepperDelay();
PORTB = 0x03;
stepperDelay();
PORTB = 0x09;
stepperDelay();
}
}
else
{
for(i=0;i<steps;i++) //reverse
{
PORTB = 0x09;
stepperDelay();
PORTB = 0x03;
stepperDelay();
PORTB = 0x06;
stepperDelay();
PORTB = 0x0C;
stepperDelay();
}
}
}
int CheckAD(int linenum){
int voltage, current, power, string_len, string_len2, string_cnt;
int tension, horizontal, vertical, reel;
OpenADC( ADC_FOSC_32 &
ADC_RIGHT_JUST &
ADC_12_TAD,
ADC_CH0 & //voltage
ADC_CH1 & //current
ADC_CH2 & //tension
ADC_CH3 & //angle (hor)
ADC_CH4 & //angle (vert)
ADC_CH5 & //reel on/off
ADC_CH6 & //string length
ADC_CH7 & //string length 2
ADC_VREFPLUS_VDD &
ADC_VREFMINUS_VSS &
ADC_INT_OFF, 7 );
Delay1KTCYx( 1 );
-5-
// Delay for 50 T cycles
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
Wednesday, April 28, 2010 5:50 PM
if (linenum == 0){
//Read and compute power value//
SetChanADC( ADC_CH0 );
Delay10TCYx(5);
ConvertADC( );
while( BusyADC ( ) );
voltage = ReadADC( );
voltage = (voltage-512)/17;
SetChanADC( ADC_CH1 );
Delay10TCYx(5);
ConvertADC();
while( BusyADC( ) );
current = ReadADC( );
current = (current-512)/17;
//current = 7;
// Start conversion
// Wait for completion of ADC
// Read voltage value
// Start conversion
// Wait for completion of ADC
// Read current value
CloseADC( );
power = voltage * current;
return power;
}
else if (linenum == 2){
//Read tension sensor value//
SetChanADC( ADC_CH2 );
Delay10TCYx(5);
ConvertADC();
while( BusyADC( ) );
tension = ReadADC( );
CloseADC( );
// Start conversion
// Wait for completion of ADC
// Read tension value
return tension;
}
else if (linenum == 3){
//Read horizontal angle sensor values//
SetChanADC( ADC_CH3 );
Delay10TCYx(5);
ConvertADC();
// Start conversion
while( BusyADC( ) );
// Wait for completion of ADC
horizontal = ReadADC( );
// Read horizontal angle value
CloseADC( );
return horizontal;
}
else if (linenum == 4){
//Read vertical angle sensor values//
SetChanADC( ADC_CH4 );
Delay10TCYx(5);
ConvertADC();
// Start conversion
while( BusyADC( ) );
// Wait for completion of ADC
vertical = ReadADC( );
// Read vertical angle value
CloseADC( );
return vertical;
}
else if (linenum == 5){
//Read reel motor sensor values//
-6-
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
SetChanADC( ADC_CH5 );
Delay10TCYx(5);
ConvertADC();
while( BusyADC( ) );
reel = ReadADC( );
CloseADC( );
Wednesday, April 28, 2010 5:50 PM
// Start conversion
// Wait for completion of ADC
// Read reel motor value
if (reel < 700)
reel = 0;
else
reel = 1;
return reel;
}
else if (linenum == 6){
//Read string length sensor value//
SetChanADC( ADC_CH6 );
Delay10TCYx(5);
ConvertADC();
// Start conversion
while( BusyADC( ) );
// Wait for completion of ADC
string_len = ReadADC( );
// Read string length value
SetChanADC( ADC_CH7 );
Delay10TCYx(5);
ConvertADC();
while( BusyADC( ) );
string_len2 = ReadADC( );
CloseADC( );
// Start conversion
// Wait for completion of ADC
// Read string length value
if (string_len > 900)
string_cnt = 1;
else if (string_len2 > 900)
string_cnt = -1;
else
string_cnt = 0;
return string_cnt;
}
}
int DetermineSteps(int old_x, int old_y, int x, int y, int pref){
int steps, dir;
float slope;
slope = (float)(old_y - y)/(old_x - x);
if (y > 315 && y < 470){
if (x > 340)
{
if (x > 435 || y > 425){ //right bottom corner
steps = 30; // turn around
dir = 0;
//if (y > old_y && slope < 0){
//if moving to the right
// steps = 30;
// dir = 1;
-7-
C:\Users\John\Desktop\Final Kite Code\KITE_CODE.c
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
Wednesday, April 28, 2010 5:50 PM
//}
}
else{
steps = 0;
dir = 0;
}
}
else{
if(x < 203 || y > 425){ //left half circle
steps = 30;
dir = 1;
//if (y > old_y && slope > 0){
//go right
// steps = 30;
// dir = 0;
//}
}
else{
steps = 0;
dir = 0;
}
}
}
else{
steps = 0;
dir = 0;
}
if (pref == 1){
return steps;
}
else{
return dir;
}
}
-8-
Appendix F:
57BYGH207 Stepper Motor
33
Appendix G:
ULN2003A – Stepper Motor Driver
34
ULN200xA
ULN200xD1
Seven darlington array
Features
■
Seven darlingtons per package
■
Output current 500 mA per driver (600 mA
peak)
■
Output voltage 50 V
■
Integrated suppression diodes for inductive
loads
■
Outputs can be paralleled for higher current
■
TTL/CMOS/PMOS/DTL Compatible inputs
■
Inputs pinned opposite outputs to simplify
layout
Description
The ULN2001, ULN2002, ULN2003 and ULN
2004 are high voltage, high current darlington
arrays each containing seven open collector
darlington pairs with common emitters. Each
channel rated at 500 mA and can withstand peak
currents of 600 mA. Suppression diodes are
included for inductive load driving and the inputs
are pinned opposite the outputs to simplify board
layout.
DIP-16
SO-16
(Narrow)
These versatile devices are useful for driving a
wide range of loads including solenoids, relays
DC motors, LED displays filament lamps, thermal
printheads and high power buffers.
The ULN2001A/2002A/2003A and 2004A are
supplied in 16 pin plastic DIP packages with a
copper leadframe to reduce thermal resistance.
They are available also in small outline package
(SO-16) as ULN2001D1/2002D1/2003D1/
2004D1.
The versions interface to all common logic
families:
– ULN2001 (general purpose, DTL, TTL,
PMOS, CMOS)
– ULN2002 (14-25V PMOS)
– ULN2003 (5V TTL, CMOS)
– ULN2004 (6-15V CMOS, PMOS)
Table 1.
Device summary
Order code
August 2007
ULN2001A
ULN2001D1013TR
ULN2002A
ULN2002D1013TR
ULN2003A
ULN2003D1013TR
ULN2004A
ULN2004D1013TR
Rev. 6
1/14
www.st.com
14
ULN200xA - ULN200xD1
1
Diagram
Figure 1.
Schematic diagram
ULN2001 (each driver)
ULN2003 (each driver)
Diagram
ULN2002 (each driver)
ULN2004 (each driver)
3/14
Pin configuration
2
Pin configuration
Figure 2.
Pin connections (top view)
4/14
ULN200xA - ULN200xD1
ULN200xA - ULN200xD1
Maximum ratings
3
Maximum ratings
Table 2.
Absolute maximum ratings
Symbol
Parameter
Value
Unit
VO
Output voltage
50
V
VI
Input voltage (for ULN2002A/D - 2003A/D - 2004A/D)
30
V
IC
Continuous collector current
500
mA
IB
Continuous base current
25
mA
TA
Operating ambient temperature range
- 20 to 85
°C
Storage temperature range
- 55 to 150
°C
150
°C
TSTG
TJ
Table 3.
Symbol
RthJA
Junction temperature
Thermal data
Parameter
Thermal resistance junction-ambient, Max.
DIP-16
SO-16
Unit
70
120
° C/W
5/14
Electrical characteristics
ULN200xA - ULN200xD1
4
Electrical characteristics
Table 4.
Electrical characteristics
(TA = 25°C unless otherwise specified).
Symbol
ICEX
Parameter
Output leakage current
Collector-emitter saturation
VCE(SAT)
voltage (Figure 5.)
II(ON)
Input current (Figure 6.)
Test condition
Min.
VI(ON)
50
TA = 70°C, VCE= 50 V (Figure 3.)
100
TA = 70°C for ULN2002, VCE= 50 V,
VI = 6 V (Figure 4.)
500
TA = 70°C for ULN2002, VCE= 50 V,
VI = 1V (Figure 4.)
500
IC = 100 mA, IB = 250 μA
0.9
1.1
IC = 200 mA, IB= 350 μA
1.1
1.3
IC = 350 mA, IB= 500 μA
1.3
1.6
for ULN2002, VI = 17 V
0.82
1.25
for ULN2003, VI = 3.85 V
0.93
1.35
for ULN2004, VI = 5 V
0.35
0.5
1
1.45
Input current (Figure 7.)
TA = 70°C, IC = 500 μA
Input voltage (Figure 8.)
VCE= 2 V, for ULN2002
IC = 300 mA
for ULN2003
IC = 200 mA
IC = 250 mA
IC = 300 mA
for ULN2004
IC = 125 mA
IC = 200 mA
IC = 275 mA
IC = 350 mA
hFE
DC Forward current gain
(Figure 5.)
CI
Input capacitance
tPLH
Turn-on delay time
tPHL
Max.
VCE = 50 V, (Figure 3.)
for ULN2001, VCE = 2 V,
IC = 350 mA
Unit
μA
V
mA
VI = 12 V
II(OFF)
Typ.
50
65
μA
13
2.4
2.7
3
V
5
6
7
8
1000
15
25
pF
0.5 VI to 0.5 VO
0.25
1
μs
Turn-off delay time
0.5 VI to 0.5 VO
0.25
1
μs
Clamp diode leakage current
(Figure 9.)
VR = 50 V
50
IR
TA = 70°C, VR = 50 V
100
VF
Clamp diode forward voltage
(Figure 10.)
6/14
IF = 350 mA
μA
1.7
2
V
Appendix H:
20TQ – 20A Schottky Rectifier
35
20TQ...PbF Series
Vishay High Power Products
Schottky Rectifier, 20 A
FEATURES
• 150 °C TJ operation
Base
cathode
2
TO-220AC
3
Anode
1
Cathode
Pb-free
• Low forward voltage drop
Available
• High frequency operation
RoHS*
• High purity, high temperature epoxy
encapsulation for enhanced mechanical
strength and moisture resistance
COMPLIANT
• Guard ring for enhanced ruggedness and long term
reliability
• Lead (Pb)-free (“PbF” suffix)
• Designed and qualified for industrial level
DESCRIPTION
PRODUCT SUMMARY
IF(AV)
20 A
VR
35 to 45 V
The 20TQ...PbF Schottky rectifier series has been optimized
for very low forward voltage drop, with moderate leakage.
The proprietary barrier technology allows for reliable
operation up to 150 °C junction temperature. Typical
applications are in switching power supplies, converters,
freewheeling diodes, and reverse battery protection.
MAJOR RATINGS AND CHARACTERISTICS
SYMBOL
CHARACTERISTICS
VALUES
UNITS
20
A
35 to 45
V
tp = 5 μs sine
1800
A
20 Apk, TJ = 125 °C
0.51
V
- 55 to 150
°C
IF(AV)
Rectangular waveform
VRRM
Range
IFSM
VF
TJ
Range
VOLTAGE RATINGS
PARAMETER
Maximum DC reverse voltage
Maximum working peak reverse voltage
SYMBOL
VR
VRWM
20TQ035PbF
20TQ040PbF
20TQ045PbF
UNITS
35
40
45
V
ABSOLUTE MAXIMUM RATINGS
PARAMETER
SYMBOL
TEST CONDITIONS
VALUES
UNITS
Maximum average forward current
See fig. 5
IF(AV)
Maximum peak one cycle
non-repetitive surge current
See fig. 7
IFSM
Non-repetitive avalanche energy
EAS
TJ = 25 °C, IAS = 4 A, L = 3.4 mH
27
mJ
IAR
Current decaying linearly to zero in 1 μs
Frequency limited by TJ maximum VA = 1.5 x VR typical
4
A
Repetitive avalanche current
50 % duty cycle at TC = 116 °C, rectangular waveform
5 μs sine or 3 μs rect. pulse
10 ms sine or 6 ms rect. pulse
Following any rated load
condition and with rated
VRRM applied
20
1800
A
400
* Pb containing terminations are not RoHS compliant, exemptions may apply
Document Number: 94167
Revision: 05-Jun-08
For technical questions, contact: [email protected]
www.vishay.com
1
20TQ...PbF Series
Vishay High Power Products
Schottky Rectifier, 20 A
ELECTRICAL SPECIFICATIONS
PARAMETER
SYMBOL
TEST CONDITIONS
20 A
Maximum forward voltage drop
VFM (1)
See fig. 1
TJ = 25 °C
40 A
20 A
TJ = 125 °C
40 A
Maximum reverse leakage curent
See fig. 2
IRM (1)
TJ = 25 °C
VR = Rated VR
TJ = 125 °C
Maximum junction capacitance
CT
VR = 5 VDC, (test signal range 100 kHz to 1 MHz) 25 °C
Typical series inductance
LS
Measured lead to lead 5 mm from package body
Maximum voltage rate of change
dV/dt
Rated VR
VALUES
UNITS
0.57
0.73
V
0.51
0.67
2.7
mA
105
1400
pF
8.0
nH
10 000
V/μs
VALUES
UNITS
- 55 to 150
°C
Note
(1) Pulse width < 300 μs, duty cycle < 2 %
THERMAL - MECHANICAL SPECIFICATIONS
PARAMETER
SYMBOL
Maximum junction and
storage temperature range
TEST CONDITIONS
TJ, TStg
Maximum thermal resistance,
junction to case
RthJC
DC operation
See fig. 4
1.50
Typical thermal resistance,
case to heatsink
RthCS
Mounting surface, smooth and greased
0.50
2
g
0.07
oz.
minimum
6 (5)
kgf ·cm
maximum
12 (10)
(lbf ·in)
Approximate weight
Mounting torque
°C/W
20TQ035
Marking device
Case style TO-220AC
20TQ040
20TQ045
www.vishay.com
2
For technical questions, contact: [email protected]
Document Number: 94167
Revision: 05-Jun-08
Appendix I:
FlexiForce Resistive Force Sensor
36
FlexiForce
®
A201 Standard Force & Load Sensors
Actual size of sensor
Sensing
area
Physical Properties
Thickness
Length
Width
Sensing Area
Connector
Substrate
0.008" (0.208 mm)
7.75" (197 mm),
optional trimmed lengths: 6” (152 mm), 4” (102 mm), or 2” (51mm)
0.55" (14 mm)
0.375" diameter (9.53 mm)
3-pin Male Square Pin (center pin is inactive)
Polyester (ex: Mylar)
Standard Force Ranges (as tested with circuit shown below)
Recommended Circuit
0 - 1 lb. (4.4 N)
0 - 25 lb. (110 N)
0 - 100 lb. (440 N)*
In order to measure forces above 100 lb
(up to 1000 lb), apply a lower drive
voltage and reduce the resistance of the
feedback resistor (1kΩ min.)
Evaluation Conditions
Typical Performance
Linearity (Error)
Repeatability
Hysteresis
Drift
Response Time
±3%
±2.5% of full scale
< 4.5 % of full scale
< 5% per logarithmic time scale
< 5 μsec
Operating Temperature
Output Change/Degree F
15°F - 140°F (-9°C - 60°C)*
±0.2%/ºF (0.36%/ºC)
Line drawn from 0 to 50% load
Conditioned sensor, 80% of full force applied
Conditioned sensor, 80% of full force applied
Constant load of 25 lb (111 N)
Impact load, output recorded on oscilloscope
Time required for the sensor to respond to an input force
*For loads less than 10 lbs, the operating temperature can be increased to 165°F (74°C)
Tekscan, Inc. 307 West First Street South Boston, MA 02127-1309 USA tel: 617.464.4500/800.248..3669 fax: 617.464.4266
e-mail: [email protected]
URL: www.tekscan.com
Rev H_040809
Appendix J:
Angle Sensor Preliminary Testing
37
Use of Potentiometers for Measuring Kite Location in Spherical Coordinates Caleb Meeks 11/4/09 Abstract: Potentiometers can be used to convert angular movement into useful electrical information thereby turning a regular potentiometer into an angle sensor. The feasibility of using potentiometers to measure angle was tested and conclusions were drawn based on the results. List of Symbols: Θ, Theta refers to the angle measured vertically from the x,z plane. Theta is used as a coordinate in spherical coordinate system. Φ, Phi refers to the angle measured horizontally along the x,z plane. Phi is used as a coordinate in spherical coordinate system. Introduction: In order to use a kite in the Second Wind kite wind generator project it must be controlled by a computer to fly in such a way as to produce power. To control a kite its position and velocity vector must be known. In order to sense the position and velocity vector of the kite a potentiometer based sensor is proposed. This sensor would convert the resistance change in two potentiometers to find the Θ and Φ coordinates for use in knowing the kite’s location in spherical coordinates. The radius R is assumed to be the kit string length which is assumed to be known due to the constant nature of the string length or an assumed sensor measuring the string length. Approach: A test platform was constructed using two potentiometers, various lego parts, and two protractors such that the Θ and Φ angles of a single angle arm could be measured. This test platform is depicted in Figure 1 below. Figure 1: Test platform Samples of the Φ potentiometer’s resistances at the angles 0,10,20,30 on until 180 degrees were taken, recorded, and graphed. Similarly, samples of the Θ potentiometer were taken at angles 0,10,20,30 on until 110 degrees were taken, recorded, and graphed. Trend lines for each graph were made. Using the equations generated by the trend lines a program was written in lab view to convert the measured resistance to an angle meter in lab view. Results: The resulting graphs are shown in Chart 1 and Chart 2 below. The results of the program written in lab view for Phi are shown in Figure 2 and the results for Theta are in Figure 3 below. Figure 2: Results for Theta Figure 3: Results for Phi Discussion: From Charts 1 and 2 we can see that the resistance change with angle is in fact linear. This fact is confirmed by the angles indicated in the lab view program output seen in Figures 2 and 3. The angles read using the program were close if not identical to those observed on the test platform. The pros of this method of measuring the Θ and Φ are that it is relatively inexpensive and easy to construct. Possible cons of this method are that is it mechanically intensive (could have problems with dust, rust, etc), and that there could be a problem with drift depending on the quality of the potentiometer used. Conclusion: This is a very good potential method of measuring the angles of the kit strings provided dust, rust and drift are considered in the design. 
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement