einführung mit arduino und scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9....

53
Physical Computing Einführung mit Arduino und Scratch MINT Labortage 2018 Donnerstag, 13. September 2018 Hochschule Fulda, Fachbereich Angewandte Informatik Rabanus-Maurus-Schule Fulda, Klasse 7 Peter Klingebiel, HS Fulda, Fachbereich AI

Upload: others

Post on 13-Mar-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing

Einführung mit Arduino und Scratch

MINT Labortage 2018

Donnerstag, 13. September 2018 Hochschule Fulda, Fachbereich Angewandte Informatik

Rabanus-Maurus-Schule Fulda, Klasse 7

Peter Klingebiel, HS Fulda, Fachbereich AI

Page 2: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 2

Ablauf des Labortages 1

• Wer sind wir? – Peter Klingebiel, Dipl.-Ing. Maschinenbau – 21 Jahre Leiter DVZ der Hochschule Fulda,

heute: Dozent im Fachbereich AI

– Vanessa Günzel, Studierende der Informatik

Page 3: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 3

Ablauf des Labortages 2

• Wer seid Ihr? – Interesse an Physik und Informatik? – Kenntnisse in Physik und Informatik? – Kenntnisse in Programmieren? – ???

• Thema: Physical Computing

– Was ist das? – Was versteht Ihr darunter?

Page 4: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 4

Ablauf des Labortages 3

• Was wollen wir heute machen? – Was ist Physical Computing? – Wie funktionieren Computer? – Was sind Programme? – Grundlagen der Programmierung – einfache Beispiele von Scratch-Programmen

– Experimente und praktische Übungen mit

Arduino und Scratch

Page 5: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 5

Physical Computing 1

• Wikipedia sagt: „Physical Computing bedeutet im weitesten Sinne, interaktive, physische Systeme durch die Verwendung von Hardware und Software zu erstellen.“ https://de.wikipedia.org/wiki/Physical_Computing

Page 6: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 6

Physical Computing 2

• Uni Bamberg:

„Physical Computing sind Anwendungen der Informatik (computing) in direkter Interaktion mit der – physikalischen – Umwelt. Es werden Systeme betrachtet, die ihre eigene Umgebung durch Sensoren erfassen und so auf den jeweiligen Systemkontext angepasst agieren. Anwendungsgebiete von Physical Computing sind interaktive Systeme, mobile Systeme, autonome Roboter oder Smart Environments.“ https://www.uni-bamberg.de/en/ai/smart-environments/teaching/physical-computing/

Page 7: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 7

Physical Computing 3

• Systeme des Physical Computing bestehen aus: • Computern, meistens spezielle Mikrokontroller,

die viele Ein- und Ausgänge zum Anschluß von Sensoren und Aktoren bieten

• Sensoren, mit denen die Umwelt erfasst wird, z.B. Temperatur-, Luftfeuchte-, Helligkeits-, Abstands-Sensoren u.v.a.m.

• Aktoren, mit denen auf die Umgebung eingewirkt werden kann, z.B. Schalter, Motoren u.v.a.m.

• Programme, mit denen die Aufgabenstellung kodiert ist und die im μC ablaufen

Page 8: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 8

Wie funktionieren Computer? 1

Page 9: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 9

Wie funktionieren Computer? 2

Page 10: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 10

Wie funktionieren Computer? 3

Page 11: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 11

Wie funktionieren Computer? 4

Page 12: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 12

Wie funktionieren Computer? 5

Page 13: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 13

Wie funktionieren Computer? 6

• Computer ? – Mikroprozessoren (CPU), -Kontroller (μC) – Ein- und Ausgabe-Schnittstellen, -geräte – Speicher – und und und …

– Hardware („Blech“)

• Computer funktionieren nur mit – Programmen!

– Software

Page 14: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 14

Was sind Programme? 1

• Computer … – … funktionieren nur mit

Programmen / Software • Programme beschreiben …

– … was ein Computer tun soll (Aufgabe, Problem)

– … wie ein Computer seinen Job erledigen soll (Ablauf)

• Programme gibt es für – allgemeine Aufgaben (z.B. Windows) – spezielle Aufgaben (z.B. Physical Computing)

Page 15: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 15

Arduino 2 • Vielzahl an Boards, auch für Sonderbereiche • Vielzahl an Herstellern von Boards und

Komponenten • Vielzahl an sog. Shields, z.B. Ethernet, WiFi,

Sensoren, … • Vielzahl an Komponenten wie LEDs, Sensoren,

Aktoren, Motoren, … • Vielzahl an Einsatzfeldern, z.B. Robotics,

