A collection of
CogNdmSlmpBlockMapping
used to map blocks of the NDM signal table to SLMP devices.
Inheritance Hierarchy
System MarshalByRefObject
Cognex.VisionPro.Implementation CogObjectBase
Cognex.VisionPro.Implementation CogSerializableObjectBase
Cognex.VisionPro.Implementation CogSerializableChangedEventBase
Cognex.VisionPro.Implementation CogSerializableCollectionBase CogNdmSlmpBlockMapping
Cognex.VisionPro.Comm CogNdmSlmpBlockMappingCollection
Namespace: Cognex.VisionPro.Comm
Assembly: Cognex.VisionPro.Comm (in Cognex.VisionPro.Comm.dll) Version: 93.1.0.0
Syntax
The CogNdmSlmpBlockMappingCollection type exposes the following members.
Constructors
| Name | Description | |
|---|---|---|
| CogNdmSlmpBlockMappingCollection | ||
| CogNdmSlmpBlockMappingCollection(CogNdmSlmpBlockMappingCollection) |
Methods
| Name | Description | |
|---|---|---|
| Add |
Adds value to the end of the collection.
(Inherited from CogSerializableCollectionBase T .) | |
| Clear |
Removes all objects from the collection.
(Inherited from CogSerializableCollectionBase T .) | |
| Contains |
Returns true if value is in the collection
(Inherited from CogSerializableCollectionBase T .) | |
| CopyTo |
Copies the collection to an array
(Inherited from CogSerializableCollectionBase T .) | |
| CreateObjRef | Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.) | |
| Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
| Finalize | Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) | |
| GetAttributes |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetClassName |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetComponentName |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetConverter |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetDefaultEvent |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetDefaultProperty |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetEditor |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetEvents |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetEvents( Attribute ) |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
| GetLifetimeService | Retrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.) | |
| GetObjectData |
Implements the GetObjectData method of the ISerializable interface.
(Inherited from CogSerializableObjectBase.) | |
| GetProperties |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetProperties( Attribute ) |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetPropertyOwner |
Implements the corresponding member of the ICustomTypeDescriptor interface.
May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.) | |
| GetType | Gets the Type of the current instance. (Inherited from Object.) | |
| IndexOf |
Returns the index of value in the collection, or -1 if value
is not in the collection.
(Inherited from CogSerializableCollectionBase T .) | |
| InitializeLifetimeService | Obtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.) | |
| Insert |
Inserts the value at the specified index of the collection
(Inherited from CogSerializableCollectionBase T .) | |
| MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
| MemberwiseClone(Boolean) | Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.) | |
| Move |
Moves an item from one position to another.
(Inherited from CogSerializableCollectionBase T .) | |
| OnChanged(Int64) |
This method should be called internally whenever the object's state may
have changed.
(Inherited from CogSerializableChangedEventBase.) | |
| OnChanged(CogChangedEventArgs) |
This method may be called internally whenever a derived object's state
may have changed and the derived object expresses this change via a
derived CogChangedEventArgs class.
(Inherited from CogSerializableChangedEventBase.) | |
| OnCleared |
Raises the Cleared event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnClearing |
Raises the Clearing event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnInsertedItem |
Raises the InsertedItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnInsertingItem |
Raises the InsertingItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnMovedItem |
Raises the MovedItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnMovingItem |
Raises the MovingItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnRemovedItem |
Raises the RemovedItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnRemovingItem |
Raises the RemovingItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnReplacedItem |
Raises the ReplacedItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| OnReplacingItem |
Raises the ReplacingItem event.
(Inherited from CogSerializableCollectionBase T .) | |
| Remove |
Removes value from the collection
(Inherited from CogSerializableCollectionBase T .) | |
| RemoveAt |
Removes the element at the specified index.
(Inherited from CogSerializableCollectionBase T .) | |
| ResumeAndRaiseChangedEvent |
Re-enables raising of the Changed event after SuspendChangedEvent
has been called, and raises the Changed event if the
ChangedEventSuspended count is reduced to zero and any changes were
made while events were suspended. Must be called once for each call to
SuspendChangedEvent.
(Inherited from CogSerializableChangedEventBase.) | |
| SuspendChangedEvent |
Temporarily suspends the raising of the Changed event. May be called
more than once, and a corresponding call to ResumeAndRaiseChangedEvent
must be made for each call to SuspendChangedEvent.
(Inherited from CogSerializableChangedEventBase.) | |
| ToString | Returns a String that represents the current Object. (Inherited from Object.) |
Properties
| Name | Description | |
|---|---|---|
| ChangedEventSuspended |
If nonzero, indicates that the raising of the Changed event has been
suspended. This value is incremented when SuspendChangedEvent is called
and decremented when ResumeAndRaiseChangedEvent is called.
(Inherited from CogSerializableChangedEventBase.) | |
| Count |
Gets the number of elements contained in the collection.
(Inherited from CogSerializableCollectionBase T .) | |
| HasChanged | (Inherited from CogSerializableChangedEventBase.) | |
| InnerList |
Gets the internal List containing the list of elements.
(Inherited from CogSerializableCollectionBase T .) | |
| IsFixedSize |
returns false
(Inherited from CogSerializableCollectionBase T .) | |
| IsReadOnly |
Returns true if this collection is ReadOnly
(Inherited from CogSerializableCollectionBase T .) | |
| IsSynchronized | (Inherited from CogSerializableCollectionBase T .) | |
| Item |
Returns the T at index (Inherited from CogSerializableCollectionBase T .) | |
| List |
Gets an the IList interface of this collection.
(Inherited from CogSerializableCollectionBase T .) | |
| StateFlags |
Returns the complete set of state flags supported on this object. The
flags may be indexed by name as shown in the following C# code snippet:
if (changedObject.StateFlags["Color"] & eventArgs.StateFlags) { ... }
(Inherited from CogSerializableChangedEventBase.) | |
| SyncRoot | (Inherited from CogSerializableCollectionBase T .) |
Events
| Name | Description | |
|---|---|---|
| Changed |
This event is raised when one or more parts of the object's state may
have changed.
(Inherited from CogSerializableChangedEventBase.) | |
| Cleared |
Raised after the collection is cleared.
(Inherited from CogSerializableCollectionBase T .) | |
| Clearing |
Raised before the collection is cleared.
(Inherited from CogSerializableCollectionBase T .) | |
| InsertedItem |
Raised after an item is inserted.
(Inherited from CogSerializableCollectionBase T .) | |
| InsertingItem |
Raised before an item is inserted.
(Inherited from CogSerializableCollectionBase T .) | |
| MovedItem |
Raised after an item is moved to a new index.
(Inherited from CogSerializableCollectionBase T .) | |
| MovingItem |
Raised before an item is moved to a new index.
(Inherited from CogSerializableCollectionBase T .) | |
| RemovedItem |
Raised after an item is removed.
(Inherited from CogSerializableCollectionBase T .) | |
| RemovingItem |
Raised before an item is removed.
(Inherited from CogSerializableCollectionBase T .) | |
| ReplacedItem |
Raised after an item is replaced.
(Inherited from CogSerializableCollectionBase T .) | |
| ReplacingItem |
Raised before an item is replaced.
(Inherited from CogSerializableCollectionBase T .) |
Remarks
The following table describes host the NDM signal table is layed out into 4 seperate blocks specific to SLMP.
The SLMP "ControlBit" signal table/block organizes the single bit NDM signals sent from the PLC to Vision System. The ControlBit block is 80 bits long. +----------------+---------+-------+----------+-----------+-----------+------------+-----------+---------+ | | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 | +----------------+---------+-------+----------+-----------+-----------+------------+-----------+---------+ | 0 | Set | Clear | Rsvd | Initiate | Rsvd | Rsvd | Buffer | Trigger | | | Offline | Error | | Job | | | Results | Enable | | | | | | Load | | | Enable | | +--------------------------------------------------------------------------------------------------------+ | 1 | Rsvd | +--------------------------------------------------------------------------------------------------------+ | 2-5 | SoftEvent 0-31 | +--------------------------------------------------------------------------------------------------------+ | 6 | Rsvd | Rsvd | Rsvd | Rsvd | Set User | Clear | Inspection | Trigger | | | | | | | Data 0 | Exposure | Results | Camera | | | | | | | | Complete 0 | Ack 0 | 0 | +--------------------------------------------------------------------------------------------------------+ | 7 | Rsvd | Rsvd | Rsvd | Rsvd | Set User | Clear | Inspection | Trigger | | | | | | | Data 1 | Exposure | Results | Camera | | | | | | | | Complete 1 | Ack 1 | 1 | +--------------------------------------------------------------------------------------------------------+ | 8 | Rsvd | Rsvd | Rsvd | Rsvd | Set User | Clear | Inspection | Trigger | | | | | | | Data 2 | Exposure | Results | Camera | | | | | | | | Complete 2 | Ack 2 | 2 | +--------------------------------------------------------------------------------------------------------+ | 9 | Rsvd | Rsvd | Rsvd | Rsvd | Set User | Clear | Inspection | Trigger | | | | | | | Data 3 | Exposure | Results | Camera | | | | | | | | Complete 3 | Ack 3 | 3 | +--------------------------------------------------------------------------------------------------------+ The SLMP "StatusBit" signal table/block organizes the single bit NDM signals sent from the Vision System to the PLC. The StatusBit block is 112 bits long. +----------------------------------------------------------------------------------------------------------+ ¦ ¦ Bit 7 ¦ Bit 6 ¦ Bit 5 ¦ Bit 4 ¦ Bit 3 ¦ Bit 2 ¦ Bit 1 ¦ Bit 0 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 0 ¦ Online ¦ Offline ¦ Rsvd ¦ Rsvd ¦ System ¦ System ¦ ¦ ¦ ¦ Reason ¦ ¦ ¦ Busy ¦ Ready ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 1 ¦ General ¦ Rsvd ¦ Job Load ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ ¦ ¦ Fault ¦ ¦ Completed ¦ ¦ ¦ ¦ ¦ ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 2-5 ¦ Soft Event Ack 0-31 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 6 ¦ Results ¦ Inspection ¦ Results ¦ Inspection ¦ Exposure ¦ Acq ¦ Trigger ¦ Trigger ¦ ¦ ¦ Buffer ¦ Passed 0 ¦ Valid 0 ¦ Completed 0 ¦ Complete 0 ¦ Error 0 ¦ Ack ¦ Ready ¦ ¦ ¦ Overrun 0 ¦ ¦ ¦ ¦ ¦ ¦ Camera 0 ¦ Camera 0 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 7 ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Set ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ UserData ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ Ack 0 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 8 ¦ Results ¦ Inspection ¦ Results ¦ Inspection ¦ Exposure ¦ Acq ¦ Trigger ¦ Trigger ¦ ¦ ¦ Buffer ¦ Passed 1 ¦ Valid 1 ¦ Completed 1 ¦ Complete 1 ¦ Error 1 ¦ Ack ¦ Ready ¦ ¦ ¦ Overrun 1 ¦ ¦ ¦ ¦ ¦ ¦ Camera 1 ¦ Camera 1 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 9 ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Set ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ UserData ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ Ack 1 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 10 ¦ Results ¦ Inspection ¦ Results ¦ Inspection ¦ Exposure ¦ Acq ¦ Trigger ¦ Trigger ¦ ¦ ¦ Buffer ¦ Passed 2 ¦ Valid 2 ¦ Completed 2 ¦ Complete 2 ¦ Error 2 ¦ Ack ¦ Ready ¦ ¦ ¦ Overrun 2 ¦ ¦ ¦ ¦ ¦ ¦ Camera 2 ¦ Camera 2 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 11 ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Set ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ UserData ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ Ack 2 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 12 ¦ Results ¦ Inspection ¦ Results ¦ Inspection ¦ Exposure ¦ Acq ¦ Trigger ¦ Trigger ¦ ¦ ¦ Buffer ¦ Passed 3 ¦ Valid 3 ¦ Completed 3 ¦ Complete 3 ¦ Error 3 ¦ Ack ¦ Ready ¦ ¦ ¦ Overrun 3 ¦ ¦ ¦ ¦ ¦ ¦ Camera 3 ¦ Camera 3 ¦ +----------------------------------------------------------------------------------------------------------+ ¦ 13 ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Rsvd ¦ Set ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ UserData ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ Ack 3 ¦ +----------------------------------------------------------------------------------------------------------+ The SLMP "StatusWord" signal table/block organizes the word length signals sent from the Vision System to the PLC. The size of the StatusWord block can vary depending on the size of the inspection results section. +----------------------------------------------+ ¦ ¦ 16Bit Word ¦ +----------------------------------------------+ ¦ 0 ¦ Current Job ID ¦ +----------------------------------------------+ ¦ 1 ¦ Error ID ¦ +----------------------------------------------+ ¦ 2 ¦ Acquisition ID 0 ¦ +----------------------------------------------+ ¦ 3 ¦ Inspected Image ID 0 ¦ +----------------------------------------------+ ¦ 4 ¦ Inspection Result Code 0 ¦ +----------------------------------------------+ ¦ 5 ¦ Acquisition ID 1 ¦ +----------------------------------------------+ ¦ 6 ¦ Inspected Image ID 1 ¦ +----------------------------------------------+ ¦ 7 ¦ Inspection Result Code 1 ¦ +----------------------------------------------+ ¦ 8 ¦ Acquisition ID 2 ¦ +----------------------------------------------+ ¦ 9 ¦ Inspected Image ID 2 ¦ +----------------------------------------------+ ¦ 10 ¦ Inspection Result Code 2 ¦ +----------------------------------------------+ ¦ 11 ¦ Acquisition ID 3 ¦ +----------------------------------------------+ ¦ 12 ¦ Inspected Image ID 3 ¦ +----------------------------------------------+ ¦ 13 ¦ Inspection Result Code 3 ¦ +----------------------------------------------+ ¦ 14-960 ¦ Inspection Results ¦ +----------------------------------------------+ The SLMP "ControlWord" signal table/block organizes the word length signals sent from the PLC to the Vision System. The size of the ControlWord block can vary depending on the size of the user data section. +----------------------------------------------+ ¦ ¦ 16Bit Word ¦ +----------------------------------------------+ ¦ 0 ¦ Job Load ID ¦ +----------------------------------------------+ ¦ 1-960 ¦ User Data ¦ +----------------------------------------------+ You can use CogNdmSlmpSignalBlockConstants and CogNdmSlmpDeviceConstants to map blocks of NDM signals to SLMP devices with the CogNdmSlmpBlockMappingCollection class. The following table describes the SLMP memory block addresses supported on the Q, L, and FX PLCs: +-------------------------------+--------+----------------+----------------------------------+-----+----+ | Device Name | Prefix | Bit/Word based | Address Representation | Q/L | FX | +-------------------------------+--------+----------------+----------------------------------+-----+----+ | Input Relay | X | Bit | Hex(Q/L Series) Octal(FX series) | X | X | | Output Relay | Y | Bit | Hex(Q/L Series) Octal(FX series) | X | X | | Internal Relay | M | Bit | Decimal | X | X | | Latch Relay | L | Bit | Decimal | X | - | | Annunciator | F | Bit | Decimal | X | - | | Link Relay | B | Bit | Hex | X | - | | State Relay | S | Bit | Decimal | - | X | | Data Register | D | Word | Decimal | X | X | | Link Register | W | Word | Hex | X | - | | File Register | R | Word | Decimal | X | X | | File Register Multiple Blocks | ZR | Word | Hex | X | - | | Timer | TN | Word | Decimal | X | X | | Counter | CN | Word | Decimal | X | X | +-------------------------------+--------+----------------+----------------------------------+-----+----+ The most commonly used devices used to communicate vision data to a PLC, are the M (Internal Relay) and D (Data Register) types.
See Also