ACTIVE CONTROL OF A SELF-EXCITED VIBRATING SYSTEM

UTILIZING PERIODIC EXTERNAL EXCITATION

A Thesis

Presented to the faculty of the Department of Mechanical Engineering

California State University, Sacramento

Submitted in partial satisfaction of the requirments for the degree of

MASTER OF SCIENCE

in

Mechanical Engineering

by

Scott Donald Monroe

FALL 2016 ©2016

Scott Donald Monroe

ALL RIGHTS RESERVED

ii ACTIVE VIBRATION CONTROL OF A SELF-EXCITED VIBRATING SYSTEM

UTILIZING PERIODIC EXTERNAL EXCITATION

A Thesis

by

Scott Donald Monroe

Approved by:

, Committee Chair Dr. Ilhan Tuzcu

, Second Reader Dr. Estelle Eke

Date

iii Student: Scott Donald Monroe

I certify that this student has met the requirements for format contained in the University format manual, and that this thesis is suitable for shelving in the Library and credit is to be awarded for the thesis.

, Graduate Coordinator Akihiko Kumagai Date

Department of Mechanical Engineering

iv Abstract

of

ACTIVE VIBRATION CONTROL OF A SELF-EXCITED VIBRATING SYSTEM

UTILIZING PERIODIC EXTERNAL EXCITATION

by

Scott Donald Monroe

A common phenomenon observed in dynamic mechanical systems is the presence of self- excited under normal operating conditions. A classic example of this phenomenon can be seen on electrical power transmission lines that is commonly referred to as transmission line gallop. Transmission lines have been known to ”gallop”, oscillate up and down, with the oscillation increasing in magnitude until mechanical failure of the system occurs. The type of vibration that is occurring is classified as a self-excited vibration and is an example of a system that is dynamically unstable. In his classic text book, Mechanical Vibrations, J.P. Den Hartog presented this phenomena and described the dynamics of the phenomena in great detail. In addition, he proposed an apparatus that clearly and simply illustrates this phenomena to the reader. This apparatus is a simple - spring system that can be constructed and used to demonstrate the self-excited vibrations with the use of a small desk fan. This thesis will cover the theory and derivation of a proposed control method to settle the self-excited vibrating system. The approach for quenching the vibrations will utilize the theory of applying a controlled periodic force that mimics the forces created by a tuned mass damper. In addition to developing a control method, the thesis will also look at the development of the apparatus proposed by Den Hartog as well as implement the proposed control method and evaluate its effectiveness in canceling the self-excited vibration. And finally, in the development of this apparatus and control system, efforts will be made to utilize simple low cost micro-controller v (Arduino) and hobbyist hardware (servos and springs) with the intention that this system could be easily constructed by students and educators in the future. The goal of this thesis was to develop a control method and test the theory for effectiveness after constructing the aforementioned apparatus.

The results of this research activity have the potential to be extended and adapted for many appli- cations where self-excited vibrations may occur. In addition, the platform that was developed to to test the theories in this thesis could be extended to further research and demonstration purposes.

, Committee Chair Dr. Ilhan Tuzcu

Date

vi ACKNOWLEDGMENTS

I would like to thank Dr. Ilhan Tuzcu for his guidance in selecting this topic as well as for his patience with me in getting this research completed.

Most of all, I would like to thank my wonderful wife Kendall and my two little boys, Liam and

Oliver, for their love and support during the many hours spent on this research.

vii TABLE OF CONTENTS

Page

Acknowledgments ...... vii

List of Tables ...... x

List of Figures ...... xi

Chapter

1 INTRODUCTION ...... 1

1.1 Self-Excited Vibrations ...... 1

1.2 Proposed Control of the System ...... 2

1.3 Previous Work on Self-Excited Vibration Control ...... 4

1.4 Problem Statement ...... 4

2 THEORY ...... 6

2.1 Passive Vibration : The Tuned Mass-Damper ...... 6

2.2 Mathematical Derivation of System Response to an External Excitation ...... 8

2.3 Development of a Control Method to Minimize System Response ...... 15

2.3.1 Idealized Controller Function ...... 15

3 DESIGN AND IMPLEMENTATION ...... 17

3.1 Design and Fabrication of the Mass-Spring Apparatus ...... 17

3.1.1 Support Structure ...... 17

3.1.2 Mass ...... 17

3.1.3 Springs ...... 17

3.1.4 Sensing Element ...... 19

3.1.5 Micro-controller ...... 19

3.1.6 Actuation Device ...... 20

3.2 Development of the Program for Control of the System ...... 21 viii 3.2.1 Key Section of Arduino Code 1: Data Acquisition Loop ...... 21

3.2.2 Key Section of Arduino Code 2: Solenoid Force Calculation and Modulation 22

3.2.3 Key Section of Arduino Code 3: Serial Communication for Data Acquisi-

tion in Matlab ...... 22

4 EXPERIMENTATION AND RESULTS ...... 23

4.1 Baseline System Response to No Control ...... 23

4.2 System Response to Control: Scenario 1 ...... 24

4.3 System Response to Control: Scenario 2 ...... 25

4.4 System Response to Control: Scenario 3 ...... 27

5 CONCLUSION ...... 29

Appendix A Photos of Apparatus ...... 31

Appendix B Bill of Materials ...... 34

Appendix C Arduino Code ...... 35

Appendix D Matlab Code for System Model ...... 37

Appendix E Matlab Code for Data Acquisition ...... 39

Bibliography ...... 41

ix LIST OF TABLES

Tables Page

3.1 Table of force and displacement values and calculated spring constant k ...... 19

3.2 Table of force and voltage measurements of the solenoid ...... 21

B.1 Bill of materials including costs and source of component ...... 34

x LIST OF FIGURES

Figures Page

1.1 Schematic of mass-spring system defined by J.P. Den Hartog (Den Hartog [1]) . . . 3

2.1 Schematic of 2 DOF system consisting of a main mass m1 and a tuned mass damper

m2 ...... 6

2.2 Schematic of mass-spring system, simplified with equivalent springs and dampers . 9

2.3 Transient response xtr of the mass-spring system with a negative damping constant c 12

2.4 steady-state response xss of the mass-spring system to a periodic mass driving force 13

2.5 System response together with the transient and steady-state response of the system 14

2.6 Function block diagram representation of the proposed control system ...... 15

4.1 Scenario 1 system position response ...... 24

4.2 System position response during Baseline experiment ...... 25

4.3 Overlay of Scenario 1 system response on Baseline system response ...... 26

4.4 System position response during Scenario 2 experiment ...... 27

4.5 System position response during Scenario 3 experiment ...... 28

A.1 Iso-view of mass-spring apparatus ...... 31

A.2 Front view of mass-spring apparatus ...... 32

A.3 Bottom view of mass-spring apparatus ...... 32

A.4 Top and Side views of mass-spring apparatus ...... 33

A.5 Solenoid detail view of mass-spring apparatus ...... 33

xi 1

1. INTRODUCTION

1.1. Self-Excited Vibrations

