PEE51_SPC_documents/markdown/projectdocument.md
2025-10-20 20:24:02 +02:00

23 KiB

sub_title toc lof tags auther
Superlight Personal Carrier true true
kladjes
elektro
elektro/hr
elektro/hr/pee51
name email name_short
Finley van Reenen 0964590@hr.nl e.l.f. van Reenen
name email name_short
Chris Tan 0992143@hr.nl c. Tan
name email name_short
Tijn Snijders 1001829@hr.nl t. Snijders
name email name_short
Max Kappert 1030682@hr.nl m. Kappert
name email name_short
Thomas Braam 0989527@hr.nl t. Braam

*[PvE]: Plan van Aanpak *[MS Exel]: Microsoft Exel *[SPC]: Superlight Personal Carier *[VCU]: Vehicle Control Unit

Superlight Personal Carier (SPC)

Inleiding

Dit SPC-project is een samenwerking tussen de opleidingen Automotive en Elektrotechniek. Het doel van het project is om een lichtgewicht, zelf stabiliserend eenpersoonsvoertuig te ontwikkelen dat als een testplatform kan dienen. Door het voertuig lichter te maken in gewicht zorgt dit voor een kleinere milieuvriendelijke manier van persoonlijk transport te maken dan een 'gewone' auto.

Dit project bouwt voort op eerdere inspanningen en richt zich op het verder verfijnen en implementeren van cruciale systemen zoals de aandrijving, het stuurmechanisme en de Digital Twin-technologie.

Het SPC-project is een innovatief en interdisciplinair initiatief waarin studenten van de opleidingen Automotive en Electrotechniek samenwerken. Dit project bouwt voort op eerdere inspanningen en richt zich op het verder verfijnen en implementeren van cruciale systemen zoals de aandrijving, het stuurmechanisme en de Digital Twin-technologie.

Documentatie

In dit project is de documentatie gedaan in Markdown, dit is een tekstindeling voor het schrijven van gestructureerde documenten. Het voordeel hiervan is dat de opmaak meer consistent is en er van Git gebruikt gemaakt kan worden om bewerkingen bij te houden. Dit maakt het voor de elektrotechnici eenvoudiger om alle informatie overzichtelijk te beheren.

Om ook aan de eisen van de autotechnici te voldoen, die in Microsoft Word en Excel moeten werken, zijn de gezamenlijke documenten hierin gemaakt.

Voor een effectieve samenwerking is er gebruikgemaakt van HedgeDoc (op live.kladjes.nl). Dit is een open-source Markdown editor. Op deze manier konden alle projectleden tegelijkertijd werken in hetzelfde document. Vanuit HedgeDoc wordt de documentatie gesynchroniseerd naar een Git repository om de bewerkingen bij te houden.

Om de Markdown om te zetten naar PDF wordt Pandoc en TexLive gebruikt. Pandoc converteert de inhoud naar Latex. Deze output wordt vervolgens met TexLive geconverteerd naar een PDF. Om dit proces te versimpelen is GNU Make gebruikt. Hiermee is het proces geautomatiseerd en toegankelijker gemaakt voor alle gebruikers.

Door wat extra moeite en tijd te besteden aan het begin van het project aan deze opzet, werd het tijdens het project gemakkelijker en eenvoudiger om de informatie vanuit verschillende kennisgebieden samen te brengen. Daarnaast zorgde het er ook voor dat het document gemakkelijk als geheel in zowel opmaak als inhoud opgeleverd kon worden.

Documentindeling

Het document is geschreven met het primaire doel dat de volgende projectgroep de genomen stappen begrijpt en hier zelfstandig op verder kan bouwen.

Zometeen start het document met de analyse, waarin aan de hand van de eisen is geanalyseerd wat er nodig is voor het project. Na de analyse zijn de benodigde onderdelen en de bijbehorende eisen beschreven onder het kopje architectuur. Er wordt per unit verdiepender ingegaan op wat er nodig is. Vervolgens wordt er kort een update gegeven over het projectverloop. We sluiten af met een conclusie en adviezen.

Veel gebruikte data en plannen zijn in de bijlage geplaatst, zodat het document overzichtelijk blijft. Er wordt in het document verwezen naar de relevante bijlagen.

