-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdag2.tex
114 lines (89 loc) · 4.35 KB
/
dag2.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
\documentclass[a4paper]{article}
% needs to be compiled with xelatex
\usepackage{eso-pic,graphicx}
\usepackage{lipsum}
\usepackage{background}
\usepackage{fontspec}
\usepackage[pass,a4paper]{geometry}
\setmainfont{Didact Gothic}
\linespread{1.4} % 1.6 is double
\backgroundsetup{
scale=1,
angle=0,
opacity=1, %% adjust
contents={\includegraphics[width=\paperwidth,height=\paperheight]{background_2}}
}
\setlength{\parskip}{13pt}
\setlength\parindent{0pt}
\newcommand{\block}[2][-0.4]{\raisebox{#1\height}{\includegraphics{#2}}}
\begin{document}
\begin{large}
I dag skal dere få en robot til å bevege seg ved hjelp av scratch.
Robotene består av flere deler som armer, mikrofoner og høyttalere.
En liste over alle tilgjengelige deler finnes nederst.
Hjernen til roboten er en liten datamaskin som kan styre alle delene,
og lytte på sensorene. Ved hjelp av scratch skal vi gi den et program.
Oppgave 0 Koble til roboten.
Koble til robotens USB kabel til datamaskinen.
Hvis scratch ikke oppdager roboten er det bare å tilkalle en studass.
\newpage
Alle roboter har et kort som viser hva de forskjellige portene er.
Noen deler virker som en bryter, de er enten på eller av.
Disse kaller vi digitale deler. Digitale deler er på dersom
de får en 1, og av dersom de får en 0. Akkurat som en lysbryter.
Oppgave 1(frivillig) Hvilke porter har lys på seg.\\
Skriv en liste over hvilke porter som har lys på seg.
Oppgave 2 Skru på et lys\\
Vi skriver digitale verdier ved hjelp av \block{digital_on} og \block{digital_off}.
Disse blokkene trenger å vite hvilken port den skal skrive verdien til,
og hvilken verdi den skal skrive (0 eller 1).
Hvis dere prøver å skru lys av og på veldig fort kan det hende dere finner
ut av at det ikke går av og på med jevne mellomrom. Dette er fordi vi har en forsinkelse
mellom datamaskinen og roboten på 75 ms. Problemet kan løses med å legge til en
venteblokk. \block{wait}. Venteblokken trenger bare å vite hvor lang tid den skal
vente.
Oppgave 3. Skru av og på lys\\
Skru lys av og på med en eller flere venteblokker for å sikre at de går av og på
i riktig tempo.
\newpage
Vi har snakket om porter som trenger 0 eller 1 for å slå seg av eller på.
Nå skal vi se på deler som trenger tall som er større enn 1 for å gjøre noe.
Disse kaller vi analoge deler. Når vi vil måle lydstyrke med en mikrofon
vil vi ikke vite om den merker lyd eller ikke. Vi vil måle forskjeller i lydstyrke.
Selv om det er lyd i rommet, kan den reagere når vi knipser.
\block{analog_read} måler verdien til en sensor. Denne verdien er den samme som
den som står til høyre i scratch.
\\
\block{arduino}
Oppgave 4. Skru på et lys når man knipser.\\
Bruk if blokken i scratch til å fange opp en lyd som er mye større enn normalt.
Dersom lyden er høy, skru på et lys.\\
(frivillig) lyssensoren fungerer på nøyaktig samme måte, bruk lyssensoren til å
skru lyset av når det er mørkt.
\newpage
Vi har to typer høyttalere, den ene er koblet i datamaskinen og kan spille av
lydfiler akkurat som før.
Den andre lager forskjellige pipetoner avhengig av hvilken verdi den blir satt til.
Høyttaleren som lager pipetoner kan få verdier mellom 0 og 255. Den vil spille forskjellige
pipetoner basert på hvilken verdi dere gir den.
For å få høyttaleren til å spille, bruk \block{analog_write}. Merk at for å få den til å
slutte må man stille verdien tilbake til 0. \block{analog_write_0}
Oppgave 5. Spill av lys\\
La pipehøyttaleren spille i et sekund, og deretter slå seg av.
(Elektromotoren virker akkurat som høyttaleren, men istedenfor pipetone stiller vi på
hastighet.)
\newpage
Alle figurer har servoer. Servoer er motorer med ganske nøyaktige kommandoer.
De kan beveges et visst antall grader med eller mot klokka.
\block{motor_rotate}
\block{motor_angle}
\block{motor_off}
Oppgave 6. Bevegelige deler\\
Finn ut hvilke porter som er servoer, og få servoene til å bevege seg.
Med så mange deler kan vi gjøre veldig mye, men dersom dere slår på alle delene samtidig
vil dere merke at motorene blir svakere. Dette er fordi vi driver alt på USB strømmen.
Fordelen med dette er at det er umulig for dere å få støt som gjør vondt.
Ulempen er at det er mulig dere må slå av et par lys for å bevege motoren med full hastighet.
Her er det bare å eksperimentere med å slå på ting, og se hvor mye svakere motorene blir.
\end{large}
\end{document}