February 1st, 2000
Objective:
Familiarize ourselves with the MatrixX functionality.
To simulate the step response of a boiler plant given the state space model.
The simulation is setup to give the students experimental practice with
state space control.
Progress:
The plant is a multiple input multiple output model for
a boiler from a power plant. Elkund developed the original model.
During the first week this boiler was simulated on the Realsim package.
Step inputs were sent into each plant input. The resulting output
will show if the plant is stable or unstable without control. The
plant without control is unstable as expected.
The computer simulation of the boiler worked, as expected, so the next step was to simulate the control blocks through the AC104 with function generators as the input signals. Function generators were used in place of the step functions. The output from the simulation was expected to go to infinity. When one input was set at 5V, the respected output would saturate. This was the expected result.
The next step is to implement a controller to stabilize
the system.
February 8th, 2000
Objective:
To simulate a boiler plant given the state space
model and state space controller. The simulation is setup to give
the students experimental practice with state space control.
Progress:
The plant is a multiple input multiple output model for
a boiler from a power plant. Elkund developed the original model.
During the first week this boiler was simulated on the Realsim package.
This week’s goal is to implement a state space controller. Apurva Naik’s
Masters Project Report was used as a guideline for the simulation.
The “observer” blocks were created using data from Naik’s report.
Step inputs were sent into each plant’s inputs. The outputs from
the plant should stabilize at 1. The plant did react in the expected
manner.
The plant and controller worked as expected. The next step was to simulate the control blocks through the AC104 with function generators as the input signals. Function generators were used in place of the step functions. The output from the simulation was expected to follow the inputs from the function generators. When one input was set at 5V, the respected output would settle at 5V, after time. This did not work.
February 15th, 2000
Progress:
We continued analysis of the MIMO system. The output
results in a stable system. The next step was to generate the autocode
and run the system on the AC-104. During the simulation on the AC-104,
we found the outputs diverged to infinity given a step input. This
result differed from the MatrixX simulation. We reanalyzed the MatrixX
simulation as well as the Realsim hardware connection editor. There
was no apparent reason for the differing results.
Our conclusion for the day was to have Dr. Anakwa
contact someone from MatrixX to analyze our system. We suspect that
the AC-104 is not solving the differential equations fast enough.
The problem could also be due to our version of MatrixX being an older
limited version.
February 22nd, 2000
Progress:
The AC-104 outputs diverged to infinity when the plant
and controller were both continuous. We know from the initial systems
simulated during the first few weeks that a discrete controller can control
a continuous plant for a simple system. The controller from last
week was converted to a discrete block. We simulated this system
and the results were a stable output that followed the step input.
When we tried this system on the AC-104 the outputs still diverged to infinity.
We reanalyzed the MatrixX simulation as well as the Realsim hardware connection
editor. There was no apparent reason for the differing results.
From this weeks results and last weeks results we believe that the AC-104 cannot solve the differential equations fast enough. To test this idea we modified the system from a 4-input, 2-output to a 2-input, 2-output system. When running this on the AC-104 we found that the smaller system did function properly. Our conclusion is that the AC-104 cannot handle large matrix calculations. Next week we will try to simulate the same system using transfer functions instead of state variable system blocks.
February 29th, 2000
Objective:
Simulate the MIMO plant using transfer functions instead
of state variable. The AC-104 does not properly simulate the MIMO
system using state variables. Taking the system to a more basic format,
transfer function, may allow the AC-104 to simulate the system.
Progress:
The AC-104 does not simulate the MIMO systems.
Also, from last week, it was able to simulate the 2-input, 2-output system.
The MIMO system will be broken down into its transfer functions and simulated.
This system fails when simulated in the Realsim package and the AC-104.
The transfer functions were determined using Matlab. After the AC-104
failure, each block was checked to assure that it was properly converted.
Once the blocks were checked, the transfer functions were rechecked in
Matlab and found to be correct. During the Matlab analysis it was
noticed that the poles of some of the transfer functions were close to
1.0. In the Z-plane the system is unstable for values outside of
the unit circle. The system runs stable and then goes unstable suddenly.
It is believed that the conversion from state space to transfer function
form uses a conical form. It can be shown that higher order systems
will map to unstable regions in the Z-plane. It is our belief that
this is what is occuring in our design. As a result, the system goes
unstable.
March 7th, 2000
Objective:
The AC-104 does not properly simulate the MIMO system
using state variables. The only solution is to wait for the upgraded
software package. During the wait we will simulate a logic plant
using Matlab.
Progress:
The AC-104 does not simulate the MIMO systems.
It has been determined, through conversations with the MatrixX support
that our version of the software can not solve the internal equations quickly
enough to simulate with the AC104. While we are waitung for the new
software to be installed, we were given a logic plant to be simulated.
This logic circuit has 2 inputs, position and velocity. Using these
inputs an error is calculated as the output. The plant was succesfully
created and tested using Matlab. It was tested using various outputs
to ensure that it functioned properly. We were unable to simulate
this same plant using MatrixX because the proper licenses were not available.
From speaking with the MatrixX vendor, we know that there is a program
available that will convert Simulink layouts directly to Realsim.
This software will be available to Bradley in the near future. The
next phase will be to create the controller that will run this plant.
March 21st, 2000
The computers were not working. We spent the entire day waiting on the computer lab director to fix the computers. Someone loaded software onto our computer and then deleted essential path files when they erased their software. Chris Mattus said that it would take an entire day for him to fix. We spent the day catching up on our lab notebooks and analyzing our data.
March 28th, 2000
Progress:
We discovered a flaw in our original design for the simple
SISO system from week 1. We were loading the entire system into the
AC104 for simulation purposes. The AC104 has D/A and A/D converters
built into its hardware. Therefore when we simulated the system using the
Systembuild software , there should have been an A/D to the left of the
controller and a D/A to the right of the controller. By loading the
entire system into the AC104 we were not getting accurate results because
we were not taking into consideration, the built-in A/D and D/A's in the
AC104. This is what resulted in such great differences between the
AC104 results and the Systembuild results. To address this, we designed
the plant using resistors, capacitors and op amps. We will load only
the controller into the AC104 and attempt to control the plant that we
will build from our design.We took the plant from week 1, and designed
it using resistors, capacitors and op amps. The design was not complete
at the end of the day. We will continue this next week.
April 4, 2000
Progress:
We designed the circuit using a simulation package on
the computers in the lab. The simulations match the expected results.
The circuit is shown below.
April 11, 2000
Progress:
The circuit designed from last week was built.
A step input was put into the system and the resulting output matched the
simulated results.
April 18, 2000
Progress:
The plant built last week was connected to the AC104
and code was generated for the controller portion of the system in MatrixX.
The code was downloaded to the AC104 and run at a frequency of 10Hz.
The output was found to almost match that of the simulations. The
only problem was that the overshoot was still too large and the settling
time was also longer. We tried adjusting the scheduler frequency
on the AC104 to test different sampling rates. We found that the
system behaves better at approximately 15Hz. We also found that above
60Hz or below 9Hz, the system is unstable. We decided to re-discretize
the controller to 15Hz and test the output. This will be completed
next week.
April 25, 2000
Progress:
We prepared for our final presentation next week.
We also completed the simulation of the SISO systems with a sampling interval
of 15Hz. The results still have overshoot, but the system is behaving
closer to what is expected.