+ All Categories
Home > Documents > Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf ·...

Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf ·...

Date post: 23-Jan-2020
Category:
Upload: others
View: 7 times
Download: 0 times
Share this document with a friend
20
Measuring a Frequency Response Function using Embedded Control Software S.C.Elling DCT 2005.60 Traineeship report Coaches: ir. B.H.H. Bukkems dr. Z. Yuan Supervisors: dr.ir. M.J.G. van de Molengraft Prof.dr.ir. M. Steinbuch Technische Universiteit Eindhoven Department Mechanical Engineering Dynamics and Control Technology Group Eindhoven, June, 2005
Transcript
Page 1: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

Measuring a FrequencyResponse Function using

Embedded Control SoftwareS.C.Elling

DCT 2005.60

Traineeship report

Coaches: ir. B.H.H. Bukkemsdr. Z. Yuan

Supervisors: dr.ir. M.J.G. van de MolengraftProf.dr.ir. M. Steinbuch

Technische Universiteit EindhovenDepartment Mechanical EngineeringDynamics and Control Technology Group

Eindhoven, June, 2005

Page 2: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

Contents1 Introduction 3

2 Description of Printer 42.1 Overall View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Registration Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.3 Subfunction X-fuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3 Theory 73.1 Frequency Response Function . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.2 Phase Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

4 Description of the Software 94.1 Overall View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94.2 Rational Rose Real Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94.3 Motor Control in Rational Rose . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.3.1 General Motor Control . . . . . . . . . . . . . . . . . . . . . . . . . . 94.3.2 Controlling Motor 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.4 Setpoint Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104.5 Noise Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.6 Low-Pass Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.7 Debug Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.7.1 Logging of the Parameters . . . . . . . . . . . . . . . . . . . . . . . . 12

5 Adaptation of the Embedded Software in order to Measure FRF 13

6 Experimental Setup 146.1 Physical Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146.2 Debug Log Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146.3 Measurement Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

7 Results 16

8 Conclusions and Recommendations 198.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198.2 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2

Page 3: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

1 IntroductionFor accurate printing it is necessary to known about the dynamics of the components of in-terest in a printer/copier. One way of getting to know the dynamics is measuring frequencyresponse functions (FRFs). One important division in a printer/copier is the final motor be-fore the actual printing point, more precisely, the components driven by that motor. The finalalignment of the sheet before printing the image takes place here. Already some measure-ments have been carried out on this motor, but these measurements have been carried outwith stand-alone data acquisition equipment. As a result the actual gain and phase delay ofthe embedded control system in the printer/copier is not known. Therefore, the goal of thistraineeship is to measure the FRF using data available within the printer/copier itself. To re-alize this goal, the embedded control software will have to be adjusted. An additional goal isto compare both measurements and analyze possible differences.

This report is organized as follows. First, a brief description of the printer/copier with itsdifferent components is given. Then, a brief summary of the theory on FRFs is presented.After that the embedded control software is described. More specifically, the implementationof the motor controller of interest is discussed, together with the necessary changes in the em-bedded motor control software. Then the experimental setup is presented, together with someof the problems that occurred during the testing phase. After this, the results of the measure-ments are examined and compared with the measurements that have been performed earlier.This report is ended by giving some conclusions and recommendations for future work.

3

Page 4: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

2 Description of Printer2.1 Overall ViewThis research document describes measuring FRFs using embedded control software of oneof the motors of the Océ VarioprintTM2090, also called Fermi, see Figure 1.

Figure 1: Océ VarioprintTM2090

The printer can be divided in four parts. The first part deals with the scanning and trans-porting the image to the fuse pinch, which is the place where the image is printed on thesheet. This part is called the image provider, see Figure 2. The other three parts are paper in-put module (PIM), the registration module (REGMOD) and the finisher module (FIN). Blankpaper is stored in the PIM. Another task of the PIM is feeding the paper into the REGMOD.In the REGMOD the paper is heated and aligned with the image, so that it arrives on the rightmoment and in the right orientation at the fuse pinch. After fusing the sheet is transported tothe finisher module (when printing in simplex mode) or back towards the fuse pinch (whenprinting in duplex mode). Besides these two modes a sheet can also be bypassed, in orderto insert a blank sheet. The print unit manager controls the different parts of the printer, sothat the parts know when a sheet arrives or has to be provided. This research will focus ona specific motor in the REGMOD. Therefore this module is described in greater detail in thenext section.

