Geschwindigkeitsregelanlage: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 134: Zeile 134:
Theoretisch könnte die Funktion ebenfalls mit zwei Interrupt-Pins gelöst werden, wodurch die Diode gespart werden kann. Da der verwendete Microcontroller jedoch nur zwei Interrupt-Pins besitz und einer für die Auswertung des Sensors verwendet werden soll, wurde die beschriebene Schaltung umgesetzt, welche einen Pin als Interrupt für Nutzereingabe verwendet. Alternativ könnte die Nutzereingabe auch über Polling geschehen, indem digitale Eingänge in sehr kurzen Abständen abgefragt werden. Um eine zuverlässige Eingabe zu ermöglichen, müsste der Microkontroller jedoch einen erheblichen Anteil der Rechenzeit mit der Nutzereingabe verbringe. Hierdurch könnte möglicherweise die eigentliche Aufgabe, die Geschwindigkeitsregelung, gestört werden.
Theoretisch könnte die Funktion ebenfalls mit zwei Interrupt-Pins gelöst werden, wodurch die Diode gespart werden kann. Da der verwendete Microcontroller jedoch nur zwei Interrupt-Pins besitz und einer für die Auswertung des Sensors verwendet werden soll, wurde die beschriebene Schaltung umgesetzt, welche einen Pin als Interrupt für Nutzereingabe verwendet. Alternativ könnte die Nutzereingabe auch über Polling geschehen, indem digitale Eingänge in sehr kurzen Abständen abgefragt werden. Um eine zuverlässige Eingabe zu ermöglichen, müsste der Microkontroller jedoch einen erheblichen Anteil der Rechenzeit mit der Nutzereingabe verbringe. Hierdurch könnte möglicherweise die eigentliche Aufgabe, die Geschwindigkeitsregelung, gestört werden.


[[Datei:Schaltung Motoransteuerung.jpg|mini||345px|rechts|Schaltung für Motoransteuerung]]
[[Datei:Schaltung Motoransteuerung.jpg|mini||385px|rechts|Schaltung für Motoransteuerung]]
<div class="tright" style="clear:none;">[[Datei:Steckbrett Motoransteuerung.jpg|mini|128px|ohne|rechts|Steckbrettschaltung für Motoransteuerung]]</div>
<div class="tright" style="clear:none;">[[Datei:Steckbrett Motoransteuerung.jpg|mini|128px|ohne|rechts|Steckbrettschaltung für Motoransteuerung]]</div>
''' Ansteuerung des Antriebsmotors: '''
''' Ansteuerung des Antriebsmotors: '''

Version vom 7. Januar 2021, 12:37 Uhr

Autor: Maik Spinnrath, Mario Wollschläger
Gruppe: 2.5
Betreuer: Prof. Schneider

→ zurück zur Übersicht: WS 20/21: Fachpraktikum Elektrotechnik (MTR)

Einleitung

Das Projekt Geschwindigkeitsregelanlage entsteht im Rahmen des GET-Fachpraktikum des Studiengangs Mechatronik im 5 Semester. Zielsetzung ist die Realisierung eines Systems, welches die Geschwindigkeit eines modifizierten RC-Autos regeln soll. Die Reglung geschieht auf Basis von Daten aus Raddrehzahlsensoren. Die notwendigen Berechnungen werden von einem Microcontroller des Typs ATmega328 mit Arduino-Bootloader.

Die Umsetzung des Projektes wird durch die Mechatronik Studenten Maik Spinnrath und Mario Wollschläger realisiert.

Anforderungen

Für den Erfolg des Projektes bestehen die folgenden Anforderungen an das System:

Nr.: Requirement Status
1.0 Echtzeitanforderung: Die Reglung muss in Echtzeit erfolgen, d.h. die notwendigen Berechnungen müssen in einer vorher definierten Zeit abgeschlossen sein. in Arbeit
2.0 Platzbedarf: Das System muss in dem zur Verfügung stehendem Bauraum vollständig realisiert werden. Abgeschlossen
3.0 Energiebedarf: Ein Batteriebetrieb muss möglich sein um die Mobilität des Gesamtsystem Fahrzeug zu gewährleisten Abgeschlossen
4.0 Erschütterungen dürfen zu keinen Beeinträchtigungen oder Beschädigungen führen. offen
5.0 Gewicht: Die maximale Achslast des Fahrzeuges darf nicht überschritten werden. Abgeschlossen
6.0 Das System muss den Auftraggeber Zufrieden stellen offen
7.0 Die Geschwindigkeit muss ermittelt werden und weiterverarbeitbar dargestellt werden. Abgeschlossen
7.0 Der Nutzer muss eine Sollgeschwindigkeit einstellen können. Abgeschlossen
8.0 Der Nutzer muss eine Rückmeldung über Soll- und Ist-Geschwindigkeit erhalten. Abgeschlossen
8.1 Der Nutzer muss eine Rückmeldung über Regelfehler und Stellgrößer erhalten. Abgeschlossen
9.0 Die Geschwindigkeit muss zuverlässig geregelt werden. In Arbeit

