Download presentation
Presentation is loading. Please wait.
1
ECE 445: Robotic Microphone Stand
Alejandro Gomez and Dennis Yuan University of Illinois at Urbana-Champaign Fall 2012
2
Outline Introduction Requirements Design Overview Control Scheme
3
Introduction Objective: Create a prototype robotic microphone stand for Pogo Studios Benefits: Precision control of microphone position Protection of personnel from potentially dangerous recording environment Enhance recording environment
4
Requirements Wireless control Movement along x,y,z
Store and recall positions Be less expensive that similar products
5
Power supply and voltage regulation Computer and control interface
Design Overview Power supply and voltage regulation Stepper motors Motor control circuit Microcontroller Sensors Bluetooth TX/RX Power Information Computer and control interface
6
Power Supply AC to DC power supply 5V output, 35W
Directly powers the microcontroller, motor controllers, and voltage regulators
7
12V Voltage Regulation Motor voltage requires 8-35V
Using TI LM A switching regulator in a boost configuration Challenges: burned out 3 samples due to not having large enough capacitors
8
12V Voltage Regulation
9
12V Voltage Regulation Had to change from original 2.7V regulator
Significant voltage spikes and transients
10
3.3V Voltage Regulation Bluetooth module requires 3.3V
Using TL497A 300mA switching regulator in step-down configuration
11
3.3V Voltage Regulation
12
3.3V Voltage Regulation Used the 3.3V regulated output from Arduino Uno for the demo
13
Motors Stepper Motors 200 steps/revolution 1in/rev lead screws
14
Motor Control IC Simplifies control signals to just STEP and DIR
Contains active current limiting into the motor Problems: burned out our original chips, control signals were shorting
15
Motor Control IC
16
Bluetooth Communication
Using the RN-41 with integrated antenna Relays data to and from microcontroller Original design included using just the chip instead of it mounted on breakout board. Igor suggested we just use the breakout board version, since we had tested it already.
17
Bluetooth Communication
18
Bluetooth Communication
“1” = x31 = “a” = x61 = “A” = x41 = “!” = x21 = Automatic discovery mode SPP (Serial Port Profile) ASCII is pushed from least significant bit to most significant bit 1 1 1 Hardset to 9600 baud rate
19
Bump Sensors Used to detect limits of movement range
Output goes straight to microcontroller NC/Vcc NO/GND Common
20
Microcontroller ATMega328 on Arduino Uno 5V to 3.3V circuit for TX/RX
3.3V source from arduino board used to power bluetooth in final demo In Out 5V 3.296V 0V .216V Voltage drop of schottky diode
21
Microcontroller
22
PCB Fabrication Utilized ECE Service Shop Eagle 6.2.0 Lite
Total of 2 revisions Had to make a second revision for changing 2.7V regulator to 12V regulator
23
PCB Fabrication Isolation of 60mils, had to make own footprint in Eagle for the bluetooth part
24
PCB Fabrication 3 separate power regulators, 1 for each motor for simplicity, testing modularity, and ability to use lower power parts. Had to make own footprint for the motor controller breakout board.
25
Control
26
Motor Movement Dependent on user key presses, to move in the x, y, z plane. motorSteps(steps,delay,x,y,z) Also moves to a certain input location, and a stored location. goToLocation(x,y,z) Moves to the origin each time the program is started. goToOrigin()
27
motorSteps(steps,delay,x,y,z)
Moves motors a specific number of steps Delay of microseconds after HIGH and after LOW signals are sent to the motor x, y, and z can be either 1, -1, or 0 to move each motor clockwise, counterclockwise, or keep it still.
28
Precision The lead screws move 1in per revolution.
We move 50 steps per key press, which gives us 1/5 in precision
29
Storing Position When key ‘c’ is pressed, listens to a key from ‘0’ to ‘9’ to be pressed, then stores position memory. To return to a stored position, press a key from ‘0’ to ‘9’.
30
Keyboard Inputs j, l -> +/- x axis i, k -> +/- y axis
q, a -> +/- z axis c then 0 to 9 -> store location 0 to 9 -> restore location g then coordinates -> go to location r -> reset position to origin
31
Feedback x, y, and z location are displayed on the computer screen
Stored locations are also displayed
32
Bumpers Program is always listening if any bumper is pressed
When a bumper is pressed it stops all movement Resets location in software in case there were any previous errors in movement
33
Simulation Used JavaScript to create a simulation of the movement of the robot Programed it keeping in mind Arduino functions and programing structure (setup(), loop(), digitalWrite(), etc.)
34
Met Requirements? Wireless control – yes, using bluetooth
Movement along x,y,z – yes Store and recall positions – yes, in memory Be less expensive than similar products – yes, production budget < $300
35
Improvements Add pan/tilt functionality Fix 3.3V regulation
Incorporate microcontroller on PCB Grease lead-screws Make enclosure for PCBs Incorporate JavaScript plugin for GUI More robust music algorithm, to play arbitrary songs easily
36
Special Thanks Igor Fedorov Mark Smart and the ECE Service Shop
Scott McDonald and the ECE Machine Shop
37
Stepper Motor Music! Robot noise when moving is dependent on speed of the motors We can map the frequency of a musical note to delay between steps. delay=500000/f motorSteps(steps, 2040, 0, 0, 1); // B 246 Hz motorSteps(steps, 2273, 0, 0, 1); // A 220 Hz motorSteps(steps, 2551, 0, 0, 1); // G 196 Hz …
38
Stepper Motor Music!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.