Self-excited vibrations can found in dynamic mechanical systems across many different fields and applications. It can typically be defined as a vibration in which the alternating force that sustains the motion is controlled and influenced by the motion itself (Den Hartog [1]). An airfoil through a fluid medium such as a fluttering airplane’s wing can exhibit self excited vibrations under certain conditions. In addition, torsional vibrations of rotating shafts in high speed machinery is another example (Jansen and Steen [2]). A well known example of this phenomena can be seen on electrical transmission lines known as transmission line gallop (Pansini [3]). In cold weather conditions, power transmission lines have been known to ”gallop,” or oscillate at an exponentially increasing magnitude. This is due to the formation of ice on the lines that creates an airfoil. The wind blowing over the airfoil created by the ice causes the galloping motion of the system. The vibrations are typically excited by a very small stimulus in comparison to the final magnitude.

These vibrations can escalate to the point where mechanical damage will occur in the transmission lines and associated hardware. This phenomena is classified as a self excited-vibration and is an example of a system that demonstrates dynamic instability.

Den Hartog ((Den Hartog [1]) presented this phenomena and described the physics of the prob- lem in great detail. In addition to describing and deriving the problem, he proposed an apparatus that easily illustrates this phenomena to the reader. This apparatus is a simple mass-spring system that can be constructed to demonstrate the self excited vibrations with the use of a small desk fan. The apparatus proposed not only gives insight to the phenomena witnessed on high voltage transmission lines, but also gives the reader a visual example of a system with dynamic instability. The system is described as a mass-spring system where the mass is a rod with a semi-circular cross-section. The rod is suspended from both ends by springs, see Figure 1.1. Once assembled, if care is taken to select the spring stifness and mass, the system can be placed in front of a small desk fan and the 2 self-excited vibration will occur.

The operation may seem somewhat mysterious, but it has a fairly simple explanation. When the air from the fan blows over the flat face of the rod, small aerodynamic forces act on the mass and proceed to excite vibrations that gradually increase to the physical limit of the system. The aerodynamic forces are the result of an alternating pressure differential between the top and bottom surfaces of the mass. The alternating pressure differential is caused by the vertical oscillations of the mass. The oscillations increas as long as the motion exists.

Unstable systems such as those that exhibit self excited vibration have the potential to experi- ence vibrations that may be detrimental to proper operation of the system, producing catastrophic results. In the event that physical damage is done to the system, the expected life or durability of the system may be reduced. Many systems demonstrating this type of dynamic instability would benefit dramatically from the implementation of some form of vibration damping, abatement or quenching.

Many passive vibration absorbers have been used with good success to settle such vibrations (Tondl

[4], [5]). Tuned mass dampers for example are an excellent example of a passive vibration absorber that could be used to settle self excited vibrations of this type. However, passive systems have their disadvantages due to the limited frequency range that they are tuned to operate in. Because of this, active vibration control systems with capability would have the potential for much greater operating range and effectiveness in reducing the system response and magnitude. The ideal active vibration damping system would have the ability to monitor the magnitude and frequency of the excited system and provide a feedback signal to a controller that can adjust system properties or features that will settle the vibrations.

1.2. Proposed Control of the System

The apparatus described earlier is a suitable project for evaluating potential control systems and methods for settling the self-excited vibrations. The relative simplicity of the system together with the effective demonstration of a self-excited vibration phenomenon make this experiment an ideal platform for evaluating the effectiveness of a control system. Being that this system is such a good 3

k k

m Low velocity airflow from small desk fan k k

Figure 1.1: Schematic of mass-spring system defined by J.P. Den Hartog (Den Hartog [1]) demonstration of a real world stability problem, Dr. Tuzcu expressed interest in using this platform for further demonstration and research by designing the system in a manner that could easily be fabricated and or manufactured as a kit. This possibility was kept in mind during the entire project as all of the hardware and components are easily acquired at local hardware retailers as well as on-line resources that are available to the public. In addition, the total cost to build the system was less than $130.

This was made possible by availability of the low cost hobbyist micro-controller platform known as Arduino. The Arduino Uno micro-controller is an impressive $25 controller, and as proven in this thesis, it does in fact have the ability to perform as required to settle the vibrations of the proposed system. The Arduino is an open-source micro-controller platform for interfacing between electronic components and mechanical devices that has a vast support community of users throughout the world. In addition to the vast community of users, there is a large selection of hardware that was designed for use with this popular platform available (Margolis [6]). All of the motion sensors, solenoids and driver boards can be purchased and easily integrated into the system. Given the low cost, community of users and availability of compatible hardware, Arduino was a suitable choice for this project with the futuer goal of developing a kit. The goal of this thesis was to develop a control method and test the theory for effectiveness after constructing the aforementioned apparatus. The 4 results of this research activity have the potential to be extended and adapted for many applications where self-excited vibrations may occur. In addition, the platform that was developed to to test the theories in this thesis could be extended to further research and demonstration purposes.

1.3. Previous Work on Self-Excited Vibration Control

There has been an awareness of self excited-vibrations over the past century and it is argued that the occurrence of and significance of their presence is even more critical today than in previous generations (Tondl [4]). It is common place for passive means of vibration control to be used.

However for reasons as stated above, active means for settling self-excited vibrations prove to be more effective. Research has been done in implementing various driving forces and frequencies for vibration cancellation (Tondl [5]) (Pumhossel¨ [7]). In addition, there is significant work being conducted in the area of parametric excitation in the reduction of self-excited vibrations (Pust and

Tondl [8]) (Jansen and Steen [2]). Utilizing parametric excitation as a means for controlling the vibration was investigated for this thesis, but due to the complexity of implementing the correct hardware, a simpler approach was taken. The approach taken was similar to that of the work done by (Pumhossel¨ [7]) in the investigation into damping vibrations by means of externally applied periodic forces. The proposed approach is to utilize periodic forcing of the system. By extension of the phenomena of tuned mass dampers, a means of control is proposed in which the driving force mimics the effects that the tuned mass damper has on the system. It will be shown that a forcing function whose magnitude is equal and opposite to that of the driving force will effectively reduce the vibrations in the system, just as it occurs in a system with a tuned mass damper.

1.4. Problem Statement

The potential for the occurrence of self-excited vibrations in critical real world systems and the significant risk they pose to the operation and durability of the systems, indicate a specific need for an effective and reliable method for eliminating or reducing the vibrations. Specifically, given the limitations of passive systems, an active vibration control system is the ideal solution. In this thesis, it is proposed and shown that an active vibration control system, utilizing external periodic forces 5 that mimic the dynamics of a tuned mass damper, will be effective in canceling or reducing the magnitude of the self-excited system. In support of the proposed control method, and conclusions made as a result, the derivation of the equations of motion are derived and modeled to show that the system will in fact be effective. And finally, the proposed control method will be implemented on physical hardware, while maintaining a certain level of simplicity, in order to physically evaluate the effectiveness of the control method and approach. 6

2. THEORY

2.1. Passive Vibration Damping: The Tuned Mass-Damper

In the beginning this research, it is helpful to investigate various means of passive vibration damping to gain insight into the problem at hand. A common and typical solution for self-excited vibrations is to employ a passive vibration damping approach such as a tuned mass damper. Tuned mass dampers are used often to reduce vibrations caused by operating frequencies at or near the natural frequency of the system. The challenge associated with tuned mass dampers is selecting the appropriate system parameters in order to counter the motion of the main mass.

A simplified two-degree-of-freedom system, seen in Figure 2.1, can be used for this discussion of the response of a system with a tuned mass damper. The equations of motion for the system can be represented by the below equations of motion, Equation 2.1 (Meirovitch [9]).

m 2

k 2

m 1

k 1

Figure 2.1: Schematic of 2 DOF system consisting of a main mass m1 and a tuned mass damper m2

m1x¨1 + (k1 + k2)x1 − k2x2 = F1 sin(ωt) (2.1)

m2x¨2 − k2x1 − k2x2 = 0 7

Which have the solution in the form

x1(t) = X1 sin(ωt) (2.2)

x2(t) = X2 sin(ωt)

For convenience, the below format of the equations are defined (Meirovitch [9]):

r k1 ωn = m1 r k ω = 2 a m 2 (2.3) F1 xst = k1 m µ = 2 m1

With the above defined, X1 and X2 can be solved as

2 [1 − (ω/ωn) ]xst X1 = 2 2 2 2 [1 + µ(ωa/ωn) − (ω/ωn) ][1 − (ω/ωa) ] − µ(ωa/ωn) (2.4) xst X2 = 2 2 2 2 [1 + µ(ωa/ωn) − (ω/ωn) ][1 − (ω/ωa) ] − µ(ωa/ωn)

Upon analysis of the above, it is clear that if the system is designed such that ωa = ω the magnitude

of the main mass X1 will reduce to 0. And further analysis of the system reveals that

−F1 X2 = (2.5) k2

and hence

−F1 x2(t) = sin(ωt) (2.6) k2 8

And from the above, it is concluded that as a result of the tuned mass damper, the main mass is being driven by a force in the absorber spring of

k2x2(t) = −F1 sin(ωt) (2.7)

Equation 2.7 implies that the tuned mass damper, when designed appropriately provides a force on the main mass that is exactly equal and opposite the input force on the main mass. It is theorized and proposed in this thesis, that an external force can be manipulated to mimic the dynamic effects of a tuned mass damper on the main vibrating mass. If possible, this concept would offer improved effectiveness given the ability to control the external force rather than relying on the intrinsic prop- erties of the tuned mass damper to reduce the vibration. This theory is further modeled and explored in the next section and carried out later in the thesis.

2.2. Mathematical Derivation of System Response to an External Excitation

It is now required to derive the fundamental equations of motion of the mass-spring system when driven by a force equivalent to that described in the previous section. To determine the system response, the transient response and the steady-state response need to be defined and combined.

Based on the principle of superposition, these these two responses can be combined to define the response of the system (Meirovitch [9]) (Den Hartog [1]). The schematic in Figure 2.2 below was derived and then simplified in the manner shown.

It is clear that the reduction of this system to its equivalent springs and dampers allows for a simpler derivation of the required equations of motion. After review of the below system, it is clear that the equation of motion for a damped single-degree-of-freedom system can be represented by

Equation 2.8:

mx¨+ cx˙+ kx = 0 (2.8)

As is typical in analyzing this type of system, dividing through Equation 2.8 by m puts the equation 9

Figure 2.2: Schematic of mass-spring system, simplified with equivalent springs and dampers in the form that is ideal for future analysis of the system.

2 x¨+ 2ζωnx˙+ ωn x = 0 (2.9)

c r k where ζ = and ωn = 2mωn m In addition to simplifying the system, a convenient way to model the motion of this self-excited vibration is to make the assumption that damping in the system is in fact a negative value (Den

Hartog [1]). This assumption is advantageous because it allows for a much simpler derivation of the response of the system. Modeling and calculating the small aerodynamic forces that are acting on the system would be cumbersome and for the purposes of this research was not necessary. Damping can be understood to represent energy being removed from the system, thus a negative value would represent energy being added to the system.

It is evident on inspection of Equation 2.9 that a solution to the differential equation can be expressed in the form of (Meirovitch [9])

x(t) = Aest (2.10) 10

Taking the first and second time derivative of Equation 2.10 leads to

x˙(t) = Asest (2.11)

x¨(t) = As2est (2.12) inserting equations 2.11 and 2.12 into Equation 2.10 yields

2 st st 2 st As e + 2ζωnAse + ωn Ae = 0 (2.13)

Dividing through by Aest Equation 2.13 becomes

2 2 s + 2ζωn + ωn = 0 (2.14) which has the roots

p 2 s1,2 = −ζωn ± ζ − 1ωn (2.15)

These roots show that the displacement response of system can be described by

s1t s2t x(t) = C1e +C2e (2.16)

Where C1 and C2 are integration constants. To solve for these constants one can identify the initial conditions of the system for both displacement and velocity. By setting x(0) = x0 andx ˙(0) = v0, C1 and C2 can be solved for

−s2x0 + v0 s1x0 − v0 C1 = , C2 = (2.17) s1 − s2 s1 − s2

With these constants, identified, the solution for the response of the system is

−s2x0 + v0 s1x0 − v0 x(t) = es1t + es2t (2.18) s1 − s2 s1 − s2 11

At this point it is advantageous to further simplify the system by looking at the specific damping range in which we expect this system to operate. As previously mentioned, from observing the sys- tem in operation, a self-excited vibrating system can be thought of as having negative damping. In addition, one can assume that −1 < ζ < 0. From this understanding, the equation can be simplified.

p 2 With the damped natural frequency of the system ωd = ωn 1 − ζ , Equation 2.15 can be written as,

s1,2 = −ζωn ± iωd (2.19)

From Equation 2.19, the response can be shown to be (Meirovitch [9])

−ζωnt xtr(t) = Ce cos(ωn − φ) (2.20)

v u !2 u 2 ζωnx0 + v0 C = tx0 + (2.21) ωd

! ζω x + v φ = tan−1 n 0 0 (2.22) ωdx0

The transient response of the system is shown in Figure 2.3.

The next step in the mathematical model of this system is to define the response of the system to an external driving force, the steady-state response. As described in the previous section, the required force of the spring on the mass has already been defined. It needs to be equal and opposite to the force on the mass in order to function as intended. That force is defined in Equation 2.23

−ζωnt F = kxtr(t) = kCe cos(ωn − φ) (2.23)

Thus the force on the mass to an external excitation and the subsequent steady-state response needs to be

−ζωnt F = kxss(t) = −kCe cos(ωn − φ) (2.24) 12

Transient System Response 0.1 Transient Response

0.05

0

-0.05 Displacement (arbitrary units)

-0.1 0 2 4 6 8 10 12 14 16 18 20 Time (seconds)

Figure 2.3: Transient response xtr of the mass-spring system with a negative damping constant c

−ζωnt xss(t) = −Ce cos(ωn − φ) (2.25)

The above equations are in the form x(t) = X(ω)cos(ωt − φ) where

B X(ω) = (2.26) p 2 2 2 [1 − (ω/ωn) ] + (2ζ(ω/ωn)

And the magnitude of the external driving force B, can be solved for as

−Ce−ζωnt B = (2.27) p 2 2 2 [1 − (ω/ωn) ] + (2ζ(ω/ωn)

Given the proposed operating frequency of the system ω = ωn the equation further simplifies to

−Ce−ζωnt B = (2.28) 2ζ

Thus the external driving force required to mimic the dynamics of a tuned mass damper can be 13

Steady State System Response 0.1 Steady State Response

0.05

0

-0.05 Displacement (arbitrary units)

-0.1 0 2 4 6 8 10 12 14 16 18 20 Time (seconds)

Figure 2.4: steady-state response xss of the mass-spring system to a periodic mass driving force found to be

Fext = Bcos(ωt) (2.29)

The time domain response of the system xss(t) can be seen in Figure 2.4. Now the two compo- nents of the system response can be combined to give the system response to the external citation.

Once again, the theory of Superposition of Linear systems enables Equations 2.20 and 2.25 to be combined for the system response in Equation 2.30.

xsys(t) = xtr(t) + xss(t) (2.30)

The above response can be plotted versus time together with the transient and steady-state response to reveal the dynamics of the system. See Figure 2.5 below.

The dynamic nature of the system was helpful to analyze when designing and defining how the control system ought to function. It was noted however that there are some practical limitations of the physical system that make the above response somewhat unrealistic. The hardware that will 14

System Response 0.1 Transient Response Steady State Response Combined Response 0.05

0

-0.05 Displacement (arbitrary units)

-0.1 0 2 4 6 8 10 12 14 16 18 20 Time (seconds)

Figure 2.5: System response together with the transient and steady-state response of the system provide the opposing force will be limited in its magnitude and thus preventing it from providing an opposing force of the same magnitude, but rather some fraction of that magnitude. Considering the transient nature of the dynamics of the system, it is clear that even with a reduced counter force, the magnitude will eventually be reduced. This is a result of the initial conditions of the transient solution changing with time as the response is reduced by the external forces applied. This conclusion was easily confirmed when implemented on the actual apparatus later in this report.

In order to maintain a certain level of stability of the system, it is critical to now design the control system that will work to reduce the magnitude of the system response while maintaining the proper driving force magnitude B to a level that is proportional to the displacement of the system response over time. It is this feature of the control system that will allow for proper stability of the control system itself (Nise [10]). The dynamic nature of the system illustrated in Figure 2.5 was key in outlining how the control system ought to function. The derivation of the control system will be developed in the following section. 15

2.3. Development of a Control Method to Minimize System Response

From the previous section, the function of the the control system will contain three sub-functions.

1) It will need to monitor the system response, or the magnitude of the oscillations of the mass con- nected the springs. 2) It will need to feed that response back to the controller and calculate an appropriate external driving force. 3) Based on the calculations, it will need to manipulate the ex- ternal driving accurately and on time in order to reduce the vibrations. As is fundamental in the development of a control system (nise), a control function block diagram outlining this process can be seen below in Figure 2.6. The proposed control method described above will now be described in

