Tarkade seadmete ehitamise ring 08.11.21

ROBOLAHING 2021 FINAAL

JOOTMINE

LAHTI JOOTMINE

LED LAMPIDE JOOTMINE

Harjutasime LED lampide jootmist makettplaadi peale. Selleks kasutasime 220 Ohmist takistit.

Kõigepealt tuli Arduino peal ära kontrollida, kas lambid ikkagi põlevad.

Makettplaadile võis lambid asetada vastavalt oma fantaasiale, aga ikkagi nii, et vooluring oleks õigesti olemas.

Tulemus nägi selline välja. Ühte plaati tööle ei saanud, aga kõigil ülejäänutel hakkasid lambid ilusti põlema. Patareiks on 3V tablett-patarei.

Tarkade seadmete ehitamise ring 18.10.21

Topsi hoidja

ARDUINO

Majavalvur koos heliga

Seekord lisame majavalvuri lampide juurde ka väikese kõlari ehk buzzeri. See hakkab häält tegema siis kui keegi ligidale tuleb.

Programmikoodi ülesse tuleb lisada define:

#define BUZZER 9

Ja lambi värvide funktsioonide juurde, kas teeb häält või ei.

void red() {
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_RED, HIGH);
  digitalWrite(LED_GREEN, LOW);
  tone(BUZZER, 4000);
}

void yellow() {
  digitalWrite(LED_YELLOW, HIGH);
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_GREEN, LOW);
  noTone(BUZZER);
}

void green() {
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_GREEN, HIGH);
  noTone(BUZZER);
}

Tarkade seadmete ehitamise ring 11.10.21

MAJA VALVUR LED lampidega

Maja valvur annab LED lampidega märku kui keegi liiga lähedale tuleb. Lähemal kui 2 meetrit hakkab põlema punane tuli, kaugemal kui 2,5 meetrit põleb roheline tuli ja vahepeal kollane tuli.

Kaugust mõõdab ultrasonic andur.

Skeemil on lisaks ultrasonicule kolm erinevat värvi LED lampi ja kolm takistit – 220 Ohmi.

Programmikoodi loop tsüklis on määratud kaugused, mis juhtudel erinevat värvi lambid põlema hakkavad.

#define LED_RED 6
#define LED_YELLOW 5
#define LED_GREEN 3

#define TRIGGER 10
#define ECHO 11

float average = 0;

void setup() {
  pinMode(LED_RED, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);
  pinMode(LED_GREEN, OUTPUT);
  pinMode(TRIGGER, OUTPUT);
  pinMode(ECHO, INPUT_PULLUP);
  Serial.begin(9600);
}

void loop() {
  int count = 0;
  for (int i = 0; i < 5; i++) {
    float tmp = distance();
    if (tmp != 0 && tmp < 300) {
      average += tmp;
      count++;
    }
    delay(10);
  }
  if (count > 0 && average > 0) {
    average /= count;
    if (average < 250 && average >= 200)
      yellow();
    else if (average < 200 && average > 0)
      red();
    else
      green();
    Serial.print(average);
    Serial.println(" cm");
  } else {
    Serial.println("Ohtu pole :)");
    green();
  }
  average = 0;
}

float distance() {
  digitalWrite(TRIGGER, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIGGER, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIGGER, LOW);
  long duration = pulseIn(ECHO, HIGH, 250000);
  return duration * 0.0343 / 2;
}

void red() {
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_RED, HIGH);
  digitalWrite(LED_GREEN, LOW);
}

void yellow() {
  digitalWrite(LED_YELLOW, HIGH);
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_GREEN, LOW);
}

void green() {
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_GREEN, HIGH);
}

Tarkade seadmete ehitamise ring 27.09.21

RGB LED

RGB lED on lamp, mille värve on võimalik muuta. Lambi peal on tuvastatud 16,7 miljonit erinevat värvi.

R – Red, punane
G – Green, roheline
B – Blue, sinine

Värvikoodid

Kuna värvide koode on palju, siis on võimalik neid otsida internetist erinevatelt lehtedelt.

Üks võimalik koht on: htmlcolorcodes.com

