Beijer Electronics (formerly QSI Corporation)
http://www.qsiforums.com/

G70 NIObj's Don't Work on Newer cRIO's
http://www.qsiforums.com/viewtopic.php?f=6&t=3988
Page 1 of 1

Author:  RickCurrie [ Thu Oct 21, 2010 11:01 pm ]
Post subject:  G70 NIObj's Don't Work on Newer cRIO's

I have an application which uses a G70 as a user interface to a National Instruments CompactRIO system, using NIOBJs (Version 1) and an ethernet connection. This works fine on the old cRIO 9002 units with the Phar-Lap OS, but when I ported the application over to the new 9012 unit which uses VxWorks, there appears to be no communications between the cRIO and the G70. I know the code is running on the cRIO because I can see it run on the development workstation, but the G70 acts as if it is completely disconnected. Do I need to use a different library? Or is there something which needs to be reconfigured? Thanks in advance for any assistance you can provide.

Rick

Author:  Ron L. [ Fri Oct 22, 2010 8:39 am ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

Can you verify the version of Labview you are using. The VI's that go with the NIObj's only work with versions of Labview before 9.

Author:  RickCurrie [ Fri Oct 22, 2010 2:51 pm ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

Ah, there's the issue! Well, maybe. I am using LabVIEW 2010. Funny, they would work with LV2010 when I used the NI-9002, though. Hmmm.....???? Wonder if it's some sort of Phar-Lap vs. VxWorks thing, like maybe a precompiled binary buried somewhere in the library? Anyway, I need to get the 9012 to talk to the G70. How do I do that?

Author:  Ron L. [ Fri Oct 22, 2010 3:10 pm ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

If you want to use the Labview VI's and NIObjs that were developed you will need to be using an earlier version of Lab-view such as 8.x.

Otherwise you may consider another approach. Do not use those drivers at all and use the EthernetProtocolV2 or SerialProtocolV2 objects (in QLarity) to enable ASCII communication. These two objects will allow you to control the G70 terminal remotely from Labview by sending the appropriate strings.

The strings are sent in the format of
Code:
<object name>.<property name>=<value>;


For example if you want to update a LabelV2 instance called label_1 on the G70 terminal you could send the string:
Code:
label_1.value="500";


If you wanted to update a gauge it has a numerical value so the string would be a bit different.
Code:
gauge_1.value=500;


This approach will require expertise in Labview such as knowledge how to create strings and transmit them over a Serial port or Ethernet connection. You'll also need to get familiar with Qlarity object properties you can change.

Here's some other useful string examples:

Hide a screen:
Code:
screen_1.enable=false;


Show a screen:
Code:
screen_1.enable=true;


Query a property:
Code:
label_1.value;
'<value>; will be sent in reply.


For the example commands to work above you will have to have created three objects with the names: label_1, screen_1 and gauge_1 in your Qlarity workspace.

Author:  RickCurrie [ Fri Oct 22, 2010 5:39 pm ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

Ouch!!! Well, for the short term we can use an older 9002 controller, but for the long term I guess I'll have to do it this way. Are there any tutorials on how to do ethernet communications on the G70? I've never dealt with ethernet programming before. Anyway, thanks for the help. I really appreciate it.

Author:  Ron L. [ Mon Oct 25, 2010 8:20 am ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

I don't have a tutorial. The EthernetProtocolV2 object (in Qlarity) can be configured to use UDP, be a TCP/IP server or a TCP/IP client. You will have to change the properties of the object to specify what type of Ethernet connection it is using.

Author:  RickCurrie [ Mon Oct 25, 2010 4:49 pm ]
Post subject:  FIXED!!! Re: G70 NIObj's Don't Work on Newer cRIO's

Got it working :D . This is a weird one. On the LabVIEW side, I had the IP target address for the NICOM.vi set to 192.168.099.010. This worked fine on the old NI-9002 controllers, but it turns out the new NI-9012 controllers don't like the extra zeroes. Changing the address to 192.168.99.10 made everything work :). (Hey, I said I didn't know anything about ethernet :lol: ). Anyway, thanks for your support.

Author:  Jeremy [ Tue Oct 26, 2010 7:02 am ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

Actually that makes total sense.

Officially (according to the standard), IP address octets which begin with a leading 0 are to be treated as octal instead of decimal. I suspect that at some point the folks at NI realized this and fixed it (Yes, I know that Qlarity's Power On Setup is an offender here, however with the limited UI available in our Power On Setup, we don't have a lot of options).

Author:  RickCurrie [ Tue Oct 26, 2010 3:25 pm ]
Post subject:  Re: G70 NIObj's Don't Work on Newer cRIO's

Thanks for the information, Jeremy. I did not know that. Like I mentioned earlier, I don't really know a lot about ethernet. Most of the time I just plug things together and they work.

Page 1 of 1 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/