From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

FieldPoint Family

cancel
Showing results for 
Search instead for 
Did you mean: 

FP Read vi All Tag not working with Max 40 and FP-AI-110

Hello List,
 
For starters, I'm using LV7.0 under Win2K.
 
To maintain compatibility with all of the systems installed in the facility, I use FP2010s, even though I don't run code in them...I use them like FP-1601s...running the FP code in a connected PC.
 
My latest project required a cFP system, so I purchased a cFP-2120 to maintain compatability with other systems in the plant.  (we bought a bunch of these before cFP-1804s were available).  This new controller forced me to upgrade Max from 3.2 to Max 4.0, because Max 3.2 wouldn't talk to a cFP-2120.  So Max 4.0 installed newer versions of FP Open.vi, FP Create Tag.vi, FP Read.vi, etc. as well as a newer version of FPLVMgr.dll.  (I was ASSURED by NI Tech Suppoty that everything was backward compatable)
 
I find now that when I load my VIs that were written when Max 3.2 was installed that my FP Read.vi will not return an array of 8 items if I create an All tag and try to read an FP-AI-110.  (I also notice that the "Timestamp" in MAX 4.0 doesn't update when I Start scanning the items in Dad Neighborhood)  The All tag still works with my FP-DI-301 in the same Vi using the same IAK file. 
 
A Help Desk call to NI informed me that I have to update the firmwhere on my FP02010s to solve the problem.  I don't want to do that plantwide.  It would be easier to re-write my applications, calling out each IO point instead of All.
 
Is this a bug, or just a lack of "backward compatability"?
 
Thanks,
Mike   
0 Kudos
Message 1 of 7
(4,611 Views)
Hello wd8ivl,

When you say that your "FP Read.vi will not return an array of 8 items if I create an All tag and try to read an FP-AI-110," is it just returning a single floating point number rather than an array of numbers?  Make sure you have the correct type selected for the FP Read.vi.  Right-click on the FP Read.vi, and make sure that you have Float Array - IO selected in order to return an array of values.  This may also be why the Timestamp is not being updated.  The timestamps will only update when a new value is read, and if the FP Read.vi is not reading properly, that may explain why the timestamp is not being updated.  Let me know if this solves the problem, and if not what version of the Fieldpoint driver you are using.

I hope this helps,

Travis G.
Applications Engineering
National Instruments
www.ni.com/support
0 Kudos
Message 2 of 7
(4,592 Views)
Hello Travis,
 
No, it doesn't return anything.  It used to return an array of 8 single fp numbers with the Max 3.2 FP Vi's...but now, nothing!
 
I've got the correct Vi because I've got an array of FP connected to the "type" terminal.  (It won't let me connect a "single" to that terminal)
 
I also know I am using the correct VI, because it's in a main VI that I wrote before I installed Max 4.0 over Max 3.2, and it worked then.
 
I can go out the the shop where I only have Max 3.2 installed, load the same main VI from my network, and the All will return the array of eight items.
 
And as far as the timestams go, why doesn't the timestamp for the All tag update in Max 4.0 when I push the Green Start arrow in Data Neighborhood-> Fieldpoint Items (my.iak) ->FP @ My IP Address -> FP-AI-110 @ 7 ?  
 
The timestamps for Channel 0 to Channel 7 do.  This tells me that even Max 4.0 isn't reading the All tag.
 
Mike
 
 
0 Kudos
Message 3 of 7
(4,589 Views)
Hello Mike,

Thanks for verifying that you have the correct type selected for the FP Read.vi.  The fact that the data and timestamps for channels 0 through 7 are working correctly in MAX, and not the All data item, leads me to my next troubleshooting step.  What I would try next is to create your own custom multi-channel I/O point in MAX, to see if you can get data and timestamps from that.  Start by creating a New Item under your FP-AI-110 module under Data Neighborhood in MAX, by right-clicking on the module and selecting 'Create New Item'.  Give the new IO Item a logical name, select its type as Analog Input, and select what channels to add to this IO Item.  Start with just a single channel, and test it in MAX to see if you can correctly read data, get timestamps when the data changes, and have a status of 'Successful'.  If you can verify that this works with a single channel, go back in and add more channels, one at a time.  This will determine if one channel in your scan list is causing the All tag to not read correctly.  Keep adding channels, and if at some point the multi-channel IO Item stops returning data and the timestamp stops updating, try to gather as much information about what changed in the configuration.

Let me know how this turns out, and also what version of the Fieldpoint driver you have installed on your host machine.  I appreciate your patience and hopefully we can get to the bottom of this.

Regards,
Travis G.
Applications Engineer
National Instruments
www.ni.com/support
0 Kudos
Message 4 of 7
(4,576 Views)

Travis,

Sorry I didn't get back to you sooner, as I was out of the office.

I was able to create a Tag called ''Some'' and add all of the channels to it, and in Max the Timestamp continued to update.

Some Info:In the previous program that worked with Max 3.2, I was able to create the ''All'' tag by using the automatically created ''All'' Item in Max. On the ''FP Refnum Out" output of the Create Tag.vi, I created an indicator. From that indicator, I created a Local Variable that I then tie to the ''FP Refnum In'' of the ''FP Read(Polymorphic).vi''. I tied an Floating-point array constant to the ''Type'' input of the ''FP Read(Polymorphic).vi''. An array indicator tied to it's output returns the values of the eight channels.

Now, using Max 4,0 and following this procedure as above with the ''Some'' tag I created still does not return any values, even though it looks to be working fine in Max. No errors are displayed by the ''CreateTag.vi'' or the ''FP Read (Polymorphic).vi'' ... it just doesn't return any data.

I also tried substituting the ''FP Read (Float Array).vi'' for the ''FP Read (Polymorphic).vi'' with no luck. I also tried reading the ''Some'' tag with the FP Read Express.vi with no luck, although I can read the tags of individual points just fine.

As for what version of the Fieldpoint Driver, I assume you're asking about FPLVMgr.dll. Mine is dated 11/16/2005. (the previous version, that worked, was dated 6/27/2003)

Thank you for your diligence.

Mike

0 Kudos
Message 5 of 7
(4,561 Views)
Hello Mike,

It sounds like creating and reading from your own custom multichannel I/O point is working correctly in MAX 4.0, but still not within LabVIEW.  Therefore, I think we should move on to troubleshooting your LabVIEW program.  With LabVIEW 7.0 and later, you don't need to use the Fieldpoint Open VI or Fieldpoint Create Tag VI.  All you need to do is pass the name of the I/O point your reading from to the Fieldpoint Read VI.  In an attempt to simplify things as much as possible, I'd like you to try using just the Fieldpoint Read VI to read from the 'Some' I/O point you've created.  Take a look at the code I've attached to this post, open the block diagram and replace the I/O point I've selected with your own.  Make sure to click the drop down box on the I/O point constant, select Browse, click the Refresh button in the Fieldpoint I/O Point dialog box, and browse to the Some item you created.  Can you get results back when performing a read this way?  Next, try having just a single channel selected under the 'Some' I/O Point in MAX. Can you read from just this single channel item in LabVIEW?  Remember to Refresh and browse to your Fieldpoint I/O Point in the dialog box in LabVIEW everytime you make changes in MAX.

Also, the Fieldpoint driver version I'm looking for can be found under the 'Software' category in MAX.  If you expand the Software tree, find Fieldpoint, and click on it, it should tell you the version number of the driver.

Let me know the results of these tests and if you have any further questions.

Regards,
Travis G.
Applications Engineering
National Instruments
www.ni.com/support

0 Kudos
Message 6 of 7
(4,548 Views)
Mike & Travis -
I was searching NI for this exact problem.
We have a compactFieldpoint that does the same thing after upgrading to Max 4.0/FP5.0 when everything ran fine under Max 3.1/FP4.1.
(I installed the software from the February 2006 version of the NI Developer Suite 2006 CD set)

Our hardware - we have 2 systems consisting of:
    cFP-2000 controller
    cFP-TC-120 thermocouple input (3 of them, all exibit the same problem)
    cFP-DI-330 discrete input (does not seem to have a problem with the canned All item in Max)

The canned All tags of the cFP-TC-120s do the same thing as Mike's in Max - Shows 0, no timestamp update, status is Successful
make the tag a single channel - works fine; as soon as it becomes a multi-channel item, shows 0, etc.
Our vi's read in an array of 8 values - all 0, as does Travis' FieldpointSometag.vi

Creating a new multi-channel item - Seems to work fine in Max, but the vi's (including Travis') still read an array (the correct size-I varied the number of channels) of all 0s.

One other thing, in Max, if an open thermocouple channel is part of the custom multi-channel item that I created, the status shows 'Open thermocouple on some channels'.  The canned All item always shows status 'Successful'.

Travs - can you use the same hardware (mine or Mike's) to re-create the issue?

My take: Although a custom multi-channel item seems to work in Max, the fact that the canned All item does not and that the vi's still read 0 with the custom item, points to the new Fieldpoint drivers and how thay handle multi-channel items and not with the Labview vi's.

I gave up and went back to the previous versions of Max/Fieldpoint, but we will eventually want to upgrade.  I hope we won't  have to modify our vi's to do multiple reads of single channels instead of one multi-channel read.

Thanks for reviewing this issue,
Cindy


0 Kudos
Message 7 of 7
(4,491 Views)