User:Rhorton4549/enes100/Wind Tunnel

Link to project Wizard Jr team page.

Give instructor top 3 project choice list
Provided instructor with my top three choices for next project which where Wind Tunnel, Helicopter, and HAM. While I was initially going to stay with HAM as I was the only person who wanted to do the Wind Tunnel, I made the decision and approached the instructor to work on the Wind Tunnel project by myself.

Write problem statement
Design the basic layout and decide what instruments need to be included in the final build of the Wind Tunnel.

Assign Task1
Research wind tunnel design and what they are designed to help test for. Determine if case fans and power supply will be sufficient for project.

Compare actual work done to Task1
Tested a 460W power supply to see if it functioned properly and to learn how to have it power on without the need for a computer. In addition, I also tested 14 case fans to see if they were functional and to test their stress on the power supply.

Week1 Narrative
To use a power supply without a PC, you need to bridge the ATX power connector using either a paper clip or there are cheap power supply starters that are safer that do the same job.

Photos detailing using the paperclip method:











Testing the power supply.

Testing the Fans
Testing the Scythe fans.

Testing the Rosewill fans.

Wind Tunnel Design Research
I conducted a web search using Google with the terms: Wind Tunnel Build Guide. 3.21 million results popped up but only some of them promising. One of the first was the NASA site for the Glenn Research Center. The actual site that was in the Google search was for Build Your Own Wind Tunnel. This has links to both web pages and PDFs detailing various designs, for K-12 students, of different tunnels with differing size and applications.

The next promising site was to MakeProjects.com which had a complete guide to a small scale wind tunnel using only a household fan for the wind. The last options looked at was from ScienceBuddies.org which had a design closer to the full-scale model that this project is pushing towards. This one is broken down into sections focusing on the main parts of a wind tunnel. I will be reviewing these at a later date to better understand their design and which may best assist me in design and construction.

Assign Task2
Locate and install Arduino programming software and try to control the speed of a fan via voltage control.

Compare actual work done to Task2
Web search for "control fan with Arudino", "fan speed control with Arduino", "Arudino Uno RPM monitor", and other variations found results that required complicated wiring or were designed for more than what I was seeking. Mr. Foerster suggested new search parameter: pwm esc arduino. First search result provided best possible solutions to controlling RC motor.

Week2 Narrative
I took home an Arduino Uno and a RC servo w/ propeller that Mr. Foerster says is a highly coveted item by many other project groups so I am extremely luck/fortunate to be given it for the project. A web search based on the servo type, Power 32 Motor, found the product page which contained information about necessary voltage and current for operation. This servo requires at minimum, 2.40A @ 10V for idling with a continuous current of 42A w/ a max burst of 60A for normal operation. There is nothing in the engineering lab that can provide that much current and after sorting throug h the assortment of power bricks in the back there was only a few that provided over 1.5A and only one that I found that could do 2A @ 12V.

Connected to the RC servo is a 60-Amp Pro Switch-Mode BEC Brushless ESC. ESC stands for Electronic Speed Control which has a power connector and a 3-pin connector coming from it that would in a model aircraft lead to electronics that receive directions from a remote control.

To control the RC servo, I was given a Arduino UNO. Having no idea how to use an Arduino, I did a web search for Arduino Uno and ended up at Arduino.cc which appears to be the main hub for everything Arduino with drivers, programming applications, example sketches, and forums. I downloaded the current software version, 0022, installed the sketch software and went through a short process to install the drivers.

Driver Installation
To install drivers for the Arduino UNO required first connecting the board to my PC via USB which resulted in a popup message saying that my PC was installing drivers. This however, resulted in failure as Windows could not locate drivers for the Arduino. Apparently older models like the Arduino Duemilanove were supported in Windows with drivers easily found and loaded. After this failed installation, I went to the control panel, then clicked on System & Security, then System, and finally Device Manager. The Arduino was listed under "Other Devices" with a yellow caution symbol next to the device name. I chose to update the driver, and select the driver from one on my PC instead of letting Windows search for one. The drivers installed without issue other than the warning that Windows could not verify the source of these drivers. After installation, the board was recognized and was visible in the Arduino programming software.

Week2 Peer Review
Go to each team mates weekly summary wiki page. Read their activities and narrative. Then go the associated discussion page. Say something positive on this page. Try some constructive criticism. Add your name and a signature ~ by entering four tildes in a row to create a time and date stamp. Create a new category if another team mate has already commented here.

Assign Task3
Attempt to control the R/C servo via Arduino with the Servo library in the Arduino programming language.