2.2 Registration ModuleThe REGMOD, depicted in Figure 3, deals with orientating, heating and accelerating or decel-erating the sheet in order to synchronize it with the image. The REGMOD consists of severalbelts and pinches that are driven by various motors. A sheet can travel three routes, simplex,duplex and bypass (no printing). The duplex route is the most complex of the three.

When the paper enters the REGMOD it passes pinches P0 and P1. After these pinchesthere is a sheet sensor that measures the time of arrival in the REGMOD. Based on this timethe sheet is accelerated or slowed down by pinch P2. Pinches P0,P1 and P2 are mechanicallycoupled and driven by the same motor (Motor 1). After this first x-synchronization (x is the

4

Page 5: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

Figure 2: Global overview of printer environment.

Figure 3: Registration module with motor 1,3,5.

direction in which the sheet moves), the sheet arrives at the z-registration unit. In the z-registration unit (z-Reg) the sheet is stopped and aligned in the z-direction (perpendicular tox but in the same plane as the sheet) and adjusted for the skewness (rotation round y-axis).Because of these movements, pinch P2 and P3 can be lifted. After leaving the z-Reg, the sheetis accelerated to catch up some time which is lost by stopping for z-registration and with thatx-deviations are compensated. This is done by pinch P3, which is driven by Motor 3. Thenthe sheet arrives at pinch P4. This pinch drives with a constant speed and is coupled withthe first preheater. After leaving the first preheater the sheet arrives at a very important partof the REGMOD, namely the place where fine x-synchronization takes place. This is carriedout by pinch P5 and the second preheater belt. These two elements are both driven by Motor5. During this step the position of the sheet is continuously compared to the position ofthe image. The position of the image is translated into a so called masterpulse. When thissynchronization is performed correctly, there is minimal x-position error at the moment thesheet enters the fuse pinch. It is important that the sheets do not blouse during transport

5

Page 6: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

in the REGMOD. Therefore pinch P5 and the second preheater will always move faster thanpinch P4 and the first preheater. For the same reason will the fuse pinch rotate faster thanpinch P5 and the second preheater. After the sheet is printed there are two possibilities. Thefirst one the transportation of the sheet to the finisher and the sheet leaves the REGMOD.The second option is that pinches P6, P7 and P8 will transport the sheet back towards thez-registration unit, after which the backside of the sheet will be printed. After this the sheetis transported to the finisher. A sheet can also be transported directly from the z-registrationunit towards the FIN by pinch P8. The sheet did not pass the fuse pinch and no image isprinted onto the sheet.

2.3 Subfunction X-fusePinch P5 and the second preheater are known as subfunction X-fuse. Both parts are drivenby Motor 5. The second preheater consists of a silicon conveyor belt and a coated heater-plate.The belt slips over the surface of heater-plate and this causes model uncertainties. The frictionbetween the plate and the belt will change during heating up of the system. Also the frictionbetween the sheets and the belt and between the sheets and the plate will change. Besidesthat the stiffness of the preheater belt and drive belt will change as a result of the temperaturechanges.

The position of the sheet has to be controlled accurately. So any kind of backlash is notallowed. A gear transmission is therefore not suitable. Also the elasticity in the transmissionhas to be minimized, so there is chosen for a direct transmission by a belt. This belt needs tobe wide enough for transmitting the necessary power and it needs to be under a high tensionto reduce play. The moment of inertia of the load is reduced by choosing a big transmissionfrom the motor to the load. The ratio is 18 : 90, so turning the pulley of the drive belt 18 timestakes 90 rotations of the motor.

