Forum: Mikrocontroller und Digitale Elektronik HIH-5030/5031 an MSP430


von Max G. (l0wside) Benutzerseite


Lesenswert?

Hallo zusammen,

hat hier jemand Erfahrung mit den genannten Sensoren? Ich versuche 
gerade, diese an einem MSP430 zum Laufen zu bekommen, erhalte aber 
konsequent deutlich zu niedrige Werte. Leider ist das Datenblatt des 
HIH-5030 bezüglich des Ausgangswiderstands nicht eben aussagekräftig - 
es steht genau nichts dazu drin. Eine Appnote habe ich nicht gefunden.

Die Umrechnung im Programm passt, ich bekomme zu Fuß die gleichen Werte 
wie mein Programm (ca. 35% rH). Realistisch wäre irgendwas im Bereich 
45%...55%.

In diesem Thread Beitrag "Beschaltung Feuchtesensor HIH-5030/ HIH-5031" ist die 
Rede von einer Mindestlast von 65kOhm. Leider finde ich keine weitere 
Quelle dazu, außer hier: 
http://eewiki.net/pages/viewpage.action?pageId=27754797#InterfacePICtoHoneywellHIH-5030/5031HumiditySensor-BOM, 
wo 75 kOhm als Lastwiderstand verbaut sind. Übrigens ohne weitere 
Eingangsbeschaltung.

Denkbar sind nun folgende Probleme:
- Zu geringe Mindestlast. M.E. eher unwahrscheinlich, denn das dürfte 
eher zu zu hohen Werte führen.
- Zu hohe Stromaufnahme des ADC im Moment der Wandlung, dadurch 
Einbrechen des Spannungswerts. Klingt plausibler.

Hat jemand sich schon mal erfolgreich mit diesen Teilen beschäftigt? 
Empfehlungen werden dankend entgegengenommen.
Meine Ambitionen, auf einen anderen Sensor umzusteigen, sind extrem 
überschaubar - wenn es gar nicht ginge, würde Honeywell keine verkaufen.

Max

: Bearbeitet durch User
von Scope (Gast)


Lesenswert?

Max G. schrieb:
> Zu hohe Stromaufnahme des ADC im Moment der Wandlung, dadurch
> Einbrechen des Spannungswerts.

Da hilft ein Scope.

Wie sieht deine Schaltung aus? Hast du genug Kondensatoren verbaut?

von Tino K. (blumengiesser)


Lesenswert?

Welche Betriebsspannung hast du? Wenn du 5V hast und einen µC hast der 
2.56V Referenzspannung hat dann denk dran, das der Sensor mehr als die 
2,56V erzeugt...

Für die 3.3V Betriebsspannung funktioniert dies:

float calculateRHHIH5030(uint16_t adc_value, float temp)
{
  float RH, trueRH, Vout, Vss;

  Vss = 3.3; // Betriebsspannung

  Vout = 2.5E-3 * (float) adc_value;

  RH = (Vout - Vss * 0.1515) / (Vss * 0.00636);

  trueRH = RH / (1.0546 - 0.00216 * temp);

  return trueRH;
}

von Max G. (l0wside) Benutzerseite


Lesenswert?

Mittlerweile habe ich einen Tiefpass mit 56k/10nF eingebaut, die Werte 
sind jetzt konsistent > 40% und damit einigermaßen im glaubhaften 
Bereich. Mit der Grundlast (56k gegen Masse) muss ich noch 
experimentieren -> nächste Platinenrevision, in der jetzigen ist mir das 
zu fummelig.

Spannungsreferenz ist identisch zu AVCC am uC, vom gleichen Puffer-C 
abgegriffen und separat zum Sensor geführt. Daran liegt's mit einiger 
Sicherheit nicht.

Die Umrechnung ist, wie gesagt, i.O. - habe eine ganze Serie mit Excel 
nachgeprüft, die Abweichungen durch die Umrechnung sind < 0,1%. Obwohl 
ich fixed-point rechne.

Danke für die Antworten.

Max

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.