Programmi jaoks sobiv värvikood on näha üleval ääres RGB järel. Numbrid tähendavad punase, rohelise ja sinise värvi tooni tugevust. Numbrite vahemik on 0 kuni 255.

255, 0, 0 – punane värv

0, 255, 0 – roheline värv

0, 0, 255 – sinine värv

Tinkercad

Skeeme on eelnevalt mugav valmis teha Tinkercad keskkonnas. Seal saab proovida ka programmikoodi ja näha, kas see töötab.

www.tinkercad.com/

RGB LED lambi ühendamise skeem

VILKUVAD RGB LEDID

Tarkade seadmete ehitamise ring 20.09.21

Valgusfooriga ristmik

Kui ristmikul on palju valgusfoore, siis iga foor töötab kindla tsükliga. Selleks tuleb kõigepealt kirja panna mitu sekundit valitud värvi tuli põleb ja kui midagi vilgub, siis kui kiiresti ja mitu korda. Vali, kas sa kasutad kolme värvi tuld või hoopiski kahte, mis on jalakäijatele mõeldud.

#define LED_GREEN 3
#define LED_YELLOW 5
#define LED_RED 6

void setup() {
  pinMode(LED_GREEN, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);
  pinMode(LED_RED, OUTPUT);
}

void loop() {
  digitalWrite(LED_GREEN, HIGH);   
  digitalWrite(LED_YELLOW, HIGH);   
  digitalWrite(LED_RED, HIGH);                  
}

Ringitunnis valminud valgusfoori tsüklid nägid välja järgmised:

Tarkade seadmete ehitamise ring 13.09.21

Animatsiooniseadme ehk pilditrumli ehitamine

Esimeses ringitunnis võtsime ette lihtsama ülesande ja ehitasime valmis animatsiooniseadme ehk pilditrumli. Pilditrummel ehk zoetrope on silinder, mille sees on joonistused ja külgedel väikesed avaused. Kui seda keerutada ja läbi avade vaadata, siis on näha animatsiooni. Ladinakeelne sõna animatio tähendabki hingestamist ja elustamist. Ehk siis pilt ärkab ellu.

Joonistamine on kunst ja liikumine füüsika. Animatsioon liidab need kaks ja äratab objektid ellu.

Animatsiooniseadme ehitamiseks on vaja Arduino Unot, maketeerimislauda, servo mootorit, potentsiomeetrit ja juhtmeid. Lisks on trumli ehitamiseks vaja paberit, pliiatseid, cd plaati ja ühendustükki cd plaadi ja servo mootori kinnitamiseks (näiteks 3D prinditud mudel).

#include <Servo.h> 
Servo myservo;    
 
void setup() {
  myservo.attach(9); 
  Serial.begin(9600);
} 
 
void loop() {
  int analogValue = analogRead(A0);
  int speed_min = 84;
  int speed_max = 180;
  int map_val = map(analogValue,0,1023,speed_min,speed_max);

  Serial.println(map_val);
  myservo.write(map_val);
}

Vaatamata sellele, et arvutid ei tahtnud meiega seekord eriti koostööd teha, saime paari arvuti abiga programmikoodid ikkagi Arduinole peale laetud ja kõigi seadmed hakkasid lõbusalt keerlema.

Nädala tunnitöö 15.02.21

SPOT SAI ENDALE KÄE

KUUE KLOTSI ÜLESANNE

ARDUINO

Politseiauto sireen

int switchState = 0;
 int lastSwitchState = 0;
 int piezo = 8;
 int redLED = 3;
 int blueLED = 4;
 void setup()
 {
   pinMode(3, OUTPUT);
   pinMode(4, OUTPUT);
 pinMode(2, INPUT);
 }
 void loop() {
   switchState = digitalRead(2);
 if(switchState != lastSwitchState) {
     if(switchState == HIGH) {
       for(int hz=440; hz < 1000; hz++) {         
         digitalWrite(blueLED, HIGH);
         digitalWrite(redLED, LOW);
         delay(250);
         digitalWrite(blueLED, LOW);
         digitalWrite(redLED, HIGH);
         tone(piezo, hz);
         delay(5);
       }
       for(int hz=1000; hz > 440; hz--) {
         digitalWrite(blueLED, HIGH);
         digitalWrite(redLED, LOW);
         delay(250);
         digitalWrite(blueLED, LOW);
         digitalWrite(redLED, HIGH);
         tone(piezo, hz);
         delay(5);
       }
     } else {
       digitalWrite(blueLED, LOW);
       digitalWrite(redLED, LOW);
       noTone(piezo);
     }
   }
 lastSwitchState = switchState;
 }

