CA2031951C - Configurable communication interface module for a programmable controller - Google Patents

Configurable communication interface module for a programmable controller Download PDF

Info

Publication number
CA2031951C
CA2031951C CA002031951A CA2031951A CA2031951C CA 2031951 C CA2031951 C CA 2031951C CA 002031951 A CA002031951 A CA 002031951A CA 2031951 A CA2031951 A CA 2031951A CA 2031951 C CA2031951 C CA 2031951C
Authority
CA
Canada
Prior art keywords
data
module
inquiries
memory
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CA002031951A
Other languages
French (fr)
Other versions
CA2031951A1 (en
Inventor
Craig S. Hyatt
Gary A. Turek
Richard J. Molus, Sr.
Emmanuel G. Dela Hostria
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Allen Bradley Co LLC
Original Assignee
Allen Bradley Co LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Allen Bradley Co LLC filed Critical Allen Bradley Co LLC
Publication of CA2031951A1 publication Critical patent/CA2031951A1/en
Application granted granted Critical
Publication of CA2031951C publication Critical patent/CA2031951C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Communication Control (AREA)

Abstract

A module interfaces a programmable controller to several serial communication networks over which data may be exchanged according to different protocols. A module has a central controller and a separate port circuit for each of the networks. Each port circuit includes a microprocessor and a shared memory to which both the central controller and the port microprocessor have access for the exchange of data. The central controller transfers data from the shared memories to a module output coupled to other components of the programmable controller. A removable memory cartridge stores a plurality of programs for execution by the port microprocessors to exchange data over the networks using different communication protocols.
Configuration data is stored in the module defining which program is to be transferred from the memory cartridge into the shared memory of each port circuit. Protocol parameter configuration inquiries are stored for each program so that the user can be queried to select values for the parameters of the communication protocol used by the program.

Description

2~3~9a1 CONFIGURABLE COMMUNICATION INTERFACE MODULE
FOR A PROGRAMMABLE CONTROLLER
The present invention relates to programmable controllers which are employed to control the operation of one or more pieces of manufacturing equipment, and more particularly to modules which interface the programmable controller to external devices using a serial communication link.
Programmable controllers, such as the one described in U.S. Patent No.4,858,101, typically are connected to industrial equipment, such as assembly lines and machine tools, to sequentially operate the equipment in accordance with a stored control program. The control program comprises instructions which are read out in rapid sequence and executed to examine the condition of selected sensing devices on the controlled equipment, or to energize or deenergize selected operating devices on the controlled equipment contingent upon the status of one or more of the examined sensing devices.
Many types of sensing devices have been devised for detecting various conditions on the controlled equipment and ~ providing an input signal to the programmable controller. The simplest of these types of devices are switches which provide a DC or an AC signal to the programmable controller. Other devices, such as temperature or pressure sensors provide a four to twenty milliampere signal having a magnitude which corresponds to the magnitude of the condition being sensed.
Similarly with respect to the operating devices, the programmable controller must be capable of providing a variety of electrical output signals either DC, AC or analog current 2Q3~~5I
signals for driving the different types of operating devices on the controlled equipment. In order to provide a programmable controller capable of being interfaced to a wide variety of industrial equipment, modularized controllers have been developed which allow the use of different combinations of input and output modules depending upon the requirements of the specific industrial equipment being controlled.
As industrial processes became more complex, a more sophisticated sensing and control system was required. In many instances, the simple voltage or current inputs and outputs of the programmable controller were insufficient to communicate the data to and from the equipment. In many instances, more sophisticated sensors were devised to provide detailed data about the individual workpieces being handled by the controlled equipment. Fox example, automobile assembly lines use radio frequency transponder tags mounted either on the automobile or the assembly line carriage for the automobile. As the automobile passes a work station, a transceiver mounted on the work station interrogates the RF transponder tag to acquire data about the specific automobile being processed. Such data, for example, identifies the model of car as well as the options and features to be incorporated. Once the transceiver has interrogated the transponder tag, the data regarding the automobile is provided to a programmable controller at the work station over a serial communication link.
Various types of these sophisticated sensing and operating devices, manufactured by different companies and utilizing different communication protocols may have to be interfaced to the same programmable controller. Although these devices often use standard public-domain serial communication _2_ 203I9~1 protocols, their manufacturers have also utilized proprietary protocols. In order to provide a programmable controller with the greatest degree of flexibility to connect a wide variety of sensing and operating devices, the programmable controller must be configurable to communicate using of a variety of serial protocols. In addition, a given programmable controller in a specific installation may have to communicate using a number of different protocols simultaneously.
A large assembly line may be controlled by a number of programmable controllers. In which case, a serial communication network interconnects the programmable controllers allowing them to exchange data regarding the operation of the assembly line.
A host computer is often coupled to the network to receive assembly line status information from the programmable controllers and issue commands to them.
A module provides a serial communication interface for coupling input and output (I/0) devices and other remote apparatus to a programmable controller. The module contains a serial port circuit which has a processor that executes a program to supervise the exchange data between the programmable controller and the external devices. The exchange of data utilizes a defined serial communication protocol and the processor can execute different programs depending upon which protocol is being used. The port circuit also includes a memory for storing the program executed by the processor. In addition, signal drivers are provided to electrically couple the module to a communication link for the external devices.
-3-~~3~~~1 The communication module further includes a connector into which a removable memory cartridge may be inserted. The memory cartridge provides non-volatile storage for a program that controls the processor. A mechanism is provided in the module to transfer the program from the memory cartridge to the memory in the port circuit. This enables the communication protocol to be changed by changing the memory cartridge and transferring a different program into the port circuit memory.
In the preferred embodiment, the communication module has a number of port circuits so that several serial communication links may be coupled to the module. Although this embodiment has particular applicability as a input module for a programmable controller, it may also be used in a stand-alone manner interconnecting the serial communication links for the exchange of data among the links. The same or different programs may be executed by each port circuit processor, thereby enabling communication with different protocols. In this case, several programs are stored in one memory cartridge or multiple memory cartridge connectors are provided. Configuration data is stored in the module indicating from which memory cartridge the program for each port circuit is to be transferred.
A communication protocol used by the communication module can require the user to select parameter options, such as baud rate, the length of the data characters, and the number of stop bits. The user is afforded the opportunity to configure the port circuit by selecting specific options. However, different protocols can have different parameters, which means that the port circuit configuration procedure is dependent upon the particular protocol being used. Therefore, a set of protocol parameter inquiries is stored in the memory cartridge along
-4-~03~~~~
with the protocol program. These inquiries are transferred into the communication module and are used to query the user to select the specific protocol parameter options.
The general object of the present invention is to provide a serial communication module for a programmable controller, which can be configured to exchange data with external devices using one of several protocols.
Another object is to be able to configure the serial communication module with different protocol data stored in removable cartridges.
Yet another object of the present invention is to store configuration inquiries in the cartridges, which inquiries are employed to query the user to select the options to configure the communication protocol parameters.
~riaf Daaerifltion~~.he Drawin~~s FIGURE 1 is a pictorial representation of a programmable controller;
FIGURE 2 is a block schematic diagram of a serial communication module incorporating the present invention;
FIGURE 3 is a block schematic diagram of a shared random access memory in the module;
FIGURE 4 is a memory map of the serial comrnunication module storage locations;
FIGURE 5 is a memory map of the protocol cartridge memory;
_5_ 2~3~~~1 FIGURE 6 depicts the data structure of one entry in the configuration inquires section of the protocol cartridge memory; and FIGURE 7 is a flowchart of a routine which queries the user to select configuration parameter options for the ports of the serial communication module.
Figure 1 illustrates a conventional programmable controller 10, such as an Allen-Bradley 1771 series system, which executes program instructions to operate a machine. The controller 10 includes a rack 11 in which a number of functional modules 12, 13 and 15 are housed and interconnected by a mother board within the rack. The rack 11 includes a power supply which provides electricity to each of the functional modules. A processor module 12 is provided to store and execute a user-defined control program to control the operation of the machine. Located elsewhere in the rack 11 are a number of input/output (I/0) modules 13 which interface the processor module 12 to sensing an operating device on the controlled machine.
i One of the functional modules ~s an communication module 15 which exchanges data between sensing and operating devices via a serial communication link 1~. Up to three such communication links can be simultaneously coupled to a trio of ports 14a-c on the serial communication module 15. As illustrated in Figure 1, different types of I/0 devices 17, such as a radio frequency tag transceiver, are coupled to the 2Q3~9~~
communication link 16 to exchange data with the programmable controller 10. A serial communication link to another programmable controller or a host computer (not shown) is connected to I/0 port 14c. The communication module 15 also S includes a configuration port 19 to which a programming terminal 18 is connected for configuring the module to perform specific tasks.
A unique feature of the serial communication module 15 is a pair of removable communication protocol cartridges 20a and 20b plugged into sockets through the front panel of the module.
Each protocol cartridge stores two different communication protocol programs for the three I/0 ports 14a-c of the module.
The module can be reconfigured for a different set of communication protocols merely by changing the protocol cartridges. Since the sockets are located on the exposed front panel, the protocol cartridges may be replaced without disassembly of the module or its removal from the rack.
Figure 2 illustrates the components of the serial communication module 15. The module is built around a parallel data bus 21, a parallel address bus 22 and a set of control lines forming a control bus 23, all of which extend among the components of the module. Coupled to these buses 21-23 is a module controller 24 which governs the overall operation of the module and the exchange of data between the I/0 ports 14a-c and the backplane of the rack 11. The module controller 24 may be an 80C188-10 model microcontroller manufactured by Intel Corp.
which includes an internal memory, timers, counters, a system clock generator and a system bus controller in one integrated circuit package. The module controller 24 receives timing signals from a clock 25.

A read only memory (ROM) 26 stores a program for execution by the module controller 24 and an electrically erasable programmable read only memory (EEPROM) 27 stores configuration data provided to the module 15 via the programming terminal 18.
Alternatively, this configuration data may be received by the communication module 15 across the rack backplane from the processor module 13 or a host computer coupled to the programmable controller 10. A module random access memory (RAM) 28 provides storage locations in which the module controller 24 retains different variables and intermediate processing results which are used in carrying out its control function. Other storage locations in the module RAM 28 .are allocated to store data for other module components, as will be described.
As noted previously, the programming terminal 18 is connected to a configuration port 19 of the communication module 15 in order to supply configuration data defining the module's operation. The module controller 24 supervises the exchange of data via the configuration port using a communication protocol which is permanently programmed into the module and not user alterable. In order to exchange data, the configuration port 19 is coupled by a driver circuit 29 to a universal asynchronous receiver/transmitter (UART) 30. The UART is a conventional device which translates the serial data exchanged between the module and the programming terminal 18 into the parallel format of the data bus 21 and the internal components of the module.
The DART 30 receives timing information from a port clock 31.
The module circuitry for each serial I/0 port 19a-c includes a separate port microprocessor 34a-c, such as a 80C32 device manufactured by Siemens. This microprocessor type includes internal random access memory, UART, timers and _g_ 203I9~1 parallel I/0 ports. The internal UART of each I/0 port microprocessor 34a-b is coupled to a port connector on the front panel of the module 15 by a driver circuit 36a-c, respectively. The driver circuits interface the module's internal electrical signal levels to those which conform to several serial communication standards, such as RS-232, RS-422 and RS-485.
The I/0 port circuit also includes a shared random access memory (RAM) 32a-c which couples the I/0 port microprocessor 34a-c to the module data and address buses 21 and 22. Each of the shared random access memories 32a-b receives a timing signal from port clock 31 and control signals from a shared RAM
controller 40, which is coupled to the module controller 24 via the control bus 23 and to the I/0 port microprocessors 34a-c.
Alternatively, dual-ported RAM's can be used instead of shared RAM circuitry.
The details for one of the port shared RAM's 32a-c are shown in Figure 3. The shared RAM includes two separate memory devices designated as program RAM 4I and message RAM 42. The program RAM 41 stores the program fox the associated I/0 port microprocessor 34a-c, Which program supervises communication via the port and inherently defines the communication protocol for that port. Hereinafter these programs are referred to as protocol programs. The message RAM 42 provides storage locations for the data being communicated via the corresponding serial I/0 port. The two RAM's 41 and 42 are coupled to an internal RAM address bus 43 and a RAM data bus 49. A first set of address buffers 46 couple the lines of the RAM address bus 43 to the module address bus 22, and a first set of data buffers 48 couple the lines of the RAM data bus 44 to the module data bus 21. Similarly, a second set of address buffers 50 couple the RAM address bus 43 to the address lines from the associated port microprocessor 34a-c, and a second set of data buffers 52 couple the data lines from the associated port microprocessor to the RAM data bus 44. The sets of address and data buffers 96-52 receive separate enabling control signals from the shared RAM controller 40.
As described previously, two separate protocol cartridges 20a and 20b may be plugged into the serial communication module 15 to program the three I/0 ports with a specific communication protocol, such as any of several standardized ones. As shown in Figure 2, each protocol cartridge 20a and 20b has two read only memories (referred to herein as ROM's A1 and A2, or B1 and B2), within each of which is stored a separate program for execution by a port microprocessor to implement serial communication according to a different protocol. Each cartridge ROM A1, A2, B1 and B2 is coupled to the module data and address buses 21 and 22 and receives signals from control bus 23. The ROM's in the protocol cartridge 20a and 20b may be programmable read only memories into which the communication module manufacturer or the user has stored the protocol programs using conventional programming techniques and equipment. Such programs are similar to the programs used by previously available microprocessor based devices which control the serial communication of data over a network. As will be described, one of the protocol programs is executed by each active port microprocessor 34a-c.
The serial communication module 15 occupies two slots within rack 11 and couples to the rack backplane connectors for each of the two slots. Two~backplane interface circuits SA and 56 are connected to the module buses 21-23 to exchange data between the module 15 and other modules of the programmable controller rack 11. The backplane interface circuits 54 and 56 receive timing signals from a backplane clock 58. The backplane interface circuits 54 and 56 relieve the module controller 28 of many functions related to communication with the programmable controller processor module 12 or other modules 14 over the rack backplane 11. The backplane interface circuits 54 and 56 provide both discrete byte and data block transfer capability. Any of several well-known backplane interface circuits may be used, such as the one disclosed in u.S. Patent Application Serial No. 07/249,415 filed on September 23, 1988.
From the above description of the circuitry for the serial communication module 15, it is apparent that the module utilizes several different memory devices. Some of these devices, such as the ROM 26, EEPROM 27 and module RAM 28 are accessible by only the module controller 29, whereas the shared RAM's 32a-c are accessible by either the module controller 24 or the associated I/0 port microprocessor 34a-c.
Figure 4 represents a memory map of all the memory devices in the serial serial communication module 15. A group of addresses 61 are assigned to the storage locations in ROM 26 which contain the program that is executed by the module controller 24. Another group of addresses 62 are assigned to the storage locations in module RAM 28, which is subdivided into sections for holding data for different components of the serial communication module 15. For example, one section is utilized to store constants, variables, intermediate processing results and other data for the module controller 24; while ~Q~~9~~
other sections act as buffers for data going to and from the backplane interfaces 54 and 56. Additional sections can be provided as buffers for data going to and from the shared RAM's 32a-c, if requiring the module controller 24 to wait for direct access to the RAM's adversely affects the processing. In this case, a background task can be used to transfer the data between the appropriate shared RAM 32a-c and the system RAM 28.
Other blocks of addresses 63-66 have been assigned to ROM's A1, A2, B1 and B2 in the protocol cartridges 20a and 20b.
The shared RAM's 32a-c are accessed by the associated I/0 port microprocessor 34a-c and by the module controller 24.
However, the latter device only needs access to the program memory 41 in the shared RAM's during configuration of the I/0 ports. Therefore, in order to conserve address space, the two components of the shared RAM (program RAM 41 and message RAM
42) for each port can be assigned the same block of addresses 67-69 as illustrated in Figure 4. In order to select either the program RAM 41 or the message RAM 42, a signal on one of the control lines 60 from the shared RAM controller 40 is toggled.
A final group of addresses 70 are assigned to the EEPROM
27 to store system configuration data. This data defines module parameters, such as which ROM on which protocol i cartridge contains the protocol program for each I/O port A, B
and C and port specific parameters, such as baud and serial character length, etc. In addition, configuration data is stored in the EEPROM for the two backplane interfaces 54 and 56. A complete set of default parameters are stored in the EEPROM by the manufacturer. However, if these default parameters are not acceptable for the user's application (and they probably will not be acceptable), the user can alter the parameters via the terminal 18 connected to the configuration port 19.
The terminal presents the user with a menu of functions from which to choose. In order to redefine the protocols for an I/0 port, the user initially would select the function to configure basic module parameters and identify which protocol cartridge ROM A1, A2, B1 or B2 contains the program for the port 14a-c being configured.
When the user exits the basic module configuration function, the module controller 24 transfers the contents of the designated protocol cartridge ROM into other memory devices in the communication module 15. Each protocol cartridge ROM
A1, A2, B1 and 82 is subdivided into sections for storing different types of data as depicted in Figure 5. A sizeable portion 71 of each protocol cartridge ROM contains the program code for execution by the associated I/0 port microprocessor 34a-c. Another block of memory locations 72 stores initialization data for the port program, while status messages which the port program displays on terminal 18 are stored in another section 73. The final section of the protocol cartridge ROM stores inquires, which are used to query the module user during configuration of the port parameters, as will be explained.
In transferring the contents of the protocol cartridges 20a and 20b, the module controller 24 reads blocks of data from the designated cartridge ROM for the Il0 port by sequentially addressing protocol cartridge storage locations via address bus 22 to read data via bus 21. After reading a block of data, the module controller requests the shared RAM controller 40 for 2031~~~
access to the shared RAM 32a-c of the appropriate port. When the access is granted, the program code, initialization data and program messages from the protocol cartridge RAM are stored in the program RAM 91 of the shared RAM. The configuration inquiries in section 74 of the protocol cartridge ROM are transferred into an area of the module RAM 28 designated for that data. The same type of transfer of data from the protocol cartridges 20a and 20b to each port shared RAM 32a-c occurs automatically upon power-up of the programmable controller 10.
After the transfer of the protocol cartridge data, the user may alter the configuration parameters of the particular I/0 port. Since each serial communication protocol program stored in the cartridges 20a and 20b can have a different group of user variable parameters and options, the configuration inquiries to be displayed on the terminal are unique to that protocol and are stored in the cartridge 20a and 20b with the communication protocol program. As noted, these inquiries are now stored in module RAM 28. When the user chooses to alter a given I/0 part's configuration parameters, the inquiries for that port are sequentially displayed on the terminal 18. Several inquiries may be used to define a given parameter. For example, to define the baud rate of the serial I/0 port, a series of inquiries are used, each presenting one of the acceptable rates (e. g. 300, 1200, 2400, etc.) to the user. The user is asked to answer yes 2S or no as to whether the choice displayed by a given inquiry is acceptable. The configuration routine loops through all of the inquiries for a given parameter until the user enters an affirmative response to one of the inquiries. The routine then advances to the first inquiry for the next parameter in the sequence.

~03~~~1 The structure of the data block 80 for one inquiry stored in module RAM 28 is depicted in Figure 6. The stored inquiries are consecutively numbered and the first word of the data block has a byte 81 which contains that number. The other byte 82 of the first word indicates the number of the parameter to which the inquiry relates. As will be described, the inquiry and parameter numbers are used to sequentially access the inquiries. The second word in the inquiry data block 80 contains a byte 83 which identifies the number of the particular option for this inquiry. For example, if the parameter is the number of stop bits and the options are 1, 1.5 and 2, the inquiry for 2 stop bits is option number three. The other byte 84 of the second Word designates the type of data which will be inputted and stored in response to this inquiry.
For instance, the parameter may be stored as bit type data where combinations of one or more bits represent the different possible option selections, or the parameter may be a byte or word of data which stores a numerical parameter value entered by the user.
The third word 85 of the configuration inquiry contains an offset to the entry in the port configuration data table in EEPROM 27 which is to contain the response to the inquiry. The next field 86 stores a word with "ONES" in bit positions that correspond to bit positions used to encode the parameter in the data table word. This word 86 of the inquiry data block 80 is used as a mask to select only the bits of the field 86 which are used by the present parameter. For example, the selection of one of eight baud rates is indicated by three bits and the mask is used to insure that only the proper three bits of a data table entry are altered. If the parameter is represented 203~9a~
by bit type data, the fifth data block entry 87 (designated "Option Word") contains the appropriate bit pattern in order to alter the port configuration data table word to indicate the selected parameter option. The bits of the Option Word which are not used to encode the parameter are zeroed.
If the user is to input a numerical value for the parameter, maximum and minimum acceptable values for the input are stored in entries 88 and 89 of the inquiry data block 80.
The final section 90 of the data block 80 contains text which is displayed on the terminal for the inquiry.
The file 74 of inquires is used by the port configuration software routine to query the user to select options for the serial communication parameters. The port configuration routine is depicted by the flowchart of Figure 7. The process commences at step 100 by the module controller 24 obtaining the text for the first inquiry from the module RAM 28 and sending the text data through the configuration port 19 to terminal 18.
Once the inquiry text is displayed on the terminal, the program execution waits at step 102 for a signal from UART 30 indicating that the user has entered a response via the terminal keyboard. When a response occurs, the module controller 24 obtains the response from UART 30 and examines the input data type field Af the inquiry data block 80 at step 104. If the parameter will be stored as bit type data, the program execution advances to step 106.
Then, the option number in field 83 of the data block for the first inquiry is checked to determine if more than one option exists for the inquiry. .The option number will be zero if only one inquiry is used to configure the current parameter.
For example, if the parameter has only two possible values 203~~j1 (e.g. enabled or disabled), a single inquiry can be used for inputting the parameter selection. In this case, the program execution branches to step 108.
At this point, since the user response to the inquiry is either yes or no, the module controller 24 determines whether an affirmative response has been received. If so, the port configuration Data Table Offset and Bit Mask fields 85 and 86 in the inquiry data block (Figure 6) are employed at step 110 to set the bit for this parameter. Similarly, if a negative response was sent by the user, these inquiry data block entries are used to reset the bit at step 112. The altered byte or word of data is then stored in the port configuration data table in EEPROM 27.
Once the parameter selection has been recorded, the module controller 24 increments the contents of a memory location in module RAM 28, which stores a count of the parameters at step 114. This count indicates the current parameter being configured. Another memory location in module RAM 28 also is incremented at step 116 to indicate the number of the next inquiry. The new inquiry count is examined at step 117 to determine if the last inquiry has been processed, thereby indicating the completion of the port configuration task. If additional inquiries remain, the program execution returns to step 100 to display the text for the next inquiry.
If at step 106, a determination was made that the Option Number was not equal to zero, indicating multiple inquiries exist for the current parameter being configured, the program execution branches to step 120. For instance, if the parameter is baud rate, a separate inquiry would be provided for each of the acceptable baud rates (e. g. 300, 1200, 2400, 4800, etc.).

2031~~1 At this step, the module controller 24 evaluates the user input for an affirmative response to the present inquiry. If an affirmative response has been entered, the program advances to step 122, where the selected parameter option is recorded in the port configuration data table in EEPROM 27.
To do so, the module controller 24 obtains the old contents of the data table storage location pointed to by the Data Table Offset 85 and obtains the Bit Mask 86 from the inquiry data block. The old contents are AND'ed with the complement of the binary Bit Mask. This logical operation resets the bits fir the parameter to zero while not affecting the bits in the data table entry which are used for other parameters. The result then is OR'ed with the Option Word field 87 of the inquiry data block 80. As noted above, the Option Word consists of a word with a bit pattern to encode the inquiry response into the appropriate position in the configuration data table word. For example, if in response to the inquiry the parameter option selection should be recorded as "101" in the fourth through sixth bits of the data table word, the Bit Mask would be "0000000000111000" and the Option Word would contain the bit pattern "0000000000101000". The final result of these logic operations is stored by the module controller into the port configuration data table EEPROM
location pointed to by the Data Table Offset 85 in the inquiry i data block 80.
Next at steps 124 and 126, the module controller 24 increments the parameter count and the inquiry count. The new inquiry count is used at step 128 to determine if the configuration task is completed, in which case, the task ends.
If additional inquiries remain, the Parameter Number 82 in the ~~3~9~.~
data block for the next inquiry is compared to the incremented parameter count. If the two parameter numbers are unequal, the program keeps incrementing the inquiry count and testing the parameter number for the new inquiry until the first inquiry for the next parameter is found. This looping would occur if the user selected the first option of a multiple option parameter, for example. When an inquiry for another parameter is found, the number of this inquiry is saved as the "First Inquiry" at step 132. The program execution returns to step 100, where the text for the first inquiry of the parameter is displayed on terminal 18 and the next parameter is configured.
When a negative response to an inquiry is detected at step 120, the program execution branches to step 134. In this case, another inquiry for the same parameter must be presented to the user. To do so, the module controller 24 increments the inquiry count at step 134 and tests the parameter number 82 in the data block of the new inquiry (see Figure 6) at step 136.
If the new inquiry is for the same parameter, the program jumps to step 100 to display its text. Otherwise, When the next inquiry is for a different parameter, the inquiry count is set to the value stored for the °'First Inquiry" of the current parameter at step 138 before returning to step 100. Thus, the port configuration task cycles through all of the inquiries for a given parameter until an affirmative response is received to one of the inquiries.
If a parameter configuration requires the user to enter a numerical value for the parameter data, the byte or word of entered data has to be stored in the port configuration data table in EEPROM 27. In this case, the parameter is configured by a single inquiry which does not utilize bit type data.

~Q3~9J1 Therefore, after this type of inquiry has been displayed at step 100 and a user input is received at step 102, the program execution branches from step 104 to step 140. The module controller 24 compares the user's input to both the minimum and maximum acceptable values stored in fields 88 and 89 of the inquiry data block 80. If the input is unacceptable, the program loops until a valid response is received.
When the response is within the acceptable range of values, the module controller 24 enters the response into the port configuration data table in EEPROM 27 at step 192. This is accomplished by first reading the word of data which contains the current setting of the parameter from the port configuration data table in EEPROM 27. The Data Table Offset 85 from the inquiry data block in module RAM 28 enables the module controller 24 to address the proper data table Word.
The Bit Mask for the inquiry is also obtained from field 86 of the inquiry data block 80. The module controller 29 then AND's the old parameter data with the complement of the Bit Mask to reset only the bits for the present parameter. The result is a modified version of the old data. Then, the user's input data is AND'ed with the Bit Mask and the result is ~R'ed with the modified version of the old data. These logical operations insert the new parameter value into the port configuration data table entry. The module controller 24 uses the Data Table Offset in field 85 to access the port configuration data table in EEPROM 27 and store the revised parameter data in the proper storage location. The program execution then advances to step 114 where the parameter and inquiry counts are incremented and tested to obtain the inquiry fox the next parameter.

2~3~9~~
In this manner, the port configuration inquiries from the protocol cartridge are used to select the parameters required by the specific communication protocol use by a given port.
Similarly when another port is being configured, the unique set of inquiries from the cartridge ROM that contained its protocol program are employed to query the user for parameter selection.

Claims (18)

Claims
1. An interface module for coupling a serial communication link to a programmable controller in which data is transmitted over the link using a defined communication protocol, said module comprising:
a processor means for executing a program which controls the transfer of data between the module and the link according to the communication protocol;
a first memory means for storing the program and data for the processor means;
a memory cartridge that is removable without having to disassemble the interface module, said memory cartridge storing a program for said processor means which program defines the communication protocol;
means for electrically interconnecting said processor means, said first memory means and said memory cartridge; and means for transferring the contents of said memory cartridge into said first memory means.
2. The interface module as recited in claim 1 wherein said memory cartridge also stores data defining inquiries to be presented to a user of the programmable controller in order to configure parameters of the communication protocol.
3. The interface module as recited in claim 2 wherein the data defining inquiries includes an inquiry identification number, a parameter number, a data table pointer, maximum and minimum acceptable values for the parameter, and text of the inquiry.
4. The interface module as recited in claim 2 wherein the data defining inquiries includes an inquiry identification number, a parameter number, a data table pointer, a bit mask for a data table entry, data encoding the parameter, and text of the inquiry.
5. The interface module as recited in claim 2 further comprising:
means for presenting inquiries to the user, utilizing the data defining inquiries;
means for receiving replies from the user to the inquiries;
and a second memory means for storing a data table containing data indicative of the replies received from the user.
6. The interface module as recited in claim 5 wherein the data defining inquiries includes an inquiry identification number, a parameter number, a data table pointer, and text of the inquiry; and wherein said means for presenting repeatedly presents the inquiries for a given parameter to the user until an affirmative reply to one of the inquiries is received, before presenting an inquiry for another parameter.
7. The interface module as recited in claim 2 wherein the data defining inquiries includes a data table pointer, a bit mask, and data encoding the parameter; and further comprising:
means, responsive to a reply from the user, for logically ORing data previously stored in said second memory means at a location indicated by the data table pointer with data derived from the bit mask, and then logically ANDing the result of the logical ORing with the data encoding the parameter; and means for loading the result of the logic operations into said second memory means at the location indicated by the data table pointer.
8. An interface module for interconnecting a plurality of serial communication links for the exchange of data among the links, said module comprising:
a plurality of port circuits, each port circuit coupling one of the communication links to the interface module and including:
a) a processor means for executing a communication program which controls the transmitting and/or receiving of data over a communication link according to a given protocol, b) a first memory means for storing the communication program, c) means for coupling the communication link to said processor means, and d) means for interconnecting said processor means, said first memory means and said means for coupling;
a removable memory cartridge means which contains a plurality of communication programs for said processor means;
means for storing configuration data defining which of the plurality of communication programs in the memory cartridge means is to be stored in said first memory means of each port circuit; and means for transferring a communication program from said memory cartridge into said first memory means of each port circuit in response to the configuration data.
9. The interface module as recited in claim 8 for use in a programmable controller having a processor module and a number of functional modules located in a rack which electrically interconnects the modules; and said interface module further comprising means for interfacing the port circuits to the rack for transferring data between the processor module and the port circuits.
10. The interface module as recited in claim 8 wherein said memory cartridge means also contains data defining inquiries to be presented to a user of the module in order to define parameters for the operation of each port circuit.
11. The interface module as recited in claim 10 further comprising:
means for presenting inquiries to the user, utilizing the data defining inquiries;
means for receiving replies from the user to the inquiries;
and a second memory means for storing data indicative of the responses received from the user.
12. The interface module as recited in claim 11 wherein the data defining inquiries includes an inquiry identification number, a parameter number, a data table pointer, and text of the inquiry; and wherein said means for presenting inquiries repeatedly presents the inquiries for a given parameter to the user until an affirmative reply to one of the inquiries is received, before presenting an inquiry for another parameter.
13. The interface module as recited in claim 11 wherein the data defining inquiries includes a data table pointer, a bit mask, and data encoding the parameter; and further comprising:
means responsive to a reply from the user for logically ORing data previously stored in said second memory means at a location indicated by the data table pointer with data derived from the bit mask, and then logically ANDing the result of the logical ORing with the data encoding the parameter; and means for loading the result of the logic operations into said second memory means at the location indicated by the data table pointer.
14. The interface module as recited in claim 10 wherein the data defining inquiries includes an inquiry identification number, a parameter number, a data table pointer, a bit mask for a data table entry, data encoding the parameter, maximum and minimum acceptable values for the parameter, and text of the inquiry.
15. In a programmable controller having a processor module and a number of functional modules located in a rack and electrically interconnected by a backplane of the rack; a serial communication module for interfacing the programmable controller to a plurality of serial communication links, said serial communication module comprising:
a separate port circuit for coupling a different one of the communication links to the communication module, each port circuit including:
a) a port processor means for executing a communication program which controls the transmitting and/or receiving of data over the communication link according to a given protocol, b) first memory means for storing the communication program, c) means coupling the communication link to said port processor means, and d) means for interconnecting said processor means, said first memory means and said means for coupling;
a removable memory cartridge means which contains a plurality of communication programs executable by said port processor means;
means for storing configuration data defining which program in the memory cartridge means is to be stored in said first memory means of each port circuit;
means for transferring a communication program from said memory cartridge means into said first memory means of a given port circuit in response to the configuration data;
means for coupling the serial communication module to the rack backplane; and a module processor means for controlling the transfer of data between said port circuits and the rack backplane.
16. The serial communication module as recited in claim 15 wherein said memory cartridge means also contains data defining inquiries to be presented to a user of the programmable controller in order to configure the operation of a port circuit for the given protocol.
17. The serial communication module as recited in claim 16 further comprising:
means for presenting inquiries to the user utilizing the data defining inquiries;
means for receiving responses to the inquiries from the user; and a third memory means for storing data indicative of the responses received from the user.
18. The serial communication module as recited in claim 15 wherein said module processor means executes a program to control the transfer of data; and said serial communication module further comprises a second memory means for storing the program for said module processor means.
CA002031951A 1990-01-08 1990-12-11 Configurable communication interface module for a programmable controller Expired - Lifetime CA2031951C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/461,865 US5485590A (en) 1990-01-08 1990-01-08 Programmable controller communication interface module which is configurable by a removable memory cartridge
US461,865 1990-01-08

