Wind Tunnel/Howard Community College/Fall 2011/550 Wizard Jr
Problem Statement
editUsing an Arduino, control the speed of a R/C servo so that speed can be manual entered.
Team Members
editSummary
editPoster
editStory
editInitially, during the weekend prior to week 1, I was under the belief that I could use computer case fans in an array and control them using a external controller panel in conjunction with a PC power supply as the source of wind in the wind tunnel. Testing was conducted to ensure that the supply could be used without a computer and that the fans intending to be used were functional. After discussing this concept with Mr. Foerster, it was suggested that I try and control that fans with an Arduino for more precise/accurate control over the windspeed that would be in the tunnel. In addition, I conducted research into wind tunnel design for ideas on how to build one and what the overall specifications should be.
Web searches for ways to control a case fan with an Arduino resulted in methods that required a lot of wiring for just a single fan and resulted in abandoning using case fans for the wind source. I was later provided with a powerful R/C motor and a electronic speed control (ESC), that apparently are highly coveted items, to use as a replacement wind source. In addition, I also took with me an Arduino Uno board which had a USB port for PC connectivity. A web search for arduino programming software brought me to the arduino main page which had the software and drivers necessary to interact with the board. It also had a forum where I would later find necessary code for controlling a servo.
Installing the software and drivers was relatively straight forward and initially, I attempted to only control an LED by using the example sketch blink which made the LED rapidly turn on and off and could be changed to increase or decrease the rate of change. I also played with the fade example sketch. After having some basic understanding of the programming language, which appeared to be similar to C/C++, I wired up the Arduino to the ESC in what I believed to be the correct way and attempted to use the Servo example sketch Sweep which should have had the motor turning but nothing happened.
Later web searches turned up better sketches that were designed for servos in conjunction with an ESC. With the same wiring as before, I attempted several of these sketches but to no avail. While there appeared to be communication between the ESC and the Arduino, the commands were not getting to the motor. Initially thinking that it was a power issue, I swapped out the power brick I had been using for the battery that was designed for use with this ESC/Motor. Unfortunately, this did not alleviate the problem with none of the programs working. As a result, I returned the motor and ESC indicating that something might be wrong with the hardware. I received a second set that was much simpler than the first and this one proved fruitful.
After using butt splices to attach the ESC and motor together, I went back to using the brick power supply and tied the wire ends together. Using the esc_easy sketch, a single change to the code made the motor immediately respond to commands. This hopefully indicated that the sketches were fine and that the problem lied in the hardware of the first motor and ESC.
Decision List
edit- Use PC Case Fans for wind source and PC Power Supply
- Use array of case fans in design
- Use Arduino to control fan speed
- Use R/C servo and ESC as wind source
- Use arduino to send commands to servo via ESC
- Change out current combo for smaller set due to problems.
Material List
edit- Apple iPhone 4 32GB - for taking pictures and video
- Scythe SY1225SL12SH 120mm Case Fan x 11
- Rosewill RFA-120-BL 120mm Case Fan x 6
- Sunbeam Rheobus Extreme Fan Controller
- COOLER MASTER eXtreme Power Plus 460W Power Supply
- Arduino Uno
- Power 32 Brushless Outrunner Motor
- 60-Amp Pro ESC
- 11.1V Tenergy 2100mAh LIPO Battery Pack
- Hacker Brushless A10-13L
- Thunderbird-9 Brushless Speed Controller
Software List
editTime
edit- Time Spent on Research: 6:30
- Time Spent on Testing Fans and Power Supply: 1:30
- Time Spent on Arduino Programming: 3:00
- Time Spent on Testing ESC and R/C Servo Set 1: 4:30
- Time Spent on Testing ESC and R/C Servo Set 2: 2:00
- Total Time: 17:30 (hours:minutes)
Tutorials
editFor information on Arduino software, hardware, sketches, and installation instructions, everything one needs is at Arduino.cc.
Wiring the ESC to the arduino board is fairly straightforward. Looking at the 3-pin connector coming from the ESC, one wire is the ground (most likely black or brown in color), one is for voltage (most likely the red wire), and the third is for the control signal that will allow the arduino to send commands to the ESC (most likely orange or some other color other than red or black/brown). The ground wire needs to be connected to the GND on the digital side of the board and the control wire to whichever digital pin is being used in the sketch.
Next Steps
editWith the smaller R/C servo and ESC working with the Arduino now, a small scale wind tunnel may be built to test different designs in order to maximize airflow, wind speed, or to accommodate different measuring instruments.