In the printer the motors are driven by Pulse Width Modulated (PWM) signals. Thismeans that within a fixed time period an alternating high and low current is send to themotor. The ratio between the two determines the rotation speed. The motors are controlledby embedded control software. The controller software gets feedback on the angular rotationof the motor from an optical encoder with a resolution of 3.93 · 10−3 [rad].

6

Page 7: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

3 Theory3.1 Frequency Response FunctionA FRF can be measured by using different methods. First we can distinguish open loopand close loop methods. In the open loop case the FRF is created by dividing the measuredcrosspowerspectrum of the input and the output of the system by the measured autopower-spectrum of the input. This method can not be used with every system. Many systems areunstable without a controller and therefore impossible to identify in open loop. In the closedloop case we can distinguish again two methods, the direct and the indirect method. Thedirect method is the same as in the open loop case. Disadvantage of this method is that un-desired noise causes a distortion in the estimated FRF, because the autopowerspectrum ofthe noise influences the estimation and the controller has to be known in advance. In theworst case only − 1

C will be measured. Another method is dividing the process sensitivity bythe sensitivity; the indirect method. Advantages of this method are that no knowledge of thecontroller is necessary and uncorrelated noise has no influence. Besides that the coherence ofthe sensitivity and of the process sensitivity is an indicator of the amount of correlated noise.More noise will lead to a lower coherence function. To identify the FRF of a system by theindirect method, it is necessary to measure three signals during operation, namely the systemoutput y, the noise w and the control output u. The noise has to be injected before the plant,see Figure 4.

Figure 4: Block diagram of a control loop

The sensitivity is defined as;

S =1

1 + PC. (1)

The process sensitivity is defined as;

PS =P

1 + PC. (2)

The sensitivity can be identified by dividing the measured crosspowerspectrum of w andv by the measured autopowerspectrum of w. By dividing the measured crosspowerspectrumof w and y by the measured autopowerspectrum of w the process sensitivity is obtained. Nowwe can divide the process sensitivity function by the sensitivity function in order to identifythe plant;

P =PS

S. (3)

Besides the plant also the open loop transfer function, Hol, can be calculated from the sensi-tivity;

Hol = PC =1S− 1. (4)

7

Page 8: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

Since both the open loop transfer function and the plant are known, the controller can beidentified as follows;

C =PC

P. (5)

See [3] for a more detailed description of the theory.

3.2 Phase DelayWhen measurements are conducted, the results will always be influenced by the accuracy ofthe measurement. The signal processing will add delay on top of the delay present in thesystem. The amount of phase delay added at a certain frequency is described by;

∆ϕ(f) = 360nTsf, (6)

with ∆ϕ representing the phase delay, f representing the frequency, n representing thenumber of samples delay and Ts representing the sample time. The delay is constructed ofcomponents depicted in figure 5. Each component will add a certain amount of phase delay.Using other components will result in a different phase delay. The calculation time dependson the speed of the computer and the number of calculations the processor has to do. TheD/A-conversion adds a delay of half the sample time, due to the zero order hold circuit, see[2]. In the ideal situation every measurement can be taken directly and the A/D-conversionwill not add any phase delay.

System

Computer AD conversion

DA conversion

Figure 5: Measurement scheme

8

Page 9: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

4 Description of the Software4.1 Overall ViewThe software in the printer runs on the real-time operating system VxWorks. The softwareis programmed in C++. C++ is a powerful programming language, allowing object-orientedprogramming and therefore efficient reusable code. The C++ code is generated by a programcalled Rational Rose Real Time. The generated code needs to be compiled before it can beuploaded to the printer.

4.2 Rational Rose Real TimeRational Rose Real Time is a program designed to make real-time embedded control soft-ware and its application software. This is done by a graphical representation of the differentsoftware components. It is based on Unified Modeling Language (UML). By using graphicalmodels it is easier to develop complex models and make them understandable. The system isconstructed from classes. Each class represents a different part of the total system. Relations,behavior and configuration are described by diagrams. State diagrams are widely used to de-scribe behavior. A system is always in a certain state, represented by a block in the diagram.Arrows between these blocks represent state transitions. Coupling triggers and commands tothese arrows will result in state changes in other diagrams.

