09-19-2007 05:22 AM
09-24-2007 04:09 AM
Hi there,
I'm afraid all the drivers that have been produced by NI (or by other customers) have been placed on the www.ni.com/idnet page.
All I can suggest is creating your own driver for that specific balance. Hopefully you will have the full manual with all the appropriate commands for the device. Here are some tutorials that will help you get started. I would also suggest looking at the instrument I/O Assistant.
http://www.ni.com/devzone/idnet/ - Here you can at the top of the page request that NI look into developing the driver. If we have enough interest then we tend to try and develop one.
http://zone.ni.com/devzone/cda/tut/p/id/4359 - Instrument Fundamentals
http://www.ni.com/swf/presentation/us/labview/projinstdrv/ - Tools for developing drivers
http://www.ni.com/devzone/idnet/development.htm - Development help
Sorry I couldn't be of further help in this matter
Thanks
AdamB
09-24-2007 07:45 AM
I have written a driver for a Mettler Toledo balance in the past and it was not too difficult a simple serial enterface. I cant post the code beacuse it belongs to the client. What is the comunication interface? I used a few visa calls and had the balance communicating with little problems. I did not find a posted driver however.
Paul
09-24-2007 08:23 AM
I've attached what I've got so far, it seems however that no matter what command and/or terminating character I put in it only ever reads the weight?
Thanks
09-24-2007 08:30 AM
09-24-2007 08:48 AM
Have you tried to prototype it in hyperterminal. I like to validate my serial communication before I write the drivers. this way I can quickly validate the command set.
paul
09-24-2007 08:53 AM
Does the balance stream back the weight or just reply to a query? If you are reading weight even though you did not send the correct querry termination makes me think this model sends back the weight continiously. If this is the case the nice way to communicate with a device like this is to read all characters, store them in in a shift register (string) and parse the string for a valid weight string, return the last valid weight. Call this vi peridically ( depend on how fast the data stream is) to avoid visa buffers from filling.
Paul
09-24-2007 09:07 AM
09-24-2007 09:58 AM
Look at the action engine architecture. Your actions are
Initialize - opens visa sets com port stores visa session in shift reg.
Close - closes visa session
Start read - clears input buffer, clears shiftregister string buffer, sends start read command
Stop read -sends stop read command
Tare - Sends the read command (dont do this durring streaming of data)
Read - reads all bytes at port, concatinates it th the string buffer (Shift register) this buffer should then be parsed for last complete waight string and the weight and unit returned.
In your application you should initialize and start stream, then call read fast enough to avoid the buffers from overloading on the Visa side.
Paul