MODPLC
User’s Guide
A Modcomp To PC Interface
Developed by:
Accurate Computer, Inc.
Suite 600
5640 SW 6th Place
Ocala, Florida 34474
(352) 854-0391
And
Crystal Computing, Inc.
9271 SW 18th Road
Boca Raton, Florida 33428
(561) 482-5981
Table Of Contents
Audience............................................................................................................................. 1
Introduction ....................................................................................................................... 1
Installation ......................................................................................................................... 2
Installing the PC4805 .................................................................................................... 2
Installing the MOD Software........................................................................................ 2
Configuring the Interface using the PowerTool ...................................................... 2
Configure the PC4805 Parameters using the PowerTool. ...................................... 4
Configure the Data Blocks using the PowerTool. ................................................... 6
How the driver works: .................................................................................................. 8
Installing the NT.HAN Handler ................................................................................... 8
Appendix A – Sample MAX IV Sysgen ........................................................................ 10
Appendix B - MOD Driver Information ...................................................................... 13
NOTICES:
This manual contains proprietary information of Accurate Computer, Inc. and Crystal
Computing, Inc.
 2000 by Accurate Computer, Inc. and Crystal Computing, Inc. All rights are reserved.
MODPLC is a registered trademark of Crystal Computing, Inc.
Modcomp is a registered trademark of Modcomp, Inc.
Intellution, iFIX are registered trademarks of Intellution, Inc.
Audience
This manual is meant to help the experienced systems engineer install and configure the
MODPLC system. Experience installing ISA expansion cards into PCs and configuring
the Modcomp I/O Bus is required. Knowledge of MODCOMP MAX IV Job Control and
Source Editor is assumed. For the driver installation and configuration on the Windows
NT system, experience with Intellution iFIX revision 2.2 is assumed.
Introduction
This document is provided to allow the experienced Modcomp system analyst to install
and configure the Accurate Computer, Inc. (ACI)/Crystal Computing, Inc. (CCI)
MODPLC system. Once properly installed, the MODPLC system will allow data to be
passed between any Modcomp computer and a standard PC computer as OLE for Process
Control (OPC) data. All MODCOMP data formats are converted to the equivalent format
in the PC during the transfers. This OPC data has all of the properties of Microsoft OLE
data, allowing it to be passed directly into any OLE data receiving program, such as
Microsoft Excel, as well as to any of the OPC compliant SCADA systems such as
Intellution FIX or Wonderware.
The data visibility within the Modcomp system is via Modcomp global common regions.
Data addresses within the PC are specified as the global common name and the offset.
The practical result is that the Modcomp computer system becomes functionally the
world’s largest and fastest Programmable Logic Controller (PLC).
The basic MODPLC system consists of three components: The PC4805 hardware
interface, the NT.HAN handler that resides in the Modcomp system, and the MOD OPC
server software that resides in the PC. The PC4805 provides two Modcomp compatible
16bit parallel interfaces that attach to the Modcomp I/O bus. The NT.HAN handler is a
MAX IV handler that provides all of the interface between the PC4805 and the MAX IV
system. The MOD OPC server software is a group of programs that run under Microsoft
Windows NT that configure the PC4805 hardware and then pass data as requested
between the PC and the Modcomp. All data requests originate in the PC.
The effect of the MODPLC system is to allow the user to remove the Human-Machine
Interface (HMI) and some data manipulation algorithms from the MODCOMP system
while retaining the MODCOMP’s superior data collection and disbursement capabilities.
At the same time, existing field wiring can be retained. In effect, the MODCOMP system
is converted into a superfast Programmable Logic Controller (PLC) supplying data to and
getting data from the OPC compliant PC system.
MODPLC User’s Guide
Page 1
2000 all rights reserved
Installation
Installing the PC4805
The PC4805 is an ISA card that is installed in the PC and then connected to the
Modcomp I/O bus. Additional instructions for installing the PC4805 card are found in
the Accurate Computer, Inc. manual supplied with the PC-4805. Pay special attention to
the selection of the I/O space by switches on the card.
The Accurate Computer, Inc. PC4805 board is a full length ISA board. It must be
installed in a Windows NT compatible computer system by someone experienced with
adding boards to PCs. Static electricity may damage the PC4805. Make sure that you are
properly grounded prior to removing the PC4805 from its protective plastic bag.
1. Set the I/O address in the switches for the PC4805. Make sure that this is a unique
address within the system.
2. Install the card into the PC. Make sure that the card is physically supported by guides
in the PC. Secure the card with the included mounting screw.
3. Attach the ribbon cable assembly to the rear of the PC4805. This is a keyed
connector and will only properly insert one way.
4. Attach the Modcomp I/O bus to the cable assembly via the connector panel.
Installing the MOD Software
The MOD software is supplied on a 3.5in floppy disk. There is a Windows standard
setup program that the user executes. This program (setup.exe) will copy all of the
required files to the Windows NT system. After the required reboot, the parameters for
the PC4805 channels can be configured using the software tool called the PowerTool.
After the PC4805 has been configured, the data blocks within the MAX IV global
commons that are to be accessible to the PC are configured using the PowerTool.
Configuring the Interface using the PowerTool
The MOD PowerTool is the configuration tool for the MOD OPC server running under
Windows NT. Once started, it presents the following screen:
MODPLC User’s Guide
Page 2
2000 all rights reserved
By selecting the “New Connection” button the lower left corner, the PowerTool will
present the following screen:
MODPLC User’s Guide
Page 3
2000 all rights reserved
The user needs to enter new data for each of the text fields in this screen. The Channel
Name is just a descriptive name. For clarity, it should reflect the Modcomp computer
name. The Description field is optional. The Primary Channel and Backup Channel
fields are used to describe which of two PC4805 cards are used for communications when
a redundant configuration is installed. In a non-redundant configuration, only the
Primary Channel is specified. The Enable checkbox allows the MOD driver to begin
communicating with the interface.
Configure the PC4805 Parameters using the PowerTool.
To begin to configure the Modcomp specific parameters of the PC4805, the user clicks
on the “Run Card Config” button on the Channel definition screen. The following screen
is displayed:
MODPLC User’s Guide
Page 4
2000 all rights reserved
The Card Selection part of the screen defines which PC4805 is being configured. In a
redundant configuration, both channels must be configured. On a single system
configuration, only channel 0 needs to be configured.
The MODCOMP Setup part of the screen defines the I/O parameters of the PC4805. The
PC4805 uses and even/odd pair of I/O addresses and DMP addresses. This means that
the values for these fields must be even numbers.
The PC Setup portion of the screen defines the configuration of the PC4805 within the
PC. The Port field is the I/O Port number. The Interrupt is the IRQ. The I/O Address
must match the I/O Address specified in the switches on the PC4805 card.
Once these values are all entered, the user must select the “Write” button to have them
written to the Windows NT Registry. Then the Configuration Utility can be closed.
The user can then select the New Device button on the bottom of the PowerTool Screen.
This button will cause the following screen to be displayed:
MODPLC User’s Guide
Page 5
2000 all rights reserved
The Device Name and Description fields are descriptive fields. The Device Name is
required; the Description field is optional. The Global Common Name is the name of a
Global Common region defined in the Modcomp MAX IV Sysgen.
Configure the Data Blocks using the PowerTool.
Once the Global Common has been specified, the user can start defining the poll records
by selection the “New Data” button at the bottom of the form. It will present the
following screen:
MODPLC User’s Guide
Page 6
2000 all rights reserved
The Block Name field is used as part of the OPC address for the data values defined by
this screen, and should be descriptive of them. The Starting Address is the offset into the
global common of the first data value in this poll record. The ending address and
Address Length define where the poll record ends. These values are zero relative 16 bit
word addresses. The Data Type defines what kind of value resides in the Modcomp
global common. Uint is unsigned integer. The MFP32, MFP48, and MFP64 are
Modcomp proprietary floating point formats. These values will be automatically
converted to the PC floating point format as part of the transfer.
See Appendix B for MOD Driver Specifications.
MODPLC User’s Guide
Page 7
2000 all rights reserved
How the driver works:
Installing the NT.HAN Handler
The MAX IV handler NT.HAN is supplied in several media formats. It consists of 4
files: the installation procedure INSMOD, the NT.HAN object file to be installed in L4,
and NTEQU and NTPLC macro files to be installed on MC.
The MAX IV Handler (NT.HAN) object and macros are added to the system by entering
the following commands to Job Control:
$ASS JC = MTx
$INSMOD
where MTx is the logical device pointing to the installation media.
This procedure will copy the following files to their destination directories:
File name
NT.HAN
NTPLC
NTEQU
Logical File
L4
MC
MC
The procedure for modifying the MODCOMP System Generation (SYSGEN) file is:
1. Insert the statement “INS
sysgen
NTPLC,MC” as the first insert in the I/O section of
MODPLC User’s Guide
Page 8
2000 all rights reserved
2. Insert the statement “INS
NTEQU,MC” following the last INS statement
3. Add the statements below after the last existing CONTROLLER statement
CONTROLLER
NT0,adr,dmp
CONTROLLER
NT1,adr,dmp
Where ‘adr’ is the device address and ‘dmp’ is the DMP number
4. After the CONTROLLER NTx statements, add the following:
PLCGLO
gcname,permissions
.
(continue as needed)
.
ENDPLC
Where ‘gcname’ is the name of a global common that is to be accessible to the
NT system and ‘permissions’ is one of either “READ”, or “WRITE”. A
permission of READ only allows the PC to read from the global common, while
WRITE allows reads or writes.
5. Add the statements below after the last existing DEVICE statement
DEVICE
NTI,NT0
DEVICE
NTO,NT1
See Appendix A for a sample MAX IV sysgen.
MODPLC User’s Guide
Page 9
2000 all rights reserved
Appendix A – Sample MAX IV Sysgen
TTL
*
*
*
*
*
(NTGEN)
INS
PGM
MAX IV SYSBLOCK FOR MODPLC
MC,IVSYS
NTGEN
MAX IV SOFTWARE SYSTEM 100164-K.20
SYSGEN SOURCE FOR 67MB DISC ON 4176A CONTROLLER TYPE 0
MHD MODELS: 4174-1, 4174-2, 4178-1, AND 4178-2
SYSID
TASKMASTER
IIISERVICES
SERPACK
SERPACK
SERPACK
*
*
*
*
NTGEN,MAX,IV,K.20
100,ROUNDROBIN,,50
MAX II/III SERVICES
NORMAL
GSHARE
TSCHEDULERS
ANY CUSTOM REX SERVICES SHOULD BE ADDED HERE
CLOCK
HARDWARE
2,CALENDAR,DISPLAY,UTILIZATION
3X
HARDWARE FLOATING POINT
GLOBAL
GLOBAL
GLOBAL
GLOBAL
SHPRIVATE
GLOBAL1,6
GLOBAL2,28
DIT,5
FAIL,5
10,400
*
*
*
*
*
*
6 PAGES FOR PGC
28 PAGES FOR UPGC
5 PAGES FOR TPIS
5 PAGES FOR ALIVE
A RESYSGEN INCLUDING THE FOLLOWING STATEMENT IS REQUIRED
TO EXECUTE SHARED PROCESSORS. THIS STATEMENT IS INCLUDED
IN THIS STANDARD SYSGEN AS A COMMENT ONLY.
SHLOMO
10,400
TOCLOCK
TIMERS
INTERRUPT
INTERRUPT
INTERRUPT
SYSBUG
ENDSYSTEM
10
#8
#9
#A
#B
64,BOTH,SAV
*
*
TTL MAX IV BASIC I/O BLOCK FOR MODPLC
INS
MC,NTPLC
MACROS FOR ATC ECLIPSE
INS
MC,IVIOS
INS
MC,NTEQU
CONTROLLER
TT,#A
CONSOLE DEVICE
CONTROLLER
NT0,#18,#A,UNTIMED
CONTROLLER
NT1,#19,#B,UNTIMED
PLCGLO
GLOBAL1,WRITE
PLCGLO
GLOBAL2,READ
ENDPLC
CONTROLLER
MT,4,4,TIMED
MAG TAPE
MODPLC User’s Guide
Page 10
2000 all rights reserved
CONTROLLER
*
*
*
ADD ADDITIONAL CONTROLLERS HERE
SYMCONTROL
*
*
*
LX0,3,3,TIMED
S
SPOOLER SYMBIONT
TRANSPORT DEFINITIONS WITH TWINDISC MODIFICATIONS.
FMTRANSPORT
LOGTRANSPORT
AL0,0,LX0,,,,,,,0
L0,AL0,0,4025,NOF
SYSTEM TRANSPORT
FMTRANSPORT
LOGTRANSPORT
AL1,1,LX0,,,,,,,0
L1,AL1,0,4025,NOF
USER TRANSPORT
*
*
*
*
DISC PARTITIONS FOR SECOND TRANSPORT DEFINED ON TP0
DISCDEVICE
TP0,L0,4,1,,62
TRANSIENT PARTITION
TLPDEF
TPD,130
DEVICE
DEVICE
DEVICE
DEVICE
DEVICE
TY,TT
CONSOLE DEVICE
LP,S,134,#0020,,60 IMAGINARY PRINTER
NTI,NT0
NTO,NT1
MT1,MT
MAG TAPE DRIVES
*
*
*
*
*
*
ADD ADDITIONAL DEVICES HERE
ENDIOS
MESSAGES,STALLS
*
TTL MAX IV TASK STRUCTURE BLOCK FOR VDOT I-664 TUNNEL
INS
MC,IVTASK
PRESCHEDULE
SYSLOG,,LM,NOP
SYSTEM CONSOLE LOG TASK
PRESCHEDULE
S,,SM
OUTPUT SPOOLER TASK
PRESCHEDULE
B,,BM
BATCH TASK
PRESCHEDULE
TMP,,SM
TERMINAL MONITOR TASK
*
TRANSIENT
IONODES
ATTENTASK
ROLLER
*
*
*
40
50,25,25
B
,MAPPED
MAX. NO. OF NON-RES TCBS
PRIV,GLOB,MAX-GLOB NODES
INIT. ATTEN. TASK IS B
ROLLER TASK
X,0,0,SM
DU
CO,TYX,TYX
OC,TYX,TYX
DO,TY,TY
LM,QLM,QLM
SM,QSM,QSM
USM,QSM,QSM
BM,QBM,QBM
UBM,QBM,QBM
RO,QRO,QRO
EXCEPT. CONDITION TASK
X TASK
TASK
OPTION
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
MODPLC User’s Guide
Page 11
2000 all rights reserved
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
LOGFILE
IOPERATIONS
FINTASK
*
*
*
TM,QTM,QTM
LMT,QLT,QLT
JM,BJM,BJM
TPD,TP0
LPP,A00,A00
10
2
X
OC TASK
TASK
PECULIAR
STACKS
OPTION
LOGFILE
LOGFILE
LOGFILE
FCBDEFINE
SYSPAGES
FINTASK
ENDTASKS
OC,1,000,SM
UNABORT,AUTO
160,16
U2,U5
CO,TY,TY
OC,TY,TY
10
1
3
OC
OC TASK
MODPLC User’s Guide
Page 12
2000 all rights reserved
Appendix B - MOD Driver Information
Statistics: Maximum Cards – 2 per system. Each card has two channels which operate as
individual devices on the MODCOMP bus. Channel 0 is used for input, channel 1
for output.
Maximum Channels – Unlimited channels, but since each channel represents a card, there
is a practical limit of two per system, or one if a second card is used for
redundancy.
Maximum Devices – Unlimited. Each device represents a MODCOMP Global Common
memory area. Extended Global Commons are not supported.
Maximum Datablocks – Unlimited. Each datablock represents a range of memory in a
particular global common, and is configured with a start word, end word, and
length (number of words).
Maximum Datablock Size – 256 words.
Maximum Datablock Address – 32767
Maximum Datablock Poll Rate – 0, which tells the datablock to poll as quickly as
possible. However, due to internal scan cycles, no single datablock will poll more
often that once per 10 milliseconds.
Data Types Supported – Signed/unsigned 16/32 integer, digital, ASCII, float (IEEE), and
MODCOMP floating point formats (MFP32,MFP48,MFP64).
Features:
- Redundancy at the card level.
- OPC Support (OPC version 1.0a)
- Automatic datablock creation. If enabled, the driver will automatically create a new
datablock or extend an existing one to fit any address which is accessed by a client
but not yet configured.
- Remote control and configuration.
- Exception based processing.
- Secondary poll rates, which allow datablocks which are not being accessed to poll more
slowly or to not poll at all.
- Phased (skewed) poll rates
- Online configuration
- Enable/Disable any device, channel, or datablock.
- Latched data. If enabled, data values will show the last read value when
communications fail.
- Timestamps for last read, last write, and last error at the datablock level.
- Can run as an NT service.
MODPLC User’s Guide
Page 13
2000 all rights reserved
- Supports block writes.
- Poll on demand.
- Individual communications statistics for each channel, device, and datablock.
- Error handling includes user configurable timeouts, retries, and delay time (poll time for
a failed datablock).
- Ability to disable outputs on any given datablock.
- Data type definable at the datablock level or point level.
- Standard signal conditioning options, such as linear scaling; 8, 12, 13, and 15 bit
scaling; and BCD conversion.
MODPLC User’s Guide
Page 14
2000 all rights reserved