Naar de gebruikte theorie voor het project is gerefereerd volgens de IEEE-standaard.

Analyse

De opdrachtgever voor dit project is Niels Groningen. Zijn opdracht is om een testplatform te ontwerpen. De grootste uitdaging van dit testplatform is dat het nog niet bekend is wat er precies getest gaat worden. Het is hierdoor lastig om harde eisen te stellen. Het moet dus mogelijk zijn om verschillende soorten testen te doen.

In overleg met de opdrachtgever zijn de verwachtingen vastgelegd. Deze zijn binnen de projectgroep omgezet in meetbare en haalbare eisen. Hieruit is een Plan van Eisen (PvE) samengesteld.

Dit plan is opgezet via de MoSCoW-methode. Dit is een projectmanagements- en prioriteringsstrategie om eisen en taken te classificeren. Met deze methode worden de eisen onderverdeeld in prioriteiten. Eisen waar zeker aan voldoen moet worden om het project te laten slagen (MH), eisen die zeer gewenst zijn (SH), eisen die extra toegevoegd kunnen worden (CH) en eisen die (op het moment) niet verstandig zijn om aandacht aan te besteden (WH). In de bijlage is de [PvE] te vinden. Hieronder een verklaring van de genomen beslissingen.

Er is voor beide opleidingen een PvE gevormd met dezelfde inhoud, maar een andere opstelling. Het was lastig om deze op dezelfde manier op te bouwen, want voor beide opleidingen was er andere inhoud nodig om de resultaten te presenteren.

Actieradius

De opdrachtgever gaf aan dat het voertuig een redelijke actieradius moet hebben. Volgens hem was dit bijvoorbeeld dat het voertuig comfortabel vanaf Amsterdam naar Rotterdam kan rijden. In overleg met de opdrachtgever is deze eis zeer gewenst (SH), maar geen eis (MH).