Compare actual work done to Task3
R/C servos can not be controlled via PWM, Pulse-width modulation, like computer case fans. Instead, it is a servo that uses PPM, Pulse-position modulation. The servo library must be used and web searches for pwm esc arduino come up with several possibilities for programming code. Connecting the ESC(Electronic Speed Control) to the Arduino Uno requires connecting the 3-pin connector coming from the ESC to a GND pin and Pin 9 on the board. This was difficult in that the wires connecting to the 3-pin do not have any indication as to what they do. One wire provides power, another ground, and the third should be for the control signal.

ESC 3-pin Connector

To provide power to the ESC and thus the R/C servo, this power supply was used. It's specifications do not match up with those of the servo but provided enough to get the ESC to respond.

Possible GND and Control Wire Connection: Connection

Running some of the programs listed on this page produced no results which may have been the result of lack of power or incorrect connection to the ESC or the Arduino.

Week3 Narrative
Class was missed on Monday.

With the lack of results from the work over the weekend, the battery was found that is compatible with the ESC and R/C servo to use as the power source and the code used by a previous group was given to use as a basis. This code was used successfully to control multiple ESCs and video showed this in action. The project folder was copied to an external hard disk for examination later and hopefully, incorporation into the current project.

Assign Task4
Examine the code used by previous groups and use and/or modify it to work with the R/C servo and ESC.

Compare actual work done to Task4
I examined the code that was developed by a previous group that used multiple ESCs and servos. There were six different sets of code for different scenarios. The ones that I focused on were esc and esc_easy. esc_easy was focused on finding the pulse width for the ESC. Since the ESC used in the project is based on PPM (Pulse-Position Modulation) versus the PWM (Pulse-Width Modulation) pins used on the Arduino Uno, the code was designed to interpret the signals from the ESC and translate them into a pulse width that could be later used to control the ESC and thus the servo.

The code was loaded into the Arduino software and compiled to verify there were no problems then loaded onto the Arduino Uno board. At this time, the board was wired to the ESC with two connections. One was a black wire connecting the GND on the digital side of the Uno to the GND wire coming from the ESC. The second wire connected to pin 9 on the board to the control wire on the ESC. After pressing the reset button on the board, the serial monitor on the computer was waiting for an input speed. In entered the value 65, the system started, and set a signal to the ESC to set the speed at 65. The ESC responded saying that it has instead set the speed at 53 but the servo did not respond at all. This was repeated for both lower and higher values with responses saying that the speed was set from 0 all the way to 56. While there seemed to be communication with the ESC, something was not translating that information to the servo and making it move.

The only time the servo appeared to move at all was when the power source, a battery that was compatible with both the servo and ESC, was connected. This resulted in both a long beep from the ESC followed by three short beeps, but also the servo twitching three times.

Week4 Narrative


After the failures of getting the initial ESC and motor combo to function with Arduino, I brought this to Mr. Foerster explaining the difficulty I was having with getting the software and hardware to work together. After coming to the hypothesis that it could be a hardware issue as there was information being relayed between the ESC and the computer but not getting to the servo, I was given a different ESC and brushless motor. The power requirements for this combo is much more modest versus the previous one and can run off the power brick I was initially going to use.

The ESC used for this combination does not have plugs that would allow an easy connection between it and the motor as in the previous combination. Instead, it was suggested that I use butt splicers that allowed me to insert one ESC cable into one end of the splicer and the motor end into the other. While the motor side was snug and did not come out easily, the ESC wires were too small in diameter to stay in. Using a set of pliers, I flattened the end with the ESC connector to the point that the cable could not be removed. While intending to test this configuration on Monday or Tuesday, I forgot the Arduino Uno and necessary cables in my rush to leave and had to wait until Wednesday to retrieve them.

Wednesday night, after retrieving the Arduino Uno board and three wires, I proceeded to wire the ESC to the Arduino and spliced the power wires from the power brick to the power wires coming from the ESC. In order to verify that the power leads were connected correctly, the power brick was plugged in and if the light on the brick remained a steady green, then the connection was correct. Had the light blinked faintly green, then the connections were reversed and this was the case initially, requiring me to unplug the brick and switch the connections. After this correction, I opened the Arduino software and loaded up the esc_easy program which was designed to simply find the pulse width necessary to operate the ESC and thus the servo. The program was loaded onto the board and then the serial monitor was opened. Under the original settings, entering a value resulted in no immediate response. However, after adjusting one of the parameter variables to a lower value of 30, loading the program onto the board, and opening the serial monitor again and entering a value, the motor immediately started up almost scaring the crap out of me as there had been no response from previous tests including the first combination. Here are two videos of the successful tests.

Complete Project Page
Follow the "project done" format.

Start Next Project Week0 activities
During this week you will perform the week0 activities of the next project.