All checks were successful
generate pdf files / build (push) Successful in 2m34s
2784 lines
94 KiB
Plaintext
2784 lines
94 KiB
Plaintext
\documentclass[11pt]{article}
|
|
\usepackage[a4paper, portrait, includehead, includefoot, margin=1.5cm]{geometry}
|
|
|
|
\usepackage[dutch]{babel}
|
|
|
|
\usepackage{pdfpages}
|
|
|
|
\usepackage{xcolor}
|
|
\usepackage{makecell}
|
|
\usepackage{tabularx}
|
|
\usepackage{adjustbox}
|
|
|
|
\usepackage{framed}
|
|
|
|
\usepackage{longtable}
|
|
\providecommand{\tightlist}{\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
|
\usepackage{booktabs}
|
|
|
|
\usepackage{fontspec}
|
|
\usepackage{xunicode}
|
|
\usepackage{xltxtra}
|
|
|
|
\newfontfamily\fontRoboto[]{Roboto}
|
|
\newfontfamily\fontUbuntu[]{Ubuntu}
|
|
\setmainfont{Roboto}
|
|
|
|
% \usepackage[style=ieee]{biblatex}
|
|
% \usepackage{csquotes}
|
|
% \addbibresource{bibliography.bib}
|
|
|
|
% header and footer
|
|
\usepackage{fancyhdr}
|
|
\renewcommand{\headrule}{}
|
|
|
|
\usepackage[nodayofweek]{datetime}
|
|
|
|
\definecolor{darkishyellow}{rgb}{177, 179, 173}
|
|
|
|
% for images
|
|
\usepackage{graphbox}
|
|
|
|
% add bookmarks with \hypertarget
|
|
\usepackage{bookmark}
|
|
\usepackage{hyperref}
|
|
|
|
% heading numberging
|
|
\setcounter{secnumdepth}{3}
|
|
\renewcommand\thesection{{\fontUbuntu\arabic{section}}}
|
|
\renewcommand\thesubsection{{\fontUbuntu\arabic{section}.\arabic{subsection}}}
|
|
\renewcommand\thesubsubsection{{\fontUbuntu\arabic{section}.\arabic{subsection}.\arabic{subsubsection}}}
|
|
\usepackage{sectsty}
|
|
\allsectionsfont{\fontUbuntu}
|
|
\setlength{\headheight}{14pt}
|
|
|
|
% no indent at paragraphs
|
|
\usepackage{parskip}
|
|
\usepackage{setspace}
|
|
\setstretch{1.1}
|
|
\let\tmpitem\itemize
|
|
\let\tmpenditem\enditemize
|
|
\renewenvironment{itemize}{\tmpitem\setlength\itemsep{-.4em}}{\tmpenditem}
|
|
|
|
\begin{document}
|
|
\raggedright
|
|
\pagecolor{darkishyellow}
|
|
|
|
\begin{titlepage}
|
|
\null\vfill
|
|
\begin{center}
|
|
{\Huge\fontUbuntu Superlight Personal Carier (SPC) \par}
|
|
\vskip 3em
|
|
% \includegraphics{assets/eriks.50.png}
|
|
\vskip 3em
|
|
{\huge\fontUbuntu Superlight Personal Carrier \par}
|
|
\end{center}
|
|
\vskip 25em
|
|
{
|
|
\large
|
|
\lineskip .75em
|
|
\begin{tabular}{r l}
|
|
gemaakt door: & Finley van Reenen (0964590@hr.nl) \\
|
|
& Chris Tan (0992143@hr.nl) \\
|
|
& Tijn Snijders (1001829@hr.nl) \\
|
|
& Max Kappert (1030682@hr.nl) \\
|
|
& Thomas Braam (0989527@hr.nl) \\\\
|
|
vak code: & ELEPEE51 \\\\
|
|
ge\"exporteerd op: & \today
|
|
\end{tabular}
|
|
}
|
|
\vfill\null
|
|
\end{titlepage}
|
|
|
|
\pagestyle{fancy}
|
|
\fancyhead{} % clear all header fields
|
|
\fancyhead[LO]{\color{gray}\fontUbuntu Superlight Personal Carier (SPC)}
|
|
\fancyhead[RO]{\color{gray}\fontUbuntu Superlight Personal Carrier}
|
|
\fancyfoot{} % clear all footer fields
|
|
\fancyfoot[LO]{\color{gray}\fontUbuntu E.L.F. van Reenen, C. Tan, T Snijders, M. Kappert en T. Braam}
|
|
\fancyfoot[CO]{\color{gray}\fontUbuntu }
|
|
\fancyfoot[RO]{\color{gray}\fontUbuntu \thepage}
|
|
|
|
|
|
|
|
|
|
\newpage
|
|
|
|
\section{inhoudsopgaven}\label{inhoudsopgaven}
|
|
|
|
\tableofcontents
|
|
|
|
\newpage
|
|
|
|
\section{Inleiding}\label{inleiding}
|
|
|
|
Het SPC-project is een project vanuit de opleiding Automotive. Het doel
|
|
is om een lichtgewicht, zelf stabiliserend persoonsvoertuig te
|
|
ontwikkelen dat als een testplatform kan dienden. Bij dit test platform
|
|
is het doel om een kleinere milieu vriendelijkere manier van persoonlijk
|
|
transport dan een `gewone' auto.
|
|
|
|
\newpage
|
|
|
|
\section{Analyse}\label{analyse}
|
|
|
|
Niels Groningen - de opdracht gever - wil graag een test platform
|
|
hebben. Het is lastig harde eisen te stellen aan dit testplatform,
|
|
aangezien nog niet exact bekend is wat er getest op gaat worden. Het is
|
|
de bedoeling dat er verschillen soorten testen op gedaan kunnen worden.
|
|
|
|
Voor dit project zijn er wel duidelijke eisen nodig zodat het duidelijk
|
|
is dat we allebei hetzelfde idee hebben hoe die moet werken. Hierom is
|
|
er dus doorgevraagd en zijn een aantal richtlijnen uitgekomen.
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Het voertuig moet een redelijke actieradius hebben, zoals bijvoorbeeld
|
|
comfortabel vanaf Amsterdam naar Rotterdam kunnen rijden.
|
|
\item
|
|
Het moet over de snelweg kunnen in theorie, maar hoeft niet aan alle
|
|
regelgevingen te voldoen.
|
|
\item
|
|
Er moet actieve stabilisatie op komen.
|
|
\item
|
|
Beide wielen moeten gestuurd en aangedreven worden.
|
|
\item
|
|
Het voertuig moet zo licht mogelijk zijn, zonder te veel weg te nemen
|
|
van gebruikers vriendelijkheid voor de bestuurder.
|
|
\item
|
|
Het voertuig moet uiteindelijk semi-automatisch kunnen rijden.
|
|
\end{itemize}
|
|
|
|
Op basis van deze richtlijnen is er een Pakket van Eisen opgesteld,
|
|
hierna is er nog wat meer heen en weer gegaan om de eisen wat te fine
|
|
tunen.
|
|
|
|
Het resulterende Pakket van Eisen is te vinden in de bijlagen.
|
|
|
|
\newpage
|
|
|
|
\section{Architectuur}\label{architectuur}
|
|
|
|
Het systeem heeft verschillende onderdelen die te zien zijn in het DFD1,
|
|
elk onderdeel zorgt ervoor dat het voertuig kan rijden en een stapje
|
|
verder kan zetten in het einddoel, het vervoeren van een persoon.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/b87f75dc-87b1-47a9-adfe-bc389c5377fb.png}
|
|
\caption{DFD1}
|
|
\end{figure}
|
|
|
|
\subsection{VCU}\label{vcu}
|
|
|
|
De Vehicle Control Unit zorgt voor veel onderdelen in het systeem
|
|
waaronder het sturen van het voertuig en aangeven hoe snel de gebruiker
|
|
wil, die geeft een signaal naar de stabilisatie en de motor.
|
|
|
|
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.
|
|
|
|
\subsection{Stabilisatie}\label{stabilisatie}
|
|
|
|
De stabilisatie is nodig zodat we het voertuig niet hoeven te verlaten
|
|
als we stil moeten staan, dit is omdat de bestuurder ingecapsuleerd is
|
|
in het voertuig. De VCU geeft een data signaal aan de Stabilisatie
|
|
hoeveel vermogen die mag gebruiken.
|
|
|
|
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
|
|
|
|
\subsection{aandrijving}\label{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.
|
|
|
|
REQ-A-4{[}MH{]}: Het voertuig is ontworpen zodat de maximale snelheid 60
|
|
kilometer per uur of sneller is.
|
|
|
|
60 km/h is de minimale snelheid voor op de snelweg.
|
|
|
|
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.
|
|
|
|
De opdracht gever wil graag tussen Amsterdam van Rotterdam kunnen
|
|
rijden.
|
|
|
|
REQ-A-7{[}CH{]}: Het voertuig is ontworpen zodat die 250 kilometer
|
|
actieradius of meer kan bereiken in ideale omstandigheden.
|
|
|
|
\newpage
|
|
|
|
\section{Vehicle Control unit (VCU)}\label{vehicle-control-unit-vcu}
|
|
|
|
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.
|
|
|
|
\subsection{Actuator}\label{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.
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.4051}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.1646}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.1519}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.2785}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
Parameter
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Waarde
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Eenheid
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Opmerking
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
Voertuigspanning & 12 - 14 & \(V_{DC}\) & typisch voor auto-VCU's \\
|
|
Stuurspanningdemperkle & 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\footnote{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 \\
|
|
Karrosserieversnelling & -3 tot +3 & \(g\) & Laterale en verticale
|
|
versnellingen \\
|
|
Axiale potentiometer (veerweg) & 0 - 50 & \(mm\) & Meet veeruitslag \\
|
|
Temperatuur werkbereik & -40 tot +85 & \(^\circ C\) &
|
|
Automobielstandaard \\
|
|
\end{longtable}
|
|
|
|
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.
|
|
|
|
\newpage
|
|
|
|
\section{Stabilisatie}\label{stabilisatie-1}
|
|
|
|
Voor de Stabilisatie is er een motor driver ontworpen. De specificaties
|
|
van deze zijn groten deels gebaseerd op specifieke motor. Samen met
|
|
Automotive is deze uitgekozen.
|
|
|
|
\subsection{De Motor}\label{de-motor}
|
|
|
|
Het is er een die gevonden is op Aliexpress, niet een heel erg
|
|
betrouwbare verkoper, maar we kunnen geeb andere geschikte vinden voor
|
|
een redelijke prijs. 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:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
\(K_T = 0.15 Nm/A\) - motor koppel constante
|
|
\item
|
|
\(I_{noload} = 3.52 A\) - Stroom verbruik bij geen koppel
|
|
\item
|
|
\(K_v = 69 rpm/V\) - motor snelheidsconstante
|
|
\item
|
|
\(V_{th} = 598 mV\) - threshold voltage
|
|
\item
|
|
\(I_{max} = 78.5 A\) - maximaal stroom verbruik voor onze applicatie
|
|
(\(11.2Nm\) met 1:4 gearbox)
|
|
\item
|
|
\(U_{max} = 64 V\) - maximaal spanning benodigd voor onze applicatie
|
|
\end{itemize}
|
|
|
|
berekeningen voor deze waardes staan in het Detailontwerp Stabilisatie
|
|
in hoofdstuk \hyperref[motor-keuze]{Motor Keuze} (zie bijlagen)
|
|
|
|
\begin{quote}
|
|
Er is helaas iets fout gegaan bij de berekeningen die eerder gedaan zuhb
|
|
om de specificaties vast te stellen. Er is per ongeluk met \(25 Nm\)
|
|
gerekent 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 combie die te vinden is met \(50A\) maar met een hogere spanning
|
|
het vermogen haalt. Er is veel ruimte aan spanning, dus dit zal geen
|
|
groot probleem moeten zijn.
|
|
\end{quote}
|
|
|
|
\subsection{Motor Driver}\label{motor-driver}
|
|
|
|
\subsubsection{specificaties}\label{specificaties}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
De drijver moet minimaal \(64 V\) aan kunnen, met voorkeur van meer
|
|
dan \(120 V\) \footnote{Er wordt tot \(50 V\) getest, voor deze
|
|
waardes wordt het ontworpen, maar niet tot het limiet getest.}
|
|
\end{itemize}
|
|
|
|
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.
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
De drijver moet minimaal \(50 A\) continu kunnen leveren (wat
|
|
eigenlijk \(80 A\) had moeten zijn) \footnote{Er wordt tot \(50 V\)
|
|
getest, voor deze waardes wordt het ontworpen, maar niet tot het
|
|
limiet getest.}
|
|
\item
|
|
Maakt gebruik van Field Oriented Control, om het volledige vermogen te
|
|
kunnen halen vanaf stilstand.
|
|
\item
|
|
De hoek van het voertuig moet gemeten worden.
|
|
\item
|
|
Er is een regel loop tussen de hoek sensor en de kracht van de motor.
|
|
\item
|
|
Er is een SPI-client connector waarmee verschillende instellingen
|
|
ingesteld mee kan worden, waaronder het maximaal vermogen.
|
|
\end{itemize}
|
|
|
|
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.
|
|
|
|
\subsubsection{Ontwerp}\label{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.
|
|
|
|
\paragraph{Half-bridges}\label{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
|
|
\hyperref[verliezen-in-de-fet]{Verliezen in de FET}
|
|
|
|
\begin{quote}
|
|
Voor meer informatie over hoe de vermogens filtering is gedaan zie
|
|
bijlagen Detailontwerp Stabilisatie hoofdstuk
|
|
\hyperref[power-filtering]{Power Filtering}
|
|
\end{quote}
|
|
|
|
\paragraph{Sensoren}\label{sensoren}
|
|
|
|
Er zijn drie sensoren nodig, stroom meting, positie van de motor en de
|
|
hoek van het voertuig.
|
|
|
|
\subparagraph{stroom meting}\label{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.
|
|
|
|
\subparagraph{Hoek van de motor}\label{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.
|
|
|
|
\begin{quote}
|
|
Meer informatie waarom deze keuze is gemaakt, zie de bijlagen
|
|
Detailontwerp Stabilisatie hooftstuk Encoder
|
|
\end{quote}
|
|
|
|
\subparagraph{Hoek van het voertuig}\label{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.
|
|
|
|
\begin{quote}
|
|
Meer informatie warom deze keuze is gemaakt, zie bijlagen Detailontwerp
|
|
Stabilisatie hoofdstuk \hyperref[hoek-sensor]{Hoek Sensor}
|
|
\end{quote}
|
|
|
|
\subsubsection{Productie en Testen Motor
|
|
Driver}\label{productie-en-testen-motor-driver}
|
|
|
|
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 terwel ik verder ga testen.
|
|
|
|
\newpage
|
|
|
|
\section{Project Verloop}\label{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 geschik 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 weinig `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.
|
|
|
|
\newpage
|
|
|
|
\section{bijlagen}\label{bijlagen}
|
|
|
|
\subsection{Plan van Aanpak}\label{plan-van-aanpak}
|
|
|
|
\subsubsection{Voorwoord}\label{voorwoord}
|
|
|
|
Voor u ligt het \textbf{Plan van aanpak} (PVA) voor het project
|
|
\textbf{Superlight Personal Carrier (SPC) 2025}. Dit document vormt de
|
|
leidraad voor de uitvoering van het project en beschrijft de
|
|
probleemstelling, doelstellingen, methodologische aanpak en de verwachte
|
|
resultaten.
|
|
|
|
Het SPC-project is een innovatief en interdisciplinair initiatief waarin
|
|
studenten van verschillende opleidingen samenwerken om een lichtgewicht,
|
|
zelf stabiliserend eenpersoonsvoertuig te ontwikkelen. 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.
|
|
|
|
Dit document is met zorg samengesteld en biedt een helder overzicht van
|
|
de huidige status van het project, de uitdagingen die voor ons liggen en
|
|
de strategieën die we hanteren om deze te overwinnen. We willen hierbij
|
|
onze begeleiders, docenten en projectpartners bedanken voor hun
|
|
ondersteuning en waardevolle inzichten.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Inleiding}\label{inleiding}
|
|
|
|
Voor dit semester wordt er verder gewerkt aan het project
|
|
\textbf{Superlight Personal Carrier (SPC)}. Het SPC-project is een
|
|
samenwerking tussen studenten uit verschillende opleidingen bevordert,
|
|
met als doel een lichtgewicht, zelf stabiliserend éénpersoonsvoertuig te
|
|
ontwikkelen. Dit semester is gericht op het verfijnen en verbeteren van
|
|
essentiële subsystemen, zoals het aandrijf- en stuursysteem en
|
|
stabilisatie, waarbij er parameters uit een Digital Twin gehaald worden.
|
|
|
|
Dit project begint met een opgesteld \textbf{Plan van Aanpak (PvA)}. Dit
|
|
document biedt een solide basis voor het project door de belangrijkste
|
|
stappen, doelstellingen en methodologieën te beschrijven. Het PvA
|
|
fungeert als leidraad en naslagwerk voor alle betrokkenen, en brengt
|
|
duidelijkheid over wat er moet worden gedaan, hoe het moet worden
|
|
uitgevoerd, en wat de verwachte resultaten zijn.
|
|
|
|
Naast een overzicht van de werkzaamheden biedt het PvA inzicht in
|
|
essentiële aspecten zoals:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
\textbf{Planning:} Een gedetailleerd tijdschema dat de voortgang
|
|
bewaakt en mijlpalen vastlegt.
|
|
\item
|
|
\textbf{Kosten:} Een overzicht van de budgettaire eisen en
|
|
financieringsmogelijkheden om het project binnen de gestelde grenzen
|
|
te houden.
|
|
\item
|
|
\textbf{Risico's:} Identificatie en beheersing van mogelijke obstakels
|
|
om de betrouwbaarheid en kwaliteit van het eindresultaat te
|
|
garanderen.
|
|
\end{itemize}
|
|
|
|
Door deze gestructureerde aanpak wordt een basis gelegd voor een
|
|
uitvoering van het project. Het PvA maakt het mogelijk om op een
|
|
doelgerichte manier toe te werken naar een functioneel en valideer baar
|
|
eindresultaat: een rijdend voertuig dat klaar is voor verdere
|
|
ontwikkeling.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Probleemdefinitie}\label{probleemdefinitie}
|
|
|
|
\paragraph{Probleemstelling}\label{probleemstelling}
|
|
|
|
Het probleem is dat er onzekerheden zijn over het voertuig en dat de SPC
|
|
niet correct ontwikkeld is om te valideren. Hierdoor is het moeilijk om
|
|
aan te tonen of de functionaliteit voldoet aan de gestelde eisen en of
|
|
de subsystemen daadwerkelijk bruikbaar zijn in de praktijk.
|
|
|
|
\paragraph{Doelstelling}\label{doelstelling}
|
|
|
|
Het doel van het project is om de functionaliteit van de SPC te
|
|
verbeteren door een functionele aandrijving en een stuurmechanisme te
|
|
ontwerpen die praktisch toepasbaar zijn in het fysieke voertuig. Deze
|
|
systemen zullen worden ontworpen en geoptimaliseerd met behulp van data
|
|
uit een Digital Twin, die als leidraad dient voor het gehele
|
|
ontwikkelingsproces. Daarnaast zal het stabilisatiesysteem verder
|
|
ontwikkeld worden, met als uiteindelijk doel een full- scale
|
|
implementatie in het voertuig.
|
|
|
|
\paragraph{Vraagstelling}\label{vraagstelling}
|
|
|
|
\subparagraph{Hoofdvraag}\label{hoofdvraag}
|
|
|
|
``Hoe ziet een functioneel en valideer baar aandrijf- en stuursysteem
|
|
voor de SPC eruit, waarbij stabilisatie is geïntegreerd in het ontwerp
|
|
en gebruik wordt gemaakt van een digital twin voor ontwikkeling,
|
|
optimalisatie en validatie?''
|
|
|
|
\subparagraph{Deelvragen}\label{deelvragen}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
\textbf{Huidige situatie \& knelpunten}
|
|
\end{enumerate}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Wat is de huidige status van de SPC en welke onzekerheden bestaan er
|
|
in het huidige ontwerp?
|
|
\item
|
|
Welke technische beperkingen belemmeren de validatie van de SPC?
|
|
\end{itemize}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\setcounter{enumi}{1}
|
|
\tightlist
|
|
\item
|
|
\textbf{Ontwerp en validatie van het aandrijf- en stuursysteem}
|
|
\end{enumerate}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Welke ontwerpcriteria moeten worden gehanteerd voor een functionele en
|
|
bruikbare aandrijving?
|
|
\item
|
|
Hoe kan een stuurmechanisme worden ontworpen dat werkt zonder een
|
|
traditioneel stuur?
|
|
\item
|
|
Welke methoden kunnen worden gebruikt om de werking van deze systemen
|
|
te valideren?
|
|
\end{itemize}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\setcounter{enumi}{2}
|
|
\tightlist
|
|
\item
|
|
\textbf{Gebruik van een Digital} \textbf{Twin}
|
|
\end{enumerate}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Hoe kan een digital twin bijdragen aan de ontwikkeling en validatie
|
|
van de aandrijving en het stuurmechanisme?
|
|
\item
|
|
Welke parameters en data zijn nodig om een betrouwbare digital twin op
|
|
te stellen?
|
|
\end{itemize}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\setcounter{enumi}{3}
|
|
\tightlist
|
|
\item
|
|
\textbf{Stabilisatie en implementatie}
|
|
\end{enumerate}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Hoe kan het stabilisatiesysteem verder worden ontwikkeld en
|
|
geoptimaliseerd?
|
|
\item
|
|
Op welke manier kan een full-scale implementatie van de SPC worden
|
|
gerealiseerd?
|
|
\end{itemize}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\setcounter{enumi}{4}
|
|
\tightlist
|
|
\item
|
|
\textbf{Kwaliteitsborging en testen}
|
|
\end{enumerate}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Hoe kan de functionaliteit van het systeem worden gekwantificeerd en
|
|
geëvalueerd?
|
|
\item
|
|
Welke testmethoden kunnen worden gebruikt om de prestaties van de SPC
|
|
te meten en te valideren?
|
|
\end{itemize}
|
|
|
|
\paragraph{Current State}\label{current-state}
|
|
|
|
In de vorige projectfasen is een prototype ontwikkeld van de
|
|
\textbf{Superlight Personal Carrier (SPC)}, waarin verschillende
|
|
technologieën en subsystemen zijn getest. Op dit moment bestaat de SPC
|
|
uit:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Een testframe waarop componenten kunnen worden gemonteerd en
|
|
geëvalueerd.
|
|
\item
|
|
Een op schaal geteste opstelling met een reactiewiel om de
|
|
stabilisatie te behouden.
|
|
\item
|
|
Een ruwe simulatie met geschatte parameters voor de aandrijving en het
|
|
stuursysteem.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Huidige status van het
|
|
aandrijfsysteem}\label{huidige-status-van-het-aandrijfsysteem}
|
|
|
|
Motor en aandrijving
|
|
|
|
Het huidige ontwerp maakt gebruik van een elektromotor met een geplande
|
|
accupakketcapaciteit van 20,4 kWh, wat resulteert in een geschat gewicht
|
|
van 94 kg (gewicht per cel * benodigde cellen).
|
|
|
|
Er is nog geen definitieve keuze gemaakt tussen directe aandrijving
|
|
(zoals een naafmotor) en een indirecte aandrijving (zoals een centrale
|
|
motor met riem- of kettingoverbrenging).
|
|
|
|
De huidige aandrijving is nog niet geïntegreerd met het stuursysteem,
|
|
waardoor het effect op rijgedrag en stabiliteit onbekend is.
|
|
|
|
Simulatie en validatie
|
|
|
|
De stabilisatie is op kleine schaal getest, maar is nog niet gevalideerd
|
|
in combinatie met de aandrijving op het testframe.
|
|
|
|
De huidige simulaties zijn gebaseerd op geschatte parameters en vereisen
|
|
een nauwkeurigere data-invoer om realistische testresultaten te kunnen
|
|
leveren.
|
|
|
|
Uitdagingen en knelpunten
|
|
|
|
Het accupakket is relatief zwaar, wat invloed heeft op de prestaties en
|
|
balans van de SPC.
|
|
|
|
Er is nog onduidelijkheid over de samenwerking tussen aandrijving en
|
|
besturing, waardoor het risico op bumpsteer en vermogensverlies bestaat.
|
|
|
|
Er is nog geen uitgebreid testprotocol ontwikkeld om de prestaties van
|
|
de aandrijving systematisch te valideren.
|
|
|
|
De huidige status van het project vormt de basis voor verdere
|
|
ontwikkelingen. De volgende stappen zijn gericht op het verder
|
|
ontwikkelen van het aandrijf- en stuursysteem en de stabilisatie, zodat
|
|
er een rijdend 2x2x2 voertuig gerealiseerd wordt.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/0623b75b-1585-421a-9329-4feba9e00ae2.png}
|
|
\caption{SPC-prototype}
|
|
\end{figure}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Scope \& Afbakening}\label{scope-afbakening}
|
|
|
|
\paragraph{Scope}\label{scope}
|
|
|
|
De scope van een project bepaald wat er wel en niet behandeld gaat
|
|
worden. Een scope wordt op meerdere aspecten gesteld. De aspecten waar
|
|
onze scope over gaat zijn hieronder neergezet.\\
|
|
Dit project richt zich op het ontwikkelen van functionele kernsystemen
|
|
voor het voertuig, waarbij de nadruk ligt op de \textbf{aandrijving, de
|
|
Digital Twin, het stuurmechanisme en de stabilisatie}.
|
|
|
|
\subparagraph{Aandrijving en
|
|
Stuursysteem}\label{aandrijving-en-stuursysteem}
|
|
|
|
Een nieuw stuursysteem en doorgerekende aandrijving zijn nodig voor
|
|
basis functionaliteit van het voertuig. Deze systemen moeten aan de hand
|
|
van de Digital Twin ontworpen worden. Het doel licht hierop bij goed
|
|
ontwerp en onderbouwing. Het is daarom essentieel dat er goed nagedacht
|
|
wordt over de nodige veiligheidsfactoren en limieten van componenten.
|
|
|
|
\subparagraph{Digital Twin}\label{digital-twin}
|
|
|
|
Wij willen aan de hand van een Digital Twin andere subsystemen op het
|
|
voertuig kunnen ontwerpen, valideren en optimaliseren. Deze gegevens
|
|
moeten dus de rode draad vormen voor het gehele project.
|
|
|
|
\includegraphics{../../latex/images/c7dcc010-3e60-4f73-a520-a128e600615a.png}
|
|
|
|
\subparagraph{Stabilisatie}\label{stabilisatie}
|
|
|
|
Het doel van het project is om het voertuig te kunnen laten
|
|
stabiliseren. Dit stabiliseren zal op het full scale voertuig gaan
|
|
plaats vinden. Dit systeem moet werken door middel van het correctiewiel
|
|
wat op de schaal testopstelling gedemonstreerd is te werken. Het is nu
|
|
de taak om dit op full scale werkend te krijgen.
|
|
|
|
\subparagraph{Afbakening}\label{afbakening}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Het project richt zich primair op \textbf{functionele en fysiek
|
|
implementeerbare systemen}, niet op aerodynamische optimalisatie of
|
|
esthetische aspecten van het voertuig.
|
|
\item
|
|
Autonome functies vallen buiten de scope van dit project.
|
|
\end{itemize}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Tussenresultaten}\label{tussenresultaten}
|
|
|
|
\paragraph{Analyse fase}\label{analyse-fase}
|
|
|
|
In de analyse fase worden de volgende documenten opgesteld:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
\textbf{Plan van Aanpak}: Dit document.
|
|
\item
|
|
\textbf{Risico analyse}: Hier worden alle risico's beschreven en wat
|
|
we doen om de risico's te verminderen.
|
|
\item
|
|
\textbf{Pakket van eisen}: Hier worden alle eisen waar het product aan
|
|
moet gaan voldoen
|
|
\item
|
|
\textbf{Globale planning}: Zie hoofdstuk
|
|
\hyperref[planning]{Planning}.
|
|
\item
|
|
\textbf{Functioneel prototype?}: Een prototype om te controleren of
|
|
het concept mogelijk en realistisch is.
|
|
\end{itemize}
|
|
|
|
\paragraph{Concept fase}\label{concept-fase}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Persoonlijk PVA
|
|
\item
|
|
Het ontwerp van het product
|
|
\item
|
|
Bom (Bill of Materials)
|
|
\end{itemize}
|
|
|
|
\paragraph{Ontwerpfase}\label{ontwerpfase}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Testprocedures
|
|
\item
|
|
Het ontwerp van het product
|
|
\item
|
|
Bom (Bill of Materials)
|
|
\end{itemize}
|
|
|
|
\subparagraph{Test Fase}\label{test-fase}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Test rapporten
|
|
\end{itemize}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Methodologische aanpak}\label{methodologische-aanpak}
|
|
|
|
\paragraph{DMADV-model}\label{dmadv-model}
|
|
|
|
In dit hoofdstuk wordt besproken over de aanpak van de opdracht en welke
|
|
methode gevolgd zal worden tijdens het semester. Dit zal gedaan worden
|
|
door middel van het DMADV-model. Dat staat voor Define, Measure,
|
|
Analyze, Design en Verify.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/506da834-573f-4c24-8b22-15e82df64301.png}
|
|
\caption{DMADV-cyclus: een ontwerp om nieuwe processen te creëren}
|
|
\end{figure}
|
|
|
|
\subparagraph{Define}\label{define}
|
|
|
|
De eerste fase in het dmadv model is definiëren. Het is essentieel om
|
|
vooraf een lijst te hebben van de taken die gedaan moeten worden en de
|
|
onderdelen die gemaakt moeten worden. Als je in het begin goed hebt
|
|
gedefinieerd wat en hoe het gedaan moet worden zal het makkelijker
|
|
worden om naar het gewenste resultaat toe te werken. De onderdelen die
|
|
zullen worden ontwikkeld en geïmplementeerd zijn de aandrijving en de
|
|
sturing. Een eis is dat het voertuig in-wheel motoren moet hebben,
|
|
hiervoor zal er extra aandacht aan gegeven moeten worden vanwege de
|
|
complexiteit van dit onderwerp.
|
|
|
|
\subparagraph{Measure}\label{measure}
|
|
|
|
In de fase van measure verzamel en neem je de gegevens op die relevant
|
|
zijn voor de CTQ-maatregelen die tijdens de eerste fase werden
|
|
gedefinieerd. Deze gegevens meet je om resultaten te verkrijgen waarmee
|
|
later in het proces
|
|
|
|
In die tabel wordt de VOC (voice of customer) genoteerd en bij punten
|
|
daarvan wordt onder het kopje van drijfveer de technische of functionele
|
|
kenmerken beschreven die nodig zijn om de wensen van de klant te
|
|
behalen. Bij de CTQ rij wordt weergegeven wat de fysieke onderdelen zijn
|
|
om die drijfveren te behalen.
|
|
|
|
De CTQ's die uit de View of Client en View of Business zijn gehaald die
|
|
voor dit onderzoek belangrijk zijn, zijn hieronder in tabelvorm
|
|
genoteerd.
|
|
|
|
\includegraphics{../../latex/images/c776081d-b52e-40b8-84f4-065145305f76.png}
|
|
|
|
De eisen opgesteld vanuit de opdrachtgever (klant) zijn als volgt:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Het voertuig is elektrisch aangedreven
|
|
\item
|
|
Het voertuig is zelf stabiliserend
|
|
\item
|
|
Het voertuig is voor het vervoeren van 1 persoon
|
|
\end{itemize}
|
|
|
|
Het voertuig heeft een 2x2x2 aandrijving (2 wielen, 2 wiel gestuurd, 2
|
|
wiel aangedreven)
|
|
|
|
De laatste twee punten zijn eisen die van toepassing zijn op het
|
|
uiteindelijke eindproduct. Dat is iets wat in de tijdsduur van dit
|
|
project niet behaald zal worden. Daarom zijn die punten niet een
|
|
prioriteit voor dit projectteam.
|
|
|
|
\subparagraph{Analyze}\label{analyze}
|
|
|
|
In de fase van analyse worden alle verzamelde data uit de meetfase
|
|
gebruikt om te analyseren en testen uit te voeren van de verschillende
|
|
concepten die zijn opgesteld voor onderdelen en systemen. Die onderdelen
|
|
wordt verder op gerekend en geoptimaliseerd voor hun functie en de
|
|
gestelde eisen. Die eisen komen vanuit het pakket van eisen wat wordt
|
|
gebruikt als referentie om ervoor te zorgen dat de onderdelen zich
|
|
voldoen aan de gestelde randvoorwaarden.
|
|
|
|
Uit deze fase kan dan ook een ruw concept komen wat voldoet aan
|
|
functionele eisen en aan de eerder gestelde CTQ's.
|
|
|
|
\subparagraph{Design}\label{design}
|
|
|
|
In de fase van design worden alle gegevens uit eerdere fasen gebruikt
|
|
zodat er een product ontwikkeld kan worden wat dichter bij het
|
|
definitieve eindproduct komt. Daaruit kunnen mogelijke aanpassingen en
|
|
wijzigingen worden gemaakt uit fouten die worden geïdentificeerd en kan
|
|
het aan de klant worden laten zien, wat zal voldoen aan hun eisen en
|
|
weer mogelijk kan worden aangepast waar nodig is.
|
|
|
|
\subparagraph{Verify}\label{verify}
|
|
|
|
De verificatiefase van het DMADV-model is weliswaar de laatste fase,
|
|
maar niet het einde van het proces. Om de kwaliteit te waarborgen is het
|
|
belangrijk om, continue te verifiëren en het product aanpassen waar dat
|
|
dan nodig is. In deze fase zal het ontwerp dan ook definitief klaar zijn
|
|
en kan er feedback worden gekregen van de klant waarmee mogelijke
|
|
aanpassingen kunnen worden gemaakt die weer kunnen worden verifieerd.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Organisatiestructuur (OBS, PBS,
|
|
WBS)}\label{organisatiestructuur-obs-pbs-wbs}
|
|
|
|
\paragraph{Organisatie leden}\label{organisatie-leden}
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.2500}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.2500}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.2500}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 6\tabcolsep) * \real{0.2500}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
Functie
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Naam
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Opleiding
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Email
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
Opdrachtgever & Niels van Groningen & Automotive &
|
|
\href{mailto:N.van.groningen@hr.nl}{\nolinkurl{N.van.groningen@hr.nl}} \\
|
|
Docentbegeleider & Joris Straver & ELE &
|
|
\href{mailto:J.g.Straver@hr.nl}{\nolinkurl{J.g.Straver@hr.nl}} \\
|
|
Project lid & Max Kappert & Automotive &
|
|
\href{mailto:1030682@hr.nl}{\nolinkurl{1030682@hr.nl}} \\
|
|
Project lid & Tijn Snijders & Automotive &
|
|
\href{mailto:1001829@hr.nl}{\nolinkurl{1001829@hr.nl}} \\
|
|
Project lid & Thomas Braam & Automotive &
|
|
\href{mailto:0989527@hr.nl}{\nolinkurl{0989527@hr.nl}} \\
|
|
Project lid & Chris Tan & ELE &
|
|
\href{mailto:0992143@hr.nl}{\nolinkurl{0992143@hr.nl}} \\
|
|
Project lid & Gryvon Belfor & ELE &
|
|
\href{mailto:0985890@hr.nl}{\nolinkurl{0985890@hr.nl}} \\
|
|
Project lid & Mohamed El Morabiti & ELE &
|
|
\href{mailto:1014780@hr.nl}{\nolinkurl{1014780@hr.nl}} \\
|
|
Project lid & Finley van Reenen & ELE &
|
|
\href{mailto:0964590@hr.nl}{\nolinkurl{0964590@hr.nl}} \\
|
|
\end{longtable}
|
|
|
|
\paragraph{OBS (Organization Breakdown
|
|
Structure)}\label{obs-organization-breakdown-structure}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/d62ce8e7-705b-46da-884c-e3da26c39be9.png}
|
|
\caption{Organization Breakdown Structure}
|
|
\end{figure}
|
|
|
|
\paragraph{PBS (Product Breakdown
|
|
Structure)}\label{pbs-product-breakdown-structure}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/93b15853-82d2-48a2-9cbb-bdf3f4b0fb4b.png}
|
|
\caption{Product Breakdown Structure}
|
|
\end{figure}
|
|
|
|
\paragraph{WBS (Work Breakdown
|
|
Structure)}\label{wbs-work-breakdown-structure}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/958b5da9-80bc-4069-9a13-acc8a0fe6b5b.png}
|
|
\caption{Work Breakdown Structure}
|
|
\end{figure}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Risico- en stakeholder
|
|
analyse}\label{risico--en-stakeholder-analyse}
|
|
|
|
\paragraph{Risico's}\label{risicos}
|
|
|
|
Het Superlight Personal Carrier (SPC) project brengt studenten uit
|
|
verschillende opleidingen samen, waaronder Automotive en
|
|
Elektrotechniek. Dit interdisciplinaire karakter biedt kansen, maar
|
|
brengt ook risico's met zich mee, vooral op het gebied van planning,
|
|
communicatie en technische realisatie. In deze risicoanalyse worden de
|
|
belangrijkste bedreigingen geïdentificeerd en mogelijke
|
|
beheersmaatregelen besproken.
|
|
|
|
\subparagraph{Communicatieproblemen}\label{communicatieproblemen}
|
|
|
|
Doordat studenten uit verschillende opleidingen samenwerken, kunnen er
|
|
communicatieproblemen ontstaan. Elk teamlid heeft een andere
|
|
achtergrond, werkwijze en planning. Hierdoor kunnen misverstanden
|
|
ontstaan over verwachtingen, deadlines en verantwoordelijkheden. Dit kan
|
|
leiden tot vertragingen, inefficiënte samenwerking en fouten in het
|
|
ontwerp of de uitvoering van het project.
|
|
|
|
Maatregelen
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Regelmatige vergaderingen inplannen om voortgang en knelpunten te
|
|
bespreken.
|
|
\item
|
|
Duidelijke communicatiekanalen en documentatie opzetten, zoals een
|
|
gedeeld projectplan of online platform.
|
|
\item
|
|
Taken en verantwoordelijkheden expliciet vastleggen, zodat iedereen
|
|
weet wat er van hen verwacht wordt.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Verschillende planningen en
|
|
beschikbaarheid}\label{verschillende-planningen-en-beschikbaarheid}
|
|
|
|
Studenten van verschillende opleidingen hebben verschillende
|
|
lesroosters, deadlines en toets momenten. Dit kan ertoe leiden dat
|
|
sommige teamleden minder beschikbaar zijn of moeilijker in te plannen
|
|
zijn voor gezamenlijke werkzaamheden. Bovendien kunnen studenten vakken
|
|
moeten herkansen, wat hun inzetbaarheid verder vermindert.
|
|
|
|
Maatregelen
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Een flexibele maar realistische projectplanning maken die rekening
|
|
houdt met toets weken en herkansingen.
|
|
\item
|
|
Taken verdelen op basis van beschikbaarheid, zodat het project niet
|
|
stilvalt bij de afwezigheid van een teamlid.
|
|
\item
|
|
Alternatieve communicatiemiddelen gebruiken, zoals online
|
|
vergaderingen en asynchrone updates.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Te veel hooi op de vork
|
|
nemen}\label{te-veel-hooi-op-de-vork-nemen}
|
|
|
|
Binnen het project kan de neiging ontstaan om te veel taken op je te
|
|
nemen. Dit verhoogt de werkdruk en kan ertoe leiden dat taken niet goed
|
|
worden uitgevoerd of deadlines niet worden gehaald. Hierdoor kunnen
|
|
cruciale onderdelen van het project mislukken of niet naar behoren
|
|
functioneren.
|
|
|
|
Maatregelen
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Duidelijke taakverdeling maken en monitoren of de werklast eerlijk is
|
|
verdeeld.
|
|
\item
|
|
Wekelijkse statusupdates organiseren om eventuele overbelasting te
|
|
signaleren.
|
|
\item
|
|
Teamleden stimuleren om tijdig hulp te vragen als ze vastlopen.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Studenten stoppen of komen niet
|
|
opdagen}\label{studenten-stoppen-of-komen-niet-opdagen}
|
|
|
|
Een ander risico is dat studenten uitvallen, stoppen met het project of
|
|
hun taken niet afmaken. Dit kan grote impact hebben op de voortgang en
|
|
de verdeling van verantwoordelijkheden binnen het team.
|
|
|
|
Maatregelen
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Vanaf de start duidelijke afspraken maken over commitment en inzet.
|
|
\item
|
|
Een back-up plan opstellen voor cruciale taken, zodat het project door
|
|
kan gaan bij onverwachte uitval.
|
|
\item
|
|
Vroegtijdig signaleren wanneer een teamlid minder betrokken raakt en
|
|
hier proactief op inspelen.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Realisatie kan fout gaan}\label{realisatie-kan-fout-gaan}
|
|
|
|
Tijdens de realisatie van het project kunnen technische problemen
|
|
ontstaan, zoals fouten in de hardware of software,
|
|
compatibiliteitsproblemen en onvoorziene storingen. Dit kan ertoe leiden
|
|
dat onderdelen niet correct werken of dat het eindproduct niet aan de
|
|
gestelde eisen voldoet.
|
|
|
|
Maatregelen
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Duidelijke technische specificaties opstellen en testen in
|
|
verschillende fasen.
|
|
\item
|
|
Gebruik maken van bestaande en bewezen technologieën waar mogelijk.
|
|
\item
|
|
Regelmatig overleg tussen teamleden om technische obstakels snel te
|
|
identificeren en op te lossen.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Unittesten en
|
|
integratietesten}\label{unittesten-en-integratietesten}
|
|
|
|
Een belangrijk onderdeel van het project is het testen van afzonderlijke
|
|
componenten (unittesten) en het integreren van deze componenten in een
|
|
werkend geheel (integratietesten). Zonder gedegen teststrategie kunnen
|
|
fouten pas laat in het proces worden ontdekt, wat tot vertraging en
|
|
herwerk leidt.
|
|
|
|
Maatregelen
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Een gestructureerd testplan opstellen en uitvoeren in verschillende
|
|
ontwikkelingsfasen.
|
|
\item
|
|
Automatische en handmatige testen toepassen om betrouwbaarheid te
|
|
garanderen.
|
|
\item
|
|
Problemen documenteren en direct oplossen om verdere complicaties te
|
|
voorkomen.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Conclusie}\label{conclusie}
|
|
|
|
Om het SPC-project succesvol af te ronden, is een goede planning,
|
|
communicatie en technische aanpak essentieel. Door risico's tijdig te
|
|
identificeren en maatregelen te nemen, kan het team effectiever
|
|
samenwerken en problemen minimaliseren. Duidelijke afspraken,
|
|
regelmatige evaluaties, een evenwichtige taakverdeling en een
|
|
gestructureerd testplan zijn cruciaal om de uitdagingen binnen dit
|
|
interdisciplinaire project te overwinnen en een succesvol eindresultaat
|
|
te garanderen.
|
|
|
|
\paragraph{Risico matrix}\label{risico-matrix}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/224f3e03-21c4-4034-8905-9848007b253e.png}
|
|
\caption{Risico matrix}
|
|
\end{figure}
|
|
|
|
\paragraph{Stakeholder analyse}\label{stakeholder-analyse}
|
|
|
|
Hierin wordt een analyse gemaakt over de rollen, invloed en belangen van
|
|
de verschillende belanghebbenden in dit project. Dit helpt om
|
|
communicatie en samenwerking te verbeteren en eventuele conflicten te
|
|
voorkomen.
|
|
|
|
Hieronder zijn de volgende partijen die invloed hebben op dit project
|
|
bekend:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Projectteemleden:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Gryvon Belfor
|
|
\item
|
|
Tijn Snijders
|
|
\item
|
|
Thomas Braam
|
|
\item
|
|
Max Kappert
|
|
\item
|
|
Finley van Reenen
|
|
\item
|
|
Mohamed El Morabiti
|
|
\item
|
|
Chris Tan
|
|
\end{itemize}
|
|
\item
|
|
Begeleiders (school):
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Niels van Groningen
|
|
\item
|
|
Joris Straver
|
|
\end{itemize}
|
|
\item
|
|
Eindgebruiker/klant:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Niels van Groningen
|
|
\end{itemize}
|
|
\end{itemize}
|
|
|
|
Het belang en invloed wordt in dit tabel weergeven:
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 4\tabcolsep) * \real{0.3333}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 4\tabcolsep) * \real{0.3333}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 4\tabcolsep) * \real{0.3333}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
Stakeholder
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Belang
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Invloed
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
Projectteamleden & Verder ontwikkelen van de SPC naar validatie &
|
|
Hoog \\
|
|
Begeleiders (school) & Begeleiden van kwaliteit en validiteit van het
|
|
eindproduct & Gemiddeld \\
|
|
Eindgebruiker/klant & Een gebruiksklaar product voor eventuele
|
|
vervolgproject & Hoog \\
|
|
\end{longtable}
|
|
|
|
\paragraph{RACI-model}\label{raci-model}
|
|
|
|
De letters van het RACI-model staan voor rollen van de leden in een
|
|
proces, namelijk:
|
|
|
|
R -- Responsible (Verantwoordelijk): degene die de taak uitvoert is
|
|
verantwoordelijk voor de uitvoering hiervan.
|
|
|
|
A -- Accountable (Eindverantwoordelijk): deze persoon draagt de
|
|
uiteindelijke eindverantwoording voor de juiste voltooiing van een of
|
|
meerdere projecttaken.
|
|
|
|
C -- Consulted (Geraadpleegd): dit is de persoon aan wie vooraf advies
|
|
gevraagd wordt.
|
|
|
|
I -- Informed (Geïnformeerd): deze persoon wordt tussentijds
|
|
geïnformeerd over de beslissingen, over de voortgang, bereikte
|
|
resultaten enz.
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Tijn
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Max
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Thomas
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Gryvon
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Chris
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Finley
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Mohammed
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
Van Groningen
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
Projectplanning & R & I & I & I & I & I & I & \\
|
|
PVE & I & I & I & I & R & A/R & I & C \\
|
|
Sponsering & A & R & I & I & I & I & I & I \\
|
|
Stuursysteem & I & A/R & I & I & R & I & I & C/I \\
|
|
Aandrijving & I & I & I & A/R & I & I & R & C/I \\
|
|
Stabilisatie & A/R & I & I & I & I & R & I & C/I \\
|
|
Sim model & C/I & C/I & A/R & I & I & I & I & C \\
|
|
Concept ontwikkelen & R & R & R & R & R & R & R & C/I \\
|
|
Begroting \& kosten & A & C & C & C & R & C & C & C/I \\
|
|
\end{longtable}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Planning}\label{planning}
|
|
|
|
\paragraph{Tussenresultaten}\label{tussenresultaten-1}
|
|
|
|
Het project wordt op gedeeld in verschillende sprints
|
|
|
|
\subparagraph{Analyse fase}\label{analyse-fase-1}
|
|
|
|
In de analyse fase worden de volgende documenten opgesteld:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
\textbf{Plan van Aanpak}\\
|
|
Dit document.
|
|
\item
|
|
\textbf{Risico analyse}\\
|
|
Hier worden alle risico's beschreven en wat we doen om de risico's te
|
|
verminderen.
|
|
\item
|
|
\textbf{Pakket van eisen}\\
|
|
Hier worden alle eisen waar het product aan moet gaan voldoen
|
|
\item
|
|
\textbf{Globale planning}\\
|
|
Zie hoofdstuk \hyperref[planning]{Planning}.
|
|
\item
|
|
\textbf{Functioneel prototype?}\\
|
|
Een prototype om te controleren of het concept mogelijk en realistisch
|
|
is.
|
|
\end{itemize}
|
|
|
|
\subparagraph{Ontwerpfase}\label{ontwerpfase-1}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Testprocedures
|
|
\item
|
|
Het ontwerp van het product
|
|
\item
|
|
Bom (Bill of Materials)
|
|
\end{itemize}
|
|
|
|
\subparagraph{Test fase}\label{test-fase-1}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Test rapporten
|
|
\end{itemize}
|
|
|
|
\paragraph{Value planning}\label{value-planning}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/6f8ac25b-16f5-41ae-b7cf-980ddfbfbfd7.png}
|
|
\caption{Value Planning}
|
|
\end{figure}
|
|
|
|
\paragraph{Dynamische planning}\label{dynamische-planning}
|
|
|
|
Deze planning geeft een overzicht van de verschillende fasen en
|
|
bijbehorende taken binnen dit project. Door middel van een Gantt-diagram
|
|
worden de doorlooptijden, afhankelijkheden en mijlpalen visueel
|
|
weergegeven. De planning is opgedeeld in meerdere sprints, waaronder
|
|
\textbf{Sprint Analyseren}, \textbf{Sprint Realiseren}, \textbf{Sprint
|
|
Optimaliseren}, en \textbf{Sprint Valideren}, waarmee het project
|
|
stapsgewijs wordt ontwikkeld en geoptimaliseerd.
|
|
|
|
De blauwe balken geven de duur van elke taak aan, terwijl de
|
|
diamantvormige symbolen belangrijke mijlpalen markeren. De rode
|
|
verticale lijn geeft de huidige voortgang weer. Dit overzicht helpt bij
|
|
het bewaken van deadlines, het coördineren van werkzaamheden en het
|
|
tijdig bijsturen van het project waar nodig
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/c75e80d7-dcc2-454e-adb2-dc4a1925b2bf.png}
|
|
\caption{Stroken planning}
|
|
\end{figure}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Begroting}\label{begroting}
|
|
|
|
Het project moet uiteindelijk een rijdend en zelf stabiliserend voertuig
|
|
produceren, het moet op 2 wielen rijden en bestuurd worden d.m.v.
|
|
vehicle control unit (een joystick of een controller). We baseren de
|
|
prijzen op de keuzes die gemaakt zijn door het vorige projectteam en een
|
|
vooronderzoek dat is gedaan. Voor de wielmotoren hebben een 8kW nodig om
|
|
de originele eisen van 150km/u te behalen, daarbij komt ook een
|
|
batterijpakket bij kijken die minimaal 120V en 280Ah moet zijn. Voor het
|
|
stabilisatie systeem hebben we ook hoogstwaarschijnlijk een motor met
|
|
veel koppel nodig. Om de drive by wire besturing te kunnen implementeren
|
|
hebben we 2 actuatoren nodig, één voor en één achter. Daarnaast hebben
|
|
we een vehicle control unit nodig om het voertuig te besturen.
|
|
|
|
Kosten: voor dit project is het budget nog onbekend.
|
|
|
|
Baten: omdat het budget nog onbekend is, is het moeilijk te bepalen wat
|
|
de baten voor het budget zijn.
|
|
|
|
De volgende tabel geeft een schatting van het benodigde budget:
|
|
|
|
\begin{longtable}[]{@{}ll@{}}
|
|
\toprule\noalign{}
|
|
Item & Begroting \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
2x Wielmotor & 1000-1500 \\
|
|
Stabilisatie motor & 500-600 \\
|
|
Banden & 100-150 \\
|
|
Actuatoren & 400-500 \\
|
|
Wielen & 200-300 \\
|
|
2x Encoders & 100-150 \\
|
|
Vehicle control unit & 50-80 \\
|
|
Motor controller & 100-150 \\
|
|
Batterijpakket & 900 \\
|
|
Frame & ??? \\
|
|
Remmen & 200-300 \\
|
|
\end{longtable}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Pakket van Eisen (PvE)}\label{pakket-van-eisen-pve}
|
|
|
|
Het volgende PVE is opgesteld in een apart document.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Voertuig Validatie}\label{voertuig-validatie}
|
|
|
|
Na de realisatie en optimalisatie van het voertuig, zal er een grondige
|
|
validatie plaats vinden. De validatie zal bestaan uit verschillende
|
|
hoofd criteria. Die uit geleid zijn van uit het pakket van eisen. Deze
|
|
hoofd criteria zijn statische dynamische en integratie validatie testen.
|
|
|
|
\paragraph{Statische validatie}\label{statische-validatie}
|
|
|
|
Tijdens de statische validatie zal het voertuig gevalideerd worden op de
|
|
statische parameters van uit het pakket van eisen. Dit zal gebeuren door
|
|
een
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Voertuig gewicht validatie (\textless250 kg ex persoon)
|
|
(REQ-A-1{[}MH{]} in PvE)
|
|
\item
|
|
Afmetingen (REQ-A-2{[}MH{]}, REQ-A-3{[}MH{]}, REQ-A-10{[}SH{]},
|
|
REQ-A-11{[}MH{]} en REQ-A-12{[}SH{]} in PvE)
|
|
\end{itemize}
|
|
|
|
\paragraph{Dynamische validatie}\label{dynamische-validatie}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
Aandrijving (REQ-W-4{[}MH{]} in PvE)
|
|
\item
|
|
Draaicirkel (REQ-W-8{[}MH{]} in PvE)
|
|
\item
|
|
Stabilisatie tot hellingshoek 5 graden (REQ-S-2{[}SH{]} in PvE)
|
|
\end{itemize}
|
|
|
|
\paragraph{Integratie validatie}\label{integratie-validatie}
|
|
|
|
Een volledig rollend sturen d stabiliserend voertuig test.
|
|
(REQ-S-1{[}MH{]}, REQ-W-2{[}MH{]} en REQ-W-3{[}SH{]} in PvE)
|
|
|
|
\newpage
|
|
|
|
\subsection{Pakket van Eisen}\label{pakket-van-eisen}
|
|
|
|
\subsubsection{Inleiding}\label{inleiding}
|
|
|
|
Bij dit project is de SPC\footnote{Superlight Personal Carrier}
|
|
opgesplitst in een aantal onderdelen. de eisen zijn verdeeld over deze
|
|
onderdelen.
|
|
|
|
Deze onderdelen zijn gesplitst op basis van welke onderdelen die in dit
|
|
project verbeterd worden.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Eis identificatie code}\label{eis-identificatie-code}
|
|
|
|
\begin{verbatim}
|
|
REQ-X-X[XX]
|
|
| | |
|
|
| | +- MH: zonder is het product niet bruikbaar
|
|
| | SH: het product is zonder ook bruikbaar, maar is zeer gewenst
|
|
| | CH: als het binnen de tijd lukt is het gewenst
|
|
| | WH: niet gewenst
|
|
| |
|
|
| +--- uniek identificatie nummer
|
|
|
|
|
+----- A: algemeen
|
|
W: wiel assembly
|
|
S: stabilisatie
|
|
C: VCU
|
|
\end{verbatim}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Definities}\label{definities}
|
|
|
|
\textbf{Het voertuig}: De Superlight Personal Carrier die tijdens dit
|
|
project gemaakt/verbeterd wordt.\\
|
|
\textbf{Bestuurder}: De persoon die in het voertuig zit, en het voertuig
|
|
bestuurd.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Algemene eisen}\label{algemene-eisen}
|
|
|
|
\textbf{REQ-A-1{[}MH{]}: Het voertuig exclusief bestuurder weegt 250
|
|
kilogram of minder.}
|
|
|
|
\textbf{REQ-A-2{[}MH{]}: Het voertuig heeft een totale lengte van 4
|
|
meter of minder.}
|
|
|
|
\textbf{REQ-A-3{[}MH{]}: Het voertuig heeft een totale breedte van 60
|
|
centimeter of minder.}
|
|
|
|
\textbf{REQ-A-4{[}MH{]}: Het voertuig is ontworpen\footnote{Binnen de
|
|
tijdspan van dit project is het niet mogelijk om op deze eisen te
|
|
testen buiten een simulatie of rekenmodel.} zodat de maximale snelheid
|
|
60 kilometer per uur of sneller is.}
|
|
|
|
60 km/h is de minimale snelheid voor op de snelweg\footnote{\href{https:/www.rijksoverheid.nl/onderwerpen/wegen/vraag-en-antwoord/wat-is-de-minimumsnelheid-voor-het-wegverkeer}{https://www.rijksoverheid.nl/onderwerpen/wegen/vraag-en-antwoord/wat-is-de-minimumsnelheid-voor-het-wegverkeer}}.
|
|
|
|
\textbf{REQ-A-5{[}SH{]}: Het voertuig is ontworpen\footnote{Binnen de
|
|
tijdspan van dit project is het niet mogelijk om op deze eisen te
|
|
testen buiten een simulatie of rekenmodel.} zodat die 150 kilometer
|
|
per uur of sneller kan rijden in ideale omstandigheden\footnote{De
|
|
ideale omstandigheden is op een vlakke rechte geasfalteerde weg zonder
|
|
wind, regen, hagel, sneeuw of andere weersomstandigheden die een
|
|
negatief gevolg op de test kunnen hebben.}.}
|
|
|
|
\textbf{REQ-A-6{[}SH{]}: Het voertuig is ontworpen\footnote{Binnen de
|
|
tijdspan van dit project is het niet mogelijk om op deze eisen te
|
|
testen buiten een simulatie of rekenmodel.} zodat die 100 kilometer
|
|
actieradius of meer kan bereiken in ideale omstandigheden\footnote{De
|
|
ideale omstandigheden is op een vlakke rechte geasfalteerde weg zonder
|
|
wind, regen, hagel, sneeuw of andere weersomstandigheden die een
|
|
negatief gevolg op de test kunnen hebben.}.}
|
|
|
|
De opdracht gever wil graag tussen Amsterdam van Rotterdam kunnen
|
|
rijden.
|
|
|
|
\textbf{REQ-A-7{[}CH{]}: Het voertuig is ontworpen\footnote{Binnen de
|
|
tijdspan van dit project is het niet mogelijk om op deze eisen te
|
|
testen buiten een simulatie of rekenmodel.} zodat die 250 kilometer
|
|
actieradius of meer kan bereiken in ideale omstandigheden\footnote{De
|
|
ideale omstandigheden is op een vlakke rechte geasfalteerde weg zonder
|
|
wind, regen, hagel, sneeuw of andere weersomstandigheden die een
|
|
negatief gevolg op de test kunnen hebben.}.}
|
|
|
|
\textbf{REQ-A-8{[}CH{]}: Het voertuig is bestand tegen corrosie}
|
|
|
|
\textbf{REQ-A-9{[}SH{]}: Het voertuig kan bedient worden door een
|
|
bestuureder van 130 kilogram of minder.}
|
|
|
|
\textbf{REQ-A-10{[}SH{]}: Het voertuig kan bediend worden door een
|
|
bestuurder met een lengte van 150 centimeter tot en met 200 centimeter.}
|
|
|
|
\begin{quote}
|
|
bron https://www.cbs.nl/nl-nl/maatwerk/2021/37/lichaamslengte 8\% van 19
|
|
jarige vrouwen zijn korter dan 160 10.2\% van 19 jarige mannen zijn
|
|
korter dan 175
|
|
\end{quote}
|
|
|
|
\textbf{REQ-A-11{[}MH{]}: De bestuurder van het voertuig zit volledig
|
|
binnen de afmetingen van het voertuig, met uitzondering van de hoogte.}
|
|
|
|
\textbf{REQ-A-12{[}SH{]}: Het zwaarte punt van het voertuig ligt 45
|
|
centimeter of minder boven de grond bij een vlakke grond.}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Wiel Assembly}\label{wiel-assembly}
|
|
|
|
\textbf{REQ-W-1{[}MH{]}: het voertuig heeft twee wielen.}
|
|
|
|
\textbf{REQ-W-2{[}MH{]}: het voertuig wordt aangedreven door beide
|
|
wielen.}
|
|
|
|
\textbf{REQ-W-3{[}SH{]}: het voertuig stuurt met beide wielen.}
|
|
|
|
\textbf{REQ-W-4{[}MH{]}: het voertuig wordt aangedreven door
|
|
elektromotoren.}
|
|
|
|
\textbf{REQ-W-5{[}SH{]}: het voertuig kan remmen doormiddel van
|
|
regenerative braking.}
|
|
|
|
\textbf{REQ-W-6{[}SH{]}: de aandrijving bevindt zich in het wiel.}
|
|
|
|
\textbf{REQ-W-7{[}MH{]}: het voertuig heeft een remvertraging van 6
|
|
meter per seconde per seconde of meer.}
|
|
|
|
\textbf{REQ-W-8{[}MH{]}: het voertuig heeft een draaicirkel van 6 meter
|
|
in diameter of minder.}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Stabilisatie}\label{stabilisatie}
|
|
|
|
\textbf{REQ-S-1{[}MH{]}: Het voertuig wordt actief gestabaliseerd}
|
|
|
|
\textbf{REQ-S-2{[}SH{]}: Het voertuig kan uit zichzelf weer recht komen
|
|
te zitten vanaf een roll hoek van 5 graden}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{VCU}\label{vcu}
|
|
|
|
\textbf{REQ-C-1{[}MH{]}: het voertuig wordt bestuurd doormiddel van een
|
|
elektronisch input, zoals een joystick, die bedienbaar is door de
|
|
bestuurder.}
|
|
|
|
\textbf{REQ-C-2{[}MH{]}: er is een noodstop aanwezig.}
|
|
|
|
\newpage
|
|
|
|
\subsection{Detailontwerp Stabilisatie}\label{detailontwerp-stabilisatie}
|
|
|
|
\subsubsection{Inleiding}\label{inleiding}
|
|
|
|
De SPC\footnote{Superlight Personal Carrier} is een twee wielig concept
|
|
eenpersoons voertuig. Zonder actieve stabilisatie gaat deze omvallen,
|
|
hiervoor is een reactie wiel ontworpen. Het aansturen van de motor voor
|
|
dit wiel is lastig, de volledige kracht moet gehaald worden vanaf
|
|
stilstand. Dit is alleen mogelijk met FOC\footnote{Field oriented
|
|
Controll}. Er zijn niet veel motor driver op de markt voor het
|
|
vermogen (4,5 KW, 45 Nm), hierom is er een op maat gemaakte motor driver
|
|
ontworpen.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Analyse}\label{analyse}
|
|
|
|
Tijn Stijders (student Automotive engineer) heeft de benodigde kracht
|
|
van \(45 Nm\) op een maximumsnelheid van \(1000 rpm\), dit is \(4.5 kW\)
|
|
berekent voor dit voertuig. Deze berekening is gebaseerd op
|
|
inschattingen van het gewicht van het voertuig, maar is nauwkeurig
|
|
genoeg om te gebruiken.
|
|
|
|
\paragraph{Motor Keuze}\label{motor-keuze}
|
|
|
|
Het is voor ons niet toegestaan om boven de \(50 V\) te testen op de RDM
|
|
wegens veiligheid. Er zijn erg weinig motoren beschikbaar die onder deze
|
|
spanning aan de eisen voldoet. Hierom wordt er niet op volledig vermogen
|
|
getest in dit project, om meer keuze vrijheid te krijgen voor een
|
|
geschikte motor.
|
|
|
|
De volgende motor is gekozen:
|
|
|
|
\href{https:/nl.aliexpress.com/item/1005006301690150.html?spm=a2g0o.productlist.main.2.6673ifiZifiZQm&algo_pvid=d6292651-bb7c-46b1-a220-6690a13ff967&algo_exp_id=d6292651-bb7c-46b1-a220-6690a13ff967-1&pdp_ext_f=\%7B\%22order\%22\%3A\%2214\%22\%2C\%22eval\%22\%3A\%221\%22\%7D&pdp_npi=4\%40dis\%21EUR\%21168.69\%21168.69\%21\%21\%211350.60\%211350.60\%21\%402103847817496360886601361e6a7e\%2112000036679171853\%21sea\%21NL\%210\%21ABX&curPageLogUid=wQDO26xezkrq&utparam-url=scene\%3Asearch\%7Cquery_from\%3A}{referentie
|
|
BLDC-motor}
|
|
|
|
De gegeven specificatie zijn:
|
|
|
|
\begin{longtable}[]{@{}ll@{}}
|
|
\toprule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
maximale spanning & 60V \\
|
|
nominaal vermogen & 3000 W \\
|
|
maximaal vermogen & 6000w \\
|
|
piek vermogen & 7000w-8000W \\
|
|
onbelaste snelheid & 3500 rpm \\
|
|
maximaal rendement & 90\% \\
|
|
maximaal koppel & 10 Nm \\
|
|
piekkoppel & 30 Nm \\
|
|
nettogewicht & 4,5 kg \\
|
|
max. stroombegrenzing & 150A \\
|
|
\end{longtable}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/f2dbe830-87ac-4a88-95da-f53177a114a1.png}
|
|
\caption{grafiek test data van de motor}
|
|
\end{figure}
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1754}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1228}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1228}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1228}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1053}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.0877}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1228}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.0877}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.0526}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
\(U\) (V)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
\(I\) (A)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
\(P_{in}\) (W)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
rpm
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
koppel (N.m)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
\(P_{out}\) (W)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
efficiëntie (\%)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
tijd (s)
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
onbelast & 47.49 & 3.666 & 174.1 & 3264 & 0.03 & 11.1 & 6.4 & 1 \\
|
|
test eindpunt\footnote{of wat er ook bedoeld wordt met ``测试结束点''} &
|
|
42.99 & 60.35 & 2594 & 2294 & 8.77 & 2108 & 81.3 & 71 \\
|
|
beoordeelde punten\footnote{of wat er ook bedoeld wordt met ``額定点''}
|
|
& 44.03 & 47.71 & 2101 & 2471 & 6.82 & 1800 & 84.1 & 62 \\
|
|
max. koppel & 42.99 & 60.35 & 2594 & 2294 & 8.77 & 2108 & 81.3 & 71 \\
|
|
max. \(P_{out}\) & 42.99 & 60.35 & 2594 & 2294 & 8.77 & 2108 & 81.3 &
|
|
71 \\
|
|
max. efficiëntie & 44.72 & 38.53 & 1723 & 2605 & 5.41 & 1476 & 85.7 &
|
|
55 \\
|
|
\end{longtable}
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.0741}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1296}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1296}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1296}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1296}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.1111}}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 16\tabcolsep) * \real{0.0741}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
编号(No.~)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
电压 (V)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
电流 (A)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
输入功率 (W)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
转速 (rpm)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
转矩 (Nm)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
输出功率 (W)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
效率 (\%)
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
|
|
时间 (s)
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
1 & 47.49 & 3.666 & 174.1 & 3264 & 0.03 & 11.1 & 6.4 & 1 \\
|
|
2 & 47.5 & 3.635 & 172.6 & 3262 & 0.03 & 11.14 & 6.5 & 4 \\
|
|
3 & 47.5 & 3.684 & 175 & 3259 & 0.03 & 11.44 & 6.5 & 7 \\
|
|
4 & 47.48 & 3.846 & 182.6 & 3256 & 0.05 & 18.52 & 10.1 & 10 \\
|
|
5 & 47.44 & 4.244 & 201.3 & 3246 & 0.12 & 42.5 & 21.1 & 13 \\
|
|
6 & 47.39 & 5.001 & 237 & 3233 & 0.23 & 79.21 & 33.4 & 16 \\
|
|
7 & 47.31 & 5.93 & 280.5 & 3214 & 0.37 & 126.7 & 45.2 & 19 \\
|
|
8 & 47.21 & 7.09 & 334.7 & 3186 & 0.55 & 184.5 & 55.1 & 22 \\
|
|
9 & 47.1 & 8.719 & 410.7 & 3154 & 0.77 & 254.5 & 62.0 & 25 \\
|
|
10 & 46.95 & 10.76 & 505.3 & 3114 & 1.04 & 341.9 & 67.7 & 28 \\
|
|
11 & 46.78 & 13.04 & 610.3 & 3076 & 1.35 & 437.9 & 71.8 & 31 \\
|
|
12 & 46.6 & 15.34 & 715 & 3040 & 1.71 & 547.4 & 76.6 & 34 \\
|
|
13 & 46.38 & 17.9 & 830.3 & 2980 & 2.12 & 662.2 & 79.8 & 37 \\
|
|
14 & 46.14 & 20.68 & 954.7 & 2917 & 2.57 & 786.9 & 82.4 & 40 \\
|
|
15 & 45.88 & 23.75 & 1090 & 2859 & 3.08 & 922.6 & 84.6 & 43 \\
|
|
16 & 45.61 & 27.55 & 1256 & 2801 & 3.6 & 1057 & 84.2 & 46 \\
|
|
17 & 45.32 & 31.6 & 1432 & 2750 & 4.16 & 1198 & 83.7 & 49 \\
|
|
18 & 45.04 & 34.65 & 1561 & 2676 & 4.75 & 1331 & 85.3 & 52 \\
|
|
19 & 44.72 & 38.53 & 1723 & 2605 & 5.41 & 1476 & 85.7 & 55 \\
|
|
20 & 44.38 & 43.17 & 1916 & 2539 & 6.08 & 1617 & 84.4 & 58 \\
|
|
21 & 44.03 & 47.71 & 2101 & 2471 & 6.82 & 1800 & 84.1 & 62 \\
|
|
22 & 43.67 & 52.13 & 2277 & 2415 & 7.48 & 1892 & 83.1 & 65 \\
|
|
23 & 43.33 & 56.41 & 2444 & 2357 & 8.13 & 2006 & 82.1 & 68 \\
|
|
24 & 42.99 & 60.35 & 2594 & 2294 & 8.77 & 2108 & 81.3 & 71 \\
|
|
\end{longtable}
|
|
|
|
Er missen wat gegevens om verder te kunnen. De hoeveelheid stroom bij
|
|
krachten groter dan \(8.77 Nm\) en hoelang de piek kracht volgehouden
|
|
kan worden.
|
|
|
|
\paragraph{koppel constante}\label{koppel-constante}
|
|
|
|
Om de stroom bij grotere krachten te berekenen is de koppel constante
|
|
nodig. Dit is de hoeveelheid koppel die per Ampère levert. In dit geval
|
|
kan deze berekend worden met de volgende formule.
|
|
|
|
\[
|
|
K_T = \frac{\tau}{I-I_{noload}}
|
|
\]
|
|
|
|
\(K_T\): koppel constante in Nm/A\\
|
|
\(\tau\): koppel in Nm\\
|
|
\(I\): de stroom nodig om de koppel te halen\\
|
|
\(I_{noload}\): de stroom die verbruikt wordt als de motor vrij draait
|
|
|
|
\(\tau\) en \(I\) is gegeven in de test data. De beste inschatting voor
|
|
\(I_{noload}\) is het gemiddelde van test 1, 2 en 3. Deze hebben
|
|
allemaal \(0.03Nm\) koppel, er is geen informatie hoe deze koppel
|
|
gemeten is. Om te controleren of dit correct is is een plot gemaakt voor
|
|
elke regel van de test data.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/4aa438b9-f968-4ed9-97f3-dfb934130f6d.png}
|
|
\caption{Plot van koppel constanten met 3.662 A voor I\_noload}
|
|
\end{figure}
|
|
|
|
x as: test nummer\\
|
|
y as: koppel constante\\
|
|
blauwe punten: berekende koppel constante vanuit de test data\\
|
|
oranje lijn: regressie van de berekende koppel constante
|
|
|
|
In deze grafiek is een duidelijke curve te zien aan het begin te zien.
|
|
Dit duidt er op dat \(I_{noload}\) te hoog is. Dit kan verklaard worden
|
|
als de meting is uitgevoerd wanneer de tegenmotor nog aangesloten was
|
|
maar uitgeschakeld. De \(0.03 Nm\) komt, als deze theorie correct is,
|
|
waarschijnlijk van de lagers van de tegenmotor. Waarschijnlijk mist ook
|
|
de weerstand van de lagers in de motor zelf.
|
|
|
|
Met \(3.52 A\) voor \(I_{noload}\) ziet de grafiek er als volgt uit.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/fcc86ab9-d051-411d-8379-9d4223c5f4a4.png}
|
|
\caption{Plot van koppel constanten met 3.52 A voor I\_noload}
|
|
\end{figure}
|
|
|
|
Dit is waarschijnlijk dichter bij de werkelijke \(I_{noload}\). Het is
|
|
hier ook te zien dat de koppel constante ongeveer \(0.15 Nm/A\) is.
|
|
|
|
\paragraph{Snelheidsconstante en Weerstand
|
|
Stator}\label{snelheidsconstante-en-weerstand-stator}
|
|
|
|
De snelheidsconstante is het aantal rpm dat de motor draait zonder
|
|
belasting per volt. Deze kan berekend worden met de volgende formule.
|
|
|
|
\[
|
|
K_v = \frac{\omega}{U-U_{th}}
|
|
\]
|
|
|
|
\(K_v\): de snelheidsconstante in rpm/v\\
|
|
\(\omega\): de snelheid dat de motor draait in rpm\\
|
|
\(U\): de spanning\\
|
|
\(U_{th}\): de spanning waarop de motor start met draaien
|
|
|
|
Onbelast draait met \(47.49V\) (\(U\)) draait de motor 3264 rpm
|
|
(\(\omega\)). \(U_{th}\) is niet gegeven, met de gegeven die er wel zijn
|
|
is de beste methode met de volgende formules.
|
|
|
|
\[
|
|
U=\frac{\omega}{K_v} + \frac{\tau}{K_T} R + U_{th}
|
|
\]
|
|
|
|
\[
|
|
I=\frac{\omega}{K_vR} + \frac{\tau}{K_T} + I_{noload}
|
|
\]
|
|
|
|
\(U\): de motor spanning\\
|
|
\(\omega\): de snelheid dat de motor draait in rpm\\
|
|
\(K_v\): de snelheidsconstante in rpm/v\\
|
|
\(\tau\): koppel in Nm\\
|
|
\(K_T\): koppel constante in Nm/A\\
|
|
\(R\): de weerstand van de stator\\
|
|
\(U_{th}\): de spanning waarop de motor start met draaien\\
|
|
\(I\): de stroom nodig om de koppel te halen\\
|
|
\(I_{noload}\): de stroom die verbruikt wordt als de motor vrij draait
|
|
|
|
Als \(\omega = 0\) gelt \(U = \frac{\tau}{K_T} R + U_{th}\) en
|
|
\(I = \frac{\tau}{K_T} + I_{noload} \Rightarrow IR = U = \frac{\tau}{K_T} R + I_{noload} R\)
|
|
dus \(U_{th} = R I_{noload}\)
|
|
|
|
Hiermee kan de volgende formule opgesteld worden
|
|
|
|
\[
|
|
U = \frac{\omega}{K_v} + \frac{\tau}{K_T} R + R I_{noload}
|
|
\]
|
|
|
|
\[
|
|
\Rightarrow RU=R\frac{\omega}{K_v} + R^2(\frac{\tau}{K_T} + I_{noload})
|
|
\]
|
|
|
|
\[
|
|
\Rightarrow \sqrt{\frac{U}{\frac{\omega}{K_v} (\frac{\tau}{K_T} + I_{noload})}} = R
|
|
\]
|
|
|
|
Met de methode gebruikt voor het berekenen van \(I_{noload}\) komen we
|
|
op de waardes \(K_v = 69rpm/V\), \(R = 170m\Omega\) en
|
|
\(U_{th} = 598mV\). Hieronder is de grafiek van alle spannignserrors met
|
|
deze waardes
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/99a21b34-2ff8-475c-8fef-296368d93bae.png}
|
|
\caption{Grafiek van spanningserror met berekende waarde}
|
|
\end{figure}
|
|
|
|
x as: test nummer\\
|
|
y as: spannigs error tussen test data en
|
|
\(U=\frac{\omega}{K_v} + \frac{\tau}{K_T} R + U_{th}\)
|
|
|
|
\paragraph{Koppel Tijdens het Draaien}\label{koppel-tijdens-het-draaien}
|
|
|
|
Om de koppel van \(45 Nm\) te kunnen halen op \(1000 rpm\) is een
|
|
gearbox nodig. We hebben alles al berekend om de direct de benodigde
|
|
spanning en stroom te krijgen van koppel en snelheid met de volgende
|
|
formule.
|
|
|
|
\[
|
|
U = \frac{\omega}{K_v} + \frac{\tau}{K_T} R + U_{th} = \frac{\omega}{69} + \frac{\tau}{0.15} \cdot 0.17 + 0.598
|
|
\]
|
|
|
|
\[
|
|
I = \frac{\tau}{K_T} + I_{noload} = \frac{\tau}{0.15} + 3.52
|
|
\]
|
|
|
|
\begin{longtable}[]{@{}
|
|
>{\raggedright\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1228}}
|
|
>{\raggedleft\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1579}}
|
|
>{\raggedleft\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1404}}
|
|
>{\raggedleft\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1579}}
|
|
>{\raggedleft\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1404}}
|
|
>{\raggedleft\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1579}}
|
|
>{\raggedleft\arraybackslash}p{(\columnwidth - 12\tabcolsep) * \real{0.1228}}@{}}
|
|
\toprule\noalign{}
|
|
\begin{minipage}[b]{\linewidth}\raggedright
|
|
gearbox
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft
|
|
snelheid
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft
|
|
koppel
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft
|
|
spanning
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft
|
|
stroom
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft
|
|
vermogen
|
|
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft
|
|
efficiëntie\footnote{op basis van 4.5 kW mechanisch vermogen dat
|
|
berekend is door automotive studenten}
|
|
\end{minipage} \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
1:1 & 1000 rpm & 45.0 Nm & 66.1 V & 303.5 A & 20060 W & 22.4 \% \\
|
|
1:2 & 2000 rpm & 22.5 Nm & 55.1 V & 153.5 A & 8456 W & 53.2 \% \\
|
|
1:3 & 3000 rpm & 15.0 Nm & 61.1 V & 103.5 A & 6323 W & 71.2 \% \\
|
|
1:4 & 4000 rpm & 11.3 Nm & 71.3 V & 78.5 A & 5600 W & 80.4 \% \\
|
|
1:5 & 5000 rpm & 9.0 Nm & 83.3 V & 63.5 A & 5289 W & 85.1 \% \\
|
|
\end{longtable}
|
|
|
|
Met een 1:4 gearbox kan een maximale snelheid van 875 rpm halen (de
|
|
motor kan maximaal 3500 rpm draaien). Dit is iets onder de eisen, maar
|
|
een betere motor hebben wij niet gevonden voor een redelijke prijs.
|
|
|
|
voor \(3500rpm\) met \(11.3 Nm\) is een spanning nodig van \(64V\).
|
|
|
|
\begin{quote}
|
|
Er is zat een grote fout in eerdere berekeningen. Terug regekent was dat
|
|
voor 25 Nm i.p.v. 45 Nm. Dan is er maar ongeveer 45 A met de 1:4 gearbox
|
|
nodig. De motor driver is dus ontworpen voor 50 A (inclusief een marge)
|
|
i.p.v. de 80 A die het eigenlijk had moeten zijn. Volgende keer de
|
|
berekeningen beter controleren. Verder in dit document zal de \(50 A\)
|
|
gebruik worden
|
|
\end{quote}
|
|
|
|
\paragraph{Specificaties}\label{specificaties}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
De drijver moet minimaal \(72 V\) aan kunnen, met voorkeur van
|
|
\(120 V\) \footnote{Er wordt tot \(50 V\) getest, deze waardes word
|
|
het voor ontworpen, maar niet tot de limiet getest.}
|
|
\item
|
|
de drijver moet minimaal \(50 A\) continu kunnen leveren (wat
|
|
eigenlijk \(80 A\) had moeten zijn) \footnote{Er wordt tot \(50 V\)
|
|
getest, deze waardes word het voor ontworpen, maar niet tot de
|
|
limiet getest.}
|
|
\item
|
|
maakt gebruik van Field Orented Controll, om het volledige vermogen te
|
|
kunnen halen vanaf stilstand.
|
|
\item
|
|
De hoek van het voertuig moet gemeten worden.
|
|
\item
|
|
Er is een regel loop tussen de hoek sensor en de kracht van de motor.
|
|
\item
|
|
Er is een SPI-client connector waarmee verschillende instellingen
|
|
ingesteld mee kan worden, waaronder het maximaal vermogen.
|
|
\end{itemize}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Ontwerp}\label{ontwerp}
|
|
|
|
\paragraph{Componenten}\label{componenten}
|
|
|
|
\subparagraph{FET's}\label{fets}
|
|
|
|
MOSFET's was de eerste waar naar gezocht is. Van bijna alle FET's is de
|
|
maximale stroom in de datasheet is niet realistisch haalbaar, dit
|
|
vereist veel koeling dat erg lastig is te realiseren. Dit maakt het
|
|
vinden van een geschikte MOSFET lastig, de meeste kunnen het niet aan
|
|
alleen. Het is mogelijk om meerde parallel te zetten, maar dit vereist
|
|
goede thermisch beheer.
|
|
|
|
Een andere optie is GaNFET's, hier hebben we een fabrikant (Efficiënt
|
|
Power Converters; EPC) gevonden die veel redelijkere maximale stroom
|
|
geven. De EPC3207\footnote{\href{https:/epc-co.com/epc/products/gan-fets-and-ics/epc2307}{https://epc-co.com/epc/products/gan-fets-and-ics/epc2307}}
|
|
lijkt met meest geschikt voor dit project. Deze kan \(62A\) aan volgens
|
|
de datasheet, en verliest ongeveer \(15W\) bij \(50A\). Dit vermogen is
|
|
goed te koelen met een koelblok.
|
|
|
|
\subparagraph{Gate Driver}\label{gate-driver}
|
|
|
|
EPC geeft een lijst aan aangeraden gate drivers IC's\footnote{\href{https:/epc-co.com/epc/design-support/gan-first-time-right/drivers-and-controllers}{https://epc-co.com/epc/design-support/gan-first-time-right/drivers-and-controllers}}.
|
|
Er is gekozen voor de NCP51820 van On-Semi uit deze lijst. Deze kan hoge
|
|
spanningen aan, de schakeling er om heen is makkelijk te maken door een
|
|
aparte source en sync pinnen, en is goed verkrijgbaar voor een goede
|
|
prijs.
|
|
|
|
Verliezen in de FET
|
|
|
|
De EPC2307 kan tot \(62A\) continu schakelen volgens EPC.
|
|
|
|
\[
|
|
P_{loss} = I^2R_{DS(on)} + P_{loss,sw}
|
|
\]
|
|
|
|
\(P_{loss,sw}\): schakel verliezen
|
|
|
|
\(R_{DS(on)} = 10m\Omega\) dus bij \(50A\):
|
|
|
|
\[
|
|
P_{loss} = 50^2 \cdot 0.01 + P_{loss,sw} = 25W + P_{loss,sw}
|
|
\]
|
|
|
|
\(P_{loss,sw}\) is voor GaNFET's erg laag, in de simulatie - die
|
|
gebaseerd is op de voorbeeld simulatie van EPC - schakelt die binnen
|
|
\(4ns\). Als we vanuit gaan van linieer schakelgedrag met liniare
|
|
oplopende stroom (wat tot veel hogeve verliezen lijd dan de
|
|
werkelijkheid)
|
|
|
|
\[
|
|
P_{loss,sw} = \frac{UIt}{2} \cdot 2f_s
|
|
\]
|
|
|
|
\(U\): voedings spanning \(I\): stroom \(t\): schakeltijd \(f_s\): de
|
|
schakel frequentie
|
|
|
|
Als je dit invult:
|
|
|
|
\(U = 120V\), \(I = 50A\), \(t = 4 ns\), \(f_s = 50 kHz\) dan is
|
|
\(P_{loss,sw} = 1.2 W\).
|
|
|
|
Dit geeft een totaal van \(P_{loss} = 16.2W\). Dit is berekent met een
|
|
ruime schakelverlies met bijna \(100\%\) PWM. De werkelijkheid zal het
|
|
minder zijn.
|
|
|
|
\subparagraph{Stroom Meting}\label{stroom-meting}
|
|
|
|
Heel eerlijk, deze was ik een beetje vergeten, dus heb snel de ACS724
|
|
toegevoegd. Nu hopen dat die de piek stromen aan kan.
|
|
|
|
\subparagraph{Hoek Sensor}\label{hoek-sensor}
|
|
|
|
Het meten van de hoek hebben we drie manieren voor gevonden:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
afstand sensoren naar de grond
|
|
\end{itemize}
|
|
|
|
Als de grond wat scheef is zal het reactiewiel het voertuig scheef (ten
|
|
opzichte van zwaartekracht), waardoor het wiel steeds sneller gaat
|
|
draaien tot die de maximale snelheid bereikt, dan valt het voertuig om.
|
|
Niet heel handig dus.
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
MEMS-Gyroscoop
|
|
\end{itemize}
|
|
|
|
Meet direct de hoek en is snel. Nadeel is als deze afwijkt veranderd de
|
|
nul positie en gaat die balanceren op het verkeerde punt.
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
MEMS-Versnellingsmeter
|
|
\end{itemize}
|
|
|
|
Meet de zwaartekracht direct, dus verliest de nul positie niet, maar
|
|
wordt verstoord bij een stoot.
|
|
|
|
De beste optie is een combinatie van een MEMS-gyroscoop en een
|
|
MEMS-versnellingsmeter. De versnellingsmeter zorgt er voor dat de nul
|
|
positie niet verloren gaat. En de gyroscoop voor nauwkeurige meting van
|
|
de hoek. Deze combinatie wordt ook een IMU (Inertial measurement unit)
|
|
genoemd.
|
|
|
|
Uiteindelijk is de M5Stack IMU Pro Mini gekozen, dit is een module in
|
|
behuizing met een connector. Dit is erg handig, omdat deze goed
|
|
schokvrij bevestigt moet worden. Er zit ook nog een kompas en luchtdruk
|
|
sensor op, maar er zijn geen plannen om deze te gebruiken.
|
|
|
|
In deze module zit de BMI270\footnote{\href{https:/www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/}{https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/}}
|
|
van Bosch. De I\textsuperscript{2}C bus van deze IC is direct verbonden
|
|
met de connector naar buiten toe.
|
|
|
|
\subparagraph{Microcontroller}\label{microcontroller}
|
|
|
|
Er zijn niet veel vereisten voor de microcontroller, bijna alle
|
|
microcontrollers hebben SPI, I2C interfaces en een ADC voor de stroom
|
|
meting. Het belangrijkste is dat die genoeg rekenkracht heeft voor de
|
|
FOC berekeningen.
|
|
|
|
Uiteindelijk is gekozen voor een RP2040 van Raspberry Pi, deze heeft
|
|
twee ARM Cortex M0+ cores die tot 150 MHz aan kunnen. Het grote voordeel
|
|
van deze microcontroller is dat ik al een ontwerp klaar heb liggen met
|
|
alle benodigde componenten.
|
|
|
|
\subparagraph{Encoder}\label{encoder}
|
|
|
|
Voor FOC moet de positie van polen (magneten) in de rotor ten opzichte
|
|
van de slots (elektro magneten) in de rotor. Hoe nauwkeuriger dit is hoe
|
|
effectiever de FOC is om met maximale vermogen uit de motor te kunnen
|
|
halen.
|
|
|
|
Veel motoren worden geleverd met drie hall-effect sensoren die deze
|
|
relatieve positie direct meten, allen zijn deze niet heel nauwkeurig op
|
|
lage snelheden.
|
|
|
|
Een Relatieve rotary encoder, zoals een optische die sloten telt in een
|
|
schrijf die gemonteerd is aan de rotor, kan veel nauwkeuriger. Het
|
|
nadeel is dat deze gekalibreerd moet worden elke keer als de stroom er
|
|
afgaat.
|
|
|
|
Een absolute rotary encoder hoeft maar 1 keer gekalibreerd te worden. De
|
|
meeste. Er zijn twee soorten absolute encoders die veel gebruikt worden,
|
|
een die om een as gemonteerd worden (zoals de AMT212B-V\footnote{\href{https:/www.sameskydevices.com/product/motion-and-control/rotary-encoders/absolute/modular/amt212b-v}{https://www.sameskydevices.com/product/motion-and-control/rotary-encoders/absolute/modular/amt212b-v}})
|
|
of een die de oriëntatie van een magneet meet (zoals de
|
|
AS5600\footnote{\href{https:/ams-osram.com/products/sensor-solutions/position-sensors/ams-as5600-position-sensor}{https://ams-osram.com/products/sensor-solutions/position-sensors/ams-as5600-position-sensor}}).
|
|
|
|
Er is gekozen voor een breakout board te kopen van de AS5600, deze is
|
|
het makkelijkst de monteren en goed verkrijgbaar van de absolute
|
|
encoders.
|
|
|
|
\paragraph{Schema}\label{schema}
|
|
|
|
Het schema is gemaakt in KiCad
|
|
|
|
\subparagraph{Half-bridge}\label{half-bridge}
|
|
|
|
Voor een BLDC-motor driver zijn drie half-bridges nodig. Bij een ontwerp
|
|
van een half bridge zijn twee belangrijke dingen, naast component keuze.
|
|
De gate driver en de power filtering.
|
|
|
|
Power Filtering
|
|
|
|
In dit ontwerp worden GaNFET's gebruikt, deze schadelijk binnen enkele
|
|
nanosecondes. Eleke hoeveelheid aan inductie vanaf de voeding vertraagt
|
|
deze snelheid, en is een antenne voor de honderden MHz dat door deze
|
|
schakelsnelheid gegenereerd wordt. Er moeten dus condensatoren zo dicht
|
|
mogelijk bij de FET's om de inductie zo minimaal mogelijk te maken. Deze
|
|
moeten ook keramische zijn door de lage ESR. Een nadeel is dat deze voor
|
|
veel motor drijvers eigenlijk te groot zijn waardoor de afstand tussen
|
|
de condensator en FET's te groot wordt als de filtering in 1 stage gaat.
|
|
|
|
Om te berekenen hoeveel stages nodig zijn, moet eerste de layout gemaakt
|
|
worden (hier meer over in het hooftstuk PCB). Bij de layout is het geluk
|
|
om \(7.2 \mu F\) (5 x \(1\mu F\) en 1 x \(2.2\mu F\)) in de eerste stage
|
|
te plaatsen.
|
|
|
|
\begin{quote}
|
|
TODO: ref to hooftstuk pcb needed!
|
|
\end{quote}
|
|
|
|
Na veel experimenteren in een simulatie in LTspice lijkt \(7.2\mu F\)
|
|
wel weinig, het zal een stuk beter zijn als er \(20\mu F\) zal passen.
|
|
|
|
De tweede stage is wat klein gehouden, om in inschakelstroom beperkt te
|
|
houden. Dit betekent wel dat er erg dikke kabels nodig zijn om het
|
|
volledige vermogen aan te kunnen.
|
|
|
|
Helaas is de simulatie gecrasht en het bestand corrupt geraakt. Het is
|
|
hierna niet meer gelukt om de simulatie stabiel opnieuw op te bouwen
|
|
(vermogens van honderden KW bij een kleine aanpassing). Onder staat is
|
|
de schakeling van de opnieuw opgebouwde schakeling die dus niet werkt.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/7f783ce7-ee05-4193-844f-240cbec98bce.png}
|
|
\caption{Schakeling simulatie power filter}
|
|
\end{figure}
|
|
|
|
C2 zijn de keramische condensatoren vlak bij de FET's (eerste stage), C3
|
|
en C1 zijn solid polymer aluminum capacitors voor de tweede stage. L4 is
|
|
een ingeschatte inductie van de verbinding tussen de condensatoren en L5
|
|
is de inductie van de kabels vanaf de accu.
|
|
|
|
De condensator waardes zijn een stuk groter dan op het evaluatiebord.
|
|
Hier zitten 7 condensatoren van \(22nF\) op (\(125nF\) totaal). Ik
|
|
vermoed dat mijn simulaties wat pessimistischer zijn dat de
|
|
werkelijkheid.
|
|
|
|
Gate Driver
|
|
|
|
Het simulatiemodel van de gate driver IC is alleen beschikbaar voor
|
|
Simplus. Het is mij niet gelukt om de gratis versie van deze software
|
|
werkend te krijgen of het model te converteren naar een ander format.
|
|
Dus het berekenen of simuleren voor gate driver gaat niet lukken. Dus ik
|
|
heb een referentieontwerp van EPC overgenomen met een \(0\Omega\)
|
|
weerstand bij de sync (hier is wel een \(0\Omega\) jumper gebruikt zodat
|
|
die later vervangen kan worden met een weerstand) en \(0.39\Omega\) voor
|
|
de source.
|
|
|
|
\subparagraph{Microcontroller}\label{microcontroller-1}
|
|
|
|
De microcontroller schakeling is een kopie van een hobby project, deze
|
|
schakeling is al getest. Er is niks veranderd aan dit ontwerp voor dit
|
|
project, behalve dat er andere io pinnen gebruikt worden.
|
|
|
|
\paragraph{PCB}\label{pcb}
|
|
|
|
\subparagraph{Stroom Distributie}\label{stroom-distributie}
|
|
|
|
Vijftig ampère is erg veel voor een PCB.
|
|
|
|
\begin{quote}
|
|
KiCad Calculator Tools:\\
|
|
``The calculations are valid for currents up to \(35 A\) (external) or
|
|
\(17.5 A\) (internal), temperature rises up to \(100^\circ C\), and
|
|
widths of up to 400 mils (10mm)''
|
|
\end{quote}
|
|
|
|
Deze tool heeft voor \(35A\), \(150mm\) spoor lengte en
|
|
\(10^\circ C\Delta\) met \(70\mu m\) koper een spoor breedte van
|
|
\(20.2mm\). De spoorbreedte is al buiten het berijk van deze tool. Als
|
|
we toch de stroom verandert naar \(50A\) wordt dit \(33.1mm\).
|
|
|
|
Met dezelfde instellingen voor \(50A\) in de calculator van DigiKey
|
|
keeft die dezelfde resultatie. En die van AdvancedPCB, PCBWay en OMNI
|
|
calculator. Of ze gebruiken allemaal dezelfde beperkte formule of het
|
|
klopt redelijk.
|
|
|
|
Er is gekozen om een spoor breedte van \(40mm\) te gebruiken om iets
|
|
marge te hebben als deze rekenmachines afwijken. Dit is erg breed, dus
|
|
dit verdeeld gedaan over een buiten laag en een binnen laag plus nog een
|
|
extra marge omdat binnenlagen minder goed koelen. De lagen zijn om en om
|
|
gedaan, zodat het beetje capaciteit tussen deze lagen de inductie ietsje
|
|
compenseert.
|
|
|
|
\subparagraph{Half-bridges}\label{half-bridges}
|
|
|
|
Gelukkig heeft EPC (de fabrikant van de FET's) een aantal aangeraden
|
|
layouts.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/e4a587e6-798b-4fed-8518-9574473bdf79.png}
|
|
\caption{Aangeraden PCB layout van EPC}
|
|
\end{figure}
|
|
|
|
Bij dit project worden de high-side (HS) en low-side (LS) FET's ongeveer
|
|
hetzelfde belast, dus ze hebben dezelfde koeling nodig. Dus er is voor
|
|
de middelste optie gekozen.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics{../../latex/images/43a7f9a1-a3d6-4f2b-844e-be65623e1b12.png}
|
|
\caption{3D render van een van de half-brdige layouts}
|
|
\end{figure}
|
|
|
|
Hierboven is de layout te zien. De rij condensatoren in het midden
|
|
tussen de twee FET's (met veel vias er omheen). Rechts daar van de
|
|
SOIC-8 is de stroom meting IC en rechts onderin de gate driver.
|
|
|
|
De uitgang van de FET's voor de stroom meet IC is er ook in de binnen
|
|
laag direct onder de top laat (de render is van de top laag). Deze zit
|
|
er om de stroom loop zo'n klein mogelijk oppervlak te geven met de
|
|
condensatoren, door er onder door te gaan. Hierom stoppen de vias van de
|
|
voeding ook zo abrupt.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Productie}\label{productie}
|
|
|
|
De PCB en stencel zijn gepoduceert door JLCPCB en de componenten zijn
|
|
gelaats 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 opnieuwe met de hand erop gelaast. De
|
|
microcontroller had teveel tin op de groundpad aan de onderkant,
|
|
waardoor deze omhoog kwam en de pinnen aan de zijkant boven de PCB
|
|
zweefde onder contact.
|
|
|
|
\newpage
|
|
|
|
\subsection{Softwareontwerp Sabilisatie}\label{softwareontwerp-sabilisatie}
|
|
|
|
\subsubsection{FoC library}\label{foc-library}
|
|
|
|
In C zijn er niet veel librarys voor FOC, de enige goede library die we
|
|
hebben gevonden is \href{https:/www.simplefoc.com/}{SimpleFOCproject}.
|
|
Dit komt er in debuurd van een framework. In de video van de homepagina
|
|
worden een aantal gemeenschaps projecten laten zien, waarvan meerdere
|
|
een reactiewiel voor sabilisatie laat zien. Dit belooft veel goeds, toch
|
|
is er gekozen om een andere library te kiezen. Het goed implementeren
|
|
van een regel kring met de IMU vraagd veel kennis van hoe dit
|
|
`framework' werkt. Onze implementatie is niet exact het zelfde als die
|
|
van deze gemeenschaps projecten. Wij hebben dus de kennis nogdig om deze
|
|
code aan te passen.
|
|
|
|
Er is gekozen om te werken met de \href{https:/lib.rs/crates/foc}{Rust
|
|
library FOC}. Deze library is alleen een implementatie voor het FOC
|
|
algaritme, wadoor er meer flexibilitijd is hoe het systeem verder werkt.
|
|
Dit kan dus ook verder geoptimaliseerd worden en meer ge configureerd.
|
|
dat tweede is de grootste reden warom voor deze library is gekozen. Er
|
|
is behoefte aan een systeem dat aangepast kan worden naar wat later
|
|
beter blijkt te zijn.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Rust op RP2040}\label{rust-op-rp2040}
|
|
|
|
Rust voor microcontrollers is nog in een sooft alpha versie. Het werkt
|
|
voor het grootste deel, maar hier en daar zijn nog wat beperkingen.
|
|
Vrijwel al deze beperkingen hebben een workaround. Het groote voordeel
|
|
is dat er een `officele' standaard is voor het HAL interface\footnote{embeded-hal:
|
|
\href{https:/docs.rs/embedded-hal}{https://docs.rs/embedded-hal}}. Dit
|
|
maakt zorgd er voor dat er veel librarys voor IC's beschikbaar zijn die
|
|
gewoon werken.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Async}\label{async}
|
|
|
|
De standaard async funtionalitijd in rust werkt nog niet voor
|
|
microcontrollers\footnote{\href{https:/www.youtube.com/watch?v=H7NtzyP9q8E}{https://www.youtube.com/watch?v=H7NtzyP9q8E}}.
|
|
Hier zijn wel alternative librarys voor\footnote{\href{https:/arewertosyet.com/}{https://arewertosyet.com/}},
|
|
Embassy\footnote{\href{https:/embassy.dev/}{https://embassy.dev/}} en
|
|
RTIC\footnote{\href{https:/rtic.rs}{https://rtic.rs}} zijn de twee die
|
|
het meest genoemd worden. Embassy ziet er wat eenvoudiger uit als RTIC,
|
|
daarvoor is ook gekozen om te gebruiken.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{AS5600}\label{as5600}
|
|
|
|
Er wordt gebruik gemaakt de AS5600 library van Rafael
|
|
Bachmann\footnote{\href{https:/github.com/barafael/as5600-rs}{https://github.com/barafael/as5600-rs}}.
|
|
|
|
\newpage
|
|
|
|
\subsubsection{}\label{section}
|
|
|
|
\newpage
|
|
|
|
\subsubsection{Unit Testen Stabilisatie}\label{unit-testen-stabilisatie}
|
|
|
|
\paragraph{Voedingen}\label{voedingen}
|
|
|
|
\subparagraph{Benodigdheden}\label{benodigdheden}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
12V voeding
|
|
\end{itemize}
|
|
|
|
\subparagraph{Procedure}\label{procedure}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
snel de voeding in op 12V met een stroom berensing van 50 mA
|
|
\item
|
|
sluit de 12V voeding aan op de 12V en GND ingnangen op de driver
|
|
\item
|
|
meet de uitgangen van de twee voedingen, vul de tabel hieronder in
|
|
\end{enumerate}
|
|
|
|
\begin{longtable}[]{@{}lrr@{}}
|
|
\toprule\noalign{}
|
|
& \(5V\) & \(12V\) \\
|
|
\midrule\noalign{}
|
|
\endhead
|
|
\bottomrule\noalign{}
|
|
\endlastfoot
|
|
minimaal & \(4.5V\) & \(11.5V\) \\
|
|
maximaal & \(5.5V\) & \(12.5V\) \\
|
|
gemeeten & & \\
|
|
\end{longtable}
|
|
|
|
Geslaagd:
|
|
|
|
opmergingen:
|
|
|
|
\paragraph{Microcontroller}\label{microcontroller}
|
|
|
|
\subparagraph{Benodigdheden}\label{benodigdheden-1}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
12V voeding als de voedingen werken, anders met een 5V en 3.3v voeding
|
|
\item
|
|
computer met Arduino IDE geinstaleerd
|
|
\item
|
|
USB B kabel naar de computer
|
|
\item
|
|
ledje met bijhoren de weerstand voor 3.3V
|
|
\end{itemize}
|
|
|
|
\subparagraph{Procedure}\label{procedure-1}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
sluit een ledje aan op een van de GPIO pinnen
|
|
\item
|
|
snel de voeding in op 12V met een stroom berensing van 150 mA
|
|
\item
|
|
sluit de 12V voeding aan op de 12V en GND ingnangen op de driver
|
|
\item
|
|
sluit de USB kabel aan op de computer (dit is veilig omdat de USB
|
|
alleen verbonden is met ground, de V+ is floating)
|
|
\item
|
|
upload een blinky voorbeeld progamma met de GPIO ingesteld van de led
|
|
\item
|
|
bekijk of het lidje knipperd
|
|
\end{enumerate}
|
|
|
|
Geslaagd:
|
|
|
|
opmergingen:
|
|
|
|
\paragraph{Half-brug}\label{half-brug}
|
|
|
|
\subparagraph{Benodigdheden}\label{benodigdheden-2}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
als de microcontoller werkt:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
12V voeding als de voedingen werken, anders met een 5V en 3.3v
|
|
voeding
|
|
\item
|
|
30V voor V Motor
|
|
\item
|
|
computer met Arduino IDE geinstaleerd
|
|
\item
|
|
USB B kabel naar de computer
|
|
\item
|
|
ocsiloscoop
|
|
\end{itemize}
|
|
\item
|
|
zo niet:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
10V voor V motor
|
|
\item
|
|
signaal generator met twee kanalen
|
|
\item
|
|
ocsioscoop
|
|
\end{itemize}
|
|
\end{itemize}
|
|
|
|
\subparagraph{procedure}\label{procedure-2}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
sluit de ociloscoop aan op een van de uitgangen van de drijver (er
|
|
komt 30V op te staan, beruik de juiste probe; geen juiste probe bij de
|
|
hand, zelt de voeding voor V motor wa lager)
|
|
\item
|
|
snel de voeding in op 12V met een stroom berensing van 150 mA
|
|
\item
|
|
sluit de 12V voeding aan op de 12V en GND ingnangen op de driver
|
|
\item
|
|
sluit de USB kabel aan op de computer (dit is veilig omdat de USB
|
|
alleen verbonden is met ground, de V+ is floating)
|
|
\item
|
|
upload een test progamma die de PWM aansuurt voor de FET's
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
de PWM per half bridge zijn aangesloten op de a en b uitganen van 1
|
|
timer per half brug. zorg dat een van de uitput geinverteerd is en
|
|
de twee vergeleijk waardes zo zijn zodat er een korte dead time is.
|
|
ze mogen nooit tegerlijk hoog zijn!
|
|
\end{itemize}
|
|
\item
|
|
bekijk het signaal op de osciloscoop
|
|
\item
|
|
herhaal de test voor alle drie de half bruggen
|
|
\end{enumerate}
|
|
|
|
resultaat:
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
brug a:
|
|
\item
|
|
brug b:
|
|
\item
|
|
brug c:
|
|
\end{itemize}
|
|
|
|
opmerkingen:
|
|
|
|
\paragraph{IMU}\label{imu}
|
|
|
|
\subparagraph{benodigdheden}\label{benodigdheden-3}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
een microcontroller met I2C (kan de motoro driver zelf zijn)
|
|
\item
|
|
computer met Arduino IDE geinstaleerd
|
|
\item
|
|
USB B kabel naar de computer
|
|
\end{itemize}
|
|
|
|
\subparagraph{procedure}\label{procedure-3}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
sluit de IMU aan op de motor driver
|
|
\item
|
|
snel de voeding in op 12V met een stroom berensing van 150 mA
|
|
\item
|
|
sluit de 12V voeding aan op de 12V en GND ingnangen op de driver
|
|
\item
|
|
sluit de USB kabel aan op de computer (dit is veilig omdat de USB
|
|
alleen verbonden is met ground, de V+ is floating)
|
|
\item
|
|
upload een blinky voorbeeld progamma met de GPIO ingesteld van de led
|
|
\item
|
|
bekijk de serial plotter terwel je de IMU draait.
|
|
\end{enumerate}
|
|
|
|
Geslaagd:
|
|
|
|
opmergingen:
|
|
|
|
\paragraph{stroom meting}\label{stroom-meting}
|
|
|
|
\subparagraph{benodigdheden}\label{benodigdheden-4}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
12V voeding (of 5V bij beperking van beschikbaare voedingen)
|
|
\item
|
|
voeding die 50A kan leveren (of zoveel mogenlijk) voor V motor
|
|
\item
|
|
bij voorkeur een load die de \(50A_{DC}\) kan op nemen, ander kan de
|
|
uitgang korgesloten worden als de voeding dat toestaat.
|
|
\item
|
|
multimeter
|
|
\item
|
|
computer met Arduino IDE geinstaleerd
|
|
\item
|
|
USB B kabel naar de computer
|
|
\end{itemize}
|
|
|
|
\subparagraph{procedure}\label{procedure-4}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
sluit de load aan op deen van de uitgangen van de motor driver
|
|
\item
|
|
snel de voeding in op 12V met een stroom berensing van 150 mA
|
|
\item
|
|
sluit de 12V voeding aan op de 12V en GND ingnangen op de driver
|
|
\item
|
|
sluit de USB kabel aan op de computer (dit is veilig omdat de USB
|
|
alleen verbonden is met ground, de V+ is floating)
|
|
\item
|
|
upload een programma die alle high side fet's dicht zet en de low side
|
|
fet's open
|
|
\item
|
|
sluit de voeding voor V motor aan
|
|
\item
|
|
meet uitgang van de stroom meeting
|
|
\item
|
|
zet de v motor voeding uit en verlaats de load naar een andere uitgang
|
|
\item
|
|
zet de voeding weer aan en meet de stroom meting
|
|
\item
|
|
herhaal dit voor de laaste uitgang
|
|
\end{enumerate}
|
|
|
|
TODO: add meet table
|
|
|
|
Geslaagd:
|
|
|
|
opmergingen:
|
|
|
|
\paragraph{encoder}\label{encoder}
|
|
|
|
\subparagraph{benodigdheden}\label{benodigdheden-5}
|
|
|
|
\begin{itemize}
|
|
\tightlist
|
|
\item
|
|
een microcontroller met I2C (kan de motoro driver zelf zijn)
|
|
\item
|
|
computer met Arduino IDE geinstaleerd
|
|
\item
|
|
USB B kabel naar de computer
|
|
\end{itemize}
|
|
|
|
\subparagraph{procedure}\label{procedure-5}
|
|
|
|
\begin{enumerate}
|
|
\def\labelenumi{\arabic{enumi}.}
|
|
\tightlist
|
|
\item
|
|
sluit de Encoder aan op de motor driver
|
|
\item
|
|
snel de voeding in op 12V met een stroom berensing van 150 mA
|
|
\item
|
|
sluit de 12V voeding aan op de 12V en GND ingnangen op de driver
|
|
\item
|
|
sluit de USB kabel aan op de computer (dit is veilig omdat de USB
|
|
alleen verbonden is met ground, de V+ is floating)
|
|
\item
|
|
upload een voorbeeld progamma voor de encoder.
|
|
\item
|
|
bekijk de serial plotter terwel je de magneer van de encoder draait
|
|
\end{enumerate}
|
|
|
|
Geslaagd:
|
|
|
|
opmergingen:
|
|
|
|
|
|
|
|
|
|
\end{document} |