I have an interesting issue. I am attempting to create tags for a SLC connection which is communicating with Bridged_EIP protocol. All my normal integer and boolean tags work but I am unable to get bit state of a DWORD. Here is the address path I am using "ns=1;s=[RMC200]F19:32/11" . This results in "Bad_NodeIdUnkown" for the quality of tag. But if I use path "ns=1;s=[RMC200]F19:33" which is an integer tag then it works fine.
This is invalid syntax in a SLC. F
is a Float not an Integer. You can not reference a "bit" of a float value.
This is also a Float value, even if you are using it as an Integer. If you have the "Ignition" tag type set to Integer then you would truncate any decimal part of the value in the PLC.
In a SLC the 'N' files are 16 bit Integers, which is commonly referred to as a WORD. If you really do need a DWORD then that would be an 'L' file which is a 32-bit Long Integer value.
If you however want to get the 11th bit of a Floating point value then you'll have to do it manually in Ignition.
I would suggest you switch to the proper type inside of the PLC.
2 Likes