Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Python driver for Sartorius and Minebea Intec scales.

Project description

sartorius

Asynchronous python ethernet interface and command-line tool for Sartorius and Minebea Intec scales.

Compatibility

This driver should work for any ethernet scale that uses the standardized communications protocol of the Scale Manufacturers Association. However, it has only been tested on the following models:

  • Minebea Intec Signum
  • Sartorius Entris
  • Sartorius Miras

Installation

pip install sartorius

Scale Setup

For scale setup, navigate to SETUP - UNICOM - DATAPROT - ETHER.

  • Make sure SRC.IP is set to a valid LAN address
  • Ensure MODE - SBI-SRV - 6.1.1 is set (manual says this should be default but it is not)
  • All other defaults are good

This driver is intended to be stable to disconnects, so operators should be able to unplug and reposition the device without affecting any long polling.

Command Line

$ sartorius scale-ip.local
{
    "mass": 0.0,
    "units": "kg",
    "stable": true,
    "info": {
        "model": "SIWADCP-1-",
        "serial": "37454321",
        "software": "00-37-09"
    }
}

You can tare and zero with --zero and remove the info field with --no-info. See sartorius --help for more.

To use in shell scripts, parse the json output with something like jq. For example, sartorius scale-ip.local | jq .mass will return the mass.

Python

If you'd like to link this to more complex behavior, consider using a Python script. This driver exclusively supports asynchronous Python ≥3.7.

import asyncio
import sartorius

async def get():
    async with sartorius.Scale('scale-ip.local') as scale:
        await scale.zero()             # Zero and tare the scale
        print(await scale.get())       # Get mass, units, stability
        print(await scale.get_info())  # Get model, serial, software version

asyncio.run(get())

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for sartorius, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size sartorius-0.1.0-py2.py3-none-any.whl (12.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size sartorius-0.1.0.tar.gz (4.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page