I am using labview 2010 for continuous data logging from sartorius balance via serial port communication. I have created a Labview VI and it is able to communicate with the instrument. The problem is that the values of the weights shown by the balance and values stored by Labview are not the same. The stored values are always 0,00000.
I am not much familier with the labview. So please suggest me the solution for this. I have attached a vi for the reference.
Thanks in advance.
Did you see the correct numbers in the graph?
I doubt that you have correctly communicated with the balance.
You've probably seen also zero's on the graph.
attached is a document how I did this several years ago with a mettler balance. I remember that the cabling and correct settings on the side of the balance took most of the time spent.
Instead of the instrumentIO assistant I used sveral subvi's for these functions.
I see that I have to edit some because one of them uses vi's out of a standard lib I can't sent,
I will come back later today.
Thanks for your reply and help. I tried to use the VIs that you have suggested but faced the same problem as I did with my VI. Following problems are occuring.
1) The values in the graph and numerical pallet are the same but digits after decimal are not appearing.
2) When value of weight changes, it appears in the balance but not in the labview graph and numerical pallet.
3) The graph shows only one constant value and so the numerical pallet. It starts at one particular value and then the change in value by the balance does not reflect in the labview file.
My balance has the following settings.
Baud rate = 1200, Parity = Odd, No.of stop bits = 1, Communication mode = SBI (ASCII).
For your reference, i have attached the output file.
Ok, now I understand, you are living in Europe and the Americans were so nice to have default the localized decimal point, that is in the Netherlands where I live a comma, and in your place also.
The best you can do is in the options to disable the localized decimal point, start LabVIEW again and your program works.
This already influenced a lot of people in Europe and nobody in the USA but they still feel it should be the default, and that simply is a lot of nonsens. They found a way out and I will implement it but really the best way is to disable localized decimal point.
Thanks for the tip. It works now fine. Now only small problem but bigger for my application. What I need in my experiments is that I need to acquire data at very low frequency e.g. 1 reading from balance in 10 or 20 seconds as my experiment runs for few days. The problem in labview vi is if I do not give any time delay, it writes data at very high frequency. If i mention time delay of 2000 ms, then the reading shown by balance will be available in stored file after long time. I need instantaneous data of balance at particular time interval (at every 10 or 20 seconds, the vi should take instantaneous data from the balance and save it to file). I hope you get the requirement.
Sorry to bother you with lot of questions....!
Thanks and regards,
I will send you a bigger example I made long ago. It has the ability to crunch data (specify a deadband that triggers the saving if a value differs more than specified from the previous reading) Also a minimum time is specified that at least a datapoint should be saved.
I'll check this tonight or tomorrow morning. I'll also add the article I wrote but never published.
Here it is
Inside is the complete story, only parts of it are included. The serial option stuff is removed, it simply did not make it. Eventually an object orienetd version will appear.
Also the saving in special format is not added to NOT complicate things.
The only thing you should add is the ability to save not only at the end, but also in between.