Dosenautomat: Unterschied zwischen den Versionen
Zeile 151: | Zeile 151: | ||
===Programmcode=== | ===Programmcode=== | ||
Programmcode in Bearbeitung. | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| <div style="width: | | <div style="width:800px; height:400px; overflow:scroll; border: hidden"> | ||
<syntaxhighlight lang="cpp" style="border: none; background-color: #EFF1C1; font-size:larger"> | <syntaxhighlight lang="cpp" style="border: none; background-color: #EFF1C1; font-size:larger"> | ||
//Bibliotheken | |||
#include <Servo.h> //Bibliothek <Servo.h> hinzugefügt | |||
// Initialisierung der Pins | |||
const int startButton = 2; //Start-Knopf ist auf DigitalPort 2 | |||
const int button1 = 3; //Knopf-Nr.-1 ist auf DigitalPort 3 | |||
const int button2 = 4; //Knopf-Nr.-2 ist auf DigitalPort 4 | |||
const int button3 = 5; //Knopf-Nr.-3 ist auf DigitalPort 5 | |||
const int redLED = 6; //rote LED ist auf DigitalPort 6 | |||
const int yellowLED = 7; //gelbe LED ist auf DigitalPort 7 | |||
const int greenLED = 8; //grüne LED ist auf DigitalPort 8 | |||
const int servo1Pin = 9; //Servo 1 ist auf DigitalPort 9 | |||
const int servo2Pin = 10; //Servo 2 ist auf DigitalPort 10 | |||
const int servo3Pin = 11; //Servo 3 ist auf DigitalPort 11 | |||
// Initialisierung der Servos | |||
Servo servo1; //Servo ist ein servo1 | |||
Servo servo2; //Servo ist ein servo2 | |||
Servo servo3; //Servo ist ein servo3 | |||
// Initialisierung der Variablen | |||
bool servoRunning = false; // | |||
bool buttonPressed = false; // | |||
int selectedServo = 0; // | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<!-- Füllen Sie Ihre Projektskizze bis hierher aus. Fügen Sie einen Projektplan unten ein. --> | <!-- Füllen Sie Ihre Projektskizze bis hierher aus. Fügen Sie einen Projektplan unten ein. --> |
Version vom 5. Oktober 2023, 19:59 Uhr
Autor: Bartos Schwichtenberg
Betreuer: noch offen
Einleitung
Das Projekt befasst sich mit der Entwicklung eines "Dosenautomaten mit Dreifachauswahl" im Rahmen des Studiengangs Ba. Mechatronik im 5. Semester. Dieser innovative Automat zeichnet sich durch drei wesentliche Komponenten aus: 1. drei Aktuatoren (Motoren zur Fachauswahl), 2. Sensorik Nr. 1 (Tasteneingabe durch Benutzer), 3. Sensorik Nr. 2 (Beleuchtung für Fachentnahme).
Anforderungen
ID | Inhalt | Ersteller | Datum | Geprüft von | Datum |
---|---|---|---|---|---|
1 | Die drei Aktuatoren (Servomotor) müssen bewegbar sein. | Bartos Schwichtenberg | 05.10.2023 | AUTOR | XX.10.2023 |
2 | Das Chiplesegerät muss den Chip (korrekten) erkennen. | Bartos Schwichtenberg | 05.10.2023 | AUTOR | XX.10.2023 |
3 | Das OLED-Display muss Bereitschaftsbetrieb anzeigen. | Bartos Schwichtenberg | 05.10.2023 | AUTOR | XX.10.2023 |
4 | Die LED soll die Spannungsversorgung (5V über USB) des Systems anzeigen. | Bartos Schwichtenberg | 05.10.2023 | AUTOR | XX.10.2023 |
5 | TEXT........TEXT........TEXT. | AUTOR | XX.10.2023 | AUTOR | XX.10.2023 |
6 | TEXT........TEXT........TEXT. | AUTOR | XX.10.2023 | AUTOR | XX.10.2023 |
7 | TEXT........TEXT........TEXT. | AUTOR | XX.10.2023 | AUTOR | XX.10.2023 |
8 | TEXT........TEXT........TEXT. | AUTOR | XX.10.2023 | AUTOR | XX.10.2023 |
Tabelle 1 zeigt die funktionalen Anforderungen.
Funktionaler Systementwurf/Technischer Systementwurf
|
|
Komponentenspezifikation
ID | Komponente | Bezeichnung | Abbildung |
---|---|---|---|
1 | Taster/Tastenfeld | in Bearbeitung | Beispiel |
2 | OLED-Display | in Bearbeitung | Beispiel |
3 | Status-LED grün | in Bearbeitung | Beispiel |
4 | Status-LED rot | in Bearbeitung | Beispiel |
5 | Chiplesegerät mit Chip | in Bearbeitung | Beispiel |
6 | Plexiglas | in Bearbeitung | Beispiel |
7 | Verbrauchsmaterial | Holz, Schrauben, Holzleim, Kabel, Lötzinn, Schrumpfschlauch | Beispiel |
Umsetzung (HW/SW)
Gehäuse
Die Abbildung 4 und 5 zeigt das Gehäuse. Es ist aus Holzplatten zusammen geleimt und verschraubt. Als Schutz dient auf der Vorderseite eine Plexiglasscheibe. Zur einfachen Auffüllung ist auf der Rückseite ein Eingabefach. Die Steuerung der Aktuatoren, Sensoren, Mikrokontroller ist im Gehäuse eingebaut. Die Bedienelektronik befindet sich auf der Vorderseite des Geräts.
|
|
Schaltung
Zum Einsatz kommt der Mikrokontroller.
|
|
Code
Es wird ein Code in auf den Mikrocontroller geschrieben.
-
Abb. 8 Programmablaufplan
Programmcode
Programmcode in Bearbeitung.
Komponententest
ID | Inhalt | Getestet von | Datum |
---|---|---|---|
1 | Der Automat muss mit 5V Spannung versorgt werden. | *Bearbeiter* | **.**.2023 |
2 | Die LED soll aufleuchten, damt die Spannungsversorgung angezeigt wird. | *Bearbeiter* | **.**.2023 |
3 | OLED-Display muss aufleuchten und vorgegebenen Text ausgeben. | *Bearbeiter* | **.**.2023 |
4 | Chiplesegerät muss den korrekten Chip erkennen. | *Bearbeiter* | **.**.2023 |
5 | OLED-Display zeigt die Auswahlbereitschaft an. | *Bearbeiter* | **.**.2023 |
6 | Durch Tastenauswahl muss tastenabhöngig der richtige Motor (Servo) angesteuert werden. | *Bearbeiter* | **.**.2023 |
7 | Informierung des Benutzer zur Entnehmung der Ware (OLED, LED). | *Bearbeiter* | **.**.2023 |
Tabelle 3 zeigt, welche Anforderung vom welchen Bearbeiter getestet wurde
Ergebnis
Zusammenfassung
Lessons Learned
Projektunterlagen
Projektplan
Projektdurchführung
YouTube Video
Weblinks
Literatur
→ zurück zur Übersicht: WS 22/23: Angewandte Elektrotechnik (BSE)