Figure 2.6: Function block diagram representation of the proposed control system detail to provide further insight into the details of the control system. The following is a description of how the idealized control system would function and is the proposed control method hypothe- sized to be effective in properly reducing the magnitude of the vibration in the system.

2.3.1. Idealized Controller Function

1. As the mass starts to oscillate as a result of the self-excited nature when immersed in the

airflow from the fan, the motion sensor should detect the increasing magnitude of the dis-

placement from its equilibrium position. 16

2. The data from the sensor will be sent to the micro controller for signal processing where a

specific program will be executed to analyze the data at a specified sample rate. Based on the

data series it should identify local maxima and minima which would represent the peak of the

oscillations that steadily increase as the system gets further excited.

3. The controller will also monitor the displacement until it exceeds a specified threshold to be

established by the operator. In addition to monitoring the magnitude of the displacement, the

controller should also identify the frequency of oscillations by detecting within the data when

the magnitude changes from positive to negative or negative to positive values. Identification

of this frequency is key as it will be used to operate the actuators to provide an external force

at the operating frequency, one of the fundamental requirements of this approach.

4. Once the user specified magnitude threshold is crossed and frequency detected, the controller

should modulate the system parameter(s) to reduce the vibration at the identified frequency.

The ideal system parameter for this system was identified as a force adjustment to the actuator.