4.3 Motor Control in Rational Rose4.3.1 General Motor ControlIn the model, different types of motor control strategies are implemented. Depending on thetype of strategy needed for controlling the specific motor, a different mediator will specify theinteractions between the components of a control law. The components are the following:a controller, a setpoint generator (SPG), a noise generator, a filter, the output and the input.The output drives the actuator. The input represents the current motor position. Every motorthat is controlled by the same method uses the same mediator, only the control parametersare different. An example of how a motor controller is connected is given in Figure 6. TheApplication Software Layer (ASL) will provide commands, speeds or positions, to the mediator.In this case a "Simple position Motor Controller". The mediator will take care of executingthe received commands.

There are two operation modes, normal printing mode and services mode. In the normalprinting mode the controller receives the commands over the line labeled "functional". Po-tential errors detected by a controller are sent back to the ASL over the line labeled "error". Inthe ASL it is programmed how to react on these error messages.

The software necessary to operate the actual electronics, like actuators and sensors, ispresent in the I/O level. If the printer is in service mode the line "diagnostic" is used forsending operation commands from the ASL to the mediator and receiving the requested databack.

4.3.2 Controlling Motor 5Motor 5 is controlled using a PID feedback controller and a feedforward steering controller.The feedforward term is added to the control output, see Figure 7. The feedforward termis calculated using the modeled dynamics of the DC motor, and depends therefore on themodel parameters. The problem with this term is that these parameters are subject to changes

9

Page 10: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

Simple Position Motor Controller

Application Software Layer

IOLayer

AnalogSensor AnalogActuator

D_A

nalo

gSen

sor

D_A

nalogActuator

Input Output

erro

r

functional diag

nost

ic

Figure 6: Software architecture showing a controller connected to outside

in temperature and manufacturer tolerances. To produce an accurate feedforward term themotor parameters have to be constantly checked and recalculated. This calibration takes placeevery two minutes. After calibration the parameters are set in the steering algorithm. The PIDfeedback controller deals with disturbances in the control loop. The measurement frequencyis equal to the sampling frequency, fs. In case of motor 5 this is 1000 Hz. In table 1 thedifferent controller parameters are shown. The break frequency of the filter is fbreak, Kp is theproportional term, and fi and fd are the break frequencies of the integral and the differentialterm respectively.

Figure 7: Original Control Design

4.4 Setpoint GeneratorThe setpoint generator generates the reference signal r in Figure 7. It calculates a positionon the basis of a transition from the current speed to another speed with a certain predefinedacceleration. This acceleration can be set by other parts of the software in the ASL. The speedremains constant until a new request is received. A transition can be started when a certain

10

Page 11: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

Table 1: Parameters of motor 5Parameter Value Unitfs 1000 [Hz]fbreak 250 [Hz]Kp 13139 [V/m]fi 11.14 [Hz]fd 26.52 [Hz]

position has been reached or on a specific moment in time. The setpoint is generated with ahigher precision than an encoder pulse, so that the setpoint does not add noise in addition tothe encoder quantization noise.

4.5 Noise GeneratorA noise generator is implemented in the embedded software for research purposes. Thisnoise is a pseudo random number that is determined every sample and therefore the noise isby approximation white. This noise has a maximum value that can by specified as a percentageof the maximum controller output u. The random number is produced by the Rand() functionof VxWorks.

4.6 Low-Pass FilterIn the embedded control software a low-pass is filter implemented. The differential equation:

fk =a

a + 1· fk−1 +

1a + 1

· vk, (7)

with f representing the filter output, k representing the sample number and v represent-ing the input of the filter. The variable a is a parameter that is set by the motor controller. Thisresult in the following discrete transfer function:

F (z)V (z)

=1

a + 1− az−1, (8)

The bode plot of the transfer function of the filter is depicted in Figure 8.

