Vanemate ringitund 08.02.17

ARDUINO

Tegime Arduinoga RGB lambi prototüübi. Ledil on neli jalga, kolm on värvide ja neljas maanduse jaoks.
R – punane
G – roheline
B – sinine

Nendest kolmest põhivärvist saab kõiki värve valmis segada. Ka RGB lediga on see võimalik. Lambi peal on tuvastatud 16,7 miljonit erinevat värvi.

Prototüüp näeb järgmine välja.

Programm C-keeles. Värvide vahemikku on võimalik valida 0-255. Kui näiteks punane on 255 ja teised värvid on nullid, siis põlebki ainult punane tuli.

const int greenLEDPin = 9; // LED connected to digital pin 9
const int redLEDPin = 10; // LED connected to digital pin 10
const int blueLEDPin = 11; // LED connected to digital pin 11
int redValue = 0; // punane LED
int greenValue = 0; // roheline LED
int blueValue = 0; // sinine LED
void setup() {
pinMode(greenLEDPin, OUTPUT);
pinMode(redLEDPin, OUTPUT);
pinMode(blueLEDPin, OUTPUT);
}
void loop() {
redValue = 255;
greenValue = 0;
blueValue = 0;
analogWrite(redLEDPin, redValue);
analogWrite(greenLEDPin, greenValue);
analogWrite(blueLEDPin, blueValue);
}

Siin on näha erinevad võimalikud värvid koos koodidega.

C-keele programm, kus lambi värv hakkab muutuma etteantud tsükli värvide vahemikus. Selles koodis siis sinisest punaseni.

const int greenLEDPin = 9; // LED connected to digital pin 9
const int redLEDPin = 10; // LED connected to digital pin 10
const int blueLEDPin = 11; // LED connected to digital pin 11
int redValue = 0; // punane LED
int greenValue = 0; // roheline LED
int blueValue = 0; // sinine LED
void setup() {
pinMode(greenLEDPin, OUTPUT);
pinMode(redLEDPin, OUTPUT);
pinMode(blueLEDPin, OUTPUT);
}
void loop() {
redValue = 255;
greenValue = 0;
blueValue = 0;
for(int i = 0; i<255; i++) {
analogWrite(redLEDPin, i);
analogWrite(greenLEDPin, 0);
analogWrite(blueLEDPin, 255-i);
delay(10);
}
}

Nooremate ringitund 08.02.17

Alustasime tundi paari lühikese video vaatamisega. Mis küll võib programmeerijatel juhtuda.

OZOBOT

Kirjutasime Ozobotidele disco programmi.

SCRATCH

Scratchis panime kassi hüppama.

Ja siis panime kassi lendama ühest nurgast teise nagu lennuki.

Nooremate ringitund 07.02.17

Alustasime tundi paari lühikese video vaatamisega. Mis küll võib programmeerijatel juhtuda.

SCRATCH

Scratchis kirjutasime koodi erinevate taustade ilmumiseks erinevate nuppude vajutamise järel.

ARDUINO

Arduinoga valmistasime valgusfoori prototüübi.

Siin on näha programm C-keeles. Kui lüliti ei ole sisse lülitatud, siis põleb roheline tuli ja teised on kustunud. Kui lülitit all hoida, siis roheline ei põle ning kollane ja punane vilguvad veerand sekundiliste vahedega.

int switchstate = 0;
void setup() {
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(2, INPUT);
}
void loop() {
switchstate = digitalRead(2);
// Kui lüliti ei ole sisse lülitatud
if (switchstate == LOW) {
digitalWrite(3, HIGH); // roheline põleb
digitalWrite(4, LOW); // kollane ei põle
digitalWrite(5, LOW); // punane ei põle
// Kui lüliti on sisse lülitatud
} else {
digitalWrite(3, LOW); // roheline ei põle
digitalWrite(4, LOW); // kollane ei põle
digitalWrite(5, HIGH); // punane põleb
// Oota veerand sekundit
delay(250);
digitalWrite(3, LOW); // roheline ei põle
digitalWrite(4, HIGH); // kollane põleb
digitalWrite(5, LOW); // punane ei põle
// Oota veerand sekundit
delay(250);
}
}