The controller should regulate the magnitude of this force so that the control system will be

stable. If not properly controlled, the system could potentially be over-driven and lead to a

different type of excitation in the system. The controller should calculate the target output

force based on the relationship between the magnitude of the displacement and the force. Or

more simply, when the magnitude is high, the signal will be for max force and will decrease

linearly as the magnitude of the vibration is reduced.

With the above proposed concept, it was decided to build the system and evaluate the proposed control method with physical hardware. In the following section, the design and fabrication of the

fixture will be explained. In addition, the implementation and experimentation with the system will be documented. 17

3. DESIGN AND IMPLEMENTATION

The apparatus and control system described in previous sections was developed to ultimately evaluate its function and performance with actual hardware and software. To that end, the apparatus was constructed and code was written for the Arduino hardware being employed. Appendices A through E contain the details.

3.1. Design and Fabrication of the Mass-Spring Apparatus

With the potential for kit manufacture in mind, simplicity of hardware was a key requirement of the design and fabrication of this system. Low cost materials and components were used to satisfy this requirement.

3.1.1. Support Structure

The support structure of the system required the bulk of the fabrication. For ease of fabrication as well as cost, ”U” channel aluminum and 3/8” threaded rods were purchased. Horizontal supports were cut from the ”U” channel aluminum. Adjustable vertical supports were constructed from 3/8” threaded rod and used together with nuts and washers to secure and support the system vertical support.

3.1.2. Mass

As described in previous sections, the mass needed to be of a specific shape to function properly.

A wooden rod with a with a semi-circular cross section met this requirement. To achieve this, a wooden dowel 9 inches long with 1 inch diameter was cut in half down the long axis of the dowel to achieve the proper cross section.Wood was chosen because of its reduced weight compared to other materials as well as its low cost and ease of working with. The final mass, including the attached motion sensor, was approximately 50 g.

3.1.3. Springs

In choosing the springs, the ideal operating frequency of the system was considered. A target of

5 Hz to 6 Hz was chosen as the initial starting point. Based on simple calculations of the simplified 18 mass spring system and an approximate mass of 50 g, a spring constant value was determined as a starting point for the spring. Given the system in Figure 2.2, the frequency of the simple harmonic motion of the system can be defined by Equation 3.1.

p ω k/m f = = (3.1) 2π 2π

