A package to read/write registers on a temperature sensor with python.
Project description
temperature_sensor_reader
This is a temperature sensor package designed for modbus. Implemented in pymodbus only. PyPI website: https://pypi.org/project/modbus-configuretools-xzf8971/
Install
from pypi:
pip install modbus-configuretools-xzf8971
from github:
pip install git+https://github.com/xzf89718/temperature_sensor_reader
Jiandarenke modbus RS485 as example
Before run scripts
Check the COM and chmod
chmod 666 \dev\ttyUSBx
Import modules
from modbus_configuretools import temperature_sensor.RS485_Jiandarenke as RS485_JDRK
from modbus_configuretools import temperature_sensor.JDRKAddressConfig as Config
Configure parameters for Jiandarenke RS485 sensor
# Modify these config values
# Please configure these value in temperature_sensor before read or write values
# ADDRESS_HUMIDITY = 0x0000
# ADDRESS_TEMPERATURE_DEW_POINT = 0x0001
# ADDRESS_TEMPERATURE = 0x0002
# ADDRESS_TEMPERATURE_CALI = 0x0050
# ADDRESS_HUMUDITY_CALI = 0x0051
# ADDRESS_SLAVEID = 0x07D0
# ADDRESS_BAUDRATE = 0x07D1
# TEMPERATURE_CALI = 164
# HUMIDITY_CALI = 7
myconfig = Config(ADDRESS_HUMIDITY, ADDRESS_TEMPERATURE_DEW_POINT, ADDRESS_TEMPERATURE, ADDRESS_SLAVEID, ADDRESS_BAUDRATE, ADDRESS_TEMPERATURE_CALI, ADDRESS_HUMUDITY_CALI, TEMPERATURE_CALI, HUMIDITY_CALI)
Calibration of sensor. Not necessary calibration every time
sensor.CalibrationJiandarenke(sensor.cfg.ADDRESS_TEMPERATURE_CALI, sensor.cfg.ADDRESS_HUMUDITY_CALI, slaveID=1)
Init and read registers from sensor
# Create a wrapper for JDRK sensor
sensor = RS485_JDRK(port="/dev/ttyUSB0", myconfig)
# Init and connect client
sensor.InitClient()
# Read slaveID and baudrate
slaveID, baudrate = sensor.ReadSalveIDAndBaudrate(salveID=1)
# Read temperature, dew point, humidity in one request
# Only correct for specified sensor
temperature, dew_point_temperature, humidity = sensor.ReadTemperatureAndHumidity(slaveID=1)
# Read temperature only
temperature = sensor.ReadTemperature(slaveID=1)
# Read dew point temperature
dew_point_temperature = sensor.ReadTemperatureDewPoint(SlaveID=1)
# Read humidity only
humidity = sensor.ReadTemperature(slaveID=1)
Close the sensor
sensor.close()
Project details
Release history Release notifications | RSS feed
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 modbus_configuretools_xzf8971-1.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | abd120aa27ac66a69cbccc57b6d670a2263397fb7e2b8d174b6e702362d62b59 |
|
MD5 | 34960114a67998a46b937964dfb97fbe |
|
BLAKE2b-256 | a10e9daac2e52f70ed44d10e03b25f374e65fe576c2b2e70d5cb436774245960 |
Hashes for modbus_configuretools_xzf8971-1.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87e4b094d95c2640ad038525cea4a5b114e54e4e7656cae8fb0079fdd9acedee |
|
MD5 | 73a634f347d132c361be9429ad8a8143 |
|
BLAKE2b-256 | 8a6e4c593fbcb3b474ad26014f0628ef3c2c45d211699898b47b979aadac6b43 |