Agreed, that would be a great thing to have. As for time alignment, hopefully the temp and humidity aren't changing very fast and anything better than a minute would probably be OK.
The voltage reference is on the way to the next hop. Unfortunately, my two 220,000 count multimeters couldn't be repaired in time (and I couldn't justify holding the voltage reference any longer)... so I didn't get much benefit from it other than to confirm a few handhelds.
Thanks for the opportunity though!
The voltage reference is on the way to the next hop. Unfortunately, my two 220,000 count multimeters couldn't be repaired in time (and I couldn't justify holding the voltage reference any longer)... so I didn't get much benefit from it other than to confirm a few handhelds.
Thanks for the opportunity though!
No worries, thanks for participating!
Gents,
I've made some progress on a "lab logger" -- a little board which logs the ambient temperature and relative humidity of your lab.
The idea is to have an Si7021 + ATtiny85 + FTDI chip on a board small enough that it can be shipped cheaply along with any references. Plug it via USB cable, start the script, and you're capturing temp + humidity in a CSV file.
Prototype stage 1 was getting this to work with an Arduino (an ATmega 328), using the Arduino's built-in USB-serial converter. I got that working last week.
Prototype stage 2 was getting this to work using an ATtiny85, using an FTDI FT230X for USB. I've just gotten that working today.
The next step is to design a little board for it.
Anyway, just wanted to share the progress
Looking good CM, one question though. Is the plan for this to be a stand alone solution, or do we need a computer tethered to dump the data to? It seems to me that it would be ideal if we could capture the data to an sd card or some other form of local storage.
I assumed it was to be used with a PC. If you're logging the voltage reference measurements to a PC, then it's easy to correlate that data with the temperature and humidity using the PC's clock.
If your DMM has a built-in real-time clock (none of mine do) and onboard logging capability, then the temp/humidity board would need an RTC as well. From an earlier post, fine synchronization between the devices isn't necessary, but you'd probably want them to be roughly within the same minute.
Was there an idea earlier about using a Raspberry Pi to do all the logging?
I assumed it was to be used with a PC. If you're logging the voltage reference measurements to a PC, then it's easy to correlate that data with the temperature and humidity using the PC's clock.
If your DMM has a built-in real-time clock (none of mine do) and onboard logging capability, then the temp/humidity board would need an RTC as well. From an earlier post, fine synchronization between the devices isn't necessary, but you'd probably want them to be roughly within the same minute.
Was there an idea earlier about using a Raspberry Pi to do all the logging?
I would imagine you would collect the data from the sensor the same way you would from the DMM.. the host collecting the data would be responsible for logging the timestamp, at the same time you sample the USB serial device for each. Whether it be <GPIB->USB_serial> or <temp_sensor->USB_serial>, the principle is the same.
Temp/humidity doesn't move that much, but if synchronization is critical you can record separate timestamps for both temp and DMM intervals.. library like Pandas (like the one I used in the script I shared:
https://www.eevblog.com/forum/metrology/mplot-logging-and-plotting-script-for-long-term-measurements/) is smart enough to interpolate the two measurements.
Regarding the Raspberry Pi I did something similar today as well for my lab. I am planning on using this little Rpi 2 (I had laying around) as a sort of a sampling concentrator for 2-3 of my bench DMMs. I also hooked up one of those Bosch BM280 temp/humidity/pressure sensors to it so that I can measure the ambient temp/humidity/pressure.
edit: what it looks like with all the data plugged in:
I have been using my BME280 in a similar way. It communicates via telnet and can support multiple connections.
To mount my sensor near the equipment, I used a spare SD card holder and a spare ps/2 extension cable. This way I can disconnect it and not worry about reconnecting it wrong. The locking tab can be used with a zip tie to hang it out of the way.
So much engineering
I have mine just dangling around at Pi3
Too much stuff to risk shorting out one of my RPi. That would leave me with a half dozen or so...
The Gellar labs reference has arrived, is powered and is warming up. It has a very pronounced warmup signature. After it has been on for a couple of hours, I will post the graph and some numbers.
My DMM7510 was warmed up 12+ hours before powering the reference.
The reference is inside a metal enclosure but the front panel is not installed. After warmup, I will install the front panel.
cheers!
Too much stuff to risk shorting out one of my RPi. That would leave me with a half dozen or so...
That's a good point. Thanks for sharing the tip with the SD card sleeve, will do something similar as well!
I have been using my BME280 in a similar way. It communicates via telnet and can support multiple connections.
By the way, instead of having to leverage telnet you can run a simple Restful service with Flask. At least this is what I did, this is the simple server script:
from flask import Flask
from flask_restful import Resource, Api
import bme280
app = Flask(__name__)
api = Api(app)
def convert_to_f(c):
return ((c * 9)/5) + 32
class Banner(Resource):
def get(self):
return "/bme280 returns a json dict with metrics"
class Bme280(Resource):
def _get_metrics(self):
temperature, pressure, humidity = bme280.readBME280All()
return {'temperature_c': temperature,
'temperature_f': convert_to_f(temperature),
'pressure': pressure,
'humidity': humidity}
def get(self):
return self._get_metrics()
api.add_resource(Banner, '/')
api.add_resource(Bme280, '/bme280')
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0')
"import bme280" being the following module:
https://bitbucket.org/MattHawkinsUK/rpispy-misc/raw/master/python/bme280.pyYou just run it with: "sudo python server.py" where server.py is the name of the script I pasted.
Consuming the service becomes trivial (this is from a different machine on my network):
For added security, you could wrap it in ssh or configure Flask to use https.
I have a very inexpensive UGsimple GPIB to USB card. It comes with VBA and Visual Studio compatible libraries.
Would anyone have a suggestions for logging with that card under Windows environment.
I am using HP 34401a, Keithley 2000 and Keithley 2002.
Even if you do not have it for Windows, any logging script for these would be great, especially scripts that were already used in this thread, so my results are consistent. Thanks.
I have a very inexpensive UGsimple GPIB to USB card. It comes with VBA and Visual Studio compatible libraries.
Would anyone have a suggestions for logging with that card under Windows environment.
I am using HP 34401a, Keithley 2000 and Keithley 2002.
Even if you do not have it for Windows, any logging script for these would be great, especially scripts that were already used in this thread, so my results are consistent. Thanks.
There is a Linux driver and a python script for that device:
https://github.com/haata/ugsimple-usb-gpibI am actually going to order one and see if I can make it work with an rpi.. because I do have a few GPIB only devices I would like to start using for data acquisition.
Again I prefer Linux here because I can log all the data on a "remote" raspberry pi and just access it wirelessly. Or I can turn the Rpi into a wireless REST gateway which is easy to query from scripts like above. Will let you know how it goes.. with some instructions if I get it working.
I have a UG plus and was trying to set up to log various meters. So far no success. The card hangs anytime I try to use one of the libraries, and hangs frequently with the provided simple GUI. I have given up and ordered a NI USB-GPIP-HS card which should arrive any day now.
I am not sure what is wrong with the UG, but others have had problems and I decided I had other fish to fry. A brief look inside showed three ICs, two buffers and a totally unmarked device.
Regarding the Raspberry Pi I did something similar today as well for my lab. I am planning on using this little Rpi 2 (I had laying around) as a sort of a sampling concentrator for 2-3 of my bench DMMs. I also hooked up one of those Bosch BM280 temp/humidity/pressure sensors to it so that I can measure the ambient temp/humidity/pressure.
This is exactly what I would like to do - get my GPIB only Keithley 196 connected to a Raspberry Pi for datalogging. Then I could access the data from my Mac for plotting, analysis, etc. I need to figure out the physical hardware layer (GPIB -> RPi) as well as the software aspect. I am not a programmer though! I think CellularMitosis is working on a GPIB to USB adapter board. I'm sure he'll report on his progress when he has a chance.
I took the cheap/easy way out and bought a Prologix USB/GPIB box some years ago. Works well for what I code, but is not software compatible with any other solution like NI.
UGSimple USB to GPIB Controller is only $29, if I can get it working I will share my findings. If not Cellularmitosis is also working on an Atmega solution that's worth a try. I am sure we'll come up with an affordable enough solution.
On a side note I should in the future also be able to provide additional data from a new tool in my voltnut inflicted lab. I saw a decent deal on a pretty beat up 3458A so I decided to bite the bullet. So far I haven't found any issues other than cosmetic ones, but will have to run a longer test to determine drift etc.. I can already tell I will need to replace the fan, as it does have a bit of a high pitch sound to it.
@Muxr
Thanks for the sample code. I only chose telnet as an emulation of the Fluke 1620. Moving forward, I would look at other ways to communicate with it. The 1620 may be accurate, but its implementation is horrible. Dropped characters from the result string made me use the RPi.
On a side note I should in the future also be able to provide additional data from a new tool in my voltnut inflicted lab. I saw a decent deal on a pretty beat up 3458A so I decided to bite the bullet.
That one looks like it's been down the road a few times, on the back of the truck. Hopefully it's OK inside. That'll be nice to have in the loop, for sure.
On a side note I should in the future also be able to provide additional data from a new tool in my voltnut inflicted lab. I saw a decent deal on a pretty beat up 3458A so I decided to bite the bullet.
That one looks like it's been down the road a few times, on the back of the truck. Hopefully it's OK inside. That'll be nice to have in the loop, for sure.
Aye it's really been through a ringer, probably a dumpster dive but so far it behaves alright. I have not found any issues with it yet in terms of functionality, but will need to hook up GPIB and a decent set of references before I can tell if it has drift issues. It looks in agreement with my Keithley 2015 at least. Passed the self tests and went through ACAL once it warmed up without issues.
The guard post was also yanked. Man who does this to an instrument? On the other hand, it's the reason I got it for a decent price, so I can't really complain too much. Here is another picture: it has a big gash by the number keypad. Maybe I find a new face panel on Ebay in the future.
The screen is actually surprisingly bright, better than all my Keithley and Fluke 8845A/8846A DMMs I have.
Good find on the meter. Depending on how comfortable you are moving the front and rear posts around you could get the front ones looking new again.
I typically replace the front panel if only because the mounting screws behind the front cover are broken because of impacts to the terminals.
Also, the front rear switch might need replacing depending on its age.
Good find on the meter. Depending on how comfortable you are moving the front and rear posts around you could get the front ones looking new again.
I typically replace the front panel if only because the mounting screws behind the front cover are broken because of impacts to the terminals.
Also, the front rear switch might need replacing depending on its age.
Once I do some tests and issue finding.. will look into doing some preventative maintenance.. first order will probably be the NVRAM calibration data backup (I hear it can be done via GPIB). Also will need to replace the fan as well. Thanks for the tips on the other issues.
Muxr I saw a decent deal on a pretty beat up 3458A so I decided to bite the bullet.
From now on, it's only going downhill, trust me
You can get brand new front panel plastic from the Keysight, MPN: 03458-40212. It's relatively cheap (100$) + 30$ for the display window (which says Key-sigh on it
.
Binding posts block is $230 however.