10−1

100

101

102

103

−40

−20

0

20

frequency in [Hz]

phas

e in

[deg

]

10−1

100

101

102

103

−10

−5

0

5

mag

in [d

B]

Figure 8: Bode plot of the transfer function of the �lter

11

Page 12: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

4.7 Debug LoggingDebug logging is used to detect, locate and correct errors in a program. At critical points inthe code certain information is printed in a file. By examining this file can be checked if oper-ations are performed and if they are performed in the correct order. The debug logging usedin the printer/copier is very extensive. The debug information is divided in debug groups thatconsist of different subgroups with several debug levels. Each level refers to a specific functionor part in the printer. The logging services for the printer are provided by a Debug Log Man-ager (DLM), which is a software component of the printer. The Debug Log Application (DLA)is running on an external computer and is further discussed in section 6.2. This programprovides the user interface and other functionalities for logging services. The computer withthe DLA is called the logPC. The DLA and the DLM are connected by an RS-232 interface.Inside the printer there are more nodes which all have a DLM. These nodes are connected toeach other by a Controller Area Network (CAN). The logPC can be connected to any of thesenodes and can retrieve information from all the nodes present in the printer by making useof the CAN interface.

4.7.1 Logging of the ParametersA standard method of logging the parameters is implemented in the software. This loggingwill start if a parameter in the part of the code that calculates the control output (the Mediator)is set to "true". The parameter will be set to "true" when the mediator receives a "Start-Log" command. The logging will be stopped if this parameter is set to "false" by receiving acommand "Stoplog". During normal operation of the printer/copier nowhere in the code acommand is given that will result in the "StartLog" command. The software has to be adjustedsuch that the logging starts at the right moment.

The signals that are logged are prescribed in "ASimpleLogEntry". A log entry consists of6 signals, namely the time (t), the setpoint (r), the controller output (u), the signal after thelow-pass filter (f ), the injected noise (w) and the input signal (y). As mentioned before, theinput is the actual motor position. Every time the mediator in question calculates a new outputsignal an entry is written in a array. For example, if the motor controller runs at 1000 Hz, 1000entries are written in the array per second. If the number of entries exceeds the prescribed sizeof the array, the array will be rewritten from the top and previous written data will be erased.The array exists only in a temporary memory and is written to the debug file at the momentthe mediator receives a "ShowLog" command. There is a problem with this type of logging.The writing of the array to the debug log file takes 100 percent of the processor time. Noother processes can use the processor during the period of writing. If the logging takes longerthan approximately 1.5 seconds the printer generates a critical error message. This causesthe printer to crash and to shutdown. Because the printer is shutdown it needs to restartand during restart all the debug levels are reset and the debug file is deleted. The loggingcan not be read anymore by DLA. This problem is known and there is a simple solution tothis problem. Adjusting two parameters within a SDS-test, namely in test 22 − 1 − 003 and22−1−004 from 0 to 1, will prevent the printer from shutting down after a critical error. Nowthere is enough time to download the complete debug file before shutting down manually.

12

Page 13: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

5 Adaptation of the Embedded Software in order to MeasureFRF

Some software changes are necessary to measure FRFs with the embedded software. Thereis a special SDS-test that runs motor 5, pinch P5 and the second preheater belt at a certainconstant speed. This is test is SDS-test 16-6-007. The operating situation that is necessary tomeasure the FRF of the system is closely represented by this test. For a correct measurementwe need to adjust this test. The logging is turned on and a noise signal is activated at themoment the test is started. This is done by adding two functions, namely "F_StartLog" and"F_InjectNoise". These functions will trigger events that start injecting the noise and logthe parameters. These functions are called in the state transition between the two statesrepresenting the system in rest and representing the system in operation. This state transitionis activated by pressing the start button on de SDS application. By pressing the stop button onthe SDS application the test is stopped. At this state transfusion two functions are added. Thefirst, "F_StopLog", triggers an event that is responsible for stopping the logging. The second,"F_showlog", will result in writing the array with measured data to the debug file.