Funktionaler Systementwurf/Technischer Systementwurf

Systementwurf [1]
Erweiterung des Systementwurf[2]

Das System besteht aus verschiedenen Komponenten. Zur Erfassung der Geschwindigkeit werden Drehzahlsensoren eingesetzt. Die ermittelten Daten werden von einem Mikrocontroller verarbeitet. Anschließend kann die Geschwindigkeit durch die Anpassung der Stromzufuhr des Motors geregelt werden. Diese wird zuvor vom Benutzer angegeben.

Optional kann das System durch einen Ultraschallsensor dahingehen erweitert werden, dass eine Abstandsregelung zu vorausfahrenden Fahrzeugen möglich wird. Hierfür kann die eingestellte Geschwindigkeit je nach Distanz verringert oder vergrößert werden, um den gewünschten Abstand zu halten oder einzustellen.


Komponentenspezifikation

Komponente Beschreibung Bild
Arduino UNO R3 Die Kernkomponente ist ein Arduino Uno Board, auf diesem ist ein ATmega328P verbaut welche die Berechnungen des Systems übernimmt. Dieser arbeitet mit einer Taktfrequenz von 16MHz und besitzt eine Betriebsspannung von 5V. Über 14 I/O Pins können Sensoren und Aktoren angeschlossen werden, wovon jeweils 6 als PWM Ausgang oder als Analog Eingang genutzt werden können. Die I/O Pins können maximal 20mA leisten. Die Restlichen Informationen können aus diesem Datenblatt[3] entnommen werden.
Fundiono UNO R3
TLE4905L Ein TLE4905L Hall-Effekt Sensor der Firma Infineon wurde verwendet um die Geschwindigkeit des Fahrzeuges über die Raddrehzahl zu ermitteln. Der Sensor kann auf Basis eines Magnetfeldes innerhalb einer Mikrosekunde schalten. Dieser arbeitet ein einem Bereich von 3.8 bis 24 Volt und kann einen Ausgangsstrom von 100mA liefern. Nähere Informationen zum Sensor sind im Hauptartikel zu finden.
Infinion TLE4905L [4]
Display Des weiteren wurde ein Display mit einer Anzeige aus 16 Zeichen pro Zeile und zwei Zeilen verwendet, um dem Nutzer Rückmeldung über Systemparameter zu geben. Dieses Display wird über eine I2C Schnittstelle betrieben.
16x2 I2C Display
STP16NF06L n-Kanal MOSFET Zur Schaltung größerer Lasten wurde ein n-Kanal MOSFET der Firma ST verwendet. Dieser kann Spannungen bis 60 Volt schalten und hält Ströme bis zu 16 Amper aus. Durchlasswiderstand ist kleiner als 0,09 Ohm und typischerweise 0,07 Ohm. Der MOSFET wird in einem TO-220 Gehäuse geliefert.[5]
STP16NF06L [6]
Optokoppler EL817 Aufgrund der unterschiedlichen Spannungsniveaus der verschiedenen Stromkreise des Fahrzeuges und des Mikrokontroller wurde ein Optokoppler verwendet. Auf der Eingangsseite schaltet er mit 1,2Volt und auf der Ausgangsseite können bis zu 35Volt geschaltet werden. Hierbei ist eine Isolierung von Aus- und Eingangsseite bis zu 5000V gewährleistet. Beide Seiten können bis zu 50mA leiten. Die Gehäuseform entspricht einem DIP mit 4 Anschlüssen.[7]
EL817[8]
Widerstände Es wurden 2 330Ohm und 3 10kOhm Widerstände zur Realisierung der Schaltung verwendet. Dabei kommen die 330Ohm Widerständen zur Strombegrenzung und die 10kOhm Wiederstände als Pullup- beziehungsweise Pulldown-Wiederstand zum Einsatz. Aus Kostengründen wurden Kohleschichtwiderstände mit einer Genauigkeit von 5% verwendet. Aufgrund des Verwendungszweckes reicht diese Genauigkeit.
Widerstände
Diode BA 159 In der Schaltung für die Nutzereingabe wurde eine Gleichrichterdiode verwendet. Diese Diode hält bis zu 1000 Volt in Sperrrichtung und 1 Amper stand.[9]
BA 159[10]
RC-Auto Als Basis für das Projekt wurde ein Ferngesteuertes Modellauto der Firma Dickie Toys modifiziert. Es besitzt Federung, Heckantrieb und Lenkung. Der Motor kann in nur einer Leistungsstufe betrieben werden.
Modellauto