Erinevad helid

github.com/jigneshk5/Siren-Code-Arduino/blob/master/siren.ino

OZOBOT

Game Mat

Tee Ozobot robotiga järgi erinevaid radasid kasutades Ozoblockly keskkonda.

ozoblockly.com

SCRATCH

Hüppamise mäng

MAKEX SPARK 2021 VEEBIPÕHINE VÕISTLUS

insplay.eu/makex

Loovad lahendused ja projektid globaalsel skaalal.
Võta osa, disaini oma lahendus ning jaga seda maailmaga!

2020 aasta algas koroonaviiruse COVID-19 tulekuga, mis mõjutab kõiki elu valdkondi. Võistluse teema ongi tuletatud igapäeva elust ühiskonnas, teaduse ning tehnoloogia arengust ja olulistest rahvusvahelistest üritustest. Projekti sisu peaks olema lahenduskeskne ja seotud võistluste katusteemaga.

Osalejatelt oodatakse lahenduse käsitlemist erinevates aspektides ning kujutlusvõime kasutamist ja loovust nii tarkvara kui ka riistvara loomise käigus.

Võistlejad osalevad tiimina. Igas tiimis on 1-2 liiget ning 1-2 mentorit. Mentorid peavad olema üle 18-aastased. 

Võistlusel osalejad jaotatakse vanuseliselt kahte gruppi: 6-9 aastased ja 10-13 aastased. 

Nädala tunnitöö 02.11.20

Koristusrobot

Labor Tallinna Tehnikakõrgkoolis

https://youtu.be/ydhx6-z1jFg?list=WL

SÄRGID JA PUSAD

T-särgid – vaata

Pusad – vaata

ARDUINO PROJECTS BOOK

01. Simple Circuits

Lihtsad skeemid lülitite, LED lampide ja takistitega.

LED lamp

LED lamp nupuga

LED lamp kahe nupuga – jadaühendus

LED lamp kahe nupuga – paralleelühendus

02. Spaceship Interface

Täht seiklusfilmis.

03. Love-O-Meter

Armastusmasin. Kui kuum sa oled.

04. Color Mixing Lamp

RGB LED lambi värvi sujuv muutmine kasutades valgusandurit.

05. Mood Cue

Servo mootori kasutamine tuvastamaks sinu meeleolu.

06. Light Theremin

Heli tegemine kasutades valgusandurit ja väikest kõlarit.

07. Keyboard Instrument

Väike muusika klaviatuur kasutades takisteid ja nuppe.

08. Digital Hourglass

Digitaalne liivakell, mis täitub 10 minutiga.

09. Motorized Pinwheel

Värvilise hooratta keerutamine.

10. Zoetrope

Liikuvate piltide liigutamine edasi ja tagurpidi.

11. Crystal Ball

Kristallkuuli tegemine tuleviku ennustamiseks.

12. Knock Lock

Salajase luku mehhanismi tegemine, et hoida mittesoovitud külalised eemale.

13. Touchy-Feely Lamp

Lamp, mis kustub ja läheb põlema puudutades elektrit juhtivat materjali.

14. Tweak the Arduino Logo

Enda arvutis oleva programmi juhtimine.

15. Hacking Buttons

Nuppude vajutamine kasutades Arduinot.

Nädala tunnitöö 12.10.20

Ascento

Petoi Bittle

ARDUINO

Kolm LED lampi nupuga

int switchState = 0;
void setup() {
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(2,INPUT);
}
void loop() {
switchState = digitalRead(2);
— Kui lülitit ei ole vajutatud, siis põleb nr 3 led ning 4 ja 5 on kustunud
if (switchState == LOW) {
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else {
— Kui lüliti on alla vajutatud, siis vilguvad kõik ledid 1/4 sek järel
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
delay(250);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
delay(250);
}

SCRATCH

Sound

SPHERO

Liikumine