Schoolopdracht

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 6
Geregistreerd: 10 Feb 2013, 14:16

Schoolopdracht

Berichtdoor student » 10 Feb 2013, 14:22

Hallo

ten eerste, ik heb echt geen idee of mijn topic hier juist staat, indien niet, mijn excuses.
Ik ben een student multimedia en nu hebben we het vak "embedded systems", waarbij we dus, jawel, de arduino uno moeten gebruiken.
Helaas is dit nogal chinees voor mij, en ik weet dus echt niet waar te beginnen. Waarschijnlijk stellen onze oefeningen echt niks voor, maar voor mij (als meisje dan nog ;)) weet ik totaal niet waar ik mee bezig ben.

Een oefening waar ik nu mee bezig ben is bijvoorbeeld "Maak een looplichtje met 3 leds. Met één potentiometer regel je de snelheid. Met de andere potentiometer regel je de tijd van de aansturing van iedere LED ten opzichte van de rusttijd."

Ik word al zenuwachtig van alleen de opdracht te lezen, hoe begin ik hier nu in godsnaam aan? Eerst en vooral al het aansluiten op dat arduinobordje, echt géén idee hoe of wat. En dan die code... Programmeren is nooit mijn sterkste vak geweest. :-(

Ik hoop écht dat iemand mij hier wil helpen met mijn opdracht(en) en mij toch een beetje van het arduinobordje wil laten snappen, want het ziet er nog wel interessant uit. Alvast bedankt.

Advertisement

Gebruikers-avatar
Berichten: 229
Geregistreerd: 20 Jan 2013, 12:01

Re: Schoolopdracht

Berichtdoor astrofrostbyte » 10 Feb 2013, 15:45

Hey,
Als beginner komt er erg veel op je af, en de opdracht die je gekregen hebt is dan ook vrij groot.

Van een kennisje weet ik dat het volgende boek hem veel geholpen heeft : Getting Started with Arduino By: Massimo Banzi
Deze is op internet ook wel te vinden als je "Getting Started with Arduino pdf" in google geeft.

Er zitten ook een bekende 'BLINK' tutorial bij arduino wat een goed begin is, er zit al 1 ledje op je arduino bordje

Voor het programeren kan je eerst eens beginnen om het in 'pseudocode' te omschrijven. bv
Code: Alles selecteren
begin
snelheid = LeesPotmeter(nr 1)
rusttijd = LeesPotmeter(nr 2)
Wacht(rusttijd)
ZetLED1 aan
Wacht(snelheid)
ZetLed1 uit
ZetLed2 aan
Wacht(snelheid)
ZetLed2 uit
ZetLed3 aan
Wacht(snelheid)
ZetLed3 uit
Ga weer naar begin


Dit soort code is zeer makkelijk om in arduino code (C) om te zetten.
Gear: Arduino- Uno,Due,Ethernet,Mega2560 , OLS LogicAnalyser, TDS1002, Rigol DG1022, J-Link EDU, BusPirate

Gebruikers-avatar
Berichten: 116
Geregistreerd: 23 Dec 2011, 00:11
Woonplaats: Enschede

Re: Schoolopdracht

Berichtdoor bigred » 10 Feb 2013, 18:53

misschien kan de workshop die ik een tijd terug heb geschreven voor tkkrlab je op weg helpen ?
http://tkkrlab.nl/w/images/7/7d/Arduino_workshop.pdf

Berichten: 6
Geregistreerd: 10 Feb 2013, 14:16

Re: Schoolopdracht

Berichtdoor student » 10 Feb 2013, 22:37

Oh super, bedankt! die tutorial ga ik zeker eens proberen. Alleen nog even tijd vinden ;)

Berichten: 6
Geregistreerd: 10 Feb 2013, 14:16

Re: Schoolopdracht

Berichtdoor student » 10 Feb 2013, 23:32

Haja, nog een vraag. Van 't school had ik zo 2 ledjes gekregen (in 't eerste jaar al), eentje daarvan is kapot (geen idee hoe ik dat gedaan heb haha). Maar nu heeft mijn papa dus 3 ledjes in de winkel gekocht, van 3,4volt zei hij, moet ik daar een andere weerstand op zetten als die rode die ik van school heb? (geen idee hoeveel da is ofzo...). Of hoe kan ik da weten...?

Gebruikers-avatar
Berichten: 700
Geregistreerd: 05 Mrt 2012, 21:56
Woonplaats: Appingedam