Internet of Things, Hausautomatisierung, Wearables, …

• viele Anleitungen in Literatur und Internet, z.B. – https://funduino.de – http://www.netzmafia.de/skripten/hardware/Arduino/index.html

Page 16: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 16

Arduino 2

• Wikipedia: https://de.wikipedia.org/wiki/Arduino_(Plattform)

• Arduino (zwischenzeitlich auch Genuino) • Open Source Hardware- und Software-Plattform • entwickelt von Massimo Banzi und David

Cuartielles auch für künstlerischen Einsatz von IT-Komponenten

• benamst nach Arduin von Ivrea, der 1002-1014 italienischer König war

• Programmierung in C und C++ in einer eigenen Processing-basierten IDE

• Homepage: https://www.arduino.cc

Page 17: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 17

Arduino UNO 1

USB-Anschluß

CPU: Atmel ATmega328

Mikrocontroller

Reset-Schalter

Externe Strom-

versorgung

GND Masse

Serielle Pins In und Out

Digitale Ein-/Ausgänge Pin 2 bis Pin 13

GND Analoge Eingänge Pin A0 bis Pin A5

5V 3.3V

17

Page 18: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 18

Arduino Nano 1

18

USB-Anschluß

GND

Reset- Taster

5V 3.3V

GND CPU Atmel ATmega328

11 digitale Eingänge D0 bis D13

8 analoge Eingänge A0 bis A7

Serielle Pins RX und TX

Page 19: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 19

Schaltung 1

• Nano und LED auf Breadboard

Page 20: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 20

Schaltung 2

• Schaltungsgrafik mit Fritzing-Software

Page 21: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 21

Breadboard 1

• Steckbrett - Schaltungen ohne Löten

Page 22: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018

Breadboard 2 • Verbindungen der Lochreihen

22

Bus Stripes für VCC und GND

Bus Stripes für VCC und GND

Terminal Stripes für Komponenten

Page 23: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 23

Steckkabel 1

Page 24: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018

LED 1

• Aufbau und Schaltbild einer LED

24

Page 25: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018

Potentiometer 1

• Einfaches Potentiometer 10 kOhm

25

Page 26: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018

PIR Bewegungssensor 1

• Passiver Infrarot Bewegungssensor

26

Page 27: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018

Ultrasonic Entfernungssensor 1

• Ultraschall Entfernungssensor

27

Page 28: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018

Servomotor 1

• Servomotor 0 bis 180 Grad Winkel

28

Page 29: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 29

Was sind Programme? 1

Beispiel: Lego Bauanleitung

Page 30: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 30

Was sind Programme? 2

• Definition:

„Programmieren ist eine Tätigkeit, bei der versucht wird, durch systematischen Einsatz einer gegebenen Programmiersprache ein gestelltes Problem zu lösen.“ aus: H. Balzert, Lehrbuch Grundlagen der Informatik, 1999

• Wikipedia: http://de.wikipedia.org/wiki/Programmierung

Page 31: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 31

Was sind Programme? 3 • Definition:

„Algorithmen, die von einem automa-tischen Prozessor abgearbeitet werden, bezeichnet man als Programme. Ein Programm stellt die Realisierung eines Algorithmus dar. Im Gegensatz zu einem Algorithmus ist ein Programm konkreter und eingeschränkter.“ aus: Balzert, Lehrbuch ...

• Wikipedia: http://de.wikipedia.org/wiki/Computerprogramm

Page 32: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 32

Was sind Programme? 4

• Definition:

„Algorithmus (Plural: Algorithmen), Problemlösungsbeschreibung, die festlegt, wie ein Problem gelöst werden soll.“ aus: Balzert, Lehrbuch ...

• Wikipedia: http://de.wikipedia.org/wiki/Algorithmus

Page 33: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 33

Was sind Programme? 5

• Entwicklung von Programmen: • Aufgabe / Problem so genau wie möglich

beschreiben – Beispiel: Idee / Ziel eines Computerspiels

genau beschreiben • Lösungsweg (Algorithmus) suchen und

so genau wie möglich beschreiben – Bsp: Ablauf des Spiels genau beschreiben

• Programm entwickeln (programmieren) – Bsp: Computerspiel / Ablauf des Spiels in eine

Programmiersprache umsetzen / codieren

Page 34: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 34

Was sind Programme? 6

• Einfaches Programm: Blinkende LED

Page 35: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 35

Was sind Programme? 7

• Programmiersprachen • Programme werden in Programmier-

sprachen geschrieben / beschrieben • Programmiersprachen verlangen fast

immer eine exakte Beschreibung der Aufgabe und der Lösung der Aufgabe

