stabilization table for accurately balancing a loose element william brown phillip chen eric...
TRANSCRIPT
![Page 1: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/1.jpg)
STABLEStabilization Table for Accurately Balancing a Loose Element
William BrownPhillip Chen
Eric HuckenpahlerLaura HughesBrian IbelingChris Johnson 1
Critical Design ReviewDecember 13th, 2012
![Page 2: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/2.jpg)
Project Overview
Develop a robust control system that is capable of balancing a ball at a plate’s origin.
Allow users to control the plate and ball’s position with various devices.
Integrate interactive games.
Capable of fully autonomous operation.
Operate from AC wall power.2
![Page 3: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/3.jpg)
3
System Block Diagram
![Page 4: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/4.jpg)
4
Progress Since PDR
Constructed physical model to demonstrate plate and motor interaction.
Communicated and translated touchscreen data to motor rotation.
![Page 5: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/5.jpg)
5
Mechanical System & Motor Interface
![Page 6: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/6.jpg)
Mechanical Design
From PDR:
6
![Page 7: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/7.jpg)
Mechanical Design
7
![Page 8: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/8.jpg)
Motor
The motor:
•Sparkfun•4.8 to 6.0V•Analog actuation•Torque around 6kg*cm•Small Footprint•$12•180 degrees of movement
![Page 9: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/9.jpg)
Motor
The motor:
•Hitech•4.8 to 6.0V•Small Footprint•Digital actuation•Torque around 343 oz-in•$70•90 degrees of movement
![Page 10: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/10.jpg)
Pivot
We could have used: Ball bearing
Fiberglass rod
Shaved down hinges
Rotating pivot
![Page 11: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/11.jpg)
Pivot
Or, this nail.
![Page 12: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/12.jpg)
Arms
Fiberglass is finally appropriate Rigidity issues may force us into
aluminum arms
![Page 13: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/13.jpg)
Joints
Binding posts were chosen over shoulder bolts Cheaper and easier to find Works for both arm-to-arm and arm-to-
plate connections
![Page 14: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/14.jpg)
Motor-to-Arm
Bolted it down with the included screws Acrylic base needed to secure screws Motor arm was imperfect
![Page 15: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/15.jpg)
Arm-to-Plate
15
We could have used: Ball bearings
Pneumatics
Gears
Magnets
![Page 16: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/16.jpg)
Arm-to-Plate
Or, a small hinge:
![Page 17: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/17.jpg)
Mechanical Design: Pending
There are still questions to answer How will the second motor affect
rotational stability? The motion is software limited, but
should we physically limit this as well?
![Page 18: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/18.jpg)
18
Power Design
![Page 19: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/19.jpg)
19
Power Design
We are strongly considering the use of a computer PSU to supply the power to our project
![Page 20: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/20.jpg)
20
Power Design
Why? Integrated/compact design Efficiency Safety Very high quality control▪ No fried controllers!
![Page 21: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/21.jpg)
21
Power Design
PSU supplies 12V, 5V, and 3.3V lines
We will need to create a converter circuit on PCB to supply 6V to motors
PCB will be used for power distribution
![Page 22: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/22.jpg)
22
Control System
![Page 23: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/23.jpg)
23
Control System
The current control system is fairly theoretical
Testing will determine whether or not a different approach to controlling the ball will be necessary
![Page 24: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/24.jpg)
24
Control System
Control based off of second-order physical system
Forces on the ball were linearized with respect to angle to simplify system
Using a line of best fit of to gave a good approximation with .
Max difference between real and estimated accelerations is
![Page 25: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/25.jpg)
25
Control System
![Page 26: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/26.jpg)
26
Control System
Factoring in rotational inertia, the position of the ball can be modeled as
Sanity check: A constant angle input does cause a constant acceleration
![Page 27: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/27.jpg)
27
Control System
For the first design, a simple case was chosen.
A function that can control this was found to be
![Page 28: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/28.jpg)
28
Control System: Simulink Model
![Page 29: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/29.jpg)
29
Control System
![Page 30: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/30.jpg)
30
Control System
Possible issues: This model is highly theoretical. It
remains to be seen if all forms of disturbances can be rejected▪ If problems arise, a more robust approach will
be needed Microcontrollers don’t work in the
Laplace domain!
![Page 31: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/31.jpg)
31
Plate Touchscreen Sensor
![Page 32: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/32.jpg)
32
Touchscreen Accuracy
Large touchscreen wasn’t accurate enough
![Page 33: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/33.jpg)
33
Touchscreen Accuracy
Smaller touchscreen showed smoother results
![Page 34: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/34.jpg)
34
Analysis
We need a more accurate large touchscreen that will still react to the ball’s weight when the touchscreen is at an angle
![Page 35: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/35.jpg)
35
Software System
![Page 36: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/36.jpg)
36
Software System
Simple main file Initialize peripherals Main loop▪ Check state and act accordingly
Header file for each peripheral More modular Keeps code readable
![Page 37: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/37.jpg)
37
Software Interrupts
Primarily soft interrupts Best for an embedded environment Easy to set flags which will determine
states
Some hard interrupts Good for emergency shutoff and other
time-critical tasks
![Page 38: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/38.jpg)
38
Microcontroller Software Interface
![Page 39: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/39.jpg)
39
Hardware-Software Interaction & Microcontroller Usage
Hardware interaction with software, requires careful planning
![Page 40: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/40.jpg)
General hardware Interaction
Wifi/Eth.
Joystick
Cell Phone
Computer
Local Interface
Bluetooth
PIC32 Micro
UART
UART
USBADCDI/O
DI/OUART
User Input &
ball feedback
UART
Hardware HW Action
Debugging Hardware
PMPLCD screen & 7-segment debug
display
Touch Screen DI/OADC
PWM Motor Control
![Page 41: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/41.jpg)
41
On-chip hardware
Important PIC32 built in peripherals 5 UART channels 1x Parallel Buss 16 Channel ADC 5x 16 bit Digital Timers 8x DMA channels
![Page 42: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/42.jpg)
42
Ethernet/Wifi
Wireless chip: 1x UART and 2x DMA channels to prevent the processor from having to wait for data.
Wifi/Eth.
Cell Phone
Computer
PIC32 MicroUART
User Input &
ball feedback
![Page 43: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/43.jpg)
43
Debugging Port
1x UART and 2x DMA channels to keep the processor from having to wait for data to arrive.
PIC32 Micro UART
Debugging Hardware
![Page 44: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/44.jpg)
44
Bluetooth
1x UART and 2x DMA channels to prevent the processor from having to wait to acquire data.
Cell Phone Bluetooth PIC32 MicroUART
User Input &
ball feedback
![Page 45: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/45.jpg)
45
Joystick
Flexibility in choice On-board USB 2.0 On-The-Go host
support with dedicated DMA channels
Extra DI/O and ADC pins for a game port Joystick.
![Page 46: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/46.jpg)
46
Other Forms of User Input Digital push buttons. Should be
triggered by interrupts to provide highest response rate to user & button functionality
Local Interface
PIC32 Micro
DI/OUART
User Input &
ball feedback
![Page 47: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/47.jpg)
47
LCD Screen
Fastest operation uses PMP bus to control parallel port enabled devices.
PIC32 Micro PMPLCD screen & 7-segment debug
display
![Page 48: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/48.jpg)
48
Table Control
2x PWM outputs, one for each motor, each require a 32bit timer to output slow enough.
Requires 4 of the 5 16bit timers.
Needs to be updated at 50Hz to maximize control systems abilities.
PIC32 Micro PWM Table Control
![Page 49: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/49.jpg)
49
Touch Screen
2x ADC pins Need to be triggered to sample at a steady
frequency in order to calculate velocity. Will likely involve the use of the 5th timer.
2x DI/O pins Needs to update at highest rate TBD.
Hopefully 100-200Hz
PIC32 Micro
Touch Screen DI/OADC
User Input &
ball feedback
![Page 50: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/50.jpg)
50
Peripheral Utilization
Hardware Number Available
Number Used
UART 5 3
Parallel Buss 1 1
ADC’s 16 2-4
16 bit digital timers 5 5
General Purpose DMA channels
8 6
General DI/O Lots +-12
Knowing this information, need to carefully program our processor otherwise system will fail to meet hard deadlines.
![Page 51: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/51.jpg)
51
Approximate Pin Usage
Using a good number of the available I/O pins as well.
Hardware Number Pins/Feature
Number Used
UART 2 6
Parallel Buss 11 11
ADC’s 1 2-4
16 bit digital timers 1 2 required PWM signals
General DI/O Plenty +-12
Total: +-35 pins
![Page 52: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/52.jpg)
52
Software System: Scheduling
![Page 53: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/53.jpg)
53
Software System: Scheduling
Need some scheduler to deal with multiple demands made on processor at a time:
Various demands should only be ignored so long before being addressed
![Page 54: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/54.jpg)
54
Software System: Scheduling
If only one demand is made at a time, scheduling is simple: Deal with the demand and wait for
another one
Problems arise when multiple demands arrive at the same time or arrive during another demand: How should we pick which demand to
address first?
![Page 55: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/55.jpg)
55
Software System: Scheduling
Simple Priority Based Scheduling: Easy to code and debug Provides minimal control over scheduling
and ignores deadlines completely—can lead to starvation Why
am I always last?
![Page 56: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/56.jpg)
56
Software System: Scheduling
Variable Priority Based Scheduling: Some difficulty debugging Provides extensive but unintuitive
control over scheduling and can indirectly address soft deadlines Sometimes the
world appreciates me
as I deserve
![Page 57: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/57.jpg)
57
Software System: Scheduling
Time Slice Based Scheduling: Provides extensive and intuitive control over
scheduling and predictable deadlines
Difficult to code and debug
Increased context switching inevitably leads to poorer performance
Poor design could lead to insufficient processor time being given to demands
![Page 58: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/58.jpg)
58
Software System: Scheduling
More complex systems yield better results but are more difficult to implement
Use simpler systems to begin with and then upgrade to more complex system if simpler system is insufficient for our purposes
![Page 59: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/59.jpg)
59
User Interface
![Page 60: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/60.jpg)
User Interface
User
Interaction User
Interface
Control System
DesiredPosition
![Page 61: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/61.jpg)
User Interface
61
User
Parse Input (joystick)
Control System
DesiredPosition
Parse Input (tablet/pho
ne)
Physical
State
Input
Game Mode
Standard Mode
Art Mode
Interface
![Page 62: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/62.jpg)
62
User Interface: Software Architecture
Multiple methods of manipulating and viewing the same control system: Model View Controller
![Page 63: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/63.jpg)
63
System Risks
![Page 64: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/64.jpg)
64
Risks: Mechanical System
Ball’s speed and weight too great Non-steel ball with higher frictional
coefficient
Dual motor interaction and locking Ball joints rather than door hinges Redesign motor arms
![Page 65: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/65.jpg)
65
Risks: Software System
Parallel processing for touchscreen, UI devices, and motor actuation Optimize code Split responsibilities over 2 processors
Noisy PWM signal for motors Filter signal output Split responsibilities over 2 processors
![Page 66: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/66.jpg)
66
Risks: Control System
Unable to meet deadlines for data analysis and plate actuation Adjust control code to predict ball behavior
Optimize code for faster runtime operation
Faster processor
Split responsibilities over 2 processors
![Page 67: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/67.jpg)
67
Division of Labor
P = Primary S = Secondary
Task Brian Ibeling Laura Hughes William Brown Phillip Chen Eric Huckenpahler Chris Johnson
Motor Control S P S Mechanical/
Structure P S S
Power Board S S P
ADC Board S S P Command and Data Handling S P S S
TouchScreen Control S S P S
User Interface Control S S P
User Interface Device Comm S S P
Documentation P S S S S S
![Page 68: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/68.jpg)
68
Estimated BudgetItem Unit Price Quantity Unit Total
MechanicalServomotor $77 4 $308Aluminum (0.5” x 0.5” x 6”) $20 4 $80Plexi-glass Plate $40 1 $40External Case $50 1 $50Steel Ball $10 1 $10
ElectricalMicrochip PIC32 Development Board $70 2 SampledPower PCB Creation $45 3 $135AC AC Transformer $20 3 $606V Regulator $15 3 $453.3V Regulator $15 3 $45Touchscreen Sensor $50 1 $50Joystick $20 1 $20LEDs $0.15 100 $15Breakout ADC Board Creation $45 3 $135Touchscreen Driver $7 2 $14Misc. Dev Components (Resistors, Caps, headers) $50 1 $50
Net Estimated Budget$1057
![Page 69: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/69.jpg)
69
Schedule
![Page 70: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/70.jpg)
70
Milestone 1: Week 7
Structure fully developed Basic control algorithm implemented Rev 1 Power PCB developed and
tested Testing plans implemented
![Page 71: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/71.jpg)
71
Milestone 2: Week 12
System integration complete Fine control algorithm actuating Rev 2 (3 if needed) Power PCB
complete Aesthetics fully developed Documentation complete
![Page 72: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/72.jpg)
72
Design Expo
Capcakes = capstone + cupcakes Fully functional system Games implemented and available
to guests Aesthetically pleasing system and
presentation
![Page 73: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/73.jpg)
73
Questions?
![Page 74: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/74.jpg)
74
Extra Slides
![Page 75: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/75.jpg)
75
Block Diagram
![Page 76: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/76.jpg)
Control System: Basic Control Mode
Ball resting at origin
Touchscreen senses ball movement
Ball’s offset and speed calculated
Motors and plate
actuated
Ball Centered?
No
Yes
76
![Page 77: Stabilization Table for Accurately Balancing a Loose Element William Brown Phillip Chen Eric Huckenpahler Laura Hughes Brian Ibeling Chris Johnson 1 Critical](https://reader036.vdocuments.us/reader036/viewer/2022062518/56649da65503460f94a90d7e/html5/thumbnails/77.jpg)
Control System: User Interface
Ball resting at initial position
UI device sends data
Plate tilt or ball offset calculated
Motors and plate
actuated
77
Ball at final
position?No Yes
Complete