Besides adaptations of the SDS-test, the mediator which is responsible for controlling themotor during this test is adapted. In the original mediator the noise was added before thethe signal was filtered by the low-pass filter, see Figure 7. Also the feedforward term is stillpresent. In order to measure only the dynamics of the plant, the noise injection is moved tobehind the low-pass filter. The feedforward signal is removed from the control scheme. Thesechanges are implemented by changing the code of the mediator. The new block diagram isshown in Figure 9.

Figure 9: Adjusted Control Design

During the experiment the setpoint generator generates a position setpoint that increaseswith speed of 250 mm/s and the noise generator generates white noise of 10% of the maximaloutput. For determining FRF the system has to be excited with a signal consisting of allfrequencies. White noise is such a signal. The noise generated in the printer is approximatelywhite noise.

13

Page 14: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

6 Experimental Setup6.1 Physical SetupIn the laboratory of the Dynamics and Control Technology Group (DCT-lab) a VarioprintTM2090printer is available for performing measurement. The printer is attached to a computer by anetwork cable, see Figure 10. On this computer is the SDS-software installed. The logPC isconnected by an RS-232 cable.

Figure 10: Overview of experimental setup

6.2 Debug Log ApplicationThe DLA is necessary to download the debug file from the printer. After starting the DLA awindow appears, which is depicted in 11a. There are six buttons with specified functions. Firstthe com-port on which the RS-232 cable is connected needs to be selected. This can be doneby pressing the top button. After this it is necessary to select which data will be downloaded.This can be done by pressing the button: "GroupLevel", and the screen depicted in Figure11b appears. For the parameters of motor 5, debug group "reg3", Sub group 3 and all debuglevels need to be selected. By pressing "GetData" in the main window, the window depictedin Figure 11c appears. Here you can set the filename of the file where de log will be writtenin. There are different functions on this screen; by pressing "GetDataNumbers" the numberof lines in the debug file is returned. The function "ClearAllData" deletes the log file. Besidesthese functions there can be also a filter specified, so that only a selection of the log file canbe downloaded. This selection can be based on the following options: the last number ofmilliseconds, the last items written in the log or only from a certain debug group.

(a) (b) (c)

Figure 11: DLA: a) main menu, b) set debug level menu, c) get data menu

Besides the measurement data, there is also debug information printed in the debug log.To sort the data and make is suitable to import in Matlab a perl script is written. After sortingthere will be 5 columns with data (r, y, u, w, f ). There are still two options on the DLA that arenot discussed. The first is "Params". With this function it is possible to rename the different

14

Page 15: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

debug subgroups. A small number of debug subgroups are of interest during this experiment.It is not necessary to rename these groups, so this option in not used.

The second one is the parameter control application (PCA). This is a complete differentapplication, which is integrated with the DLA because with windows as operating system, itis only possible for one application to correspond with the COM-port at the same time. ThePCA is not of any interest during the experiments.

6.3 Measurement PropertiesIn the system is friction present. In order to reduce the influence of the nonlinear terms,like coulomb friction, a constant increasing setpoint is chosen. The generator generates aposition setpoint that increases with speed of 250 mm/s (2234 A/D conversion counts persecond). For determining FRF, the system has to be excited with a signal consisting of allfrequencies. White noise is such a signal. The noise generated in the printer is approximatelywhite noise. A white noise of 10% of the maximal output is added on top of the setpointsignal.

In order to perform measurements with the embedded control software, measurementdata has to be stored in the printer and downloaded from the printer for postprocessing.During downloading the data the printer crashes after approximately 1.5 seconds. Changingtwo parameters within SDS-tests, namely in test 22 − 1 − 003 and 22 − 1 − 004 from 0 to 1,will prevent the printer from shutting down, as described in chapter 5. After these measuresthe final measurement time was increased to 20 seconds.

The stand-alone measurements are performed on a printer in standby mode. The printeris cold. The measurements with embedded control software are performed on a warm printer.Nevertheless the SDS-test is called a cold SDS-test. Cold SDS-tests indicate that the printer isnot in operation mode.

