Performing a Pulse Test on a Digital Output Module

To perform pulse tests on your digital output modules, use an MSG instruction:
  1. Use the Tag Editor to create a tag at controller scope with a MESSAGE data type.
  2. Go to the Ladder Editor, and insert a rung that contains an MSG instruction.
    The instruction operand should be the MESSAGE tag you just created.
  3. Select the button to the right of the operand to go to the
    Message Configuration
    dialog box.
  4. For
    Message Type
    , choose Generic CIP.
  5. For
    Service Code
    , enter 4C (Pulse Test service code).
  6. For
    Object Type
    , enter 1E (Discrete Output Group).
  7. For
    Object ID
    , enter 1.
    Leave
    Object Attribute
    blank.
  8. For
    Source
    , enter or choose a controller-scoped tag that is an INT[5].
    If the tag does not exist yet, select the
    Create Tags
    button to create it.
  9. For
    Num. of Elements
    , enter 10.
    Leave the
    Destination
    blank.
  10. Select the
    Communication
    tab.
  11. For
    Path
    , enter module name or CIP path to the module.
  12. For
    Communication Method,
    choose CIP.
  13. Select
    OK
    .
  14. Write logic or use the Data Monitor to set the values of the source tag elements:
    • [0] = bit mask of points to test (test only one point at a time)
    • [1] = reserved, leave 0
    • [2] = pulse width (in hundreds of microseconds, normally 20)
    • [3] = zero cross delay (in hundreds of microseconds, normally 40) (only applies to AC modules)
    • [4] = verify delay (in hundreds of microseconds, normally 10)
  15. To test the results of the pulse test, write logic to examine the EXERR member of the message tag when its DN bit is set and its ERR bit is not (meaning the message completed successfully).
    Each bit in the EXERR member corresponds to an output point on the module. If the bit you performed the pulse test on is set to 1, the pulse test failed.
    Important:
    Refer to publication 1756-UM058 for a list of possible diagnostic faults on the 1756-OB16D and 1756-OA8D modules.
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.