Given that m = 50 g and our target f = 5 Hz, a spring constant of k = 49.34 N/m was identified.

Given that the simplified system has a single spring at 4 k, it can be concluded that for each spring k = 12.34 N/m. Springs were purchased from McMaster-Carr which had data on the spring constant and the linear range of the spring. Using the target spring constant, and data available from the vendor, a spring was chosen that had a spring constant of k = 10.7 N/m and had a length of 1.5” when not extended. This selection proved to be an ideal choice given the performance of the system and that no additional springs needed to be purchased. A package of 12 was the smallest quantity that could be purchased.

Once the springs were received, they were tested in order to experimentally identify the spring rate to confirm the value for k. This proved beneficial when developing the control relationship between voltage and driving force. The experimental results can be seen below in Table 3.1. The average value of the spring constant was found to be k = 10.7N/m.

In addition to the spring element in the system, the springs also played a key role in the transfer of signals from the motion sensor to the controller. It was learned early on that the sensor functioned better when mounted to the mass as opposed to below the mass. In this orientation it provided a cleaner displacement reading. Initially thin gauge wires were used to power and connect to the sensor. However, the added stiffness of the wire prevented the mass from galloping like it was expected. To resolve this, the springs themselves were used as conductors of the 5V power and the signal to and from the sensor. In the end this method worked effectively as long as care was taken to ensure the spring were electrically isolated from the main support structure. 19

Force (N) Displacement (m) k (N/m) 0.62784 0.07 8.969 0.73575 0.079 9.313 0.7848 0.082 9.570 0.8829 0.09 9.810 0.981 0.095 10.326 1.0791 .105 10.277 1.1772 0.113 10.418 1.22625 0.115 10.663 1.4715 0.135 10.900 1.7658 0.153 11.541 1.962 0.17 11.541

Table 3.1: Table of force and displacement values and calculated spring constant k

3.1.4. Sensing Element

For the sensing element in the system (function 1), two different methods were investigated during this process motion sensors and accelerometers. Initial experiments were conducted with accelerometers with good success in acquiring data. However, there was difficulty in post processing the acceleration data to get it into the form of a displacement measurement. Due to the double integration required to go from acceleration to displacement, significant drift error was noted in the data. It was because of this difficulty in post processing, that a motion sensor was selected as the method for position sensing of the mass. The Parallax Ping))) ultrasonic position sensor was chosen for its low cost ($29.99) and ease of integration into the project.

3.1.5. Micro-controller

Since the beginning of this research, the Arduino Uno micro-controller was considered as the primary micro-controller as one of the objectives was to evaluate the effectiveness of this con- troller to perform simple control system functions. As previously stated, the Arduino Uno is a low cost ($24.99) hobbyist micro-controller that is targeted towards inventors and ”makers” who want to explore Mechatronics and develop concepts and that require connectivity between mechanical hardware, electronics and software. It was unclear initially if the Arduino was sufficiently capable 20 of performing properly, however as will be seen in the data it proved to be effective for the purposes of this research.

In addition to the micro-controller, a specific add on driver was needed to drive the solenoids with a

PWM signal. A motor shield was selected because of the H-Bridge drivers that were built into the driver (Fried [11]). The Motor Shield, as it is referred to by the Arduino community, proved to be an effective tool in driving the solenoids. Even though it was primarily designed to be used with DC and stepper motors, the solenoids chosen effectively saw the rms voltage of the PWM signal as a variable voltage source. This attribute greatly simplified the control system as a complex, digitally controlled variable power supply was not in fact needed for the system.

3.1.6. Actuation Device

Much thought went into the selection of the proper actuation device. It was clear from the beginning that the device would need to provide a counter force to the top two springs in order to properly represent the external force outlined in the previous section. The following attributes were considered when selecting a linear actuator; max displacement, max force, actuation speed, driving requirements (e.g. voltage, current and signal). After many hours of research, a linear solenoid was selected and obtained from an on-line robotics hardware source. The particular solenoid was selected for its cost ($19.99), mounting simplicity and voltage requirements (12 Volts).

Similar to the springs, additional testing was performed on the solenoids to effectively map the solenoid force vs applied voltage. The data from this testing can be found in table 3.2 below. This was required to determine the voltage required to initially activate the solenoid as well as the voltage required to maintain in continuous operation. However, due to the non-continuous operation of the solenoids in this experiment, the holding voltage data was not of tremendous value, so a complete map was not measured. The activation voltage was critical in developing the relationship between

PWM signal and expected solenoid force.

A complete bill of materials including cost and source information can be found in Appendix B at the end of this report. 21

Force (N) Voltage (V) 0 2.8 0.49 4.8 0.62 5.2 0.78 5.7 0.98 6.4 1.17 7.0 1.37 7.5 1.56 8.6 1.76 9.0 1.96 9.7 2.21 10.5 2.45 11.5

Table 3.2: Table of force and voltage measurements of the solenoid

3.2. Development of the Program for Control of the System

The Arduino language is based on C++ with a focus on simplicity for entry level and users with minimal programming experience (Margolis [6]). The key section of the specific Arduino code written for this project is displayed in appendix C. There are 3 key regions of this code that allowed the data to be acquired and processed properly for effective function of the system. The 3 sections are displayed in detail in the following sections.

3.2.1. Key Section of Arduino Code 1: Data Acquisition Loop

Lines 21 through 33 describe the portion of the main f or loop that is used for the acquisition of the data from the motion sensor. The commands in the loop are designed to send a signal to the motion sensor to trigger the motion sensor to send and recieve an ultrasonic pulse for distance measurement. The position of the mass is then received and an algorithm for detecting if the value is a peak value or not is then implemented. If it is determined that it is at its peak, the value is stored and a peak count is incremented. The value of the peak will be used later to determine the magnitude of the control voltage required. 22

3.2.2. Key Section of Arduino Code 2: Solenoid Force Calculation and Modulation

Lines 38 through 44 are the key features in the code that determine the desired solenoid volt- age and then feed that signal to the solenoid via PWM signal. Line 50 effectively takes the max sensor value and compares it the the threshold displacement of 10mm. This threshold was estab- lished from the measured data of the solenoid operating voltage. At a peak voltage of 12 volts, the solenoid will provide approximately 2.5N of force at 10mm of displacement. Any displacement in excess of 10mm will set a max PWM signal of 255, which represents a maximum voltage of 12V.

Anything displacement below 10mm will receive a PWM signal at a reduced level based on the linear relationship defined in line 41.

There is a significance to the value of 255 in line 41 that needs some explanation in order to explain how lines 39 and 41 function. For a typical PWM signal, a value 255 represents a duty cycle of 100% and any duty cycle in between is represented by that percentage of 255. By dividing the max displacement by the threshold value of 10mm and multiplying by 255, the code is specifying that anything over 10mm will get the peak voltage that the solenoid can handle, 12 volts via a PWM signal of 255 and anything below that will get some magnitude less and eventually hit 0 depending on the displacement.

3.2.3. Key Section of Arduino Code 3: Serial Communication for Data Acquisition in Matlab

