这个小的纯python模块提供了一个类来获取w1传感器的温度

w1thermsensor的Python项目详细描述


#w1热传感器
[![Gitter](https://badges.gitter.im/join%20chat.svg)](https://gitter.im/timofurrer/w1thermsensor?utm_source=badge&utm_medium=badge&utm_campaign=pr badge&utm_content=badge)
>;用一行代码从w1温度传感器获取温度!<;br>;
>;它设计用于Rasperry PI硬件,但也适用于比格犬骨骼和其他部件。

**


[![构建状态](https://travis-ci.org/timofurrer/w1thermsensor.svg?branch=master)(https://travis-ci.org/timofurrer/w1thermsensor)[![codecov.io](http://codecov.io/github/timofurrer/w1thermsensor/coverage.svg?branch=master)(http://codecov.io/github/timofurrer/w1thermsensor?branch=master)[![代码气候](https://codeculate.com/github/timofurrer/w1thermsensor/badges/gpa.svg)(https://codeculate.com/github/timofurrer/w1thermsensor)[![代码运行状况](https://landscape.io/github/timofurrer/w1thermsensor/master/landscape.svg?style=flat)(https://landscape.io/github/timofurrer/w1thermsensor/master)[![PYPI版本](https://badge.fury.io/py/w1thermsensor.svg)(https://badge.fury.io/py/w1thermsensor)[![代码样式:黑色](https://img.shields.io/badge/code%20style-black-000000.svg)(https://github.com/ambv/black)

**raspberry pi:**此包在raspbian中可用作"python-w1thermsensor"和"python3-w1thermsensor"。

支持R设备:

*ds18s20
*ds1822
*ds18b20
*ds28ea00
*ds1825/max31850k

q=ds18b20))
*将传感器连接到您的电路板的电线(您可能也需要一个实验板)
*像覆盆子皮或小猎犬骨头这样的电路板)


在覆盆子皮上,您需要添加"dtoverlay=w1 gpio"(用于常规连接)或"dtoverlay=w1 gpio,pullup="y"`(用于寄生co连接到/boot/config.txt。默认的数据管脚是gpio4(rasppi连接器管脚7),但是可以用dtoverlay=w1 gpio,gpio pin=x从4改为"x"。


根权限是必需的*

仍在使用python 2:

``bash
sudo apt get install python-w1thermsensor
````

**注意:**对于此包的旧版本,可能会出现以下错误:`importorror:没有名为'pkg_resources'的模块,这表示您需要安装'python setuptools'或'pyThon3 setuptools`分别设置。

**注2:**python 2包不**包含cli工具。


非常简单,界面干净。
所有示例都与"DS18B20"传感器一起使用-对于其他受支持的设备,它的工作方式相同。

温度单位为摄氏度=传感器。获取温度(
温度单位为华氏度=传感器。获取温度(w1thermsensor.degrees-f)
温度单位为所有单元=传感器。获取温度([
w1thermsensor.degrees-c,
w1thermsensor.degrees-f,
w1thermsensor.kelvin])
`````

所需的内核模块将自动加载到"w1thermsensor"类的构造函数中。<;br>;
如果我们NT错误引发异常。

*将获取第一个找到的传感器*


一个传感器的基本用法(显式)


将获取ID为"00000588806A"的DS18B20传感器。

``python
from w1thermsensor import w1thermsensor

sensor=w1thermsensor(w thermsensor1therm sensor.therm_sensor_ds18b20,"00000588806a")
temperature_in_celsius=sensor.get_temperature()
````

``````
msensor

用于w1thermsensor中的传感器。获取可用的wu sensor s():
打印("传感器%s具有温度%.2f"%(sensor.id,sensor.get\temperature())
```


仅用于特定热传感器类型的传感器:

``python
来自w1thermsensor的导入w1thermsensor

w1 therm sensor.get_available_sensor s([w1thermsensor.therm_sensor_ds18b20]):
打印("传感器%s具有温度%.2f"%(sensor.id,sensor.get_temperature())
`````

s.
`w1thermsensor`可以使用'w1thermsensor.set廑precision()`方法来实现这一点:

```python
sensor=w1thermsensor(w1thermsensor.therm廑sensor廑ds18b20,"00000588806a")
sensor.set廑precision(5)
`````br/>
仅"存储在易失性SRAM中,因此当传感器通电时会重置。


如果"persist"参数设置为"true",则当前设置的精度将存储在EEPROM中。由于eeprom的写入量有限(>;50k),因此应该明智地使用此命令。

``python
sensor=w1thermsensor(w1thermsensor.therm_sensor"ds18b20",00000588806a")
sensor.set_precision(5,persist=true)
```

**注意**:这是受linux ker支持的NEL 4.7

有时这不是您想要的,因此您可以禁用自动加载
,并在使用"w1thermsensor"与传感器交谈之前自己加载内核模块。

您可以通过将"w1thermsensor无内核模块"环境变量设置为"1"来禁用自动加载功能:

`` bash
`为shell全局设置它,以便子进程继承它。
export w1thermsensor_no_kernel_module=1

仅为python进程设置它
w1thermsensor_no_kernel_module=1 python my_awesome_thermsensor_script.py
```

to`w1thermsensor_no_kernel_module`将case`w1thermsensor`加载内核模块。

*注意:以上示例也适用于cli工具的使用。请参见下文。*

用作cli工具

w1thermsensor模块自'0.3.0'版本起就可以用作cli工具。<;br>;
*请注意,cli工具将仅与raspbian python 3包一起安装*(`sudo apt get install python3-w1thermsensor`)


n json格式
```

仅列出特定类型的传感器:

````
$w1thermsensor ls--ds1822类型
$w1thermsensor ls--ds1822类型--max31850k类型;指定多个传感器类型
$w1thermsensor ls--ds1822类型--json;以json格式显示结果
``

###显示温度

显示所有可用传感器的温度:(与"ls"相同的摘要)

`````
$w1thermsensor all--类型ds1822
$w1thermsensor all--类型ds1822--类型max31850k指定多个传感器类型
$w1thermsensor all--类型ds1822--json显示结果JSON格式的LTS
```

显示单个传感器的温度:

````
$w1thermsensor get 1 1是通过ls命令获得的ID
$w1thermsensor get--hwid 00000588806a--键入ds18b20
$w1thermsensor get 1显示JSON格式的结果
```

show tempera给定精度下单个传感器的真实性r/>$w1thermsensor precision——hwid 00000588806a——ds18b20 11型
`````

:啤酒:

**

*<;p align="center">;此项目在[MIT]项目(许可证)下发布。<;br>;a[timo furrer](https://tuxtimo.me)项目。<;br>;-:tada:-<;/p>;*


欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java从JPanel附加到窗口事件   java如何正确使用ArrayList?   java无法将@Serialize与requestfactory一起使用   java Photoshop脚本框架   java需要根据一些业务逻辑设置多个处理程序   java计算字符串正则表达式中的字母   安卓[JAVA][Parse Html]如何模拟按下按钮   java logback。xml:仅覆盖一个类的根级别   java无法解析符号“IOUtils”   java中图像的swing平滑缩放   spring无法转换“java”类型的值。lang.String“到所需类型”java。提交表单时lang.Long'错误   java字符串索引超出范围:1个循环错误   客户端服务器简单java聊天应用程序读取图像   java在线程启动之前获取线程ID   后台服务中无摄像机视图的java opencv图像处理   java Firebase实时数据库:如何停止脱机写入?(最佳方法)   java OpenSessionView和commit事务