====== Studentische Projekte ====== \\ ===== Ströme messen mit Hallsensoren ===== {{:professoren_webseiten:rebholz:sicherungen.jpg?200 |}} Ströme richtig messen ist immer eine größere Herausforderung. Besonders dann, wenn man keinen direkten Zugang zum stromführenden Leiter hat. Hr. Sichler hat in seiner Bachelorarbeit untersucht ob sich mit sehr empfindlichen Hallsensoren Ströme messen lassen wenn diese über handelsüblichen Fahrzeugsicherungen angebracht werden. Die Idee dahinter: Fahrzeugkomponenten erkennen, welche bei einer Ruhestrommessung das Fahrzeug aufwecken. Das Problem: Das durch den Strom erzeugte Magnetfeld ist in der Größenordnung des Erdmagentfelds. [[https://video.htwg-konstanz.de/Panopto/Pages/Viewer.aspx?id=8c664366-adfc-49e5-b7b7-af4300b7dd2c|Videovorstellung]]\\ {{ :professoren_webseiten:rebholz:02_ba-ruhestrommessung_plakat-a3.pdf | Poster zur Arbeit als Download}} ===== Anpassung der Eingangsspannung über Tiefsetzsteller ===== {{:professoren_webseiten:rebholz:tiefsetzsteller.png?200 |}} Die Grundschaltung jeder Leistungselektronik ist der Tiefsetzsteller. Je wird nahezu auch auf jeder Schaltung benötigt um eine gemeinsame Eingangsspannung an die Bedürfnisse der einzelnen Komponenten wie zum Beispiel ein Mikrocontroller anzupassen. Besonders bei batteriebetriebenen Geräten kann nicht auf die beliebten Längsspannungsregler (LDO) aufgrund deren hohen Verlustleistung zurückgegriffen werden. In der Vorlesung Leistungselektronische Systeme haben die Teilnehmer recherchiert welche ICs am Markt verfügbar sind mit integriertem Schaltelement. Zum deren Betrieb werde typischerweise nur wenig externe Bauelemente wie die Induktivität, die Freilaufdiode und ein Glättungskondensator benötigt. Download: {{ :professoren_webseiten:rebholz:leistungselektronik_tiefsetzsteller_praesentation.pdf |}} ===== Unsere Motorsteuerung als digitale Audioendstufe ===== {{:professoren_webseiten:rebholz:sampling_audiosignal.png?200 |}} Jan Sperling hat in seiner Bachelorarbeit gezeigt, dass wir die Hardware der Motoransteuerung auch als digitale Class D Audio Endstufe einsetzen können. Unser TI-Launchpad tastet dazu die Audiosignal mit dem Analog-Digitalwandler zyklisch ab und übergibt die Werte dem PWM-Modul. Mit Hilfe einer T/2 versetzten Taktung wird dann der Lautsprecher angesteuert. Leider können die Audio-Signale nicht direkt auf den Mikrocontroller losgelassen werden. Audiosignale sind mittelwertfrei, das bedeutet sie schwingen um den Nullpunkt, mit einer maximalen Eingangsamplitude von ca. 1,2V. Die Analog- nach Digitalwandlung jedoch erwartet Pegel zwischen 0 und 5V. Dazu wurde von Hr. Sperling eine Pegelanpassung entwickelt welche in der Lage ist das Audiosignal exakt auf den Wertebereich des AD-Wandlers anzupassen. Für den perfekten Sound muss allerdings noch eine Nachfolgearbeit eine Störeinkopplung vom Leistungsteil in die Pegelpassung aufspüren und natürlich beseitigen. Posterdokumentation: {{ :professoren_webseiten:rebholz:plakat_digitale_audioendstufe.pdf |}} \\ [[https://video.htwg-konstanz.de/Panopto/Pages/Viewer.aspx?id=03190c37-32a9-4755-bff7-ace8013f6596|Videodokumentation]] ===== Displayansteuerung mit i2C Bus und Simulink Embedded Coder ===== {{:professoren_webseiten:rebholz:f28069_i2c_display_simulink.png?200 |}} Konstantin Lutz hat in seiner Bachelorarbeit eine Displayansteuerung implementiert für unsere universelle Hardwareplattform in der Leistungselektronik. Das Display kann nun für weitere Projekte komfortabel in die Simulink-Umgebung eingebunden werden. Ohne sich um die Details kümmern zu müssen können die einzelnen Zeilen ganz einach über Strings beschrieben werden. Als Schnittstelle wird der i2C Bus verwendet. Das Display kann sowohl im Stand-Alone als auch im Monitor&Tune Modus beschrieben werden. Im Video [[https://video.htwg-konstanz.de/Panopto/Pages/Viewer.aspx?id=4b505a5d-c7ba-406b-9b50-acce012b3413|Video]] erklärt Hr. Lutz die Details zum Projekt und wie das Display angesprochen werden kann. \\ Die vollständige Dokumentation zum Download: {{ :professoren_webseiten:rebholz:ansteuerung_eines_lcd-displays_mit_matlab_konstantin_lutz_2021.pdf |}} \\ und die Simulink Demo-Files: {{ :professoren_webseiten:rebholz:htwg_i2c_display_simulink.zip |}}\\ ===== Ansteuerung eines BLDC Motors mit Visualisierung ===== {{:professoren_webseiten:rebholz:bldc_gui.jpg?direct&200 |}} Auch im "Corona-Semester" haben wir in der Vorlesung Leistungselektronik unsere Projekte realisiert. Allerdings lag der Focus jetzt auf der Projektierung, Simulation und virtuellen Inbetriebnahme. Die Projektgruppe mit Christoph Casagranda, Johannes Huober und Lucas Flender hat in ihrem Projekt gezeigt wie sich ein BLDC - Motor ansteuern lässt mit einer Visualisierung der aktuellen Rotorposition auf einem externen PC. Nachfolgender Link zeigt das Projekt in einem kleinen Videobeitrag. [[https://video.htwg-konstanz.de/Panopto/Pages/Viewer.aspx?id=17938014-9797-4703-95f1-ac0c00f6d411|Video]]\\ \\ \\ ===== Ein mit Simulink programmier- und regelbarer Buck-Boost Converter ===== {{:professoren_webseiten:rebholz:buck-boost_ti.jpg?direct&200 |}} Lukas Hölsch hat in seiner Projektarbeit zum ersten mal im Labor für Leistungselektronik ein TI Launchpad eingesetzt zur Programmierung und Regelung eines Buck-Boost Converters. \\ Das Besondere daran ist, dass die Programmierung in Simulink rein graphisch erfolgt. Das bedeutet es sind keinerlei Programmierkenntnisse erforderlich. Weiterhin erlaubt die Anbindung der Schaltung an Simulink eine Variation aller Parameter im laufenden Betrieb. Somit ist es auf einfache Weise möglich Regelerparameter anzupassen und sich die Ergebnisse direkt visualisieren zu lassen. \\ Dokumentation zum Download.{{ :professoren_webseiten:rebholz:projektarbeit_lukas_hoelsch.pdf |}} ---- ===== 100W Klasse D Audio Verstärker ===== {{:professoren_webseiten:rebholz:audi_verstaerker.jpg?direct&200 |}} Im Porjektlabor Leistungselektronik haben wir auch dieses Semester eine 100W Audioendstufe entwickelt. Das Ergebnis von Fabian Sernatinger und Dennis Rutkowski kann sich hören lassen. Die erstmals eingesetzten Snubber über den Leistungshalbleitern haben einen deutlich positiven Effekt auf das Klangerlebnis. Die Endstufe generiert die Taktsignale mit Hilfe zweier analogen Referenzspannungen im T/2 Versatz. Dadurch können aufwendige Filerschaltungen zum Dämpfung des Trägersignals entfallen.\\ Überblick zum Projekt {{ :professoren_webseiten:rebholz:le_rutkowskisernatinger_praesentation1.pdf |}}, {{ :professoren_webseiten:rebholz:schaltplan_class_d_amp_rev1.pdf |}} [[https://video.htwg-konstanz.de/Panopto/Pages/Viewer.aspx?id=46f55908-97ec-47c7-9cc2-ab4b00a4efec|Inbetriebnahmevideo]]\\ \\ ---- ===== Aktuelle Traktorgeneration ===== {{:professoren_webseiten:rebholz:trettraktor_ws.jpg?direct&200 |}} Auch dieses Semester gab es eine neu Version des vollelektrischen Traktors. Der Fokus liegt zunehmen auf Fahrspaß womit die Studierenden dem Motor immer mehr Drehmoment abverlangen. So konnte dieses Semester der Abzug noch einmal um 50% gesteigert werden. Die Obergrenze ist aber noch nicht erreicht. Ich bin gespannt ob wir in den kommenden Jahren noch schneller beschleunigen. ---- ===== Wechselrichter ===== {{:professoren_webseiten:rebholz:wechselrichter_schmitt.jpg?direct&200 |}} Peter Schmidt hat in seiner Bachelorarbeit einen einen Sinuswechselrichter aufgebaut der zukünftig im Praktikum zu den elektrischen Maschinen zum Einsatz kommen wird. Der Wechselrichter kann sowohl im Stand-Alone als auch im Grid-Betrieb zur Energieeinspeisung in das öffenltiche Netz verwendet werden. Die Nachfolgearbeit wird die Frequenzerkennung verbessern und den Wechselrichter in einem kompakten Design aufbauen.\\ Dokumentation: {{ :professoren_webseiten:rebholz:netzgefuehrter_sinuswechselrichter_schmidt.pdf |}} \\ \\ \\ \\ \\ \\ ---- ===== Elektr. Trettraktor ===== {{:professoren_webseiten:rebholz:lange_nacht_fahrt.jpg?200 |}} Wer ist als Kind nicht gerne mit seinem Trettraktor oder dem Dreirad unterwegs gewesen? Wieviel besser wäre es dann erst mit einer elektrisch angetriebenen Version oder einer elektrischen Unterstützung? Im Sommersemester 2017 haben wir zum ersten mal für die lange Nacht der Wissenschaft die Traktoren elektrifiziert.\\ Heute gibt es bereits mehrer Versionen: Als Pedelec, als Elektrofahrzeug, mit Gleichstrommotor oder BLDC Motor.\\ Die Traktoren werden ständig weiterentwickelt und stehen für Projekt- und Abschlussarbeiten zur Verfügung: * Elektrische Lenkung * Kollisionsvermeidung über Sensoren * Autonom fahrende Traktoren * Induktive Ladeplatte\\ Die Systeme können auch im Rahmen des Projektlabors der Vorlesung Leistungselektronik aufgebaut werden.\\ {{youtube>FdGKIBFJB44?medium}}\\ ---- ===== Steer-ByWire ===== Sollen unsere Traktoren bald autonom fahren können müssen noch einige Hardwareanforderungen dazu umgesetzt werden. Grundvoraussetzung ist natürlich die Möglichkeit die Fahrtrichtung elektronisch vorzugeben. Das bedeutet der Lenkwinkel / Fahrerwunsch muss elektronisch umgesetzt werden. Im PAE7 Praktikum haben sich Studenten der Aufgabe angenommen und einen ersten Umsetzungsvorschlag ausgearbeitet. Es geht hier nicht darum die perfekte Lösung für eine Fahrzeugintegration zu finden, sondern mit einfachen und vorhandenen Mitteln die Funktion darzustellen. Unsere Standartkomponente im Praktikum, welche auch hier zum Einsatz kommen: * DC- Getriebemotor (Aus Akkuschrauber) * H-Brücke aus vorhandenem Praktikumsversuch * XC866 Trainingsboard {{:professoren_webseiten:rebholz:steerbywire.jpg?200 |}} Die Lageerfassung des Lenkrads erfolgt über einen Hallsensor. Über einen zweiten Hallsensor wird die aktuelle Position der Lenkachse ermittelt. Die Software zur elektischen Lenkung hat nur eine Aufgabe: Der Fehlerwinkel zwischen Sollwinkel und Istwinkel muss ausgeglichen bzw. möglichst klein gehalten werden.\\ Das Projekt hat super funktioniert und es konnte gezeigt werden, dass auch mit einfachen Mitteln eine elektrische Lenkung oder ein Steer by Wire System aufgebaut werden kann. Für den Einsatz im Traktor müssen wir allerdings nach einem geigneten Motor ausschau halten, da: * Das hohe Haltemomonte des Getriebes die Regelung ggf. sehr "nervös" macht * Das Getriebespiel der Akkuschraubereinheit sehr hoch ist Das Ergebnis kann sich sehen lassen: {{youtube>Auuv7h7OKU4?medium}}\\ ---- ===== Fahrzeuggenerator als Motor ===== {{:professoren_webseiten:rebholz:limapae.jpg?200 |}} Der Drehstromgenerator in modernen Fahrzeugen ist schon lange keine permanenterregte Gleichstrommaschine mehr, wie noch weithin angenommen. Besonders Fahrzeuge im Premmiumsegment haben einen Leistungsverbrauch im Bereich von 3-4kW auf der 12V- Seite mit steigender Tendenz. Für die Versorgung des 12V Bordnetz kommen heute Drehstromgeneratoren zum Einsatz. Genauer gesagt handelt es sich hierbei um fremderregte Synchronmaschinen.\\ \\ \\ \\ \\ Die Regelung der Ausgangsspannung bzw. des Ausgangsstromes erfolgt über einen Linearregler welcher den Erregerstrom entsrepchend beeinflusst. Stabilisiert werden die Bordnetze über einer oder zwei Fahrzeugbattereien. {{:professoren_webseiten:rebholz:limapaebs.jpg?200 |}} Im ersten Schritt muss das hintere Lagerschild und die Gleichrichterdioden entfernt werden um an die einzelnen Wickelabgriffe zu kommen. Danach gilt es herauszufinden wie die Wicklung verschalten ist. Typischerweise sind die Maschinen im Dreieck verschalten. Da meist keine Informationen zur Verschaltung verfügbar sind kann über eine Spannungsmessung (Drehen von Hand +Erregerfeld anlegen) der Wicklungssinn ermittelt werden. \\ \\ \\ \\ {{youtube>v46SAxKk1Fw?medium}}\\ ---- ===== TI Launchpad F28069 ===== \\ https://www.ti.com/tool/LAUNCHXL-F28069M#technicaldocuments \\ Das Launchpad F28069 bietet für die Leistungselektronik und elektrische Maschinen einen schnellen Einstieg \\ zur Steuerung und Regelung leistungselektronischer Schaltungen.\\ Zusätzlich ist es möglich die Hardware über Simulink zu programmieren, womit nur wenig Kontakt zum C-Code notwendig wird.\\ Die grafische Programmierung über Simulink ist in der Fahrzeugentwicklung und Autosar-Systemen weit verbreitet und bietet \\ auch ohne tiefes Wissen über die Hardware eine effiziente Programmierung. \\ Wie immer ist die erste Hürde (bis die Hardware mit Simulink kommuniziert) eine der Größten.\\ \\ ==== Vorbereitende Maßnahmen: ==== * Launchpad F28069 organisieren * In Matlab die Pakete installieren: Embedded Coder Support Package for Texas Instruments C2000 Processors \\ * Notwendige Third Party Software wie CCS (Code Composer Studio) installieren Anbei meine Fallstricke bei der Inbetriebnahme: ** Mit welchen LEDs kann ich spielen? **\\ LED Pins: \\ * GPIO34 D9 (Rot) (Enable Boot)\\ * GPIO39 D10 (Blau)\\ //**To Do:** Was verbirgt sich hinter GPIO34 (Enable Boot)?\\ //Siehe: Boot-Switches müssen richtig gesetzt sein, damit ein Download von Simulink zum Launchpad erfolgen kann.\\ Zum Spielen bietet sich D10 an (Achtung, Ausgabe ist invertiert) ....\\ {{:professoren_webseiten:rebholz:d10_on_off.jpg?400|}} \\ {{ :professoren_webseiten:rebholz:firstc2000_led_toggle.zip |}} Im Simulinkbeispiel lässt sich über den Schalter die LED D10 aktivieren und deaktivieren.\\ Dazu muss in Simulink unter Hardware- Run on Hardware - Monitor&Tune gewählt werden.\\ Falls der Download scheitert: \\ * Unter COM-Port im Gerätemanager muss XDS100 Class USB verfügbar sein, siehe [[https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/670519]] \\ * Achtung: Schalter der Boot-Mode Switches beachten. Download aus Simulink mit Modus 2 Emulation Boot, siehe Launchpad Manual\\ * In Simulink muss der richtige COM-Port gewählt werden, siehe https://de.mathworks.com/help/supportpkg/texasinstrumentsc2000/ug/external-mode.html \\ \\ \\ {{ :professoren_webseiten:rebholz:launchpad_jumpersetting.jpg?direct&400 |}} ==== Daten vom ADC lesen ==== Über den Block ADC lässt sich der Analog- Digitalwandler konfigurieren und einlesen. \\ **To Do:** Wo ist der Unterschied zum Block AIOX?\\ {{:professoren_webseiten:rebholz:d10_on_off_read_adc.jpg?400|}} \\ {{ :professoren_webseiten:rebholz:firstc2000_led_toggle_read_adc.zip |}} \\ ==== PWM Ausgabe ==== Die nächste Herausforderung besteht darin eine PWM zu generieren. Idealerweise gleich zusammen mit der invertierten Ausgabe\\ zur Ansteuerung einer Halbbrücke. Folgendes Setup ist eine Erweiterung der bisherigen Versuch zur PWM Ausgabe.\\ Über die Dashboard-Potis lässt sich die Einschaltdauer ändern sowie die Todzeiten für die steigende und fallende Flanke.\\ {{:professoren_webseiten:rebholz:pwm2a_pwm2b_inv.jpg?direct&400|}} \\ {{ :professoren_webseiten:rebholz:firstc2000_led_toggle_read_adc_calcvalue_epwm.zip |}} \\ \\ ==== Digitalport einlesen ==== \\ {{:professoren_webseiten:rebholz:gpio_einlesen.jpg?direct&400 |}} Der erste Versuch direkt einen Interrupt Routine auszulösen über den GPIO Pin 20, siehe unten ging leider schief. Die neue Strategie ist daher erst zu testen einen Digitalen Eingang auszulesen und damit auch zu prüfen ob die Logik-Pegel erkannt werden. Erzeugt werden die Impulse vom GPIO 0 welcher ein in Simulink einstellbares Rechtecksignal ausgibt. Erfreulich ist, dass sich die Signalquelle im Monitor&Tune Modus direkt ändern lassen, siehe {{ :professoren_webseiten:rebholz:firstc2000_led_toggle_read_adc_calcvalue_epwm_readdigital.zip |}} \\ \\ ==== Interrupt==== \\ {{:professoren_webseiten:rebholz:ext_interrupt_simulink.jpg?direct&200 |}} \\ Das Launchpad besitzt eine Reihe an interruptfähigen Pins. In der Pin-Übersicht des Quick-Start-Guide mit (!) gekennzeichnet. Das fogende Beispiel löst durch einen Flankenwechsel am GPIO20 einen Interrupt aus. In der ISR wird zuerst Port 20 eingelesen, dann die LED ensprechend dem Port-Pin gesetzt. Achtung, das LED Signal ist invertiert. Zum testen lassen wir uns am GPIO0 ein Rechtecksignal erzeugen. Damit der Interrupt ausgelöst wird muss eine Drahtbrücke von GPIO 0 auf 20 gesetzt werden. \\ Wichtig ist, dass in Matlab unter Hardware-Settings -> Target hardware resources -> External Interrupt -> der XINT3 ausgewählt wird für GPIO 20. Leider lassen sich nur drei externe Interruptquellen anwählen. \\ {{ :professoren_webseiten:rebholz:firstc2000_led_toggle_read_adc_calcvalue_epwm_interrupt.zip |}} \\ ==== Stand-Alone ==== Um eine Stand-Alone Applikation (ohne Simulinkanbindung) zu generieren müssen folgende Änderungen vorgenommen werden. * In Simulink unter Hardware Implementation "Boot From Flash" aktivieren. Danach das Programm mit "Build, Deploy and Start" auf den Controller flashen. Das Programm starte nach erfolgreichem Flashen auf dem Controller. {{ :professoren_webseiten:rebholz:boot_from_flash.png?200 |}} * Auf dem Lanchpad die Dipschalter (Mäuseklavier) auf die Stellung "Get Mode" setzen: ON ON OFF. Damit wird die richtige Bootkonfiuration gesetzt, damit nach einem Spannungsreset das Programm geladen wird. Dies ist der letzt Schritt bevor die Schaltung sich nicht mehr aus der USB verbindung versorgt. (Ausgangszustand: OFF ON ON) * Jetzt können wir das Launchpad über die Zwischenkreisspannung (Batterie oder ähnliches versorgen). Dazu auf der Leiterkarte JP4 setzten. Auf dem **Launchpad** die Jumper JP1 und JP2 entfernen. ==== Monitoring über Serielle Schnittstelle ==== In vielen Fällen stößt die Monitor&Tune Funktion an Ihre Grenzen. Insbesondere wenn es darum geht Interrupts mit hoher Wiederholrate zu übertragen. Hier ist es sinnvoller den µC ohne Tune-Funktion laufen zu lassen und sich die Werte über die serielle Schnittstelle an den PC (beliebiges Interface) übertragen zu lassen. Besonders einfach geht das natürlich wieder mit Simulink. \\ Vorgehensweise: - Code für µC in Simulink erstellen und über den Button Build,Deploy&Start auf den µC übertragen. Im Code müssen natürlich die zu übertragenden Signale an die Serielle Schnittstelle übergeben werden. (Siehe Beispielcode). Dieser Schritt muss bei jedem Power-Up des µC wiederholt werden. Außer, es werden die Jumper-Settings für den Stand-Alone Betrieb gesetzt, siehe oben. - Das Serial Communication Interface A ist für den Monitor&Tune Modus reserviert. Zur Übertragung zu einem Host-PC wird das SCI B Modul verwendet. Da der FTDI Serial-To-USB nur einen Kanal beinhaltet müssen wir die Jumper-Settings auf dem Board verändern entsprechend Tabelle 1 im Manual. JP 7 = offen, JP 6 = gesetzt/offen. - Simulink als Host und Block zum lesen/schreiben der Seriellen Schnittstelle öffnen. (Achtung, ggf. muss die COMport Nummer angepasst werden. {{ :professoren_webseiten:rebholz:jumper_sci-b.jpg?direct&400 |}} Demo-Download: {{ :professoren_webseiten:rebholz:host-read.zip |}} ---- ===== DC- Motor/Generator Prüfstand ===== Mit Hilfe von Simulink und dem TI-Launchpad werden zwei gekoppelte Gleichstrommaschinen getrennt voneinander angesteuert.\\ {{:professoren_webseiten:rebholz:pruefstand_v0.jpg?direct&400|}} Hardware:\\ * Drehzahl / Drehmomentmessung an der Welle * Strommessung (positiv, negativ) Motor A/B * Spannung stellen Motor A/B * Strom stellen Motor A/B (positiv, negativ), im Generatorbetrieb (Strom negativ) muss Leistung in Wärme umgesetzt werden * Temperatur Motor A/B Funktionsblöcke in Simulink:\\ * Konstante Spannung Motor (positiv, negativ) A/B (Strombegrenzung auf +/- Imax) * Konstanter Motorstrom (positiv, negativ) A/B (Spannungsbegrenzung auf +/- Umax) * Konstantes Drehmoment (positiv, negativ) A/B (Strombegrenzung) * Lastsimulation, es können vorgegebene Drehmomentverläufe (z.B Fahrprofile) abgefahren werden * Konstante Drehzahl A/B (Spannungsbegrenzung, Strombegrenzung) * Konstante Position A/B (Spannungsbegrenzung, Strombegrenzung) Versuchsdurchführung:\\ * Messung der Kennlinie n(M) Motor A, Parameter: Ausgangsspannung * Messung der Kennlinie I(M) Motor A, Parameter: Ausgangsspannung * Wirkungsgrad Motor A * Hochlaufzeitzeit unter Last ==== Hardware-Blöcke ==== Parameter:\\ * Umax = 30V * Imax = 20A\\ {{ :professoren_webseiten:rebholz:gekoppeltemotoren.jpg?direct&400 |}}\\ Das Bild zeigt den aktuellen Stand der gekoppelten Motoren. [[https://www.dunkermotoren.de/produkte/gleichstrommotoren/detail/8844201270/|Datenblatt]] \\ Es fehlen noch der Encoder und die Drehmomentmessung.\\ Wellendurchmesser: 8mm, Technische Zeichnung {{ :professoren_webseiten:rebholz:gr-63x55-8844201270.pdf |}} \\ {{ :professoren_webseiten:rebholz:gr63x55-24v.jpg?direct&400 |}} Aus Datenblatt: Dunkermotoren.de Kenndaten eines Motors am Bemessungspunkt: Spannung: 24V Strom: 4,9A Drehzahl: 3350 1/min Drehmoment: 27Ncm Leistung 94,7W Weitere Kenndaten: Leerlaufdrehzahl: 3650 1/min Leerlaufstrom: 0,4A Anlaufmoment (24V): 260Ncm Anlaufstrom 40A Entmagnetisierungsstrom 30A Hardwarebegrenzung auf 20A ergibt ein maximales Drehmoment der Motoren von 128Ncm. Sicherheitsreserve für Impulsbelastung: Drehmomentmessung bis 300Ncm. Nachfolgend ein Teil der notwendigen Hardwarekomponenten: === Leistungswiderstand === Der Widerstand wird verwendet damit im Genertorbetrieb die erzeugte Energie in Wärme umgesetzt werden kann, da unsere Netzteile im Allgemeinen nicht rückspeisefähig sind.\\ Beispiel für einzusetzenden Lastwiderstand:\\ https://de.farnell.com/arcol/hs100-r10-j/drahtwiderstand-0r1-5-axial/dp/2478150 \\ Der Widerstand darf nicht zu groß gewählt werden, da ansonst nur für hohe Drehzahlen (große Uind)\\ ein außreichend großer Strom fließen kann.\\ Der Widerstand muss zusätzlich auf einem Kühlkörper montiert werden und wird mit einem Temperatursensor ausgestattet.\\ Die Ansteuerung des Widerstandes erfolgt über PWM (min. 50kHz) über das Launchpad, geregelt wird auf konstante Versorgungsspannung.\\ Der Leistungswiderstand wird in der ersten Version der Schaltung nicht weiter verfolgt, das stets zwei gekoppelte Motoren verwendet werden. Die Gefahr eines ungewollten Rückspeisens entsteht aufgrund der Verluste in der Leistungselektronik und den Motoren nicht. === Spannungsversorgung === Die Motoren müssen jeweils separat mit einer Spannung -Umax < = U < = +Umax angesteuert werden können. \\ Der maximale Laststrom wird auf +/-Imax begrenzt.\\ Die Ansteuerung der Spannungsregelung erfolgt über das Launchpad, geregelt wird auf konstante Ausgangsspannung.\\ === Drehmomentsensor === Das an der Welle anliegende Drehmoment wird mittels einem Drehmomentsensor erfasst. \\ Analoger Messbereich +/-10V für z.B. Mmax = 1Nm \\ https://www.burster.de/de/drehmomentsensoren/p/detail/8661/ \\ \\ Nach den ersten Anfragen bei Herstellen von Drehmomentsensoren ist klar, dass sich die Messwellen im Bereich von > 2000€ absipielen -> viel zu teuer.\\ Wir werden daher den Antriebsmotor frei lagern und über einen Hebelarm die Kraft auf einen Hebelarm messen. === Encoder === Zur Drehzahl und Drehrichtungserkennung muss ein Encoder zum Einsatz kommen. \\ Der Encoder RE30/500 ist mit 5V Impulsausgängen A, B und einem Indexausgang ausgestattet.\\ ==== Pinbelegung Launchpad Hardware V01 ==== ^ Funktion ^ Analog / Digital ^ Anpassung ^ Launchpad | Launchpad Pin | Schaltplanlabel ^ Sonstiges, Schutzbeschaltung ^ | PWM Out Motor A \\ HB_A_Links_HS\\ HalbBrücke_A_Links_HighSide | D | Logikpegel Treiber | 1PWM_AH\\ EPWM1A | 40 | M1B1H_IN | Todzeiteinstellung für jede Halbbrücken\\ im µC ermöglichen | | PWM Out Motor A\\ HB_A_Links_LS | D | Logikpegel Treiber | 1PWM_AL\\ EPWM1B | 39 | M1B1L_IN | | | PWM Out Motor A\\ HB_A_Rechts_HS | D | Logikpegel Treiber | 1PWM_BH\\ EPWM2A | 38 | M1B2H_IN | | | PWM Out Motor A\\ HB_A_Rechts_LS | D | Logikpegel Treiber | 1PWM_BL\\ EPWM2B | 37 | M1B2L_IN | | | PWM Out Motor A*\\ HB_A*_HS | D | Logikpegel Treiber | 1PWM_CH\\ EPWM3A | 36 | M1B3H_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | PWM Out Motor A*\\ HB_A*_LS | D | Logikpegel Treiber | 1PWM_CL\\ EPWM3B | 35 | M1B3L_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | PWM Out Motor B\\ HB_B_Links_HS | D | Logikpegel Treiber | 2PWM_AH\\ EPWM4A | 80 | M2B1H_IN | | | PWM Out Motor B\\ HB_B_Links_LS | D | Logikpegel Treiber | 2PWM_AL\\ EPWM4B | 79 | M2B1L_IN | | | PWM Out Motor B\\ HB_B_Rechts_HS | D | Logikpegel Treiber | 2PWM_BH\\ EPWM5A | 78 | M2B2H_IN | | | PWM Out Motor B\\ HB_B_Rechts_LS | D | Logikpegel Treiber | 2PWM_BL\\ EPWM5B | 77 | M2B2L_IN | | | PWM Out Motor B*\\ HB_B*_HS | D | Logikpegel Treiber | 2PWM_CH\\ EPWM6A | 76 | M2B3H_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | PWM Out Motor B*\\ HB_B*_LS | D | Logikpegel Treiber | 2PWM_CL\\ EPWM6B | 75 | M2B3L_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | Strommessung Motorstrom A\\ Messbereich +/- 20A | A | ACS712 | ADCINA0 | 27 | Strom_M1_33 | | | Strommessung Motorstrom B\\ Messbereich +/- 20A | A | ACS712 | ADCINB6 | 6 | Strom_M2_33 | | | Versorgungspannung +15V | A | | ADCINB2 | 26 | +15V_33 | Überwachung der Versorgungsspannung, | | Batteriespannung | A | | ADCINA2 | 25 | Vbat*_33 | | | Versorgungsspannung +3,3V | A | | ADCINB1 | 24 | +3,3V | | | Drehmomentmessung I\\ Kraftsensor 1 | A | Spannungsteiler | ADCINA6 | 2 | Moment_Pos_33 | | | Drehmomentmessung II\\ Kraftsensor 1 | A | Spannungsteiler | ADCINA7 | 23 | Moment_Neg_33 | | | Encoder Pulse | D Interrupt 1 | Logikpegel anpassen | GPIO19\\ ECAP1 | 19 | Encoder-HallA_Interrupt_33 | Jumper BLDC Hall-Sensoren,\\ Wird auch als ECAP1 benutzt | | Encoder Drehrichtung Rechts | D | Logikpegel anpassen | GPIO44 | 18 | Rechts_33 | | | Encoder Drehrichtung Links | D | Logikpegel anpassen | GPIO14 | 47 | Links_33 | | | Encoder Index | D Interrupt 2 | Logikpegel anpassen | GPIO25\\ ECAP2 | 54 | Index_HallB_Interrupt_33 | Jumper | | Vorhalt Hallsensor BLDC | D Interrupt 3 | Logikpegel anpassen | GPIO26\\ ECAP3 | 58 | HallC_33 | BLDC Hall-Sensoren | | Bafang Speed-Signal | D | Logikpegel anpassen | GPIO16 | 15 | Speed_33 | | | Taster 1\\ für manuelle Ansteuerung | D | Pull-Up | GPIO12 | 5 | T1 | | | Taster 2\\ für manuelle Ansteuerung | D | Pull-Up | GPIO22 | 8 | T2 | | | Taster 3\\ für manuelle Ansteuerung | D | Pull-Up | GPIO13 | 34 | T3 | Achtung: Liegt auf Enable-Boot. Ggf. problematisch | | Potentiometer A | A | | ADCINB7 | 63 | Poti 1 | Manuelle Drehzahlstellung Motor A\\ (frei Programmierbar in Simulink) | | Potentiometer B | A | | ADCINB4 | 64 | Poti 2 | | | Temperatur Motor A | A | LM355 mit Impedanzwandler | ADCINA5 | 65 | Temperatur1_33 | | | Temperatur Motor B | A | LM355 mit Impedanzwandler | ADCINB5 | 66 | Temperatur2_33 | | | LED-Anzeige | D | | GPIO51 | 12 | LED_Rot | | | LED-Anzeige | D | | GPIO27 | 59 | LED_Grün | | | Display i2C, SCL | D | | SCL\\ GPIO 33 | 9 | SCL | | | Display i2C, SDA | D | | SDA\\ GPIO 32 | 10 | SDA | | | Analoge Erweiterung 1 | A | | ADCINB0 | 28 | | | | Analoge Erweiterung 2 | A | | ADCINA1 | 29 | | | {{ :professoren_webseiten:rebholz:platine.jpg?direct&600 |}} Aktualisiert 05.04.2020:\\ Die aktuelle Schaltung mit PCB zum Download in der ersten Version: {{ :professoren_webseiten:rebholz:dcdc_v01_update.zip |}} \\ Das Layout zur Inbetriebnahme der Schaltung in Simulink ermöglicht einen schnellen Test aller IOs. {{ :professoren_webseiten:rebholz:inbetriebnahme_v5.jpg?direct&600 |}} Folgende Tests können durchgeführt werden: * LEDs aktivieren * Externe Schalterposition einlesen * Pegel der Hall und Encodersignale einlesen * Zeit zwischen zwei Hall-Flanken ermitteln * Test aller Halbbrücken * Analog-Werte einlesen und umwandeln Download der Inbetriebnahme-Software {{ :professoren_webseiten:rebholz:inbetriebnahme_v05.zip |}} Fazit und Erkenntnisse während des Aufbaus der Inbetriebnahmesoftware: * Compiler und Flash-Vorgang dauert sehr lange. * Dashboard Anzeigeelemente funktionieren leider nicht. Zur Anzeige stehen nur Display und Scopes zur Verfügung * Das eCap Modul zur Messung der Periodendauer (Encoder) läuft nur alleine. Eine gleichzeitige Portabfrage über GPIO DI Pin ist nicht möglich ==== Pinbelegung Launchpad Hardware V02 ==== Die Umsetzung der ersten Hardware V01 hat nahezu problemlos funktioniert. Für die Hardware der zweiten Generation werden folgende Änderungen vorgenommen: ^ Nr. ^ Änderungen zu V01 ^ | 1 | Falsches Label zur Spannungsmessung 3,3V, daher keine Verbindung auf dem PCB | | 2 | 3x Zusätzliche Stromsensoren zur Messung der Phasenströme Motor A | | 3 | Wechsel auf IR2110 Treiber mit SD Eingang, da die PWM ansonsten nicht deaktiviert werden kann.\\ PWM 0% bedeutet die Low-Side Mosfets sind dauerhaft geschlossen womit kein\\ Freilauf möglich ist. SD Pin deaktiviert die Brücken. | | 4 | Ausgabe der Encoder Impulse über Jumper optional auf Hall C.\\ Damit kann später auf Position geregelt werden. Simulink erlaubt keine doppelte Pinfunktion z.B. eCAP und gleichzeitig einen Interrupt | | 5 | Neuer Drehmomentsensor mit 50N, da aktuelle Version mit 10N zu gering | | 6 | Taster 1 und 2 werden auf ADC-Ports gesetzt, damit mehr GPIO freiwerden | | 7 | Analoge Erweiterungenports entfallen | Pinbelegung für V02 ^ Funktion ^ Analog / Digital ^ Anpassung ^ Launchpad | Launchpad Pin | Schaltplanlabel ^ Sonstiges, Schutzbeschaltung ^ | PWM Out Motor A \\ HB_A_Links_HS\\ HalbBrücke_A_Links_HighSide | D | Logikpegel Treiber | 1PWM_AH\\ EPWM1A | 40 | M1B1H_IN | Todzeiteinstellung für jede Halbbrücken\\ im µC ermöglichen | | PWM Out Motor A\\ HB_A_Links_LS | D | Logikpegel Treiber | 1PWM_AL\\ EPWM1B | 39 | M1B1L_IN | | | **SD A Links** | | Logikpegel Treiber | **GPIO50** | **13** | **M1B1_SD** | **Motor 1 Brücke 1 SD** | | PWM Out Motor A\\ HB_A_Rechts_HS | D | Logikpegel Treiber | 1PWM_BH\\ EPWM2A | 38 | M1B2H_IN | | | PWM Out Motor A\\ HB_A_Rechts_LS | D | Logikpegel Treiber | 1PWM_BL\\ EPWM2B | 37 | M1B2L_IN | | | **SD A Rechts** | | Logikpegel Treiber | **GPIO24** | **55** | **M1B2_SD** | **Motor 1 Brücke 2 SD** | | PWM Out Motor A*\\ HB_A*_HS | D | Logikpegel Treiber | 1PWM_CH\\ EPWM3A | 36 | M1B3H_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | PWM Out Motor A*\\ HB_A*_LS | D | Logikpegel Treiber | 1PWM_CL\\ EPWM3B | 35 | M1B3L_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | **SD A* ** | | Logikpegel Treiber | **GPIO52** | **53** | **M1B3_SD** | **Motor 1 Brücke 3 SD** | | PWM Out Motor B\\ HB_B_Links_HS | D | Logikpegel Treiber | 2PWM_AH\\ EPWM4A | 80 | M2B1H_IN | | | PWM Out Motor B\\ HB_B_Links_LS | D | Logikpegel Treiber | 2PWM_AL\\ EPWM4B | 79 | M2B1L_IN | | | **SD B Links** | D | Logikpegel Treiber | **GPIO53** | **52** | **B2B1_SD** | **Motor 2 Brücke 1 SD** | | PWM Out Motor B\\ HB_B_Rechts_HS | D | Logikpegel Treiber | 2PWM_BH\\ EPWM5A | 78 | M2B2H_IN | | | PWM Out Motor B\\ HB_B_Rechts_LS | D | Logikpegel Treiber | 2PWM_BL\\ EPWM5B | 77 | M2B2L_IN | | | **SD B Rechts** | D | Logikpegel | **GPIO12** | **5** | **M2B2_SD** | **Motor 2 Brücke 2 SD** | | PWM Out Motor B*\\ HB_B*_HS | D | Logikpegel Treiber | 2PWM_CH\\ EPWM6A | 76 | M2B3H_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | PWM Out Motor B*\\ HB_B*_LS | D | Logikpegel Treiber | 2PWM_CL\\ EPWM6B | 75 | M2B3L_IN | Vorhalt für BLDC Ansteuerung\\ Motorport A | | **SD B* ** | D | Logikpegel Treiber | **GPIO22** | **8** | **M2B3_SD** | **Motor 2 Brücke 3 SD** | | Strommessung Motorstrom A\\ Messbereich +/- 20A | A | ACS712 | ADCINA0 | 27 | Strom_M1_33 | | | **Strommessung Motor 1 \\ Brücke 1** | A | ACS712 | **ADCINA3** | **67** | **Strom_M1_B1_33** | **Phasenstrom Motor 1 B1** | | **Strommessung Motor 1\\ Brücke 2** | A | ACS712 | **ADCINB3** | **68** | **Strom_M1_B2_33** | **Phasenstrom Motor 1 B2** | | **Strommessung Motor 1\\ Brücke 3** | A | ACS712 | **ADCINA4** | **69** | **Strom_M1_B3_33** | **Phasenstrom Motor 1 B3** | | Strommessung Motorstrom B\\ Messbereich +/- 20A | A | ACS712 | ADCINB6 | 6 | Strom_M2_33 | | | Versorgungspannung +15V | A | | ADCINB2 | 26 | +15V_33 | Überwachung der Versorgungsspannung, | | Batteriespannung | A | | ADCINA2 | 25 | Vbat*_33 | | | Versorgungsspannung +3,3V | A | | ADCINB1 | 24 | +3,3V | | | Drehmomentmessung I\\ Kraftsensor 1 | A | Spannungsteiler | ADCINA6 | 2 | Moment_Pos_33 | | | Drehmomentmessung II\\ Kraftsensor 1 | A | Spannungsteiler | ADCINA7 | 23 | Moment_Neg_33 | | | Encoder Pulse\\ ECPA Modul | D Interrupt 1 | Logikpegel anpassen | GPIO19\\ ECAP1 | 19 | Encoder-HallA_Interrupt_33 | Jumper BLDC A Hall-Sensor oder ECAP1 Modul | | Encoder Drehrichtung Rechts | D | Logikpegel anpassen | GPIO44 | 18 | Rechts_33 | | | Encoder Drehrichtung Links | D | Logikpegel anpassen | GPIO14 | 47 | Links_33 | | | Encoder Index | D Interrupt 2 | Logikpegel anpassen | GPIO25\\ ECAP2 | 54 | Index_HallB_Interrupt_33 | Jumper BLDC B Hall-Sensor oder Encoder Index | | **Vorhalt Hallsensor BLDC** | D Interrupt 3 | Logikpegel anpassen | GPIO26\\ ECAP3 | 58 | HallC_33\\ **Encoder-HallC_Interrupt_33** | **Jumper** BLDC Hall-Sensoren oder\\ **Encodersignal zur Positionsbestimmung** | | Bafang Speed-Signal | D | Logikpegel anpassen | GPIO16 | 15 | Speed_33 | | | **Taster 1\\ für manuelle Ansteuerung** | D | Pull-Up | GPIO12\\ **ADCINB0** | 5\\ **28** | T1 | **Keine GPIO mehr übrig. Lösung über ADC Ports** | | **Taster 2\\ für manuelle Ansteuerung** | D | Pull-Up | GPIO22\\ **ADCINA1** | 8\\ **29** | T2 | **Keine GPIO mehr übrig. Lösung über ADC Ports** | | Taster 3\\ für manuelle Ansteuerung | D | Pull-Up | GPIO13 | 34 | T3 | | | Potentiometer A | A | | ADCINB7 | 63 | Poti 1 | Manuelle Drehzahlstellung Motor A\\ (frei Programmierbar in Simulink) | | Potentiometer B | A | | ADCINB4 | 64 | Poti 2 | | | Temperatur Motor A | A | LM355 mit Impedanzwandler | ADCINA5 | 65 | Temperatur1_33 | | | Temperatur Motor B | A | LM355 mit Impedanzwandler | ADCINB5 | 66 | Temperatur2_33 | | | LED-Anzeige | D | | GPIO51 | 12 | LED_Rot | | | LED-Anzeige | D | | GPIO27 | 59 | LED_Grün | | | Display i2C, SCL | D | | SCL\\ GPIO 33 | 9 | SCL | | | Display i2C, SDA | D | | SDA\\ GPIO 32 | 10 | SDA | | | Analoge Erweiterung 1 | A | | ADCINB0 | 28 | | | | Analoge Erweiterung 2 | A | | ADCINA1 | 29 | | | Hardware Version DCDC_V02 zum Download: {{ :professoren_webseiten:rebholz:dcdc_v02.zip |}} Leider habe ich es in KiCad nicht geschafft alle Projektdateien umzubenennen da ansonsten ständig die Footprints verlorengehen. \\ Daher bleibt die Bezeichnung der Schaltpläne auf V01. KiCad ist hier leider nicht sehr benutzerfreundlich ..... (oder ich kenne mich zu wenig aus) \\ Schaltplan als pdf: {{ :professoren_webseiten:rebholz:dcdc_v02.pdf |}} Software zur Inbetriebnahme der DCDC_V02 Hardware: {{ :professoren_webseiten:rebholz:inbetriebnahme_v07_4_dcdc02.zip |}} ==== Pinbelegung Launchpad Hardware V03 ==== Aktualisiert: 15.04.2021\\ Die Pinbelegung zu V02 hat sich nicht geändert. Allerdings wurden einige Fehler behoben und die Schaltung optimiert: ^ Nr. ^ Änderungen zu V02 ^ | 1 | 3,3V für Stand-Alone Betrieb wird über einen LM2574 generiert (alt Spannungsregler) | | 2 | Kraftsensoren werden über 3,3V angesteuert (Entfall Spannungsteiler) | | 3 | Temperatursensoren werden mit 3,3V versorgt (Entfall Spannungsteiler) | | 4 | Wechsel der Stromsensoren auf ACS725 (Entfall Spannungsteiler) | | 5 | Impedanzwandler werden mit 3,3V versorgt (Entfall Spannungsteiler) | Hardware V02 war noch stark geprägt von der 5V Welt. Unnötigerweise mussten alle Signale zum µC dadurch über Spannungsteiler reduziert werden wodurch zusätzliche Bauteile und Messfehler entstehen. \\ V03 versucht daher möglichst viele Signale und Peripherie auf der 3,3V Ebene anzusteuern. Schaltplan: {{ :professoren_webseiten:rebholz:schaltplan_dcdc_v03.pdf |}} \\ KiCAD-Projekt mit Bestellliste: {{ :professoren_webseiten:rebholz:dcdc_v03_kicad.zip |}} Bekannte Fehler in V03: * Fehler in der Temperaturmessung, muss überarbeitet werden ==== Pinbelegung Launchpad Hardware V04 ==== Aktualisiert: 15.01.2023\\ Die Hardware V04 beinhaltet eine Reihe an Änderungen welche die Schaltung deutlich robuster machen soll gegenüber ungewolltes Verpolen der Eingangsspannung sowie eventuell auftretenden Überspannungen. Die Spannungsversorgung wurde optimiert und eine visuelle Anzeige der Gate-Signale mit eingefügt. {{ :professoren_webseiten:rebholz:mp_v04_q4_2021.jpg?600 |}} Schaltplan: {{ :professoren_webseiten:rebholz:schaltplan_dcdc_v04.pdf |}} KiCAD Projekt: {{ :professoren_webseiten:rebholz:dcdc_v04_kicad.zip |}} {{ :professoren_webseiten:rebholz:2022_01_18_bestelllistev04.xlsx |}} ^ Nr. ^ Änderungen zu V03 ^ | 1 | Neue Bauteilbezeichnung | | 2 | Separate Spannungsversorgung der Treiber möglich über VBat. Dadurch auch ZK-Spannungan an UBat < 15V möglich.\\ Falls die ZK-Spannung (UBat) unter VBat sinkt wird automatisch auf VBat gewechselt | | 3 | Batteriespannung auf Pin 28, vormals auf Pin 25 | | 4 | | | 5 | | ^ Nr. ^ Fehler in V04 ^ | 1 | Jumperbezeichnungen der Spannungsversorgung im Schaltplan falsch | | 2 | | | 3 | | | 4 | | | 5 | | Pinbelegung für V04 ^ Funktion ^ Analog / Digital ^ Anpassung ^ Launchpad | Launchpad Pin | Schaltplanlabel ^ Sonstiges, Schutzbeschaltung ^ | Motor 1 | | | | | | | | Motor 1, Halbbrücke U, \\ Highside | D | Logikpegel Treiber | 1PWM_AH\\ EPWM1A | 40 | PWM_U_HIGH_BRIDGE1 | Todzeiteinstellung für jede Halbbrücken\\ im µC ermöglichen | | Motor 1, Halbbrücke U, \\ Lowside | D | Logikpegel Treiber | 1PWM_AL\\ EPWM1B | 39 | PWM_U_LOW_BRIDGE1 | | | SD Halbbrücke U, Motor 1 | | Logikpegel Treiber | GPIO50 | 13 | U_SD_BRIDGE1 | Motor 1 Brücke 1 SD | | | | | | | | | | Motor 1, Halbbrücke V, \\ Highside | D | Logikpegel Treiber | 1PWM_BH\\ EPWM2A | 38 | PWM_V_HIGH_BRIDGE1 | | | Motor 1, Halbbrücke V, \\ Lowside | D | Logikpegel Treiber | 1PWM_BL\\ EPWM2B | 37 | PWM_V_LOW_BRIDGE1 | | | SD Halbbrücke V, Motor 1 | | Logikpegel Treiber | GPIO24 | 55 | V_SD_BRIDGE1 | Motor 1 Brücke 2 SD | | | | | | | | | | Motor 1, Halbbrücke W, \\ Highside | D | Logikpegel Treiber | 1PWM_CH\\ EPWM3A | 36 | PWM_W_HIGH_BRIDGE1 | | | Motor 1, Halbbrücke W, \\ Lowside | D | Logikpegel Treiber | 1PWM_CL\\ EPWM3B | 35 | PWM_W_LOW_BRIDGE1 | | | SD Halbbrücke W, Motor 1 | | Logikpegel Treiber | GPIO52 | 53 | W_SD_BRIDGE1 | Motor 1 Brücke 3 SD | | Motor 2 | | | | | | | | Motor 2, Halbbrücke U, \\ Highside | D | Logikpegel Treiber | 2PWM_AH\\ EPWM4A | 80 | PWM_U_HIGH_BRIDGE2 | | | Motor 2, Halbbrücke U, \\ Lowside | D | Logikpegel Treiber | 2PWM_AL\\ EPWM4B | 79 | PWM_U_LOW_BRIDGE2 | | | SD Halbbrücke U, Motor 2 | D | Logikpegel Treiber | GPIO53 | 52 | U_SD_BRIDGE2 | Motor 2 Brücke 1 SD | | | | | | | | | | Motor 2, Halbbrücke V, \\ Highside | D | Logikpegel Treiber | 2PWM_BH\\ EPWM5A | 78 | PWM_V_HIGH_BRIDGE2 | | | Motor 2, Halbbrücke V, \\ Lowside | D | Logikpegel Treiber | 2PWM_BL\\ EPWM5B | 77 | PWM_V_LOW_BRIDGE2 | | | SD Halbbrücke V, Motor 2 | D | Logikpegel | GPIO12 | 5 | V_SD_BRIDGE2 | Motor 2 Brücke 2 SD | | | | | | | | | | Motor 2, Halbbrücke W, \\ Highside | D | Logikpegel Treiber | 2PWM_CH\\ EPWM6A | 76 | PWM_W_HIGH_BRIDGE2 | | | Motor 2, Halbbrücke W, \\ Lowside | D | Logikpegel Treiber | 2PWM_CL\\ EPWM6B | 75 | PWM_W_LOW_BRIDGE2 | | | SD Halbbrücke W, Motor 2 | D | Logikpegel Treiber | GPIO22 | 8 | W_SD_BRIDGE2 | Motor 2 Brücke 3 SD | | | | | | | | | | ZK_Stromaufnahme Motor 1\\ Messbereich +/- 20A | A | ACS712 | ADCINA0 | 27 | Strom_M1 | Brückeneingangsstrom Motor 1 | | Strommessung Motor 1 \\ Brücke 1 | A | ACS712 | ADCINA3 | 67 | Strom_U_M1 | Phasenstrom Motor 1 B1 | | Strommessung Motor 1\\ Brücke 2 | A | ACS712 | ADCINB3 | 68 | Strom_V_M1 | Phasenstrom Motor 1 B2 | | Strommessung Motor 1\\ Brücke 3 | A | ACS712 | ADCINA4 | 69 | Strom_W_M1 | Phasenstrom Motor 1 B3 | | ZK_Stromaufnahme Motor 1\\ Messbereich +/- 20A | A | ACS712 | ADCINB6 | 6 | Strom_M2_33 | Brückeneingangsstrom Motor 1 | | | | | | | | | | Versorgungspannung +15V | A | | ADCINB2 | 26 | +15V_33 | | | Batteriespannung | A | Spannungsteiler 0,06383 | ADCINB0 | **28** | VCC_Motor_U_Sense | | | **Versorgung Digitalteil (Redundant)** | A | Spannungsteiler 0,06383 | ADCINA2 | **25** | VCC_Digital_U_Sense | | | Versorgungsspannung +3,3V | A | | ADCINB1 | 24 | +3,3V | | | | | | | | | | | Drehmomentmessung I\\ Kraftsensor 1 | A | | ADCINA6 | 2 | Moment_Pos_33 | | | Drehmomentmessung II\\ Kraftsensor 2 | A | | ADCINA7 | 23 | Moment_Neg_33 | | | | | | | | | | | Encoder Pulse\\ ECPA Modul | D Interrupt 1 | Logikpegel anpassen | GPIO19\\ ECAP1 | 19 | Encoder-HallA_Interrupt_33 | Jumper BLDC A Hall-Sensor oder ECAP1 Modul | | Encoder Drehrichtung Rechts | D | Logikpegel anpassen | GPIO44 | 18 | Rechts_33 | | | Encoder Drehrichtung Links | D | Logikpegel anpassen | GPIO14 | 47 | Links_33 | | | Encoder Index | D Interrupt 2 | Logikpegel anpassen | GPIO25\\ ECAP2 | 54 | Index_HallB_Interrupt_33 | Jumper BLDC B Hall-Sensor oder Encoder Index | | Vorhalt Hallsensor BLDC | D Interrupt 3 | Logikpegel anpassen | GPIO26\\ ECAP3 | 58 | Encoder-HallC_Interrupt_33 | Jumper BLDC Hall-Sensoren oder\\ Encodersignal zur Positionsbestimmung | | Bafang Speed-Signal | D | Logikpegel anpassen | GPIO16 | 15 | Speed_33 | | | Vorhalt Potis / Taster | | | | | | | | **Taster 1\\ für manuelle Ansteuerung** | D | Pull-Up | **GPIO 21** | **48** | T1 | | | **Taster 2\\ für manuelle Ansteuerung** | D | Pull-Up | **GPIO 23** | **49** | T2 | | | Taster 3\\ für manuelle Ansteuerung | D | Pull-Up | GPIO13 | 34 | T3 | | | Potentiometer A | A | | ADCINB7 | 63 | Poti 1 | Manuelle Drehzahlstellung Motor A\\ (frei Programmierbar in Simulink) | | Potentiometer B | A | | ADCINB4 | 64 | Poti 2 | | | Temperatursensoren | | | | | | | | Temperatur Motor A | A | LM355 mit Impedanzwandler | ADCINA5 | 65 | Temperatur1_33 | | | Temperatur Motor B | A | LM355 mit Impedanzwandler | ADCINB5 | 66 | Temperatur2_33 | | | Anzeigen | | | | | | | | LED-Anzeige | D | | GPIO51 | 12 | LED_Rot | | | LED-Anzeige | D | | GPIO27 | 59 | LED_Grün | | | Display i2C, SCL | D | | SCL\\ GPIO 33 | 9 | SCL | | | Display i2C, SDA | D | | SDA\\ GPIO 32 | 10 | SDA | | | | | | | | | | | | | | | | | |