The final key section of the Arduino code can be found in lines 57 through 72. These lines specify which variables to send via serial communication. Data from the serial ports on the computer can be accessed in Matlab and the data can be read and stored for future data processing. For the purposes of this project, Matlab was used to acquire the data and plot it in a meaningful way. The details of th Matlab code used to accomplish this can be found in Appendix E.

The construction and design of the apparatus and control system was developed and discussed in the above sections. The results of the experimentation with the subject system will now be discussed in the following sections. 23

4. EXPERIMENTATION AND RESULTS

Once fully implemented, the apparatus was tested in several different ways. Once it was estab- lished that the device was functioning properly, three scenarios were identified that each highlight different aspects of the effectiveness of the control system in achieving stability. Together with the baseline response, data was acquired for the following three scenarios that highlight the performance of the system.

• Baseline: No Control • Scenario 1: Control Activated @ t = 0 seconds • Scneario 2: Control Activated @ t = 22.5 seconds • Scenario 3: Control Activated and Impulse Disturbance Applied

To acquire the data for each of the above scenarios, a method utilizing the serial communication capabilities within the Arduino hardware and the Matlab software was implemented. Once the experiment was started, The Matlab program was also started within a few seconds to start acquiring data. Once the run was complete (approximately 45 seconds), Matlab was utilized to generate time series plots and to export the key data to a comma separated file for future analysis. The following plots show the system displacement, the most insightful component of the data for this study. Note, to view the Matlab file that enabled the acquisition of the following data, please refer to Appendix

E at the end of this report.

4.1. Baseline System Response to No Control

The motivation for the baseline run was to document the response of the system when no control was applied. The data will be used as a baseline for comparison purposes. Figure 4.2 showes the baseline response of the system. Upon visual investigation into this system, it is clear that the system is unstable. There is evidence from the data that the response of the system shows no sign of returning to zero or decaying as time approaches infinity. It merely stays at the extreme physical limits of the system, the top and bottom horizontal supports. It was clear from witnessing these 24

System Response - Baseline 100

System Response

50

0 Displacement (mm) -50

-100 0 5 10 15 20 25 30 35 Time (seconds)

Figure 4.1: Scenario 1 system position response movements that operation at this point for an extended period of time could in fact damage the hardware, specifically the springs. This practical matter is the key reason for this type of vibration being undesirable in real world mechanical system.

4.2. System Response to Control: Scenario 1

In this scenario, the power supply to the solenoids was turned on from the start of the run. This scenario is the ideal scenario to judge the effectiveness of the control system. From this scenario we can evaluate how well the control prevents the system from vibrating in a manner similar to the Baseline response and operate with a controlled stability. Figure 4.3 shows the response of the system during Scenario 1. The visual comparison of the the response from Scenario 1 to the baseline response shows that the the system is in fact very effective in preventing the escalation of the self excited vibrations. In addition, it is also effective in maintaining vibrations below a user specified threshold of displacement. Given that the displacements to do not continue to build as time approaches infinity, it can be concluded from these results that the control system does in fact keep the system stable. For comparison purposes the following plot shows the response of Scenario 1 25

System Response - Scenario 1 100

System Response

50

0 Displacement (mm) -50

-100 0 5 10 15 20 25 30 35 Time (seconds)

Figure 4.2: System position response during Baseline experiment overlaid onto the baseline response. The following plot clearly shows the magnitude of the reduction in vibration, see Figure 4.1 below. One possible way to improve the overall performance under this type of scenario would be to use solenoids with a smaller displacement. The smaller displacement would allow for a more precise control over the position of the mass. This improvement would come at the cost of response time to larger amplitudes which is a key metric by which Scenario 2 is judged. Positional control versus response time is factor to be considered when designing the control system and would be based on the functional requirements of said control system.

4.3. System Response to Control: Scenario 2

For scenario 2, the power supply for the solenoids was initially turned off and remained off until approximately 22.5 seconds into the run. By disabling the control system, the self-excited vibrations were allowed to escalate to a point near the limit of the system. This scenario allows for some evaluation of the response time of the control system. How quickly the response can be reduced to a safe point is often a key metric for evaluating the effectiveness of the control system.

For this scenario, the response time will be experimentally determined and will reflect the time it 26

Figure 4.3: Overlay of Scenario 1 system response on Baseline system response takes for the system to reduce the peak vibration magnitude of the system down to the user specified maximum allowable vibration. Figure 4.4 shows the response of the system in Scenario 2. From the response plot one can visually approximate a response time of approximately 3.5 to 4 seconds.

After a deeper investigation of the data, it is revealed that the response time to reduce the vibrations from peak magnitude to the specified threshold was in fact, 4.0110 seconds (26.65 seconds - 22.639 seconds). Given the level of technology utilized in this project, a response time of 4 seconds is not indicative of a poorly performing system.

There are possible improvements to the hardware and system that could be made to reduce this response time further. Opposite to those ideas proposed in Scenario 1, a proposed improve- ment would be to replace the solenoids with larger solenoids that have a larger displacement. The solenoids in this experiment had a maximum displacement of 10mm while the peak displacements of this system are approximately 6 times that maximum at 60mm (120mm peak to peak). If solenoid stroke was increased, each stroke of the solenoid would be able to counter the force at a greater mag- nitude, thus reducing the vibration sooner. And as noted in during the discussion of Scenario 1, this 27

System Response - Scenario 2 100

System Response

50

0 Displacement (mm) -50

-100 0 5 10 15 20 25 30 35 Time (seconds)

Figure 4.4: System position response during Scenario 2 experiment would come at the cost of precise positional control of the mass. The trade-offs would need to be considered when making decisions on the system design.

4.4. System Response to Control: Scenario 3

Scenario 3 is an alternative to scenario 2 for evaluating response time of the system. It is very similar except for the fact that instead of waiting for the oscillations to build up, a impulsive input is applied at the maximum magnitude the system will allow. The system will then have to respond to a worst case instantaneous loading. An assessment of the response time under this type of load case would also be of value in assessing the effectiveness of the system. See Figure 4.5 below. Note from the above response, the response time is in the same range as scenario 2, approximately 4 seconds. Once again, the ability for this system to respond to a peak impulse in 4 seconds shows the effectiveness in reducing the system vibration to the user specified threshold. 28

Figure 4.5: System position response during Scenario 3 experiment 29

5. CONCLUSION

Given the results, it is clear that the proposed method for controlling self-excited vibrations is effective at achieving a stable system. Controlling an externally applied force in a manner that em- ulates the dynamics of a tuned mass damper has validity as illustrated by the data presented. This concept can be applied to numerous practical applications given that there is a practical method of applying the external force of sufficient magnitude. The simplicity of this method makes this con- cept a very applicable approach for controlling self-excited vibrations as well as regular vibrations from external sources. This is proven by the results achieved with minimal hardware and low tech control hardware available commercially to anyone. In addition, the system built with simplicity in mind is a working demonstration of stability that can be utilized to demonstrate stability concepts to students as well as serve as a platform for experiments in control system design.

