Hands-on Lab. Damped Compound Pendulum System ID (Experimental and Simulation) L Bar length m d Pivot to CG distance m m Mass of pendulum kg

Similar documents
Inverted Pendulum System

Laboratory handouts, ME 340

CALIFORNIA INSTITUTE OF TECHNOLOGY Control and Dynamical Systems

Acceleration of Gravity

ES205 Analysis and Design of Engineering Systems: Lab 1: An Introductory Tutorial: Getting Started with SIMULINK

ECE-320: Linear Control Systems Homework 8. 1) For one of the rectilinear systems in lab, I found the following state variable representations:

PID Control. Objectives

ECE3510 Lab #5 PID Control

Quanser NI-ELVIS Trainer (QNET) Series: QNET Experiment #02: DC Motor Position Control. DC Motor Control Trainer (DCMCT) Student Manual

Hands-on Lab 3. System Identification with Experimentally Acquired Data

Laboratory handout 5 Mode shapes and resonance

FEEDBACK CONTROL SYSTEMS

Mechatronic System Case Study: Rotary Inverted Pendulum Dynamic System Investigation

State Feedback Controller for Position Control of a Flexible Link

Digital Pendulum Control Experiments

Laboratory Instruction-Record Pages

Lab 11 Simple Harmonic Motion A study of the kind of motion that results from the force applied to an object by a spring

Positioning Servo Design Example

Updated 2013 (Mathematica Version) M1.1. Lab M1: The Simple Pendulum

Static and Kinetic Friction

The Damped Pendulum. Physics 211 Lab 3 3/18/2016

Design of Quadratic Dynamic Matrix Control for Driven Pendulum System

Experiment 81 - Design of a Feedback Control System

Harmonic Motion. Mass on a Spring. Physics 231: General Physics I Lab 6 Mar. 11, Goals:

Introduction. Pre-Lab Questions: Physics 1CL PERIODIC MOTION - PART II Spring 2009

Lab Partner(s) TA Initials (on completion) EXPERIMENT 7: ANGULAR KINEMATICS AND TORQUE

Simple Harmonic Motion - MBL

Rotary Motion Servo Plant: SRV02. Rotary Experiment #11: 1-DOF Torsion. 1-DOF Torsion Position Control using QuaRC. Student Manual

Laboratory 11 Control Systems Laboratory ECE3557. State Feedback Controller for Position Control of a Flexible Joint

Double Inverted Pendulum (DBIP)

Bangladesh University of Engineering and Technology. EEE 402: Control System I Laboratory

PC1141 Physics I Compound Pendulum

EXPERIMENT 7: ANGULAR KINEMATICS AND TORQUE (V_3)

Feedback Control of Linear SISO systems. Process Dynamics and Control

Introduction. Pre-Lab Questions: Physics 1CL PERIODIC MOTION - PART II Fall 2009

ECSE 4962 Control Systems Design. A Brief Tutorial on Control Design

Linear Motion with Constant Acceleration

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Physics Spring Experiment 5: Faraday s Law

Physics 1020 Experiment 6. Equilibrium of a Rigid Body

THE CONSERVATION OF ENERGY - PENDULUM -

Example: Modeling DC Motor Position Physical Setup System Equations Design Requirements MATLAB Representation and Open-Loop Response

Part I. Two Force-ometers : The Spring Scale and The Force Probe

Lab #5: Newton s First Law

2.004 Dynamics and Control II Spring 2008

PHY 221 Lab 3 Vectors and Motion in 1 and 2 Dimensions

QNET Experiment #04: Inverted Pendulum Control. Rotary Pendulum (ROTPEN) Inverted Pendulum Trainer. Instructor Manual

Angle estimation using gyros and accelerometers

Work and Energy. computer masses (200 g and 500 g) If the force is constant and parallel to the object s path, work can be calculated using

MECHANICS AND CONTROL OF PUMPING A PLAYGROUND SWING AND ROBOTIC IMPLEMENTATION ABSTRACT INTRODUCTION NOMENCLATURE

9.1 Harmonic Motion. Motion in cycles. linear motion - motion that goes from one place to another without repeating.

Lab M1: The Simple Pendulum

Simple Harmonic Motion Test Tuesday 11/7

Introduction to Feedback Control

