Presentation is loading. Please wait.

Presentation is loading. Please wait.

DOUBLE ARM JUGGLING SYSTEM

Similar presentations


Presentation on theme: "DOUBLE ARM JUGGLING SYSTEM"— Presentation transcript:

1 DOUBLE ARM JUGGLING SYSTEM
Final Presentation ECSE-4962 Control Systems Design Group Members: John Kua Trinell Ball Linda Rivera

2 Presentation Outline Introduction Objectives System Specifications
Plan of Action System Integration Physical Design Modeling Control System Camera Development Results Future Improvements

3 Introduction Goal: To design and develop a juggling system mechanism
Pivoted double-ended arm Able to handle two or more ping pong balls

4 Introduction Motivation Previous Project  CSD Team 7 of 2004
Single arm Open loop Research Project by Dr. D. E. Koditschek – University of Michigan Tossed pucks vertically with single padded arm Uses camera for feedback

5 Objectives Develop mechanism to simultaneously juggle two or more balls Execute toss and catch operations quickly Provide feedback on arm’s state Provide feedback on balls’ state Predict trajectory of the ball Design control system Learn from toss/catch errors Compensate for disturbances in flight path of the balls

6 Specifications Flight Profile: x: 0.75m, t: 1s
Pan: Range of Motion – ±10° Max Accel: 34.9 rad/s2 Overshoot: <5% (pos) Settling Time: <0.1 sec Steady State Error: ±1° (±6.5mm) Tilt: Range of Motion – ±30° Max Accel: rad/s2 Launch (Max) Velocity: 5.4 m/s Overshoot: <5% (pos), <1% (vel) Can track 2Hz sinusoidal input Pan 20 degrees in 0.2 seconds Reach 5.4m/s at tip in 30 degree displacement (assuming radius arm)

7 Plan of Action Model Development Model Verification Parameter Analysis
Build System Develop Camera Subsystem X-Y Tracking Z Tracking Trajectory Prediction Pan/Tilt Control Systems Design Open Loop 1-D Testing Open Loop 2-D Open Loop Two Ball Juggle Closed Loop 2-D Closed Loop Vision Feedback Controller Design Plan of Action

8 Vision Processing Laptop
System Integration Vision Processing Laptop Parallel Port NI cRIO Controller

9 Code Structure (Vision)
Video Stream In Frame Grab Image Processing Data Processing Pan Correction Calculation Tilt Correction Calculation

10 Code Structure (cRIO) FPGA Host Encoder Input User Interface
Velocity Estimation Controller Parallel Port Input

11 Physical Design - Additions
Camera Mounting Overall System Mounting

12 Other Physical Modifications
Shaft Mounting Cable Extension Parallel Port

13 Challenges - Net Design Process
Fabric Foil Cones

14 Final Net Design Tossing Catching

15 Modeling & Simulation System: Trajectory: Projectile Motion, Drag
Treat as Decoupled Links Parameters: Motor Torque, Gear Ratios, Inertial Loads, Shaft Oscillations Nonlinearities: Friction, Backlash, Noise Linearize Model for Control Design Trajectory: Projectile Motion, Drag

16 Model Development Lagrange-Euler Model Single Joint

17 Simulink Model - Nonlinear

18 Friction Identification
Identify Viscous and Coulomb Friction Apply constant torque and measure steady state velocity Automate with LabVIEW Process data with MATLAB

19 Other Parameters Inertia/Mass Shaft Spring Constant
Calculated with SolidWorks Shaft Spring Constant Possible cause of oscillations Experimentally measured Found to be very stiff - k=4600N/m

20 Trajectory Calculation
Drag force on the ball Trajectory deviates from standard projectile motion equation Differential Equation Simulink ODE Solver

21 Control System Tilt and Pan Axis: PID controller θt θt θp θp
Controller Tilt Plant Tilt θt Shaft Dynamics θp Controller Pan Plant Pan θp Vision p,t Ball Dynamics

22 Control Systems Development
Two methods for designing controllers used MATLAB rltool (Pole Placement method) 1. Obtain transfer function (System Parameters) 2. Define design constraints, such as rise time and settling time 3. Run simulation to test PID block MATLAB (simulink) Kp = Proportional Ki = Integral Kd = Derivative

23 Non-Linear Simulation Step Response
rltool controller PID controller Overshoot: 28.7% Overshoot: 0%

24

25 Camera Development Image Processing Data Verification
Trajectory Prediction Pan Tilt

26 Image Processing Challenges Overcome
Script Original Image Threshold Circle Detection Challenges Overcome Blur  Change shutter speed 1/100 sec Extra circles  Set black background Circle # Center X Center Y Radius 1 231 98 9

27 Data Verification Rolling down the ramp experiment Actual Height(cm)
Vision Height(cm) Error 49.993 1.4753 0.0407 1.3968 2.8498 4.084 4.9749 9.2457

28 Trajectory Prediction
Pan Linear Curve Fit

29 Trajectory Prediction
Tilt X Data Averaging Radius > 7 pixels Y x

30 Parallel Port Standard networking VIs slow
FPGA can read digital inputs quickly Write to Parallel Port to communicate with NI 9401 Digital I/O Lines Packet Start (1) Data Ready (1) Data (4)

31 Parallel Port Protocol
Toggle Packet Start Write Data Type (Pan, Tilt) to Bus Toggle Data Ready Write Data to Bus Packet Start Data Ready Data Type Data Type Data Type Data

32 Results Catching Accuracy Tossing Accuracy
30 tosses: catches made 83.3% Can not catch overshoot, or undershoot beyond constraints Tossing Accuracy While setting ball on tossing ring, too much force can not be exerted otherwise launch initial conditions change Belts are too tight  Non-linear friction Loosening belts can lead to slipping (trade off)

33 Controller Response - Pan
Overshoot 0% (5%) Settling Time 0.07s (0.1s) Steady State Error 0.29° (±1°) Rise Time 0.1s

34 Controller Response - Tilt
Overshoot 16% (5%) Settling Time 0.3s (0.1s) Steady State Error 0.34° (±1°) Rise Time 0.08s

35 Video Play Video Here

36 Future Improvements Implement Trajectory Generation
Better Controller (LQR) Improve Height Estimation Add second camera Increase camera resolution (processing power) Better way to transfer torque from motor to pan tilt joints other than existing belts Juggling System response not fast enough Nets need dual-use optimization


Download ppt "DOUBLE ARM JUGGLING SYSTEM"

Similar presentations


Ads by Google