Publications (2)

Publication Number Publication Date
CA2031951A1 CA2031951A1 (en) 1991-07-09
CA2031951C true CA2031951C (en) 2000-10-31

Family

ID=23834241

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002031951A Expired - Lifetime CA2031951C (en) 1990-01-08 1990-12-11 Configurable communication interface module for a programmable controller

Country Status (5)

Country Link
US (1) US5485590A (en)
JP (1) JP2840463B2 (en)
CA (1) CA2031951C (en)
DE (1) DE4100198B4 (en)
FR (1) FR2657441B1 (en)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5663901A (en) * 1991-04-11 1997-09-02 Sandisk Corporation Computer memory cards using flash EEPROM integrated circuit chips and memory-controller systems
FR2693575B1 (en) * 1992-07-09 1994-08-19 Gemplus Card Int Mass memory card with input / output function.
JPH06251564A (en) * 1993-02-27 1994-09-09 Sony Corp Information providing/collecting device and recording medium
EP0678796B1 (en) * 1994-04-13 1998-06-24 Siemens Aktiengesellschaft Compact programmable logic controller and central unit of a modular programmable logic controller
GB2288954B (en) * 1994-04-15 1998-10-14 Vlsi Technology Inc Method and apparatus for providing programmable serial communications
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US5636357A (en) * 1994-12-21 1997-06-03 Eurotronics Company Memory card and method for operation in a plurality of systems having incompatible object code format requirements
US5727170A (en) * 1994-12-29 1998-03-10 Siemens Energy & Automation, Inc. User defined port and protocol scheme for a programmable logic controller
US5659705A (en) * 1994-12-29 1997-08-19 Siemens Energy & Automation, Inc. Serial access memory cartridge for programmable logic controller
US5737543A (en) * 1995-02-23 1998-04-07 International Business Machines Corporation High performance communications path
JPH08235084A (en) * 1995-02-23 1996-09-13 Fujitsu Ltd Transmission line controller multiplexing system
US5734697A (en) * 1995-04-28 1998-03-31 Mci Corporation Method and apparatus for improving telecommunications system performance
DE19524024C2 (en) * 1995-06-30 1998-01-22 Siemens Ag Method for specifying multifunctional assemblies in a communication system
GB2303472B (en) * 1995-07-18 2000-08-23 Haght Nicholas Oliver Van Programmable personal computer interface
US5828905A (en) * 1995-11-13 1998-10-27 Mitsubishi Chemical America, Inc. Adapter and method of connecting devices associated with at least three different protocols
US5970510A (en) * 1996-04-10 1999-10-19 Northrop Grumman Corporation Distributed memory addressing system
JP3052857B2 (en) * 1996-10-31 2000-06-19 日本電気株式会社 Inter-cluster shared memory access method
US6038621A (en) * 1996-11-04 2000-03-14 Hewlett-Packard Company Dynamic peripheral control of I/O buffers in peripherals with modular I/O
JP3090071B2 (en) * 1996-11-29 2000-09-18 オムロン株式会社 Control device
US6070250A (en) * 1996-12-13 2000-05-30 Westinghouse Process Control, Inc. Workstation-based distributed process control system
US6061755A (en) * 1997-04-14 2000-05-09 International Business Machines Corporation Method of layering cache and architectural specific functions to promote operation symmetry
US6032226A (en) * 1997-04-14 2000-02-29 International Business Machines Corporation Method and apparatus for layering cache and architectural specific functions to expedite multiple design
KR100294204B1 (en) * 1997-06-05 2001-09-17 윤종용 Device for inspecting products using communication port of pc
US6044428A (en) * 1998-03-17 2000-03-28 Fairchild Semiconductor Corporation Configurable universal serial bus node
KR100549978B1 (en) 1999-02-08 2006-02-08 세이코 엡슨 가부시키가이샤 An interface apparatus, method for controlling the same and information recording medium
US6940868B1 (en) 1999-04-20 2005-09-06 Abb Inc. Digital serial communications hub
US20030196312A1 (en) * 2000-04-06 2003-10-23 Ford Motor Company Method for manufacturing an item
US7733521B1 (en) 2000-07-05 2010-06-08 Lexmark International, Inc. Printer apparatus with selectable photo enhancement project and settings storage dynamically definable user interface and functions and template definition
DE10059948A1 (en) * 2000-12-02 2002-06-20 Conti Temic Microelectronic Bus controller for a motor vehicle safety system where a number of devices of different generations or versions can be connected together using different protocols and effectively controlled using the same central controller
US6864788B2 (en) * 2001-08-06 2005-03-08 Delphi Technologies, Inc. Actuator controller for selecting a communication language
US7402157B2 (en) * 2001-12-19 2008-07-22 The Procter & Gamble Company Absorbent article having perception of depth
US6973508B2 (en) * 2002-02-12 2005-12-06 Fisher-Rosemount Systems, Inc. Highly versatile process control system controller
US7464192B2 (en) * 2002-09-10 2008-12-09 Silicon Storage Technology, Inc. Programmable serial interface for a semiconductor circuit
US20040059844A1 (en) * 2002-09-20 2004-03-25 Woodhead Industries, Inc. Network active I/O module with removable memory unit
US7930490B2 (en) * 2002-12-23 2011-04-19 Siemens Industry, Inc. Method for utilizing a memory device for a programmable logic controller (PLC)
US7203553B2 (en) * 2002-12-23 2007-04-10 Siemens Energy & Automation, Inc. Methods and structures for utilizing a memory device for a PLC
WO2004059403A2 (en) * 2002-12-23 2004-07-15 Siemens Energy & Automation, Inc. Methods and structures for utilizing a memory device for a plc
US7860874B2 (en) * 2004-06-08 2010-12-28 Siemens Industry, Inc. Method for searching across a PLC network
US7308550B2 (en) * 2004-06-08 2007-12-11 Siemens Energy & Automation, Inc. System for portable PLC configurations
US7512593B2 (en) * 2004-06-08 2009-03-31 Siemens Energy & Automation, Inc. System for searching across a PLC network
US7310720B2 (en) * 2004-06-08 2007-12-18 Siemens Energy & Automation, Inc. Method for portable PLC configurations
DE502004007902D1 (en) * 2004-09-16 2008-10-02 Siemens Ag Automation system with affective control
JP4134972B2 (en) * 2004-09-30 2008-08-20 ブラザー工業株式会社 Parameter setting system, setting device and program
US7272453B2 (en) * 2004-11-30 2007-09-18 Air Products And Chemicals, Inc. Method and apparatus for utilizing a sequence interpreter approach to control logic of a programmable logic controller
DE102004059717A1 (en) * 2004-12-08 2006-06-22 Siemens Ag Method and device for specifying a mode number
DE102004059719A1 (en) * 2004-12-08 2006-06-29 Siemens Ag Method and device for assigning a slot number and / or configuration data to a module
US7475806B1 (en) * 2005-02-24 2009-01-13 Savr Communications, Inc. Method and system of universal RFID communication
DE102011107318A1 (en) * 2011-07-06 2013-01-10 Abb Ag Method for configuring a communication interface module in a control or automation system
US11967839B2 (en) 2011-12-30 2024-04-23 Analog Devices, Inc. Electromagnetic connector for an industrial control system
US10834094B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Operator action authentication in an industrial control system
US10834820B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Industrial control system cable
US9727511B2 (en) 2011-12-30 2017-08-08 Bedrock Automation Platforms Inc. Input/output module with multi-channel switching capability
US8862802B2 (en) 2011-12-30 2014-10-14 Bedrock Automation Platforms Inc. Switch fabric having a serial communications interface and a parallel communications interface
US8971072B2 (en) 2011-12-30 2015-03-03 Bedrock Automation Platforms Inc. Electromagnetic connector for an industrial control system
US9437967B2 (en) 2011-12-30 2016-09-06 Bedrock Automation Platforms, Inc. Electromagnetic connector for an industrial control system
US10613567B2 (en) 2013-08-06 2020-04-07 Bedrock Automation Platforms Inc. Secure power supply for an industrial control system
CN106233212B (en) 2015-01-28 2019-03-08 三菱电机株式会社 Intelligent function unit and programmable logic controller system
JP7029220B2 (en) * 2015-02-09 2022-03-03 ベドロック・オートメーション・プラットフォームズ・インコーポレーテッド Input / output module with multi-channel switching capability
DE102015106026B3 (en) 2015-04-20 2016-08-25 Interroll Holding Ag Method for exchanging a control unit in a conveyor device
DE102015106034A1 (en) 2015-04-20 2016-10-20 Interroll Holding Ag Installation method for setting up conveying devices
DE102015106024B4 (en) * 2015-04-20 2023-06-07 Interroll Holding Ag Conveyor with configuration change
DE102015107167A1 (en) 2015-05-07 2016-11-10 Interroll Holding Ag Control unit for a conveyor with hardware detection
DE102016112054B4 (en) 2016-06-30 2021-08-12 Interroll Holding Ag Drum motor with alternative gear mount
DE102016112036A1 (en) 2016-06-30 2018-01-04 Interroll Holding Ag Drive unit for a drum motor, drum motor, rear flange and manufacturing process
DE102016112051B4 (en) 2016-06-30 2024-01-04 Interroll Holding Ag Modular system for motor-driven conveyor rollers
DE102016114524B4 (en) 2016-08-05 2020-09-03 Interroll Holding Ag Drum motor with frequency converter and optional belt tension sensor
DE102016114672A1 (en) 2016-08-08 2018-02-08 Interroll Holding Ag Electrical connector for motorized rollers
CN106444512B (en) * 2016-10-21 2023-09-01 北京和利时智能技术有限公司 Mining intrinsic safety type programmable controller
US11467997B2 (en) * 2017-02-22 2022-10-11 Seagate Technology Llc Hot-swappable protocol expander module for storage array
EP3373232B1 (en) 2017-03-09 2020-12-09 Interroll Holding AG Intralogistic arrangement
TWI698874B (en) * 2018-08-31 2020-07-11 大陸商合肥沛睿微電子股份有限公司 Flash memory controller and associated accessing method and electronic device

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4079452A (en) * 1976-06-15 1978-03-14 Bunker Ramo Corporation Programmable controller with modular firmware for communication control
US4254473A (en) * 1979-01-29 1981-03-03 Allen-Bradley Company Rack adapter for serially connected I/O interface racks
IT1128896B (en) * 1980-07-03 1986-06-04 Olivetti & Co Spa DATA PROCESSING EQUIPMENT WITH PERMANENT PROGRAMMABLE MEMORY
US4506346A (en) * 1982-12-01 1985-03-19 At&T Bell Laboratories Programmable cartridge telephone communication system
US4703416A (en) * 1982-12-10 1987-10-27 American Telephone And Telegraph Company Apparatus for locating programs resident on a cartridge of a cartridge programmable communication system
DE3302929A1 (en) * 1983-01-28 1984-08-02 Siemens AG, 1000 Berlin und 8000 München PROGRAMMABLE CONTROL
US4680731A (en) * 1983-03-17 1987-07-14 Romox Incorporated Reprogrammable cartridge memory with built-in identification circuitry and programming method
US4725977A (en) * 1983-06-03 1988-02-16 Cpt, Ltd. Cartridge programming system and method using a central and local program library
US4872136A (en) * 1984-06-04 1989-10-03 Ge Fanuc Automation North America, Inc. Programmable controller input/output communications system
US4751634A (en) * 1985-06-14 1988-06-14 International Business Machines Corporation Multiple port communications adapter apparatus
US4787028A (en) * 1985-09-03 1988-11-22 Ncr Corporation Multicommunication protocol controller
US4809217A (en) * 1985-10-31 1989-02-28 Allen-Bradley Company, Inc. Remote I/O port for transfer of I/O data in a programmable controller
DE3611547A1 (en) * 1985-12-03 1986-09-18 Heinz 2058 Lauenburg Victor Plug-in module as pluggable program carrier for microcomputers, and method of producing the plug-in module
US4807282A (en) * 1985-12-30 1989-02-21 International Business Machines Corp. Programmable P/C compatible communications card
DE3611406C1 (en) * 1986-04-04 1987-07-09 Kaltenbach & Voigt Dental treatment station
JPS62260244A (en) * 1986-05-06 1987-11-12 Nintendo Co Ltd Memory cartridge
EP0259786A1 (en) * 1986-09-12 1988-03-16 Xmit Ag Interface arrangement with preselectable protocols for a microcomputer plug-in card
US4901218A (en) * 1987-08-12 1990-02-13 Renishaw Controls Limited Communications adaptor for automated factory system
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors

Also Published As

Publication number Publication date
JP2840463B2 (en) 1998-12-24
FR2657441A1 (en) 1991-07-26
DE4100198B4 (en) 2005-05-12
CA2031951A1 (en) 1991-07-09
US5485590A (en) 1996-01-16
FR2657441B1 (en) 1993-03-05
JPH04153705A (en) 1992-05-27
DE4100198A1 (en) 1991-07-11

Similar Documents

Publication Publication Date Title
CA2031951C (en) Configurable communication interface module for a programmable controller
CA2034878C (en) Programmable controller communication module
US5274767A (en) Programmable controller with module identification and diagnostic mechanism
US5225974A (en) Programmable controller processor with an intelligent functional module interface
CA1103362A (en) Program protection module for programmable controller
US5122948A (en) Remote terminal industrial control communication system
US4949299A (en) Industrial control communication network and method
EP0504866A2 (en) Programmable controller processor with a removable function card
CA1193023A (en) Programmable controller with expandable i/o interface circuitry
CA2133517C (en) Error detection for hvac systems
EP0586813B1 (en) Programmable controller with ladder diagram macro instructions
EP0434288B1 (en) Programmable logic controller and method of operation thereof
EP0233949B1 (en) Numerical control system
US5416908A (en) Interface between industrial controller components using common memory
GB2122387A (en) Programmable controller
EP0352683B1 (en) Programmable controller module identification system
EP0585417A4 (en) Programmable controller with fast i/o scan.
US4839852A (en) Programmable controller with self testing I/O structure
US5923903A (en) Programmable logic controller inputs-outputs system
EP0496097B1 (en) Programmable controller processor for concurrently executing multiple user control programs
US5758193A (en) Interface for connecting terminal device mainframe to plural kinds of switch units having different numbers of switches therein
EP1037126B1 (en) A signal handling device
EP0372085A1 (en) Pmc apparatus
JPH02172646A (en) Numerical control device
EP0216336B1 (en) Programmable controller with self testing i/o structure

Legal Events

Date Code Title Description
EEER Examination request
MKEX Expiry