15

Page 16: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

7 ResultsAs described in Chapter 3, the sensitivity and the process sensitivity function are identified,see Figure 12 and Figure 13. In these figures the results of the stand-alone and the embeddedsoftware measurement are displayed.

100

101

102

0

0.5

1

cohe

renc

e

Coherence and Bode plot of the Sensitivity function

embeddedstand−alone

100

101

102

−40

−20

0

20

mag

in [d

B]

100

101

102

−200

−100

0

100

200

frequency in [Hz]

phas

e in

[deg

]

Figure 12: FRF of the Sensitivity

100

101

102

0

0.5

1

cohe

renc

e

Coherence and Bode plot of the Process Sensitivity function

embeddedstand−alone

100

101

102

−100

−50

0

50

mag

in [d

B]

100

101

102

−200

−100

0

100

200

frequency in [Hz]

phas

e in

[deg

]

Figure 13: FRF of the Process Sensitivity

From Figure 12, it can be seen that the coherence of the sensitivity plot of the stand-alonemeasurement is for low frequencies closer to one then with the embedded control software.So for low frequencies the measurement with the embedded control software is not as reliableas the stand-alone measurement. The amount of noise is this region is large compared withthe amount of excitation signal. This is not a problem because the dynamic phenomena ofinterest, e.g. eigenfrequencies, lie in the region from 20 Hz till 200 Hz. In this region is themeasurement reliable, since the coherence is close to one. From the sensitivity function, theopen loop transfer function is calculated, using equation 4. The open loop FRF is depictedin Figure 14. Because different amplifiers were used the two plots shifted vertically. Theamplifiers will be identified as part of the plant. Beside that, the location of the two resonancepeaks are different, as indicated in table 2. Both resonance peaks are shifted about 19%towards lower frequencies. This can point to the same cause.

Table 2: stand alone vs. embedded experimentsembedded experiment stand-alone experiment

first resonance 65 [Hz] 79 [Hz]second resonance 135 [Hz] 169 [Hz]

A possible explanation of the drop in eigenfrequency is the change in the stiffness of thedrive belt. The location of a resonance mode can be calculated using equation 9.

ω =

√k

J(9)

Because the inertias of the motor and the preheater belt are constant, the only variablethat can be causing the shift is the stiffness of the drive belt. Warming up the system can bean explanation for this, the stand-alone measurement is performed on a entirely cold printerand the measurement with embedded control software is performed on a heated system. The

16

Page 17: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

stiffness of the drive belt will become less by heating and the frequencies at which the reso-nances appear decrease. Another possibility can be the amount of stretch in the belt. The beltwill not act like a perfect spring. If the nominal velocity is larger during a experiment, the beltwill stretch more and the stiffness of the belt will increase.

100

101

102

−100

−80

−60

−40

−20

0

20

40

mag

in [d

B]

Bode plot of the Open loop FRF

embeddedstand−alone

100

101

102

−200

−100

0

100

200

frequency in [Hz]

phas

e in

[deg

]

Figure 14: FRF of the Open Loop

100

101

102

−100

−50

0

50

mag

in [d

B]

Bode plot of the plant dynamics

embeddedstand−alone

100

101

102

−200

−100

0

100

200

frequency in [Hz]ph

ase

in [d

eg]

Figure 15: FRF of the Plant

When comparing the two frequency response functions of the plant, depicted in Figure 15,not only a difference in gain can be observed. The measurement with the embedded softwareshows less phase delay for higher frequencies. The phase delay of the plant is 180o. This canbe deduced from the -40 dB/decade in the magnitude plot. The sampling time is 1 [ms], so at1000 [Hz] the phase delay due to the zero order hold in the D/A-conversion is 180o, and thisdelay will be 90o at 500 [Hz]. In Figure 16 the unwrapped phase delay of both measurementsis plotted on a linear scale. From the figure can be derived the extra phase delay is about 220o