Vanemate ringitund 01.02.17

SCRATCH

Tunni alguses tutvusime natuke Scratchiga. Tegime mängu “Apelsinide noppimine aja peale” algusosa.

ARDUINO

Tunni teises pooles võtsime ette juba eelmises tunnis valmis tehtud Arduino led lambi prototüübid. Lisasime sinna veel kolm led lampi ja panime need põlema vastavalt igaühe soovitud järjekorrale.
C-keele kood on alljärgnev:

int switchState = 0;
void setup() {
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(2,INPUT);
}
void loop() {
switchState = digitalRead(2);
if (switchState == LOW) {
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
} else {
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
delay(250);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
delay(250);
}
}

Sellised lõbusad ja vilkuvad led lambid:

Nooremate ringitund 01.02.17

SCRATCH

Tunni alguses vaatasime natuke Scratchi lihtsamaid käske. Panime kass liikuma nii, et jääks mulje nagu ta jookseks. Lisasime erinevaid taustasid ja panime need erinevalt ilmuma vastavalt erinevatele klahvidele.

Selline näeb liikuva kassi kood välja:

Ja selline on taustade ilmumise kood vastavalt erinevatele klahvidele.

ARDUINO

Kes olid huvitatud, siis nendega ehitasime Arduino abil led lambi prototüübi. Kõigepealt panime ühe lambi põlema ja siis lisasime neid sinna juurde. Kõige rohkem sai lausa üheksa lampi ühendatud.

Nooremate ringitund 31.01.17

OZOBOT

Tänase tunni alustasime Ozobotidega. Kirjutasime ozoblockly.com lehel väikestele robotitele disco programmi ja panime need pärast kõik koos tantsima.
Näide ühest võimalikus koodist on siin. Siia on muidugi võimalik lisada erinevaid liikumisi ja keerutusi.

ARDUINO

Peale poolt tundi hakkasid suuremad huvilised, neid oli kokku neli, Arduino abil prototüüpe ehitama. Panime kõigepealt ühe led lambi põlema ja pärast lisas igaüks alusele veel kaks lampi. Põlev valgusfoor oligi olemas.

Mega-Bot

Meie robotauto saigi endale lõpuks nime.
MEGA-BOT

Tänud kõigile, kes toredaid nimesid pakkusid ja aitasid sobiva välja valida 🙂

Vanemate ringitund 25.01.17

ARDUINO

Ehitasime Arduinoga prototüübi kolme LED lambi ja nupuga.

Seejärel kirjutasime Arduino Studio’s programmi kasutades C keelt. Kui nuppu ei vajuta, siis põleb üks lamp ja kaks on kustunud, nuppu all hoides kustub põlev lamp ära ja teised kaks hakkavad vaheldumisi põlema.
Pärast sai igaüks ise katsetada, mis juhtub kui lisada vahele pause ja muuta lampide põlemist ja kustumist.


int switchState = 0;
void setup() {
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(2,INPUT);
}

void loop() {
switchState = digitalRead(2);
if (switchState == LOW) {
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else {
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
delay(250);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
delay(250);
}
}

Nooremate ringitund 25.01.17

Mõned kirjutasid Scratchis ise mänge, mõned tegelesid Ozobotidega. Kirjutasid nendele koodi ja joonistasid paberile radu. Lõpuks mahutati kõik Ozobotid ühele paberile ühes rivis sõitma.

Lisaks joonistasime sirgeldamisrobotiga suurele paberile pildi ja vaatasime natuke Little Robot Friends’e.

Siin on näha, et Ozobotide rajal hoidmine ei olegi nii kerge.

Nooremate ringitund 24.01.17

SCRATCH

Tegime Scratchis mängu “Apelsinide korjamine aja peale”. Tausta ja noppimise asjad võis igaüks ise valida.
Siin on siis näha, kuidas banaane püüda. Aega on selleks 30 sekundit.


Lõpus vaatasime sirgeldamisrobotit, Ozobote ja Little Robot Friends’e.

OZOBOT

Kaks poissi tegid Scratchis valmis väikese filmi. Natukene selle algusest on siin näha.