Kamer thermostaat

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 15
Geregistreerd: 27 Mei 2013, 09:39

Kamer thermostaat

Berichtdoor amati » 27 Mei 2013, 10:05

Hoi,

Ben nieuw op het forum en arduino staat hier nog in zijn kinder schoenen.

Zou een regelbare kamerthermostaat willen maken
De lm 35 kan ik uitlezen en op een LCD plaatsten in graden C
de instelpotmeter kan ik ook uitlezen en omzetten naar een waarde van 10 tot 30 graden ( de gevraagde waarde)

if (tempC > 20) de waarde 20 is de gevraagde waarde
{
lcd.setCursor(0,1);
lcd.print("start de cv ketel");

om de potmeter uit te lezen

sensorValue = analogRead(analogInPin);

outputValue = map(sensorValue, 0, 1023, 10, 30);
analogWrite(analogOutPin, outputValue);


PROBLEEM hoe moet ik het vermelden om de vaste waarde 20 te vervangen door de " outputvalue" zodat ik de waarde kan instellen met de potmeter.
diverse malen geprobeert maar daar zit ik vast

Thanks voor de tips

Patrick

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Kamer thermostaat

Berichtdoor nicoverduin » 27 Mei 2013, 18:51

Wat de bedoeling is van die analog write is mij niet geheel duidelijk.
Ik zou gewoon in de loop opnemen:

Lees temperatuur
Converteer naar graden
Lees Potmeter
Converteer naar graden
Als temperatuurGraden < PotmeterGraden
Display start de cv ketel
toon beide temperaturen op het LCD
Einde-ALS

Door dit in de loop() te stoppen loopt mij constant door het rijtje statements

In de setup() zet je dan:
- de poorten op voor de sensor, potmeter en LCD
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 15
Geregistreerd: 27 Mei 2013, 09:39

Re: Kamer thermostaat

Berichtdoor amati » 28 Mei 2013, 07:50

Hoi,
Ja dat begint nu duidelijk te worden .. THANKS voor de tip... we gaan deze avond alles eens testen.
Groeten Patrick

Berichten: 15
Geregistreerd: 27 Mei 2013, 09:39

Re: Kamer thermostaat

Berichtdoor amati » 28 Mei 2013, 15:32

Hoi Nico,

Heb er dit van gemaak ... maar ergens doe ik nog wat verkeerd.
Als de int van de potmeter 0 is klop de temperatuur uitlezing hier 21 graden en blijft constant.
Als ik aan de potmeter draai dan varieer de temperatuurmee tussen 16 en 29 graden en blijft deze niet konstant .
Waar ga ik de mist in.
Groeten Patrick

//temperatuur sensor
int sensorPin1 = A1; //lm35 sensor
int sensorValue1 = 0;
float temperatuur = 0;

// potmeter
int sensorPin2 = A2; // potentiometer 10k
int sensorValue2= 0;
float potmeter = 0;

void setup() {
Serial.begin(9600);
}

void loop() {

// temperatuur
sensorValue1 = analogRead(sensorPin1);
//Serial.println(sensorValue1);
temperatuur = (sensorValue1 * 0.0049)*100;
Serial.println(temperatuur);



//potmeter
sensorValue2 = analogRead(sensorPin2);
// Serial.println(sensorValue2);
potmeter= (sensorValue2/30); // krijg zo een instelwaarde tussen 0 en 34 graden C

Serial.println(temperatuur);
Serial.println(potmeter);







delay(500);
}

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Kamer thermostaat

Berichtdoor nicoverduin » 29 Mei 2013, 07:41

Hoi Patrick,
a) Ik zou ervoor zorgen dat als ik floating point berekeningen doe dat alle waardes als floating point zijn (dus bij int waardes float(xxx) gebruiken.
b) een gewoonte dat als een int niet negatief kan worden unsigned int gebruiken ipv gewoon int
c) tijdens debugging zou ik gewoon de gelezen waarde ook uitprinten zodat je na kan rekenen waar het fout gaat
d) een andere gewoonte van mij is om als ik een variabele een floating waarde toeken dat ik dat doe met 0.0 ipv 0
e) Heb jij de pinnen wel goed aangesloten? Analoge poorten beginnen bij A0 niet A1. En dat zou dan betekenen dat de potmeter op de lm35 ingang zit en de lm35 ingang gewoon zweeft.
Groetjes
Nico
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 15
Geregistreerd: 27 Mei 2013, 09:39

Re: Kamer thermostaat

Berichtdoor amati » 29 Mei 2013, 08:41

Hoi Nico,

Prima wat de tip van de float betreft ... we gaan het eens testen.
De waardes laat ik uitprinten en daar zag ik dat het begon mis te lopen
Wat de A1 en A2 betreft ik gebruik een LCD keyboard shield om later alles op de LCD te kunnen meelezen , en de eerst beschikbare ingang is A1..
A0 wordt daar gebruikt om de drukknoppen uit te lezen.
We zoeken verder.IK laat nog wat weten als het gelukt is.
Groeten Patrick

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 14 gasten