Is dit te bouwen met een ardunio board
45 berichten
• Pagina 3 van 5 • 1, 2, 3, 4, 5
Re: Is dit te bouwen met een ardunio board
dag kris
flowchart das chinees ze
voor de rest het overzicht behouden wil ik wel doen maar hoe waarschijnlijk bedoel je dat ik de regels ik nu heb deze moet scheiden vaneen in een blok lcd en een blok sensors meting en das waarschijnlijk enkel de regels verplaatsen zonder extra code toe te voegen of ben ik mis.
ook al zal deze setup niet veel meer uitbreiden de reden is dat ik met dit bord enkel de temp wil meten op 4 plaatsen en een servo of stappen moter wil sturen(klep open en dicht) al is dit niet zeker er niks bij komt want om te loggen en data schrijven komt ook nog een heel script bij kijken.
M.V.G Pedro
flowchart das chinees ze
voor de rest het overzicht behouden wil ik wel doen maar hoe waarschijnlijk bedoel je dat ik de regels ik nu heb deze moet scheiden vaneen in een blok lcd en een blok sensors meting en das waarschijnlijk enkel de regels verplaatsen zonder extra code toe te voegen of ben ik mis.
ook al zal deze setup niet veel meer uitbreiden de reden is dat ik met dit bord enkel de temp wil meten op 4 plaatsen en een servo of stappen moter wil sturen(klep open en dicht) al is dit niet zeker er niks bij komt want om te loggen en data schrijven komt ook nog een heel script bij kijken.
M.V.G Pedro
Advertisement
Re: Is dit te bouwen met een ardunio board
Dat gaat inderdaad om de layout van je sketch.
Ik zou het fijner werken vinden, maar dat is persoonlijk, om alle instructies die naar het LCD schrijven bij mekaar te hebben, stel dat je iets wil veranderen aan de layout van je LCD, al is het maar 2 waarden van plaats wisselen, dan moet je maar in één blok wijzigen, terwijl je in jouw geval in elk blokje moet gaan kijken waar alles staat en dar de wijzigingen uitvoeren.
Een flowchart,http://en.wikipedia.org/wiki/Flowchart maar ik weet niet of dat nog 'van deze tijd' is, ik heb het programmeren terug pas terug opgepikt een jaar of 20 na mijn studies
Kris
Ik zou het fijner werken vinden, maar dat is persoonlijk, om alle instructies die naar het LCD schrijven bij mekaar te hebben, stel dat je iets wil veranderen aan de layout van je LCD, al is het maar 2 waarden van plaats wisselen, dan moet je maar in één blok wijzigen, terwijl je in jouw geval in elk blokje moet gaan kijken waar alles staat en dar de wijzigingen uitvoeren.
Een flowchart,http://en.wikipedia.org/wiki/Flowchart maar ik weet niet of dat nog 'van deze tijd' is, ik heb het programmeren terug pas terug opgepikt een jaar of 20 na mijn studies
Kris
Als je het probleem gedetailleerd genoeg omschrijft, heb je meestal al de oplossing.
Re: Is dit te bouwen met een ardunio board
je schrijft dus hier steeds hetzelfde:
lcd.setCursor(0, 1);
tSensorWaarde= analogRead(0);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 2);
tSensorWaarde= analogRead(1);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 3);
tSensorWaarde= analogRead(2);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 4);
tSensorWaarde= analogRead(3);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 5);
rSensorWaarde= analogRead(4);
lambda= (rSensorWaarde);
lcd.print(rSensorWaarde);
lcd.print("\r");
lcd.println(lambda);
dat kan simpeler in een for next loop
dan hou je ineens nog maar 6 regels over.
verder zul je de analogread via een scale of een andere formule aan moeten passen aan de werkelijke temperatuur.
verder zul je dat voor elke sensor apart moeten doen om te kunnen calibreren.
je kunt overigens niet zomaar een Pt100 aan de analoge ingang hangen, voor een beetje nauwkeurigheid heb je hiervoor iets meer nodig opamp of een frequentiemaker (555)
lcd.setCursor(0, 1);
tSensorWaarde= analogRead(0);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 2);
tSensorWaarde= analogRead(1);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 3);
tSensorWaarde= analogRead(2);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 4);
tSensorWaarde= analogRead(3);
temp= (tSensorWaarde);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 5);
rSensorWaarde= analogRead(4);
lambda= (rSensorWaarde);
lcd.print(rSensorWaarde);
lcd.print("\r");
lcd.println(lambda);
dat kan simpeler in een for next loop
dan hou je ineens nog maar 6 regels over.
verder zul je de analogread via een scale of een andere formule aan moeten passen aan de werkelijke temperatuur.
verder zul je dat voor elke sensor apart moeten doen om te kunnen calibreren.
je kunt overigens niet zomaar een Pt100 aan de analoge ingang hangen, voor een beetje nauwkeurigheid heb je hiervoor iets meer nodig opamp of een frequentiemaker (555)
paul deelen
shooter@home.nl
shooter@home.nl
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: Is dit te bouwen met een ardunio board
Worden nog steeds gebruikt hoor door sommigen. Dat zijn meestal diegene die eerst nadenken en dan doen. Helaas is het meer van deze tijd zo van "dit proberen... dat proberen etc" En houd je over het algemeen veel bagger programmatuur over.KrisG schreef:Dat gaat inderdaad om de layout van je sketch.
Ik zou het fijner werken vinden, maar dat is persoonlijk, om alle instructies die naar het LCD schrijven bij mekaar te hebben, stel dat je iets wil veranderen aan de layout van je LCD, al is het maar 2 waarden van plaats wisselen, dan moet je maar in één blok wijzigen, terwijl je in jouw geval in elk blokje moet gaan kijken waar alles staat en dar de wijzigingen uitvoeren.
Een flowchart,http://en.wikipedia.org/wiki/Flowchart maar ik weet niet of dat nog 'van deze tijd' is, ik heb het programmeren terug pas terug opgepikt een jaar of 20 na mijn studies
Kris
Re: Is dit te bouwen met een ardunio board
intussen wat aanpassing gedaan en meer overzicht gegeven op aanraden van kris.
wat de for next loop betrefd das voor mij een brug te ver ben geen programeur maar amateur en moet het dus hebben van vb op het net om iets te kunnen schrijven.
heb de eerste 3 sensors een berekening mee gegeven deze waardes komen van een temp meting die vergelijkbaar is met het gene ik wil enkel is de temp sensor anders vraag is deze correct??
Moet nu nog een berekening toevoegen voor de 4de en 5de sensor maar eerst moet ik beslissen welke opamp er moet bij komen iemand sugesties of kan het arduino temp sensor bord daarvoor dienen??
wat de for next loop betrefd das voor mij een brug te ver ben geen programeur maar amateur en moet het dus hebben van vb op het net om iets te kunnen schrijven.
heb de eerste 3 sensors een berekening mee gegeven deze waardes komen van een temp meting die vergelijkbaar is met het gene ik wil enkel is de temp sensor anders vraag is deze correct??
Moet nu nog een berekening toevoegen voor de 4de en 5de sensor maar eerst moet ik beslissen welke opamp er moet bij komen iemand sugesties of kan het arduino temp sensor bord daarvoor dienen??
- Code: Alles selecteren
#include <LiquidCrystal.h> // heeft aan er een lcd is aangesloten
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //stelt het lcd in
int tSensorWaarde;
int rSensorWaarde;
int temp= 0;//temperatuur variabele
int lambda= 0;//lambda variabele
int tempPinLiving= 0; // pin nummer sensor living
int tempPinKeuken= 1; // pin nummer sensor keuken
int tempPinKachel= 2; //pin nummer sensor kachel
int tempPinSchouw= 3; //pin nummer sensor schouw
int lambdaPinSensor= 4; //pin nummer lambda sonde kachel
void setup() { // begint de setup
lcd.begin(16, 5);
pinMode(tempPinLiving, INPUT);
pinMode(tempPinKeuken, INPUT);
pinMode(tempPinKachel, INPUT);
pinMode(tempPinSchouw, INPUT);
pinMode(lambdaPinSensor, INPUT);
}
void loop() {
//-----------------------------------------blok sensor waardes-------------------------------------------------------------------------------------------
tSensorWaarde= ( 5,0 * analogRead ( 0 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= ( 5,0 * analogRead ( 1 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= ( 5,0 * analogRead ( 2 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= analogRead(3);
temp= (tSensorWaarde);
rSensorWaarde= analogRead(4);
lambda= (rSensorWaarde);
//----------------------------------------blok lcd waardes-----------------------------------------------------------------------------------------------
lcd.setCursor(0, 1);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 2);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 3);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 4);
lcd.print(tSensorWaarde);
lcd.print("\t");
lcd.println(temp);
lcd.setCursor(0, 5);
lcd.print(rSensorWaarde);
lcd.print("\r");
lcd.println(lambda);
delay (1000);
}
Re: Is dit te bouwen met een ardunio board
Door deze code hou je alleen de laatste meting over, omdat je telkens overschrijft:
temp gaat achtereenvolgens de waarde van de sensor op poort 0, die van poort 1 en die van poort 2 hebben maar omdat je daar ondertussen niets mee doet, verlies je die van 0 en 1. Je moet dus voor elke waarde een andere naam bedenken.
Dit stuk:
Is volgens mij beter :
Dat is net de bedoeling van :
Maar je bent volgens mij wel op goeie weg.
Kris
- Code: Alles selecteren
tSensorWaarde= ( 5,0 * analogRead ( 0 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= ( 5,0 * analogRead ( 1 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= ( 5,0 * analogRead ( 2 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
temp gaat achtereenvolgens de waarde van de sensor op poort 0, die van poort 1 en die van poort 2 hebben maar omdat je daar ondertussen niets mee doet, verlies je die van 0 en 1. Je moet dus voor elke waarde een andere naam bedenken.
Dit stuk:
- Code: Alles selecteren
tSensorWaarde= ( 5,0 * analogRead ( 0 ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
Is volgens mij beter :
- Code: Alles selecteren
tSensorWaarde= ( 5,0 * analogRead ( tempPinLiving ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
Dat is net de bedoeling van :
- Code: Alles selecteren
int tempPinLiving= 0; // pin nummer sensor living
Maar je bent volgens mij wel op goeie weg.
Kris
Als je het probleem gedetailleerd genoeg omschrijft, heb je meestal al de oplossing.
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: Is dit te bouwen met een ardunio board
Ik zou mijn wat verdiepen in het werken met functies. Ik zie 3x (eigenlijk 5x) dezelfde code waarbij alleen de pin en de uitkomst anders zijn.
Dus een functie maken a la :
en dan in de loop
temp = leesTemp(0);
enz.
Dus een functie maken a la :
- Code: Alles selecteren
float leesTemp(pin){
float tSensorWaarde;
tSensorWaarde= ( 5,0 * analogRead ( pin) * 100,0 ) / 1024,0 ;
return tSensorWaarde;
}
en dan in de loop
temp = leesTemp(0);
enz.
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: Is dit te bouwen met een ardunio board
En comma's in getallen kun je beter gelijk vervangen voor punten
Re: Is dit te bouwen met een ardunio board
ok begrepen en aangepast op deze manier blijven de 3 waardes en blijft niet enkel de laatste waarde over toch
ergens mis ik waarschijnlijk iets om de temp te laten verschijnen op het lcd gedeelte.
nu heb ik 5maal dezelfde blok na een met telkens lcd.print(tSensorWaarde) erin en lcd.print(temp) deze waarde kan toch niet terug gevonden worden op deze manier daar de verwijzing telkens hetzelfde is of ben ik mis.
vermoed ik boven aan 5maal int temp met een opvolgend nummer moet hebben en 5maal int tSensorWaarde met een opvolgend nr en deze verwijzing dan gebruiken zowel in het bereken van de sensor waarde als het printen op het lcd
zoiets
- Code: Alles selecteren
tSensorWaarde= ( 5,0 * analogRead ( tempPinLiving ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= ( 5,0 * analogRead ( tempPinKeuken ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
tSensorWaarde= ( 5,0 * analogRead ( tempPinKachel ) * 100,0 ) / 1024,0 ;
temp= (tSensorWaarde);
ergens mis ik waarschijnlijk iets om de temp te laten verschijnen op het lcd gedeelte.
nu heb ik 5maal dezelfde blok na een met telkens lcd.print(tSensorWaarde) erin en lcd.print(temp) deze waarde kan toch niet terug gevonden worden op deze manier daar de verwijzing telkens hetzelfde is of ben ik mis.
vermoed ik boven aan 5maal int temp met een opvolgend nummer moet hebben en 5maal int tSensorWaarde met een opvolgend nr en deze verwijzing dan gebruiken zowel in het bereken van de sensor waarde als het printen op het lcd
zoiets
- Code: Alles selecteren
int tSensorWaarde1;
int tSensorWaarde2;
int rSensorWaarde;
int temp1= 0;
int temp2= 0;
tSensorWaarde1= ( 5,0 * analogRead ( tempPinLiving ) * 100,0 ) / 1024,0 ;
temp1= (tSensorWaarde1);
tSensorWaarde2= ( 5,0 * analogRead ( tempPinKeuken ) * 100,0 ) / 1024,0 ;
temp2= (tSensorWaarde2);
lcd.setCursor(0, 1);
lcd.print(tSensorWaarde1);
lcd.print("\t");
lcd.println(temp1);
lcd.setCursor(0, 2);
lcd.print(tSensorWaarde2);
lcd.print("\t");
lcd.println(temp2);
Re: Is dit te bouwen met een ardunio board
de amplifer in deze link kan die dienen voor de pt100 sensor
http://www.ebay.co.uk/itm/LM358-Signal- ... 2326503a4f
mvg pedro
http://www.ebay.co.uk/itm/LM358-Signal- ... 2326503a4f
mvg pedro
45 berichten
• Pagina 3 van 5 • 1, 2, 3, 4, 5
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 6 gasten