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.

  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:


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 File
NT.HAN / L4
NTPLC / MC
NTEQU / MC

The procedure for modifying the MODCOMP System Generation (SYSGEN) file is:

  1. Insert the statement “INS NTPLC,MC” as the first insert in the I/O section of sysgen
  1. Insert the statement “INS NTEQU,MC” following the last INS statement
  1. 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

  1. 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.

  1. 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