All checks were successful
generate pdf files / build (push) Successful in 2m34s
801 lines
29 KiB
Plaintext
801 lines
29 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 Detailontwerp Stabilisatie \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 Detailontwerp Stabilisatie}
|
|
\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}
|
|
|
|
|
|
|
|
|
|
\tableofcontents
|
|
|
|
\newpage
|
|
|
|
\section{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
|
|
|
|
\section{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.
|
|
|
|
\subsection{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.
|
|
|
|
\subsection{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.
|
|
|
|
\subsection{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}\)
|
|
|
|
\subsection{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}
|
|
|
|
\subsection{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
|
|
|
|
\section{Ontwerp}\label{ontwerp}
|
|
|
|
\subsection{Componenten}\label{componenten}
|
|
|
|
\subsubsection{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{\url{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.
|
|
|
|
\subsubsection{Gate Driver}\label{gate-driver}
|
|
|
|
EPC geeft een lijst aan aangeraden gate drivers IC's\footnote{\url{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.
|
|
|
|
\paragraph{Verliezen in de FET}\label{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.
|
|
|
|
\subsubsection{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.
|
|
|
|
\subsubsection{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{\url{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.
|
|
|
|
\subsubsection{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.
|
|
|
|
\subsubsection{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{\url{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{\url{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.
|
|
|
|
\subsection{Schema}\label{schema}
|
|
|
|
Het schema is gemaakt in KiCad
|
|
|
|
\subsubsection{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.
|
|
|
|
\paragraph{Power Filtering}\label{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.
|
|
|
|
\paragraph{Gate Driver}\label{gate-driver-1}
|
|
|
|
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.
|
|
|
|
\subsubsection{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.
|
|
|
|
\subsection{PCB}\label{pcb}
|
|
|
|
\subsubsection{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.
|
|
|
|
\subsubsection{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
|
|
|
|
\section{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.
|
|
|
|
|
|
|
|
|
|
\end{document} |