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......
Introduction......
Installation......
Installing the PC4805......
Installing the MOD Software......
Configuring the Interface using the PowerTool......
Configure the PC4805 Parameters using the PowerTool......
Configure the Data Blocks using the PowerTool......
How the driver works:......
Installing the NT.HAN Handler......
Appendix A – Sample MAX IV Sysgen......
Appendix B - MOD Driver Information......
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.
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.
- Set the I/O address in the switches for the PC4805. Make sure that this is a unique address within the system.
- 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.
- Attach the ribbon cable assembly to the rear of the PC4805. This is a keyed connector and will only properly insert one way.
- 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:
By selecting the “New Connection” button the lower left corner, the PowerTool will present the following screen:
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:
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:
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:
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.
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 / Logical FileNT.HAN / L4
NTPLC / MC
NTEQU / MC
The procedure for modifying the MODCOMP System Generation (SYSGEN) file is:
- Insert the statement “INS NTPLC,MC” as the first insert in the I/O section of sysgen
- Insert the statement “INS NTEQU,MC” following the last INS statement
- 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
- 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.
- 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.
Appendix A – Sample MAX IV Sysgen
TTL (NTGEN) MAX IV SYSBLOCK FOR MODPLC
INS MC,IVSYS
PGM 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 NTGEN,MAX,IV,K.20
TASKMASTER 100,ROUNDROBIN,,50
IIISERVICES MAX II/III SERVICES
SERPACK NORMAL
SERPACK GSHARE
SERPACK TSCHEDULERS
*
* ANY CUSTOM REX SERVICES SHOULD BE ADDED HERE
*
*
CLOCK 2,CALENDAR,DISPLAY,UTILIZATION
HARDWARE 3X HARDWARE FLOATING POINT
*
GLOBAL GLOBAL1,6 6 PAGES FOR PGC
GLOBAL GLOBAL2,28 28 PAGES FOR UPGC
GLOBAL DIT,5 5 PAGES FOR TPIS
GLOBAL FAIL,5 5 PAGES FOR ALIVE
SHPRIVATE 10,400
*
* 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 10
TIMERS #8
INTERRUPT #9
INTERRUPT #A
INTERRUPT #B
SYSBUG 64,BOTH,SAV
ENDSYSTEM
*
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
CONTROLLER LX0,3,3,TIMED
*
* ADD ADDITIONAL CONTROLLERS HERE
*
SYMCONTROL S SPOOLER SYMBIONT
*
* TRANSPORT DEFINITIONS WITH TWINDISC MODIFICATIONS.
*
FMTRANSPORT AL0,0,LX0,,,,,,,0
LOGTRANSPORT L0,AL0,0,4025,NOF SYSTEM TRANSPORT
*
FMTRANSPORT AL1,1,LX0,,,,,,,0
LOGTRANSPORT 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 TY,TT CONSOLE DEVICE
DEVICE LP,S,134,#0020,,60 IMAGINARY PRINTER
DEVICE NTI,NT0
DEVICE NTO,NT1
DEVICE 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 40 MAX. NO. OF NON-RES TCBS
IONODES 50,25,25 PRIV,GLOB,MAX-GLOB NODES
ATTENTASK B INIT. ATTEN. TASK IS B
ROLLER ,MAPPED ROLLER TASK
*
* X TASK
*
TASK X,0,0,SM EXCEPT. CONDITION TASK
OPTION DU
LOGFILE CO,TYX,TYX
LOGFILE OC,TYX,TYX
LOGFILE DO,TY,TY
LOGFILE LM,QLM,QLM
LOGFILE SM,QSM,QSM
LOGFILE USM,QSM,QSM
LOGFILE BM,QBM,QBM
LOGFILE UBM,QBM,QBM
LOGFILE RO,QRO,QRO
LOGFILE TM,QTM,QTM
LOGFILE LMT,QLT,QLT
LOGFILE JM,BJM,BJM
LOGFILE TPD,TP0
LOGFILE LPP,A00,A00
LOGFILE 10
IOPERATIONS 2
FINTASK X
*
* OC TASK
*
TASK OC,1,000,SM OC TASK
PECULIAR UNABORT,AUTO
STACKS 160,16
OPTION U2,U5
LOGFILE CO,TY,TY
LOGFILE OC,TY,TY
LOGFILE 10
FCBDEFINE 1
SYSPAGES 3
FINTASK OC
ENDTASKS
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.
- 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 1
2000 all rights reserved