Re: Schoolopdracht

Berichtdoor pjh » 11 Feb 2013, 01:33

jouw LED = 3,4 Volt (= 3400 mV)
Stel: je wilt 20 miliAmpere door de LED heen krijgen.
Dan heb je een weerstand nodig van :
5 - 3,4 volt = 1,6 volt
weerstand = 1600 mV / 20 mA
Weerstand = 80 ohm

Bij een LED van 1,8 Volt had je een weerstand van (5000-1800)/20 = 160 Ohm nodig.
Dus het maakt uit.

Berichten: 6
Geregistreerd: 10 Feb 2013, 14:16

Re: Schoolopdracht

Berichtdoor student » 11 Feb 2013, 15:59

IK BEN ZO BLIJ!

Bedankt voor de uitleg over die weerstanden enzo :-). Ik heb dezelfde weerstanden gebruikt als dat ik bij mijn rood ledje gebruikte, en het marcheert. :p
Nu voor mijn oefening met de potentiometer, ik zit al een stukje verder. Ik heb wat opgezocht over de potentiometer hoe ik het moest aansluiten enzo, en ik kan mijn snelheid al veranderen! :) deze code heb ik:

int potPin = 2; // select the input pin for the potentiometer
int ledPin = 3; // select the pin for the LED
int ledPin2 = 4;
int ledPin3 = 5;
int val = 0; // variable to store the value coming from the sensor

void setup() {
pinMode(ledPin, OUTPUT); // declare the ledPin as an OUTPUT
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
}

void loop() {
val = analogRead(potPin); // read the value from the sensor
digitalWrite(ledPin, HIGH); // turn the ledPin on
delay(val); // stop the program for some time
digitalWrite(ledPin, LOW); // turn the ledPin off
delay(val); // stop the program for some time
digitalWrite(ledPin2, HIGH);
delay(val);
digitalWrite(ledPin2, LOW);
delay(val);
digitalWrite(ledPin3, HIGH);
delay(val);
digitalWrite(ledPin3, LOW);
delay(val);
}

Nu, het tweede deel (dus met de tweede potentiometer) snap ik niet. "regel de tijd van de aansturing van iedere LED ten opzichte van de rusttijd." Wat wordt hier juist mee bedoeld?

Berichten: 85
Geregistreerd: 10 Jan 2013, 14:51
Woonplaats: Waddinxveen

Re: Schoolopdracht

Berichtdoor Karel » 11 Feb 2013, 18:41

Dat je een andere wachttijd hebt van HIGH naar LOW dan van LOW naar HIGH. Dus lang branden, korte pauzes of andersom.

Suc6, Karel
If you think education is expensive, try ignorance! (Derek Bok)

Gebruikers-avatar
Berichten: 188
Geregistreerd: 23 Dec 2011, 00:12

Re: Schoolopdracht

Berichtdoor Duality » 12 Feb 2013, 16:42

een verschil tussen hoe lang het ledje aan blijft, en hoelang uit.

Berichten: 6
Geregistreerd: 10 Feb 2013, 14:16

Re: Schoolopdracht

Berichtdoor student » 22 Feb 2013, 12:43

Oke, heel erg bedankt :)
ik sta weer 2 oefeningen verder, joepie. Maar nu zit ik vast met de volgende.

"Regel de intensiteit van het licht van een LED met één drukknop: de volledige range van uit naar maximum en terug moet doorlopen worden binnen ongeveer 5 sec als je blijft drukken. Kort drukken om volledig aan of volledig uit te zetten…"
Ik heb geen drukknop dus ik gebruik gewoon 1 draadje op uitgang 9. Deze code heb ik (gekregen, haha), maar het doet niet zoveel.

void setup()
{
pinMode(10, INPUT);
digitalWrite(10, HIGH);
pinMode(9,OUTPUT);
}

int b = 0;
int i = 0;
long time;

void loop()
{
time = millis();

while(digitalRead(10));

if(!digitalRead(10))
{
digitalWrite(9,!digitalRead(9));
delay(400);

if(b<255 && time<2500) {
b +=time/255;

if(b>255) {
b=255;
}

if (time<1000) {
digitalRead(10);
}
if(b<=255 && time>2500 && time <5000) {
b-=time/255;

if(b<0) {
b=0;
}
} else {
b=255;
}

analogWrite(9,b);
delay(50);
}

if(i==0) {
digitalWrite(9,LOW);
}
}
}

Volgende

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 29 gasten