Static Equilibrium. Torque - also known as moment of force. (Serway Sec. 11.1) Rigid objects in static equilibrium. (Serway Secs. 12.1, 12.

Lab 5: Harmonic Oscillations and Damping

Homework 2: Kinematics and Dynamics of Particles Due Friday Feb 12, Pressurized tank

Inverted Pendulum: State-Space Methods for Controller Design

Angle estimation using gyros and accelerometers

PHY 111L Activity 2 Introduction to Kinematics

PreLab 2 - Simple Harmonic Motion: Pendulum (adapted from PASCO- PS-2826 Manual)

MAE106 Laboratory Exercises Lab # 6 - Vibrating systems

Applications of Newton's Laws

LAB 4: FORCE AND MOTION

SIMPLE PENDULUM AND PROPERTIES OF SIMPLE HARMONIC MOTION

Physics 4C Simple Harmonic Motion PhET Lab

Joseph D. Galloway II Robotics and Motion Laboratory, Dept. of Mechanical Engineering San Antonio, TX, USA Gerardo Aaron Rios

Systems Analysis and Control

Rotational Motion. Figure 1: Torsional harmonic oscillator. The locations of the rotor and fiber are indicated.

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Mechanical Engineering Dynamics and Control II Fall 2007

Forces and Newton s Second Law

TIphysics.com. Physics. Friction: Your Friend or Your Enemy? ID: By Irina Lyublinskaya

Oscillator Homework Problems

(Refer Slide Time: 00:32)

The Pendulum. Goals and Introduction

Force and Motion 20 N. Force: Net Force on 2 kg mass = N. Net Force on 3 kg mass = = N. Motion: Mass Accel. of 2 kg mass = = kg m/s 2.

Laboratory 7: Charging and Discharging a Capacitor Prelab

Lab 4 Motion in One-Dimension Part 2: Position, Velocity and Acceleration Graphically and Statistically (pre-requisite Lab3)

Mechanical Resonance and Chaos

Static and Kinetic Friction

AP Physics. Harmonic Motion. Multiple Choice. Test E

Science Olympiad. Machines. Roger Demos

Unit 7: Oscillations

Appendix A MoReRT Controllers Design Demo Software

Laboratory 2: Motion in One Dimension: Velocity

Physics 326 Lab 6 10/18/04 DAMPED SIMPLE HARMONIC MOTION

Experiment 5. Simple Harmonic Motion

Lab 10: Harmonic Motion and the Pendulum

Lab # 4 Time Response Analysis

Chapter 14: Periodic motion

Lab 11 - Free, Damped, and Forced Oscillations

Contents. Contents. Contents

SRV02-Series Rotary Experiment # 7. Rotary Inverted Pendulum. Student Handout

Department of Electrical and Computer Engineering. EE461: Digital Control - Lab Manual

Root Locus. Motivation Sketching Root Locus Examples. School of Mechanical Engineering Purdue University. ME375 Root Locus - 1

CYBER EXPLORATION LABORATORY EXPERIMENTS

Static and Kinetic Friction

Project 3: Pendulum. Physics 2300 Spring 2018 Lab partner

Work and Energy. This sum can be determined graphically as the area under the plot of force vs. distance. 1

Introduction to Simple Harmonic Motion

A body is displaced from equilibrium. State the two conditions necessary for the body to execute simple harmonic motion

Transcription:

Hands-on Lab Damped Compound Pendulum System ID (Experimental and Simulation) Preamble: c d dt d L Bar length m d Pivot to CG distance m m Mass of pendulum kg L L m g L Sketched above is a damped compound pendulum; instead of a string with a mass at the end, the pendulum is made from a solid (compound) material. Intuitively, the time response of the pendulum s angle would be a decaying oscillation. Due to damping, the angle would eventually decay to θ 0 degrees. Because of the oscillation, this is known dynamically, as a second-order system. Suppose one attached a motorized propeller at the end of the damped compound pendulum, as shown in the above drawing. When the motor is actuated, the propeller spins and thus generates lift. The damped compound pendulum will move and eventually reach a steady-state angle. This angle defines an equilibrium state; the lift balances the gravitational force acting on the damped compound pendulum.

How quickly the damped compound pendulum reaches steady-state depends on the propeller s velocity. To reach steady-state quickly (i.e. fast rise time), one can command the propeller to spin very fast. However, this could lead to a lot of oscillations (i.e. a stability issue). To reduce oscillations, one can command the propeller to spin slowly (i.e. good stability). But then the damped compound pendulum would take a long time to reach steady-state (i.e. slow rise time). General Objective: Design a controller that regulates the motorized propeller so that the pendulum reaches a desired angle within a desired rise time and desired oscillation (i.e. overshoot). PID control will be implemented to achieve such goals. Specific Objective: Towards controller design, one must first understand the system s dynamics. This lab will employ an angle sensor to capture the damped compound pendulum s dynamics. This process is called system identification which reveals the system s characteristic equation and hence the system s inherent stability (i.e. poles) and performance (i.e. zeros). Do First! See Build Instructions to construct a LEGO-based motorized damped compound pendulum. The motorized propeller is driven by a DC motor driver (MTRMX-Nx). This motor driver is sold by a 3 rd -party vendor (Mindsensors) and is NXT-compatible. The pendulum s state is measured by an angle sensor made by HiTechnic. Concept 1 System Identification (Experimental) 1-1: Measuring Pendulum angle Step 1: After assembling your motorized damped compound pendulum, interface the NXT brick to the angle sensor. See photo below for reference. Fig. 1-1A: The HiTechnic angle sensor is connected to the NXT brick on Port 1

Step 2: Enter, compile and execute hellohtanglesensor1_0.nxc. Observe NXT screen. The HiTechnic angle sensor uses I2C to interface with an NXT brick. HiTechnic s angle sensor reports measurements as an integer ranging from 0 to 359. Thus, this sensor has only 1-degree accuracy. // DESC: HiTechnic Angle Sensor on Brick Port 1. Display sensor data on LCD // VERS: 1.0: Damped Compound Pendulum. CCW from rest yields +'ve angle // and CW from rest yields -'ve angle #define ANGLE S1 // HiTechnic Angle Sensor in Brick Port 1 task main() { int angle; int pendulumangle; // By default, with one's eyes on angle sensor axle, // CW rotation increases from 0 to 359 degrees and // CCW rotation decreases from 359 downwards... // For damped compound pendulum at rest position i.e. hanging straight down // one wants CCW to increase from 0 towards 90 degrees... // Hence define variable pendulumangle; long acc_angle; int rpm; bool orangebuttonpushed; SetSensorLowspeed(ANGLE); Wait(100); TextOut (0, LCD_LINE2, "Calibrate:" ); TextOut (0, LCD_LINE4, "Set zero angle" ); TextOut (0, LCD_LINE6, "Orange Btn: starts" ); do { orangebuttonpushed = ButtonPressed(BTNCENTER, FALSE); Wait(100); // delay needed for button debounce // Nothing until Orange button pushed } while(!orangebuttonpushed); ResetSensorHTAngle(ANGLE, HTANGLE_MODE_CALIBRATE); // Angle should be zero now... // ButtonPressed(BTNCENTER, TRUE); // reset to false ClearScreen(); TextOut (0, LCD_LINE2, "Running..." ); TextOut (0, LCD_LINE4, "Orange Btn: Quit" ); pendulumangle = 0; // i.e. damped compound pendulum hanging down at rest

do { Wait(100); ReadSensorHTAngle(ANGLE, angle, acc_angle, rpm); if(angle >= 180 && angle <= 360) // pendulum rotating CCW, so pendulumangle increases positively from 0 pendulumangle = 360 - angle; if(angle >=0 && angle < 180) // pendlum rotation CW, so pendulumangle increases negatively from 0 pendulumangle = -angle; TextOut(0, LCD_LINE8, FormatNum("Angle = %3d deg", pendulumangle)); orangebuttonpushed = ButtonPressed(BTNCENTER, FALSE); } while(!orangebuttonpushed); // Orange button pressed, so command 0 speed to motor ClearScreen(); TextOut(0, LCD_LINE2, "Quitting", false); PlaySound(SOUND_LOW_BEEP); // Beep to signal quitting Wait(SEC_2); } // end main Code Explanation: The HiTechnic angle sensor is connected to the NXT brick through Port 1. As such, a variable ANGLE is defined as S1. The angle sensor is then initialized with a SetSensorLowSpeed (ANGLE) statement. A few variables are declared to report raw angle, calculate pendulum angle and detect the state of the NXT orange button. The ResetSensorHTAngle(ANKLE, HTANGLE_MODE_CALIBRATE) statement will read the sensor and set the value to 0. In other words, this allows one to calibrate the angle. Suppose the following reference frame is desired: Let 0 to be the angle when the pendulum is motionless (i.e. hanging down); counter-clockwise angles yield 0 180; and clockwise motions are 180 0. To variable pendulumangle is used to reflect such a reference frame. A do-while loop reads the angle sensor using a ReadSensorHTAngle(ANGLE, angle, acc_angle, rpm) statement, calculates pendulumangle, and displays the value on the LCD. The loop exits when the NXT s orange button is pushed. Exercise 1.1 Modify hellohtanglesensor1_0.nxc to reflect the following reference frame: 0 degrees is when the pendulum is horizontal (i.e. 3 o clock position), 90 degrees is 6 o clock and 180 degrees is at 9 o clock.

1-2: Capturing Pendulum Data and identifying characteristic equation Step 1: Download and compile hellohtanglesensorsavetofile1_0.nxc The code hellohtanglesensorsavetofile1_0.nxc measures elapsed time and writes captured angle data to a file named myangledata.csv. Step 2: Execute hellohtanglesensorsavetofile1_0.nxc. Calibrate the pendulum such that 0 degrees is when the pendulum is hanging down motionless (i.e. 6 o clock position). Then, rotate the pendulum counter-clockwise to the 3 o clock position (i.e. about 90-degrees in our original reference frame). Step 3: From Bricx NXT Explorer, copy the capture angle data (myangledata.csv) to your computer. Use Excel to line plot a graph of angle [deg] (y-axis) over time [sec] (x-axis). Fig 1-2A shows an example Fig 1-2A: Time plot of pendulum angle in degrees (left). A close up of the time plot (right) Fig 1-2A (left) is a classic example of a 2 nd order dynamic system. At around 3 seconds, the pendulum is moved from 0-degrees to about 90-degress and then released. At about 16 seconds, the pendulum is motionless, settling at 0-degrees. Theory: One can recall that a 2 nd order dynamic system is characterized by the ratio of subsequent peaks and the period. All second order systems have the following form: 2 0 (1) Where there are 2 relationships: 2 1 1 2 1 (2A) (2B) Fig 1-2A (right) is a close up of the time response and identifies the following: 87, 62, and 1.42 sec. Substituting these values into (2A), one has:

87 62 0.34 2 1 0.34 1 2 Solving for one has 0.11 1 4 or 0.11 0.11 39.5 or ultimately: 39.61 0.11 or. (3A) Substituting the damping ratio into (2B), yields the following 2 1.42 1 0.053 4.42 0.999 or. (3B) Substituting (3A) and (3B) into the general 2 nd order dynamic equation (1) yields 2 0.053 4.42 4.42 (4) 0.47 19.5 0 Recall, that the general solution for (4) is given by 2 2 nt 1 A2 sin n ( ) nt t e A t c 1 cos 1 (5A) The complex roots are given by s 2 1,2 n j n 1 (5B) Substituting the values from (3A) and (3B) into (5B), that for the system captured in Fig 1-2A:, 0.053 4.42 1, 0.23 4.42 0.997, 0.23 4.41 (6) From (6) one sees the real part of the complex roots is negative. Thus (5A) yields an exponentially decaying response; small values mean long settling times. The amplitude of oscillation is governed by imaginary values of the complex roots.

Exercise 1.2 Capture the time response of your motorized damped compound pendulum. Capture your plot (similar to Fig 1-2A left). 1.3 From your plot, identify the height of consequent peaks, and the time between peaks. Use these to calculate the damping ratio and natural frequency for your system. 1.4 From your damping ratio and natural frequency, calculate the characteristic equation i.e. (4) and the roots i.e. (6) Concept 2 System Modeling (Simulation) Experimentally, the system s dynamics were captured and identified; Fig 1-2A and the equations above served to reveal the system s inherent (i.e. natural) characteristics. Equations (3A) and (3B) give us the pendulum s damping ratio and natural frequency respectively. One can now build a model to do a sanity check of the system that was identified. There are many simulation tools on the market. Simulink (which is a Matlab toolbox) is a commercial package. Xcos (which is included in Scilab) is an open-source version. Recall from (1) and (4), one has: 2 (7) In Simulink (or Xcos) one can generate the following model: 0.47 19.5 (8) Fig 2-1A: Xcos implementation of damped compound pendulum Equation (7)

Executing the simulation of the model, one sees the damped compound pendulum s time response e.g. Fig 2-1B. Fig 2-1B: Xcos simulation of pendulum time response (left). Contrast to experimentally captured response from Fig 1-2A shown again (right). Model appears to match experimental system closely Exercise 2.1 Implement your model (i.e. damping ratio, natural frequency and initial angle) in Simulink (or Xcos) i.e. Replicate your own version of Fig 2-1A. 2.2 Execute the simulation of 2.1. Contrast the resulting plot (e.g. Fig 2-1B left) with your experimentally captured plot (e.g. Fig 2-1B right). From the simulation plot, show that the peak values and period are the same (or different) as your experimental plot.