A Project that helps automate the weighing of LN2
Project description
LN2_Monitor
This project will use a USB connection to a dymo scale to help graph and weigh the percentage full of an LN2 trap. The percentage full is based on the maximum weight a LN2 trap can hold(about 28.26kg). The scale used in conjunction with this code is the Dymo Digital Shipping Scale (S100) (https://www.dymo.com/scales/dymo-s100-digital-usb-shipping-scale-100-pound-capacity/SAP_1776111.html)
Required Softwares: download the softwares below first:
libusb-win32 (https://sourceforge.net/projects/libusb-win32/) After installing libusg-win32, click through the install screens until you get to "device selection". In device selection, select the USB input device with product ID 8009(pid:8009).
to install the code: python3 -m pip install LN2_Monitor then go into python and input "from ln2_monitor import d1". input "scale = d1.SCL()"
**To turn off "auto-sleep" mode on the scale, hold the kg/lb button and turn the scale on. **
For functions like "scale.getpercentfull()" and "scale.getkg()", the percent full or kg will be the last returned number, the numebrs above are from other functions that must be called to make the definitions in the class work. How to run the Software: (not needed if pip installed)
After opening up the program, download the software above and run the software. In device selection, select the USB input device with product ID 8009(pid:8009). Then pipinstall pyusb, numpy, and matplot. Then run the code by changing the directory whichever folder the d1 file was downloaded to. Then switch powershell to python and import the d1 file. Set scale = d1.SCL() and run scale.main() or scale.plot() to start plotting and transferring the data to a txt file. You can also run scale.getkg() or scale.getdata() to get the kg or the array respectively. The basic minimum and maximum weights(kg) are set to default as the blucifer cryostat. Scale.setweight() can be run to change the minumum and maximum weight of the cryostat.
The array that is returned when calling the scale.main(), scale.plot(), or scale.getdata() functions can be translated as shown below: array('B'[3, 2, 12, 255, 0, 0])
The first element is always 3 and negatable. The second element is also negatable. The third element will only return either 3 or 12, with 3 meaning the scale is in kg mode and 12 meaning the scale is in lbs/oz mode. The fourth element is the scale factor. A value of 255 means the scaling factor is 10^-1(0.1), a value of 254 means a scaling factor of 10^-2(0.01), and so on. The fourth and fifth elements together are used to determine the weight. The sixth element is also negatable.
Enjoy!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for LN2_Monitor-0.0.9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a187f2ce6f2158096e6f84d1feac236f0e8ca0489c4f9faaf072a4e33eb81d8 |
|
MD5 | 029454611d450fcdeea3574a668a319d |
|
BLAKE2b-256 | 67b308a81b1a163377be2ebf349c86f41b778a98bb59e6dea39f69688d7f118b |