pH meterschaal
28 berichten
• Pagina 1 van 3 • 1, 2, 3
pH meterschaal
Hallo allemaal,
Ik zou de volgende schaal willen gebruiken voor mijn pH meting.
Daar past natuurlijk een formule bij om de pH waardes om te rekenen naar cirkelgraden. pH kent geen lineaire groei maar een logaritmische.
Wie kent de bijpassende formule?
Even wat gegevens:
Het getal 6.00 staat op -45 graden. Het eindgetal 8.50 staat op 225 graden. Het bereik zou dus 270 graden zijn. De verdeling is in 10 delen.
Ik zou de volgende schaal willen gebruiken voor mijn pH meting.
Daar past natuurlijk een formule bij om de pH waardes om te rekenen naar cirkelgraden. pH kent geen lineaire groei maar een logaritmische.
Wie kent de bijpassende formule?
Even wat gegevens:
Het getal 6.00 staat op -45 graden. Het eindgetal 8.50 staat op 225 graden. Het bereik zou dus 270 graden zijn. De verdeling is in 10 delen.
Advertisement
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: pH meterschaal
De waardes die je nu krijgt heeft toch al die log verdeling verdisconteerd? Dus kun je gewoon de map uitvoeren:
cpp code
cpp code
float ph = 7.3; // ff een voorbeeldje
phInt = ph * 100; // alles met 100 vermenigvulden om 2 decimalen te hebben
uint16_t graden = map (phInt, 600, 850, 0, 270); // nu heb je de graden.
Re: pH meterschaal
Deze had ik werkelijk nog niet bedacht, Nico!
Bij mijn lichtmeters die een schaal verdeling hebben van 0 t/m 100 gebruik ik:
0=-45 graden, 100=225 graden, bereik dus 270 graden.
Stel de lichtsterkte is 50% (50 staat dus bij deze schaal recht bovenin.)
(50/100*270)-45=90 graden.
Dus ik was mijn hoofd aan het breken om een vergelijkbare omrekening te verkrijgen.
Dank je wel!!
Groet,
Ben.
Bij mijn lichtmeters die een schaal verdeling hebben van 0 t/m 100 gebruik ik:
0=-45 graden, 100=225 graden, bereik dus 270 graden.
Stel de lichtsterkte is 50% (50 staat dus bij deze schaal recht bovenin.)
(50/100*270)-45=90 graden.
Dus ik was mijn hoofd aan het breken om een vergelijkbare omrekening te verkrijgen.
Dank je wel!!
Groet,
Ben.
Re: pH meterschaal
Maar nu even terug naar jou sketch voorbeeld...
Zoals hij daar staat begrijp ik het.
Toch krijg ik hem niet werkend in een proefopstelling.
cpp code
Zoals hij daar staat begrijp ik het.
Toch krijg ik hem niet werkend in een proefopstelling.
cpp code
- Code: Alles selecteren
#include "Nextion.h"
#define nexxSerial Serial2
NexGauge pH = NexGauge (0,1,"z0");
float phInt=0;
void setup()
{
}
void loop()
{
float ph = 7.3; // ff een voorbeeldje
phInt = ph*100// alles met 100 vermenigvulden om 2 decimalen te hebben
uint16_t graden = map (phInt, 600, 850, 0, 270); // nu heb je de graden.
pH.setValue(graden);
}
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: pH meterschaal
Dan nog..... waarom denk je dat ik een variabele phInt noem?
Re: pH meterschaal
Ok, Nico, dit werkt zo.
Maar...
In de sketch geven we als voorbeeld een waarde van 7.3 in.
7.74 is de waarde die aangegeven wordt in de meter.
Wat gaat er dan nog fout?
Voor de zekerheid nog even de sketch:
cpp code
Maar...
In de sketch geven we als voorbeeld een waarde van 7.3 in.
7.74 is de waarde die aangegeven wordt in de meter.
Wat gaat er dan nog fout?
Voor de zekerheid nog even de sketch:
cpp code
#include "Nextion.h"
#define nexSerial Serial2
NexGauge pH = NexGauge (0,1,"z0");
const int ledPin=16;
float phInt=0;
void setup()
{
nexInit();
pinMode(ledPin,OUTPUT);
}
void loop()
{
float ph = 7.3; // ff een voorbeeldje
phInt = ph*100;// alles met 100 vermenigvulden om een heel getal te hebben
uint16_t graden = map (phInt, 600, 850, 0, 270); // nu heb je de graden.
pH.setValue(graden);
}
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: pH meterschaal
En hoeveel graden krijg je?
En vergeet af en toe de CTRL-T functie niet..... Je code begint alweer op een zooitje te lijken
En hoelang gaat het nog duren voordat je van de phInt een unsigned int maakt?
En vergeet af en toe de CTRL-T functie niet..... Je code begint alweer op een zooitje te lijken
En hoelang gaat het nog duren voordat je van de phInt een unsigned int maakt?
Re: pH meterschaal
Inderdaad heb ik een uint16_t toegevoegd.
Verder was ik aanvankelijk wat in verwarring gebracht door jouw bijschrift; //alles met 100 vermenigvuldigen om 2 decimalen te hebben. Later begreep ik dat dit bedoelt was om een rond getal in map te verkrijgen.
Verder heb ik het schaal bereik aan gepast in de map dus(600,850,-45,225);
Bij 0 tot 270 wijst de meter niet juist aan.
Nu wijst de meter correct aan. Met een uitzondering; beneden de X-as, dus zodra er sprake is van min waarden geeft de meter niets aan. Eigenlijk meet hij pas vanaf 6.42. Dit begrijp ik dus niet. Komt dit door min waarden? Maar hoe verhelp ik dit dan?
Overigens vergeet ik de code niet maar doet hij het af en toe gewoon niet.
Dus, weer bedankt, Nico.
Groet,
Ben.
cpp code
Verder was ik aanvankelijk wat in verwarring gebracht door jouw bijschrift; //alles met 100 vermenigvuldigen om 2 decimalen te hebben. Later begreep ik dat dit bedoelt was om een rond getal in map te verkrijgen.
Verder heb ik het schaal bereik aan gepast in de map dus(600,850,-45,225);
Bij 0 tot 270 wijst de meter niet juist aan.
Nu wijst de meter correct aan. Met een uitzondering; beneden de X-as, dus zodra er sprake is van min waarden geeft de meter niets aan. Eigenlijk meet hij pas vanaf 6.42. Dit begrijp ik dus niet. Komt dit door min waarden? Maar hoe verhelp ik dit dan?
Overigens vergeet ik de code niet maar doet hij het af en toe gewoon niet.
Dus, weer bedankt, Nico.
Groet,
Ben.
cpp code
- Code: Alles selecteren
#include "Nextion.h"
#define nexSerial Serial2
NexGauge pH = NexGauge (0,1,"z0");
const int ledPin=16;
uint16_t phInt=0;
void setup()
{
nexInit();
pinMode(ledPin,OUTPUT);
}
void loop()
{
float ph = 8.5;
// ff een voorbeeldje
phInt = ph*100;// alles met 100 vermenigvulden om een heel getal te hebben
uint16_t graden = map (phInt, 600, 850, -45, 225); // nu heb je de graden.
pH.setValue(graden);
}
Laatst gewijzigd door benvo op 16 Apr 2017, 18:46, in totaal 1 keer gewijzigd.
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: pH meterschaal
Mag die wel -45 graden zijn? Of moet dat 315 graden zijn?
28 berichten
• Pagina 1 van 3 • 1, 2, 3
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 9 gasten