home *** CD-ROM | disk | FTP | other *** search
/ Boldly Go Collection / version40.iso / TS / 17A / CTRLSIM.ZIP / MANUAL.DOC < prev    next >
Text File  |  1992-02-27  |  39KB  |  1,057 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.                                   CONTROL-SIM
  23.  
  24.                                   Version 2.0
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.                                   Users Manual
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.              Copywrite 1992, Roger W. Thompson, All rights reserved
  55.  
  56.  
  57.                                   RTW Software
  58.                                 P.O. Box 710292
  59.                                Houston, TX 77271
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.                         CONTROL-SIM Users Manual                Page 2
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.          REGISTRATION
  77.  
  78.          Please feel free to evaluate CONTROL-SIM and distribute copies of
  79.          CONTROL-SIM as long as all files are unaltered and distributed
  80.          together.  If you continue to use CONTROL-SIM you are obligated
  81.          to register this program by sending a U. S. check or money order
  82.          for $35 ($32 + $3 handling) to:
  83.  
  84.                                Roger W. Thompson
  85.                                RTW Software
  86.                                P.O. Box 710292
  87.                                Houston, TX 77271
  88.  
  89.          Texas residents should include  8.25% sales tax.
  90.  
  91.          Upon registration, you will receive the latest version of
  92.          CONTROL-SIM, without the shareware screen.  In addition,
  93.          QuickBASIC source files for the main program and controller
  94.          subroutines, plus library files, will be included to allow
  95.          controller development.  You will also be notified of future
  96.          updates.  The registered version of CONTROL-SIM will be licensed
  97.          to you for single computer system use and it may not be
  98.          distributed in any manner.
  99.  
  100.          Please send any comments or suggestions you may have with regard
  101.          to CONTROL-SIM. If feasible, they may be incorporated in future
  102.          updates.
  103.  
  104.          DISCLAIMER
  105.  
  106.          Although CONTROL-SIM has been tested extensively and is believed
  107.          to produce accurate results if used correctly, no guarantee is
  108.          provided.  RTW Software disclaims all warranties relating to this
  109.          software, whether express or implied, as to the merchantability
  110.          or fitness of this program for any purpose.  RTW Software also
  111.          assumes no liability for any damages, either direct or
  112.          inconsequential, which may result from use of this program.
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.                         CONTROL-SIM Users Manual                Page 3
  136.  
  137.  
  138.      1.0  INTRODUCTION
  139.  
  140.      This program simulates operation of a simple plant control loop.  It
  141.      is intended to be used by engineers and students involved in
  142.      practical digital control system design and application.  Significant
  143.      uses include:
  144.  
  145.        Tuning a controller
  146.        Specification (modeling) of a plant response
  147.        Evaluation of PID and other types of controllers
  148.        Simulation of a typical bounded controller output and input
  149.        Evaluation of effects of quantization and sample rate
  150.        Time response of LaPlace transforms
  151.        Conversion from LaPlace transforms to state equations
  152.        Development of control algorithms (registered users only)
  153.  
  154.      The program is designed to be easy to use allowing the user to
  155.      concentrate on control system performance characteristics rather than
  156.      program commands and variables or extensive math.  Full featured
  157.      menu's and an initial (default) example permit the beginner to
  158.      experiment quickly, while the more advanced user can create,
  159.      evaluate, and save plant configuration files for future reference.
  160.  
  161.      a.  CONTROL-SIM System Requirements:
  162.  
  163.          * IBM PC, XT, AT or compatible
  164.          * EGA OR VGA color display
  165.          * IBM/Epson compatible printer
  166.          * MS-DOS 2.1 or higher
  167.  
  168.      b.  Installation
  169.  
  170.      For backup, make a working copy of the original distribution disc.
  171.  
  172.      CONTROL-SIM can be run from either a floppy disc or from the hard
  173.      disc.  If hard disc operation is desired, create a new separate
  174.      directory and copy all CONTROL-SIM files to the new directory.
  175.      For example, at C:\ prompt enter:
  176.  
  177.        MKDIR ctrl
  178.        COPY A:\*.* C:\ctrl
  179.  
  180.      The original disc and the new directory should contain the following
  181.      files:
  182.  
  183.        README       Initial instruct     PROCESS.PLT   Sample config file
  184.        CS.EXE       Program              TEMP.PLT      Sample config file
  185.        MANUAL.DOC   Documentation        SERVO.PLT     Sample config file
  186.        DX1.PRX      Utility file         EXAMPL1.PLT   Sample config file
  187.        CTRLBLK.EGX  Picture file         EXAMPL2.PLT   Sample config file
  188.        DAT1.PRN     Sample data file     COMPCKT.PLT   Sample config file
  189.                                          FZVALVE.PLT   Sample config file
  190.                                          FZSERVO.PLT   Sample config file
  191.                                          PIPDEL1.PLT   Sample config file
  192.                                          PIPDEL2.PLT   Sample config file
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.                         CONTROL-SIM Users Manual                Page 4
  202.  
  203.  
  204.      2.0  BASIC OPERATION
  205.  
  206.      Begin CONTROL-SIM operation by entering at C:\ prompt:
  207.  
  208.        CD \CTRL
  209.        CS
  210.  
  211.      After introductory screens are displayed, the Main Menu will appear
  212.      with the following selections available:
  213.  
  214.        1. DISPLAY DATA
  215.        2. DISPLAY BLOCK DIAGRAM DATA
  216.        3. PLOT DATA
  217.        4. MODIFY PLANT MODEL
  218.        5. MODIFY CONTROLLER
  219.        6. PLAYBACK DATA
  220.        7. CONFIGURATION FILES
  221.        8. EXIT
  222.  
  223.      The first 3 selections will display time response data as follows:
  224.  
  225.        DISPLAY DATA                - Meter and Bar Graph
  226.        DISPLAY BLOCK DIAGRAM DATA  - Meter
  227.        PLOT DATA                   - Chart Recorder traces
  228.  
  229.      In all three, the user can enter setpoints, activate a load change,
  230.      change loop mode (open or closed), print or record data, and observe
  231.      elapsed time from setpoint initiation.  The DISPLAY DATA/DISPLAY
  232.      BLOCK DIAGRAM DATA selections also provide an IAE (Integrated
  233.      Absolute Error) indication to aid in tuning.  The PLOT display allows
  234.      user selection of up to 4 chart speeds depending on sample rate.
  235.  
  236.      The MODIFY PLANT MODEL selection is concerned with plant
  237.      configuration, consisting of the plant model (LaPlace transform),
  238.      delay time (or system lag time), sample rate, and equation display
  239.      status.
  240.  
  241.      The MODIFY CONTROLLER selection is concerned with controller
  242.      selection, control constants, quantization level, and range of
  243.      controller output.
  244.  
  245.      The PLAYBACK DATA selection permits the user to view data text files
  246.      recorded previously.
  247.  
  248.      CONFIGURATION FILES provides the means to save and retrieve
  249.      plant/controller configuration files and to designate an alternate
  250.      directory.
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.                         CONTROL-SIM Users Manual                Page 5
  268.  
  269.  
  270.      3.0 SYSTEM DESCRIPTION (Reference DISPLAY BLOCK DIAGRAM DATA)
  271.  
  272.      The simulated system includes the CONTROLLER and the PLANT.  The
  273.      CONTROLLER includes data acquisition and control output functions,
  274.      controller function, loop mode function, and display of setpoint,
  275.      measurement, and control values.  The PLANT consists of the plant
  276.      transfer function, transport delay, and load change function.
  277.  
  278.      The CONTROLLER simulates a typical hardware digital control system
  279.      where conditioned analog data (voltage) from a PLANT sensor is
  280.      sampled and converted to a digital value.  The resolution of the
  281.      digital value, or measurement, depends on the quantization level of
  282.      the analog-to-digital converter.  Typically, 12 bits is used,
  283.      resulting in 4096 resolvable steps.  The measured value is then
  284.      compared with the user input setpoint value within the controller
  285.      function.  The difference between setpoint value and measured value,
  286.      or error, is then used as input to the controller algorithm.  The
  287.      controller algorithm produces an output signal which is then
  288.      converted from digital to analog and sent to the PLANT actuator as a
  289.      voltage signal.  Again, the resolution of the digital-to-analog
  290.      converter is dependant on the quantization level, typically 12 bits.
  291.      If the output is allowed to swing both positive and negative about
  292.      zero, it is said to be bipolar and the resolution applies to the
  293.      complete range.  For example, 12 bits, or 4096 steps, would actually
  294.      be 2048 steps above zero and 2048 below zero.
  295.  
  296.      The PLANT is simulated by a transfer function and a delay.  The
  297.      transfer function is assumed to represent all the elements of the
  298.      plant loop from actuator input to sensor output.  The transport delay
  299.      is the total deadtime of the plant loop which is the sum of the time
  300.      delays attributable to each element, including transport time between
  301.      elements.  The transfer function can be as simple as a single time
  302.      constant or as complex as a multiple of time constants up to 4th
  303.      order.  Typical plant hardware elements are actuators, control
  304.      valves, servo valves, electrical power controls, motors, heaters,
  305.      sensors, and signal conditioners.
  306.  
  307.      The user can specify the plant transfer function as a LaPlace
  308.      transform.  As an example, the LaPlace transform of a simple
  309.      integration function is:
  310.                                    1           .5
  311.                        G(s)  =  --------  =  --------
  312.                                 (2s + 1)     (s + .5)
  313.  
  314.               where  .5 = the reciprocal of the time constant, 2 seconds
  315.  
  316.      this is equivalent to the following RC network:
  317.  
  318.                               R = 2 megohm
  319.                       o-----^\/^\/----------------o
  320.                                        |
  321.                                       ___
  322.        INPUT                          ___ C = 1 microfarad         OUTPUT
  323.                                        |
  324.                                        |
  325.                       o----------------------------o
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.                         CONTROL-SIM Users Manual                Page 6
  334.  
  335.  
  336.      CONTROL-SIM converts the LaPlace transform into state equations (also
  337.      called state space or state variables) for ease of computation.  A
  338.      further conversion is necessary from the continuous form of state
  339.      equations to discrete form state equations, to account for the
  340.      effects of sampled data.  The resulting difference equations, which
  341.      are updated each scan cycle, are simple multiply and add/subtract
  342.      operations which the computer performs handily.
  343.  
  344.      4.0 DETAILED OPERATION
  345.  
  346.      4.1 DISPLAY DATA Selection
  347.  
  348.        Displays
  349.  
  350.        Process - the 3 basic control system variables are displayed in
  351.          both bar graph and digital form.  The (S)etpoint value, or
  352.          reference value, is the desired value set by the user.  The
  353.          (C)ontrol value (also called manipulated variable) is the value
  354.          output by the Controller.  The (M)easure value (also called
  355.          controlled variable) is the Plant output value.  This is the
  356.          variable which the control system is attempting to control.
  357.  
  358.        Elapsed Time - is displayed in seconds.  The time is reset to 0
  359.          when a setpoint or load change is set, to reflect the response
  360.          time of the plant.
  361.  
  362.        Mode indicator - shows the loop status (see Mode change below).
  363.  
  364.        Integrated Absolute Error (IAE) - is displayed to give a measure of
  365.          relative performance of the same upset conditions (setpoint or
  366.          load change) with different tuning constants or other
  367.          controller/plant settings.  It is reset to 0 when a setpoint or
  368.          load change is activated.  IAE is a measurement of the area
  369.          existing between the setpoint value and the measured value
  370.          response.
  371.  
  372.        User Controls
  373.  
  374.        Setpoints - Enter setpoint value (0 - 100) and depress the S key to
  375.          activate the new setpoint.  All system inputs and outputs are
  376.          represented as 0 to 100% full scale.  An audible beep is sounded
  377.          to signify acceptance of the new value.
  378.  
  379.          In event an incorrect number is entered, the X key can be used to
  380.          erase the entry, prior to activating the setpoint.  If a
  381.          numerical key is held depressed, the new value will become 100.
  382.  
  383.          AUTOSET is a feature that, when activated by the A key, causes
  384.          the last 2 setpoints entered to be reset.  Each time the S key is
  385.          depressed, the setpoints alternate.  This simplifies repeated
  386.          execution as when evaluating the effects of tuning changes.
  387.  
  388.        Load transient - the L key causes the Control value (input to Plant
  389.          transfer function) to change by 50% full scale for 1 sample.  The
  390.          load change alternates polarity each time L is depressed.  This
  391.          allows evaluation of the control response to a plant upset.
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.                         CONTROL-SIM Users Manual                Page 7
  400.  
  401.  
  402.          Often times a system tuned for best response to setpoint change
  403.          will not fare as well during a load transient as a system tuned
  404.          for best load response.  The converse is also true.
  405.  
  406.      Mode change - the M key changes the loop mode from Closed Loop to
  407.          Open Loop or vice versa.  The default Closed Loop mode causes the
  408.          measurement of plant output to feedback to the Controller
  409.          algorithm, thereby allowing corrections to made in the next
  410.          Controller output.  The Open Loop mode bypasses the Controller
  411.          algorithm and connects the setpoint value directly to the
  412.          Controller output.  Open Loop allows the Plant response to be
  413.          evaluated without any controlling influence.  For example, if the
  414.          simple integration transfer function illustrated previously is
  415.          implemented in Open Loop, the resulting time response will be
  416.          indicated as 63.2% (approx. 1 - 1/e) of the setpoint change at 2
  417.          seconds.
  418.  
  419.        Print/Record - the P key is used to start or stop data recording.
  420.          Initially, when P is depressed, the user is requested to select
  421.          File or Printer.
  422.  
  423.          If File is selected, the user is then requested to enter the file
  424.          name (without extension), after which all data is logged to the
  425.          disc file.  The extension .PRN is automatically appended.  If the
  426.          file already exists, the user is given opportunity to change the
  427.          name or reuse the same name.  Files are limited to approx.  900
  428.          records, or samples, to conserve disc space and to aid in data
  429.          review.  If longer runs are desired, reselect and enter another
  430.          file name (e.g. DAT1, DAT2, etc).
  431.  
  432.          If Printer is selected, data printing begins immediately.  In
  433.          both cases, a header is recorded followed by elapsed time,
  434.          setpoint, control, and measure values for each sample point.
  435.          Logging continues until the P key is once again depressed or the
  436.          T key is used to terminate the display.
  437.  
  438.        Terminate - the T key is used to terminate the display (or plot)
  439.          operations and return to the initial selection menu.  All
  440.          variables are retained and if one of the display operations is
  441.          again selected, all values will resume from the point of
  442.          termination.
  443.  
  444.      4.2 DISPLAY BLOCK DIAGRAM DATA Selection
  445.  
  446.        Same as DISPLAY DATA except that data is displayed in meter form
  447.        only and related to the CONTROL-SIM Block Diagram, as test points.
  448.        See 3.0 System Description for block diagram discussion.
  449.  
  450.      4.3 PLOT DATA Selection
  451.  
  452.        Chart Display
  453.  
  454.          Data is presented in a strip chart type display, except that the
  455.          "pens" move and the "paper" remains still.  When the right edge
  456.          of the screen is reached, the "pens", or vertical bar,  continue
  457.          from the left edge, erasing old traces and writing new traces as
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.                         CONTROL-SIM Users Manual                Page 8
  466.  
  467.  
  468.          it proceeds.  Grid markers are also written to provide
  469.          appropriate time scaling.
  470.  
  471.        User Controls
  472.  
  473.          User controls are the same as DISPLAY DATA with the addition of:
  474.  
  475.        Chart Speed - can be changed to better depict the area of interest
  476.          for a given sample rate.  Speed is increased by depressing the
  477.          "+" key and decreased with the "-" key. Four possible settings
  478.          are available.  For each setting, the elapsed time between grid
  479.          marks (vertical dots) is displayed in seconds.  Depending on
  480.          sample time selected, some speed positions may not be effective,
  481.          resulting in grid marks too dense, or too spread out, to be
  482.          useful.  If the Space bar is depressed, all updates are suspended
  483.          until the Space bar is pressed again.
  484.  
  485.      4.4 MODIFY PLANT MODEL selection
  486.  
  487.        After selection, a window is opened containing a display of the
  488.        current Plant Transfer Function in factored form.  In addition to
  489.        the transfer function, the current transport delay (deadtime) is
  490.        indicated as Td and the current sample period is indicated as Ts.
  491.  
  492.        The user is asked "Is the plant correctly defined?" and a "yes"
  493.        response results in computation of state equations and return to
  494.        the main menu.
  495.  
  496.        If "no", or any key other than "y", is entered, the PLANT MODEL
  497.        MODIFICATION menu is presented.
  498.  
  499.        Modify Transfer Function
  500.  
  501.          When selected, the format of the transfer function is displayed
  502.          as follows:
  503.  
  504.                        b0(s + b1)(s + b2)(s + b3)
  505.               Gp(s) =  ---------------------------------
  506.                        1(s + a1)(s + a2)(s + a3)(s + a4)
  507.  
  508.          and the user is asked to enter the nominator term, b0.  Term b0
  509.          must be a non-zero constant.  After each term is entered, the
  510.          next in sequence is requested, proceeding through the nominator
  511.          terms, b0 to b3, and then the denominator terms, a1 to a4.  The
  512.          b(i) terms are the "zeros" and the a(i) terms are the "poles" of
  513.          the plant transfer function, which can be fourth order.
  514.  
  515.          Entering "0" for a term results is the operator "s" only, as in
  516.          the case of a "pole" at zero value.  The operator "s" is
  517.          equivalent to jw (j omega = j2(pi)f).  Depressing the Enter key
  518.          without a constant, terminates entry of the b(i) terms, jumping
  519.          to the a(i) terms.  Depressing Enter again without constants
  520.          terminates all entry and the previous display of the actual
  521.          transfer function is presented again for review.  The program
  522.          checks for a(i) values that match b(i) values and if present,
  523.          both terms are negated, since they cancel each other.
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.                         CONTROL-SIM Users Manual                Page 9
  532.  
  533.  
  534.          At this point, if the user is satisfied with the result, he can
  535.          answer "yes" to compute state equations, or he may enter "no" to
  536.          re-enter the PLANT MODEL MODIFICATION menu.
  537.  
  538.        Modify Delay Time
  539.  
  540.          When selected, a value for delay time in seconds can be entered.
  541.          Note, that the program only allows delay time that is a multiple
  542.          of sample time.  In the event a delay less than sample time is
  543.          entered, the resulting delay will be 0.  When satisfied with
  544.          value, depress "E" to exit to previous menu.
  545.  
  546.        Modify Sample Time
  547.  
  548.          When selected, a value for sample period in seconds can be
  549.          entered.  The sample period should be less than 1/2 the plant
  550.          time constant to insure data integrity and maintain control.
  551.          Note, that although sample time is really a Controller parameter,
  552.          it is included here because it affects the discrete state
  553.          equation computation. When satisfied with value, depress "E" to
  554.          exit to previous menu.
  555.  
  556.        Display Equations
  557.  
  558.          This selection allows the user to display the resulting plant
  559.          continuous and discrete state equations, in matrix form.  In both
  560.          cases, state variables, input variables, and output variables are
  561.          shown.  Depress "C" to change the display status (ON/OFF) and "E"
  562.          to exit.
  563.  
  564.        Exit
  565.  
  566.          Exit from PLANT MODEL MODIFICATION returns to the current
  567.          transfer function display and subsequent computation of state
  568.          equations, if the user is satisfied with its definition.
  569.  
  570.      4.5 MODIFY CONTROLLER
  571.  
  572.        The menu of changes to the Controller includes the following
  573.        selections:
  574.  
  575.        Select Controller
  576.  
  577.          Three controller choices are currently available: PID, FUZZY, &
  578.          PIP.
  579.  
  580.      (a) The PID (Proportional-Integral-Derivative) Controller is the
  581.          default controller.  It is a general purpose, widely used
  582.          technique that allows the user to adjust control system
  583.          performance to accommodate various plant characteristics.
  584.          The transfer function of the PID controller is:
  585.  
  586.                Gc(s) = Kp + Ki/s + Kds
  587.  
  588.          The 3 constants are user specified and affect proportional gain,
  589.          reset rate (inverse integral time), and derivative time
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.                        CONTROL-SIM Users Manual                Page 10
  598.  
  599.  
  600.          respectively.
  601.  
  602.          If Ki and Kd are set to zero, the controller output is
  603.          proportional to the error between setpoint and measurement.  The
  604.          amount of output can be changed with the proportional gain (Kp)
  605.          factor.  This factor is also called Proportional Band which is
  606.          100/Kp.  The proportional band is the band over which the control
  607.          output is allowed to swing.  With Kp = .1, the proportional band
  608.          is 10% of the 100% control output range.  A disadvantage of
  609.          proportional control is that an offset results between the
  610.          setpoint and the measured value.
  611.  
  612.          To overcome offset error, Integral, or Automatic Reset, action is
  613.          used to slowly shift the controller output as long as an error
  614.          exists.  The Ki factor is the number of repeats per second, or
  615.          the number of repeats of proportional action required to equal
  616.          the integral action.  The inverse of Ki is the reset time
  617.          constant, which is the amount of time it takes the integral
  618.          control to produce the same action as proportional control.
  619.          Since the reset action can build to a large number in certain
  620.          situations, resulting in excessive overshoots, the reset windup
  621.          action is limited to the range of the control output.  This
  622.          feature is also called anti-reset-windup.
  623.  
  624.          The fast action of the proportional control and the slow action
  625.          of integral control are adequate for many applications, but the
  626.          reset action may result in too much overshoot.  By adding
  627.          derivative control, also called rate action, to the controller,
  628.          it is possible to decrease the effect of sudden change in the
  629.          measurement value by anticipating the effect on controller
  630.          output.  The Derivative time constant (Kd) is the time in seconds
  631.          for the proportional controller to produce a signal equal to the
  632.          rate signal.
  633.  
  634.  
  635.      (b) The FUZZY Controller is a rule based algorithm which responds to
  636.          classes of current error and past error.  The current error
  637.          between setpoint and measurement is classified as positive big,
  638.          positive small, zero, negative small, or negative big.  With this
  639.          fuzzy relationship established for both current and past errors,
  640.          a rule will fire resulting in a controller output signal which is
  641.          similarly classified.  If the change in setpoint is larger than
  642.          the big classification, the class definitions are scaled up by an
  643.          order of magnitude.  When the errors become less than the big
  644.          classification, the class definitions are scaled back down.  This
  645.          controller allows the user to determine constants from subjective
  646.          evaluation of the plant response, including non-linear action.
  647.  
  648.          The user can define the class sizes in the Modify Control
  649.          Constants menu selection.  Kp is used to specify positive &
  650.          negative big, Ki is used to specify positive & negative small,
  651.          and Kd is used to specify zero.
  652.  
  653.      (c) The PIP Controller is a predictive PI controller.  In this design
  654.          the derivative portion of the PID controller is replaced with
  655.          another integration function.  The derivative function has no
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.                        CONTROL-SIM Users Manual                Page 11
  664.  
  665.  
  666.          effect on long delays.  This controller is especially suited for
  667.          plants with long deadtimes with respect to the plant's dominant
  668.          time constant.  The predictor portion integrates the difference
  669.          in control outputs between present and delayed values.  The
  670.          significance of the predictor portion is determined by the users
  671.          estimate of L, the total deadtime.  The resulting response is
  672.          considerably faster than the PI controller alone.
  673.  
  674.          For this controller, the user has 3 adjustments available.  The
  675.          Kp and Ki constants are similar to the PID controller, but the Kd
  676.          constant should be used to specify deadtime in seconds.
  677.  
  678.          After controller selection is complete, enter E to return to the
  679.          MODIFY CONTROLLER menu.
  680.  
  681.        Modify Control Constants
  682.  
  683.          This selection allows the user to enter values for the 3
  684.          controller constants.  After depressing the P, I, or D key, the
  685.          value for the Kp, Ki, or Kd (or equivalent) constant may be
  686.          entered.  Depressing E returns to the Main menu.
  687.  
  688.        Modify Quantization Level
  689.  
  690.          This selection permits the user to change the resolution of the
  691.          simulated analog-to-digital and digital-to-analog converters.
  692.          The default selection is 12 bits which is fairly standard in
  693.          hardware.  This results in an full scale continuous input signal
  694.          being quantized into 4096 steps (or approx. .0244 %FS per step).
  695.          As less bits are used, control becomes less smooth.  A maximum of
  696.          128 bits is permitted.  Depressing B allows entry of Number of
  697.          bits with resulting step size indicated.  Depressing E returns to
  698.          the Main menu.
  699.  
  700.        Change Output Range
  701.  
  702.          The default controller output signal is UNIPOLAR, ranging from 0
  703.          to 100 %FS.  While this range is suitable for many plant devices
  704.          such as valves which move from closed to open, some devices such
  705.          as servo motors benefit from a BIPOLAR control signal, which can
  706.          move from -100 to 100 %FS.  Note that when bipolar output is
  707.          specified though, that the selected resolution (say 12 bits)
  708.          applies across the complete range (200 %FS) resulting in a step
  709.          size of .0488 %FS.  Depress C to change the range selection and E
  710.          to return to the Main menu.
  711.  
  712.      4.6 PLAYBACK
  713.  
  714.        If data has been recorded under the display menu selections, it can
  715.        be reviewed with the PLAYBACK selection.  All files having the .PRN
  716.        extension are displayed with size, date, and time shown.  The
  717.        highlight bar can be moved up and down to select the desired file.
  718.  
  719.        The data is displayed in column format identical to printer output,
  720.        with Elapsed Time, Setpoint, Control, and Measure values presented.
  721.        The arrow up and down keys, PgUp and PgDn keys, plus Home and End
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.                        CONTROL-SIM Users Manual                Page 12
  730.  
  731.  
  732.        keys can be used to scroll to the desired section of the file.
  733.        Note that the recorded, or printed, data includes more decimal
  734.        places than the display screens indicate, to provide better detail
  735.        of the control action.  The header at the beginning of the file
  736.        contains the name of the configuration file (.PLT) in use when the
  737.        data was recorded as well as the mode (open or closed loop) and the
  738.        date.
  739.  
  740.        The Esc key is used to terminate the data file playback and return
  741.        to the Main menu or select another data file for review.
  742.  
  743.      4.7 CONFIGURATION FILES
  744.  
  745.        The CONFIGURATION FILES selection results in choices of RETRIEVE,
  746.        SAVE, DIRECTORY, or EXIT.
  747.  
  748.        Retrieve
  749.  
  750.          When selected, Retrieve presents a display of all configuration
  751.          files (.PLT), including size, date, and time.  The highlight bar
  752.          can be moved up and down to select the desired previously saved
  753.          configuration.
  754.  
  755.          A retrieved configuration file contains all the user specified
  756.          characteristics of the MODIFY PLANT MODEL and MODIFY CONTROLLER
  757.          selections.  Upon retrieval, the state equations are computed for
  758.          the saved transfer function with return to the Main menu.
  759.  
  760.        Save
  761.  
  762.          This selection is used to save all the configuration
  763.          characteristics of the current PLANT MODEL and CONTROLLER.
  764.  
  765.          The user is requested to specify the file name, without an
  766.          extension.  In the event file already exists, the user is
  767.          prompted to choose another name or rewrite the file.
  768.  
  769.        Directory
  770.  
  771.          This selection displays the current directory, including disc
  772.          drive and subdirectories.  A change in directory is accomplished
  773.          by depressing "D" and entering desired new directory.  "E" is
  774.          depressed to return to the CONFIGURATION FILES menu.  After a
  775.          directory has been changed, all file actions, including data
  776.          recording and playback will use the current directory until
  777.          program termination.  The default directory is where CONTROL-SIM
  778.          is located.
  779.  
  780.        Exit
  781.  
  782.          Returns selection to the Main menu.
  783.  
  784.      5.0  APPLICATIONS
  785.  
  786.        A few examples of CONTROL-SIM use are included as follows:
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.                        CONTROL-SIM Users Manual                Page 13
  796.  
  797.  
  798.        Tuning
  799.  
  800.          Although there are only 3 adjustments to make, selecting the
  801.          proper values to obtain optimum performance can be tedious.
  802.          Several techniques have been devised to at least get the
  803.          controller into the 'ballpark'.  At that point it may still come
  804.          down to fine corrections by trial and error to get the desired
  805.          result.
  806.  
  807.          One of the most popular and oldest techniques for tuning a PID
  808.          controller is called the Zeigler and Nichols Method.  First the
  809.          integral (Ki) and derivative (Kd) constants are set to zero.
  810.          Then the proportional gain factor is increased until the loop
  811.          just becomes unstable and a small setpoint change results in
  812.          sustained oscillation.  The period of the oscillation (Pu), in
  813.          seconds, is then noted along with the value of Kp (Ku).  The
  814.          constants are then set according to the following formulas
  815.          depending on which type of control is desired (or maybe works
  816.          best):
  817.  
  818.              Proportional only    Kp = .5 Ku
  819.  
  820.              PI control           Kp = .45 Ku, Ki = 1/(.8 Pu)
  821.  
  822.              PID control          Kp = .6 Ku, Ki = 1/(.5 Pu), Kd = .125 Pu
  823.  
  824.        Open Loop Characteristics
  825.  
  826.          To determine the time response of a transfer function, enter the
  827.          transfer function and select DISPLAY & PRINT DATA.  Enter a file
  828.          name, or just depress to output to printer, and then select Open
  829.          Loop by depressing M.  To determine a unit step response, enter 1
  830.          then depress S.  Depress T to terminate when measurement value
  831.          has settled.  Note that some transfer functions are very unstable
  832.          and the result will be quickly out of range.  Examine the
  833.          printout, or select Playback of the file, to see the time versus
  834.          measurement values.
  835.  
  836.        Simulation of a Text Book Example
  837.  
  838.          The closed loop response of a transfer function can be determined
  839.          by setting the PID controller proportional gain to 1 (Kp = 1, Ki
  840.          = 0, Kd = 0) and examining the response to a setpoint change.
  841.  
  842.          For example, assume the following servo system G(s) is entered.
  843.                      .32
  844.             G(s) = -------
  845.                    s(s + .6)
  846.  
  847.          Since the closed loop transfer function with unity feedback is
  848.                        G(s)           .32
  849.             F(s) = ------------ = -------------
  850.                   1 + G(s)H(s)   s^2 + .6s + .32
  851.  
  852.          with the characteristic form
  853.             s^2 + 2(zeta)(omega-n)s + (omega-n )^2
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.                        CONTROL-SIM Users Manual                Page 14
  862.  
  863.  
  864.  
  865.          omega-n, the natural frequency, is equal to 2(pi)f, or f = .09 hz
  866.          and zeta, the damping ratio, is equal to .53.  The damping ratio
  867.          of a second order system is related to per cent overshoot by a
  868.          standard curve (or calculation) which in this case is 15%.
  869.  
  870.          With the output range set to bipolar and quantization level set
  871.          at 128 bits, CONTROL-SIM will respond to a setpoint change with a
  872.          response which indicates 15% overshoot and approximately 11
  873.          seconds settling time.  Select EXAMPL1.PLT.
  874.  
  875.          This technique then allows evaluation of many control systems
  876.          text book examples and problems.
  877.  
  878.        Reset Controller and Plant
  879.  
  880.          Sometimes after modifying the plant or controller, the
  881.          measurement or control signals may become saturated due to
  882.          excessive internal calculations.  It is easy to set up control
  883.          loops that are not controllable.
  884.  
  885.          To reset the controller and plant, enter the Controller Selection
  886.          menu and reselect the controller.  This will return states to
  887.          initial conditions.
  888.  
  889.        Example Configuration Files
  890.  
  891.      Name        Type Order K  Poles  Zeros  Td  Ts  Kp  Ki  Kd   Bits Out
  892.  
  893.      PROCESS.PLT  PID 2nd   1    -1         .2   .1  2.8 .25  2.5   12 Uni
  894.                                 -.2
  895.      TEMP.PLT     PID 1st .001 -.001         0   10  50  1.3   0    12 Uni
  896.      SERVO.PLT    PID 3rd  .3     0    -1    0   .1   1  .5   .5    12  Bi
  897.                                 -.2
  898.                                 -1.2
  899.      EXAMPL1.PLT  PID 2nd .32     0          0   .25  1    0   0   128  Bi
  900.                                 -.6
  901.      EXAMPL2.PLT  PID 2nd  10    -1          0    .1 .8   1.2 .4   128  Bi
  902.                                 -.5
  903.      COMPCKT.PLT  PID 4th 63.5    0   -.015  0   .01  3   1.08  1   12  Bi
  904.                                 -.012
  905.                                  -2
  906.                                 -20
  907.      FZVALVE.PLT  FZ  1st   2    -1          0   .25  .2  .05 .005  12 Uni
  908.      FZSERVO.PLT  FZ  2nd  .32    0          0    .1   1   .2  .02  12  Bi
  909.                                 -.6
  910.      PIPDEL1.PLT  PIP 1st   1    -1          5   .25   1   1    5   12 Uni
  911.      PIPDEL2.PLT  PIP 4th  64    -1         10    .1   1  1.5  11   12 Uni
  912.                                  -2
  913.                                  -4
  914.                                  -8
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.                        CONTROL-SIM Users Manual                Page 15
  928.  
  929.  
  930.      6.0  REFERENCES
  931.  
  932.  
  933.        The following are references used by the author which the user
  934.        should refer to for better understanding of control systems.
  935.  
  936.          Claggett, E. H., "Keep a Notebook of Digital Control Algorithms,
  937.          Control Engineering", Cahners Publishing, Denver, CO, October
  938.          1980
  939.  
  940.          Del Toro, V. and Parker, S. R., "Principles of Control Systems
  941.          Engineering, McGraw-Hill, New York, NY 1960
  942.  
  943.          De Silva, C. W. and Aronson, M. H., "Process Control, A
  944.          Professional Course", Measurements and Data Corporation,
  945.          Pittsburg, PA, 1976
  946.  
  947.          Franklin, G. F. and Powell, J. D., "Digital Control of Dynamic
  948.          Systems", Addison-Wesley, Reading, MA, 1980
  949.  
  950.          Grabbe, E. M., Ramo S., and Woolridge D. E., "Handbook of
  951.          Automation, Computation, and Control, Vol 3, Systems and
  952.          Components", John Wiley & Sons, New York, NY, 1961
  953.  
  954.          Haaglund, T., "A Predictive PI Controller for Processes with Long
  955.          Dead Times, IEEE Control Systems Magazine", IEEE, New York, NY,
  956.          February 1992
  957.  
  958.          Hafer, C. R., "Electronics Engineering for Professional
  959.          Engineers' Examinations", McGraw-Hill, New York, NY, 1989
  960.  
  961.          Kuo, B. C., "Digital Control Systems", Holt, Rhinehart and
  962.          Winston, New York, NY, 1980
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.  
  993.                        CONTROL-SIM Users Manual                Page 16
  994.  
  995.  
  996.      APPENDIX 1  ERROR MESSAGES
  997.  
  998.        Bad File Name or Number   Enter correctly.
  999.  
  1000.        Data Overflow             Program automatically terminates due to
  1001.                                   excessively large calculated values.
  1002.                                   Re-enter program and check plant and
  1003.                                   controller settings.  Settings may be
  1004.                                   unrealistic.
  1005.  
  1006.        Delay storage area        Choice of delay time and sample rate
  1007.         exceeded                  requires more memory than allocated.
  1008.                                   Decrease delay or increase sample time.
  1009.  
  1010.        Disc Full                 Change drive path or exit program and
  1011.                                   make room.
  1012.  
  1013.        File Already Exists       Determine whether to overwrite.
  1014.  
  1015.        File Not Found            Non-existent file name.
  1016.  
  1017.        Invalid                   Value entered not allowed.
  1018.  
  1019.        Printer Not Ready         Turn on printer or check paper.
  1020.  
  1021.        Redo From Start           Entry out of sequence.  Enter correctly
  1022.                                  or exit and re-enter.
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.