T100MX APPLICATION EXAMPLES
Programming the M-series built-in hardware is unbelievably
easy using TRiLOGI. We present 5 examples here to illustrate our point. These are fully
functional projects and they represent challenging tasks that demand powerful PLCs, yet
programming them using TRiLOGI is totally effortless. Compare the following examples with
the amount of programming effort needed on other makes of PLCs to handle the same tasks.
You will quickly realize the big saving of programming time when using TRiLOGI together
with the M-series PLCs!
1. (a) Display Alphanumeric Messages on
built-in LCD Display (For T100MD-1616 only)
Only T100MD-1616 has built-in
interface for industry standard alphanumeric LCD module which can range from 1x8, 2x16,
2x20 or 4x20 types. Assignment:
Every 1 second, display a message as follow:
where xx depends on reading of A/D #1 which is returned by
function ADC(1).
Full scale A/D is 4096.
A/D range (0 to 4096) Temperature 0 to 50 degree C
|
Comments:
Every one second, the special bit Clk:1.0s closes and activates Function #1.
Within the Custom Function #1, ADC(1) reads the
A/D converter #1 and converts into degrees. SETLCD displays the string. |
1 (b) Display Alphanumeric Messages on External
Serial LCD Display: MDS100
MDS100 is an optional 4 lines x
20 characters LCD display connected to the PLC's RS485 port (serial port #3). Both
T100MD-1616 and T100MX can use MDS100, although the only reason for T100MD user to use
MDS100 will be to have more than 1 LCD display. Every
1 second, display a message as follow:
where xx depends on reading of A/D #1 which is returned by
function ADC(1).
Full scale A/D is 4096.
A/D range (0 to 4096) Temperature 0 to 50 degree C
|
Comments:
Every one second, the special bit Clk:1.0s closes and
activates Function #1.
Within the Custom Function #1, ADC(1) reads the A/D
converter #1 and converts into degrees. PRINT #3 displays the string. |
2. Motion Control of Stepper Motor
T100MX generates pulses to feed to
stepper motor driver. The maximum speed, acceleration/deceleration and total number of
pulses to generate are definable using TBASIC. Assignment:
- Stepper motor to rotate 100,000 steps.
- Maximum speed = 5000 pps,
- Acceleration = 100 steps to reach full speed.
- Display the # of steps moved on LCD Display model MDS100 every
0.5 seconds.
- At the end of rotation, activate relay #20.
|
|
3. Activate Events at Scheduled Times
T100MX has Real Time Clock which
keeps track of Date and Time and can be used to activate events at scheduled time. Assignment:
- Every day turn on output #1 at 19:00
- Turn OFF output #1 at 7:00
- On 1st Jan 2000 at 12:00 turn ON output #5
- On the same day at 18:00 turn OFF output #5
Note :
1. Tim30s activates Function #1 every 30 seconds.
2. Output #1 is bit #0 of the variable output[1]. The
statement SETBIT output[1],0 turns ON output #1.
3. Actually it may not be necessary to check the minute hand
since when the RTC turns from 18:59 to 19:00, the output will be turned ON as long as
TIME[1]=19. Only when TIME[1]=7, then output #1 needs to be changed. |
|
4. Automatic Climate Control System
Assignment:
- Read desired temperature setting (S) from a potentiometer
connected to A/D #5.
- Read current air temperature (T) from sensor attached to A/D
#1 (T)
- Turn ON cold air-conditioner (output #1)if T > S by more
than 1.5 oC.
- Turn ON hot air-conditioner if (output #2) if S > T by more
than 1.5 oC.
- Turn OFF both hot and cold air-conditioner if T is within +
1.5 oC of S.
- Display both Set Point and Actual Temperature.
Full scale A/D is 4096.
Range of Set Point:
A/D #5 = 0 - 16.0 degree C
A/D #5 =4096 - 30.0 degree C
Range of Sensor:
ADC#1 =0 -10.0 degree C
ADC#1 = 4096 - 50.0 degree C
|
Comments:
One decimal place is used for temperature reading.
All temperature readings are x 10 times. Hence 16.0 degree C
is
represented by 160, -10.0 degree C is represented by -100. |
5. Closed-Loop PID Control of Heating Process
PID
Controller Transfer Function:
Assignment:
- Read desired set-point temperature from a potentiometer
connected to A/D #5 (S) with temperature range between 50 oC - 200 oC
- Measure the process temperature from a thermocouple + signal
conditioner attached to A/D #1(T)
- Compute the Error = S - T. Apply Proportional + Integral +
Derivative (P.I.D) algorithm to compute output X.
- Apply output X to Digital-to-Analog converter D/A #1 to
control a variable position valve that feed fuel to the flame.
- Sample and compute every 1 second.
Full scale A/D range is 4096.
Range of Set Point: A/D #5 = 0 => 50 C
A/D #5 =4096 => 200 C
Range of Sensor: ADC#1 =0 => 0 C
ADC#1 = 4096 =>300 C |
Note:
- We use two decimal places to represent the gains KP, KI and
KD. Each integer unit represents 0.01. Proportional gain KP = 5 is represented by variable
P = 500. Likewise, Integral gains KI = 0.5 is represented by I = 50 and Differential gain
= 0 means Differential term is not used (P.I. only). The integrator limits of + 2048 for
the PIDDEF statement must be multiplied by 100 to be put on the same scale as the P,I and
D parameters.
- The value returned by PIDcompute( ) function is then divided
by 100 to get the real value of controller output. PIDcompute( ) returns a signed value
which can vary from -limit to + limit. We choose the 50% D/A output (4096/2 = 2048) as the
mean control point so that negative values from PIDcompute( ) means D/A output will be
< 2048, positive values means D/A output will be > 2048.
|
© Copyright 2001
Triangle Research International, Inc
All Rights Reserved |