Klick

Transcription

Klick
Dokumentation
autonomes Erkundungsgerät
Argus
Modul TA.BA PREN2
vorgelegt von
Team 8
Christian Bontekoe
Informatik
Hansueli Burri
Informatik
Silvan Demmel
Wirtschaftsingenieur | Innovation
Severin Frank
Maschinentechnik
Mathias Frei
Maschinentechnik
Nicolas Lehner
Maschinentechnik
Martin Mägerlein
Tobias Plüss
Wirtschaftsingenieur | Innovation
Elektrotechnik
am
17. Juni 2013
Dozenten:
Prof. Jürg Habegger
Dr. Christoph Imboden
Dr. Thomas Koller
Prof. Ernst Lüthi
Dr. Markus Thalmann
Maschinenbau
Wirtschaftsingenieur | Innovation
Informatik
Modulverantwortlicher
Elektrotechnik
Redlichkeitserklärung
Hiermit versichern die Autoren, dass die vorliegende Arbeit selbständig verfasst, die verwendeten
Quellen und Hilfsmittel vollständig angegeben und diejenigen Stellen der Arbeit – einschliesslich
Tabellen, Diagrammen und Abbildungen –, die anderen Werken oder dem Internet im Wortlaut
oder dem Sinn nach entnommen sind, auf jeden Fall unter Angabe der Quelle als Entlehnung
kenntlich gemacht worden sind, und dass diese Arbeit in gleicher oder ähnlicher Form noch nicht
vorgelegt wurde. Sofern nicht anders vermerkt, sind Grafiken, Fotos, Tabellen usw. eigene Werke;
die vorliegende Arbeit ist auf Basis einer LATEX-Vorlage aus [7] erstellt worden.
Horw,
den 17. Juni 2013
Die Autoren
Kurzfassung
Im Rahmen der Produktentwicklungsmodule PREN1 und PREN2 an der Hochschule Luzern Technik
& Architektur ist innerhalb eines Jahres das Konzept Argus“ zur Erkundung und Erfassung einer
”
Information (QR-Code) auf einem vordefinierten Weg entstanden. Bestehend aus einem Mobil,
einer visuellen Datenverarbeitung und einer externen Recheneinheit, wird das Ziel realisiert, nach
einem Startsignal möglichst schnell einen hinterlegten QR-Code anzufahren, auszulesen und über
das Internet neue Koordinaten zu bekommen, welche wiederum präzise angefahren werden.
Bei der Findung und Ausarbeitung der optimalsten Lösung der Aufgabenstellung, ist ein Team aus
einem Elektrotechniker (Tobias Plüss), zwei Informatikern (Hansuli Burri, Christian Bontekoe), zwei
Wirtschaftsingenieuren (Silvan Demmel, Martin Mägerlein) und drei Maschinentechnikern (Mathias
Frei, Nicolas Lehner, Severin Frank) von den Modulverantwortlichen zusammengesetzt worden. Das
verfügbare Budget wurde durch mit spezielle Einzelanfertigung und der Einzelbesorgungen optimal
ausgereizt.
Das primäre Ziel des Teams ist es, die Aufgabe in möglichst wenig Zeit zu bewältigen. Sämtliche
Entscheidungen in der Entwicklung und Gestaltung sind diesem Ziel untergeordnet. So wurde ein
spezieller Sensor zum Auslesen des Codes verwendet, die Grundform ist keilförmig ausgefallen um
sich ggf. an Hindernissen vorbei zu schieben und der Antrieb besteht aus zwei leistungsstarken 12 V
EC-Motoren, womit die hinteren zwei Räder unabhängig voneinander angesteuert werden können.
Das Resultat ist eine Kamera die einerseits den Parcours aufnimmt und andererseits das Fahrzeug.
Die Software registriert den Parcours, berechnet die Wegpunkte und erkennt das Mobil mit Hilfe
zweier angebrachter Leuchtflächen. Via Bluetooth werden Befehle gesendet und ausgeführt. Wird
ein Code eingescannt, wird dieser ebenfalls via Bluetooth an die externe Einheit gesendet, welche
die Informationen im Internet abruft und einen neuen Weg definiert. Hindernisse auf dem Weg
werden erkannt und umfahren. Über eine App auf dem Smartphone kann der Status abgerufen
werden und anzufahrende Ziele werden angezeigt.
Dieses Konzept kann überall dort eingesetzt werden, wo Prozesse im Sinne von Botengängen“
”
ausgeführt und visuell überwacht werden können. Mit einer leichten Modifizierung kann die visuelle
Einheit durch GPS ersetzt werden. So können auf einem Flugplatz personelle, materielle und
letztendlich finanzielle Ressourcen durch den automatisierten Prozess eingespart werden. Durch
die Automatisierung sinken die Gelegenheiten für menschliche Fehler. Da sich das Konzept aus
mehreren Bestandteilen zusammensetzt, sind auch Teilanwendungen denkbar, die wiederum in
andere Systeme integriert werden.
Abstract
Within product development lectures PREN1 and PREN2 conducted by the Lucerne University
of Applied Science and Art the concept Argus“ is invented during one year. A vehicle including
”
code sensor, camera and external data centre enable a concept to explore and recognise data in a
predefined path. The given target is to pass this path in the shortest time, scan a QR-code, get
new target points and move there directly.
The development is driven by one electrical engineer (Tobias Plüss), two informatics engineers
(Hansuli Burri, Christian Bontekoe), two business engineers (Silvan Demmel, Martin Mägerlein)
and three mechanical engineers (Mathias Frei, Nicolas Lehner, Severin Frank). The team is set by
the responsible lectures. To achieve an optimal result, customised parts are produced and single
professional parts are bought in use of mostly all financial resources.
The primary target of the team is to drive the given path in the shortest time. Every function is
related to this task. Therefore a special sensor to scan the code is used. Two 12 V EC-motors steer
the back wheels individually and enable a velocity of 5 ms . The general shape of the body is like a
triangle to pass barriers easier.
The result of the development is a concept out of one vehicle, an external camera and a data centre.
The Software recognise the edges of the route and the vehicle by the use of two bright colour fields.
The path will be evaluated and positions and commands will be sent via Bluetooth to the vehicle. Is
this vehicle scanning information, these will be sent to the data centre, which get more Information
at the Internet. New commands will be sent to the vehicle. In addition barriers will be detected
and circumnavigated. The current status is observed via smartphone application.
Argus can be used in every environment, which is controlled by camera operation. Within a further
modification, GPS can be used instead of camera operation. It replaces human at processes, which
can be done driven. For instance at an airport human, material and financial resources can be saved
by automated processes. As well single parts out of the concept can be integrated in other systems.
Vorwort
Danksagung
Folgende Personen haben etwas zu dem Projekt beigetragen und die Autoren möchten daher an
dieser Stelle ausdrücklichen Dank aussprechen an: Dr. Markus Thalmann von der Hochschule Luzern
für die Betreuung. Josua Jöster von der HaslerRail AG für das Sponsoring der Akkus. Bruno Wenger
von der Siemens AG für das Probelesen der Arbeit und die hilfreichen Verbesserungsvorschläge.
Beatrice Demmel und Thomas Müller von der DIRECT MAIL HOUSE AG für die Unterstützung
beim Erstellen und Drucken des Flyers.
Horw,
den 17. Juni 2013
Die Autoren
Inhaltsverzeichnis
Vorwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
Teil I Zielsetzung und Lösungsbewertung
1
Einführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Teil II Produktbeschreibung
2
Mechanik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 Chassis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.0.1 Vorderradaufhängung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.0.2 Hinterradaufhängung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.0.3 Getriebe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.0.4 Montage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Montage der elektronischen Komponenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Erkennungsmerkmale für die Positionsbestimmung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
21
21
21
22
22
23
23
3
Bordcomputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1 Mechanischer Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Elektronischer Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1 Stromversorgung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.2 Reset und Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.3 Beschaltung des Mikroprozessors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.3.1 Anzeigen auf dem Bordcomputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
27
27
28
28
30
31
4
Software des Bordcomputers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 Drehzahlregelung der Motoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 Positionsberechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.2 Positionsregelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.3 Verifikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1 Zentraler Kommunikations-Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.2 Interrupt des Bluetooth-Moduls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.3 Empfangs-Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.4 Sende-Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.5 Telegramm-Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
33
35
35
37
39
41
41
42
43
44
45
12
Inhaltsverzeichnis
4.3.5.1
4.3.5.2
4.3.5.3
4.3.5.4
4.3.5.5
Positions-Kommando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zustandsmeldung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Gelesener Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bestätigung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Nächster Wegpunkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
46
47
47
47
5
Software der Basiseinheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1 Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Struktureller Aufbau der Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.1 BluetoothModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.2 BusinessLogic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.3 UserInterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 VideoModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 Lokalisierung des Fahrzeugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4 WebAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.0.1 ArgusApp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.0.2 QRCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
49
49
49
50
51
52
52
54
54
54
6
Smartphone-App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1 Beschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Aufruf der Webapplikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Aufbau der Webapplikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.1 Übermittlung der Daten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.2 Aktualisierung der Daten in der Webapplikation . . . . . . . . . . . . . . . . . . . . . . . . .
55
55
55
55
56
57
7
Gestaltungskonzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1 Analysephase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Konzpeptphase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3 Entwurfsphase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4 Realisierungsphase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
59
60
60
60
Teil III Anwenderhinweise
8
Inbetriebnahme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.1 Benötigtes Material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2 Aufbau der Bluetooth-Verbindung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3 Einrichten der Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3.1 Ausrichten der Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3.2 Konfiguration der Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3.3 Referenzpunkte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3.4 Farbmarkierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3.5 Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.4 Start des Fahrzeugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
67
67
67
68
68
68
69
70
70
9
Störungsbehebung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Teil IV Marketing
10 Messestand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
10.1 Konzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
10.2 Benötigte Materialien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Inhaltsverzeichnis
13
11 Produktflyer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Teil V Schlussdiskussion
12 Entwicklungs- und Materialkosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
13 Erfahrungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
14 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
15 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Teil VI Anhang
A
Aufgabenstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
B
Projektplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
C
Mechanische Fertigungsunterlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Gesamtansicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufhängung links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufhängung rechts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Getriebeachse 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Getriebeachse 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Getriebeplatte links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Getriebeplatte mitte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Getriebeplatte rechts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Grundpatte oben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Grundpatte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mitnehmer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Querlenker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Gelenk für Vorderrad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Radachse für Vorderrad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Radgabel für Vorderrad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
105
105
107
108
109
110
111
112
113
114
115
116
117
118
119
120
D
Form für die Karosserie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Design-Inspirationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Oben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Seite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
121
121
124
125
E
Fertigungsunterlagen des Bordcomputers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bestückungsplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stückliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
127
127
133
135
F
Designprozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
G
Dateistruktur auf der CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Tabellenverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
14
Inhaltsverzeichnis
Abbildungsverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Listing-Verzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Sachverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Teil I
Zielsetzung und Lösungsbewertung
1
Einführung
Im Herbstsemester 2012 und Frühlingssemester 2013 wird im Rahmen der Module Produktenwicklung 1 und 2 eine interdisziplinäre Projektarbeit durchgeführt. Die zufällig zusammengestellten
Teams aus Studierenden der Hochschule Luzern Technik & Architektur aus den Studiengängen
Maschinentechnik, Elektrotechnik, Informatik und Wirtschaftsingenieur | Innovation bekommen
dabei eine vom Dozententeam formulierte Aufgabenstellung. Das Dozententeam beinhaltet Fachspezialisten aller technischen Studienrichtungen. Das vorliegende Dokument ist das Ergebnis dieser
beiden Module mit Fokus auf die Umsetzung des Konzepts, welches den ersten Teil der Arbeit
bildet.
Die Aufgabenstellung – siehe hierzu Anhang A – besteht darin, ein Gerät zu entwickeln, das sich
autonom auf einem vorgegebenen Parcours bewegt. An einer freistehenden Wand auf dem Parcours
hängt ein QR-Code. Diesen gilt es zu finden und auszulesen. Der QR-Code verweist auf eine Website,
aus welcher eine Nummer hervor geht, die eines der 5 nummerierten Parkfelder repräsentiert. Das
Gerät muss danach gemäss Nummer auf dem entsprechenden Feld parkiert werden.
Im ersten Teil – also in Produktenwicklung 1 – wurden verschiedenste Lösungsansätze geprüft und
bewertet und ein für die Bewältigung der Aufgabenstellung optimales Gesamtkonzept ausgearbeitet.
Die wesentliche Aufgabe in Produktenwicklung 2 besteht darin, dieses Gesamtkonzept umzusetzen.
Des Weiteren sollen potentielle Interessenten an einer abschliessenden Erfindermesse angesprochen
und vom entwickelten System überzeugt werden. Um dies zu erreichen, sind ein Messestand sowie
ein Flyer zu erstellen.
Die Arbeit folgt dem Modell wissenschaftlicher Arbeiten und ist dementsprechend gegliedert. Im
Hauptteil wird die Konzeptlösung mit dem Funktionsmuster verglichen und bewertet. Die einzelnen
Komponenten des Fahrzeugs werden beschrieben und die Funktionalität anhand von Ablaufdiagrammen erläutert. Auch Softwaresysteme, Schnittstellenbeschreibungen sowie eine Bedienungsanleitung
des Funktionsmusters sind in diesem Teil zu finden. Überdies sind ebenfalls das Konzept für den
Messestand an der Erfindermesse sowie der Produktflyer zu finden. Das erfolgreiche Projektmanagement mit Punkten wie Entwicklungskosten, Projektplanung und Risikoanalysen bilden mit
Erfahrungen, offenen Punkten und einem allgemeinen Ausblick den Schluss dieser Dokumentation.
Teil II
Produktbeschreibung
2
Mechanik
2.1 Chassis
Für sämtliche mechanischen Teile sind die Fertigungsunterlagen in Anhang C ersichtlich. Nachfolgend
werden die einzelnen Komponenten als Explosionszeichnungen dargestellt, um am Schluss die
Montage der Komponenten zu verdeutlichen.
2.1.0.1 Vorderradaufhängung
Wie das Vorderrad konstruiert ist, wird aus der Explosionszeichnung in Abbildung 2.1 ersichtlich.
Die Vorderradaufhängung besteht im Wesentlichen aus dem Rad selbst, sowie der Radgabel und
dem dazugehörigen Stossdämpfer.
Abb. 2.1. Explosionszeichnung der Vorderradaufhängung
2.1.0.2 Hinterradaufhängung
Abbildung 2.2 zeigt, wie die Hinterräder am Chassis befestigt werden. Ersichtlich sind in der
Explosionszeichnung auch wieder im Wesentlichen die Querlenker, sowie die Federung und die
Achse, an der das Rad befestigt wird.
22
2 Mechanik
Abb. 2.2. Explosionszeichnung der Hinterradaufhängung
2.1.0.3 Getriebe
Das Getriebe ist in Abbildung 2.3 ersichtlich. Damit die Achsen, auf denen die Zahnräder montiert
werden, ausreichend geführt sind, ist in der Mitte des Chassis ein Aluminiumblock mit entsprechenden Bohrungen und Kugellagern vorgesehen. Die grossen Zahnräder sind aus Kunststoff, während
die Ritzel für die Motoren aus Messing gefertigt sein müssen, da sich bei Tests gezeigt hat, dass
Kunststoffritzel dem Anfahrmoment nicht zu widerstehen vermögen.
Abb. 2.3. Explosionszeichnung des Getriebes
2.1.0.4 Montage
Wie die zuvor erwähnten Komponenten nun zusammengesetzt werden, geht aus Abbildung 2.4
hervor. Abbildung 2.5 zeigt die Ansicht des komplett montierten Fahrzeugs, jedoch ohne die
aufgesetzte Karosserie.
2.2 Erkennungsmerkmale für die Positionsbestimmung
23
Abb. 2.4. Explosionszeichnung des gesamten Fahrzeugs
2.1.1 Montage der elektronischen Komponenten
Die elektronischen Komponenten werden gemäss Abbildung 2.6 auf dem Chassis montiert. Teilbild
(a) zeigt die Montage der magnetischen Drehgeber. Diese werden auf eine kleine Adapterplatine
gelötet und mit Araldit auf ein Stahlblech geklebt. Das Stahlblech minimiert die magnetische
Kopplung zwischen den beiden Drehgebern, sodass sie sich nicht gegenseitig beeinflussen können.
Von den Adapterplatinen werden dann Litzen zum Bordcomputer geführt.
In Teilbild (a) ist zudem noch die Büchse (schwarzes Teil vor dem Ritzel) ersichtlich, die dafür
sorgt, dass der Magnet genau auf der Motorwelle zentriert ist. Ist der Magnet nicht genau mittig
platziert, eiert“ er also, dann werden auch die Messwerte der Drehgeber dadurch unbrauchbar.
”
Die Büchse wurde aus Kunststoff gefertigt und mit entsprechenden Bohrungen für den Magneten
und die Welle des Motors versehen; der Magnet klebt aufgrund der stählernen Welle selbständig
in dieser Konstruktion. Teilbild (b) in Abbildung 2.6 zeigt die Montage des Bordcomputers selbst
und des Sensors für den QR-Code. Die Platine wird mittels Distanzbolzen am dafür vorgesehenen
Platz auf dem Chassis montiert. Auf der rechten Seite des Fahrzeugs wird die Platine mit simplen
M3-Sicherungsschrauben befestigt; auf der linken Seite, wo der Sensor montiert wird, ist jedoch eine
etwas modifizierte Konstruktion nötig: Zwei M3-Gewindestangen dienen als Führung bzw. Halterung
für den Sensor. Mittels Muttern wird einerseits die Hauptplatine festgehalten; andererseits kann
mit zwei weiteren Muttern die Höhe des Sensors optimal eingestellt und mit Kontermuttern fixiert
werden. Der Sensor selbst sitzt auf einer kleinen Hartpapier-Platte, welche von einer handelsüblichen
Laborplatine abgetrennt wurde. Die Verbindung vom Sensor zur Hauptplatine erfolgt mit einem
ausreichend langen FFC-Kabel, das zudem über Stecker verfügt sodass der Sensor bei Bedarf leicht
demontiert werden kann.
2.2 Erkennungsmerkmale für die Positionsbestimmung
Damit die Basiseinheit mittels Kamera und Bildverarbeitung das Fahrzeug erkennen kann, werden
auf dessen Oberseite zwei farbige Markierungen angebracht. Empirische Tests haben gezeigt, dass
sich hierfür die Farben gelb und grün am besten eignen.
Damit die Farben der Markierungen gleichmässig und vom Umgebungslicht unabhängig sind, werden
zwei bemalte, von unten beleuchtete Styropor-Halbkugeln verwendet, wie eine in Abbildung 2.7
24
2 Mechanik
(a) Ansicht von links
(b) Ansicht von rechts
Abb. 2.5. Ansicht des Fahrzeugs bei abmontierter Karosserie
dargestellt ist. Die Beleuchtung sorgt dann dafür, dass die Kugeln sowohl im Schatten, wie auch im
Aussen- oder Kunstlicht annähernd dieselbe Farbe haben. Durch die runde Form und das matte
Styropor-Material werden über dies Reflexionen, welche die Farbe ebenfalls verfälschen könnten,
auf ein Minimum reduziert. Die Beleuchtung erfolgt mit entsprechend zurecht geschnittenen,
selbstklebenden RGB-LED-Streifen, deren Farbe auf diejenige der jeweiligen Markierung abgestimmt
wird.
2.2 Erkennungsmerkmale für die Positionsbestimmung
(a) Drehgeber mit Magneten
(b) Sensor für QR-Code
Abb. 2.6. Montage der elektronischen Komponenten
Abb. 2.7. Beispielhafte Styropor-Halbkugel als Farbmarkierung
25
3
Bordcomputer
3.1 Mechanischer Aufbau
In Anhang E ab Seite 127 sind die Fertigungsunterlagen des Bordcomputers SR4071 ersichtlich.
Er wird auf einer 4lagigen Multilayer-Platine aufgebaut; auf Seite 133 ist der detailierte Aufbau
ersichtlich.
Die Platine hat die Abmessungen 80 mm × 80 mm und weist in den vier Ecken jeweils eine Bohrung
für eine M3-Befestigungsschraube auf, sodass sie sehr einfach am dafür vorgesehenen Platz auf dem
Chassis montiert werden kann.
Entgegen der früheren Idee, das Bluetooth-Modul wie eine gewöhnliche SMT-Komponente liegend
zu bestücken, wurde aus zweierlei Gründen darauf verzichtet. Einerseits aus Platzmangel, da die
restliche Elektronik doch einiges an Platz beansprucht, als auch aus Gründen der elektromagnetischen
Verträglichkeit (EMV) – das Bluetooth-Modul könnte einerseits den Mikroprozessor stören, oder
selbst gestört werden durch die Motortreiber. Aufgrund dieser Überlegungen ist ein Steckplatz
vorgesehen, der es erlaubt, das Bluetooth-Modul um 90◦ abgewinkelt zu montieren, also stehend.
Dadurch wird der Abstand zu den übrigen Komponenten maximiert.
Abbildung 3.1 zeigt die Gesamtansicht der Leiterplatte des SR407; in Abbildung 3.2 sind die Oberund die Unterseite der Leiterplatte in Originalgrösse dargestellt.
3.2 Elektronischer Aufbau
Der Bordcomputer beinhaltet alle wichtigen, zum Betrieb des Fahrzeugs nötigen Komponenten:
• zwei Motortreiber (Endstufen) für die Ansteuerung der Motoren
• Anschlüsse für die Drehgeber und das Bluetooth-Modul
• einen Anschluss für den QR-Code-Sensor
Über dies sind noch folgende Komponenten darauf enthalten:
• Stromversorgung 3.3 V für die Logik und den Mikroprozessor
• eine Akkuüberwachung (Spannung)
• mehrere LEDs für Testzwecke und zur Anzeige der Betriebszustände des SR407
Optional kann noch folgendes nachgerüstet werden:
1
Steuerrechner 407, weil er auf dem Mikroprozessor STM32F407 basiert
28
3 Bordcomputer
Abb. 3.1. Ansicht des Bordcomputers.
• eine Strommessung für die Strangströme der Motoren – diese wird für die feldorientierte Regelung
benötigt
• eine serielle Schnittstelle (RS-232) für Testzwecke
• ein Buzzer zur Ausgabe akustischer Meldungen
Im folgenden Abschnitt soll nun kurz auf die elektronischen Komponenten und deren Zusammenspiel
eingegangen werden.
3.2.1 Stromversorgung
Die Stromversorgung ist mit einem integrierten Schaltregler TSR1-2433 realisiert. Dieser liefert
ausgangsseitig 3.3 V bei einem maximalen Strom von 1 A, was für den Betrieb der Logik und des
Mikroprozessors ausreichend ist.
Für den Betrieb der Motortreiber wird eine zusätzliche Hilfsspannung von nominal 12 V benötigt. Da
zudem auch die Hallsensoren der Motoren eine Betriebsspannung zwischen 5 V und 18 V benötigen,
wurde noch ein zweiter Schaltregler vorgesehen, der eine Spannung von 12 V liefert. Aus dieser
Spannung werden dann die Motortreiber und die Hallsensoren versorgt.
Für den ADC muss eine Referenzspannung erzeugt werden. Hierfür kommen Referenzdioden des
Typs LM4040 zur Anwendung, die eine Spannung von 2.5 V liefern. Die Betriebsspannug des ADC
wird mit einem RC-Filter aus den 3.3 V gewonnen, um Störeinflüsse zu minimieren.
3.2.2 Reset und Debug
Damit der Mikroprozessor beim Einschalten in einen definierten Zustand versetzt wird, ist eine
einfache Reset-Beschaltung mit einem RC-Glied und einem Taster vorhanden. Dies ist möglich, da
der RESET-Eingang des Mikroprozessors Schmitt-Trigger-Charakteristik hat. Dank dem Taster
3.2 Elektronischer Aufbau
29
(a) Oberseite
(b) Unterseite
Abb. 3.2. Leiterplatte des SR407 in Originalgrösse
S1 kann der Mikroprozessor auch händisch jederzeit zurückgesetzt werden, was sich besonders für
Testzwecke oder bei Fehlern eignet.
Des Weiteren ist die Debug-Schnittstelle JTAG des Mikroprozessors auf eine Stiftleiste herausgeführt.
Dies ermöglicht, jederzeit neue Firmware auf den Bordcomputer herunter zu laden und diese zu
debuggen. Für anderweitige Testzwecke (z.B. Ausgabe von Text und dergleichen) ist eine serielle
Schnittstelle vorgesehen, die dank dem optional bestückbaren Pegelwandler direkt mit einem PC
verbunden werden kann. Auch mehrere LEDs stehen zur Ausgabe von Betriebszuständen o.ä. zur
Verfügung. Bei der JTAG-Schnittstelle muss noch beachtet werden, dass zuerst der QR-CodeSensor entfernt werden muss durch lösen der oberen Kontermutter, da der Stecker ansonsten nicht
30
3 Bordcomputer
zugänglich ist. I.d.R. sollte dies allerdings kein Problem darstellen, da man beim fertigen Gerät
prinzipiell nicht mehr auf die Debug-Schnittstelle zugreifen muss.
3.2.3 Beschaltung des Mikroprozessors
Die Pinbelegung des Mikroprozessors musste leicht angepasst werden. Daher ist sie in Tabelle 3.1
nochmals wiedergegeben. Einige Signale mussten anderen Pins zugeordnet werden; über dies sind
noch weitere Signale dazu dazu gekommen.
Port
Pin
Nummer
Modul
Typ
Zweck
A
PA0
23
Timer 2
DE1
Drehgeber rechts Kanal A
PA1
24
Timer 2
DE
Drehgeber rechts Kanal B
B
C
2
Hallsensor 1 links
PA2
25
GPIO
DA
PA3
26
GPIO
DA
Hallsensor 2 links
PA4
29
GPIO
DA
Hallsensor 3 links
PA6
31
Timer 3
DE
Drehgeber links Kanal A
PA7
32
Timer 3
DE
Drehgeber links Kanal B
PA8
67
Timer 1
DA
PWM Phase U links
PA9
68
Timer 1
DA
PWM Phase V links
PA10
69
Timer 1
DA
PWM Phase W links
PB0
35
ADC?
DA
Überwachung Batteriespanung
PB5
91
GPIO
DA
LV3000 TRIG
PB6
92
UART1
DA
LV3000 TX
PB7
93
UART1
DE
LV3000 RX
PB8
GPIO
DA
LV3000 RESET
PB9
Timer 11
DA
Ansteuerung für Buzzer
PB14
53
GPIO
DE
Motortreiber FAULT
PB15
54
GPIO
DE
Motortreiber OTW
PC0
15
ADC1
AE3
Strom Phase U links
PC1
16
ADC1
AE
Strom Phase V links
PC2
17
ADC1
AE
Strom Phase W links
PC3
18
ADC2
AE
Strom Phase U rechts
PC4
33
ADC2
AE
Strom Phase V rechts
PC5
34
ADC2
AE
Strom Phase W rechts
PC6
63
Timer 8
DA
PWM Phase U rechts
PC7
64
Timer 8
DA
PWM Phase V rechts
PC8
65
Timer 8
DA
PWM Phase W rechts
PC9
66
GPIO
DA
Phase U links Treiber RESET
PC10
78
GPIO
DA
Phase V links Treiber RESET
Fortsetzung auf nächster Seite
3.2 Elektronischer Aufbau
Port
D
E
Pin
Nummer
Modul
Typ
Zweck
PC11
79
GPIO
DA
Phase W links Treiber RESET
PC12
80
GPIO
DA
Phase U rechts Treiber RESET
PC13
7
GPIO
DA
Phase V rechts Treiber RESET
PC14
8
GPIO
DA
Phase W rechts Treiber RESET
PC15
9
GPIO
DA
Debug-LED
PD0
81
EXTI0
DE
Interrupt 0 – Hallsensor links XOR
PD1
82
EXTI1
DE
Interrupt 1 – Hallsensor rechts XOR
PD2
83
GPIO
DA
Hallsensor 1 rechts
PD3
84
GPIO
DA
Hallsensor 2 rechts
PD4
85
GPIO
DA
Hallsensor 3 rechts
PD5
UART2
DA
Debug-Interface TX
PD6
UART2
DE
Debug-Interface RX
PD8
55
UART3
DA
Bluetooth TX
PD9
56
UART3
DE
Bluetooth RX
PD10
36
GPIO
DA
Bluetooth RESET
PD11
58
UART3
DA
Bluetooth CTS
PD12
59
UART3
DE
Bluetooth RFR
PE0
97
GPIO
DE
Drehgeber links Indexsignal4
PE1
98
GPIO
DE
Drehgeber rechts Indexsignal4
31
Tabelle 3.1: Beschaltung des Mikroprozessors
3.2.3.1 Anzeigen auf dem Bordcomputer
Der Bordcomputer verfügt über vier LEDs zur Anzeige von Betriebszuständen. Die LEDs haben
die in Tabelle 3.2 dargestellten Bedeutungen.
LED
Bedeutung
ERR
Motortreiber-Fehler
OTW
Motortreiber überhitzt
PWR
Speisung eingeschaltet
DBG
Debug-LED
Tabelle 3.2. LEDs auf dem SR407 und deren Bedeutung
1
2
3
4
Digitaler Eingang
Digitaler Ausgang
Analoger Eingang
ist zwar beschaltet, aber nicht für Verwendung vorgesehen (reserviert)
32
3 Bordcomputer
Die Signale FAULT und OTW der Motortreiber werden ständig überwacht, um bei Kurzschluss,
Überlastung oder Überhitzung der Motortreiber diese sofort abschalten zu können. Dank den
zusätzlich an diesen Signalen angeschlossenen LEDs wird ein solcher Betriebszustand auch sofort
angezeigt. Im Falle einer Unterspannung, d.h. wenn die Batterie auf unter ca. 13.5 V entladen ist,
offenbart sich der Fehler nicht nur über eine leuchtende ERR-LED, sondern auf der Basiseinheit
wird die Unterspannung ebenfalls angezeigt, sofern zuvor eine Bluetooth-Verbindung aufgebaut
wurde.
Die Debug-LED wurde während der Entwicklung verwendet, um bei fahrendem Fahrzeug dennoch
eine Zustandsausgabe zu ermöglichen. In der finalen Software zeigt ein Blinken der Debug-LED
eine funktionierende Kommunikation mit der Basiseinheit an. Im Endprodukt zeigt ein Blinken
der Debug-LED einen erfolgreichen Austausch von Telegrammen zwischen dem SR407 und der
Basiseinheit an.
4
Software des Bordcomputers
4.1 Drehzahlregelung der Motoren
Für die Drehzahlregelung werden die Drehgeber benötigt. Diese werden von einem Hardware-Timer
des Mikroprozessors ausgewertet; somit steht immer die aktuelle Drehgeberposition zur Verfügung.
Die Struktur des Reglers ist in Abbildung 4.1 ersichtlich.
Abb. 4.1. Struktur des Drehzahlreglers
Der Regelalgorithmus funktioniert wie folgt: in Abständen von 2 ms (definiert als Konstante
MOTOR_REG_PERIOD in der Datei motor.c) wird der Regler-Task aufgerufen. Dieser hat eine Variable,
wo die jeweils letzte Position des Drehgebers gespeichert wird. Nun wird die aktuelle Position des
Drehgebers abgefragt und die Differenz zur vorhergehenden Position gebildet. Die resultierende
Anzahl Inkremente ergibt zusammen mit der Regler-Periodendauer von 2 ms die Drehzahl.
Mit dieser geht man nun in einen klassischen digitalen PI-Regler ein, wie er in Abbildung 4.1
ersichtlich ist. In Listing 4.1 ist als Pseudocode ersichtlich, wie dieser Regler in der Software
implementiert wurde.
34
4 Software des Bordcomputers
/* get the current encoder position */
current_pos = get_encoder_position();
/* calculate the difference between the old and the new incr. values */
diff = current_pos - last_pos;
/* save the last position */
last_pos = current_pos;
/* calculate the error; speed is the desired motor speed */
e = speed - diff;
/* anti-windup: if the output stage is at its limit, stop integrating */
if(motor_dc <= MAX_DC)
{
esum_a = esum_a + ea;
}
/* calculate the regulator output; the offset of 500 is needed because of
the following: if
y < 500 -> motor turns in direction A
y = 500 -> motor stops
< > 500 -> motor turns in direction B */
yb = (KP * e) + (KI * esum) + 500.0f;
/* saturation of the output stage; bear in mind the duty cycle range */
if(y > MAX_DC)
{
y = MAX_DC;
}
else if(y < 0.0f)
{
y = 0.0f;
}
/* set the duty cycle for the motor */
motor_dc = (uint16_t)y;
os_sleep(MOTOR_REG_PERIOD);
Listing 4.1. Zentraler Teil des Drehzahlreglers
Am Ausgang des PI-Reglers wird ein Offset hinzugefügt. Dies hat folgenden Grund: Der PWM
kann im Bereich von 0..1000 eingestellt werden. Hierbei bedeutet ein Wert von 0, dass der Motor
mit voller Drehzahl in die eine Richtung dreht, während ein PWM-Wert von 1000 volle Drehzahl in
die entgegengesetzte Richtung bedeutet. Somit bedeutet ein PWM-Wert von 500, dass der Motor
still steht. Dies wird durch Hinzuaddieren des Offsets erreicht.
Nach der Addition des Offsets muss noch eine Saturation durchgeführt werden, um ein Übersteuern
des Stellglieds zu verhindern. Die Saturation prüft lediglich, ob sich der vom Regler berechnete
4.2 Navigation
35
PWM-Wert im zulässigen Bereich befindet. Sofern dies nicht der Fall ist, wird der Wert einfach auf
den jeweiligen Maximalwert begrenzt.
Nicht ersichtlich in Abbildung 4.1 ist das sogenannte Anti-Windup, das ebenfalls im Regler implementiert werden muss. Sofern das Stellglied am Anschlag ist, d.h. bereits eine PWM mit dem
Maximalwert auf den Motor gegeben wird, und dennoch ein Regelfehler auftritt, so wird dieser vom
I-Anteil immer weiter aufintegriert, obwohl der Regler mit dem Stellglied gar keine Änderung des
Istwerts mehr herbeiführen kann. Dies muss verhindert werden. Das Anti-Windup besteht daher
aus einer einfachen Abfrage, die prüft, ob das Stellglied bereits am Anschlag ist. Wenn ja, dann
wird eine weitere Integration der Regeldifferenz verhindert.
Mit dem letzten Statement os_sleep() schliesslich wird die gewünschte Periodendauer des Reglers
erreicht. Durch aufrufen der os_sleep()-Funktion gibt der aktuelle Task die CPU frei, und das
Betriebssystem bzw. der Scheduler kann sie an einem anderen Task zuteilen. Nach Ablauf der
Verzögerung wird der vorherige Task dann wieder fortgesetzt.
4.2 Navigation
4.2.1 Positionsberechnung
Die Basiseinheit kann nur in verhältnismässig langsamen Intervallen von 100 ms die Istkoordinaten
an das Fahrzeug senden. Damit eine akkurate und schnelle Positionsregelung möglich wird, ist dies
jedoch nicht ausreichend und es muss in der Zwischenzeit, bevor die neuen Koordinaten bekannt
gegeben werden, eine Abschätzung der Istkoordinaten vorgenommen werden.
Der Algorithmus zur Berechnung der Fahrzeugposition ist in Listing 4.2 ersichtlich. Dieser wird
zusammen mit dem Drehzahlregler im Intervall MOTOR_REG_PERIOD ausgeführt.
/* calculate the whole distance since the last regulator loop */
a_mm = diff_a * INCR_TO_MM; /* for motor a */
b_mm = -diff_b * INCR_TO_MM; /* for motor b */
magnitude = (a_mm + b_mm) / 2.0f;
/* calculate the angle offset */
angle_offset = (a_mm - b_mm) / (WHEEL_DIST);
/* calculate the distance in x and y direction */
x_offset = cos(angle) * magnitude;
y_offset = sin(angle) * magnitude;
/* calculate our current position and angle - this must be atomic */
disable_interrupts();
angle = pi_range(angle - angle_offset);
xpos = xpos + x_offset;
ypos = ypos + y_offset;
enable_interrupts();
Listing 4.2. Positionsberechnung
Zunächst steht in den Variablen diff_a bzw. diff_b die Differenz zwischen aktueller und vorheriger
Position der Drehgeber zur Verfügung, und zwar in Inkrementen. Dann wird diese Differenz mit
36
4 Software des Bordcomputers
einem konstanten Umrechnungsfaktor in [mm] umgerechnet. Die Umrechnung erfolgt gemäss
folgender Beziehung:
πD
a[mm] , b[mm] = ∆ ·
kR
Hierbei sind a und b die Distanzen in [mm]; ∆ ist die Anzahl Inkremente, und D ist der Raddurchmesser. Die Grösse k bezeichnet den Übersetzungsfaktor des Getriebes und R ist die Auflösung der
Drehgeber, in diesem Fall 1024 aufgrund der 10 Bits.
Diese Umrechnung wird für beide Drehgeber vorgenommen. Die effektive, vom Fahrzeug selbst
zurückgelegte Strecke entspricht dem Mittelwert von a[mm] und b[mm] :
∆s =
a[mm] + b[mm]
2
Nun muss noch der Richtungsfaktor bestimmt werden, damit die zurückgelegte Strecke s in eine xund eine y-Komponente zerlegt werden kann.
Der Richtungsfaktor, also der Winkel des Fahrzeugs, kann aus der Differenz der zurückgelegten
Strecken des linken bzw. des rechten Rades berechnet werden. Dazu betrachte man Abbildung 4.2.
Wenn das Fahrzeug sich vorwärts bewegt und dabei eine Kurve beschreibt, kann diese Bewegung als
eine Überlagerung einer Translation und einer Rotation des Fahrzeugs um sich selbst beschrieben
werden. Die Translation ist trivial, da sich hier die Drehgeber um dieselbe Anzahl Inkremente
drehen, während bei der Rotation die Anzahl der Inkremente beim linken Rad anders als beim
Rechten ist. In Abbildung 4.2 ist die alte Position des Fahrzeugs gestrichelt eingezeichnet. Die
aktuelle Position des Fahrzeugs sei nun die mit durchgezogenen Linien Eingezeichnete. Die Punkte
symbolisieren die Mittelpunkte der Räder.
Der Winkel, um den das Fahrzeug rotiert hat, wird mit ϕ bezeichnet. Er entspricht – in Radianten
– der Länge des eingezeichneten Bogens in Abbildung 4.2 dividiert durch den halben Achsabstand.
Für die Länge des Bogens muss die Differenz aus a[mm] und b[mm] herangezogen werden; daher ist
∆ϕ =
a[mm] − b[mm]
B
Abb. 4.2. Zur Herleitung des Winkels
Die relativen x- und y-Koordinaten sowie die Winkeländerung lauten somit:
∆x = ∆s · cos ϕ
∆y = ∆s · sin ϕ
a[mm] − b[mm]
∆ϕ =
B
Immer, wenn von der Basiseinheit die aktuelle Position gesendet wird, wird diese in einem internen
Speicher abgelegt. In der Zwischenzeit kann diese absolute Position als Anfangswert für die Integration dieser relativen Koordinaten verwendet werden, d.h. man addiert in jedem Durchlauf die ∆x,
4.2 Navigation
37
∆y und α zur letzten Position hinzu und erhält so jederzeit die aktuelle Position des Fahrzeugs.
Diese kann somit wie folgt bestimmt werden:
Z
x = x0 + ∆x dt
Z
y = y0 + ∆y dt
Z
ϕ = ϕ0 + ∆ϕ dt
Dies ist auch im Codeauschnitt in Listing 4.2 ersichtlich. Während der Integration müssen die
Interrupts jeweils deaktiviert werden, damit sie atomar ist. Ansonsten würde die Gefahr bestehen,
dass mit inkonsistenten Koordinaten weitergerechnet wird, was zwangsläufig zu undefiniertem
Verhalten führen würde.
Zwei Besonderheiten ergeben sich noch beim Winkel. Hier sollen nur Hauptwerte verwendet werden,
d.h. der Winkel ϕ soll stets im Intervall [0, 2 π] liegen. Dies wird mit der Funktion pi_range()
bewerkstelligt. Sie ist sehr einfach implementiert, wie in Listing 4.3 ersichtlich ist.
float pi_range(float value)
{
/* negative angles */
while(value < 0.0f)
{
value += (2.0f * PI);
}
/* positive angles */
while(value >= (2.0f * PI))
{
value -= (2.0f * PI);
}
return value;
}
Listing 4.3. So wird für den Winkel ein Hauptwert erzwungen
Da die Funktion während der Integration des Winkels dauernd aufgerufen wird, ist nicht zu
befürchten, dass der Winkel jemals ausserhalb dieses Intervalls liegt. Denn er wird stets nur in
kleinen Schritten inkrementiert und dann wird sofort wieder pi_range() aufgerufen, sodass der
Winkel niemals ausserhalb des gültigen Intervalls liegen kann.
Bemerkenswert beim Winkel ist auch, dass bei der Integration der Winkeloffset subtrahiert werden
muss. Der Grund liegt darin, dass das Koordinatensystem der Basiseinheit kein Rechtssystem ist,
sondern ein Linkssystem, d.h. positive Winkel werden im Uhrzeigersinn abgetragen, anstatt wie bei
einem Rechtssystem üblich im Gegenuhrzeigersinn.
4.2.2 Positionsregelung
Um eine gewünschte Zielposition anfahren zu können, wird dem Drehzahlregler ein Positionsregler
überlagert. Der Positionsregler wird in einem Intervall von max. 4 ms ausgeführt. In Listing 4.4 ist
der Code des Positionsreglers ersichtlich.
38
4 Software des Bordcomputers
/* calculate x and y distance to the target */
dx = target_x - xpos;
dy = target_y - ypos;
/* calculate the angle and distance to the target */
delta = atan2(dy, dx);
rho = sqrt((dx * dx) + (dy * dy));
/* correct angles to bring atan2 result in range 0..2pi */
delta = pi_range(delta - angle);
/* calculate the speed offset */
offset = sin(delta) * target_speed * CURVATURE;
/* position is only regulated if the distance large enough */
if(rho > PROXIMITY_TOLERANCE)
{
if((delta < ANGULAR_TOLERANCE) || (delta > (2 * PI - ANGULAR_TOLERANCE)))
{
/* drive straight forward if the angle is within the tolerance */
set_speed(target_speed, target_speed);
}
else
{
/* angular drive */
set_speed(target_speed - offset, target_speed + offset);
}
}
else
{
/* halt if the car is within a valid range */
set_speed(0.0f, 0.0f);
}
Listing 4.4. Positionsregelung
In den Variablen target_x, target_y und target_speed werden die Zielkoordinaten und die
Sollgeschwindigkeit abgelegt. Danach wird mit
dx = xtarget − x
dy = ytarget − y
p
̺ = dx2 + dy 2
der Abstand ̺ vom Fahrzeug zum Ziel berechnet. Zudem wird noch der Winkel zwischen dem
Fahrzeug und dem Zielpunkt benötigt:
δ = ∡(dx, dy) = arctan
dy
dx
Nun wird mit Hilfe von δ ein Offset berechnet. Ist δ < 0, also bei negativen Winkeln, dann muss das
rechte Rad schneller drehen; ist jedoch δ > 0, dann muss das linke Rad schneller drehen. Mit Hilfe
der Sinusfunktion wird δ in das Intervall [−1, 1] gebracht. Der Offset berechnet sich dann wie folgt:
4.2 Navigation
39
vof f s = v k sin δ
Hierbei ist v die gewünschte Geschwindigkeit und k eine Konstante, die den minimalen Kurvenradius
bestimmt. Im Extremfall, wenn δ = 90◦ ist, wird
vof f s = v k
Sofern k = 1, dann wird somit vof f s = v. Dies bedeutet dann aber: das rechte Rad wird auf die
Drehzahl 0 gebracht, während das linke Rad auf die doppelte Solldrehzahl gebracht wird. Das
Fahrzeug wendet dann an Ort und Stelle. Wenn man k entsprechend verkleinert, dann wird das
rechte Rad nicht auf 0 herunter geregelt, sondern auf eine Drehzahl > 0 und somit wird der
Kurvenradius grösser. Die selbe Überlegung kann man für δ = −90◦ anstellen und kommt zum
selben Ergebnis. Der Faktor k ist im Code als Konstante CURVATURE definiert.
Nach der Berechnung des Offsets prüft der Positionsregler, ob das Fahrzeug bereits in der Nähe der
Zielposition ist. Sofern ̺ < ̺min ist, wird das Fahrzeug angehalten. Ist jedoch ̺ ≥ ̺min , dann wird
die zweite Bedingung noch geprüft: Es muss δmin < δ < δmax sein. Sofern die Bedingung zutrifft,
der Winkel δ also klein genug ist, dann werden die Drehzahlen des linken und des rechten Rades
auf den selben Wert gesetzt.
Die Werte der Konstanten ̺min und δmin bzw. δmax sind im Code als PROXIMITY_TOLERANCE bzw.
ANGULAR_TOLERANCE definiert.
4.2.3 Verifikation
Die Funktion des Algorithmus konnte einfach verifiziert werden. Da zu diesem Zeitpunkt noch keine
vollständige Basiseinheit mit Software und Kamera zur Verfügung stand, wurde die Startposition
des Fahrzeugs sowie der Startwinkel manuell auf folgende Werte gesetzt:
x=0
y=0
ϕ=0
Die Software des SR407 wurde dann in einer speziellen Debug-Version derart modifiziert, dass
über das Bluetooth-Modul nicht das binäre Protokoll läuft, sondern dass mit dem aus der CStandardbibiothek bekannten Befehl printf() Text auf ein Terminalprogramm auf einem PC
ausgegeben werden konnte. Anschliessend wurden die Eckpunkte eines 1×1 m grossen Quadrates
als Zielpunkte für das Fahrzeug programmiert. Die blaue Linie in Abbildung 4.3 verdeutlicht dies.
Nach dem Starten des Fahrzeugs wird nun laufend die berechnete Position sowie der Winkel an das
Terminalprogramm gesendet; in Abbildung 4.3 ist die vom Fahrzeug berechnete Position ersichtlich.
Man erkennt, dass die Zielpunkte recht genau erreicht werden. Unschön an dem Algorithmus ist
allerdings, dass man nicht um die Verwendung trigonometrischer Funktionen herum kommt, was
in Embedded Systemen i.d.R. problematisch ist. In diesem Falle steht jedoch eine ausreichende
Rechenleistung zur Verfügung; auch die Weiterverarbeitung der Fliesskommazahlen stellt dank der
FPU kein Problem dar.
Nachdem das System komplett und betriebsbereit war, wurden zur Verifikation des Gesamtsystems
die angefahrenen Wegpunkte beim Abfahren eines kompletten Kurses aufgezeichnet. In jede der 5
Garagen wurde einmal hinein gefahren. Die resultierenden Graphen sind in Abbildung 4.4 ersichtlich.
Zudem wurde zu Demonstrationszwecken noch eine Miniaturkamera auf dem Fahrzeug montiert,
die bei fahrendem Fahrzeug filmt. Das daraus entstandene Video ist im Internet unter der URL
http://team8.bontekoe.ch/uploads/GOPR0353.mp4 abrufbar.
4 Software des Bordcomputers
1200
1000
y [mm]
800
600
Ausrichtung
Position
400
200
0
−200
−200
0
200
400
600
800
1000
1200
x [mm]
Abb. 4.3. Anhand der Drehgeber berechnete Position des Fahrzeugs
0
500
1000
1500
y [mm]
40
2000
2500
Garage
Garage
Garage
Garage
Garage
3000
3500
4000
0
1
2
3
4
5
500 1000 1500 2000 2500 3000 3500 4000
x [mm]
Abb. 4.4. Zurückgelegter Weg des Fahrzeugs beim Einfahren in die 5 Garagen
4.3 Kommunikation
41
4.3 Kommunikation
Die Kommunikation wird mit Hilfe dreier verschiedener Tasks abgewickelt:
• einem zentralen Kommunikations-Task
• einem Task für den Empfang der Telegramme
• einem Task für das Senden von Telegrammen
Die einzelnen Bestandteile des Kommunikations-Moduls werden im Folgenden detailiert beschrieben.
4.3.1 Zentraler Kommunikations-Task
Der zentrale Kommunikationstask ist als Pseudocode in Listing 4.5 dargestellt.
/* initialise the bluetooth module */
bt_init();
/* create the receive and transmit tasks */
os_task_create(bluetooth_tx);
os_task_create(bluetooth_rx);
/* enable the bluetooth module’s interrupt */
bt_enable_int(true);
/* start the timer which periodically generates the status reports */
start_report_timer();
while(true)
{
/* wait until some task posts a message to our mailbox (the only task which
does so is the bluetooth_rx task) */
rxmsg = wait_for_message();
/* determine the type of the received tgr */
rxtgr = get_type(rxmsg);
/* don’t send ack if the command was ’resend code’ */
if(rxtgr != tgrtype_code_report)
{
send_ack();
}
/* do various things, according to the type of tgr received */
switch(rxmsg->type)
{
/* messages that shall be forwarded to the qr code task */
case type_resend_code:
case type_read_code:
{
42
4 Software des Bordcomputers
/* forward the message to the sensor task */
os_task_q_post(qr_receive_code, rxmsg);
}
break;
/* other messages ar not used */
default:
{
/* not used */
}
break;
}
}
Listing 4.5. Zentraler Kommunikations-Task
Zunächst wird mit dem Aufruf bt_init() das Bluetooth-Modul initialisiert. Hierbei muss es in
den sogenannten transparenten Modus geschaltet werden, damit Daten, die an das Modul geschickt
werden, direkt als binäre Daten zum Bluetooth-Endgerät übermittelt werden.
Anschliessend werden die beiden Hilfs-Tasks für das Empfangen bzw. das Senden kreiert und
gestartet; erst dann dürfen die Interrupts des Bluetooth-Moduls freigegeben werden. Als Abschluss
dieser Initialisierungsphase wird noch ein Timer gestartet, der die periodischen Meldungen an die
Basiseinheit erzeugt. Der Timer ruft in einem Intervall von 100 ms eine Callback-Funktion auf, die
dann die Statusmeldungen erzeugt, welche dann an die Basiseinheit gesendet werden.
In der darauf folgenden Endlosschleife wartet der Kommunikations-Task, dass eine Message
vom Betriebssystem eintrifft. Nur der Empfangs-Task sendet überhaupt solche Messages an den
Kommunikations-Task. Trifft eine Message ein, wird geprüft, ob es sich um ein Kommando von
der Basiseinheit handelt. Sofern das Kommando resend_code war, muss kein ACK geschickt werden; alle anderen Telegramme müssen aber auf alle Fälle mit ACK bestätigt werden, was mit der
entsprechenden if-Abfrage sichergestellt ist.
Anschliessend muss noch geprüft werden, wie mit dem empfangenen Telegramm weiter verfahren
werden soll. Sofern es sich um Kommandos betreffend QR-Codes handelt, werden sie an den
QR-Code-Task weitergeleitet. Wenn es sich um Positionierkommandos handelt, werden sie an das
Navigationsmodul weitergeleitet.
4.3.2 Interrupt des Bluetooth-Moduls
Das Bluetooth-Modul ist über einen UART mit dem Mikroprozessor verbunden. Sobald die Basiseinheit ein Byte an das Bluetooth-Modul geschickt hat, wird dieses via den UART übertragen,
unter Berücksichtigung des notwendigen Handshakings. Wurde das Byte dann vom Mikroprozessor
erfolgreich empfangen, wird ein Interrupt ausgelöst. In der zugehörigen ISR wird lediglich das
empfangene Byte vom UART abgeholt und dem Betriebssystem als Message übergeben, die dann
an den Bluetooth-Empfangstask weitergeleitet wird.
Im umgekehrten Fall, wenn das Bluetooth-Modul selber ein Byte erfolgreich an die Basiseinheit
geschickt hat, wird vom UART ebenfalls ein Interrupt aufgerufen. In der zugehörigen ISR wird
dann ein Semaphor gesetzt. Der Bluetooth-Sendetask wartet vor dem Senden jeweils auf dieses
Semaphor.
Im Pseudocode in Listing 4.6 ist der Ablauf des Bluetooth-Interrupts ersichtlich.
4.3 Kommunikation
43
/* read the uart status register */
uart_get_status();
/* transmit register empty? this means: a byte has been sent */
if(tx_empty)
{
/* disable the tx empty interrupt */
disable_tx_irq();
/* wake up the task waiting on the uart */
os_semaphore_post(tx_semaphore);
}
/* read data register not empty? i.e. means a byte is received */
if(rx_done)
{
/* allocate a message */
msg_t* msg = msgapi_alloc(type_bt_rx);
assert(msg != NULL);
/* get the received character */
msg->extra_info.bt_rx_char = get_rx_char();
/* send it to the rx task */
os_task_post(bluetooth_rx, msg);
}
Listing 4.6. Funktionsweise des Bluetooth-Interrupthandlers
4.3.3 Empfangs-Task
Der Empfangs-Task für die Bluetooth-Kommunikation ist recht kompakt gehalten. Im Wesentlichen
wartet der Task einfach darauf, dass vom Betriebssystem eine Message eingeht, die besagt, dass ein
Byte vom Bluetooth-Modul empfangen worden ist. Danach wird ein Zustandsautomat aufgerufen,
der anhand seines internen Zustands und des empfangenen Bytes ein vollständiges Telegramm
zusammensetzen kann, das von anderen Tasks dann interpretiert werden kann. Der Zustandsautomat
ist in Abbildung 4.5 dargestellt.
Das Zusammensetzen des Telegramms erfolgt folgendermassen: zunächst werden alle eingehenden
Bytes ignoriert, sofern sie nicht dem ASCII-Zeichen 0x02 (Start of Text) entsprechen. Wurde jedoch
ein solches Byte empfangen, dann wird ein internes Timeout von 20 ms gestartet und auf das nächste
Byte gewartet. Anhand des Telegrammtyps, der unmittelbar nach dem Start-Byte übertragen wird,
kann die Grösse der Telegramm-Rohdaten bestimmt werden. Es wird ein Speicher dieser Grösse
reserviert und die empfangenen Bytes werden nacheinander in diesen Speicher abgelegt. Zugleich
wird nach jedem empfangenen Byte sowohl die CRC neu berechnet, als auch das Timeout von
20 ms neu gestartet.
Wenn nun das Timeout abläuft, bevor das nächste Byte empfangen wurde, dann werden ggf.
schon empfangene Telegrammdaten einfach verworfen und der alloziierte Speicher wird wieder
freigegeben. Es könnte sich z.B. um eine missglückte Übertragung oder um Störsignale handeln.
44
4 Software des Bordcomputers
Abb. 4.5. Zustandsautomat des Empfangs-Tasks. Kursive Schrift bedeutet die auszuführenden Aktionen.
Wenn jedoch die gesamten Rohdaten des Telegramms empfangen worden sind (deren Anzahl Bytes
ja aus dem Telegrammtyp abgeleitet werden kann), wird die CRC geprüft. Da die CRC nicht nur
über das Telegramm selbst, sondern auch über die nach den Rohdaten noch angehängte, vom
Sender berechnete CRC berechnet wird, muss das Resultat 0 lauten, wenn alle Bytes korrekt sind.
Sobald ein vollständiges Telegramm mit einer korrekten CRC empfangen wurde, wird mit Hilfe
des Betriebssystems dem zentralen Bluetooth-Task Meldung erstattet. Dieser prüft dann anhand
des Telegrammtyps, ob ein ACK-Telegramm generiert werden muss oder nicht. Ist jedoch die CRC
verschieden von 0, so wird das Telegramm als ungültig verworfen und der zuvor alloziierte Speicher
wieder freigegeben.
4.3.4 Sende-Task
Der Sende-Task ist vom Prinzip her ähnlich aufgebaut wie der Empfangs-Task. Er wartet zunächst
auf seiner Mailbox auf eine Nachricht vom Betriebssystem. Andere Tasks können dem SendeTask eine Message senden, wenn ein Telegramm zu übermitteln ist. Tritt dieser Fall ein, wird
der Sende-Task vom Betriebssystem aufgeweckt und dieser ruft sodann einen Zustandsautomaten
auf. Dieser nimmt die eigentliche Übermittlung des Telegramms vor. Abbildung 4.6 stellt den
Zustandsautomaten dar.
Um ein Telegramm zu übermitteln, müssen zunächst die nötigen Header-Daten für das Protokoll
generiert werden und die CRC-Berechnung muss gestartet werden. Danach sendet der Zustandsautomat jeweils ein einzelnes Byte an das Bluetooth-Modul, und aktiviert sofort nach dem Senden
den Sende-Interrupt. Danach wartet der Sende-Task auf einem Semaphor. Sobald der UART die
Übermittlung des Bytes zum Bluetooth-Modul vollzogen hat, wird der Sende-Interrupt aufgerufen
und das Semaphor gesetzt. Danach wird der Sende-Interrupt wieder deaktiviert. Durch das Setzen
des Semaphors muss nun der Sende-Task vom Betriebssystem wieder aktiviert werden, und dieser
kann sodann mit der Übermittlung des nächsten Bytes beginnen.
4.3 Kommunikation
45
Abb. 4.6. Zustandsautomat des Sende-Tasks
Immer, wenn der Sende-Task ein Byte übermittelt hat, wird die CRC neu berechnet. Sobald die
kompletten Telegrammdaten übermittelt wurden, wird die so erhaltene CRC wie gewöhnliche
Rohdaten einfach am Ende des Telegramms noch angehängt und ebenfalls übermittelt.
4.3.5 Telegramm-Aufbau
Die Telegramme, die bereits früher definiert worden sind, wurden noch ein wenig verbessert, damit
die Handhabung einfacher wird. Zudem mussten noch einige neue Telegrammtypen erfunden werden.
Der grundsätzliche Aufbau der Telegramme ist in Tabelle 4.1 dargestellt.
Feld
Zweck
Grösse [Bits]
SOF
Anfangs-Markierung (ASCII 0x02, Start of Text)
8
type
Telegramm-Typ
8
Typabhängige Daten
crc
CRC Prüfsumme über das gesamte Telegramm
16
Tabelle 4.1. Aufbau der Telegramme
Tabelle 4.2 gibt Auskunft über die nun bestehenden Telegrammtypen, die Richtung des Datenflusses
und die Telegrammgrösse. Dabei bezeichnet der Wert in der Spalte Typ“ den Wert des type-Felds
”
eines Telegramms.
Die Telegramme, die Nutzdaten enthalten, sind im folgenden detailiert beschrieben. Telegramme
ohne Nutzdaten bestehen nur aus der Anfangsmarkierung 0x02, dem Typ und der CRC.
46
4 Software des Bordcomputers
Typ
Bezeichnung
Zweck
BE ↔ FZ
Datenbytes
0
tgrtype_pos_command
Position senden
→
6
1
tgrtype_start_command
Fahrzeug starten
→
0
2
tgrtype_turn_qr_on_command
QR-Code-Sensor einschalten
→
0
3
tgrtype_status_report
Zustandsmeldung
←
12
4
tgrtype_code_report
Gelesener Code
←
200
5
tgrtype_resend_command
Code noch einmal senden
→
0
6
tgrtype_ack
Bestätigung
←
1
7
tgrtype_nexthop
nächster Wegpunkt
→
8
8
tgrtype_stop
Fahrzeug stoppen
→
0
Tabelle 4.2. Telegrammtypen und deren Verwendung. BE = Basiseinheit, FZ = Fahrzeug
4.3.5.1 Positions-Kommando
Mit diesem Telegramm wird dem Fahrzeug von der Basiseinheit aus die Position mitgeteilt. Es ist
wie in Tabelle 4.3 gezeigt aufgebaut. Im Telegramm enthalten sind die Koordinaten des Fahrzeugs,
also x und y, sowie die Ausrichtung des Fahrzeugs.
Feld
Zweck
Grösse [Bits]
x
Gegenwärtige x-Koordinate des Fahrzeugs in [mm]
16
y
Gegenwärtige y-Koordinate des Fahrzeugs in [mm]
16
phi
Ausrichtung des Fahrzeugs
16
Tabelle 4.3. Aufbau des Positions-Kommandos
4.3.5.2 Zustandsmeldung
Der SR407 sendet alle 100 ms eine Zustandsmeldung an die Basiseinheit. Die Zustandsmeldung
dient zum Überwachen der internen Zustände des Fahrzeugs und der Software. Der Aufbau des
Telegramms ist in Tabelle 4.4 ersichtlich.
Feld
Zweck
Grösse [Bits]
cpuu
CPU-Auslastung in %
1
10
8
volt
Batteriespannung in
vl
Geschwindigkeit linkes Rad
16
vr
Geschwindigkeit rechtes Rad
16
rx_count
Anzahl empfangene Telegramme
16
tx_count
Anzahl gesendete Telegramme
16
crc_errors
Anzahl CRC-Fehler in empfangenen Telegrammen
16
V
Tabelle 4.4. Aufbau der Zustandsmeldung
8
4.3 Kommunikation
47
4.3.5.3 Gelesener Code
Dieses Telegramm wird vom SR407 benutzt, um den gelesenen QR-Code an die Basiseinheit zu
senden. Direkt nach dem Telegrammtyp werden die ASCII-Zeichen des QR-Codes angehängt. Da das
Telegramm eine feste Länge von 200 Bytes aufweisen muss, werden nach dem Ende des QR-Codes
Padding-Bytes eingefügt, um auf die nötigen 200 Bytes zu kommen. Wie üblich wird am Schluss
noch die CRC angehängt. Die Basiseinheit kann die Länge des enthaltenen Strings sehr einfach
mit der Funktion strlen() aus der C-Standardbibliothek bestimmen, da der String auf alle Fälle
nullterminiert ist.
4.3.5.4 Bestätigung
Die Bestätigung wird vom SR407 gesendet, wenn der Telegrammtyp nicht tgrtype_resend_command
war. Das Telegramm enthält als einziges Nutzdatenbyte den Telegrammtyp, auf den sich diese
Bestätigung bezieht. D.h., auf eine Meldung des Typs 0x01 muss ein Bestätigungs-Telegramm mit
0x01 als Nutzdaten folgen; die Basiseinheit kann so einfach erkennen, ob der SR407 das vorherige
Telegramm korrekt empfangen hat. Sofern ein Kommando wie Start oder Stop gesendet wurde,
wertet die Basiseinheit die Bestätigungs-Telegramme aus. Sofern nicht innerhalb einer bestimmten
Zeitdauer eine Bestätitung eintrifft, muss der Befehl noch einmal abgesetzt werden.
Wenn die Basiseinheit einen Befehl zum erneuten Senden des QR-Codes absetzt, ist eine Bestätigung
nicht erforderlich, da die Bestätigung vom SR407 implizit über das erneute Senden des QR-Codes
erfolgt.
Positions-Kommandos müssen nicht bestätigt werden, da sich das Fahrzeug nach dem Absetzen des
Kommandos sowieso bereits wieder weiterbewegt hat und ein erneutes Senden der Position keinen
Mehrwert bringt.
4.3.5.5 Nächster Wegpunkt
Die Basiseinheit benutzt dieses Telegramm, um den nächsten Punkt auf dem Weg des Fahrzeugs
festzulegen. Während sich das Fahrzeug auf der Strecke bewegt, werden von der Basiseinheit die
einzelnen Wegpunkte, die anzufahren sind, berechnet. Sobald sich das Fahrzeug einem Wegpunkt
nähert, so wird umgehend mit dem in Tabelle 4.5 ersichtlichen Telegramm der nächste Wegpunkt
an den SR407 gemeldet.
Feld
Zweck
Grösse [Bits]
x
x-Koordinate [mm]
16
y
16
speed
y-Koordinate [mm]
1 Drehzahl min
phi
Winkel am Zielpunkt [◦ ]
16
16
Tabelle 4.5. Aufbau des Befehls für nächsten Wegpunkt
5
Software der Basiseinheit
5.1 Übersicht
In Abbildung 5.1 ist die Hauptaufgabe dieser als Argus-Tower bezeichneten Software dargestellt.
Abb. 5.1. Datenfluss der Argus-tower Anwendung
Mit Hilfe der Kamera wird das sich bewegende Fahrzeug detektiert; auf dem Linux-Rechner wird
mit Hilfe der Argus-tower Software anhand des Kamerabildes die Fahrzeugposition ermittelt und
dem Fahrzeug via Bluetooth mitgeteilt.
5.2 Struktureller Aufbau der Software
Abbildung 5.2 zeigt ein vereinfachtes Klassendiagramm der gesamten Argus-tower Software. Das
vollständige Klassendiagramm ist auf der CD enthalten – siehe hierzu Anhang G auf Seite 139.
5.2.1 BluetoothModule
Das Bluetooth-Modul ist für die Kommunikation mit dem Fahrzeug zuständig. Es implementiert
die Bluetooth-Schnittstelle gemäss Abschnitt 4.3.5 auf Seite 45 und wird für die Steuerung der
einzenlen Funktionen des Fahrzeugs benötigt.
50
5 Software der Basiseinheit
Abb. 5.2. Klassendiagramm der Argus-Tower Anwendung
5.2.2 BusinessLogic
Die BusinessLogic ist dafür zuständig, die einzelnen Module miteinander zu verbinden. Es handelt
sich hierbei um einen Zustandsautomaten; über das UserInterface kann zwischen den vier Zuständen
CameraConfig, WarpConfig, ColorConfig und Tracking hin- und her gewechselt werden.
Je nach Zustand werden vom Zustandsautomaten andere Signals an das UserInterface übergeben.
In den Konfigurations-Zuständen sind dies lediglich verschiedene Videostreams.
Im Trackingstate werden nebst den Videostreams auch die Statusmeldungen des Fahrzeugs und
der BusinessLogic selbst an das UserInterface weitergeleitet. In diesem Zustand werden auch die
Koordinaten des Fahrzeugs berechnet, die Wegfindung mit Hilfe des vorprogrammierten Wegs
durchgeführt und die Daten an das Fahrzeug übermittelt.
5.2 Struktureller Aufbau der Software
51
Nebst dem Zustandsautomaten enthält die BusinessLogic eine Klasse Course für die Wegfindung,
die die Verschiedenen Wegpunkte das Fahrzeugs festlegt. Diese werden beim Starten des Programms
aus einer Textdatei mit Hilfe des CourseFileAccess ausgelesen, wodurch es möglich ist, den Weg
ohne Anpassungen am Code festzulegen und jederzeit zu ändern.
5.2.3 UserInterface
Die Software verfügt über eine graphische Benutzeroberfläche. Diese basiert auf dem Qt-Framework
[6].
Dieses GUI ist in Abbildung 5.3 dargestellt und verfügt über vier verschiedene Eingabemasken:
1. Eingabemaske in Teilbild (a): Hier kann die Kamera kalibriert werden bezügllich Weissabgleich,
Farbwiedergabe, Farbtemperatur und Kontrast.
2. Eingabemaske in Teilbild (b): Hier werden die vier zur Entzerrung nötigen Referenzpunkte
eingegeben.
3. Eingabemaske in Teilbild (c): In dieser Eingabemaske müssen die beiden Farbmarkierungen
definiert werden.
4. Eingabemaske in Teilbild (d): In dieser Ansicht ist das aktuelle Kamerabild ersichtlich, sowie
ein Modellbild, wo die detektierte Position des Fahrzeuges eingezeichnet wird. Diese TrackingAnsicht ist in Abbildung 5.4 separat dargestellt.
(a) Kalibrierung der Kamera
(b) Eingabe der Referenzpunkte
(c) Einstellen der Farbmarkierungen
(d) Tracking
Abb. 5.3. Ansicht der verschiedenen Eingabemasken des GUI
Für die Bedienung des GUI sei auf Kapitel 8 ab Seite 67 verwiesen.
52
5 Software der Basiseinheit
Abb. 5.4. Tracking-Bildschirm im Detail
Die Tracking-Ansicht in Abbildung 5.4 wird laufend neu gezeichnet. In dieser Ansicht werden,
während das Fahrzeug fährt, die anzufahrenden Wegpunkte eingezeichnet, sowie die aktuelle, vom
System errechnete Position des Fahrzeugs und dessen Winkel.
5.3 VideoModule
Das Video-Modul ist für den Zugriff auf die Kamera sowie die Erkennung und Lokalisierung des
Fahrzeugs zuständig. Um dies zu realisieren, wird die OpenSource Library OpenCV verwendet [13],
die ein breites Spektrum an Bildverarbeitungsmöglichkeiten bietet.
5.3.1 Lokalisierung des Fahrzeugs
In einem ersten Schritt müssen die Verzerrung des Kamerabildes sowie HSV-Farbbereiche der beiden
Farbmarkierungen definiert werden. Dies erkennt man in Abbildung 5.5 Teilbild (a) bzw. (b).
5.3 VideoModule
(a) Originalbild
(c) Erkanntes hellgrünes Objekt
53
(b) Entzerrtes Bild
(d) Erkanntes gelbes Objekt
Abb. 5.5. Entzerrung des Kamerabilds
Aus dem entzerrten Bild können Schwellwert-Bilder erzeugt werden, auf denen die Position der
einzelnen Markierungen gut ersichtlich ist. Die Schwellwert-Bilder werden jeweils auf die grüne bzw.
gelbe Farbmarkierung eingestellt, wie dies in Abbildung 5.5 Teilbild (c) und (d) ersichtlich ist.
Über die Flächenmomente der beiden Schwellwert-Bilder können nun die Koordinaten der beiden
Punkte berechnet werden. Da diese Markierungspunkte jedoch nicht auf der Ebene liegen, die
verzerrt wurde, sondern ca. 10 cm erhöht aufgrund der Fahrzeughöhe, müssen diese Koordinaten
noch korrigiert werden. Vereinfacht lässt sich die Kamera-Ansicht wie in Abbildung 5.6 darstellen.
Aus Sicht der Kamera befindet sich das Fahrzeug bei der scheinbaren Position x′ . Sind jedoch die
Abb. 5.6. Strahlensatz zur Berechnung der realen Koordinaten
Höhe des Fahrzeugs hm und die Höhe des Kamerastativs hk bekannt, dann kann mit Hilfe des
54
5 Software der Basiseinheit
Strahlensatzes die reale Position x des Fahrzeugs mit
x=
x ′ · hm
hk
berechnet werden. Die Kamera steht jedoch nicht im Ursprung, sondern bei den Koordinaten xk
und yk . Somit sind
hm
· (xk − x′ ) + x′
hk
hm
y=
· (yk − y ′ ) + y ′
hk
x=
die realen Koordinaten des Fahrzeugs. Zuletzt muss noch der Winkel ϕ des Fahrzeugs berechnet
werden. Mit den Abkürzungen
xd = xm2 − xm1
yd = ym2 − ym2
wobei die Indizes m1 bzw. m2 sich auf die Farbmarkierung 1 bzw. Farbmarkierung 2 beziehen, kann
ϕ mit
arccos xd
ϕ= p 2
xd 6= yd 6= 0
xd + yd2
bestimmt werden.
5.4 WebAccess
Das WebAccess-Modul besteht aus zwei Komponenten, der ArgusApp und dem QRCode. Beide
setzen für die Web-Kommunikation auf die OpenSource Library cURL [10].
5.4.0.1 ArgusApp
Die ArgusApp stellt statische, asynchrone Funktionen zur Verfügung, die den Status der ArgusWebapplikation verändern können – siehe auch Kapitel 6 auf Seite 55. Dies ermöglichest dem
Argus-Tower, Informationen wie den Start- bzw. Stop-Befehl und die Garagennummer an die
Webapplikation zu übermitteln.
5.4.0.2 QRCode
QRCode stellt im Gegensatz zu ArgusApp eine einzige blockierende Funktion zur Verfügung.
Diese wartet, bis der Inhalt der Webseite ausgelesen werden konnte. Benutzt wird diese Funktion
ausschliesslich dann, wenn die StateMachine eine URL vom Fahrzeug erhalten hat.
6
Smartphone-App
6.1 Beschreibung
Um den Zuschauer bei der Präsentation des Fahrzeuges mit einzubeziehen, wurde eine Webapplikation entwickelt. Der Beobachter hat die Möglichkeit, jederzeit den Status des Fahrzeuges, die
Zeitdauer die das Fahrzeug bereits auf dem Parcours gebraucht hat, sowie die Garagennummer
abzufragen.
6.2 Aufruf der Webapplikation
Die Applikation kann über den Link http://team8.bontekoe.ch/argus_app, über den Shortlink
http://goo.gl/LuVzc oder über den dafür angefertigten, in Abbildung 6.1 gezeigten QR-Code
aufgerufen werden. Der QR-Code wird gut sichtbar positioniert, damit dieser für jeden Zuschauer
frei zugänglich ist.
Abb. 6.1. QR-Code zum Aufruf der Webapplikation
6.3 Aufbau der Webapplikation
Die Argus-Webapplikation ist in drei funktionale Bereiche eingeteilt:
Uhrzeit : Die Uhrzeit wird in Sekunden angezeigt, mit einer Auflösung von 1 ms.
Status: Die Basiseinheit sendet regelmässig den aktuellen Status an die Applikation, z.B. Start,
Hindernisse überwunden, QR-Code ausgelesen etc. Unterhalb der Statusanzeige ist ein Timer
eingebaut, damit der Zuschauer weiss, wie lange das Fahrzeug für den Parcour benötigt.
56
6 Smartphone-App
Parkplatz-Nummer: Solange die Parkplatz-Nummer nicht ausgelesen wurde, wird ein Fragezeichen dargestellt. Sobald der QR-Code erkannt wurde und die Zielgarage an das Fahrzeug
übermittelt wird, wird die Garagennummer auf der Applikation angezeigt.
In Abbildung 6.2 ist die Ansicht der Webapplikation, wie sie auf einem Smartphone angezeigt wird,
zu sehen.
(a) vor dem Start
(b) Fahrzeug fährt
(c) Ermittelte Garagennummer
Abb. 6.2. Graphischer Aufbau der Webapplikation
6.3.1 Übermittlung der Daten
Diese läuft wie folgt ab:
1. Das Fahrzeug liest den QR-Code aus und sendet diesen via Bluetooth an die Basiseinheit.
2. Die Basiseinheit sendet einen http-Get Request an den Webserver. Der Get-Request muss an die
URL http://team8.bontekoe.ch/argus_app/updateData.php gesendet werden. Es können
folgende drei Parameter mitgegeben werden:
Start: Startsignal für den Timer. Dabei bedeutet 1 = Start, 0 = Stopp, -1 = Zurücksetzen.
Der Parameter für den Get-Request lautet z.B. ?start=-1.
Garage: Ausgelesene Garagennummer 1..5. Der Get-Request heisst z.B.: garage=3.
Status: Aktuellen Status des Fahrzeuges, z.B. Fahrzeug hat die Hindernisse überwunden“
”
oder dergleichen. Der Get-Request heisst in diesem Falle ?status=text.
3. Die an den Webserver gesendeten Daten werden zur Weiterverarbeitung in eine Textdatei
geschrieben.
Die erwähnte Textdatei hat dabei folgendes Format:
1#?#Argus ist im Startfeld
6.3 Aufbau der Webapplikation
57
Die drei Spalten entsprechen dabei den oben erwähnten Get-Parametern. Da nicht zwingend alle drei
Parameter in einem Get-Request vorhanden sein müssen, wird die Textdatei zunächst ausgelesen,
und nur der relevante Parameter wird geändert. Anschliessend wird die Textdatei wieder gespeichert.
Dieser Datenfluss wird mit Abbildung 6.3 verdeutlicht.
Abb. 6.3. Datenfluss vom Fahrzeug bis zum Webserver
6.3.2 Aktualisierung der Daten in der Webapplikation
Einmal in der Sekunde wird ein Refresh“ durchgeführt. Hierbei werden alle Daten aus der in
”
Abschnitt 6.3.1 erwähnten Textdatei gelesen und anschliessend in eine json-Datei konvertiert. Nach
der Konvertierung wird diese für die Darstellung der Daten verwendet. Abbildung 6.4 zeigt, wie
dies vor sich geht.
Abb. 6.4. Aktualisierung Daten im Browser durch die Webapplikation
7
Gestaltungskonzept
Das Team 8 erkannte bereits zu Beginn des Moduls die Wichtigkeit des Industriedesigns und
entschied sich anhand folgender Gründe, das Design professionell miteinzubeziehen und im
Lösungsfindungsprozess konsequent anzuwenden [14]:
• Industriedesign optimiert die Kommunikation zwischen Produkten und den Benutzern (Semantik)
und die Wahrnehmung der Beziehung Mensch-Maschine (Ergonomie und HMI)
•
Industriedesign steigert den Gebrauchswert, die Wirtschaftlichkeit, die Umweltverträglichkeit
und die Ästhetik von der Bedürfnisanalyse bis zum Recyclingkonzept der Produkte
• Industriedesign verschafft Marktvorteile durch ein differenziertes Gesamterscheinungsbild
• Industriedesign ermöglicht Produkterlebnisse (Ästhetik und Anmutungsqualität)
• Der professionelle Beitrag von Industriedesign steigert die Produktqualitäten:
– Marktakzeptanz
– Ergonomische Qualität (HMI)
– Ästhetische Qualität
– Sozioökonomische Qualität
– Kulturverträglichkeit
– Wirtschaftlichkeit
– Ökologische Vertretbarkeit
Der Designprozess gliedert sich in die Phasen Analyse, Konzeptphase, Entwurfsphase, Realisationsphase und Markteinführung, wobei letzere nicht Bestandteil des Modules Produktentwicklung“ ist.
”
Für genauere Informationen bezüglich des Designprozesses sei an dieser Stelle auf Anhang F ab
Seite 137 verwiesen.
7.1 Analysephase
Der Designprozess begann in Modul PREN1 mit der Analysephase. Die Aufgabenstellung musste
genauestens untersucht und Unklarheiten beseitigt werden. Der Markt wurde auf bereits bestehende
Lösungen untersucht, Ideen zusammengetragen sowie der Stand der Technik recherchiert.
60
7 Gestaltungskonzept
7.2 Konzpeptphase
Die Konzeptphase beinhaltete die Lösungssuche der Antriebsart, der Lenkung, sowie deren optimale Kombination zu einem Fahrwerk. Die Entscheidungskriterien der Konzeptphase, welche
höchsten Wert auf den Grundsatz form follows function“ (Louis H. Sullivan) legten, forderten
”
eine unterstützende Form zur erfolgreichen Fahrzeugplatzierung in der Garage, auch bei ungenauer,
unzureichender Positionierung des Fahrzeuges. Aus diesem Grund einigte sich das Team gemeinsam auf ein pfeilförmig angeordnetes Fahrwerk mit zwei angetriebenen Hinterrädern, welche die
Lenkfunktion übernehmen, sowie ein frei schwenkendes Vorderrad.
7.3 Entwurfsphase
Nachdem das Konzept und somit das Chassis für Argus bestimmt waren, konnte mit der Entwurfsphase begonnen werden. Bei allen Designentwürfen wurden folgende Gestaltungsgrundlagen
beachtet [14]:
• die Proportionen sollen ausgewogen und harmonisch sein
• formale Harmonie und Spannung als Gegensatz erzeugen
• Grenze zwischen zu viel“ und zu wenig“ ausloten
”
”
• Farbe und Form wirken zusammen und bestimmen das Gesamterscheinungsbild
Auf diverse Skizzen und Handrenderings folgten, mit Hilfe ausgelaserter Chassis aus Holz, mehrere
Modellstudien sowie 3D Prototypen. Die Formfindung entwickelte sich weiter und endete in einer
detaillierten, massstäblichen CAD Umsetzung – siehe hierzu Abbildung 7.1.
7.4 Realisierungsphase
Diverse Möglichkeiten zur Realisierung der geplanten Karosserie standen zur Auswahl. Der Entscheid
fiel auf das aufwendige Laminieren mit einem Glasfasergewebe, welches dem Kohlenfasergewebe
sehr nah kommt um das Gesamterscheinungsbild gezielt zu prägen. Die Herstellung der Karosserie
ist in ?? ab Seite ?? detailiert beschrieben, daher sei an dieser Stelle darauf verwiesen.
Mit Hilfe des CAD-Renderings konnte eine Negativform erstellt werden, die anschliessend aus
Ebazell 260 gefräst wurde. Die resultierende Form ist in Abbildung 7.2 Teilbild (a) ersichtlich. Die
Oberfläche des Negativs wurde fein geschliffen und mit fünf Schichten Trennwachs eingestrichen.
Nach einer Schicht Epoxidharz folgte das Glasfasergewebe, wie dies in Abbildung 7.2 Teilbild (b) zu
sehen ist. Nach drei bis vier weiteren Gewebeschichten liess man die Form drei Tage trocknen. Bevor
die Form schlussendlich auf die Bedürfnisse zuschnitten werden konnte, überzog man die glatte und
formtreue Aussenfläche nochmals mit einer Schicht Glasfasergewebe, denn eine zu glatte Oberfläche
erhöht die Lichtreflektion und somit das Risiko, dass Probleme mit der Bildverarbeitung auftreten
könnten. Das Resultat ist in Abbildung 7.2 Teilbild (c) ersichtlich. Die Fertigungsunterlagen für die
Form der Karosserie sind in Anhang D ab Seite 121 ersichtlich. In Abbildung 7.3 ist das Fahrzeug
mit montierter Karosserie dargestellt.
7.4 Realisierungsphase
(a) Entwurfsskizzen
(b) Holzmodelle
(c) Resultat als CAD-Rendering
Abb. 7.1. Iterationen in der Entwurfsphase
61
62
7 Gestaltungskonzept
(a) Form
(b) Auskleidung
(c) Fertige Karosserie
Abb. 7.2. Herstellung der Karosserie
7.4 Realisierungsphase
(a) Ansicht von links
(b) Ansicht von rechts
Abb. 7.3. Ansicht des Fahrzeugs bei montierter Karosserie
63
Teil III
Anwenderhinweise
8
Inbetriebnahme
8.1 Benötigtes Material
Zur Inbetriebnahme des Argus-Systems sind folgende Komponenten zusätzlich zum Fahrzeug selbst
noch nötig:
• handelsübliche USB-Webcam
• Computer mit Linux-Betriebssystem und Bluetooth-Schnittstelle
• Stativ für die Kamera
• Auf dem Linux-Rechner installierte Argus-Software
Zudem sollten die Fahrzeugakkus geladen sein.
8.2 Aufbau der Bluetooth-Verbindung
Zunächst wird das Fahrzeug eingeschaltet. Die PWR-LED (grün) muss leuchten. Wenn zusätzlich
hierzu noch die ERR-LED (rot) leuchtet, so bedeutet dies, dass die Akkuspannung zu tief ist;
in diesem Falle sind die Akkus zu laden. Sofern jedoch die Akkuspannung ausreichend ist, wird
umgehend die Bluetooth-Verbindung mit der Basiseinheit aufgebaut, die orange DBG-LED sollte
nun blinken.
8.3 Einrichten der Kamera
Bevor mit dem Fahrzeug der Parcours befahren werden kann, sind jedes Mal folgende Schritte
durchzuführen:
1. Ausrichten der Kamera
2. ggf. einstellen von Helligkeit, Kontrast etc.
3. Auswahl der Referenzpunkte
4. Kontrolle der Referenzpunkte
5. Auswahl der Farbmarkierungen
68
8 Inbetriebnahme
8.3.1 Ausrichten der Kamera
Auf dem Linux-Rechner muss nun in der Argus-Software das Kamerabild überprüft werden. Es
sollte eine Ansicht ähnlich wie in Abbildung 8.1 anzeigen.
Abb. 8.1. So sollte das Kamerabild aussehen. Unten rechts ist auf dem Startfeld noch das Fahrzeug zu
erkennen.
Dank des Live-Bildes ist hier noch eine Ausrichtung der Kamera möglich. Diese ist aber grundsätzlich
unkritisch; lediglich die vier Referenzpunkte – auf die in Abschnitt 8.3.3 näher eingegangen wird –
müssen sichtbar sein.
8.3.2 Konfiguration der Kamera
Mit dem in Abbildung 8.2 ersichtlichen GUI lässt sich das Kamerabild bezüglich Weissabgleich,
Kontrast, Farbtemperatur etc. konfigurieren, um eine optimale Farbwiedergabe zu erzielen. I.d.R.
kann man mit den Standardwerten fortfahren; wenn jedoch wenig Umgebungslicht vorhanden ist,
muss ggf. die Helligkeit und der Kontrast des Kamerabildes etwas erhöht werden.
8.3.3 Referenzpunkte
Sofern sich das Kamerabild als tauglich erweist, müssen nun die vier Referenzpunkte angegeben
werden. Diese sind notwendig, um eine perspektivische Transformation des Kamerabildes vorzunehmen und so die genaue Fahrzeugposition zu berechnen. Die Referenzpunkte werden einfach im Bild
angeklickt; Abbildung 8.3 zeigt die Referenzpunkte. Die Reihenfolge, in der die Punkte selektiert
werden, ist genau wie angegeben einzuhalten; andernfalls wird eine falsche Entzerrmatrix berechnet.
Dies erkennt man aber sofort anhand des fehlerhaften Kontrollbildes.
Das anhand dieser Referenzpunkte errechnete Bild wird im GUI ebenfalls angezeigt; darüber wird ein
Modell der zu befahrenden Strecke abgebildet, damit kontrolliert werden kann, ob die berechneten
Positionen mit der Realität übereinstimmen. In diesem Bild ist insbesondere zu kontrollieren, ob
die Oberkante der Garagen stimmt und die Position der Hinteren Wand, wo der QR-Code befestigt
wird. Die zu kontrollierenden Puntke sind in Abbildung 8.3
8.3 Einrichten der Kamera
69
Abb. 8.2. GUI zur Konfiguration der Kamera
Abb. 8.3. Die vier zu selektierenden Referenzpunkte (links) und Kontrolle (rechts)
8.3.4 Farbmarkierungen
Nachdem die Referenzpunkte ausgewählt sind, kann mit der Angabe der Farben für die Erkennung
der Farbmarkierungen fortgefahren werden. Das zugehörige GUI ist in Abbildung 8.4 ersichtlich.
Das Fahrzeug ist derart auf der Startfläche zu platzieren, dass beide Farbmarkierungen im entzerrten
Kamerabild zu sehen sind. Danach muss zuerst Farbe 1 ausgewählt werden. Hierzu klickt man
zunächst bei Color one“ auf Pick color“ – Abbildung 8.4 markiert mit 1“ – und wählt im
”
”
”
Kamerabild auf den grünen Farbpunkt aus. Im obereb Bereich – markiert mit 2“ – kann kontrolliert
”
werden, ob die Farbe sauber erkannt wird. Es darf nur der grüne Farbpunkt hervorgehoben werden;
alle anderen Farben müssen Schwarz sein. Sofern die Farbe nicht akkurat erkannt wird und daher
70
8 Inbetriebnahme
noch andere, störende Pixel sichtbar sind, kann der Vorgang einfach noch einmal wiederholt werden
(Farbe erneut selektieren) oder es kann händisch an den Farbreglern optimiert werden.
Abb. 8.4. Auswahl der Farben für die Farbmarkierungen
Nach der Selektierung der grünen Farbe wird nun genau gleich verfahren für die gelbe Farbe. Man
klickt also bei Color two“ auf Pick color“ und wählt dann im rechten Kamerabild den gelben
”
”
Farbpunkt aus. Auch hier muss wieder kontrolliert werden, dass die Farbe sauber erkannt wurde.
Es ist wichtig, dass als Farbe 1 diejenige Farbe der hinteren Markierung angegeben wird (grün) und
für Farbe 2 diejenige Farbe der vorderen Markierung. Werden die beiden Farben vertauscht, dann
wird das Fahrzeug immer in die entgegengesetzte Richtung fahren und kann so schlimmstenfalls
mit Gegenständen kollidieren und diese beschädigen bzw. selber beschädigt werden.
8.3.5 Tracking
Nachdem die Kamera kalibriert ist und die Referenzpunkte und die Farben ausgewählt sind, kann
in den Modus Tracking“ geschaltet werden. Hier wird mit einem grünen Punkt stets die aktuelle
”
Ausrichtung und Position des Fahrzeugs angegeben, während ein blauber Punkt den anzufahrenden
Zielpunkt markiert. Das Tracking-GUI ist in Abbildung 8.5 zu sehen.
Es ist unbedingt zu prüfen, ob
a) die Position des Fahrzeugs augenscheinlich korrekt ist
b) die Ausrichtung des Fahrzeugs auf dem Tracking-Bildschirm mit der realen Ausrichtung des
Fahrzeugs übereinstimmt.
8.4 Start des Fahrzeugs
Nachdem die in den vorhergehenden Abschnitten beschriebenen Vorbereitungen erfolgreich durchgeführt wurden, kann das Fahrzeug gestartet werden. Dazu klickt man lediglich auf die Schaltfläche
8.4 Start des Fahrzeugs
71
Abb. 8.5. Ansicht des Tracking-GUI
START!“. Sofern die Akkus des Fahrzeugs auf eine noch ausreichend hohe Spannung geladen sind,
”
fährt das Fahrzeug unverzüglich los. Auf dem Tracking-Bildschirm kann jederzeit die gegenwärtige
Position sowie der nächste anzufahrende Wegpunkt eingesehen werden.
Im rechten Teil des Fensters sind zudem noch einige hilfreiche Anzeigen. Der Reihe nach (von oben
nach unten) werden laufend folgende Werte angezeigt:
• x- und y-Position des Fahrzeugs in [mm], bezogen auf die linke obere Ecke des Parcours
• Ausrichtung des Fahrzeugs (Winkel) in [◦ ]
• CPU-Auslastung des Fahrzeug-Bordcomputers in [%]
• Akkuspannung in [V]
• Anzahl vom Fahrzeug empfangener Telegramme
• Anzahl vom Fahrzeug gesendeter Telegramme
• Geschwindigkeit des linken Rades
• Geschwindigkeit des rechten Rades
• Anzahl der Telegramme mit CRC-Fehlern
• Status der Bluetooth-Verbindung
• Nummer der anzufahrenden Garage
• vom QR-Code ausgelesener URL
All diese Werte werden im Intervall von 100 ms aktualisiert.
Sofern das Fahrzeug nach dem Klick auf START!“ nicht losfährt, liegt möglicherweise eine Störung
”
des Systems vor, welche gemäss Kapitel 9 zu beheben ist.
9
Störungsbehebung
Das Argus-System wurde sehr sorgfältig in vielen Durchläufen getestet und beinhaltet für viele
Szenarios eine Fehlerbehandlung. Dennoch kann es nicht ausgeschlossen werden, dass Störungen
auftreten. Mögliche Ursachen und fehlerbehebende Massnahmen sind in Tabelle 9.1 ersichtlich.
Fehlerbild
Ursache
Massnahme(n)
Keine Reaktion beim Einschalten
Sicherung defekt
Sicherung prüfen und ggf. ersetzen
Akkus nicht eingesetzt
Akkus einsetzen
Akkus vollkommen entladen
Akkus laden
Fehler im Motortreiber
Fahrzeug ausschalten und wieder einschalten
Unterspannung
Akkus laden, bis die Spannung
>13.5 V ist
Motortreiber defekt
SR407-Platine muss repariert werden (ersetzen der Motortreber; siehe
Stückliste auf Seite 136 in Anhang E
OTW-LED (rot) leuchtet
Motortreiber überhitzt
Fahrzeug ausschalten und Treiber
abkühlen lassen
QR-Code wird nicht erkannt
Sensor schlecht ausgerichtet
Den Sensor so ausrichten, dass der
grün leuchtende Balken beim Lesen
des Codes ungefähr in der Mitte ist
zu grosse Distanz zum
Code
Distanz verkleinern
zu kleine Distanz zum
Code
Distanz vergrössern
Bluetooth-Verbindung
schlägt fehl
Hardwarefehler
Reset-Taster auf dem Fahrzeug
betätigen
Bluetooth-Verbindung
schlägt fehl
Fehler in
Software
ERR-LED (rot) leuchtet
Fortsetzung auf nächster Seite
der
PC-
Software neu starten
74
9 Störungsbehebung
Fehlerbild
Ursache
Massnahme(n)
Farbarkierungen werden
nicht erkannt
Umgebung ist zu dunkel
Für ausreichende Beleuchtung sorgen
Umgebungslicht
verfälscht Farben
Für anderes Umgebungslicht (vorteilhaft Tageslicht) sorgen
Kamera
briert
falsch
kali-
Kamera kalibrieren
Farbmarkierungen
falsch kalibriert
Farbmarkierungen erneut kalibrieren
die
Farbmarkierungen bei
der Kalibrierung vertauscht
Kalibrierung erneut durchführen
Fahrzeug erreicht Sollpositionen ungenau
Referenzpunkte ungenau
Kalibrierung erneut durchführen
Schlupf der Räder
Räder prüfen oder anderen Untergrund verwenden
Fahrzeug fährt
falsche Richtung
in
Tabelle 9.1: Mögliche Störungen und Massnahmen zur Behebung
Teil IV
Marketing
10
Messestand
10.1 Konzept
Das Ziel des Messestandes ist, den Nutzen, der durch die Eigenschaften
• Präzision durch Bildverarbeitung
– Kamera
– QR-Sensor
• Remote Control via Bluetooth
• Leistungsstark dank zweier Motoren
• 360◦ Drehung möglich
• Leicht durch effiziente Materialnutzung
entsteht, zu kommunizieren. Das von der Gruppe vorgeschlagene und in der Dokumentation bereits
erwähnte Anwendungsgebiet, das Flughafenrollfeld, soll dem Messebesucher nahe gebracht werden,
aber auch das Potential bewahren, dass der Betrachter die Technologie ebenfalls in anderen Gebieten
sich vorstellen kann.
Der Messestandbesucher soll im Allgemeinem das Produkt erfahren können. Da das Team 8 nicht
der einzige Austeller ist, wird versucht, sich vom Auftreten anderer zu differenzieren. Dem Besucher
soll etwas geboten werden, anstatt das man ihn mit Informationen bedrängt.
Deshalb wird folgendes Konzept verfolgt: Auf dem Ausstellungstisch (180 cm × 70 cm) wird eine
Szenerie aufgebaut, in welcher ein vermeidliches Modell (nur Hülle), ein Flugzeug aus einem Hangar
zieht. Das Tor ist nur soweit geöffnet, dass die Spitze des Flugzeuges erkennbar ist. Der Hangar
selber versinkt visuell im Posterhintergrund. Das Material des Hangars ist leicht transparent um
mit der Beleuchtung eine futuristische Atmosphäre und einen Eye-Catcher zu erzeugen. Die Poster
werden in den Hintergrund integriert und die Flyer auf dem Tisch ausgelegt, der die Landschaft
vom Poster und das Rollfeld wiederspiegelt.
Um den Stand attraktiv für den Besucher zu gestalten und sich von anderen Gruppen zu differenzieren, wird die Möglichkeit geboten, das funktionstüchtige Modell während der Vorführungspausen
auf einem Parcours zu fahren. Die entsprechende Software wurde bereits getestet. Um den Geist
des Wettkampfes weiter zu leben, wird jeweils die Bestzeit mit Namen angeschrieben. Auf diese
Art und Weise beschäftigt sich der Besucher freiwillig mit dem Produkt und bekommt einen
Eindruck von der Steuerung eines realen Mobiles durch Datenübertragung auf einen Rechner. Der
eine Nutzen, Steigerung der Sicherheit durch zentrale Steuerung, wird bereits im Spiel aufgezeigt.
Weitere Besucher können auf einen zweiten Bildschirm das Geschehen beobachten.
78
10 Messestand
Vorzugsweise befindet sich der Parcours ausserhalb des Zeltes. In diesem Fall ist der Durchlauf allerdings abhängig von äusseren Umständen, wie das Wetter oder unübersichtlicher Besucherverkehr.
Als alternative wird der Tisch, der zur Verfügung gestellt wird, durch einen leicht erhöhten Parcours
ersetzt. Die davor geplante Szenerie wird nur noch rein optisch durch die Plakatwand dargestellt.
Parcours und Szenerie harmonieren miteinander. Flyer können mit Hilfe einer Box an die Stellwand
angebracht werden.
10.2 Benötigte Materialien
Von der Hochschule Luzern bereitgestellte Materialien sind:
• Tisch 180 cm × 70 cm
• Stellwand
Des Weiteren werden benötigt:
• Flyer (gemäss Aufgabenstellung in Anhang A ab Seite 97
• Poster
• QR-Code, verlinkt auf Website
• Bildschirm
Materialien für die Szenerie:
• Hangar
– Tiefziehfolie weiss
– LED-Streifen und dazugehörige Speisegeräte
• Flugzeug
– Styropor
– Filler
– Lack Weiss
– Plexiglasscheiben
• Argus-Attrappe
– Chassis (siehe Formbau)
– Räder
– Styropor
• Boden
– MDF-Platte
– Lack (Weiss/Grau)
– Klebstoff
– Sand, grobkörnig
– Moos/Stroh
10.2 Benötigte Materialien
– LED-Beleuchtung
• Hintergrund
– Poster
– Zweiseitiges Klebeband
• Spiel
– Laptop
– Kamera
– Folie incl. Folienstift
Allgemein notwendiges Material:
• Kabel für LED-Stromversorgung
• Netzteil
• Verlängerungskabel
79
11
Produktflyer
Die Aufgabenstellung beinhaltet auch die Gestaltung eines Produktflyers. Der vom Team 8 entworfene Flyer wird auf A4-Papier gedruckt und anschliessend in der Mitte gefaltet.
Auf den folgenden beiden Seiten ist der Produktflyer eingefügt.
11 Produktflyer
QR-Sensor
kann mit einem 35.8° Winkel
Codes aus einer Entfernung
von bis zu 25 cm auslesen und
liefert als Resultat direkt ascii
strings
Bordcomputer
Der Bordcomputer wurde
speziell für dieses System entwickelt und gebaut. Er beinhaltet eine leistungsstarke 32 Bit
160 MHz Cortex CPU
Federung
Das Fahrzeug ist komplett
gefedert, bei einem Gesamtgewicht von nur 1.5 kg
Maxon EC-Motoren
Die kompakten EC-Flachmotoren von Maxon bieten ein
Drehmoment von 55 mNm,
bei einer Drehzahl von bis zu
4500 1/min
Das Team
Das interdisziplinäre Team wurde aus den
Studienrichtungen Elektrotechnik, Maschinentechnik, Informatik und Wirtschaftsingenieurwesen der Hochschule Luzern Technik
und Architektur zusammengestellt.
Tobias Plüss, Elektrotechnik
tobias.plü[email protected]
Christian Bontekoe, Informatik
[email protected]
flexible.fast.furious
82
flexible.fast.furious
Technische Details
Hansueli Burri, Informatik
[email protected]
Silvan Demmel, Wirtschaftsingenieur
[email protected]
Martin Mägerlein, Wirtschaftsingenieur
[email protected]
Mathias Frei, Maschinentechnik
[email protected]
Nicolas Lehner, Maschinentechnik
[email protected]
Severin Frank, Maschinentechnik
[email protected]
Argus. Das System
Beim System Argus handelt es sich um
eines der aussergewöhnlichsten Konzepte
an dieser Erindermesse. Als einziges der
32 Teams steuern wir unser Fahrzeug mit
Hilfe einer externen Bilderkennung. Mit
einer einfachen Webcam überwachen wir
den gesamten Parcours. Die Erkennung
und Verarbeitung der Ist- und Sollposition
des Fahrzeuges, sowie die allenfalls daraus
folgenden notwendigen Korrekturen der
Fahrtrichtung, werden autonom von einer
selbst entwickelten Bilderkennungssoftware
vorgenommen. Diese Software entzerrt das
aufgenommene Bild und iltert ungewollte Farbentöne heraus. Nur die grüne und
gelbe Farbe wird zugelassen. Anhand der
Leuchtkörper auf dem Fahrzeug mit genau
diesen Farben, kann die Software zu jedem
Zeitpunkt die genaue Position und Fahrtrichtung unseres Fahrzeuges erkennen und
Kernkompetenzen
es präzise an die gewünschten Zielpunkte
navigieren. Es ist einfach, Hindernisse zu
umfahren, Kursänderungen vorzunehmen
oder Zielpunkte neu zu kalibrieren. Mit
diesem System ist es uns möglich, mit einer
hohen Geschwindigkeit den kürzesten Weg
zum Ziel zu fahren.
Um unser höchstes Ziel, diesen Wettbewerb
mit der Bestzeit zu beenden, erreichen zu
können, haben wir ausserdem einen speziellen QR-Sensor im Fahrzeug verbaut. Er
arbeitet sehr schnell, indet den Code in einem Winkel von fast 40° und liefert sogleich
eine URL an die zentrale Recheneinheit, was
erneut wertvolle Zeit einspart. Abgerundet
wird dieses System mit einer ebenfalls selbst
entwickelten App, die es dem Zuschauer
ermöglicht, die Zeit, die aktuelle Position,
sowie die ausgelesene Garagennummer auf
dem persönlichen SmartPhone abzufragen.
Argus sticht besonders durch seine Mischung zwischen Schnelligkeit und
Präzision heraus. Durch das ausgeklügelte
Design werden diese Eigenschaften bereits
auf Bilder vermittelt. Die aussergewöhnliche
Wendigkeit, ein Gesamtgewicht von nur
1.5 kg und eine sehr geringe ungefederte
Masse befähigen Argus, sich in jedem Terrain
zurecht zu inden. Das einzigartige System bietet zudem höchste Flexibilität für
verschiedenste Einsatzbereiche in unterschiedlichsten Branchen.
Anwendungsgebiete
11 Produktflyer
83
Das Team sieht die Anwendung von Argus
überall dort, wo sich wiederholende Prozesse von Fahrzeugen erledigen lassen und
sich das Areal visuell oder durch GPS kontrollieren lässt. Ein mögliches Anwendungsbeispiel bieten Flugplätze auf der ganzen
Welt. Durch autonomes Ziehen der Flugzeuge von den Gates zu den Rollbahnen und
zurück können erhebliche Mengen an Kerosin sowie Personalkosten eingespart werden.
Auch die Crew kann sich bereits kurz nach
der Landung mit administrativen Aufgaben
beschäftigen, was zu einer Verkürzung der
Gesamtarbeitszeit führt. Weiter kann der
komplette Bodenverkehr zentral überwacht
und gesteuert werden. Sicherheitsrisiken
durch menschliches Versagen werden damit
auf ein Minimum reduziert.
Einsatzmöglichkeiten in Logistikzentren
oder Ersatzteillagern sehen wir ebenfalls als
realistisch an.
Wo liegt ihr Anwendungsgebiet?
flexible.fast.furious
flexible.fast.furious
Teil V
Schlussdiskussion
12
Entwicklungs- und Materialkosten
Das gesamte Konzept konnte dank präziser Planung und selbst angefertigten Teilen mit dem
beschränkten Budget von CHF 600.- finanziert werden. Dabei fielen effektive Kosten von CHF
545.85 an. Bereits vorhandene oder gesponserte Produkte wurden mit einem fiktiven Betrag von
insgesamt CHF 44.- in die Kostenrechnung mit einbezogen. Es entstanden schlussendlich Kosten in
der Höhe von CHF 589.95.
Die detaillierte Kostenrechnung ist Tabelle 12.1 zu entnehmen.
Bezeichnung
Menge
Kosten [CHF]
Sensor LV3000
1
120.00
Mikroprozessor
1
12.00
Buetooth-Modul
0
25.00
Hühnerfutter (Elektronik)
1
10.00
Logitech Webcam
1
5.00
Leiterplatte SR407
1
60.00
USB-Verlängerungskabel 3 m
1
13.00
Kugellager
10
10.10
Zahnräder
6
18.20
LiPo-Akkumulatoren
4
8.00
Drehgeber
2
6.00
Stativ für Kamera
1
5.65
Material und Herstellung Chassis
1
100.00
Federn
4
22.95
EC-Flachmotoren
2
120.00
Ballonreifen
1
13.95
Material für Karosserie
1
40.00
Total
-
589.85
Tabelle 12.1. Kostenabrechnung
Die Anwesenheit aller Teammitglieder an den offiziell dafür vorgesehenen Zeiten wurde stets erwartet,
sodass diese Zeit genutzt und ausgeschöpft wurde. Zusammenfassend kann gesagt werden, dass die
88
12 Entwicklungs- und Materialkosten
Teammitglieder die vorgesehenen 180 Stunden weitgehend für den Erfolg dieses Projektes investiert
haben. Einzelne Disziplinen, welche im Vergleich untervertreten waren, arbeiteten auch einige
Stunden über diese Anzahl hinaus.
13
Erfahrungen
Durch die interdisziplinäre Zusammenstellung des Projektteams sowie die fordernde Aufgabenstellung bot dieses Produktentwicklungsmodul sämtlichen Fachdisziplinen diverse Gelegenheiten,
Erfahrungen zu sammeln und sich individuell weiterzuentwickeln. Die Kommunikation der Teammitglieder untereinander war zu Beginn fordernd, so gab es diesbezüglich unterschiedlichste Meinungen,
die weit auseinander gingen. Weiter konnte das Zusammenspiel und die Abhängigkeit der Disziplinen
bei einer Produktentwicklung hautnah erlebt werden. Es musste oft Rücksicht genommen werden,
Kompromisse waren in manchen Situationen unumgänglich.
Das Team meisterte sämtliche Hürden mit Bravour und kann schlussendlich ein gelungenes und vor
Allem funktionsfähiges System präsentieren, welches die externen Anforderungen erfüllt, die internen
sogar übertrifft. Es darf gesagt werden, dass das vorgelegte System durch seine Eigenheit heraussticht
und für Problemstellungen potenzieller Kunden in verschiedenen Märkten mit vernünftigem Aufwand
modifiziert und erweitert werden kann. Angemessene Kommunikation, unermüdlicher Einsatz der
Studierenden sowie die Rücksichtnahme auf andere Disziplinen waren die massgeblichen Faktoren
des erfolgreich entwickelten Systems.
14
Ausblick
Das einzige bestehende relevante Risiko für die erfolgreiche Präsentation des Systems an der
Erfindermesse vom 3. Juli 2013 sind die dort herrschenden, unvorhersehbaren Lichtverhältnisse. Die
Kamera muss die beiden Farbflächen beim gesamten Durchlauf des Parcours eindeutig identifizieren
können. Dabei muss die Farbe vom Start bis zum Ziel etwa gleich bleiben, ansonsten kann das
Fahrzeug nicht mehr überwacht und gesteuert werden. Sämtliche Möglichkeiten zur Minimierung
dieses Risikos wurden geprüft und umgesetzt. Die Farbflächen werden mit LEDs hinterleuchtet, um
die Helligkeit der Farbe auch an schlecht beleuchteten Stellen des Parcours konstant zu halten. Die
Form der Farbflächen wurde bewusst kugelförmig gewählt, sodass allfälliges Scheinwerferlicht nur zu
einem kleinen Prozentsatz auf die Linse der Kamera reflektiert werden kann. Die Oberflächenstruktur
der Farbflächen sowie des gesamten Fahrzeugs sind rau, damit das herrschende Licht der künstlichen
Beleuchtung in verschiedene Richtungen gebrochen und die Kamera nicht geblendet und somit
blind gemacht wird.
15
Fazit
Die Projektmodule Produktentwicklung 1 und 2 waren für die fachliche und persönliche Entwicklung
aller Teammitglieder äusserst wertvoll. Die beinhaltete praktische Umsetzung des erarbeiteten
Konzepts wurde sehr geschätzt. Neben den vielen immens wichtigen Erfahrungen hatte das Team
speziell in der Realisierungsphase viel Spass zusammen erlebt. Teilerfolge wurden frenetisch gefeiert,
Testfahrten inmitten von langsamen oder nicht funktionierenden Systemen der Mitstudierenden
genüsslich zelebriert. Das Team ist stolz auf die erbrachte Leistung und hofft auf eine gelungene
Erfindermesse und somit einen erfolgreichen Abschluss des Projekt Argus.
Teil VI
Anhang
A
Aufgabenstellung
Auf den folgenden Seiten ist die originale Aufgabenstellung PREN2“ eingefügt.
”
98
A Aufgabenstellung
Projektmodul Produktentwicklung PREN 12 / 13
Aufgabenstellung PREN 2 Frühlingssemester 2013
20. Februar 2013
Adrian Omlin
Autonomes Erkundungsgerät
1 2 3 4 4.1 4.2 4.3 5 Einleitung .................................................................................................................................... 2 Aufgabe ....................................................................................................................................... 2 Randbedingungen ........................................................................................................................ 2 Abschlusspräsentation, Erfindermesse und Wettbewerb............................................................. 2 Erfindermesse ........................................................................................................................... 2 Wettbewerb .............................................................................................................................. 3 Wettbewerbskriterien ............................................................................................................... 3 Zulassung Kompetenznachweis und Bewertung PREN 2 ........................................................... 4 Modulverantwortlicher:
Ernst Lüthi
Fachliche Begleitung:
De Angelis Marco
Dersch Ulrich
Habegger Jürg
Heinze Franziska
Imboden Christoph
Iseli Martin
Jud Martin
Klaper Martin
Koller Thomas
Lang Udo
Lüthi Ernst
Mettler Rolf
Omlin Adrian
Thalmann Markus
Vogel Martin
Zepf Günther
Seite 1 / 5
A Aufgabenstellung
1
Einleitung
Das Projektmodul Produktenwicklung PREN 2 baut auf PREN 1 auf. Sie beweisen in PREN 2 die
Tauglichkeit Ihres in PREN 1 ausgearbeiteten Konzepts mit der Realisierung des Systems und der
erfolgreichen Teilnahme an der Erfindermesse mit Wettbewerb.
Die für PREN 1 formulierte Aufgabenstellung sowie die Dokumente „FAQ_PREN1_HS12“ und
„Spezifikation PREN QRCode Abfrage“ gelten weiterhin.
2
Aufgabe
Sie bauen basierend auf dem in PREN 1 ausgearbeiteten Konzept ein autonomes Erkundungsgerät,
das nach erfolgtem Startbefehl einen QR-Code auffindet und einliest, mit der erhaltenen Information
per Internet eine Unterstandnummer abholt und anschliessend im oder auf dem richtigen Untersand
parkiert. Falls als notwendig erachtet, kann eine stationäre Steuerung eingesetzt werden. Genauere
Angaben sind in der Aufgabenstellung von PREN 1 zu finden.
Ihre Entwicklung werden Sie an einer im Kompetenznachweis integrierten Erfindermesse
präsentieren. An dieser Erfindermesse wird auch ein Wettbewerb ausgetragen, an der Ihr Gerät die
oben beschriebene Aufgabe in möglichst kurzer Zeit erfüllen soll.
Weiter soll ein Unternehmer so von Ihrer Entwicklung zu überzeugt werden, dass er Ihnen diese
nach dem Wettbewerb abkauft und zu einem Produkt weiterentwickelt.
Der Messeauftritt, das Design Ihres Gerätes, der Internetauftritt und Ihr professionelles Verhalten
sind wichtige Überzeugungsfaktoren und daher Bestandteil der Aufgabe.
Um den Besucher der Erfindermesse von der eigenen Lösung zu überzeugen, muss der Auftritt an
der Erfindermesse geplant und organisiert werden. Der Messestand ist zu gestalten und aufzubauen.
Weiter sind ein Poster und ein Produktflyer zu gestalten. Das Poster beschreibt Ihre Entwicklung.
Der Flyer im Umfang einer A4-Seite zeigt, welchen Mehrwert Ihre Entwicklung dem Kunden bietet.
Für Poster und Flyer wird je ein Template abgegeben.
Ihr Internetauftritt soll weiterhin über Ihr Projekt informieren, den aktuellen Entwicklungsstand
darstellen und Interessenten für Ihre Entwicklung begeistern. Er ist wöchentlich zu aktualisieren.
Die Arbeit muss dokumentiert werden.
3
Randbedingungen
Die in PREN1 gesetzten Rahmenbedingungen betreffend System, Parcours, Material und Kosten
gelten weiterhin.
4
Abschlusspräsentation, Erfindermesse und Wettbewerb
Die Abschlusspräsentation besteht aus zwei Teilen. Im ersten Teil präsentiert jedes Team ähnlich
wie in PREN 1 seine Projektresultate den Experten und Fachdozenten. Anschliessend sind Fragen
zu beantworten. Das Gestaltungskonzept für den Messestand und den Flyer soll in dieser
Präsentation ebenfalls vorgestellt werden (maximal ein Viertel der Präsentationszeit).
Im zweiten Teil stellen Sie Ihr Gerät und Ihre Entwicklung an einer Erfindermesse aus. Mit einer
erfolgreichen Teilnahme am Wettbewerb wird der Funktionsnachweis erbracht.
4.1
Erfindermesse
Die Erfindermesse wird in einem Zelt zwischen Trakt II und Trakt III der HSLU T&A stattfinden.
Jedem Team steht ein 180 cm x 80 cm grosser Tisch zur Verfügung. Hinter dem Tisch können an
Stellwänden das Poster, Plakate oder ähnliches befestigt werden. Die voraussichtliche
Raumaufteilung ist in Abbildung 1 dargestellt.
Seite 2 / 5
99
A Aufgabenstellung
24 32
28
27
31
24
22
23
20
19
16
30
15
29
26
2
3
14
25
18
21
17
1
100
Abbildung 1: Raumaufteilung im Zelt Kompetenznachweis PREN 2 FS13 (Quelle: E. Lüthi)
Sie legen den Fokus auf einen professionellen Auftritt und überzeugen Interessenten von Ihrer
Entwicklung.
4.2
Wettbewerb
Der Wettbewerb wird voraussichtlich alternierend auf zwei benachbarten Bahnen ausgetragen. Ein
Team absolviert den Parcours, während sich das nächste Team auf der andern Bahn einrichten kann.
Pro Team sind zwei Durchgänge kurz nacheinander vorgesehen. Der erfolgreichere der beiden
Durchgänge wird gewertet. Falls nötig, ist ein Akkuwechsel zwischen den Durchgängen möglich.
4.3
Wettbewerbskriterien
Für die Bewertung des Messeauftritts und des Wettbewerbs sind zwanzig Punkte vorgesehen, was
20 % der erreichbaren Gesamtpunktzahl entspricht. Zehn Punkte sind für den Messeauftritt, das
Design des Geräts, das Poster und den Flyer vorgesehen. Zehn Punkte sind für die erfolgreiche und
möglichst schnelle Absolvierung des Parcours bestimmt. Sie sind folgendermassen aufgeteilt:


Das Team mit der kürzesten Gesamtzeit erhält zehn Punkte, das Team mit der längsten
Gesamtzeit bekommt null Punkte. Dazwischen erfolgt die Punktezuteilung linear.
Die Gesamtzeit setzt sich aus der gemessenen Zeit zur Erfüllung der Aufgabe und aus
Strafzeiten zusammen. Folgende Strafzeiten werden gegebenenfalls zur gemessenen Zeit
hinzuaddiert:
Die Nummer des Unterstands wird falsch oder gar nicht angezeigt:
10 s
Das Gerät parkiert vollständig im oder auf dem falschen Unterstand:
20 s
Das Gerät parkiert nicht vollständig im Unterstand (oder es steht nicht genau
auf dem Unterstand):
Falls weniger als ein Viertel aus dem/über den Untersand herausragt:
Falls mehr als ein Viertel aus dem/über den Unterstand herausragt:
Falls das Gerät ausserhalb des Unterstandes parkiert, wird der Durchgang
nicht gewertet. (Ausnahme: hinten herausfahren, siehe unten)
5s
20 s
-
Das Gerät fährt hinten aus dem Unterstand heraus:
20 s
Die Strafzeiten werden kumuliert. Wird beispielsweise der falsche Unterstand angezeigt und im
falschen Unterstand parkiert, werden 30 s Strafzeit berechnet. (Auch wenn Anzeige und Unterstand
Seite 3 / 5
A Aufgabenstellung
übereinstimmen.) Ragt das Gerät zusätzlich noch knapp einen Viertel der Gerätelänge aus dem
Unterstand heraus, sind es 35 s Strafzeit.
Falls das Gerät auf dem Unterstand landet, ist die Standfläche des Geräts massgebend.
Wird nach dem Start das Gerät berührt oder wird sonst irgendwie eingegriffen, wird der Durchgang
nicht gewertet. Wird der Unterstand nach drei Minuten nicht erreicht, wird der Durchgang abgebrochen und nicht gewertet. Ein nicht gewerteter Durchgang kann in der Regel nicht wiederholt
werden.
5
Zulassung Kompetenznachweis und Bewertung PREN 2
Für die Zulassung zum Kompetenznachweis müssen die folgenden Punkte erfüllt sein:
 Detailplanung für die Entwurfs- und Realisierungsphase (Testat 1).
Freitag, 08.03.13, 12:00 Uhr auf Ilias
 Gerät aufgebaut und für Testläufe bereit, Grobkonzept des Messeauftritts (Testat 2).
Donnerstag, 02.05.13: Demonstration vor Dozententeam
 Freigabe des lauffähigen Systems und Projektdokumentation zu mindestens 80%
abgeschlossen, Konzept Messeauftritt definitiv (Testat 3).
Freitag, 24.05.13, 12:00 Uhr auf Ilias
Neben der technischen Richtigkeit legen wir weiterhin unser Augenmerk auch auf die professionelle
Abwicklung des Projekts. Dazu gehören unter anderem:
 Kontinuierliche Projektplanung mit Vergleich von Planung und Realität
 Risikomanagement
 Übereinstimmung des Gesamtfunktionsmusters mit der Anforderungsliste. Die
Übereinstimmung ist zu überprüfen und zu belegen.
 Vollständige, verständliche und nachvollziehbare Dokumentation des realisierten Systems
und der Planung des Messeauftritts. Der Aufbau der Dokumentation basiert auf den Inputs
aus dem Kontextmodul 1.
Seite 4 / 5
101
102
A Aufgabenstellung
Für den Kompetenznachweis werden die folgenden Kriterien mit der entsprechenden Gewichtung
bewertet (PREN2):
Kriterien
Gewichtung
Teamarbeit und Arbeitsweise
Zusammenarbeit / Interdisziplinarität / Arbeitsteilung / Systematik /
10 %
Projektmanagement, Zeitplanung / Problemerfassung / Konfliktbewältigung
/ Einsatz, Initiative , Effizienz, Arbeitsmenge / Umgang mit Risiken
Resultate und Ergebnisse
Konzept, Innovationsgehalt / technische Machbarkeit, technische
Richtigkeit, sinnvoller Einsatz von Technologien (Sensoren, Aktoren,
Energieversorgung, Systemsteuerung) / Softwarearchitektur,
Softwarestruktur, Schnittstellen / Funktionalität, Bedienbarkeit /
40 %
Herstellbarkeit, Wirtschaftlichkeit / Einfachheit, Vollständigkeit /
Zusammenspiel über die Grenzen der Disziplinen / Ausführung, Layout,
Qualität, Zuverlässigkeit / Übereinstimmung mit den Produktanforderungen
/ Überzeugungskraft
Planung des Messeauftritts
Dokumentation
Formales, Gestaltung, Gliederung / Integration der Disziplinen, Kohärenz /
Sprache / Vollständigkeit / Abbildungen, Tabellen , Quellenangaben /
15 %
Verständlichkeit, Nachvollziehbarkeit
5%
Internetauftritt
Präsentation
Präsentation der Projektresultate vor Experten und Fachdozenten im
Gruppenraum:
Beginn / Schluss / Sprache / Inhalt, Gewichtung, Integration der Disziplinen
10 %
/ Verständlichkeit / nonverbale Aspekte / Einsatz visueller Hilfsmittel /
Glaubwürdigkeit, Überzeugungskraft / Beantwortung der Fragen
Messeauftritt. Gerätedesign, Flyer und Poster
10 %
Funktionsnachweis vor Publikum, Wettbewerbserfolg:
(Details siehe Kapitel 4.3)
10 %
Wir erwarten eine Zusammenarbeit über die Grenzen der Disziplinen hinweg. Neben der
Bearbeitung der Marketingaspekte steht für die angehenden Wirtschaftsingenieure das Anwenden
und Vertiefen des Ingenieurwissens in der gewählten Vertiefungsrichtung im Vordergrund.
Alle Mitglieder des Teams erhalten die gleiche Bewertung. In Ausnahmefällen können einzelne
Teammitglieder separat bewertet werden.
Wird ein Team am Kompetenznachweis mit „FX“ bewertet, erhält es die Gelegenheit zur
Nachbesserung. Das kann eine Teamaufgabe sein. Alle Teammitglieder erhalten in diesem Fall nach
der Nachprüfung ein „F“ oder ein „E“. Es ist auch möglich, dass jedes Teammitglied zur
Nachbesserung eine individuelle Aufgabe lösen muss. Nach der Nachprüfung wird für jedes
Teammitglied einzeln entschieden, ob es ein „F“ oder ein „E“ erhält.
Seite 5 / 5
B
Projektplan
Auf der folgenden Seite ist der detailierte Terminplan für das Projekt ersichtlich.
Aktivitäten
Projektplan Team 8
Pren2
= offizieller Meilenstein
12.06.2013
= interner Meilenstein
Aktivitäten
Martin Mägerlein
Mathias Frei
Severin Frank
Nicolas Lehner
Christian Bontekoe
Hansueli Burri
Tobias Plüss
Markus Thalmann
SW
B
B
B
B
B
B
B
B
B
Detailplanung für die Entwurfs- und Realisierungsphase ausarbeiten und
anschliessend Herr Thalmann zur Durchsicht senden
Definition, was alles zu programmieren ist, modularer Aufbau bestimmen
V
B
B
B
B
B
B
B
B
B
= Tobias im Militär
21
März
22 28
1
1
2
7
8
3
April
14 15 21 22
4
5
4
5
6
Mai
11 12 18 19 25 26
7
8
9
2
3
10
9
MST
10 16 17 23 24 30 31 Nr
12
13
14
B Projektplan
2.0
Februar
Coach
Feedback zu Pren1, Kick off Meeting zu Pren2
Version
Monat
Datum
Projektbeteiligte
IT
ET
MT
Silvan Demmel
Datum
WI
ausführungsverantwortlich
entscheidet
ist beteiligt
wird informiert
104
V:
E:
B:
I:
Projekt
11
M1
Elektronik Hardware erstellen/zusammenfügen
USB Verlängerungskabel organisieren (min. 3m)
V
B
B
CAD Pläne des Fahrwerks und allen Einzelteilen zeichnen
Stativ bauen/organisieren
B
B
Motoren für den Antrieb des Fahrzeuges organisieren
Provisorium bauen, damit mit dem Programmieren der Motorensteuerung begonnen
werden kann
Zeitplan mit Herrn Thalmann besprechen, entgültige Abgabe Zeitplan
B
B
B
V
B
B
B
B
M2
Homepage überarbeiten/Design anpassen
B
Fahrwerksteile herstellen (extern/intern)
B
B
B
B
B
B
Software Programmieren, sämtliche Module fertig programmiert (IT)
B
Fahrzeugkomponenten zusammenbauen. Inbetriebnahme von Argus
(Fahrwerk und Elektronik komplett)
App für Startsignalanzeige programmieren
Projektkosten dokumentieren
B
Logo erstellen, Farben bestimmen
B
B
Leuchtbereiche in Form und Grösse definieren und herstellen
LED Gebilde löten
Karosserie Entwürfe entwickeln CAD Zeichungen erstellen, Designüberlegungen
vornehmen
Grobkonzept Messestand erarbeiten und dokumentieren
B
B
B
B
B
B
B
B
Homepage mit neuen Bilder, Logo und neuem Stand der Dinge überarbeiten
B
Negativ der Karosserie fräsen lassen
M3
B
Software auf dem Fahrzeug implementieren/Tests durchfürhen/System zum laufen
bringen/Zusammenspiel der Komponenten optimieren
Gesamtfunktionsmuster montiert und für Testläufe vor dem Dozententeam einsatzbereit
Dokumentation der Leuchtflächen erstellen
B
B
Messestrand und Plakat und Flyer erstellen/planen und Plakate/Flyer ausdrucken
B
B
B
B
B
B
B
B
B
B
Systemtests durchführen und Optimierungen vornehmen
Karosserie herstellen/laminieren, Befestigung der Karosserie auf Fahrzeug entw.
B
B
B
B
B
B
B
B
B
B
B
Freigabe lauffähiges Gesamtfunktionsmuster, Projektdokumentation (80%)
B
B
B
B
B
B
B
B
Systemtests abschliessen, allfällige Einstellungen dokumentieren
B
B
B
B
B
B
B
B
Projektdokumentation erstellen
B
B
B
B
B
B
B
B
Projektcontrolling
V
geplante Arbeitspakete pro Person
bereits erledigte Arbeitspakete pro Person
noch zu erledigende Arbeitspakete pro Person
B
B
Dokumentation der Fahrwerksabteilung erstellen
Projektplan_Team_8_V3, 12.06.2013
B
V
Ressourcenplanung
55 51 56 55 50 54 58 59
55 51 56 55 50 54 58 59
B
5
5
Seite 1
C
Mechanische Fertigungsunterlagen
106
Gesamtansicht
Aufhängung links
107
108
Aufhängung rechts
Getriebeachse 1
109
110
Getriebeachse 2
Getriebeplatte links
111
112
Getriebeplatte mitte
Getriebeplatte rechts
113
114
Grundplatte oben
Grundplatte
115
116
Mitnehmer
Querlenker
117
118
Gelenk für Vorderrad
Radachse für Vorderrad
119
120
Radgabel für Vorderrad
D
Form für die Karosserie
Das Design der Karosserie wurde anhand von diversen Design-Inspirationen entworfen, wie sie auf
den folgenden beiden Seiten ersichtlich sind.
122
Design-Inspirationen
Design-Inspirationen
123
124
Oben
Seite
125
E
Fertigungsunterlagen des Bordcomputers
Auf den folgenden Seiten sind die einzelnen Fertigungsunterlagen für den Bordcomputer ersichtlich.
Es handelt sich hierbei um
• das Schema ab Seite 127
• den Bestückungsplan ab Seite 133
• die Stückliste ab Seite 136
1
2
3
4
5
6
7
8
128
A
CON1
N1
COL1
L1
COL2
L2
TSR1-2433
100MHz/30R/3A
PIL101
100MHz/30R/3A
1
PIN101
PIL102
3
VOUT PIN103
VIN
PIL201
PIL202
VCC
GND
VBAT
3.3V power supply
1A max.
PIR102
2
PIN102
PIC101
PIC102
PIC202
PIC201
COC1
C1
10u
GND
PIR101
COC2
C2
PIC301
PIC302
100n
GND
GND
COR1
R1
100R
PIV102
PIV101
COC3
C3
COV1
V1
HSMG-C170
100u
GND
GND
B
B
Voltage regulator for hall sensors and gate drive
CON2
N2
COL3
L3
TSR1-24120
12V power supply
1A max.
100MHz/30R/3A
1
PIL302
PIN201
3
VOUT PIN203
VIN
12V
GND
PIL301
2
PIN202
PIC402
PIC401
PIC502
PIC501
COC4
C4
100n
COC5
C5
COX9
X9
1
PIX901
2
PIX902
100n
CON2
PIR202
GND
COR2
R2
C
PIR201
GND
GND
C
Mounting holes
POVBAT0MEAS
VBAT_MEAS
COL4
L4
COR4
R4
0
100MHz/2000R/0.15A
PIR302
COR3
R3
PIR301
GND
47k
4k7
PIC602
PIC601
VCC
COC6
C6
PIL402
100n
PIL401
PIR401
3.3V analog power supply
150 mA max.
COMH1
MH1
VDDA
PIR402
COMH2
MH2
PIMH100
PIMH200
M3/PAD
M3/PAD
COMH3
MH3
COMH4
MH4
PIR502
COR5
R5
PIR501
GND
100R
PIMH300
GND
2.5V analog reference voltage
4 mA max.
VREF
PIN301
PIN302
Battery connector
CON3
N3
LM4040AIM3-2.5
PIC902
PIC901
PIMH400
M3/PAD
PIC701
PIC702
COC7
C7
10u
PIC802
PIC801
M3/PAD
COC8
C8
100n
COC9
C9
100n
GND
GND
COX1
X1
1
2
PIX102
3
PIX103
4
PIX101
VBAT
AGND
AGND
AGND
AGND
PIX104
D
D
733-334
* Not assembled components
PREN Argus SR407
GND
Hochschule Luzern
Horw, Switzerland
1
2
3
4
5
6
7
Created:
18.11.2012
plt
Checked:
26.01.2013
plt
Document No.:
-
Sheet:
1
A
/
5
8
E Fertigungsunterlagen des Bordcomputers
Logic and CPU supply
A
1
2
3
4
5
6
7
8
COV2
V2
HSMS-C170
Status LEDs
COR6
R6
100R
VCC
COD1A
D1A
Decoupling capacitors
PO\OTW
OTW
PIC10 2
PIC10 1
COC10
C10
100n
PIC1 02
PIC1 01
PIC1202
PIC1201
COC11
C11
100n
PIC1302
PIC1301
COC12
C12
100n
PIC1402
PIC1401
COC13
C13
100n
COC14
C14
100n
PIC1502
PIC1501
PIC1602
PIC1601
COC15
C15
100n
1PID101
1
2
PID102
PIR602
PIR601
PIV202
PIV201
74HC14D
COC16
C16
100n
PID107
PID1014
COV3
V3
HSMS-C170
A
VCC
PO\FAULT
FAULT
GND
COD1B
D1B
3PID103
A
COR7
R7
100R
1
4
PID104
PIR701
PIR702
PIV302
PIV301
74HC14D
3
PIX203
6
PIX206
8
PIX208
10
PIX2010
12
PIX2012
14
PIX2014
16
PIX2016
18
PIX2018
20
PIX2020
5
PIX205
7
PIX207
9
PIX209
11
PIX2011
13
PIX2013
15
PIX2015
17
PIX2017
19
PIX2019
COS1
S1
VCC
PIR1201
4k7
4k7
4k7
4k7
PIR902
PIR10 2
PIR1 02
PIR1202
NLTRST
TRST
NLTDI
TDI
NLSWDIO0TMS
SWDIO/TMS
NLSWCLK0TCK
SWCLK/TCK
NLSWO0TDO
SWO/TDO
NLRESET
RESET
PID206 PID201 PID2019 PID2028 PID2050 PID2075 PID2010 PID202
90
PID2090
77
PID2077
72
PID2072
76
PID2076
89
PID2089
14
PID2014
TRST
TDI
TMS / SWDIO
TCK / SWCLK
TDO / SWO
RESET
94
PID2094
BOOT0
N2520-6002RB
COC18
C18
COR15
R15
100n
0 *
23
PID2023
24
PID2024
25
PID2025
26
PID2026
29
PID2029
30
PID2030
31
PID2031
32
PID2032
67
PID2067
68
PID2068
69
PID2069
70
PID2070
71
PID2071
PIR1501
PIR1502
COR16
R16
0
PIR1601
PIR1602
GND
COD4
D4
1
PID401
CONT
3
OUT PID403
2
GND PID402
COR18
R18
4.000 MHz
GND
POVBAT0MEAS
VBAT_MEAS
0 *
PIR1801
PIR1802
VCC
GND
POSENSOR0TRIG
SENSOR_TRIG
POSENSOR0TX
SENSOR_TX
POSENSOR0RX
SENSOR_RX
PO\SENSOR0RESET
SENSOR_RESET
POBEEP
BEEP
COR19
R19
0
PIR1902
PIR1901
GND
VCC
VCC
C
PIR20 1
Driver fault warning
PIR20 2
35
PID2035
36
PID2036
37
PID2037
91
PID2091
92
PID2092
93
PID2093
95
PID2095
96
PID2096
47
PID2047
48
PID2048
51
PID2051
52
PID2052
53
PID2053
54
PID2054
PB0
PB1
PB2 / BOOT1
PB5
PB6
PB7
PB8
PB9
PB10
PB11
PB12
PB13
PB14
PB15
PIR2101
COR20
R20
COR21
R21
4k7
4k7
PIR2102
PID2049
PIC20 2
PIC20 1
PID2073
PIC2102
PIC2101
49
PO\FAULT
FAULT
Driver overtemp. warning
PO\OTW
OTW
C20
COC20
2u2
GND
VSSA
PIC1902
PIC1901
VCC
PID2010 PID2027 PID2074 PID209
PID2020
15
PID2015
PD0
PD1
PD2
PD3
PD4
PD5
PD6
PD7
PD8
PD9
PD10
PD11
PD12
PD13
PD14
PD15
81
82
83
84
PID2084
85
PID2085
86
PID2086
87
PID2087
88
PID2088
55
PID2055
56
PID2056
57
PID2057
58
PID2058
59
PID2059
60
PID2060
61
PID2061
62
PID2062
PE0
PE1
PE2
PE3
PE4
PE5
PE6
PE7
PE8
PE9
PE10
PE11
PE12
PE13
PE14
PE15
97
98
1
PID201
2
PID202
3
PID203
4
PID204
5
PID205
38
PID2038
39
PID2039
40
PID2040
41
PID2041
42
PID2042
43
PID2043
44
PID2044
45
PID2045
46
PID2046
COD1D
D1D
9PID109
POA0IDX
A_IDX
PID2082
PID2083
TX
RX
CTS
RTS
POA0HALL0XOR
A_HALL_XOR
POB0HALL0XOR
B_HALL_XOR
POB0HALL010OUT
B_HALL_1_OUT
POB0HALL020OUT
B_HALL_2_OUT
POB0HALL030OUT
B_HALL_3_OUT
PODBG0TX
DBG_TX
PODBG0RX
DBG_RX
POTEST4
TEST4
POBT0TX
BT_TX
POBT0RX
BT_RX
PO\BT0RESET
BT_RESET
PO\BT0CTS
BT_CTS
PO\BT0RFR
BT_RFR
PIV502
PIV501
COC17
C17
100n
PIR1701
PIV602
PIV601
GND
COR17
R17
100R
Bluetooth module
Pins 10, 13 not available when THT variant is used
COV6
V6
HSMG-C170
GND
POBT0TX
BT_TX
POBT0RX
BT_RX
COD3
D3
3PID303
RX
4PID304
TX
PO\BT0CTS
BT_CTS
PO\BT0RFR
BT_RFR
2PID302
RFR
5PID305
CTS
PO\BT0RESET
BT_RESET
7PID307
PID2098
9
VCC PID309
VCC
1
GND
6
GND PID306
10
GND PID3010
13
PID3013
GND
PID301
RESET
GND
ARF7044A
POB0IDX
B_IDX
POA0IDX
A_IDX
POTEST5
TEST5
POTEST6
TEST6
POTEST7
TEST7
PID2097
Serial debug port
COX3
X3
1PIX301
2PIX302
3PIX303
NLTX
TX
NLRX
RX
C
CON3
GND
POTEST0
TEST0
POTEST1
TEST1
POTEST2
TEST2
POTEST3
TEST3
COD5
D5
11PID5011
T1IN
10PID5010
T2IN
12
PID5012 R1OUT
9
PID509 R2OUT
PODBG0TX
DBG_TX
PODBG0RX
DBG_RX
PIC2 02
PIC2 01
1
PID501 C1+
3
PID503 C1-
AGND
16
PID5016
PIC2502
PIC2501
PIX402
COC25
C25
100n
COC24
C24
100n
2
PID502
VCC
V+
14
T1OUT PID5014
7
T2OUT PID507
13
R1IN PID5013
8
R2IN PID508
4
C2+ PID504
5
C2- PID505
PIC2302
PIC2301
COC23
C23
100n
PIC2602
PIC2601
COC26
C26
100n
6
V- PID506
15
GND PID5015
ADM3202ARN
Beeper
D1E
COD1E
11
SP1 *
COSP1
PID1011
QCP-03A
1
10
PID1010
GND
GND
GND
74HC14D
D
PISP101
V8
COV8
PIV703
BAT54
V7
COV7
*
2N7002
PIX4012
POBEEP
BEEP
PIV701
PISP102
PIV801
PIV803
* Not assembled components
+
D1F
COD1F
13
PID1013
PIV702
1
12
PID1012
PREN Argus SR407
74HC14D
GND
3
4
VCC
Hochschule Luzern
Horw, Switzerland
GND
5
6
7
Created:
18.11.2012
plt
Checked:
26.01.2013
plt
Document No.:
-
Sheet:
2
A
/
5
8
129
GND
2
PIR1401
PIR1702
PIC2402 PIC2401
68711214022
1
PIR1402
B
PID2081
PIX401
PO\SENSOR0RESET
SENSOR_RESET
POSENSOR0TRIG
SENSOR_TRIG
8
PID108
Schema
D
PIV401
PIC1702 PIC1701
VCC
POSENSOR0TX
SENSOR_TX
POSENSOR0RX
SENSOR_RX
PIV402
COR14
R14
100R
1
VCC
VCC
COX4
X4
1
2
3
PIX403
4
PIX404
5
PIX405
6
PIX406
7
PIX407
8
PIX408
9
PIX409
10
PIX4010
11
PIX4011
12
PIR1301
GND
Connector for LV3000
Test points:
TEST0: 43
TEST1: 44
TEST2: 45
TEST3: 46
TEST4: 88
TEST5: 1
TEST6: 2
TEST7: 3
TEST8: 30
PIR1302
74HC14D
COC22
C22
100n
GND
6
PID106
COV5
V5
HSMD-C170
C21
COC21
2u2
GND
1
74HC14D
POA0SENSE0U
A_SENSE_U
POA0SENSE0V
A_SENSE_V
POA0SENSE0W
A_SENSE_W
POB0SENSE0U
B_SENSE_U
POB0SENSE0V
B_SENSE_V
POB0SENSE0W
B_SENSE_W
POB0PWM0U
B_PWM_U
POB0PWM0V
B_PWM_V
POB0PWM0W
B_PWM_W
PO\A0RESET0U
A_RESET_U
PO\A0RESET0V
A_RESET_V
PO\A0RESET0W
A_RESET_W
PO\B0RESET0U
B_RESET_U
PO\B0RESET0V
B_RESET_V
PO\B0RESET0W
B_RESET_W
16
PID2016
17
PID2017
18
PID2018
33
PID2033
34
PID2034
63
PID2063
64
PID2064
65
PID2065
66
PID2066
78
PID2078
79
PID2079
80
PID2080
7
PID207
8
PID208
9
PID209
20
4
PID404
VCC
VSS
VSS
VSS
VSS
GND
10
27
74
99
GND
VCAP_2
VCC
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PA8
PA9
PA10
PA11
PA12
73
PIC1802
PIC1801
100n
POA0INC0A
A_INC_A
POA0INC0B
A_INC_B
POA0HALL010OUT
A_HALL_1_OUT
POA0HALL020OUT
A_HALL_2_OUT
POA0HALL030OUT
A_HALL_3_OUT
POTEST8
TEST8
POB0INC0A
B_INC_A
POB0INC0B
B_INC_B
POA0PWM0U
A_PWM_U
POA0PWM0V
A_PWM_V
POA0PWM0W
A_PWM_W
PIS102
B
COC19
C19
12
PID2012 XTAL1
13
PID2013 XTAL2
VCAP_1
PIS101
NLCLK
CLK
5PID105
POB0IDX
B_IDX
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
PC8
PC9
PC10
PC11
PC12
PC13
PC14
PC15
COR13
R13
100R
COD1C
D1C
PID2021
DTSM-62K-V-B
GND
COV4
V4
HSMD-C170
VREF
COD2
D2
STM32F407VGT6
22
4k7
VDDA
21
COR12
R12
11
19
28
50
75
100
COR11
R11
VDDA
1
PIX201
4
PIX204
PIR1 01
COR10
R10
VREF+
2
PIX202
PIR10 1
COR9
R9
6
PIR802
COX2
X2
Manual reset
PIR901
COR8
R8
VDD
VDD
VDD
VDD
VDD
VDD
PIR801
VBAT
Debug
SWD
JTAG
1
2
3
4
5
6
7
8
130
VCC
VCC
PIR2 02
PIR2302
COR22
R22
PIR2 01
COL5
L5
1k *
VCC
PIR2402
COR23
R23
PIR2301
1k *
PIR2401
A
COR24
R24
1k *
COD6B
D6B
NLH1A 3
H1A
PID603
100MHz/2000R/0.15A
POA0HALL010IN
A_HALL_1_IN
PIL501
PIL502
PIC2702
PIC2701
1
4
PID604
POA0HALL010OUT
A_HALL_1_OUT
2
PID602
POA0HALL020OUT
A_HALL_2_OUT
74HC14D
COC27
C27
47n *
COL6
L6
GND
100MHz/2000R/0.15A
POA0HALL020IN
A_HALL_2_IN
PIL601
COD6A
D6A
NLH2A 1
H2A
PID601
PIL602
PIC2802
PIC2801
1
74HC14D
COC28
C28
47n *
PID607 PID6014
COL7
L7
GND
100MHz/2000R/0.15A
POA0HALL030IN
A_HALL_3_IN
PIL701
PIC2902
PIC2901
VCC
COX5
X5
1
2
3
4
PIX504
5
PIX505
COD6C
D6C
NLH3A 5
H3A
PID605
PIL702
1
6
PID606
POA0HALL030OUT
A_HALL_3_OUT
74HC14D
COC29
C29
47n *
COD7B
D7B
4PID704
5PID705
PIX501
B
PIX502
Connectors for encoders
left
PIX503
COC69
C69
100n
VCC
POB0INC0A
B_INC_A
POB0INC0B
B_INC_B
POB0IDX
B_IDX
GND
COD7A
D7A
1
1PID701
2PID702
6
PID706
1
3
PID703
POA0HALL0XOR
A_HALL_XOR
B
PID707 PID7014
74HC86D
74HC86D
PIC6902 PIC6901
CON5
GND
GND
VCC
COX6
X6
1
2
3
PIX603
4
PIX604
5
PIX605
PIX601
PIX602
right
POA0INC0A
A_INC_A
POA0INC0B
A_INC_B
POA0IDX
A_IDX
CON5
VCC
VCC
PIR2502
PIR2602
COR25
R25
GND
PIR2501
COL8
L8
1k *
VCC
PIR2702
COR26
R26
PIR2601
1k *
PIR2701
COR27
R27
1k *
COD6D
D6D
NLH1B 9
H1B
PID609
100MHz/2000R/0.15A
POB0HALL010IN
B_HALL_1_IN
PIL801
PIL802
C
PIC30 2
PIC30 1
1
8
POB0HALL010OUT
B_HALL_1_OUT
PID608
C
74HC14D
COC30
C30
47n *
COL9
L9
GND
100MHz/2000R/0.15A
POB0HALL020IN
B_HALL_2_IN
PIL901
COD6E
D6E
NLH2B11
H2B
PIL902
PID6011
PIC3102
PIC3101
47n
1
10
POB0HALL020OUT
B_HALL_2_OUT
PID6010
74HC14D
COC31
C31
*
COL10
L10
GND
100MHz/2000R/0.15A
POB0HALL030IN
B_HALL_3_IN
PIL1001
COD6F
D6F
NLH3B13
H3B
PIL1002
PID6013
PIC3202
PIC3201
COC32
C32
47n *
1
12
POB0HALL030OUT
B_HALL_3_OUT
PID6012
74HC14D
COD7D
D7D
12
PID7012
13
PID7013
COD7C
D7C
1
11
PID7011
9
PID709
10
74HC86D
GND
VCC
PID7010
1
8
PID708
POB0HALL0XOR
B_HALL_XOR
74HC86D
C70
COC70
100n
PIC7002
PIC7001
D
D
GND
* Not assembled components
PREN Argus SR407
Hochschule Luzern
Horw, Switzerland
1
2
3
4
5
6
7
Created:
18.11.2012
plt
Checked:
26.01.2013
plt
Document No.:
-
Sheet:
3
A
/
5
8
E Fertigungsunterlagen des Bordcomputers
A
1
2
3
4
5
6
7
8
Motor A connector
A
POA0HALL020IN
A_HALL_2_IN
POA0HALL010IN
A_HALL_1_IN
POA0HALL030IN
A_HALL_3_IN
COD8
D8
5
PID805
RESET_A
14
PID8014 RESET_B
15
PID8015 RESET_C
PO\A0RESET0U
A_RESET_U
PO\A0RESET0V
A_RESET_V
PO\A0RESET0W
A_RESET_W
PO\FAULT
FAULT
PO\OTW
OTW
3
PID803
POA0PWM0U
A_PWM_U
POA0PWM0V
A_PWM_V
POA0PWM0W
A_PWM_W
4
PID804
2
PID802
13
PID8013 M1
12
PID8012 M2
11
PID8011 M3
7
PID807
OC_ADJ
10
PID8010
COR31
R31
B
27k
PIR3101
PIC4502
PIC4501
PIR3202
COR32
R32
1R
PIR3201
PIC3502
PIC3501
COC34
C34
220n
PIR2802
PIR2902
PIR2901
PIC3602
PIC3601
COC36
C36
36
1
18
19
COC41
C41
PIC4102
PIC4101
PID8036
PID801
PIC3702
PIC3701
100n
COC37
C37
PIC4202
PIC4201
100n
PIC3802
PIC3801
COC42
C42
100n
COC38
C38
PIC4302
PIC4301
100n
COC43
C43
PIC3902
PIC3901
COC39
C39
100n
PIC4 02
PIC4 01
100n
COC44
C44
100n
COC40
C40
100n
MC33204DG
AGND
12V
GND
GND
GND
GND
GND
GND
GND
5PIN405
+
6PIN406
-
7
PIN407
PIN501
PIN502
COR30
R30
100k
CON5
N5
LM4040AIM3-2.5
B
PID8018
PID8019
PIR30 1
VCC
CON4B
N4B
PIR30 2
PIC40 2
PIC40 1
PIR2801
Reference voltage for current measurement
COR29
R29
100k
VBAT
100n
GVDD_A
GVDD_B
GVDD_C
GVDD_C
COR28
R28
100R
220n
NLA0PHASE0U
A_PHASE_U
NLA0PHASE0V
A_PHASE_V
NLA0PHASE0W
A_PHASE_W
VREG
AGND
GND
GND
GND
THERMAL_PAD
52207-1185
COC35
C35
17
VDD PID8017
100n
9
8
PID808
24
PID8024
25
PID8025
37
PID8037
220n
34
PVDD_A PID8034
29
PVDD_B PID8029
21
PVDD_C PID8021
COC45
C45
PID809
PIC3402
PIC3401
COC33
C33
33
OUT_A PID8033
30
OUT_B PID8030
22
OUT_C PID8022
PWM_A
PWM_B
16
PID8016 PWM_C
A
GND
PIC3 02
PIC3 01
FAULT
OTW
6
PID806
PIR3102
12V
35
BST_A PID8035
28
BST_B PID8028
20
BST_C PID8020
COX7
X7
1
PIX701
2
PIX702
3
PIX703
4
PIX704
5
PIX705
6
PIX706
7
PIX707
8
PIX708
9
PIX709
10
PIX7010
11
PIX7011
AGND
AGND
GND
32
GND_A PID8032
31
GND_B PID8031
23
GND_C PID8023
DRV8332DKD
GND
GND
COR33
R33
COR34
R34
1k
PIR3301
COR35
R35
20k
PIR3302
COR36
R36
1k
PIR3401
PIR3402
PIR3501
COR37
R37
1k
20k
PIR3502
PIR3601
PIR3602
PIR3701
COR38
R38
20k
PIR3702
PIR3801
PIR3802
COR39
R39
R62, C14:
fc = 3.4 kHz
PWM freq shall be >10*fc
10R
PIR3901
PIR3902
4
VCC
COR40
R40
PIR40 1
4u7
0R05
C
3
PIN403
PIC4602
PIC4601
COC46
C46
2
PIN402
PIN404
+
-
PIN401
AGND
CON4C
N4C
MC33204DG
CON4A
N4A
MC33204DG
1
PIN401
11
PIR40 2
10
PIN4010
PIR4102
COR41
R41
9
PIN409
0R05
PIR4101
+
CON4D
N4D
MC33204DG
PIR4202
-
PIR4201
12PIN4012
+
13PIN4013
-
Possible OpAmps:
MC33204DG
TLV2774CD
MCP6294-E/SL
MCP604-I/SL
14
PIN4014
COR42
R42
0R05
C
AGND
COR43
R43
COR44
R44
COR45
R45
COR46
R46
1k
20k
1k
20k
PIR4301
8
PIN408
PIR4302
GND
PIR4401
PIR4402
PIR4501
PIR4502
PIR4601
COR47
R47
1k
PIR4602
PIR4701
GND
COR48
R48
20k
PIR4702
PIR4801
PIR4802
GND
POA0SENSE0U
A_SENSE_U
Gate driver decoupling caps
12V
POA0SENSE0V
A_SENSE_V
POA0SENSE0W
A_SENSE_W
PIC4702
PIC4701
COC47
C47
100n
PIC4802
PIC4801
COC48
C48
100n
PIC4902
PIC4901
COC49
C49
100n
PIC50 2
PIC50 1
COC50
C50
100n
D
* Not assembled components
PREN Argus SR407
1
2
3
4
5
6
7
18.11.2012
plt
Checked:
26.01.2013
plt
Document No.:
-
Sheet:
4
A
/
5
8
131
Hochschule Luzern
Horw, Switzerland
Created:
Schema
GND
D
1
2
3
4
5
6
7
8
132
Motor B connector
POB0HALL020IN
B_HALL_2_IN
POB0HALL010IN
B_HALL_1_IN
POB0HALL030IN
B_HALL_3_IN
COD9
D9
5
PID905
RESET_A
14
PID9014 RESET_B
15
PID9015 RESET_C
PO\B0RESET0U
B_RESET_U
PO\B0RESET0V
B_RESET_V
PO\B0RESET0W
B_RESET_W
PO\FAULT
FAULT
PO\OTW
OTW
3
PID903
POB0PWM0U
B_PWM_U
POB0PWM0V
B_PWM_V
POB0PWM0W
B_PWM_W
4
PID904
2
PID902
PIR5202
10
PID9010
COR52
R52
27k
PIR5201
PIC6302
PIC6301
9
PID909
8
PID908
24
PID9024
25
PID9025
37
PID9037
1R
PIR5301
PIC5202
PIC5201
PIC5302
PIC5301
COC52
C52
220n
220n
PIR4902
PIR50 1
COC54
C54
PIC5902
PIC5901
100n
AGND
GND
GND
GND
THERMAL_PAD
COR50
R50
100k
36
1
18
PID9018
19
PID9019
PID9036
PID901
COC59
C59
PIC5 02
PIC5 01
100n
COC55
C55
PIC60 2
PIC60 1
100n
COC60
C60
PIC5602
PIC5601
100n
COC56
C56
100n
PIC6102
PIC6101
COC61
C61
PIC5702
PIC5701
MC33204DG
COC57
C57
100n
100n
PIC6202
PIC6201
PIR5102
PIC5802
PIC5801
COC62
C62
100n
COC58
C58
100n
AGND
12V
GND
GND
GND
GND
GND
GND
VCC
CON6B
N6B
VBAT
PIC5402
PIC5401
PIR4901
PIR50 2
NLB0PHASE0U
B_PHASE_U
NLB0PHASE0V
B_PHASE_V
NLB0PHASE0W
B_PHASE_W
VREG
GVDD_A
GVDD_B
GVDD_C
GVDD_C
COR49
R49
100R
COC53
C53
17
VDD PID9017
100n
COR53
R53
220n
34
PVDD_A PID9034
29
PVDD_B PID9029
21
PVDD_C PID9021
COC63
C63
PIR5302
COC51
C51
33
OUT_A PID9033
30
OUT_B PID9030
22
OUT_C PID9022
PWM_A
PWM_B
16
PID9016 PWM_C
6
PID906
52207-1185
GND
PIC5102
PIC5101
FAULT
OTW
13
PID9013 M1
12
PID9012 M2
11
PID9011 M3
7
PID907 OC_ADJ
B
12V
35
BST_A PID9035
28
BST_B PID9028
20
BST_C PID9020
A
GND
PIR5101
5PIN605
+
6PIN606
-
7
PIN607
PIN701
PIN702
COR51
R51
100k
AGND
CON7
N7
LM4040AIM3-2.5
B
AGND
GND
32
GND_A PID9032
31
GND_B PID9031
23
GND_C PID9023
DRV8332DKD
GND
GND
COR54
R54
COR55
R55
1k
PIR5401
COR56
R56
20k
PIR5402
COR57
R57
1k
PIR5501
PIR5502
PIR5601
COR58
R58
1k
20k
PIR5602
PIR5701
PIR5702
PIR5801
COR59
R59
20k
PIR5802
PIR5901
PIR5902
COR60
R60
10R
PIR6001
PIR6002
4
VCC
COR61
R61
C
PIR6101
3
PIN603
PIC6402
PIC6401
COC64
C64
4u7
0R05
2
PIN602
AGND
-
PIN601
CON6C
N6C
MC33204DG
CON6A
N6A
MC33204DG
1
PIN601
10
PIN6010
PIR6202
COR62
R62
9
PIN609
0R05
PIR6201
+
8
PIN608
CON6D
N6D
MC33204DG
PIR6302
-
PIR6301
12PIN6012
+
13PIN6013
-
14
PIN6014
COR63
R63
0R05
C
AGND
COR64
R64
COR65
R65
1k
PIR6401
PIN604
+
11
PIR6102
COR66
R66
20k
PIR6402
GND
PIR6501
COR67
R67
1k
PIR6502
PIR6601
COR68
R68
1k
20k
PIR6602
PIR6701
PIR6702
PIR6801
GND
COR69
R69
20k
PIR6802
PIR6901
PIR6902
GND
POB0SENSE0U
B_SENSE_U
12V
POB0SENSE0V
B_SENSE_V
POB0SENSE0W
B_SENSE_W
PIC6502
PIC6501
COC65
C65
100n
PIC6 02
PIC6 01
COC66
C66
100n
PIC6702
PIC6701
COC67
C67
100n
PIC6802
PIC6801
COC68
C68
100n
D
D
GND
* Not assembled components
PREN Argus SR407
Hochschule Luzern
Horw, Switzerland
1
2
3
4
5
6
7
Created:
18.11.2012
plt
Checked:
26.01.2013
plt
Document No.:
-
Sheet:
5
A
/
5
8
E Fertigungsunterlagen des Bordcomputers
A
COX8
X8
1
PIX801
2
PIX802
3
PIX803
4
PIX804
5
PIX805
6
PIX806
7
PIX807
8
PIX808
9
PIX809
10
PIX8010
11
PIX8011
COX6
COMH4
PAMH400
COC7
COS1
COR4
COC8
COC18
PAS101
CON3 COC9
COR5
PAC1801
COX5
COX2
COR1
PAR102 PAV101 PAV501
PAS104 PAR101
PAV102 PAV502
PAS102
COV3
PAV401 PAV601
COV6PAV301 PAV201
COV2
COR14
COR13
PAV402
PAV602
PAR502 PAR501 PAC902 PAC901
PAR401 PAR402 PAC802COL4
PAC801
COD4
PAX501
COC24
PAX502
COD5
COC22 PAC2401 PAC2402 COC25
PAC2502 PAX503
PAC2202
PAC2501
PAC2201
COC23
PAX504
PAC2302
COC26
PAC2301
COX3 PAX505
COMH2
COV5COV4
COV1
PAS103
PAC1802
PAN302
PAN303
PAN301
PAD402
PAD401
PAR1401
PAR1402
PAV302 PAV202
PAMH200
COX4
PAR1301 COR17
PAR1701 COR7
PAR701COR6
PAR601
PAR1302 PAR1702 PAR702 PAR602
COC19
PAC1901
COSP1
PAX601
PAL401
PAD404 PAC1902 COV7 COV8
PAL402 PAC701 PAC702 PAD403
PAX602
PAV703
COC12
COC14
PAX603
PAC1202 PAC1201
P
A
V
7
0
1
P
A
V
7
0
2
COC15
2013PAD201PAD20P1ADPAC1401
201 PAD20P9AD2P0A8D207PAD2P0A6D20P5AD204PAD20P3AD2PAC1502
P0AD201 COC13
COC11 PAD20PA5D20 4PAD20 3PAD20PA2D 021PAD20 PAD20P1A9D2018PAD20P1A7D20P1A6D2015PAD20P1A4DPAC1402
COR16
COR15 PASP101 PASP102
PAX604
PAC1101
PAC1501
PAC1301 PAC1302
PAR1602
PAR1502
PAC1102 COD3
PAX605 COR19
COR18
PAR1601 PAR1501
PAX2020 PAX2019
PAX2018 PAX2017
PAX2016 PAX2015
PAX2014 PAX2013
COC3
PAX2012 PAX2011
PAC2602
PAC2601
PAR1901 PAR1801
COD1
PAX2010 PAX209 COR9
COR10
PAR1902 PAR1802
PAC302 PAC301
COR8
PAR1001
PAX208 PAX207 PAR1002
COL2
COD8
COC20
COC10
PAR902 PAR901 PAX301 PAX302 PAX303
PAX206 PAX205 PAR802 PAR801
PAL202
COR21
PAC2001PAC1001PAC2002PAC1002
COC17
COR11
PAC1701
PAL201
COR20
CON1
PAD20P5A1D2052PAD2053PAD20P5A4D205 PAD2056PAD20P5A7D2058PAD20P5A9D20P6AD2061PAD20P6A2D 063PAD2064PAD20P6A5D206 PAD20P6A7DCOC21
20P6A8D2069PAD20P7AD20PCOC16
7A1D2072PAD20P7A3D20P7A4D2075PAC1602 PAC1601
PAR1102 PAR1101
PAR2101 PAR2102
PAX204 PAX203COR12
PAC1702
PAR1202 PAR1201
PAR2001 PAR2002
COC6
PAR301
PAR302
PAC2102
PAC2101
CON2PAX202 PAX201
COC63
COR52
COC45
COR31
PAC602
PAC601
COX9
PAX902 COR2
PAN103
COR53
COR32
PAC6301 PAR5201 PAR5202
PAC4501 PAR3101 PAR3102
COR3
COC5 PAX901 PAR201
PAD301PAD302
PAD302 PAD303
PAD303PAD304
PAD304 PAD305
PAD305PAD306PAD307PAD308PAD309
PAD306 PAD307 PAD309
PAC201
PAN102COC2
COC4
PAC6302 PAR5302 PAR5301
PAC4502 PAR3202 PAR3201
COC49 PAD301
PAR202
COC67
COR58
COD7
PAC6701
COC68
COC50
PAC4902 PAC4901
PAN101 PAC202
COR28CON5
PAC501 PAC502
9018PAD9017PAD90PAC5001
16PAD901P5AD901P4AD901P3AD901P2AD901 PAD901 PAD90 PAD908PAD907PAD906PAD905PAD904PAD903PAD902PAD901
PPAC6802AD801P8AD801P7APAC6801
D801P6AD801P5AD8014PAD8013PAD8012PAD801 PAD801 PAD809PAD80 PAD807PAD806PAD805PAD804PAD80P3AD80PPAC6702
2AD801
COR59
COR56PADPAC5002
PAN201 PAN202COD9
PAN203
PAD708
PAD707
PAR2801 PAR2802
COR66
COC1
CON6
PAD706
PAD709
PAR2902
PAC402 PAC401
COR68
CON7
COR37
COR49
COR67
PAD7010
PAD705
COR38
COL1
PAC102 PAC101
PAR2901
COR69
PAD704
PAD7011
COC36
PAR4902 COR57
PAR5001 PAR5002
PAN703 COL3
COC43COC39
COC41
COC42
COC62COC57 COC59
CON4 PAR3002 PAR3001 PAR3402
PAD7012 COD6
PAD703
COX1
COC54
PAC5401 COC70
PAC4101 PAC4201 PAC3601
PAC5601
PAC5701
PAC5901
PAC4301 COC37
PAC3701
PAR4901 PAC5802 PAC5801 PAR5502 PAN701 PAN702 PAL302 COC56
COR47PAR4402 COC44
COR48
COC60
COC55
COC61
COC38
PAD7013
PAD702
PAC4002 PAC4001 PAR3401
COC40
PAL101 PAL102
PAC5602
PAC5702
PAC5902 PAC5402
PAC4302COR35
PAC3702
PAC4102 PAC4202 PAC3602
PAD7014
PAD701
COR36
PAR5102 PAR5101 PAR5501 PAR6502
PAL301COX8
PAR4401
PAC7001
PAC7002
COR34
PAC6202
PAC6002
PAC5502
PAC6102
PAC4402
PAC3902
PAC3802
COR39
PAN407 PAN406COC46
PAN405 PAN404 PAN403 PACOC33
N402 PAN401 PAR4302 PAR4301 COC34
COR29
COC65
COC47
COC35
COR30
PAN607 PAN606 PAN605 PAN604 PAN603 PAN602 PAN601 PAR6501 COC48
COD2
PAD501
PAD5016
PAD502
PAD503
PAD504
PAD5015
PAD5014
PAD5013
PAD505
PAD506
PAD507
PAD508
PAD5012
PAD5011
PAD5010
PAD509
PAD20100
PAD2027
PAD2028
PAD2029
PAD2030
PAD2031
PAD2032
PAD2033
PAD2099
PAD2098
PAD2091
PAD2090
PAD2037
PAD2089
PAD2038
PAD2039
PAD2040
PAD2041
PAD2042
PAD2043
PAD2044
PAD2045
PAD2046
PAD2047
PAD2088
PAD2087
PAD2086
PAD2085
PAD2084
PAD2083
PAD2082
PAD2081
PAD2080
PAD2079
PAD2048
PAD2078
PAD2049
PAD2050
PAD2077
PAD2076
PAC6201
PAR6402 PAR6401
PAC5302 PAC5301
PAC4701 PAC4702
PAC5202
PAC5201 PAC5101 PAC5102
COR63
PAD608
PAD609
PAD6010
PAD6011
PAD607
PAD606
PAD605
PAD604
PAD6012
PAD6013
PAD6014
PAD603
PAD602
PAD601
PAN608 PAN609 PAN6010 PAN601 PAN6012 PAN6013 PAN6014 PAR5802 PAR5602 PAR5402
PAR6102 PAR6301
PAR6302 COC69
COR51
COC58
PAC6901
COR50
COR65 COR62
PAR6702 PAR6701 PAR5701 PAR5901 PAR6901 PAR6902 PAR5801 PAR5601 PAR5401 COR61
PAC6902
PAR6602 PAR5702 PAR5902 PAR6802
PAR6801
PAR6601
COMH3
PAMH300
PAR6101
PAR6201 PAR6202
COR55 COR64
PAX801 PAX8010PAX809 PAX808 PAX807PAX806PAX805 PAX804PAX803PAX802 PAX801
PAX80MP
PAX406
PAX405
PAX404
PAX403
PAX402
PAX401
PAD2092
PAD2035
PAD2036
PAN501
PAN503
PAN502
9021PAD902PPAC6001AD902P3AD902P4AD902P5AD9026PAD9027PADPAC5501
9028PCOC52
AD9029PAD903 PAD9031PAD9032PCOC51
AD903 PADPAC6101
9034PAD9035PAD9036
PAD9019PAD902 PADCOC53
PAC4802 PAC4801
PAX409
PAX408
PAX407
PAD2097
PAD2096
PAD2095
PAD2094
PAD2093
PAD2034
PAC6401
PAX4011
PAX4010
PAV802
PAV803
PAV801
PAD2026
PAD9037
COR60
PAR6001
COC64
PAR6002 PAC6402
PAX4012
COR26
COL9
COC31
PAR2602 PAR2601
COL8
COR25
COC30
COL10
COR27
PAL901 PAL902 PAC3102 PAC3101
PAR2502 PAR2501
PAL801 PAL802 PAC3002 PAC3001
COC32
PAR2702 PAR2701
PAL1001 PAL1002 PAC3202 PAC3201
PAR3901 PAR3902 PAC4602
PAC4601
PAC2801 PAC2802 PAL602 PAL601
PAD105
PAD104
PAD103
PAD1013
PAD1014
PAD102
PAD101
PAD8037
PAR3301
PAR3601 PAR3801 PAR4801 PAR4802 PAR3701 PAR3501
COR43
PAR3602 PAR3802 PAR4702
PAR4602 PAR4601
PAR4502COL5
PAR4501 PAR4701
COR22
COC27
PAR2201 PAR2202
PAC2701 PAC2702 PAL502 COL7
PAL501COR45
COR33
COC29
COR24
COR23
COL6
PAD107
PAD106
PAD1010
PAD1011
PAD1012
COC66
COX7
24PAD8025PAD8026PAD8027PAD8028PAD8029PAD80PAC3801
3 PAD8031PAD8032PAD803 PAD803PPAC6501
4AD803P5AD8036PAC6502
PAD801P9APAC4401
D802P0AD802P1AD802PAD8023PAD80PAC3901
PAC6602 PAC6601PAC3502 PAC3501
PAC3402
PAC3401 PAC3301 PAC3302
COR42
PAN408 PAN409 PAN4010 PAN4COR46
01 PAN4012 PAN4013 PAN4014 PAR3702 PAR3502 PAR3302
COR44
PAR2401 PAR2402
PAC2901 PAC2902 PAL702 PAL701
COC28
PAR2301 PAR2302
PAD108
PAD109
PAX70MP
PAR4201 PAR4202
PAR4002 COR41
COR40
PAR4001
PAR4101 PAR4102
PAX701 PAX7010PAX709 PAX708 PAX707PAX706PAX705 PAX704 PAX703PAX702PAX701
PAX104
PAX103
PAX102
PAX101
COMH1
PAMH100
COR54
Bestückungsplan
133
COR54
PAMH300 PAX80MP
COMH3
PAR6601
PAR6101
PAR6801
PAR6602 PAR5702 PAR5902 PAR6802
PAL1001 PAL1002 PAC3202 PAC3201
PAC2801 PAC2802 PAL602 PAL601
PAR2702 PAR2701
COC32
PAL801 PAL802 PAC3002 PAC3001
PAR2502 PAR2501
PAL901 PAL902 PAC3102 PAC3101
PAR2301 PAR2302
COC28
PAC2901 PAC2902 PAL702 PAL701
PAR2401 PAR2402
PAC2701 PAC2702 PAL502 PAL501COR45
PAR2602 PAR2601
COC31
PAR2201 PAR2202
COC27
COR22
PAR4502COL5
PAR4501 PAR4701
PAR4602 PAR4601
PAR3602 PAR3802 PAR4702
COR43
COL10
COR27
COC30
COL8
COR25
PAX801 PAX8010PAX809 PAX808 PAX807PAX806PAX805 PAX804PAX803PAX802 PAX801
COR55 COR64
PAR6201 PAR6202
COR26
COL9
PAR6702 PAR6701 PAR5701 PAR5901 PAR6901 PAR6902 PAR5801 PAR5601 PAR5401 COR61
COR65 COR62
COR50
PAC6901
COC58
COR51
PAR6302 COC69
PAR6102 PAR6301
PAN608 PAN609 PAN6010 PAN601 PAN6012 PAN6013 PAN6014 PAR5802 PAR5602 PAR5402
PAC6401
PAR6002 PAC6402
COC64
PAR6001
COR60
COR63
PAC5202
PAC5201 PAC5101 PAC5102
PAC4701 PAC4702
PAC4802 PAC4801
PAR6402 PAR6401
COC53
COC52
COC51
PAC6001
PAC6201
PAC5501
PAC6101
PAR6501 COC48
PAC6002
PAC5502
PAC6102
PAL301 PAC6202
PAR6502
PAC5602
PAC5702
PAC5902 PAC5402
COC60
COC55
COC61
PAN701 PAN702 PAL302
PAC5601
PAC5701
PAC5901
PAC5401
PAC5302 PAC5301
PAD6014
PAC6902
PAD6013
PAD6012
PAD601
PAD602
PAD603
PAD6011
PAD6010
PAD604
PAD605
PAD609
PAD608
PAD606
PAD607
PAMH100
PAX70MP
COR23
COL6
COC29
COR24 COR33
COL7
PAX701 PAX7010PAX709 PAX708 PAX707PAX706PAX705 PAX704 PAX703PAX702PAX701
PAR4001
COMH1
PAR4101 PAR4102
COR40
PAR4201 PAR4202
PAR4002 COR41
PAR3601 PAR3801 PAR4801 PAR4802 PAR3701 PAR3501
PAR3301
COR44
PAN408 PAN409 PAN4010 PAN4COR46
01 PAN4012 PAN4013 PAN4014 PAR3702 PAR3502 PAR3302
PAC3502 PAC3501
PAC6602 PAC6601
PAC4601
PAR3901 PAR3902 PAC4602
COR42
PAC3402
PAC3401 PAC3301 PAC3302
PAC6501 PAC6502
PAX101
PAX102
PAX103
PAX104
PAD9019PAD902 PAD9021PAD902PAD902P3AD902P4AD902P5AD9026PAD9027PAD9028PAD9029PAD903 PAD9031PAD9032PAD903 PAD9034PADCOC47
PCOC35
AD801P9APAC4401
9035PAD9036
D802P0AD802P1AD802PAD8023PAD80PAC3901
24PAD8025PAD8026PAD8027PAD8028PAD8029PAD80PAC3801
3 PAD8031PAD8032PAD803 PAD8COC65
03P4AD803P5AD8036
COC66
COX7
COR30
COC34
PAR4301
COR29
PAN4COR39
07 PAN406COC46
PAN405 PAN404 PANCOR36
403 PACOC33
N402 PAN401 PAR4302
PAC4402
PAC3902
PAC3802
COR34
PAC7002
PAR4401
PAC7001
COX8
PAD7014
PAD701
PAC4302COR35
PAC3702
PAC4102 PAC4202 PAC3602
PAL101 PAL102
COC40
PAC4002 PAC4001 PAR3401
PAD7013
PAD702
COC38
COR47PAR4402 COC44
COR48
PAC4301 COC37
PAC3701
PAC4101 PAC4201 PAC3601
COC56
COC59
COC54COC70
COX1
PAD7012 COD6
PAD703
CON4
PAR3002
PAR3001
PAR3402
COC62
COC39
COC43
COC41
COC42
COC36
PAD7011
PAD704
COR69COR57 PAN703 COL3 COC57
PAR2901
PAC102 PAC101
COR38
COL1
PAD7010
PAD705
COR67
COR49
COR68
CON7
COR37
PAC402 PAC401
PAR2902
PAD709
PAD706
CON6
COC1
COR66
PAR2801 PAR2802
PAD708
PAD707
PAN201 PAN202COD9
PAN203
COR56PADPAC5002
COR59
9018PAD9017PAD90PAC5001
PPAC6802AD801P8AD801P7APAC6801
D801P6AD801P5AD8014PAD8013PAD8012PAD801 PAD801 PAD809PAD80 PAD807PAD806PAD805PAD804PAD80P3AD80PPAC6702
2AD801
16PAD901P5AD901P4AD901P3AD901P2AD901 PAD901 PAD90 PAD908PAD907PAD906PAD905PAD904PAD903PAD902PAD901
PAC501 PAC502
CON5
COR28
PAN101 PAC202
PAC4902
PAC4901
COC50
COC68
PAC6701
COR58
COD7
COC67
PAR202
COC49 PAD301
PAC6302 PAR5302 PAR5301
PAC4502 PAR3202 PAR3201
COC4
PAN102COC2
PAC201
PAD301PAD302
PAD302 PAD303
PAD303PAD304
PAD304 PAD305
PAD305PAD306PAD307PAD308PAD309
PAD306 PAD307 PAD309
COC5 PAX901 PAR201
COR3
PAC4501 PAR3101 PAR3102
PAC6301 PAR5201 PAR5202
COR53
COR32
PAN103
PAX902 COR2 COC63
COX9
PAC602
PAC601
COR52
COC45
COR31
CON2PAX202 PAX201
PAC2102 PAC2101
PAR302 PAR301
COC6
PAR2001 PAR2002
PAR1202 PAR1201
COR12
COC16
COC21
PAC1702
PAX204 PAX203 PAR1102 PAR1101
PAR2101
PAR2102
PAD20P5A1D2052PAD2053PAD20P5A4D205 PAD2056PAD20P5A7D2058PAD20P5A9D20P6AD2061PAD20P6A2D 063PAD2064PAD20P6A5D206 PAD20P6A7D20P6A8D2069PAD20P7AD20P7A1D2072PAD20P7A3D20P7A4D2075PAC1602 PAC1601
COR20
CON1
PAL201
PAC1701
COR11
PAC1001PAC2002PAC1002
COC17
PAC2001
PAR801
COR21
PAL202
PAX206 PAX205 PAR802
PAR902 PAR901 PAX301 PAX302 PAX303
COC10
COC20
COD8
COL2
PAX208 PAX207 PAR1002
PAR1001
COR8
PAC302 PAC301
PAR1902
PAR1802
COR10
PAX2010 PAX209 COR9
COD1
PAR1901 PAR1801
PAC2601
PAC2602
PAX2012 PAX2011
COC3
COX3 PAX505 PAX605 COR19
PAC2301
PAR1601 PAR1501
COR18
PAC1102 COD3
PAX2014 PAX2013 COC26
PAR1502
PAR1602
PAC1501
PAC1301 PAC1302
PAC2302
PAC1101
PAX504 PAX604
PAC2201
COR16
COR15
COD2
PAX2016 PAX2015 COC23
COC11 PAD20PA5D20 4PAD20 3PAD20PA2D 021PAD20 PAD20P1A9D2018PAD20P1A7D20P1A6D2015PAD20P1A4DPAC1402
PAC2501
2013PAD201PAD20P1ADPAC1401
201 PCOC15
AD2P0A9D20P8AD207PAD2P0A6D2P0A5D204PAD20P3AD2PAC1502
P0AD201 COC13
PAV701 PAV702 PASP101 PASP102
PAC2202
PAC1202 PAC1201
PAX603
COC14
PAC2502 PAX503
COC12
PAX2018 PAX2017 COC22
PAV703
COD5PAC2401 PAC2402 COC25
PAX502
PAX602
PAL402 PAC701 PAC702 PAD403
PAX2020 PAX2019
PAD404 PAC1902 COV7 COV8
COC24
PAL401
PAX501 PAX601
COSP1
PAC1901
COC19
PAR401 PAR402 PAC802COL4
PAC801COD4
PAR1402 PAR1302 PAR1702 PAR702 PAR602
PAN607 PAN606 PAN605 PAN604 PAN603 PAN602 PAN601
PAR5102 PAR5101 PAR5501
PAR4901 PAC5802 PAC5801 PAR5502
PAR4902 PAR5001 PAR5002
PAD9037
PAD8037
134
E Fertigungsunterlagen des Bordcomputers
PAN502
PAN503
PAN501
PAD508
PAD507
PAD506
PAD505
PAD509
PAD5010
PAD5011
PAD5012
PAD504
PAD503
PAD502
PAD5013
PAD5014
PAD5015
PAD501
PAD5016
PAD2050
PAD2049
PAD2076
PAD2077
PAD2048
PAD2078
PAD2047
PAD2046
PAD2045
PAD2044
PAD2043
PAD2079
PAD2080
PAD2081
PAD2082
PAD2083
PAD2084
PAD2085
PAD2086
PAD2087
PAD2088
PAD2042
PAD2041
PAD2040
PAD2039
PAD2038
PAD2037
PAD2089
PAD2036
PAD2035
PAD2090
PAD2091
PAD2034
PAD2092
PAD2033
PAD2032
PAD2031
PAD2030
PAD2029
PAD2028
PAD2027
PAD2093
PAD2094
PAD2095
PAD2096
PAD2097
PAD2098
PAD2099
PAD2026
PAD20100
PAD1014
PAD1013
PAD101
PAD102
PAD1012
PAD1011
PAD1010
PAD103
PAD104
PAD105
PAD109
PAD108
PAD106
PAD107
PAX401
PAV801
PAV803
PAV802
PAX402
PAX403
PAX404
PAX405
PAX406
PAX407
PAX408
PAX409
PAX4010
PAX4011
PAX4012
PAMH400
COMH4
PAD402
PAR502 PAR501 PAC902 PAC901
COX2
PAN301
PAS102
PAN303
PAN302
COX5
PAC1802
PAC1801
COR5
CON3 COC9
PAS101
COC18
COC8
COR4
COS1
COX6
COC7
PAD401
PAR1401
PAR1301 COR17
PAR1701 COR7
PAR701COR6
PAR601
PAV102 PAV502
PAV402
PAV602 PAV302 PAV202
COR14
COR13
PAS104 PAR101
COV6PAV301 PAV201
COV2
PAR102
COR1PAV101 PAV501 PAV401 PAV601
PAS103
COV1
COV5COV4
COV3
PAMH200
COX4
COMH2
Bestückungsplan
135
Die folgende Stückliste enthält alle auf dem Bordcomputer bestückbaren Bauteile. Nicht alle Bauteile
sind für die Funktion erforderlich (Variantenbestückung); Bauteile, die nicht bestückt wurden, sind
mit einem Stern gekennzeichnet.
Element
Beschreibung
C1
Elko 10u/35V/5mm
1
C2, C4, C5
Keramikkondensator 100n/50V/1206/X7R
3
C20, C21
Keramikkondensator 2u2/10V/0603/X5R
2
C27, C28, C29, C30, C31, C32
Keramikkondensator 47n/50V/0603/X7R
6
C3
Elko 100u/6.3V/5mm
1
C33, C34, C35, C51, C52, C53
Keramikkondensator 220n/50V/0603/Y5V
6
C46, C64
Keramikkondensator 4u7/6.3V/0603/X5R
2
C6, C8, C9, C10, C11, C12, C13,
C14, C15, C16, C17, C18, C19,
C22, C23, C24, C25, C26, C36,
C37, C38, C39, C40, C41, C42,
C43, C44, C45, C47, C48, C49,
C50, C54, C55, C56, C57, C58,
C59, C60, C61, C62, C63, C65,
C66, C67, C68, C69, C70
Keramikkondensator 100n/50V/0603/X7R
48
C7
Elko 10u/10V/4mm/low ESR
1
D1, D6
Schmitt-Trigger 74HC14D
2
D2
Mikropr. STM32F407VGT6
1
D3
Bluetooth-Modul ARF7044A
1
D4
Quarzoszillator 4.000 MHz
1
D5*
Treiber/Empf. ADM3202ARN
1
D7
XOR-Gatter 74HC86D
1
D8, D9
Treiber DRV8332DKD
2
L1, L2, L3
Ferrit 100MHz/30R/3A
3
L4, L5, L6, L7, L8, L9, L10
Ferrit 100MHz/2000R/0.15A
7
N1
DC/DC-Wandler TSR1-2433
1
N2
DC/DC-Wandler TSR1-24120
1
N3, N5, N7
Referenzdiode LM4040AIM3-2.5
3
N4, N6
Operationsverstärker MC33204DG
2
R1, R5, R6, R7, R13, R14, R17,
R28, R49
Widerstand 100R/0603
9
R2
Widerstand 47k/0603
1
R22, R23, R24, R25, R26, R27,
R33, R35, R37, R43, R45, R47,
R54, R56, R58, R64, R66, R68
Widerstand 1k/0603
18
R29, R30, R50, R51
Widerstand 100k/0603
Fortsetzung auf nächster Seite
Menge
4
136
E Fertigungsunterlagen des Bordcomputers
Element
Beschreibung
R3, R8, R9, R10, R11, R12, R20,
R21
Widerstand 4k7/0603
8
R31, R52
Widerstand 27k/0603
2
R32, R53
Widerstand 1R/0603
2
R34, R36, R38, R44, R46, R48,
R55, R57, R59, R65, R67, R69
Widerstand 20k/0603
12
R39, R60
Widerstand 10R/0603
2
R4, R15, R16, R18, R19
Widerstand 0R/0603
5
R40, R41, R42, R61, R62, R63
Widerstand 0R05/1W/2010
6
S1
Drucktaste DTSM-62K-V-B
1
SP1*
Buzzer QCP-03A
1
V1, V6
Leuchtdiode HSMG-C170/grün/0805
2
V2, V3
Leuchtdiode HSMS-C170/rot/0805
2
V4, V5
Leuchtdiode HSMD-C170/orange/0805
2
V7*
Transistor 2N7002
1
V8*
Diode BAT54
1
X1
Stiftleiste 733-334
1
X2
Stiftleiste 20pol. N2520-6002RB
1
X3*
Stiftleiste 3pol
1
X4
FFC-Buchse 12pin
1
X7, X8
FFC-Buchse 11pin
2
Tabelle E.1: Stückliste
Menge
F
Designprozess
138
Design als Problemlösungsprozess
F Designprozess
Projektstart
Projektplan
Gehiemhaltung
Offerte
Analysephase
Definitionsphase
Konzeptphase
Entwurfsphase
Detailierungsphase
Realisationsphase
Stand der Technik
− Normen
− Patentrecherche
Kreativer Prozess / Ideenentwicklung
− Morphologien
− Skizzieren
− Entwurfsmodelle
Wahrnehmungspsychologie
− visuelle Wahrnemung
[Form und Farbe]
− unsichtbare Wahrnemung
[Akustik und Geruch]
− haptische Wahrnehmung
[Material und Oberfläche]
− kognitive Ergonomie
[Semantik und Semiotik]
− anthropometrische Ergonomie
[Masse des menschl. Körpers]
Visualisieren
− technische Zeichnungen
− CAD Renderings
− Fotografie, Video
− Animation
Skizzieren
Verpackung
Handrendering
Messeauftritt
Stand des Designs
− Historisch
− Soziokulturell
Zielgruppendefinition
− Personenbefragung
− Bedürfnisanalyse
− Personastudie
− Demographische Studie
− Moodboard
Marktposition
− Marktanalyse
− Marktsegmentierung
− Design Strategien
Produktanalyse
Kreativitätsquellen
− Designgeschichte
− Bionik
− Funktionen [FFF]
− Naturwissenschaften
Kreativitätstechniken
− Morphologischer Kasten
− Mindmap
− Brainstorming
Funktionsmodell
Designmodell
Protoyp
Nullserie
Formfindung
Modellstudien
Modellbau
− Konkurrenzanalyse
− Produkt im allg. und Userkontext
Formale Detaillösung
sichtbares / unsichtbares Design
Umsetzung CAD
Markteinführung
Pof. Martin Iseli / Team Industrial Design HSLU
19.09.2011 Norbert Meier / Martin Iseli
G
Dateistruktur auf der CD
Der vorliegenden Arbeit ist eine CD beigefügt, welche sämtliche Dokumente, Quellcode, Zeichnungen
etc. enthält.
Ordner
Inhalt
doc
Dokumentationen
doc/sw
Doxygen-Dokumentation der Software der Basiseinheit
mit Klassendiagrammen etc.
doc/main
Das vorliegende Dokument
src
Quellcode der Software
src/pc
Quellcode für die PC-Software
src/mobile
Quellcode für die Embedded-Software
Tabelle G.1. Ordnerstruktur
Literaturverzeichnis
[1] ARF32 Bluetooth modules user’s guide. Adeunis RF.
[2] AS5000 Series Magnet Selection Guide. austriamicrosystems AG.
[3] Atmel Corporation. AVR32723 Sensor Field Oriented Control for Brushless DC motors with
AT32UC3B0256. Online-Quelle. http://www.atmel.com/Images/doc32126.pdf, 25.11.2012.
[4] Atmel Corporation. AVR447 Sinusoidal driving of three-phase permanent magnet motor using
ATmega48/88/168. Online-Quelle. http://www.atmel.com/Images/doc8010.pdf, 03.11.2012.
[5] Microchip Corporation. AN1078 Sensorless Field Oriented Control of PMSM Motors.
Online-Quelle. http://www.microchip.com/downloads/en/appnotes/01078a.pdf,
03.11.2012.
[6] Digia plc. Qt Framework. Online-Quelle. http://qt-project.org/, 10.10.2012.
[7] T. Gockel. Form der wissenschaftlichen Ausarbeitung. Springer-Verlag, Heidelberg, 2008.
Begleitende Materialien unter http://www.formbuch.de.
[8] A. K. Gupta, A. M. Khambadkone. A Space Vector PWM Scheme for Multilevel Inverters
Based on Two-Level Space Vector PWM. IEEE Journals & Magazines, 2006, S. 1631 - 1639.
[9] S. Götte. Marketing. Franz Vahlen, München, 2006.
[10] Haxx AB. cURL C++ Library. Online-Quelle. http://curl.haxx.se/, 15.12.2012.
[11] J. Hu, K. Chen, T. Shen, C. Tang. Analytical Solutions of Multilevel Space-Vector PWM for
Multiphase Voltage Source Inverters. IEEE Journals & Magazines, 2011, S. 1489 - 1502.
[12] Texas Instruments Inc. SPRA588 Implementation of a Speed Field Oriented Control of
3-phase PMSM Motor using TMS320F240. Online-Quelle.
www.ti.com/lit/an/spra588/spra588.pdf, 20.11.2012.
[13] Intel Corp., Willow Garage Inc. OpenCV Open Computer Vision Library. Online-Quelle.
http://opencv.willowgarage.com/wiki/Welcome, 10.10.2012.
[14] Martin Iseli. Ästhetik im Industrie-Design. Vorlesungsskript Hochschule Luzern, 2013.
[15] J. J. Labrosse, Micrium Inc. µC/OS-III Echtzeitbetriebssystem für Mikrocontroller.
Online-Quelle. http://www.micrium.com, 23.10.2012.
[16] J. P. John, Dr. S. S. Kumar, T. Shen, B. Jaya. Space Vector Modulation based Field Oriented
Control Scheme for Brushless DC Motors. IEEE Conference Publications, 2011, S. 346 - 351.
142
Literaturverzeichnis
[17] G. Küveler, D. Schwoch. Informatik für Ingenieure und Naturwissenschaftler 2.
Vieweg-Verlag, Wiesbaden, 1996.
[18] J. J. Labrosse. Embedded Systems Building Blocks – Complete and Ready-To-Use Modules in
C. Micrium Press, Weston, 2012.
[19] J. J. Labrosse. µC/OS-III – The real time kernel user’s manual. Micrium Press, Weston, 2012.
[20] H. Lindner. Physik für Ingenieure. Hanser Fachbuchverlag, Leipzig, 2007.
[21] A. De Luca, G. Oriolo, M. Vendittelli. Control of Wheeled Mobile Robots: An Experimental
Overview. Departement Informatik der Universität Rom. Online-Quelle.
http://www.dis.uniroma1.it/~labrob/pub/papers/Ramsete01.pdf, 14.04.2013.
[22] J. Lunze. Regelungstechnik 1 – Systemtheoretische Grundlagen, Analyse und Entwurf
einschleifiger Regelungen. Springer-Verlag, Heidelberg, 2008.
[23] H. Mann, H. Schiffelgen, R. Froriep. Einführung in die Regelungstechnik. Hanser
Fachbuchverlag, Leipzig, 2010.
[24] M. Michel. Leistungselektronik – Einführung in Schaltungen und deren Verhalten.
Springer-Verlag, Heidelberg, 2008.
[25] LMX9830 Software User’s Guide Revision 1.3. National Semiconductor.
[26] P. Q. Nguyen, J. Dittrich. Praxis der feldorientierten Drehstromantriebsregelungen.
Expert-Verlag, Renningen, 1999.
[27] Dr. A. Omlin. Leistungselektronik und elektrische Antriebe. Vorlesungsskript Hochschule
Luzern, 2011.
[28] L. Papula. Mathematik für Ingenieure und Naturwissenschaftler, Band 1. Vieweg+Teubner,
Wiesbaden, 2008.
[29] L. Papula. Mathematik für Ingenieure und Naturwissenschaftler, Band 2. Vieweg+Teubner,
Wiesbaden, 2009.
[30] L. Papula. Mathematik für Ingenieure und Naturwissenschaftler, Band 3. Vieweg+Teubner,
Wiesbaden, 2009.
[31] W. Plassmann, D. Schulz. Handbuch Elektrotechnik. Vieweg+Teubner, Wiesbaden, 1999.
[32] LV3000 OEM Scan Enginge Integration Guide. longViewAuto-ID Tech Corp.
[33] D. Rathnakumar, J. Lakshmana Perumal, T. Srinivasan. A New Software Implementation of
Space Vector PWM. IEEE Conference Publications, 2005, S. 131 - 136.
[34] M. Schader, S. Kuhlins. Programmieren in C++. Springer-Verlag, Heidelberg, 1998.
[35] J. Specovius. Grundkurs Leistungselektronik – Bauelemente, Schaltungen und Systeme.
Vieweg, Wiesbaden, 2008.
[36] STM32F407xx advanced ARM-based 32-bit MCU Reference Manual. STMicroelectronics.
[37] Dr.-Ing. L. Wyrsch. Die Welt im Zeichen des Motors. Metz-Verlag, Zürich, 1963.
[38] Dr.-Ing. L. Wyrsch. Technik überwindet Zeit und Raum. Metz-Verlag, Zürich, 1965.
[39] Dr.-Ing. L Wyrsch. Zeitgeschichte der Technik. Metz-Verlag, Zürich, 1967.
Tabellenverzeichnis
3.1
3.2
Beschaltung des Mikroprozessors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
LEDs auf dem SR407 und deren Bedeutung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1
4.2
4.3
4.4
4.5
Aufbau der Telegramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Telegrammtypen und deren Verwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufbau des Positions-Kommandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufbau der Zustandsmeldung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufbau des Befehls für nächsten Wegpunkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.1
Mögliche Störungen und Massnahmen zur Behebung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
45
46
46
46
47
12.1 Kostenabrechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
E.1 Stückliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
G.1 Ordnerstruktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Abbildungsverzeichnis
2.1
2.2
2.3
2.4
2.5
2.6
2.7
Explosionszeichnung der Vorderradaufhängung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Explosionszeichnung der Hinterradaufhängung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Explosionszeichnung des Getriebes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Explosionszeichnung des gesamten Fahrzeugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ansicht des Fahrzeugs bei abmontierter Karosserie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Montage der elektronischen Komponenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Beispielhafte Styropor-Halbkugel als Farbmarkierung . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
22
22
23
24
25
25
3.1
3.2
Ansicht des Bordcomputers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Leiterplatte des SR407 in Originalgrösse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.1
4.2
4.3
4.4
4.5
4.6
Struktur des Drehzahlreglers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zur Herleitung des Winkels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Anhand der Drehgeber berechnete Position des Fahrzeugs . . . . . . . . . . . . . . . . . . . . . . .
Zurückgelegter Weg des Fahrzeugs beim Einfahren in die 5 Garagen . . . . . . . . . . . . . .
Zustandsautomat des Empfangs-Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zustandsautomat des Sende-Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
36
40
40
44
45
5.1
5.2
5.3
5.4
5.5
5.6
Datenfluss der Argus-tower Anwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Klassendiagramm der Argus-Tower Anwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ansicht der verschiedenen Eingabemasken des GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Tracking-Bildschirm im Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Entzerrung des Kamerabilds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Strahlensatz zur Berechnung der realen Koordinaten . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
50
51
52
53
53
6.1
6.2
6.3
6.4
QR-Code zum Aufruf der Webapplikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Graphischer Aufbau der Webapplikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Datenfluss vom Fahrzeug bis zum Webserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aktualisierung Daten im Browser durch die Webapplikation . . . . . . . . . . . . . . . . . . . . .
55
56
57
57
7.1
7.2
7.3
Iterationen in der Entwurfsphase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Herstellung der Karosserie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Ansicht des Fahrzeugs bei montierter Karosserie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.1
8.2
8.3
8.4
8.5
So sollte das Kamerabild aussehen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GUI zur Konfiguration der Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Die vier zu selektierenden Referenzpunkte (links) und Kontrolle (rechts) . . . . . . . . . . .
Auswahl der Farben für die Farbmarkierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ansicht des Tracking-GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
69
69
70
71
Listings
4.1
4.2
4.3
4.4
4.5
4.6
Zentraler Teil des Drehzahlreglers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Positionsberechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
So wird für den Winkel ein Hauptwert erzwungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Positionsregelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zentraler Kommunikations-Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Funktionsweise des Bluetooth-Interrupthandlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
35
37
38
41
43
Sachverzeichnis
A
Erfahrungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
App . . . . . . . . . . . . . . . . . . . . . . . . . siehe Webapplikation
Argus-Tower
Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Aufgabe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Aufgabenstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
F
B
Basiseinheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Beschaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Bestückungsplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Bordcomputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27, 127
Anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
elektronischer Aufbau . . . . . . . . . . . . . . . . . . . . . . . . 27
Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
mechanischer Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . 27
Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
C
CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
D
Datenübertragung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Analysephase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Entwurfsphase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Konzeptphase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Realisierungsphase . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Diskussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Drehzahlregelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Fahrwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . siehe Chassis
Farbmarkierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Fehlerbeseitigung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Fertigungsunterlagen . . . . . . . . . . . . . . . . . . . . . 105, 127
Aufhängung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107f.
Gesamtansicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Getriebeachse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109f.
Getriebeplatte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111ff.
Grundpatte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114f.
Karosserie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Mitnehmer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Querlenker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Vorderrad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118ff.
G
Gestaltungskonzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
I
Inbetriebnahme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Ausrichtung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
der Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Material. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
Referenzpunkte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
K
Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Kommunikations-Task . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Konzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Kosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Kurzfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
E
L
Elektronik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23, 27
Empfang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Entwicklungskosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
LEDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Lokalisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
150
Sachverzeichnis
M
Markierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Materialkosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Mechanik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21, 105
Messestand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Materialien. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78
Montage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
Motortreiber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
N
Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
P
Positionsberechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Positionsbestimmung . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Positionsregelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Projektplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
SR407 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Störungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Stückliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Stromversorgung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
T
Telegramme
Aufbau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
Bestätigung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Wegpunkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Zustand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Terminplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Tracking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70
V
Q
Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Videomodul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
QR-Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
QT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
W
R
Refresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Regler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
S
Schema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
Senden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Smartphone . . . . . . . . . . . . . . . . . siehe Webapplikation
Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Webapplikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Aufbau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
Aufruf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Beschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Webserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Z
Zeitplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Zustandsautomat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50