Hiervoor zijn de eisen REQ-A-6[SH] en REQ-A-7[CH] toegevoegd. Er is om aan de wensne te voldoen onderzocht wat de afstand tussen Rotterdam en Amsterdam via de weg is. Deze bedraagt ongeveer 75 kilometer ^[https://www.google.com/maps/dir/Amsterdam/Rotterdam/data=!4m10!4m9!1m2!1m1!1s0x47c63fb5949a7755:0x6600fd4cb7c0af8d!1m2!1m1!1s0x47c5b7605f54c47d:0x5229bbac955e4b85!2m1!1b1!3e0?sa=X&ved=1t:3747&ictx=111]. Voor de ondergrens (SH) is er met deze informatie gekozen voor een actieradius van minimaal 100 kilometer in ideale omstandigheden. Als extra doel (CH) is er een eis toegevoegd voor een actieradius van 250 kilometer in ideale omstandigheden.

Snelweg

Volgens de opdrachtgever moet het voertuig in theorie over de snelweg kunnen, maar hoeft niet aan alle regelgevingen te voldoen.

Hiervoor is de eis REQ-A-4[MH] opgesteld. 60 km/h is de minimale snelheid voor op de snelweg^[https://www.rijksoverheid.nl/onderwerpen/wegen/vraag-en-antwoord/wat-is-de-minimumsnelheid-voor-het-wegverkeer].

Stabilisatie

Er moet actieve stabilisatie op komen.

Wielen

Beide wielen moeten gestuurd en aangedreven worden.

Gewicht voertuig

Het voertuig moet zo licht mogelijk zijn, zonder te veel weg te nemen van gebruiksvriendelijkheid voor de bestuurder.

Semiautomatisch

Het voertuig moet uiteindelijk semiautomatisch kunnen rijden.

Architectuur

Het diagram in figuur \ref{doc_units} is een overzicht van de units van dit project.

Units\label{doc_units}

unit: Vehicle Control Unit (VCU)

De VCU heeft alle ingangen voor de bestuurder voor het sturen, gas geven en remmen.

Voor deze unit gelden de volgende eisen van het PvA:

REQ-C-1[MH]: het voertuig wordt bestuurd doormiddel van een elektronisch input, zoals een joystick, die bedienbaar is door de bestuurder.
REQ-C-2[MH]: er is een noodstop aanwezig.

unit: Stuur systeem

Zodat het voertuig niet alleen rechtuit kan rijden. Er is een nouwe samenwerking geweest tussen cd VCU en het stuursysteem, omdat de zelfde hoofd persoon de elektronica voor bijde units is.

Voor deze unit gelden de volgende eisen van het PvA:

REQ-W-3[SH]: het voertuig stuurt met beide wielen.
REQ-W-8[MH]: het voertuig heeft een draaicirkel van 6 meter in diameter of minder.

unit: Stabilisatie

De stabilisatie is om het voertuig rechtop te houden bij bijvoorbeeld het wachten bij een kruispunt of een stoplicht.

Voor deze unit gelden de volgende eisen van het PvA:

REQ-S-1[MH]: Het voertuig wordt actief gestabaliseerd
REQ-S-2[SH]: Het voertuig kan uit zichzelf weer recht komen te zitten vanaf een roll hoek van 5 graden

unit: Aandrijving

De aandrijving zorgt ervoor dat het voertuig zichzelf kan voortbewegen op genoeg snelheid zodat er veilig op de weg gereden kan worden. de VCU stuurt een signaal voor accelereren of remmen.

Voor deze unit gelden de volgende eisen van het PvA:

REQ-A-4[MH]: Het voertuig is ontworpen zodat de maximale snelheid 60 kilometer per uur of sneller is.
REQ-A-5[SH]: Het voertuig is ontworpen zodat die 150 kilometer per uur of sneller kan rijden in ideale omstandigheden.
REQ-A-6[SH]: Het voertuig is ontworpen zodat die 100 kilometer actieradius of meer kan bereiken in ideale omstandigheden.
REQ-A-7[CH]: Het voertuig is ontworpen zodat die 250 kilometer actieradius of meer kan bereiken in ideale omstandigheden.

Vehicle Control Unit (VCU) / Stuursysteem

De VCU is een belangrijk onderdeel van het systeem, hiermee kunnen we het voertuig in een richting sturen en vooruit bewegen. De belangrijkste keuzes hierin zijn in welke taal we willen gaan programmeren en wat voor soort microcontroller we willen. De reden hiervoor is zodat de volgende team makkelijker kan omgaan met de code en het systeem makkelijker kunnen uitbreiden. Het makkelijkst is dan om met de Arduino IDE en framework verder te gaan, omdat het een bekent en veel gedocumenteerd systeem is waar je veel over kan vinden op internet tegenover veel andere IDE's, programmeertalen en microcontrollers. Verder moet het ook draadloos verbinding kunnen maken met een console controller zodat de volgende teams eventueel een andere keuze kunnen maken hoe ze willen sturen. Daarom hebben we voor de ESP32 gekozen omdat het alles aantikt met een gezond aantal GPIO pinnen.

Actuator

De actuator hebben we nodig om de wielen in een richting te kunnen sturen. Volgens Max Kappert(student automotive engineer) hebben we de volgende parameters gekregen die we nodig hebben om het voertuig te kunnen sturen.

Parameter Waarde Eenheid Opmerking
Voertuig-spanning 12 - 14 V_{DC} typisch voor auto-VCU's
Stuurspanning-demperkle 0 - 5 V_{DC} naloge regeling
PWM-signaal frequentie 25000 - 30000 Hz Typische range voor aansturing
PWM duty cycle 10 - 90 \% 10\%: minimale demping, 90\%: maximale demping^[demping voor de ophanging via de interne actuator demper]
Stroomverbruik klep 0.5 - 2 A Afhankelijk van de interne weerstand
Wielsnelheid 0 - 250 km/h Meet snelheid per wiel
Karrosserie-versnelling -3 tot +3 g Laterale en verticale versnellingen
Axiale potentiometer (veerweg) 0 - 50 mm Meet veeruitslag
Temperatuur werkbereik -40 tot +85 ^\circ C Automobielstandaard

Voor de Actuator is er een keuze gemaakt voor CDC (Continuous Damping Control) demper van SACHS, Maar vanwege de besteltijden van dit soort componenten kunnen we dit niet gebruiken. Daarom gebruiken we een actuator die er al staat, de A0-01/M van S-LINE. om de actuator te besturen gebruiken we een motordriver, de MDD20A. Dit is omdat we het al hebben en werkt met de huidige actuatoren en voldoende de parameters van de actuatoren behaald, daarom hebben we besloten om niet een nieuwe te kopen of te ontwerpen. Om ervoor te zorgen dat de actuatoren niet te ver gaan gebruiken we de AS5600 magnetic encoder. Dit is omdat de encoder een absoluut positie meegeeft en daarom voor minder problemen zorgt als het voertuig opnieuw opstart.

Stabilisatie

De groepen voor ons hebben al een klein schaal model voor een reactiewiel gemaakt en een vliegwiel opstelling, wat volledige schaal lijkt te zijn, gemaakt.

Documentatie over de vliegwiel opstelling hebben wij niet terug gevonden. Maar wel van het kleine schaal model, de reactiewiel opstelling is pas aan het einde van het project gevonden - Voor onze opvolgers, in het Proto Lab tussen de planten en de 3D printers is de linker kast - De reactiewiel opstelling is later gemaakt dan de vliegwiel opstelling, er was dus blijkbaar een reden geweest dat de vliegwiel opstelling niet geschikt was. De automotive engineers onder ons hebben berekent wat de beste keuze is.

Dit heeft even geduurd, ondertussen zijn de elektronische engineers onderzoek gedaan naar wat voor soort motor drivers er zijn.

Uiteindelijk kwamen de automotive engineers uit op een vliegwiel van 10kg met een kracht van 45Nm en een maximale snelheid van 1000rpm.

De Motor

Het is er een die gevonden is op Aliexpress, niet een heel erg betrouwbare verkoper, maar we kunnen geen andere geschikte vinden voor een redelijke prijs. Er is wel test data beschikbaar waar een rekenmodel mee gemaakt kan worden. Deze motor kan de kracht net niet continu aan, maar wel voor korte duur. De snelheid is wel iets ingeperkt ten opzichte van de berekende 1000 rpm dat nodig is, deze kan maar tot 875 rpm. Dit is de reden geweest dat we geen motor gaan inkopen, maar een testen met een motor uit de voorraad. Deze zal waarschijnlijk niet voldoende vermogen kunnen halen, maar we kunnen wel testen of het concept werkt voordat er grote bedragen uitgegeven gaan worden aan een geschikte motor.

De specificaties van de motor:

  • K_T = 0.15 Nm/A - motor koppel constante
  • I_{noload} = 3.52 A - Stroom verbruik bij geen koppel
  • K_v = 69 rpm/V - motor snelheidsconstante
  • V_{th} = 598 mV - threshold voltage
  • I_{max} = 78.5 A - maximaal stroom verbruik voor onze applicatie (11.2Nm met 1:4 gearbox)
  • U_{max} = 72 V - maximaal spanning benodigd voor onze applicatie

berekeningen voor deze waardes staan in het Detailontwerp Stabilisatie in hoofdstuk Motor Keuze (zie bijlagen)

Er is helaas iets fout gegaan bij de berekeningen die eerder gedaan hebben om de specificaties vast te stellen. Er is per ongeluk met 25 Nm gerekend i.p.v. 45 Nm. Dit betekent dat de motor driver is ontworpen voor 50 A i.p.v. 80A. Dit kan opgelost worden door een motor gearbox combinatie die te vinden is met 50A maar met een hogere spanning het vermogen haalt. Er is veel ruimte aan spanning, dus dit zal oplosbaar moeten zijn.

Motor Driver

specificaties

  • De drijver moet minimaal 72 V aan kunnen, met voorkeur van meer dan 120 V 1

De 120V komt van de vorige groep die aan dit project hebben gewerkt. Dit is de spanning van de accu die zij hadden gebruikt om dingen mee te berekenen. Er is nog geen besluit wat deze spanning werkelijk gaat worden.

  • De drijver moet minimaal 50 A continu kunnen leveren (wat eigenlijk 80 A had moeten zijn) 1
  • Maakt gebruik van Field Oriented Control, om het volledige vermogen te kunnen halen vanaf stilstand.
  • De hoek van het voertuig moet gemeten worden.
  • Er is een regel loop tussen de hoek sensor en de kracht van de motor.
  • Er is een SPI-client connector waarmee verschillende instellingen ingesteld mee kan worden, waaronder het maximaal vermogen.

Met deze specificaties is het erg lastig om een motor driver voor te vinden. Zo lastig dat - zonder een bedrijf één te laten ontwerpen - we er geen gevonden hebben. Hierom is gekozen om zelf een motor driver te ontwerpen.

De SPI-client is afgesproken met de andere elektrotechnische ingenieurs als algemeen communicatie protocol nadat was besloten om een eigen motor driver te ontwerpen.

Ontwerp

Het ontwerp is gemaakt door Finley, zij heeft op haar stage al een motor driver ontworpen. Hier heeft ze heel veel geleerd over het ontwerpen van een motor driver. Hier komt ook veel van de kennis vandaan. Deze motordriver is niet gebaseerd op die motor driver, deze kan maar 3A aan, dus compleet opnieuw beginnen is makkelijker.

Half-bridges

De motor is een BLDC motor de volledige naam is een permanent magneet borstelloze 3 fase synchrone motor. Dit betekent dat er permanente magneten in zitten, geen borstels, aangestuurd met 3 fase en synchrone draait met deze 3 fases.

De motor driver wordt gevoed van een accu, dus DC. Om deze synchrone 3 fases te genereren zijn drie half-brdiges nodig. Een voor elke fase.

Voor de FET's voor deze Half-bridges is gekozen voor de EPC2307, Dit zijn GaNFET's in tegenstelling to de vaker gebruikte MOSFET's. MOSFET fabrikanten hebben een gewoonte om de maximale stroom te berekenen met perfecte koeling. Dit is dus niet realistisch haalbaar. Om achter te komen wat wel haalbaar is is een thermal analyses nodig, dit is grof weg gedaan voor een redelijk wat MOSFET's, maar geen enkel was geschik om de 50A te schakelen. EPC (Efiction Power Converter; de fabrikant van de EPC2307) is een van de weinige fabrikanten wel een realistisch beeld van de maximale stroom.

Om te bevestigen is een berekening vermaakt hoeveel de FET's aan vermogen verliezen in deze applicatie. Dit is gedaan met de volgende formule.


P_{loss} = I^2R_{DS(on)} + \frac{UIt}{2} \cdot 2f_s

I: stroom
U: voedingsspanning
t: schakeltijd
f_s: de schakel frequentie

U = 120V, I = 50A (uit specificaties motor driver)
t = 4 ns (berekent in simulatie)
f_s = 50 kHz (frequentie is gekozen omdat die buiten menselijk gehoor licht)

P_{loss} = 26.2 W.

Deze formule is erg pessimistisch, deze gaat uit van 100\% PWM terwel de uitgang een sinus is dus gemiddeld is het altijd 50\% en de schakelverliezen worden ook overschat. Voor meer informatie over deze berekening zie bijlagen Detailontwerp Stabilisatie hoofdstuk Verliezen in de FET

Voor meer informatie over hoe de vermogens filtering is gedaan zie bijlagen Detailontwerp Stabilisatie hoofdstuk Power Filtering

Sensoren

Er zijn drie sensoren nodig, stroom meting, positie van de motor en de hoek van het voertuig.

stroom meting

De stroom meting wordt gedaan met de ACS724xLCTR-50AB. Dit is een stroom meting IC die van -50A tot +50A kan meten. Deze komt tussen de motor en de uitgang van de half-bridges. Het is ook mogelijk om aan de lage FET in de half-bridge te meten met een shunt, maar omdat het nog niet heel duidelijk is hoe het FOC algoritme werkt, lijkt dit een makkelijkere manier om het algoritme te implementeren.

Er is niet gekozen voor een shunt met een versterker, omdat er 200V op deze uitgang komt te staan. De versterkers die dit aankunnen zijn erg duur en de ACS724xLCTR-50AB wordt dan een goedkopere optie.

Hoek van de motor

de motor hoek is nodig voor FOC. Hoe nauwkeuriger deze sensor is hoe efficiënter FOC wordt. De AS5600 is zowel makkelijk te monteren als nauwkeurig zonder dat die elke keer bij het opstarten hoeft gekalibreerd hoeft te worden.

Meer informatie waarom deze keuze is gemaakt, zie de bijlagen Detailontwerp Stabilisatie hoofdstuk Encoder

Hoek van het voertuig

Een MEMS Gyroscoop kan verandering in de hoek meten, deze is erg snel hierin maar bij afwijking verliest die de nul positie. Hiervoor is een combinatie gekozen met een MEMS-acceleratiemeter. Deze kan met de zwaartekracht meten zolang het voertuig niet te veel beweerd.

Om het makkelijk te maken is er gekozen voor de M5Stack IMU Pro Mini. Deze is makkelijk te monteren, omdat die al in een behuizing zit met montage gaten. Deze sensor komt met de BMI270 van Bosch die zowel een MEMS-acceleratiemeter als gyroscoop heeft.

Meer informatie warom deze keuze is gemaakt, zie bijlagen Detailontwerp Stabilisatie hoofdstuk Hoek Sensor

Productie en Testen Hardware

De PCB en stencil zijn geproduceerd door JLCPCB en de componenten zijn geplaatst en in de reflow oven gegaan in het SMD-lab op Accademiplein.

Na dat die uit de over kwam zijn er een aantal soleer balletjes weggehaald, twee soldeer bruggen weg gehaald bij een van de gate driver IC's en de microcontroller opnieuw met de hand erop geplast. De microcontroller had te veel tin op de grondpad aan de onderkant, waardoor deze omhoog kwam en de pinnen aan de zijkant boven de PCB zweefde onder contact.

Tot hoever er getest is werkt alles, de FET's schakelen en de PWM wordt correct gegenereerd. Helaas heb ik geen foto's van de scope kunnen maken, ik had beide handen vol met de probes en het lukte me niet om met mijn neus de scope te triggeren. Ik ga maandag 23 juni iemand om hulp vragen terwijl ik verder ga testen.

[!todo] latere testen toevoegen.

Software

De Software is geschreven in Rust, deze keuze is gemaakt door de beschikbaarheid an FOC library's.

Er is meer te vinden over de software inclusie onderbouwing waarom keuzes zijn gemaakt in bijlagen ...

[!todo] software in rust, git, software documentatie?

Advies

[!todo] upgrade to RP2350, RTIC (wegens I2C salve support), mcu aan de andere kant van de morot conn

Project Verloop

Aan het begin was het vooral lastig om duidelijk te maken wat de vereisten van beide opleidingen en tot een format te komen van het Plan van Aanpak en Pakket van eisen die voor beide opleidingen voldoet. Het is ons niet gelukt om tot een enkel Pakket van Eisen te komen, bij Automotive moet het in een Exel bestand. Dit is alleen lastig om te exporteren naar bestand dat geschikt is om te kunnen ondertekenen. Daarbij is het ook lastig om er onderbouwing van de eisen bij te zetten, dit is niet nodig voor Automotive.

We hebben uiteindelijk ons eigen Pakket van Eisen gemaakt op onze manier en deze vertaalt naar een Exel bestand voor Automotive.

Na deze twee documenten zijn er geen conflicten geweest tussen de eisen van Elektrotechniek en Automotive.

Een van de projectleden, Mohamed, is erg weinig komen opdagen. En heeft de drie waarschuwingen gekregen dat volgens de samenwerkingsovereenkomst dat wij hebben opgesteld en getekend (inc. Mohamed), waar na die uit de groep gezet kan worden. i.p.v. dit direct te doen hebben wij als groep samen met Joris Straver een gesprek gehad, wat er toe heeft geleden dat die de groep heeft verlaten. Rond deze tijd had Gryvon ook aangegeven dat die de groep verliet wegen te veel stress met andere vakken.

Vanaf school week 4.1 waren we totaal nog maar met 5 personen i.p.v. 7. Dit heeft er tot geleid dat de aandrijving van de wielen hebben laten vallen en de motor driver voor de stabilisatie wat is uitgelopen.

bijlagen

Plan van Aanpak

Pakket van Eisen

Detailonwerp Stabilisatie

Softwareontwerp Stabilisatie

Unit Testen Stabilisatie


  1. Er wordt tot 50 V getest, voor deze waardes wordt het ontworpen, maar niet tot het limiet getest. ↩︎