Remote I/O port for transfer of I/O data in a programmable controller
AssigneeAllen-Bradley Company, Inc.
InventorsWilliam E. Floro, Mark Luboski, Timothy J. Murphy, Alan J. Campbell
Life of this patent
Estimating the term…
Abstract
A method and apparatus for access to a programmable controller at a remote location. A peripheral device with a peripheral processor is connected to a port on an I/O module. Blocks of discrete and block transfer data are transferred to and from a common memory in the I/O module where the data is accessible to a serial communication controller that interfaces the module to a high speed serial data channel. Asynchronous communication is provided between the serial communication controller and the peripheral device using a circular buffer in the common memory. Timing considerations are also disclosed.
Claims14
A method of accessing a programmable controller system at a location remote from a programmable controller processor, wherein I/O data for monitoring and controlling conditions on controlled equipment is transferred between the programmable controller processor and remote modules through periodic execution of a I/O scan sequence in which remote modules are addressed in sequence at system-mapped I/O addresses, the method comprising:
- coupling an external peripheral device to an I/O port on a remote module, wherein the remote module includes a serial communication controller that communicates during the I/O scan sequence through one end of serial communication channel to exchange I/O data with a programmable controller processor at an opposite end of the serial communication channel, the remote module also having a common memory accessible through the I/O port and accessible by the serial communication controller, and the remote module also having an arbitration circuit for controlling access to the common memory;
- obtaining access to the common memory through a first group of signals coupled between the external peripheral device and the arbitration circuit, wherein a first signal in the first group is initiated by the external peripheral device and transmitted to the arbitration circuit;
- determining the availability of one of a plurality of buffer areas in the common memory for transfer of a block of data between the common memory and the external peripheral device, wherein the plurality of buffer areas are addressed at system-mapped I/O addresses generated during the I/O scan sequence;
- determining the availibility of a block of data for transfer between the external peripheral device and one of the plurality of buffer areas in the common memory;
- and
- if one of the plurality of buffer areas and a block of data area available, transferring the block of data between the external peripheral device and the one buffer area in the common memory, the external peripheral device communicating a second group of signals, including address, control and data signals, with the remote module to carry out transfer of I/O data with the common memory;
- and
- releasing access to the common memory by the external peripheral device to permit access to the common memory by the serial communication controller.
A method of accessing a programmable controller system at a location remote from a programmable controller processsor, wherein I/O data for monitoring and controlling conditions on controlled equipment is transferred between the programmable controller processor and remote modules through execution of an I/O scan sequence in which remote through execution of an I/O scan sequence in which remote modules are address to update I/O data within the programmable controller system, the method comprising:
- coupling an external device to an I/O port on a remote module, wherein the remote module includes a serial interface processor that communicates during the I/O scan sequence through one end of a serial communication channel to exchange I/O data with a programmable controller processor at an opposite end of the serial communication channel, the remote module also having a common memory accessible through the 1/0 port for transfer of I/O data and accessible by the serial interface processor for transfer of I/O data, and the remote module also having an arbitration circuit for controlling access to the common memory;
- obtaining access to the common memory for transfer of I/O data through signals coupled between the external peripheral device and the arbitration circuit;
- checking that a first handshake word in the common memory has previously been updated by the serial interface processor to confirm access to the common memory by the serial interface processor within a first handshake period;
- monitoring a period of access to the common memory by the external peripheral processor to confirm that the serial interface processor has not denied access to the common memory for longer than a predetermined access period;
- and
- updating a second handshake word in the common memory to be processed by the serial interface processor confirm access to the common memory by the external peripheral processor within a second handshake period.
An I/O communication module for transfer of I/O data through a serial data channel, the serial data channel being disposed in a communication path to a programmable controller processor from a peripheral processor that is external to a programmable controller system, wherein the I/O data is of the type that is updated through execution of an I/O scan sequence in which I/O modules are periodically and sequentially addressed at system-mapped 1/0 addresses, the I/O communication module comprising:
- serial channel controller means with a serial 1/0 port for communicating I/O status data as serial data over the serial data channel during the execution of the I/O scan sequence, the serial channel controller means storing the I/O data as a block of I/O status data;
- I/O port means adapted to be coupled to the peripheral processor and cooperable with the peripheral processor for transferring blocks of I/O data;
- a common memory and arbitration circuitry coupling the serial channel controller means and the I/O port means for alternating access of the serial channel controller means and the peripheral processor to the common memory;
- and
- wherein the serial channel controller means and the peripheral processor asynchronously communicate blocks of I/O data through the common memory to link the peripheral processor with the serial data channel, and
- wherein the common memory includes a plurality of buffer areas which are communicated with in response to the system-mapped I/O addresses generated during the I/O scan sequence.
Dependencies are inferred from the claim text.