In conclusion, several areas of potential further investigation or research were identified. Much of the work currently under investigation is related to the concept of parametric excitation. Periodic manipulation of system parameters such as spring stiffness or rotational inertia have shown to be very effective in reducing self-excited vibrations (Tondl [5]) (Pust and Tondl [8]). The apparatus constructed could be used to perform experiments into parametric excitation if a suitable method of parameter manipulation could be identified and implemented. In addition to parametric excitation, improving and optimizing the control algorithm could be studied as well in effort to optimize the method for improved response time and stability at a lower threshold of vibration. An optimiza- tion project could be undertaken to determine the optimized solenoid size for achieving quickest response time and most accurate positional control.

The study of this problem and the investigation into controlling the vibrations has been valuable and rewarding. The problem was sufficiently challenging and led to significant research into many areas of study, including but not limited to, vibration dynamics, stability theory, differential equa- tions, electronics and micro-controller programming. As a result, a simple and effective method 30 for reducing the vibration has been proposed as a practical solution for the common problem of self-excited vibrations in mechanical systems. 31

Appendix A. Photos of Apparatus

Figure A.1: Iso-view of mass-spring apparatus 32

Figure A.2: Front view of mass-spring apparatus

Figure A.3: Bottom view of mass-spring apparatus 33

Figure A.4: Top and Side views of mass-spring apparatus

Figure A.5: Solenoid detail view of mass-spring apparatus 34

Appendix B. Bill of Materials

Component Name Cost Source Micro-Controller Arduino Uno $24.95 Sparkfun Electronics (Online) Motor Driver Adafruit Motor Shield $19.99 Microcenter (Local) Solenoid Robot Geek Small Solenoid $19.90 Trossen Robotics (Online) Motion Sensor Parallax Ping))) $29.99 Trossen Robotics (Online) Mass 1” Hardwood Dowel $3.98 Home Depot (Local) Springs Steel Extension Spring $8.73 McMaster-Carr (Online) Horizontal Support 1”x1/2”x48” Al U Channel $9.99 Home Depot (Local) Vertical Support 3/8”x12” Althread rod $5.74 Home Depot (Local) Total Cost: $123.27

Table B.1: Bill of materials including costs and source of component 35

Appendix C. Arduino Code

