JLand
Member
Hi folks,
I am having a hell of a time getting an E+H PMP23 scaled correctly in a CompactLogix PLC. I have tried all sorts of data manipulation to get this dang thing working but nothing has helped. I called IFM (I have an IFM IOLink master) and they couldn't help, and I am waiting of E+H to call me back but I am not holding my breath.
The manual says the the first 30 bits (0-29) is the raw process data spread across 2 16 bit INTs, with bit 0 being the LSB. The last 2 bits of the the second INT is for something else. I have tried:
COP INT1 into a DINT BTD INT2 dest 16 len 14
BTD INT1 dest 0 len 14 BTD INT 2 dest 14 len 16
and I have also tried addressing INTs 2 and 3 as well as reversing which INTs I use (COP INT2 first instead of INT1, for example.)
When I push my finger on the sensor, only INT2 changes. INT1 is always 16383 and INT3 is 0. My guess is INT2 is the least significant process data and INT3 is the most significant process data, but I tried that and I couldnt get it to work.
IFM tells me the transmitter should be sending the actual PSI value of the sensor divided by 1000.
See my screenshots attached for a better picture of what I am working with.
When the sensor is sitting there with nothing on it, INT2 is either -250 or -220.
Here is the manual for the sensor under downloads/IOLink Operating Instructions:
https://www.endress.com/en/field-in...gauge-Cerabar-PMP23?t.tabId=product-downloads
I am at the end of my rope, can someone help? Thanks a bunch in advance.
I am having a hell of a time getting an E+H PMP23 scaled correctly in a CompactLogix PLC. I have tried all sorts of data manipulation to get this dang thing working but nothing has helped. I called IFM (I have an IFM IOLink master) and they couldn't help, and I am waiting of E+H to call me back but I am not holding my breath.
The manual says the the first 30 bits (0-29) is the raw process data spread across 2 16 bit INTs, with bit 0 being the LSB. The last 2 bits of the the second INT is for something else. I have tried:
COP INT1 into a DINT BTD INT2 dest 16 len 14
BTD INT1 dest 0 len 14 BTD INT 2 dest 14 len 16
and I have also tried addressing INTs 2 and 3 as well as reversing which INTs I use (COP INT2 first instead of INT1, for example.)
When I push my finger on the sensor, only INT2 changes. INT1 is always 16383 and INT3 is 0. My guess is INT2 is the least significant process data and INT3 is the most significant process data, but I tried that and I couldnt get it to work.
IFM tells me the transmitter should be sending the actual PSI value of the sensor divided by 1000.
See my screenshots attached for a better picture of what I am working with.
When the sensor is sitting there with nothing on it, INT2 is either -250 or -220.
Here is the manual for the sensor under downloads/IOLink Operating Instructions:
https://www.endress.com/en/field-in...gauge-Cerabar-PMP23?t.tabId=product-downloads
I am at the end of my rope, can someone help? Thanks a bunch in advance.