Method for communicating among a plurality of programmable logic controllers each having a DMA controller
First Claim
1. A method for communicating among a plurality of programmable logic controllers (PLC'"'"'s) coupled to a common communications bus, said method comprising the steps of:
- transmitting from a selected one of a plurality of PLC'"'"'s a coded signal for identifying another of the PLC'"'"'s to which a message is to be sent;
delaying transmission of the message until an acknowledgement signal is transmitted from the another of the PLC'"'"'s;
transmitting, upon receipt of the acknowledgement signal, a mailbox message of a preselected length including data identifying the length of a next subsequent message to be sent to the another of the PLC'"'"'s;
delaying further transmission until another acknowledgement signal is received from the another of the PLC'"'"'s;
transmitting the next subsequent message to the another of the PLC'"'"'s wherein each next subsequent message identifies the length of any immediately following message; and
transferring, by a DMA controller in the another of the PLC'"'"'s, any data contained in the mailbox message and each next subsequent message directly to the memory of the another of the PLC'"'"'s.
1 Assignment
0 Petitions
Accused Products
Abstract
A method is provided for communicating among a plurality of programmable logic controllers (PLC'"'"'s) coupled together on a common bus. A master PLC and a plurality of slave PLC'"'"'s are coupled to the bus. An attach signal is transmitted by the master PLC to address and select the particular slave PLC to which the master PLC desires to transmit a message. The master PLC then transmits a mailbox signal including data and message length information regarding a next message if not all data from the master PLC and intended for the slave PLC could fit in the mailbox message. Additional next messages, each including data and next message length information, are sent by the master PLC to the selected slave PLC as necessary until all of the data intended for the selected slave PLC is transmitted by the master PLC. This communication method permits the data in the mailbox message and the data in any next messages to be transferred directly from the bus to a memory within the slave PLC via a direct memory access (DMA) controller in the slave PLC without the intervention of a CPU in the slave PLC. Since non-selected slave PLC'"'"'s receive next message length information, such non-selected slave PLC'"'"'s are substantially free to perform other activities for those periods of time they know will be consumed by next messages.
91 Citations
2 Claims
-
1. A method for communicating among a plurality of programmable logic controllers (PLC'"'"'s) coupled to a common communications bus, said method comprising the steps of:
-
transmitting from a selected one of a plurality of PLC'"'"'s a coded signal for identifying another of the PLC'"'"'s to which a message is to be sent; delaying transmission of the message until an acknowledgement signal is transmitted from the another of the PLC'"'"'s; transmitting, upon receipt of the acknowledgement signal, a mailbox message of a preselected length including data identifying the length of a next subsequent message to be sent to the another of the PLC'"'"'s; delaying further transmission until another acknowledgement signal is received from the another of the PLC'"'"'s; transmitting the next subsequent message to the another of the PLC'"'"'s wherein each next subsequent message identifies the length of any immediately following message; and transferring, by a DMA controller in the another of the PLC'"'"'s, any data contained in the mailbox message and each next subsequent message directly to the memory of the another of the PLC'"'"'s.
-
-
2. A method for data transfer from a programmable logic controller (PLC) to a selected one of a plurality of microcomputer based slave devices all coupled to a common communications bus, the PLC, and each slave device having a serial port coupled to the bus, and each slave device further including a DMA controller, a memory and a central processing unit (CPU), said method comprising the steps of:
-
monitoring, by the slave devices, of the bus for a predetermined break character, the slave devices being interruptible by the break character; transmitting, by the PLC, of the break character on the bus to interrupt the slave devices; addressing, by the PLC, of a selected one of the slave devices; transmitting, by the PLC, a first message on the bus, the first message including data and further including message length information describing the length of a next message to be sent to the selected slave device; transmitting, by the PLC, a next message on the bus, the next message including data and further including message length information describing the length of another next message to be sent to the selected slave device; repeating said transmitting a next message step until all data to be transmitted to the slave device has been transmitted; and transferring, by the DMA controller in the selected slave device, the data in the first message and any next messages directly from the serial port of the selected slave device to the memory thereof.
-
Specification