TÜG vanemate ringitund 02.05.18

ARDUINO AUTO

Auto juhend

www.makeuseof.com/tag/build-4wd-arduino-robot-beginners/

Puldi juhend

henrysbench.capnfatz.com/henrys-bench/arduino-sensors-and-input/arduino-xinda-keyes-infrared-remote-tutorial/

PYTHON

Valgusfoor

# Tkinteri teegi funktsioonid
from tkinter import *
# Akna suuruse määramine
WIDTH = 700
HEIGHT = 400
# Ekraani keskpaiga koordinaadid
MID_X = WIDTH / 2
MID_Y = HEIGHT / 2
# Akna tekitamine
window = Tk()
window.title(‘Valgusfoor’)
c = Canvas(window, width=WIDTH, height=HEIGHT, bg=’blue’)
# Akna paigutamine
c.pack()
# Valgusfoori värvide teksti lisamine ekraanile
c.create_text(100, 50, \
text=’VALGUSFOOR’, fill=’white’, font=(‘Helvetica’,20))
c.create_text(MID_X – 100, MID_Y – 80, \
text=’Punane’, fill=’red’, font=(‘Helvetica’,20))
c.create_text(MID_X – 100, MID_Y – 30, \
text=’Kollane’, fill=’yellow’, font=(‘Helvetica’,30))
c.create_text(MID_X – 100, MID_Y + 20, \
text=’Roheline’, fill=’green’, font=(‘Helvetica’,40))
# Valgusfoori värvide joonistamine ekraanile
light_red = c.create_oval(0, 0, 50, 50, fill=’red’, outline=’black’)
light_yel = c.create_oval(0, 0, 50, 50, fill=’yellow’, outline=’black’)
light_gre = c.create_oval(0, 0, 50, 50, fill=’green’, outline=’black’)
# Valgusfoori värvide paigutamine ekraanile
c.move(light_red, MID_X + 100, MID_Y – 100)
c.move(light_yel, MID_X + 100, MID_Y – 50)
c.move(light_gre, MID_X + 100, MID_Y)

Täringu veeretamine

# Tkinteri teegi funktsioonid
from tkinter import *
# Random teegist randint funktsioon
from random import randint
# Teksti kustutamine ja asendamine juhusliku täringu numbriga 1-6
def viska():
res.delete(0.0, END)
res.insert(END, str(randint(1,6)))
# Akna suuruse määramine
HEIGHT = 50
WIDTH = 200
# Ekraani keskpaiga koordinaadid
MID_X = WIDTH / 2
MID_Y = HEIGHT / 2
# Akna tekitamine
window = Tk()
window.title(‘Täringu mäng’)
c = Canvas(window, width=WIDTH, height=HEIGHT, bg=’yellow’)
# Tekstikasti tekitamine täringu numbri jaoks
res = Text(window, width=1, height=2, font=(‘Helvetica’,20))
# Nupu tekitamine tekstiga Viska täringut
buttonA = Button(window, text=’Viska täringut!’, command=viska)
# Akna paigutamine
c.pack()
# Nupu paigutamine
buttonA.pack()
# Tekstikasti paigutamine
res.pack()
# Teksti lisamine ekraanile
c.create_text(MID_X, MID_Y, \
text=’TÄRINGU MÄNG’, fill=’red’, font=(‘Helvetica’,20))

Allveelaeva liigutamine

# Tkinteri teegi funktsioonid
from tkinter import *
# Akna suuruse määramine
WIDTH = 800
HEIGHT = 500
# Ekraani keskpaiga koordinaadid
MID_X = WIDTH / 2
MID_Y = HEIGHT / 2
# Akna tekitamine
window = Tk()
window.title(‘Allveelaev’)
c = Canvas(window, width=WIDTH, height=HEIGHT, bg=’darkblue’)
# Akna paigutamine
c.pack()
# Teksti lisamine ekraanile
c.create_text(MID_X, MID_Y – 100, \
text=’ALLVEELAEVA LIIGUTAMINE’, fill=’white’, font=(‘Helvetica’,20))
# Kolmnurga joonistamine ekraanile
ship_p = c.create_polygon(5, 5, 5, 25, 30, 15, fill=’red’)
# Ringi joonistamine ekraanile kolmnurga ümber
ship_o = c.create_oval(0, 0, 30, 30, outline=’red’)
# Allveelaeva paigutamine ekraani keskele
c.move(ship_p, MID_X, MID_Y)
c.move(ship_o, MID_X, MID_Y)
# Allveelaeva liikumise kaugus klahvivajutuse järel
SHIP_DIST = 10
# Allveelaeva liikumise funktsioon
def move_ship(event):
# Allveelaeva liikumine üles
if event.keysym == ‘Up’:
c.move(ship_p, 0, -SHIP_DIST)
c.move(ship_o, 0, -SHIP_DIST)
# Allveelaeva liikumine alla
elif event.keysym == ‘Down’:
c.move(ship_p, 0, SHIP_DIST)
c.move(ship_o, 0, SHIP_DIST)
# Allveelaeva liikumine vasakule
elif event.keysym == ‘Left’:
c.move(ship_p, -SHIP_DIST, 0)
c.move(ship_o, -SHIP_DIST, 0)
# Allveelaeva liikumine paremale
elif event.keysym == ‘Right’:
c.move(ship_p, SHIP_DIST, 0)
c.move(ship_o, SHIP_DIST, 0)
# move_ship funktsiooni käivitamine iga klahvivajutuse järel
c.bind_all(‘<Key>’, move_ship)

 

ARDUINO

Robotkäsi – juhend

Muud vahendid:

  • Arduino Uno
  • makettplaat
  • patarei 9V

Vahendid servomootoritega osale:

  • alus servomootorite kinnitamiseks
  • 4 servo mootorit
  • 4 pulka
  • kahepoolne teip
  • nöör
  • traat

Vahendid potentsiomeetritega osale:

  • alus potentsiomeetrite kinnitamiseks
  • 4 potentsiomeetrit (10K ohm)
  • 2 pulka
  • 1 metallnurk
  • kahepoolne teip
  • juhtmed

Kood ja joonis

www.mediafire.com/folder/0lwkm2ze12cnt/servo_arm_file

 

Erinevaid näiteid robotkäest

https://youtu.be/gPu47Z3j4UM

 

www.robotshop.com/letsmakerobots/micro-servo-robot