Giter Site home page Giter Site logo

Comments (15)

Tronde avatar Tronde commented on August 15, 2024

Verwendet der SHT31 ebenfalls den I²C-Bus? Hat dieser ebenfalls eine statische Adresse, wie der SHT21, welche bei allen Sensoren gleich ist?

Kannst du bitte mal das Datenblatt des Sensors hier verlinken? Dann kann ich mal schauen, was man da tun kann.

Vielen Dank für die Anfrage, dass das SHT21 Breakoutboard nicht mehr lieferbar ist, habe ich gar nicht mitbekommen.

from raspi-sht21.

Tronde avatar Tronde commented on August 15, 2024

Ein Hinweis, wo ich ein möglichst fertiges Set aus Sensor und Breakoutboard in Deutschland kaufen kann wäre ebenfalls hilfreich. Ich müsste mir erstmal selbst einen solchen Sensor beschaffen, um einige Tests durchzuführen.

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Ich hatte drei Stück hier bestellt:
https://www.soselectronic.de/products/sensirion/sht-31d-bob-218177

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Hier der Überblick über die Baureihe: https://www.sensirion.com/de/umweltsensoren/feuchtesensoren/digitale-feuchtesensoren-fuer-diverse-anwendungen/

Datenblatt für SHT3x:
https://www.sensirion.com/fileadmin/user_upload/customers/sensirion/Dokumente/2_Humidity_Sensors/Sensirion_Humidity_Sensors_SHT3x_Datasheet_digital.pdf

from raspi-sht21.

Tronde avatar Tronde commented on August 15, 2024

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Ja er verwendet auch den I2C-Bus.Er hängt am /dev/i2c-1

pi@tempi:~ $ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- 44 -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

mit folgendem Python Skript kann ich ihn auslesen:

import smbus
import time
bus = smbus.SMBus(1)

# SHT31 address, 0x44(68)
bus.write_i2c_block_data(0x44, 0x2C, [0x06])
time.sleep(0.5)

# Read data back from 0x00(00), 6 bytes
data = bus.read_i2c_block_data(0x44, 0x00, 6)

# Convert the data
temp = data[0] * 256 + data[1]
cTemp = -45 + (175 * temp / 65535.0)
humidity = 100 * (data[3] * 256 + data[4]) / 65535.0

# Output data to screen
print "Temperatur in Celsius ist : %.2f C" %cTemp
print "Relative Feuchtigkeit ist : %.2f %%RH" %humidity

Leider hilft nur in sht21.py die Zeile 60 anzupassen nicht:
self.i2c.open(0x40,dev, scl, sda)
in
self.i2c.open(0x44,dev, scl, sda)

Leider finde ich kein Datenblatt zu SHT21 mehr, sonst könnte ich mal vergleichen.
Hab mich schon den ganzen Tag durch das Skript gefräst, leider ohne Ergebnis.

Muss eventuell hier etwas geändert werden?
Zeile 61, 66 und 78?

viele Grüße
machschev

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

hm, ich habe jetzt den SHT31 mit Raspian Stretch auf einem Raspberry 3 zum Laufen bekommen, wollte jetzt ungern nochmal wechseln. Es ist natürlich gar kein Problem, wenn du meine Fragen (zur Zeit) nicht beantworten kannst. Falls du damit experimentieren möchtest, freu ich mich auf Neuigkeiten!

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Danke für die schnelle Reaktion!

from raspi-sht21.

Tronde avatar Tronde commented on August 15, 2024

Bezugnehmend zu comment-368000688. Die Methode definiert drei weitere Variablen (dev=1, scl=3, sda=2):

 50    def measure(self, dev=1, scl=3, sda=2):
 51         """Complete cycle including open, measurement und close, return tuple of temperature and humidity"""
 52         self.open(dev, scl, sda)
 53         t = self.read_temperature()
 54         rh = self.read_humidity()
 55         self.i2c.close()
 56         return (t, rh)
 57 
 58     def open(self, dev=1, scl=3, sda=2):
 59         """Hardware I2C Port, B,B+,Pi 2 = 1 the first Pi = 0"""
 60         self.i2c.open(0x40,dev, scl, sda)
 61         self.i2c.write([0xFE])  # execute Softreset Command  (default T=14Bit RH=12)
 62         time.sleep(0.050)

Ich denke die drei Variablen (dev=1, scl=3, sda=2) müssen für den SHT31 ebenfalls angepasst werden. Schau doch mal, ob du im Datenblatt zum SHT31 etwas dazu findest und probiere hier einige Werte durch.

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Danke für den Hinweis. Die drei Variablen stimmen überein. Es geht eher um folgende Zeilen
61 self.i2c.write([0xFE]) # execute Softreset Command (default T=14Bit RH=12)
und folgende. Habe das Datenblatt des SHT21 jetzt doch noch gefunden (bei Farnell) und werde heute mit den benötigten geänderten Hexzahlen experimentieren.

from raspi-sht21.

Xanti19 avatar Xanti19 commented on August 15, 2024

Leider gibt es den SHT21 nicht mehr zu kaufen

In der Bucht ist der SHT21 noch bestellbar (auch bei deutschen Händlern). Ist zwar nicht genau der hier vorgestellte Sensor, ließ sich aber problemlos in diesem Projekt einbinden.

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Soweit ich es jetzt überblicke müsste obere Zeile für den SHT31
self.i2c.write([0x30A2]) # execute Softreset Command (default T=14Bit RH=12)
heißen, und da ist das Problem. Es geht um die unterschiedliche Länge.

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Hab dein Projekt jetzt für mich zum Laufen bekommen indem ich oberen Codeschnipsel im Kommentar Nr.7 zum Auslesen des Sensors verwende. Vielen Dank für dieses tolle Paket mit allem was man dafür so braucht.

from raspi-sht21.

machschev avatar machschev commented on August 15, 2024

Ich kann meine Änderungen gern zur Verfügung stellen, falls es jemand benutzen möchte.

from raspi-sht21.

Tronde avatar Tronde commented on August 15, 2024

from raspi-sht21.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.