MrPLC Member
  • Content count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About shalamar

  • Rank
    Hi, I am New!

Profile Information

  • Country Canada
  1. Because the company that employs me refuses to spend money on a commercial product. To their credit it is also the case that a solution requiring this type of driver would require an additional license.
  2. I am trying to read data off the AB PLC programatically via a driver I created that uses the Common Industrial Protocol to target the Read Tag Service and Write Tag Service CIP services implemented by the Logix 5000 controller. Reading and writing to all other tags works. It's only these ones that address a particular bit within a DINT that do not work. The PLC and tag setup has been performed by a vedor whose equipment I am trying to control via said PLC so I am not sure if what I am doing is wrong or the setup is wrong on the vendor side, e.g. the DINT tag should really be set up as a word to allow access to individual bits (see in the original message the difference between the DINT tag and the tag that targets a particular bit).
  3. I have been supplied with a list of tags from a vendor containing flags indicating if alarm conditions are on. These tags have the format AlarmGroup.Num.1 through AlarmGroup.Num.10 as recorded. Reading these tags as presented by making a read request to the Read Tag Service fails with general error code status 0x05, "Request path destination unknown. Probably instance number is not present.". I am using ASCII extended symbolic segments to translate the tag into a path so the instance number is not required for this approach. Upon further discussion with the vendor I found out AlarmGroup.Num.1 refers to bit 1 of the AlarmGroup.Num tag that is a DINT tag. I can successfully read the AlarmGroup.Num as a DINT but I was hoping for a more universal solution that would not require me to add solution specific parsing functionality to identify tags that refer to individual bytes from other tags and manually shift the bits as required. I am very new at this and I want to know if it is possible to address an individual bit (for reading only) from a DINT tag and how to build the path to access it. Are there other types of segments other than the ASCII extended segments required?