• Programmiersprachen sind fast immer sehr pingelig und erfordern die genaueste Einhaltung der Syntax (Rechtschreibung)

Page 36: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 36

Was sind Programme? 8

• Programm: Blinkende LED • Schaltung

– LED mit Kontroller verbinden – Kathode (-) an GND – Anode (+) an IO-Anschluß, den IO-Pin

• Programmablauf – IO-Pin initialisieren, hier: Pin auf Ausgang

einstellen – in einer Schleife (endlos oder n mal): – Pin (=LED) ein (Pin auf HIGH) und 1 s warten – Pin aus (Pin auf LOW) und 1 s warten

Page 37: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 37

Was sind Programme? 9

• Scratch-Programm zur blinkenden LED:

Page 38: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 38

Scratch 1

Page 39: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 39

Scratch 2

Prof. Mitchel Resnik, Erfinder von Scratch

Page 40: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 40

Scratch 3

• Besonderheiten von „Scratch“: • einfach und intuitiv zu bedienen • sehr niedrige „Einstiegshürden“ • Programme werden mit Bildchen und

Symbolen spielerisch zusammen-geklickt“ • wie „Spielen mit Legosteinen“ • Scratch: https://scratch.mit.edu/

Programmieren auf der Website im Browser! • mBlock: http://www.mblock.cc/

Download und Programmieren auf eigenem Computer! Hardware kann integriert werden!

Page 41: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 41

Scratch 4

Die Scratch-Oberfläche / Der Scratch-Editor (Internet) https://scratch.mit.edu/projects/editor/?tip_bar=home

Page 42: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 42

Scratch 5

Page 43: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 43

Scratch 6

Die mBlock-Oberfläche (lokal auf dem PC) http://www.makeblock.com

Page 44: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 44

Scratch 7

Spielfläche Bühne

Bühnenbilder

Figuren Sprites

Programmier-bereich Skripte

Klänge

Kostüme Programmier-

blöcke

Hauptmenü

Page 45: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 45

Grundlagen der Programmierung 1

• Programme werden aus unterschiedlichen Elementen zusammen“gebaut“

• Einfachstes Element ist die Anweisung • Beispiele (in C)

– printf(„Hallo, Welt!\n“); – clear_screen();

• Beispiele (in Scratch) – – –

Page 46: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 46

Grundlagen der Programmierung 2

• C-Programme starten mit main() • Scratch-Programme (Skripte) starten bei

bestimmten Ereignissen • Beispiele

– Grüne Fahne

– Taste

– Nachricht

Page 47: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 47

Grundlagen der Programmierung 3

• C-Programme werden übersetzt und zu einem ausführbaren Programm montiert

• Scratch-Skripte werden durch Zusammen-fügen der Symbole durch Bewegen mit der Maus zusammengebaut

Page 48: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 48

Grundlagen der Programmierung 4

Beispiel: Blinkende LED

Page 49: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 49

Grundlagen der Programmierung 5

• die meisten Programme sind nicht so einfach gebaut. Fast immer ist eine Steuerung des Programmablaufs erforderlich

• Bedingungen: wenn / falls / falls sonst … • Beispiele:

– falls das Licht an ist, dann schalte es aus – wenn das Zimmer aufgeräumt ist, kannst du spielen,

sonst räume weiter auf!

Page 50: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 50

Grundlagen der Programmierung 6

• Schleifen: wiederhole solange bis / wiederhole n mal / wiederhole endlos …

• Beispiele: – solange du die Hausarbeiten nicht fertig gemacht hast,

kannst du nicht spielen gehen – laufe zehn Runden um den Sportplatz

Page 51: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Physical Computing - Peter Klingebiel - 13. September 2018 51

Grundlagen der Programmierung 7

• Objekte: Scratch hat als Grundelement der Programmierung Objekte (Figuren oder Sprites genannt) – werden über Skripte programmiert / gesteuert – haben Eigenschaften, z.B. Kostüme – kommunizieren miteinander, schicken und

empfangen Nachrichten

Page 52: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Beispiele 1

Physical Computing - Peter Klingebiel - 13. September 2018 52

Frühstücksroboter von Simone Giertz (auf youtube) Lippenstiftroboter von Simone Giertz (auf youtube)

Page 53: Einführung mit Arduino und Scratch - hs-fulda.deml.rz.hs-fulda.de/physcom-folien.pdf · 2018. 9. 13. · Sensoren und Aktoren bieten • Sensoren, mit denen die Umwelt erfasst wird,

Und jetzt: selber programmieren …

Physical Computing - Peter Klingebiel - 13. September 2018 53