Go Down

Topic: SHT21S (SDM interface covertible to analog) ohne schnickschnack (Read 1 time) previous topic - next topic


Dr.Bing

#1
May 30, 2011, 10:54 pm Last Edit: May 30, 2011, 11:20 pm by Dr.Bing Reason: 1
Hier das ganze ungetestet als Schnellschuß! ;)

Code: [Select]

#include <Wire.h>
#include <SHT21.h>
             
void setup()
{
 Serial.begin(9600);
 Wire.begin();
}

void loop()
{
 // Get Humidity and Temperature value from sensor
 SHT21.readSensor();
 Serial.print("Sensor: Humi(%RH): ");
 Serial.print(SHT21.humi, 1);
 Serial.print("  Temp(C): ");
 Serial.println(SHT21.temp, 1);

 delay(6000);
}



Wichtig und beinahe vergessen! Die SHT21 Lib findest Du unter
http://d2z175mo439mkd.cloudfront.net/datasheets/BreakoutBoards/SHT21-Library.zip
:)

uwefed

Hallo aquaman
Der SHT21S ist ein Sensor mit integrierten A/D-Wandler und I2C Interface.
Darum kannst Du ihn nicht einfach mit 2 Analogen PINS auslesen. Die I"C Schnittstelle ist auf den PINS A4 und A5.

    Arduino analog input 4 = I2C SDA
    Arduino analog input 5 = I2C SCL

http://www.arduino.cc/playground/Learning/I2C

Darum der Code von Dr.Bing

Grüße Uwe

aquaman

*outch* das I²C auf Pin4 und 5 kommen ist mir wohl gänzlich entfallen :P

ah habe noch was gesehen. der SHT21 S   muss per schalter zwischen SCL:VDD  bzw SCL:VSS geschalten werden.

SHT21                     http://www.sensirion.com/de/pdf/product_information/Datasheet-humidity-sensor-SHT21.pdf

SHT21P (PWD)          http://www.sensirion.com/de/pdf/product_information/Datasheet_SHT21P_PWM.pdf

SHT21S (SDM)           http://www.sensirion.com/de/pdf/product_information/Datasheet_SHT21S_SDM.pdf

guddi , also ab in keller noch ein schalter einlöten

aquaman

so, also ist aschekasten , da kommt nix - auch nicht mit dem potentialfreien umschalter

ich glaube um aller bastelei aus dem wege zu gehen bestelle ich doch gleich den SHT21 ohne irgendwelche kürzel dahinter ^^.

uwefed

#5
May 31, 2011, 12:56 am Last Edit: May 31, 2011, 12:59 am by uwefed Reason: 1

ah habe noch was gesehen. der SHT21 S   muss per schalter zwischen SCL:VDD  bzw SCL:VSS geschalten werden.


Ok, Da hab ich nicht genau aufgepasst; den Sensor gibt es mit I2C interface, PWM Ausgang und SDM-Signal Ausgang. Und Du hast den mit SDM Ausgang.

Quote
SDM signal is a pulse sequence that with a low pass filter
may be converted into analog voltage output. The data
signal is provided on SDA line. Pulling SCL high or low
allows for switching between humidity and temperature,
respectively. The sensor measures the physical values
twice per second.


Also mit dem SCL Pin schaltet man zwischen Temperatur und Feuchtigkeit um (brauchst keinen Schalter sondern nur einen Ausgang und eine Spannungsteiler um von 5V auf 3,3V zu kommen) und am SDA ist ein  SDM-Signal Mit einem Tiefpassfilter wird daraus eine analoge Gleichspannung (gleich wie bei einem PWM Signal). http://en.wikipedia.org/wiki/Pulse-density_modulation

Soweit ichs verstanden habe ist die Modulation beim SDM-Signal so:
Es gibt eine minimal mögliche Dauer eines L oder H Impulses.
Bei 50 zu 50 Verhältins ist die Periodendauer gleich der doppelten minimalen Dauer eines Impulses da der H- und der L-Impuls die geiche Länge haben. Bei anderen Verhältnissen beleibt der Impuls für H bzw L immer die minimale Zeit , der andere Wert L bzw H vergrößert sich aber.

Frequenz von 65 Khz (50% Meßwert) bis 4kHz bei Minimal oder Maximalwert (0% oder 100%)

Siehe Figur 10 auf Seite 6 http://www.sensirion.com/de/pdf/product_information/Datasheet_SHT21S_SDM.pdf
Die Auswertung des Signals kann Analog erfolgen (Mittelwertbildung) oder durch Messung der Dauer des H und L Impulses.  Das Verhältnis zueinder ergibt den Meßwert.

Grüße Uwe

Go Up