Re: PH Wert Messung Kategorie: Sensoren (von JackFrost - 5.05.2005 13:32) | |
Als Antwort auf Re: PH Wert Messung von Heinz - 27.04.2005 17:26
| |
> > > > > > > > Hallo! > > > > > > > > Ich hätte da mal eine Frage! > > > > > > > > Hat jemand von euch Erfahrung mit PH-Wert Messung. > > > > > > > > > > > > > > > > Es geht um folgendes: > > > > > > > > Ich soll in einem Projekt den �lanteil im Wasser messen. > > > > > > > > Dieser kann von 0% bis ca. 25% betragen. > > > > > > > > Dieser Wert sollte dann mit einer Genauigkeit von +/-1% am Display angezeigt werden. > > > > > > > > > > > > > > > > Nun denke ich mir das dies nur über den PH-Wert zu realisieren ist. > > > > > > > > > > > > > > > > Meine Fragen: > > > > > > > > Welchen Sensor verwende ich da am besten. > > > > > > > > Hat jemand von euch so etwas oder etwas änliches gemacht, > > > > > > > > und kann mir hilfreiche Tipps geben. > > > > > > > > > > > > > > > > Da ich hier im Forum nichts dergleichen gefunden habe, denke ich mir das dies auch für so > > > > > > > > manchen anderen Anwender von Interesse sein kann. > > > > > > > > Also schon mal Danke im voraus für eure Anregungen und Tipps. > > > > > > > > > > > > > > > > Christian > > > > > > > > > > > > > > > > > > > > > > Hi, > > > > > > > > > > > > > > Der PH-Wert gibt nur an ob Wasser sauer oder basisch ist also 7 = neutral unter 7 = sauer (Säure) und > > > > > > > basisch (Lauge) > 7. Da Oel leichter als Wasser ist schwimmt es auf dem Wasser. > > > > > > > > > > > > > > Gut das hat dir zwar jetzt auch nicht geholfen aber ich denke du bist auf dem Holzweg > > > > > > > > > > > > > > Mfg > > > > > > > > > > > > > > Heribert > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Hallo Heribert! > > > > > > > > > > > > Dein Gedankengang ist nicht unrichtig. Ich muss jedoch etwas klarstellen. > > > > > > Bei dem sogenannten �l handelt es sich nicht wie du vermutest um Schmieröl, > > > > > > Motoröl oder ähnliches, die wie du richtig sagst an der Wasseroberfläche schwimmen würden. > > > > > > Sondern es handelt sich hierbei um sogenannte Kühlschmierstoffe die mit Wasser > > > > > > verdünnt werden. Da diese Kühlschmierstoffe �l ähnlich sind werden sie fälschlicher > > > > > > weise auch �l genannt. Da sich diese Schmierstoffe eben mit Wasser abmischen lassen > > > > > > war meine �berlegung die, das sich der PH Wert mit der Menge des Schmierstoffes im > > > > > > Wasser ändern müsste. Wie gesagt das ganze ist momentan noch eine reine theoretische > > > > > > �berlegung. Denn das ganze dürfte schon alleine darann scheitern das ich gar keinen richtigen > > > > > > Sensor zum messen des PH Wertes finde den ich an die CC2 anschliessen kann. > > > > > > Ich bin aber für jede Anregung dankbar. > > > > > > > > > > > > Christian > > > > > > > > > > Hallo Christian, > > > > > ich benutze an meinem Koiteich das PH-/Redox-/Temperatur-Me�gerät GHM 3530 der Firma > > > > > Greisinger mit serieller Schnittstelle. Mit einem Schnittstellenkonverter (Greisinger) direkt > > > > > an der seriellen Schnittstelle der CC2 zu betreiben. Ich habe selbst schon etliche PH-Meter > > > > > mit analogem Ausgang selbstgebaut, war aber nie zufrieden (Abgleich, ...). Das Gerät ist > > > > > microprozessorgesteuert und äu�erst genau. Alle Me�werte kannst Du somit in der CC2 > > > > > verarbeiten. > > > > > > > > > > GHM 3530 > > > > > > > > > > Preise (netto): > > > > > GMH 3530: 124,50 � > > > > > GMH 35 ES Ergänzungsset(pH-Elektrode, Temperaturfühler, Koffer, Kalibrierset): 112,20 � > > > > > oder nur pH-Elektrode(Temperatur mu� von Hand eingegeben werden): ab 31,30 � > > > > > Schnittstellenkonverter GRS 3100 (1 Kanal): 39,00 � > > > > > > > > > > Bei Interesse kann ich das Schnittstellenprotokoll posten! > > > > > > > > > > Gru� > > > > > Jörg > > > > > > > > > > > > Hallo Jörg > > > > > > > > Na das ist ja schon mal was. > > > > Habe mir die Beschreibung durchgelesen. Scheint interessant zu sein. > > > > Nur vielleicht mal einige Fragen vorab: > > > > Wie ist das mit dieser Temperaturkompensation. Wie wichtig ist die wirklich? > > > > Und wie verhällt sich das ganze wenn das Gerät fix installiert ist. > > > > Wie oft muss die Kalibrierung durchgeführt werden? > > > > > > > > Wegen des Schnittstellenprotokolles: > > > > Würde mich sehr interessieren. > > > > > > > > Nur noch rein Interessenshalber: > > > > Wie baut man ein PH Messgerät selbst??? > > > > > > > > Danke > > > > Christian > > > > > > > > > > > Hallo Christian, > > > > > > der pH-Wert ist sehr stark von der Temperatur abhängig. Beim Abgleich der pH-Elektrode > > > wird diese zuerst in die Puferlösung für pH7, danach je nach Anwendungsfall pH10 oder pH4 > > > getaucht(zusammen mit Temperaturfühler). Aus den Wertepaaren (pH/Spannung der Elektrode) > > > ermittelt der Prozessor die Geradengleichung für die pH-Elektrode. Die Temperatur beeinflu�t > > > hier die Steigung der Geraden. > > > Wenn Du bei Deinem Anwendungsfall annähernd gleiche Temperaturen hast, kannst Du > > > die Temperatur auch manuell eingeben. Der Temp-Sensor kostet aber gerade mal 10 Euro. > > > > > > Ich wei� nicht was Du mit "fix" meinst, aber ich habe das Gerät fest in einem Elektroverteiler > > > eingebaut. Mit Steckernetzteil läuft das Ding 24 Stunden. Beim Abgleich Deckel runter, Gerät > > > an der frontseitigen Folientastatur abgleichen, Deckel wieder drauf. Die Elektrode/Tempfühler > > > führe ich über eine BNC-Verlängerung aus dem Verteiler. > > > > > > Ich kalibriere ungefähr alle 4 Wochen. Hierzu sollten neue Pufferlösungen angesetz werden. > > > > > > Schaltpläne für pH-Meter gibts im Internet. Aber wie gesagt die Zeit würde ich mir sparen, wenn Du > > > für 130 � das perfekte Gerät bekommst. Die Elektrode brauchst Du sowieso. > > > > > > Hier mein Quelltext: > > > > > > > > > > > > // 3 Byte Anfrage an GMH3xxx (über Adresse) --> 6 Byte Antwort < 1 sec Messwert > > > const gmh_ADDR1[] = 0xFE, 0x00, 0x3D; // GMH 3550 PH oder Redox Kanal 1 > > > const gmh_ADDR2[] = 0xFD, 0x00, 0x02; // GMH 3550 Temperatur Kanal 2 > > > const I2CCOM_CONT = 4; // CCTools i2c-Com --> i2ccom.c2 > > > const I2CCOM_DATA = 5; // pH und Temp und Redox an Greisinger GMH 3530 > > > const I2CCOM_SUB = 0; > > > > > > float Wassertemp; > > > float gmh_messwert; > > > float pH_Wert; > > > > > > function gmh_decode (byte byte3, byte byte4) returns int > > > { > > > // Deklarationen > > > long Integerwert, Dezimalpunkt, lo; > > > int Rueckgabe; > > > float wert; > > > > > > Rueckgabe = 0; > > > > > > //Funktion > > > lo = ((256*(255-byte3)) + byte4 - 2048); > > > Integerwert = 16383 & lo; > > > Dezimalpunkt = 49152 & lo; > > > //Daten checken > > > if Integerwert >= 16352 > > > { > > > // Daten im verbotenen Wertebereich, Rückgabewert ist Fehlermeldung!! > > > if Integerwert == 16352 return(1); // Me�bereichsüberschreitung > > > else > > > if Integerwert == 16353 return(2); // Me�bereichsunterschreitung > > > else > > > if Integerwert == 16362 return(11); // Berechnung nicht möglich > > > else > > > if Integerwert == 16363 return(7); // Systemfehler > > > else > > > if Integerwert == 16364 return(8); // Batterie leer > > > else > > > if Integerwert == 16365 return(9); // Sensor defekt > > > } > > > //Setzen des Dezimalpunktes > > > wert = Integerwert; > > > if Dezimalpunkt == 0 > > > wert = wert / 1.0; > > > else > > > if Dezimalpunkt == 16384 > > > wert = wert / 10.0; > > > else > > > if Dezimalpunkt == 32768 > > > wert = wert / 100.0; > > > else > > > if Dezimalpunkt == 49152 > > > wert = wert / 1000.0; > > > gmh_messwert = wert; > > > return(Rueckgabe); > > > } > > > > > > function gmh_ph_temp(byte ph_temp) returns int // 0=pH, 1=Temperatur > > > { > > > byte Byte3, Byte4; > > > byte to_send[2]; > > > byte empf[5]; > > > int i, fehler; > > > > > > i2ccom.setDataPCF(I2CCOM_DATA); // Adresse für Daten-PCF angeben > > > i2ccom.defineCOM(2, I2CCOM_CONT, I2CCOM_SUB); // (Schnittstelle , Ctrl-PCF-Addr., Jumper Sub) > > > i2ccom.initCOM(2, 0); // (Schnittstelle , Autoflow) > > > i2ccom.setspeed(2, 4); // (Schnittstelle , Geschwindigkeit) 4=4800 Baud > > > i2ccom.setFormat(2, i2ccom.set8N1); // Datenformat einstellen > > > i2ccom.RTSenable(2, 0); // RTS low, GRS3xxx einschalten > > > i2ccom.DTRenable(2, 1); //DTR high, GRS3xxx einschalten > > > > > > if ph_temp == 0 > > > for i = 0 ... 2 > > > to_send[i] = gmh_ADDR1[i]; > > > else > > > for i = 0 ... 2 > > > to_send[i] = gmh_ADDR2[i]; > > > i2ccom.send(2, to_send, 3); > > > if i2ccom.receive(2, empf, 6, 500) == 6 > > > { > > > Byte3 = empf[3]; > > > Byte4 = empf[4]; > > > fehler = gmh_decode(Byte3, Byte4); > > > } > > > return fehler; > > > } > > > > > > //----------- > > > thread main > > > //----------- > > > { > > > int fehler; > > > > > > . > > > . > > > . > > > > > > gmh_ph_temp(1); > > > Wassertemp = gmh_messwert; > > > sleep 1500; > > > gmh_ph_temp(0); > > > pH_Wert = gmh_messwert; > > > . > > > . > > > . > > > } > > > > > > > > > Ich habe den Schnittstellenkonverter an Andre Helbigs i2c-Com angeschlossen. Funtz > > > natürlich auch an hwcom (mu� voll beschaltet sein oder RTS und DTR mit I/O nachbilden). > > > Dieses Protokoll ünterstützt alle GMHxxxx. Mit einem 5fach Schnittstellenwandler kann man > > > so 5 verschiedene GMHs an einer com betreiben (hab mir gerade das GMH 3630 für gelösten > > > Sauerstoff bestellt). nur den Anfragestring und Kanal anpassen. > > > > > > Ich hoffe ich habe Dir geholfen. Viel Spa� > > > > > > Gru� Jörg > > > > Hallo Jörg > > > > Danke für deine wirklich kompetente und ausführliche Antwort. > > Ich seh schon das wird nicht so einfach werden. > > Das Problem ist, diese Kühlmittel sind in Maschinen eingefüllt. > > Jetzt passiert es immer wieder das unsere Kunden anrufen und schlechte > > Bearbeitungsergebnisse reklamieren, und wir dann draufkommen das > > der Kühlmittelzusatz entweder zu hoch zu niedrieg oder gar verdorben ist. > > Das ganze lässt sich mittels Refraktometer feststellen. > > Nur haben die wenigsten Kunden so etwas (da ziemlich teuer) > > und messen tut auch niemand. > > Daher war unsere Idee wir bauen ein PH-Messgerät in den Kühlmitteltank ein > > und können so immer den Zustand des Kühlmittels kontrollieren. > > �ber die C-Control hätte ich das ganze dann mit unserer Steuerung verknüft und > > könnte dem Bediener so Meldungen über den Zustand des Kühlmittels ausgeben. > > Nun ist da dieses Problem mit der Kalibrierung, die wenn ich das richtig verstanden > > habe in rägelmässigen Abständen gemacht werden muss. > > Nichts desto troz werde ich mir mal so eine PH Messgerät zulegen und das ganze mal in der Praxis > > ausprobieren. Dann werde ich ja feststellen ob das ganze alltagstauglich ist. > > Das Problem bei diesen Dingen ist immer, es soll alles können darf nichts kosten und muss > > komplett Idiotensicher sein, denn du weist nie wer die Maschine bedient. > > > > Also danke noch mal auch für das Posting des Codes erspart mir viel Zeit und Gehirnschmalz > > für die ersten Versuche. > > > > Christian > > > > > Hallo > Ich nehme an, dass die Messung des pH-Wertes bei Emulsionen kaum Erfolg bringen wird. Beim > pH-Wert wird ja der negative Logarithmus der Wasserstoffionen bestimmt und von diesen "H+" wird es > in Maschinenschmiermitteln kaum wesentliche Mengen haben ? > Auch sind pH-Elektroden sog. semipermeable (= halbdurchlässige) Glasgemische und diese würden > durch die �lanteile recht schnell die Fähigkeit des Ionenaustausch's verlieren ? > Mitunter wäre es ein Ansatz, entweder die Leitfähigkeit der Emulsion zu bestimmen oder eine optische > Messung (ev. IR) zu versuchen ? In beiden Fällen würde ich eine klassische Brückenschaltung ver- > suchen, bei der ein Zweig die Messprobe und der andere Zweig eine Referenzprobe enthält ? > > Heinz Mit dem pH-Wert wird es sicher sehr schwer, da du ja nur auf die Konzentration schliessen kannst wenn sich H+ oder OH- Inonen nicht in der "�l" lösen und du damit den Wasseranteil bestimmen kannst ob es nun zuviel ist oder zuwenig ist. Da aber schmiermittel und Kühlflüssigkeiten meistens Neutral sind ( wegen der Korrosion ) wird das schwer , denn bei pH 7 ist es egal wieviel Kühlschmiermittel zu gibts der gehalt an H+ und OH- bleibt gleich. Die meisten Kühlschmiermittel sind auf Glycol und Polyethylenglycol ( oder Polyprolyenglycol ) basis und diese werden mit sauren oder basischen Katalysatoren hergestellt. Somit ist das Schmiermittel auch am pH-Wert beteiligt. Wenn diese Mittel dann noch neutralisiert wurden dann gibt es oft noch eine Puffer wirkung . d.h. ein �nderung an Schmiermittel oder Wasser wirkt sich je nach zusammen setzung anders aus als ohne Puffer. Gruss JackFrost | |
Antwort schreiben Antworten: |