for the stand-alone and 65o for the measurement with the embedded software. This indicatesthat the time delay due to calculations and measurements with the embedded software takesabout 0.36ms. The time delay in during the stand-alone measurements is more than threetimes as large, namely 1.22ms. The calculation time of the controller is never larger than onesample time. So the A/D-converter, D/A-converter and the amplifier used in the stand-aloneexperiment add more time delay as assumed in the ideal situation. By dividing the FRF ofthe open loop by the FRF of the plant the controller can be calculated, using 5. The controllertogether with the low-pass filter as implemented in the printer is depicted in figure 17.

17

Page 18: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

0 50 100 150 200 250 300 350 400 450 500−600

−500

−400

−300

−200

−100

0

100

200Phase of the FRF of the plant dynamics

frequency in [Hz]

phas

e in

[deg

]

embeddedfirst order fit embeddedstand−alonefirst order fit stand−alone

Figure 16: Phase of the FRF of the Plant onlinear scale

100

101

102

−20

−15

−10

−5

0

5

10

15

mag

in [d

B]

Bode plot of the controller FRF

embeddedstand−alone

100

101

102

−100

−50

0

50

100

frequency in [Hz]

phas

e in

[deg

]

Figure 17: FRF of the controller

18

Page 19: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

8 Conclusions and Recommendations8.1 ConclusionsMeasuring frequency response functions using the embedded control software is possible.Océ has designed a software structure where the components necessary for these measure-ments are present. A noise generator and a logging protocol need to be activated. Besidesthat, a method to store the measurements in the debug logging is implemented. To measurethe FRF a special SDS-test is adapted.

The results of the experiments show that the time delay measured with the embeddedsoftware is less then with the stand-alone data acquisition equipment. Beside that there isanother difference. Both natural frequencies are shifted 19% downwards. This can indi-cate to changes in dynamic behavior between cold and warm operating conditions, since theprinter is heated before the embedded control software experiment and completely cold withthe stand-alone experiments. For example, the stiffness of the drive belt will decrease by theheating of the printer. The second explanation for the shift of the natural frequencies is theamount of stretch in the belt. If a measurement is performed with a larger nominal speed,the belt will stretch more and the stiffness will increase.

8.2 RecommendationsDownloading large debug files has caused problems; the printer/copier shuts down after acertain period of time. A better method of downloading this file is desired, so that it does nottake all the processor capacity. Critical processes have to be able to function during download-ing. If there is a better method implemented, longer measurement can be performed and thatwill lead to more accurate results.

If in future work frequency response functions from other parts of the printer are needed,it is possible to measure FRFs of these parts the same way as been done in this traineeship. Itcan even be possible to measure FRFs in future models by using the same method, becauseOcé uses a lot of generic software components.

The exact reason for the decrease of natural frequencies is not known. More researchis necessary, for example measuring only the stiffness of the drive belt in cold and warmconditions and repeating the stand-alone measurement with the same nominal speed andnoise level as in the measurement with the embedded control software in order to validate theassumption that the nominal speed will influence the stiffness of the belt.

19

Page 20: Measuring a Frequency Response Function using Embedded Control …mate.tue.nl/mate/pdfs/5498.pdf · 2005-06-20 · Measuring a Frequency Response Function using Embedded Control Software

References[2] G.F. Frankin, J.D. Powel, A. Emani-Naeini: Digital control of Dynamic Systems, Addison-

Wesley Publisching Company, 2e edition, 1990

[2] G.F. Frankin, J.D. Powel,M.L. Workman: Feedback Control of Dynamic Systems, Addison-Wesley Publisching Company, 3e edition, 1994

[3] J. Boot: Frequency response measurement in closed loop: brushing up your knowledge, Depart-ment of Mechanical Engineering, University of Technology Eindhoven, April 2003

[4] Boderc Confidential documents, Embedded Systems Institute, Eindhoven

[5] A. Kelley, I. Pohl: De programmeertaal C, Addison-Wesley Publisching Company, 3e edi-tion, 1994

20


Recommended