Umsetzung (HW/SW)

Die Umsetzung der Hardware ist in vier Bereiche zu unterteilen. Die Schnittstelle zum Menschen stellt zwei dieser Bereiche dar, zum einen Nutzereingabe und zum anderen die Nutzerausgabe. Die Nutzereingabe erfolgt über die Fernbedienung des Modellautos und die Nutzerausgabe wird durch ein Display realisiert. Die verbleibenden Bereiche sind die Schnittstellen zu dem Antrieb des Fahrzeuges. Die Ansteuerung des Antriebsmotors ist ein Aktor und die Raddrehzahlerfassung ein Sensor. Die Software umfasst dieselben vier Bereiche und den Bereich der Regelung.

Hardware

Nutzerausgabe: Das Display für die Nutzerausgabe wird über den I2C Bus an den Mikrokontroller angeschlossen. Zusätzlich wird das Display mit der Versorgungsspannung und der Masse des Arduino verbunden.


Schaltung für Nutzereingabe
Steckbrettschaltung für Nutzereingabe

Nutzereingabe: Die Nutzereingabe wird über die Fernbedienung realisiert, um die Signale abzugreifen werden die Ursprünglichen Signale zum Motor für vor und Rücklauf ausgewertet. Durch Versuche konnte herausgefunden werden, das bei Vorlauf das gelbe Anschlusskabel des Motors ein Potential von 9,6 V zur Masse des Fahrzeuges, und das weiße Anschlusskabel eine Potential von 0,2 V aufweist. Bei Rücklauf des Motors sind diese Werte vertauscht und bei nicht aktiviertem Motor weisen beide Anschlüsse ein Potential von 3,6 V zur Masse auf.

Diese Anschlüsse gehen auf eine Schaltung aus der Eingangsseite von zwei Optokoppler und einem 330Ohm Widerstand. Die beiden Optokoppler sind parallel geschaltet und gegenläufig gepolt. Der Widerstand ist in Reihe geschaltet und dient der Begrenzung des Stroms unter den Maximal zulässigen Wert der Optokoppler 50mA. Durch die gegenläufige Polung wird je nach Richtung des fließenden Stroms immer nur ein Optokoppler aktiviert. Sollte keine Potenzialdifferenz zwischen den beiden Anschlüssen anliegen so wird keiner der beiden Optokopplern aktiviert.

Die Ausgangsseite des ersten Optokopplers ist mit einem Interrupt fähigen Pin des Arduino verbunden, der durch einen 10kOhm Pullup-Widerstand mit der Versorgungsspannung des Arduinos verbunden ist. Wird der Optokoppler aktiviert so wird der Pin mit der Masse verbunden, sodass eine fallende Flanke entsteht welche einen Interrupt auslösen kann. Der zweite Optokoppler ist mit einem digitalen Eingangspin verbunden und über eine Diode mit dem Interrupt-Pin. Bei Aktivierung des Optokopplers werden beide Pins mit der Masse verbunden, sodass ein Interrupt ausgelöst werden kann und der digitale Pin das Masse Potenzial annimmt. Beim auftreten eines Interrupts kann so entschieden werden welcher der beiden Optokoppler aktiviert wurde und damit ausgelesen werden und damit die Nutzereingabe ausgelesen werden.

Theoretisch könnte die Funktion ebenfalls mit zwei Interrupt-Pins gelöst werden, wodurch die Diode gespart werden kann. Da der verwendete Microcontroller jedoch nur zwei Interrupt-Pins besitz und einer für die Auswertung des Sensors verwendet werden soll, wurde die beschriebene Schaltung umgesetzt, welche einen Pin als Interrupt für Nutzereingabe verwendet. Alternativ könnte die Nutzereingabe auch über Polling geschehen, indem digitale Eingänge in sehr kurzen Abständen abgefragt werden. Um eine zuverlässige Eingabe zu ermöglichen, müsste der Microkontroller jedoch einen erheblichen Anteil der Rechenzeit mit der Nutzereingabe verbringe. Hierdurch könnte möglicherweise die eigentliche Aufgabe, die Geschwindigkeitsregelung, gestört werden.

Schaltung für Motoransteuerung
Steckbrettschaltung für Motoransteuerung

