Академический Документы
Профессиональный Документы
Культура Документы
In ar
th tr o t w
El e C du ith
ec r
c A
tr ea tio rd
on tiv n u
ic e to ino
s Us
:
e
of
Made in Germany.
by
e
St
fa
He
rm
an
Dont have a
Fritzing Creator Kit yet?
Well, you can close this PDF then. Were really sorry
but thats just the way it goes sometimes ...
But wait, we didnt mean it that way. You can check out
the content first to see how you like it.
Have fun with your projects! You can always buy a
Creator Kit another time as a:
Birthday present
Reconciliation gift
Educational gift
Christmas present
A present for bragging rights
Mothers Day gift
Fathers Day gift
Housewarming gift
Gift YOU ask for
And dont forget: The Fritzing Creator Kit is also
available for Schools, Universities and Labs as a Teaching-Bundle.
We look forward to your next visit in our Shop!
Stefan Hermann
Fritzing.org
Contents
Foreword3
Inspiration7
5. Analog Input 78
Potentiometer80
Electronic Basics 4:
1. Preparation 20
Component Overview 22
Reference Resistor 84
Automatic Lighting System 86
Ping Pong 90
Prototyping Environment 26
Installing Arduino Uno 28
Creator Kit Software Package 29
Arduino Board 30
6. Servomotor, Sound 92
Servo94
Synthesizer98
2. Digital Output 32
Blink34
Programming A Short Introduction 38
Battery102
Electronic Basics 1:
Firmata106
Chaser Lights 42
Electronic Basics 2:
Electrical Resistance 46
Matrix50
3. Digital Input 54
FlipFlop56
Fortuneteller60
4. Analog Output 64
Troubleshooting 128
Fading66
Night Light 70
Aknowledgements130
Imprint131
Inspiration
Before you get started, I'd like
to show you a few inspiring
projects that were implemented
with Fritzing, Arduino and related
technologies.
10
11
dandylight
Dandylights are dandelion-like objects that can be placed
on tables, for example in a caf. Each flower lights up in a
special colour. The flower stalk is made of a spring. If you
flick your flower in the direction of another flower, the
latter's light will change to the colour of the flower you
just flicked.
With these networked objects, it is easy to come into
contact with people in a discreet and playful way in public
places.
Project by Tommaso Bertagnin, Loris Bottello,
Stella Morelli and Valeria Sanguin
Universit IUAV di Venezia
www.interaction-venice.net/
iuav11-12lab2/projects/dandylight/
12
13
lumiBots
LumiBots are small, autonomous robots that move on a
luminescent background surface. With the help of a UV
LED, they leave behind a slowly fading, luminous trail.
Both older tracks and newer tracks are visible. The robots
have light sensors with which they are able to follow
the trails of light, thus reinforcing them. The result is a
constantly changing, generative image on a background
surface. With this process, lumiBots are able to visually
illustrate emergent effects such as "ant algorithms".
Project by Mey Lean Kronemann
www.meyleankronemann.de/lumibots
Photo: Michael Baumgartner
14
15
midiBricks
MidiBricks is a toolkit that helps musicians develop their
own custom music controllers. It lets one put together
one's own instrument on the spur of the moment.
The modular design requires neither electronics nor
programming skills.
All boards were designed with the Fritzing software and
produced with Fritzing Fab (see page 125).
Project by Stefan Hermann
Fachhochschule Potsdam, Interface Design
www.midibricks.com
16
17
BeeHive
Clemens Gruber is a beekeeper who uses the Arduino
board to keep track of the bees flying in and out of his
beehives. This way he knows in real time what his bees
are up to.
Additional sensors provide data about the temperature
in the interior of the beehive. Since bees heat up significantly before swarming, the beekeeper can be notified via
SMS when a swarm is about to leave.
Project by Clemens Gruber
www.imkerei-gruber.de
18
19
20
21
1. Preparation
In this chapter:
you will get a general idea of the
parts included in the kit.
you will assemble the base plate.
you will install the Arduino software.
you will be introduced to the Arduino board.
23
24
Setup
25
12
21
17
1x Arduino Microcontroller-Board
1x base plate
1x
14
13
Input
10
ICSP2
30
G H
A B C D E
A B C D E
25
20
15
10
J
G H
30
25
20
RX0
15
TX0
10
ICSP
A5
ON
A4
ANALOG IN
A3
10
DIGITAL (PWM= )
A1
Output
11
TM
A0
A2
11
Arduino
VIN
POWER
GND
12
GND
TX
RX
5V
GND
15
AREF
13
3V3
20
16
IOREF
RESET
L293D
RESET
22
18
19
10
1x RGB LED with three LEDs in one housing (red, green, blue)
11
12
13
14
3
Other
15
10 x resistors 220
16
10 x resistors 100k
17
24
Connections / mounting
18
19
20
21
1x 9V battery clip
22
23
1x Allen key
24
3x screws
25
3x spacers
25
10
16
14
15
13
22
21
11
12
23
5
17
8
6
24
25
1
20
9
19
18
26
27
Prototyping Environment
The Fritzing Creator Kit contains the base plate on which
the Arduino is screwed and the breadboards are glued.
Remember that once the breadboards are glued, they
can't be detached!
The breadboards are equipped with foam adhesive and a
protective film on their underside.
Assembly
1. Remove the backing from the first breadboard and
place it onto the base plate as shown in the illustration. Make sure the tabs on the long edge are
pointing to the interior.
2. Remove the backing from the second breadboard
and slide it from above over the tabs of the first
breadboard.
28
29
Sketch is the
program code used
by Arduino and
Processing
Arduino sketches*
> Processing Processing sketches
> Fritzing Fritzing schematics
creator-kit-de
Copy the Fritzing Creator Kit folder into the Arduino user
folder:
Windows
Arduino user folder: /Documents/Arduino
Mac
Arduino user folder: /Documents/Arduino
Linux
Depending on your distribution, you will
find the corresponding instructions under
arduino.cc/playground/Learning/Linux
31
USB
0
RX0
L
TX
RX
ON
TM
Arduino
ICSP
supply pins
RX/TX LEDs
These LEDs show
transmission (TX
= transmit) and
reception (RX =
receive) from the
Arduino board to the
computer.
*
A5
A4
A3
A2
A1
ANALOG IN
A0
VIN
GND
GND
5V
POWER
3V3
IOREF
RESET
microcontroller
external
power supply
32
10
11
12
13
DIGITAL (PWM= )
ICSP2
TX0
GND
AREF
Arduino Board
The Arduino UNO board is a small printed circuit board
with a microcontroller chip mounted on it. A microcontroller is a small computer that has input and output
channels and can be programmed. The Arduino board
has a USB port with which it can be connected to the
computer. A software program also called Arduino is
used for programming. Arduino programs are called
sketches. Once the board is programmed, it also works
without a computer, for example if it's connected to a
power supply (7 12V) or batteries. (see page 102 Battery).
digital pins
RX/TX LEDs*
analog
input pins
5V = positive pole
GND = negative pole
There are three GND pins that are connected to each
other in the interior of the board, so it makes no
difference which GND pin you use. GND is the abbreviation for ground.
33
2. Digital
Output
In this chapter:
you will blink an LED.
you will learn what voltage and
current really are.
you will learn what a resistor is.
di|gi|tal:
whatever can assume
two states, such as
on / off, true / false
out|put
in the Arduino world,
whatever can be
turned on or off by a
microcontroller, such as
LEDs, motors, magnets,
light bulbs or speakers
#1:
Blink
Difficulty: easy
Fritzing Diagram*
Fritzing Diagram
Schematic
RX/TX LEDs
36
An LED connected to +5V and GND lights continuously. You can control the LED by using a digital output
pin on the Arduino board which can be programmed
to HIGH (+5V) or LOW (GND). Since an LED may be
destroyed at 5V, a series resistor must be integrated in
the circuit. At 5V the resistance should be 220 ohms ()
(see p. 47 Electrical resistance).
37
void setup() {
pinMode(led, OUTPUT);
}
setup method
The command pinMode(led, OUTPUT) declares the
digital channel 13 on the Arduino as an output.
void loop() {
digitalWrite(led, HIGH);
delay(1000);
loop method
digitalWrite(led, LOW);
delay(1000);
}
Exercise
1. Try to make the light blink at a
different rhythm.
Output graph
Pin 13
5V
0V
Solved
Solutions:
Sketchbook/Fritzing Creator Kit/ Exercise1_1
0s
38
Solved
1s
2s
3s
4s
5s
39
Programming
A Short Introduction
Programming is actually nothing more than having
instructions (commands) executed in a given order or in
parallel.
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
The integer variable of the type int with the name led is
created and assigned a value of 13.
void setup(){
}
digitalWrite(led, HIGH);
void loop(){
}
40
41
Electronic Basics 1:
Voltage is measured
at points that have a
voltage.
in
in V
I in A
10A
Measuring current
The current is
measured by interrupting the circuit
and bridging it with
the meter.
in
in V
I in A
10A
COM
COM
Measuring resistance
The resistance of a
component can be
measured directly,
as shown in the
illustration.
in
in V
I in A
10A
42
COM
43
#2 :
Chaser Lights
Difficulty: medium
Breadboard
Fritzing diagram
Schematic
44
45
Array
Code
int pinsTotal=8;
int pins[] = {2,3,4,5,6,7,8,9};
void setup() {
for (int i=0; i<pinsTotal; i=i+1){
pinMode(pins[i], OUTPUT);
}
}
void loop() {
for loop
*instead of using
i=i+1 you can write
i++
Exercise
Solved
46
47
Electronic Basics 2:
Abbreviation:
Electrical Resistance
Rv = Uv / I
Series resistor = Voltage across resistor / Current
Rv = Uv / I
Rv = 2.9 V / 0.02 A = 145
Series resistor
48
1 0 103
1%
1%
2%
2%
5%
5%
10%
10%
Tolerance
Tolerance
Percentage by which
resistance value may
vary.
6
8
0.1
Percentage by which
resistance value may
vary.
0.01
50
1 0 0 102
Exercise
1. What happens when you connect
the 100k resistor to the LED?
Solved!
Solved!
51
#3:
Matrix
Difficulty: hard
Fritzing diagram
Schematic
Make sure you insert the matrix in the right
direction. The notches on the edge of the
matrix must be arranged as shown in the
picture, the text is on the lower side.
Text on matrix on
this side
+
To bridge longer
distances you can
simply connect two
wires.
52
53
Code
{1,1,1,0,0,1,1,1},
{0,1,0,0,0,0,1,0},
{0,0,0,1,1,0,0,0},
{0,0,0,1,1,0,0,0},
{1,0,0,0,0,0,0,1},
{0,1,1,1,1,1,1,0},
{0,0,1,1,1,1,0,0}
};
void setup(){
When the image array at point x,y equals 1, the LED lights
up.
}
void loop () {
for (int y=0; y<8; y++){
for (int x=0; x<8; x++){
if (image[x][y]==1){
digitalWrite(columnPins[x],HIGH);
} else {
digitalWrite(columnPins[x],LOW);
}
}
Exercise
1. Change the entries in the array
image[8][8] to change the
display on the screen!
Solved
Solved
digitalWrite(rowPins[y],LOW);
delayMicroseconds(10);
digitalWrite(rowPins[y],HIGH);
}
}
Solutions:
Sketchbook/Fritzing Creator Kit/ Exercise3_1
Sketchbook/Fritzing Creator Kit/ Exercise3_2
54
55
3.
Digital Input
In this chapter:
you will build a circuit with a push-button.
you'll get to know the if statement.
you will have your fortune told.
di | gi | tal:
whatever can assume
two states, such as
on / off, true / false
in | put:
all events that can be
detected by the Arduino
board, such as pressing
a button, closing a
magnetic switch or
crossing a light gate.
#4:
Flip Flop
Difficulty: medium
Button
A push-button (as
opposed to a switch)
closes an electrical
circuit as long as you
press it. When you
stop pressing it, the
circuit opens again.
Schematic
58
59
Code
int buttonPin=2;
int greenLED=9;
if statement
int redLED=10;
void setup(){
pinMode(buttonPin, INPUT);
pinMode(greenLED, OUTPUT);
pinMode(redLED, OUTPUT);
}
void loop(){
if (digitalRead(buttonPin)==LOW){
digitalWrite(greenLED, HIGH);
digitalWrite(redLED, LOW);
} else {
digitalWrite(greenLED, LOW);
digitalWrite(redLED, HIGH);
}
}
Exercise
1. Write a program in which you
can switch the LEDs on and off
without having to keep the button
pressed.
Solved
Solution:
Sketchbook/Fritzing Creator Kit/ Exercise4_1
60
61
#5:
Fortuneteller
Difficulty: medium
Schematic
63
Code
randomSeed
This command initializes the random
function. Go here for more information:
http://arduino.cc/en/Reference/RandomSeed
random
void loop() {
if (digitalRead(tiltPin)==HIGH){
for (int i=0; i<5; i=i+1){
digitalWrite(pins[i],LOW);
}
int myRandom=random(0,5);
digitalWrite(pins[myRandom],HIGH);
delay(20);
}
}
64
65
4. Analog
Output
In this chapter:
you will dim an LED through a PWM channel.
you will build a night light.
you will get to know the transistor.
ana | log :
whatever can assume
a variety of different
states, such as pressure,
brightness, temperature
or angle of rotation
out|put:
in the Arduino world,
whatever can be
turned on or off by a
microcontroller, such as
LEDs, motors, magnets,
light bulbs or speakers
#6:
Fading
Difficulty: easy
Schematic
68
69
Code
int ledPin = 9;
void setup()
pinMode(ledPin, OUTPUT);
}
void loop(){
for (int lightValue=0; lightValue<=255; lightValue++){
analogWrite(ledPin, lightValue);
delay(2);
}
Output graph
Pin 13
5V
0V
0s
70
0,25s
0,5s
0,75s
1s
Exercise
1. Do the same in reverse with a
second LED on another pin. Make
sure it's a PWM pin.
Solved
Solution:
Sketchbook/Fritzing Creator Kit/ Exercise6_1
71
#7:
Night Light
Difficulty: medium
red
cathode (-)
green
blue
Fritzing diagram
Schematic
72
73
Electronic Basics 3:
Amplification
Fritzing diagram
Preparing a motor
cable: (1 Carefully cut
the cable insulation
with a knife and pull
it off (2), form the
wire ends by twisting
the strands (3) and
plug them into the
extension cords
(4) to connect the
motor.
2
MOSFET
Gate
Drain
Source
Schematic
74
75
Fritzing diagram
*
Integrated Circuit
Controlling one
motor
A notch or a
dot are used to identify
16 15 14 13 12 11 10
L293D
1
Fritzing diagram
Controlling two
motors (there is
only one motor in
the kit)
76
77
Code
int motor_A=6;
int motor_B=5;
int motor_Speed=3;
void setup(){
pinMode(motor_A,OUTPUT);
pinMode(motor_B,OUTPUT);
}
void loop(){
digitalWrite(motor_A,HIGH);
digitalWrite(motor_B,LOW);
for (int i=0; i<256; i+=5){
analogWrite(motor_Speed,i);
delay(20);
}
for (int i=255; i>0; i-=5){
analogWrite(motor_Speed,i);
delay(20);
}
digitalWrite(motor_A,LOW);
digitalWrite(motor_B,HIGH);
for (int i=0; i<256; i+=5){
analogWrite(motor_Speed,i);
delay(20);
}
for (int i=255; i>0; i-=5){
analogWrite(motor_Speed,i);
delay(20);
}
}
78
79
5. Analog
Input
In this chapter:
you will understand how a potentiometer
is built and how it works.
you will be introduced to a reference resistor.
ana | log :
whatever can assume
a range of different
states, such as pressure,
brightness, temperature
or angle of rotation
in | put :
external influences that
can be interpreted
by the Arduino board,
such as the angle of
a potentiometer, or
reading sensors for light,
humidity, or temperature
#8:
Potentiometer
Difficulty: medium
Fritzing diagram
Schematic
resistive element
wiper (or tap)
partial resistance 1
partial resistance 2
+5V
analog
GND
82
83
Code
int ledGreen = 6;
int ledRed = 5;
int potPin = 0;
void setup(){
}
void loop () {
int value = analogRead(potPin);
int redValue = map(value,0,1023,0,255);
int greenValue = map(value,0,1023,255,0);
analogWrite(ledRed,redValue);
map
The map() command converts an incoming value from
one value range to another. In this case, the value range
of the analog input (0 to 1023) is converted to the range
of the analog output (0 to 255).
analogWrite(ledGreen,greenValue);
}
84
85
Electronic Basics 4:
Reference Resistor
The analog input on the Arduino board converts a voltage
between 0 and 5V to a value from 0 to 1023 (10-bit
analog-to-digital converter). To be able to measure this
voltage, a reference resistor is needed for sensors such
as photoresistors. The reference resistor is connected
in series with the sensor. One side of the circuit is
connected to GND and the other side to +5V. The line
that connects both is hooked to the analog input.
in
in V
I in A
10A
COM
Fritzing diagram
Connecting a potentiometer.
An E-series is
a mathematical
sequence of
calculated values.
*
Fritzing diagram
Connecting a
photoresistor and
its corresponding
reference resistor.
You can either try it out or calculate the value for the
reference resistor. To calculate it, you have to measure
the minimum and maximum resistance with a meter.
For example, if you want to use a photoresistor, then
measure its resistance in both its darkest and brightest
situations. Now add both values and divide the sum by
two. The result is the ideal reference resistor value. Since
resistors aren't available with every value (E series*),
simply use the value closest to the one you need.
Formula
Rref =
86
(Rmin + Rmax) / 2
87
#9:
Difficulty: medium
Serial interface
To find out the LDR's
resistance values you can
use the serial port.
The serial port provides
a data link between
the Arduino and your
computer. It is initialised in
setup with the command
Fritzing diagram
Schematic
Arduino software
serial monitor
88
89
long
Code
int lightsensorPin = 0;
int headlightsPin = 2;
int switchingthreshold= 300;
int wait = 1000;
long timer = 0;
int value;
void setup(){
Serial.begin(9600);
pinMode(headlightsPin,OUTPUT);
}
Serial.begin(baud);
starts the serial communication.
Serial.println(daten);
sends the contents of the variable value to the serial
port.
timer
void loop(){
value = analogRead(lightsensorPin);
Serial.println(value);
if (value<switchingthreshold){
timer=millis();
digitalWrite(headlightsPin, HIGH);
} else if (millis()>wait+timer){
digitalWrite(headlightsPin, LOW);
}
delay(10);
}
90
91
#10:
Ping Pong
Difficulty: hard
You can also create a simple but exciting Ping Pong game
with the Arduino. The LED display is connected as in the
matrix example. In this case, two potentiometers are
added as game controllers.
Fritzing diagram
Schematic
Text on matrix on
this side.
+
To bridge longer
distances you can
simply connect two
wires.
92
93
6. Servomotor,
Sound
In this chapter:
you will learn all about the structure
and functions of a servomotor.
you will build a robot.
Ser|vo|mo|tor:
converts electrical
signals into motion
can be rotated
from 0 180
Sound:
a complex acoustic event
in the Arduino
environment, the
conversion of
electrical signals into
mechanical vibrations
#11:
Servo
Difficulty: medium
Fritzing diagram
potentiometer to
control the angle
gear
connection cable
Schematic
97
Library
Code
#include <Servo.h>
Servo myservo;
int potpin = 0;
int val;
void setup()
{
myservo.attach(9);
}
void loop()
{
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}
98
99
#12:
Synthesizer
Difficulty: medium
Fritzing diagram
Schematic
100
101
Code
int buzzerPin = 8;
int potPin1 = 0;
int potPin2 = 1;
int toneHeight, lfo;
void setup() {
pinMode(buzzerPin, OUTPUT);
}
void play(int myPitchLevel) {
digitalWrite(buzzerPin, HIGH);
delayMicroseconds(myPitchLevel);
digitalWrite(buzzerPin, LOW);
delayMicroseconds(myPitchLevel);
}
void loop() {
toneHeight=analogRead(potPin1);
lfo=analogRead(potPin2);
for (int i = (lfo/10); i > 0; i--) {
play(toneHeight);
}
delayMicroseconds(lfo);
for (int i = 0; i < lfo/10; i++) {
play(toneHeight);
}
}
102
103
Battery
Fritzing diagram
Fritzing diagram
104
105
7. Arduino
meets
Processing
Ar | du | i | no:
Physical Computing
Platform
lets electronic projects
come alive
In this chapter:
you will control an LED with the
Processing software.
you will use a potentiometer to draw
on a virtual magic drawing board.
you will build a dinosaur that notifies
you of incoming Twitter news.
Firmata
Installing Processing
We tested the
Firmata support for
Processing 1.5.1 and
2.1 at the time of
printing this booklet
Processing library:
Firmata
Arduino code:
Examples/Firmata/
StandardFirmata
Processing code:
e.g. Processing/RGB
RX0
10
11
12
13
DIGITAL (PWM= )
ICSP2
TX0
RESET
GND
Firmata
AREF
ON
TM
Arduino
Processing Software
Arduino board
A5
A4
A3
A2
A0
ANALOG IN
A1
VIN
GND
GND
5V
POWER
3V3
RESET
IOREF
ICSP
108
109
#13:
Processing RGB
Datei: Processing_RGB.fzz
Code: Beispiele/Firmata/StandardFirmata
Processing code: Processing/RGB
Fritzing diagram
Screenshot
Processing
Processing
The Processing
software probably
looks very familiar
to you. The Arduino
software is modelled
after it.
110
111
#14:
Magic Board
Difficulty: medium
Fritzing diagram
Screenshot Processing
113
#15:
TwitterSaurus
Difficulty: hard
Fritzing diagram
8.
From
prototype to
product
In this chapter:
you will learn about the usefulness of
PCBs for you and your projects.
you will develop your first circuit layout.
pro | to | type:
model created from
a project idea
usually unique
pro | duct:
finished result
project that can
be produced on
a large-scale
Fritzing
Our "Fritzing Fab service (http://fab.fritzing.org) offers
you the possibility to have your PCBs produced either
individually or in larger quantities. This way, you can
easily transform your project's breadboard-based
prototype into a professional product at a reasonable
price.
Screenshot of the
free Fritzing software
118
119
PCBs
components
silk screen
position and names of
components,
info or decoration
solder mask
determines the areas to be
tinned for soldering of
components
PCB layout
PCB production
assembly
vias
connection between upper and
lower copper layer
Circuit board
produced with
Fritzing Fab (see
page 125)
carrier material
such as fiber reinforced
plastic
copper layer (back side)
121
PCB layout
It is very simple to layout a PCB with Fritzing. Let's start
with the Fortuneteller example. First, change to the PCB
view: View > Show Circuit Board.
Fritzing diagram
123
After this, you can still add logos and text to the board.
You can find these elements in the components library.
124
125
By selecting Routing > Ground Fill from the menu you can fill
the blank areas with copper. The ground fill is connected
with GND on the PCB (this reduces electromagnetic
interference on the board), whereas the copper fill stays
electrically isolated from the rest of the circuit.
Fritzing Fab
Fritzing Fab (fab.fritzing.org) is our production service
for printed circuit boards. We have them produced in
a professional PCB factory. The number of parameters
influencing PCB production is quite large Fritzing
automatically chooses a good set of defaults. To
see what the PCB would cost you, simply click on
Routing>Fritzing Fab Quote in the Fritzing software.
Finally, the components still have to be soldered.
Use the Design Rules Check (DRC) from the Routing menu
to check the layout at the end. It will find errors such as
trace overlaps.
Finished board
126
127
128
THT component
(resistor)
solder joint
metal
lead
1
SMD component
(resistor)
VIA
trace
129
Troubleshooting
Goal achieved!
130
131
Acknowledgements
Imprint
Stefan Hermann
Design &
Typesetting
Christian Ivanis
www.fritzing.org/forum/creatorkit.
Fonts
OCR A Tribute,
change.
Droid Sans
Fritzing
Illustrations
a business division of
Stefan Hermann
Fabian Althaus
IXDS GmbH
Dirk v. Oosterbosch
Paul-Lincke-Ufer 39/40
Fritzing Software
10999 Berlin
District Court
Fritzing Team
Berlin-Charlottenburg
Amgad Keshki
Amin Zayani
Andr Knrig
www.fritzing.org
Anna Heib
Christin Rothe
Fritzing is a trademark of
Daniel Clerc
Friends-of-Fritzing e.V.
David Elsche
Amtsgericht
Fabian Althaus
Berlin-Charlottenburg
Hans Kadel
VR-Nr: V30985B
Jonathan Cohen
Monique Mathieu
cc - by - nc - nd
Niklas Dnger
2014 Fritzing
Reto Wettach
And I thank you! You've bought the kit and taken your first steps
with it. Onward and upward!
132
Sevgi Ulas
Stefan Hermann
Made with
Friends of
133
14
20
Fr
it
z
g.
or
g
in