1 void setup() 2 { 3 // initialize solenoid control and serial communication 4 AFMS. begin(20000) ; 5 Serial .begin(115200); 6 7 //Declaration of intial values 8 myMotor1−>setSpeed(0); 9 myMotor2−>setSpeed(0); 10 v o l t a g e =0; 11 solState = HIGH; 12 solStateVal = 1; 13 p r e v p o s =0; 14 p r e v p e a k =0;} 15 void loop ( ) 16 { 17 //Loop to read sensor data in n samples. 18 //Sensor data is read and peak values for each segment are detected 19 // Solenoid voltage is calculated based on the magnitude of the peak displacement 20 t1 = millis(); 21 f o r (int i=0; i < n ; i ++) 22 { 23 //The below section of code will identify the peaks of the data 24 25 Ping.Update() ; 26 i f (pos > 0 && ( p r e v p o s − pos ) > 0 && pos > peak ) 27 { peak = p r e v p o s ; 28 p e a k c o u n t = p e a k c o u n t +1;} 29 e l s e if (pos < 0 && ( p r e v p o s − pos ) < 0 && pos < peak ) 30 { peak = p r e v p o s ; 31 p e a k c o u n t = p e a k c o u n t +1;} 32 e l s e 33 { peak= p r e v p e a k ; } 34 / / The below if statements section of code sets the voltage value based on the current sensor displacment reading 35 //Given that the solenoid has a maximum force of 2.5N@ 10mm of displacement , a threshold of 10mm was established. 36 //IN essence , any displacement above 10mm requires the solenoid to be fired at its peak force. 37 //Anything below 10mm is operated at a reduced force based on a linear relationship between the displacement and voltage. 38 i f (peak > 10) 39 { voltage = 255;} 40 e l s e if (peak > 0) 41 { voltage = (peak/10) *255;} 42 e l s e 43 { v o l t a g e = 0;} 44 myMotor1−>setSpeed(voltage); 45 myMotor2−>setSpeed(voltage); 46 // Conditional if statement to set operation frequency of solenoids 36

47 //If displacement is positive , activate solenoids 48 i f (pos < 0) 49 { myMotor1−>run (RELEASE) ; 50 myMotor2−>run (RELEASE) ; 51 solStateVal = 0;} 52 e l s e 53 { myMotor1−>run (FORWARD) ; 54 myMotor2−>run (FORWARD) ; 55 solStateVal = 1;} 56 //Send to serial to in order to read in matlab 57 S e r i a l .print(pos); 58 S e r i a l .print(””); 59 S e r i a l .print(peak); 60 S e r i a l .print(””); 61 S e r i a l .print(voltage); 62 S e r i a l .print(””); 63 Serial.println(solStateVal); 64 delayMicroseconds(10000); 65 p r e v p o s = pos ; 66 p r e v p e a k = peak ; } 67 t2 = millis(); 68 //The following section is used to determine the frequency of the peaks 69 t i m e l o o p = ( t 2 − t 1 ) / 1 0 0 0 ; 70 t i m e s t e p = t i m e l o o p / n ; 71 frequency = (peak count/2) /(time l o o p ) ; 72 p e a k c o u n t = 0;}

Listing C.1: Arduino code for the control of the system 37

Appendix D. Matlab Code for System Model

1 c l e a r; 2 c l o s e all; 3 4 %Inputs 5 %A=10; 6 B= 0 . 0 1 2 5 ; 7 c = −0.05; 8 k =8; 9 m= 0 . 3 ; 10 11 %Initial conditions 12 x0 =0; 13 v0 = 0 . 1 2 5 ; 14 15 %Calculations based on inputs 16 wn=sqrt(k/m); 17 w=wn ; 18 w wn=w/ wn ; 19 T=2* p i/w; 20 f =wn / ( 2 * p i); 21 z e t a =c / ( 2 *m*wn) ; 22 %wd=sqrt(1 − z e t aˆ2) *wn; 23 wd=wn ; 24 25 t i c 26 27 %Loop data 28 t o t a l t i m e =20; 29 s t e p =T / 1 0 ; 30 t final=total t i m e / s t e p ; 31 32 33 f o r t=1:1:t f i n a l 34 i f v0==0 35 C( t ) =0; 36 p h i ( t ) =0; 37 e l s e 38 C( t ) =sqrt(x0ˆ2+((zeta *wn*x0+v0)/wd)ˆ2) ; 39 p h i ( t ) =atan((zeta *wn*x0+v0 ) / ( wd*x0 ) ) ; 40 end 41 42 i ft <=1 43 time ( t ) =0; 44 x response(t)=1; 45 e l s e 46 time ( t ) = t * s t e p ; 47 end 48 49 i f time <=T / 2 50 x ( t ) =C( t ) * exp( − z e t a *wn* time ( t ) ) * cos (wd* time ( t )−p h i ( t ) ) ; 51 v ( t ) =(C( t ) * exp( − z e t a *wn* time ( t ) ) ) *(− z e t a *wn* s i n (wd* time(t))+wd* cos (wd* 38

time ( t ) ) ) ; 52 e l s e 53 x ( t ) =C( t ) * exp( − z e t a *wn* time ( t ) ) * cos (wd* time ( t )−p h i ( t ) ) ; 54 v ( t ) =(C( t ) * exp( − z e t a *wn* time ( t ) ) ) *(− z e t a *wn* s i n (wd* time(t))+wd* cos (wd* time ( t ) ) ) ; 55 end 56 57 X( t ) =−(C( t ) * exp( − z e t a *wn* time ( t ) ) ) * cos (wd* time ( t )−p h i ( t ) ) ; 58 V( t ) =−(C( t ) * exp( − z e t a *wn* time ( t ) ) ) *(− z e t a *wn* s i n (wd* time(t))+wd* cos (wd* time ( t ) ) ) ; 59 60 x response(t)=x(t)+X(t); 61 v response(t)=v(t)+V(t); 62 63 end 64 t o c 65 66 %%% Figures removed for space%%%

Listing D.1: Matlab code for modeling the response of the system 39

Appendix E. Matlab Code for Data Acquisition

1 c l e a r all; 2 c l f; 3 c l o s e all; 4 instrreset; 5 6 r = s e r i a l (’/dev/arduino’); 7 s e t(r,’BaudRate’ ,115200); 8 fopen(r); 9 10 i =1; 11 l =8; 12 t c =0; 13 n =256; 14 t 1 =0; 15 m=1; 16 17 w hi l em <=128 18 A=fscanf(r,’%f’ ,[1,4]);%Displacement in mm 19 m=m+1; 20 end 21 22 w hi l ei <=l ; 23 %Sensor D a t a=nan(1,n); 24 time=nan(1,n); 25 j =1; 26 t i c; 27 w hi l ej <=n ;%Data aquisition loop 28 A=fscanf(r,’%f’ ,[1,4]);%Displacement in mm 29 time ( j ) = j ; 30 p o s data(j)=A(1); 31 p e a k data(j)=A(2); 32 v o l t a g e data(j)=A(3); 33 s o l e n o i d data(j)=A(4); 34 j = j +1; 35 end 36 37 t ( i ) =toc 38 time1=t1+(time *( t ( i ) / n ) ) ; 39 t1=t1+t(i); 40 41 i f i==1 42 t o t a l p o s d a t a = p o s d a t a ; 43 t o t a l p e a k d a t a = p e a k d a t a ; 44 t o t a l v o l t a g e data=voltage d a t a ; 45 t o t a l s o l e n o i d data=solenoid d a t a ; 46 t o t a l time=time1; 47 e l s e 48 t o t a l p o s data=cat(2,prev p o s d a t a , p o s d a t a ) ; 49 t o t a l p e a k data=cat(2,prev p e a k d a t a , p e a k d a t a ) ; 50 t o t a l v o l t a g e data=cat(2,prev v o l t a g e data ,voltage d a t a ) ; 51 t o t a l s o l e n o i d data=cat(2,prev s o l e n o i d data ,solenoid d a t a ) ; 40

52 t o t a l time=cat(2,prev time ,time1); 53 end 54 p r e v p o s d a t a = t o t a l p o s d a t a ; 55 p r e v p e a k d a t a = t o t a l p e a k d a t a ; 56 p r e v v o l t a g e d a t a = t o t a l v o l t a g e d a t a ; 57 p r e v s o l e n o i d d a t a = t o t a l s o l e n o i d d a t a ; 58 p r e v t i m e = t o t a l t i m e ; 59 60 i = i +1; 61 62 end%Main loop 63 64 c s v w r i t e(’/media/largedrive/01. Documents/Scott/Masters Thesis/Thesis/11 I m a g e s a n d F i g u r e s/Time S c e n a r i o 3 c.dat’,total t i m e ) ; 65 c s v w r i t e(’/media/largedrive/01. Documents/Scott/Masters Thesis/Thesis/11 I m a g e s a n d F i g u r e s/Response S c e n a r i o 3 c.dat’,total p o s d a t a ) ; 66 c s v w r i t e(’/media/largedrive/01. Documents/Scott/Masters Thesis/Thesis/11 I m a g e s a n d F i g u r e s/Peak S c e n a r i o 3 c.dat’,total p e a k d a t a ) ; 67 c s v w r i t e(’/media/largedrive/01. Documents/Scott/Masters Thesis/Thesis/11 I m a g e s a n d F i g u r e s/Voltage S c e n a r i o 3 c.dat’,total v o l t a g e d a t a ) ; 68 c s v w r i t e(’/media/largedrive/01. Documents/Scott/Masters Thesis/Thesis/11 I m a g e s a n d F i g u r e s/Solenoid S c e n a r i o 3 c.dat’,total s o l e n o i d d a t a ) ; 69 70 %%% Figure commands removed for space %%%

Listing E.1: Matlab code for acquiring data during the experiments 41

Bibliography

[1] J. P. Den Hartog, Mechanical vibrations. Dover Publications, 1985.

[2] J. Jansen and L. van den Steen, “Active damping of self-excited torsional vibrations in oil

well drillstrings,” Journal of Sound and Vibration, vol. 179, no. 4, pp. 647–668, 1995. DOI:

10.1006/jsvi.1995.0042. (visited on 11/13/2016).

[3] A. J. Pansini, Power transmission and distribution, 1st ed. Fairmont Press, 2005.

[4] A. Tondl, “To the problem of self-excited vibration suppression,” Engineering Mechanics,

vol. 15, no. 4, pp. 297–307, 2008. (visited on 11/13/2016).

[5] ——, “Passive and active means for self-excited vibration suppressing: Two-mass model,”

Engineering Mechanics, vol. 15, no. 2, pp. 133–138, 2008. (visited on 11/13/2016).

[6] M. Margolis, Arduino cookbook, 1st ed. O’Reilly, 2012.

[7] T. Pumhossel,¨ “Suppressing self-excited vibrations of mechanical systems by impulsive force

excitation,” Journal of Physics: Conference Series, vol. 744, p. 012 011, 2016. DOI: 10 .

1088/1742-6596/744/1/012011. (visited on 11/13/2016).

[8] L. Pust and A. Tondl, “Further application of parametric anti-resonance,” Engineering Me-

chanics, vol. 18, no. 3/4, pp. 157–165, 2011.

[9] L. Meirovitch, Fundamentals of vibrations. Waveland Press, 2010.

[10] N. S. Nise, Control systems engineering. John Wiley and Sons, Inc., 2004.

[11] L. Fried, 2016. [Online]. Available: https://learn.adafruit.com/adafruit-motor-

shield-v2-for-arduino/using-dc-motors (visited on 11/13/2016).