Ansteuerung des Antriebsmotors: Der Motor benötigt im Betrieb eine Spannung von etwa 9,4 V und einen Strom von 500 mA. Um diese von der Versorgungsspannung des Microcontrollers abweichenden Spannung schalten zu können, wird ein Optokoppler verwendet. Dieser isoliert die Spannung des Mikrokontrollers zur Spannung des Fahrzeuges und wird an das Gate des n-Kanal MOSFETS angeschlossen, um den Strom schalten zu können. Dies ist aufgrund des maximalen Ausgangsstrom des Optokopplers notwendig. Die Motorleistung wird somit durch einen mit dem Motor in Reihe geschalteten n-Kanal MOSFET geregelt, wobei die Reihenschaltung die Versorgungsspannung mit der Masse des Fahrzeugs verbindet. Der Optokoppler verbindet bei Aktivierung das Gate des MOSFTES mit der Versorgungsspannung des Fahrzeugs. Zudem ist das Gate über einen 10kOhm Pulldown-Widerstand mit der Masse des Fahrzeugs verbunden um bei nicht Aktivierung des Optokopplers den MOSFET zu sperren. Der Optokoppler wird mit einem PWM Pin des Mikrokontrollers verbinden und über einen 330Ohm Widerstand mit der Masse des Mikrokontrollers. Der Widerstand dient zur Begrenzung des Stroms unter den maximal zulässigen Wertes der Eingangsseite des Optokopplers von 50mA.

Schaltung für den Hallsensor
Steckbrettschaltung für Hallsensor

Raddrehzahlerfassung: Für die Auswertung der Geschwindigkeit wird ein Hall-Effekt Sensor verwendet. Durch den Hallsensor wird das Magnetfeld eines Permanentmagneten detektiert, welcher sich im Reifen des Fahrzeuges befindet. Dieser wird mit der Versorgungsspannung und der Masse des Mikrokontrollers sowie mit einem Interrupt-fähigen Pin verbunden. Um das Potenzial einzustellen wird ein 10kOhm Pullup Widerstand mit der Versorgungsspannung des Mikrokontrollers verbunden.

Software

Komponententest

Halleffektsensor

Motoransteuerung

Benutzereingabe

Display

Gesamtschaltung Steckbrett

Gesamtschaltung Platine

Ergebnis

Es funktioniert!

Zusammenfassung

Lessons Learned

Projektunterlagen

Projektplan

Datum Aufgabe Durchgeführt Status
05.10.2020 Ausarbeitung einer Grundidee = Abgeschlossen
08.10.2020 Wiki-Artikel anlegen = Abgeschlossen
09.10.2020 Systementwurf, Wiki-Artikel Konzept = Abgeschlossen
05.11.2020 Sensortest, Hallsensor = Teilweise Abgeschlossen
18.12.2020 Motoransteuerung =, Sensortest, Hallsensor Abgeschlossen
21.11.2020 Regelkreis und Simulation = Teilweise Abgeschlossen
27.11.2020 Gesamtaufbau Steckbrett = Abgeschlossen
28.11.2020 Software Projekt anlegen = Abgeschlossen
29.11.2020 Software Geschwindigkeitsmessung, Regler, Motor = Abgeschlossen
30.11.2020 Software und Steckbrett Benutzereingabe = Abgeschlossen
02.01.2021 Platine Zusammenbau = Teilweise Abgeschlossen
03.01.2021 Platine Test, Kontaktierung, Gesamtaufbau =, Platine Zusammenbau Abgeschlossen
04.01.2021 Informationsaustausch, Wiki-Artikel Struktur = Abgeschlossen
04.01.2021 Wiki-Artikel Komponentenspezifikation = In Arbeit

Projektdurchführung

YouTube Video

Weblinks

Literatur

  1. Eigenes Dokument
  2. Eigenes Dokument
  3. Arduino: Arduino- ArduinoBoardUno. 2021. Online im Internet: https://www.arduino.cc/en/Main/arduinoBoardUno> Abruf: 05.01.2021
  4. https://cdn-reichelt.de/bilder/web/artikel_ws/B400/PICTURE_2SS52M.jpg
  5. STMikroelektronics: STP16NF06L/FP. 2004. Online im Internet: https://cdn-reichelt.de/documents/datenblatt/A200/TXSTM-POWERMOSFET-STX-16NF06L_EN.pdf; Abruf: 05.01.2021
  6. https://cdn-reichelt.de/bilder/web/xxl_ws/A200/TO-220.png
  7. EVERLIGHT ELETCRONICS CO., LTD: Technical Data Sheet - Photocoupler-EL817 Series. 2004. Online im Internet: https://cdn-reichelt.de/documents/datenblatt/A500/EL817-EVL.pdf; Abruf: 05.01.2021
  8. https://cdn-reichelt.de/bilder/web/artikel_ws/A501/DIP-4.jpg
  9. Continental Device India Limited: FAST SWITCHING PLASTIC RECTIFIERS - BA157, BA158, BA159. Jahr Unbekannt. Online im Internet: https://cdn-reichelt.de/documents/datenblatt/A400/BA157_BA158_BA159_CDIL.pdf; Abruf: 05.01.2021
  10. https://cdn-reichelt.de/documents/datenblatt/A400/BA157_BA158_BA159_CDIL.pdf

→ zurück zur Übersicht: WS 20/21: Fachpraktikum Elektrotechnik (MTR)