LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot write negative values on modbus server on cRIO 9068

Solved!
Go to solution

Hello everybody,

 

I'm trying to move a project from a cRIO 9114 platform to a cRIO9068, the reason is for a heavy difference in terms of CPU power, memory, FPGA performance etc..

 

On real time side I deploy a TCP modbus server, and I publish just I16 data.

The problem comes when the program try to write a negative value in a variable binded on modbus. That variable is in the same format (I16), so the program could write negative values between 0 and -32768, but everytime the modbus force the value to zero.

 

I tested the modbus also with "NI Distribuited System Manager 2014" but still cannot write negative values on I16, but I can if I consider data as I32!!!

(see enclosed files)

 

Moreover I deployed a modbus server on my PC and in this case all goes right.

 

Some more information:

I'm working with labView 14.0f1.

On cRIO are installed "Labview RealTIme 14.0.0" and "Modbus I/O server 14.0.0".

I tested the feature on three different cRIO 9068 with  same result.

 

I'm thinking that's something wrong with cRIO 9068, can somebody help me?

 

Thank you

MZ

Download All
0 Kudos
Message 1 of 5
(3,405 Views)
Solution
Accepted by marcello.zoppetti

Hi Marcello,

 

I was able to reproduce the issue on cRIO 9068 and it look like a CAR (corrective action request). I've already open a Corrective Action Request (CAR ID 511039) in order to report the problem in NI R&D.

 

Did you try to implement MODBUS Slave on PC ana MODBUS Master on cRIO? I've tryed and it works even with I16 data types.

 

I hope this will help you.

 

Kind regards.

 

Claudio Cupini

NI ITALY

Technical Support

Message 2 of 5
(3,325 Views)

How can we know when a CAR is solved?

0 Kudos
Message 3 of 5
(3,271 Views)

Thank you very much Claudio for your support, I have been thought from the start that was very strange behaviour, now I will wait for CAR development.

 

About my application I need to put modbus slave on cRIO side, because it must comunicate with a 3rd party device that implements only modbus master on his own side.

Actually I have fix the problem temporaly publishing I16 data (labView side) on I32 addresses (modbus side).

 

How can I track the CAR?

 

Grazie ancora

MZ

0 Kudos
Message 4 of 5
(3,257 Views)

marcello.zoppetti wrote:

How can I track the CAR?


Just watch for it in the new release notes for a version of LabVIEW and the patches.  NI does not make their bug reports public.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 5 of 5
(3,227 Views)