Merge branch 'main' of https://git.etud.insa-toulouse.fr/taban/PIR_MadMax
This commit is contained in:
commit
231b47a6cb
5 changed files with 374 additions and 286 deletions
|
|
@ -21,6 +21,7 @@
|
|||
\citation{mohammd_taher_new_2021}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {I}Introduction}{1}{section.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {II}Related Work}{1}{section.2}\protected@file@percent }
|
||||
\newlabel{sec:relatedwork}{{II}{1}{Related Work}{section.2}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {II-A}}Modeling of BLDC Motor}{1}{subsection.2.1}\protected@file@percent }
|
||||
\citation{gieras_modern_2023}
|
||||
\citation{gieras_modern_2023,gasc_conception_2004}
|
||||
|
|
@ -46,42 +47,55 @@
|
|||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {II-D}4}Dynamic Response}{2}{subsubsection.2.4.4}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {III}Research gap}{2}{section.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {IV}Aim and Research Objectives}{2}{section.4}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {V}Hardware-Based Six-Step Commutation Controller}{2}{section.5}\protected@file@percent }
|
||||
\newlabel{sec:sixstep}{{V}{2}{Hardware-Based Six-Step Commutation Controller}{section.5}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {VI}STM32-Based Field-Oriented Control Motor Drive}{2}{section.6}\protected@file@percent }
|
||||
\newlabel{sec:foc}{{VI}{2}{STM32-Based Field-Oriented Control Motor Drive}{section.6}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VI-A}}Choice of FOC Over Trapezoidal Commutation}{3}{subsection.6.1}\protected@file@percent }
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {I}{\ignorespaces Comparison between FOC and trapezoidal (six-step) commutation}}{3}{table.1}\protected@file@percent }
|
||||
\newlabel{tab:foc_vs_trap}{{I}{3}{Comparison between FOC and trapezoidal (six-step) commutation}{table.1}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VI-B}}Base Design: Cheap FOCer-2 Project}{3}{subsection.6.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VI-C}}Integration of the Rocacher FOC Tile}{3}{subsection.6.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VI-D}}Pin Compatibility Verification: L476 vs F405}{3}{subsection.6.4}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VI-E}}Schematic Design and KiCad Implementation}{3}{subsection.6.5}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VI-F}}Routing Challenges and Current Status}{3}{subsection.6.6}\protected@file@percent }
|
||||
\citation{b1}
|
||||
\citation{b1}
|
||||
\citation{b2}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {V}Hardware-Based Six-Step Commutation Controller}{3}{section.5}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {VI}STM32-Based Field-Oriented Control Motor Drive}{3}{section.6}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {VII}Software and Connectivity}{3}{section.7}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-A}}BLE Compatibility With the VESC}{3}{subsection.7.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-A}1}First Experiment}{3}{subsubsection.7.1.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-A}2}HC-05 and the VESC}{3}{subsubsection.7.1.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-A}3}BLE Vulnerability}{3}{subsubsection.7.1.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-B}}Code integrity}{3}{subsection.7.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}1}Context}{3}{subsubsection.7.2.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}2}LispBM extraction}{3}{subsubsection.7.2.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}3}LispBM Code}{3}{subsubsection.7.2.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}4}Proposed Solution}{3}{subsubsection.7.2.4}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-C}}VESC Compiling}{3}{subsection.7.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {VIII}Dynamic Modelling and Control of the Bicycle–Cargo System}{3}{section.8}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-A}}Dynamic System Modelling}{3}{subsection.8.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-B}}PI-Based Control Strategy}{4}{subsection.8.2}\protected@file@percent }
|
||||
\newlabel{subsec:Simulink_model}{{\mbox {VIII-B}}{4}{PI-Based Control Strategy}{subsection.8.2}{}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Closed-loop model of the bicycle–cargo system with PI control.}}{4}{figure.1}\protected@file@percent }
|
||||
\newlabel{fig:simulink-closedloop}{{1}{4}{Closed-loop model of the bicycle–cargo system with PI control}{figure.1}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-C}}Control Architecture Exploration}{4}{subsection.8.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {IX}Results}{4}{section.9}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IX-A}}Bicycle-Cargo System Control Results}{4}{subsection.9.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-A}1}Simulation Results}{4}{subsubsection.9.1.1}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Position tracking error between bicycle and cargo cart.}}{4}{figure.2}\protected@file@percent }
|
||||
\newlabel{fig:tracking-error}{{2}{4}{Position tracking error between bicycle and cargo cart}{figure.2}{}}
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-A}2}Experimental Load Characterization}{4}{subsubsection.9.1.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {VII}Software and Connectivity}{4}{section.7}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-A}}BLE Compatibility With the VESC}{4}{subsection.7.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-A}1}First Experiment}{4}{subsubsection.7.1.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-A}2}HC-05 and the VESC}{4}{subsubsection.7.1.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-A}3}BLE Vulnerability}{4}{subsubsection.7.1.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-B}}Code integrity}{4}{subsection.7.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}1}Context}{4}{subsubsection.7.2.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}2}LispBM extraction}{4}{subsubsection.7.2.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}3}LispBM Code}{4}{subsubsection.7.2.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {VII-B}4}Proposed Solution}{4}{subsubsection.7.2.4}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-C}}VESC Compiling}{4}{subsection.7.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {VIII}Dynamic Modelling and Control of the Bicycle-Cargo System}{5}{section.8}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-A}}Dynamic System Modelling}{5}{subsection.8.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-B}}PI-Based Control Strategy}{5}{subsection.8.2}\protected@file@percent }
|
||||
\newlabel{subsec:Simulink_model}{{\mbox {VIII-B}}{5}{PI-Based Control Strategy}{subsection.8.2}{}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Closed-loop model of the bicycle-cargo system with PI control.}}{5}{figure.1}\protected@file@percent }
|
||||
\newlabel{fig:simulink-closedloop}{{1}{5}{Closed-loop model of the bicycle-cargo system with PI control}{figure.1}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-C}}Control Architecture Exploration}{5}{subsection.8.3}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {IX}Results}{5}{section.9}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IX-A}}FOC Controller Validation}{5}{subsection.9.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-A}1}Current Status Summary}{5}{subsubsection.9.1.1}\protected@file@percent }
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {II}{\ignorespaces FOC controller development status}}{5}{table.2}\protected@file@percent }
|
||||
\newlabel{tab:foc_status}{{II}{5}{FOC controller development status}{table.2}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IX-B}}Bicycle-Cargo System Control Results}{5}{subsection.9.2}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-B}1}Simulation Results}{5}{subsubsection.9.2.1}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Position tracking error between bicycle and cargo cart.}}{6}{figure.2}\protected@file@percent }
|
||||
\newlabel{fig:tracking-error}{{2}{6}{Position tracking error between bicycle and cargo cart}{figure.2}{}}
|
||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-B}2}Experimental Load Characterization}{6}{subsubsection.9.2.2}\protected@file@percent }
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Measured motor current under three loading conditions.}}{6}{figure.3}\protected@file@percent }
|
||||
\newlabel{fig:motor-currents}{{3}{6}{Measured motor current under three loading conditions}{figure.3}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {X}Discussion}{6}{section.10}\protected@file@percent }
|
||||
\bibstyle{IEEEtran}
|
||||
\bibdata{PIR_MadMax3}
|
||||
\bibcite{patil_analysis_2025}{1}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Measured motor current under three loading conditions.}}{5}{figure.3}\protected@file@percent }
|
||||
\newlabel{fig:motor-currents}{{3}{5}{Measured motor current under three loading conditions}{figure.3}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {X}Discussion}{5}{section.10}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {XI}Conclusion/Summary}{5}{section.11}\protected@file@percent }
|
||||
\bibcite{li_quantitative_2019}{2}
|
||||
\bibcite{mohammd_taher_new_2021}{3}
|
||||
\bibcite{gieras_modern_2023}{4}
|
||||
|
|
@ -91,5 +105,8 @@
|
|||
\bibcite{lee_advanced_2001}{8}
|
||||
\bibcite{b1}{9}
|
||||
\bibcite{b2}{10}
|
||||
\@writefile{toc}{\contentsline {section}{References}{6}{section*.2}\protected@file@percent }
|
||||
\gdef \@abspage@last{6}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {XI}Perspectives and Future Work}{7}{section.11}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {XI-A}}Hardware Completion and Testing}{7}{subsection.11.1}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {XII}Conclusion/Summary}{7}{section.12}\protected@file@percent }
|
||||
\@writefile{toc}{\contentsline {section}{References}{7}{section*.3}\protected@file@percent }
|
||||
\gdef \@abspage@last{7}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2022/dev/Debian) (preloaded format=pdflatex 2026.3.16) 13 MAY 2026 18:32
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2022/dev/Debian) (preloaded format=pdflatex 2026.3.16) 13 MAY 2026 19:57
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
%&-line parsing enabled.
|
||||
|
|
@ -343,12 +343,32 @@ Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2
|
|||
(/usr/share/texlive/texmf-dist/tex/latex/placeins/placeins.sty
|
||||
Package: placeins 2005/04/18 v 2.2
|
||||
)
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/booktabs/booktabs.sty
|
||||
Package: booktabs 2020/01/12 v1.61803398 Publication quality tables
|
||||
\heavyrulewidth=\dimen175
|
||||
\lightrulewidth=\dimen176
|
||||
\cmidrulewidth=\dimen177
|
||||
\belowrulesep=\dimen178
|
||||
\belowbottomsep=\dimen179
|
||||
\aboverulesep=\dimen180
|
||||
\abovetopsep=\dimen181
|
||||
\cmidrulesep=\dimen182
|
||||
\cmidrulekern=\dimen183
|
||||
\defaultaddspace=\dimen184
|
||||
\@cmidla=\count292
|
||||
\@cmidlb=\count293
|
||||
\@aboverulesep=\dimen185
|
||||
\@belowrulesep=\dimen186
|
||||
\@thisruleclass=\count294
|
||||
\@lastruleclass=\count295
|
||||
\@thisrulewidth=\dimen187
|
||||
)
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/siunitx/siunitx.sty
|
||||
Package: siunitx 2022-02-02 v3.0.46 A comprehensive (SI) units package
|
||||
\l__siunitx_angle_tmp_dim=\dimen175
|
||||
\l__siunitx_angle_tmp_dim=\dimen188
|
||||
\l__siunitx_angle_marker_box=\box54
|
||||
\l__siunitx_angle_unit_box=\box55
|
||||
\l__siunitx_compound_count_int=\count292
|
||||
\l__siunitx_compound_count_int=\count296
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/translations/translations.sty
|
||||
Package: translations 2022/01/04 v1.11 internationalization of LaTeX2e packages
|
||||
|
|
@ -356,25 +376,25 @@ Package: translations 2022/01/04 v1.11 internationalization of LaTeX2e packages
|
|||
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/etoolbox/etoolbox.sty
|
||||
Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW)
|
||||
\etb@tempcnta=\count293
|
||||
\etb@tempcnta=\count297
|
||||
))
|
||||
\l__siunitx_number_exponent_fixed_int=\count294
|
||||
\l__siunitx_number_min_decimal_int=\count295
|
||||
\l__siunitx_number_min_integer_int=\count296
|
||||
\l__siunitx_number_round_precision_int=\count297
|
||||
\l__siunitx_number_group_minimum_int=\count298
|
||||
\l__siunitx_number_exponent_fixed_int=\count298
|
||||
\l__siunitx_number_min_decimal_int=\count299
|
||||
\l__siunitx_number_min_integer_int=\count300
|
||||
\l__siunitx_number_round_precision_int=\count301
|
||||
\l__siunitx_number_group_minimum_int=\count302
|
||||
\l__siunitx_table_tmp_box=\box56
|
||||
\l__siunitx_table_tmp_dim=\dimen176
|
||||
\l__siunitx_table_column_width_dim=\dimen177
|
||||
\l__siunitx_table_tmp_dim=\dimen189
|
||||
\l__siunitx_table_column_width_dim=\dimen190
|
||||
\l__siunitx_table_integer_box=\box57
|
||||
\l__siunitx_table_decimal_box=\box58
|
||||
\l__siunitx_table_before_box=\box59
|
||||
\l__siunitx_table_after_box=\box60
|
||||
\l__siunitx_table_before_dim=\dimen178
|
||||
\l__siunitx_table_carry_dim=\dimen179
|
||||
\l__siunitx_unit_tmp_int=\count299
|
||||
\l__siunitx_unit_position_int=\count300
|
||||
\l__siunitx_unit_total_int=\count301
|
||||
\l__siunitx_table_before_dim=\dimen191
|
||||
\l__siunitx_table_carry_dim=\dimen192
|
||||
\l__siunitx_unit_tmp_int=\count303
|
||||
\l__siunitx_unit_position_int=\count304
|
||||
\l__siunitx_unit_total_int=\count305
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/l3kernel/expl3.sty
|
||||
|
|
@ -382,16 +402,16 @@ Package: expl3 2022-01-21 L3 programming layer (loader)
|
|||
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
|
||||
File: l3backend-pdftex.def 2022-01-12 L3 backend support: PDF output (pdfTeX)
|
||||
\l__color_backend_stack_int=\count302
|
||||
\l__color_backend_stack_int=\count306
|
||||
\l__pdf_internal_box=\box61
|
||||
))
|
||||
Package: l3keys2e 2022-01-12 LaTeX2e option processing using LaTeX3 keys
|
||||
)
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
|
||||
Package: array 2021/10/04 v2.5f Tabular extension package (FMi)
|
||||
\col@sep=\dimen180
|
||||
\col@sep=\dimen193
|
||||
\ar@mcellbox=\box62
|
||||
\extrarowheight=\dimen181
|
||||
\extrarowheight=\dimen194
|
||||
\NC@list=\toks23
|
||||
\extratabsurround=\skip56
|
||||
\backup@length=\skip57
|
||||
|
|
@ -414,8 +434,8 @@ Package graphics Info: Driver file: pdftex.def on input line 107.
|
|||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def
|
||||
File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex
|
||||
))
|
||||
\Gin@req@height=\dimen182
|
||||
\Gin@req@width=\dimen183
|
||||
\Gin@req@height=\dimen195
|
||||
\Gin@req@width=\dimen196
|
||||
)
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
|
||||
Package: textcomp 2020/02/02 v2.0n Standard LaTeX package
|
||||
|
|
@ -438,31 +458,31 @@ Package xcolor Info: Model `Gray' substituted by `gray' on input line 1374.
|
|||
Package xcolor Info: Model `wave' substituted by `hsb' on input line 1375.
|
||||
)
|
||||
Package translations Info: No language package found. I am going to use `englis
|
||||
h' as default language. on input line 18.
|
||||
h' as default language. on input line 19.
|
||||
(./main.aux)
|
||||
\openout1 = `main.aux'.
|
||||
|
||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 18.
|
||||
LaTeX Font Info: ... okay on input line 18.
|
||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 19.
|
||||
LaTeX Font Info: ... okay on input line 19.
|
||||
|
||||
-- Lines per column: 56 (exact).
|
||||
Package hyperref Info: Link coloring OFF on input line 18.
|
||||
Package hyperref Info: Link coloring OFF on input line 19.
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
|
||||
Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section
|
||||
|
||||
|
|
@ -472,11 +492,11 @@ Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO)
|
|||
(/usr/share/texlive/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty
|
||||
Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO)
|
||||
)
|
||||
\c@section@level=\count303
|
||||
\c@section@level=\count307
|
||||
)
|
||||
LaTeX Info: Redefining \ref on input line 18.
|
||||
LaTeX Info: Redefining \pageref on input line 18.
|
||||
LaTeX Info: Redefining \nameref on input line 18.
|
||||
LaTeX Info: Redefining \ref on input line 19.
|
||||
LaTeX Info: Redefining \pageref on input line 19.
|
||||
LaTeX Info: Redefining \nameref on input line 19.
|
||||
|
||||
(./main.out) (./main.out)
|
||||
\@outlinefile=\write3
|
||||
|
|
@ -489,20 +509,20 @@ File: translations-basic-dictionary-english.trsl (english translation file `tra
|
|||
nslations-basic-dictionary')
|
||||
)
|
||||
Package translations Info: loading dictionary `translations-basic-dictionary' f
|
||||
or `english'. on input line 18.
|
||||
or `english'. on input line 19.
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||
[Loading MPS to PDF converter (version 2006.09.02).]
|
||||
\scratchcounter=\count304
|
||||
\scratchdimen=\dimen184
|
||||
\scratchcounter=\count308
|
||||
\scratchdimen=\dimen197
|
||||
\scratchbox=\box64
|
||||
\nofMPsegments=\count305
|
||||
\nofMParguments=\count306
|
||||
\nofMPsegments=\count309
|
||||
\nofMParguments=\count310
|
||||
\everyMPshowfont=\toks24
|
||||
\MPscratchCnt=\count307
|
||||
\MPscratchDim=\dimen185
|
||||
\MPnumerator=\count308
|
||||
\makeMPintoPDFobject=\count309
|
||||
\MPscratchCnt=\count311
|
||||
\MPscratchDim=\dimen198
|
||||
\MPnumerator=\count312
|
||||
\makeMPintoPDFobject=\count313
|
||||
\everyMPtoPDFconversion=\toks25
|
||||
) (/usr/share/texlive/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty
|
||||
Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf
|
||||
|
|
@ -513,13 +533,13 @@ Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4
|
|||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv
|
||||
e
|
||||
))
|
||||
LaTeX Font Info: Trying to load font information for U+msa on input line 122
|
||||
LaTeX Font Info: Trying to load font information for U+msa on input line 124
|
||||
.
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
|
||||
File: umsa.fd 2013/01/14 v3.01 AMS symbols A
|
||||
)
|
||||
LaTeX Font Info: Trying to load font information for U+msb on input line 122
|
||||
LaTeX Font Info: Trying to load font information for U+msb on input line 124
|
||||
.
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
|
||||
|
|
@ -527,29 +547,34 @@ File: umsb.fd 2013/01/14 v3.01 AMS symbols B
|
|||
) [1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}
|
||||
|
||||
|
||||
]
|
||||
Underfull \vbox (badness 1354) has occurred while \output is active []
|
||||
] [2] [3]
|
||||
Underfull \hbox (badness 1509) in paragraph at lines 432--439
|
||||
[]\OT1/ptm/m/n/10 However, this choice posed sev-eral ob-sta-cles for our
|
||||
[]
|
||||
|
||||
[2]
|
||||
[3]
|
||||
<./Figures/sys_dyn_matlab.png, id=202, 430.2474pt x 226.6869pt>
|
||||
[4]
|
||||
<./Figures/sys_dyn_matlab.png, id=253, 430.2474pt x 226.6869pt>
|
||||
File: ./Figures/sys_dyn_matlab.png Graphic file (type png)
|
||||
<use ./Figures/sys_dyn_matlab.png>
|
||||
Package pdftex.def Info: ./Figures/sys_dyn_matlab.png used on input line 373.
|
||||
Package pdftex.def Info: ./Figures/sys_dyn_matlab.png used on input line 520.
|
||||
(pdftex.def) Requested size: 252.0pt x 132.77559pt.
|
||||
<./Figures/error_fig.png, id=206, 509.7444pt x 328.5876pt>
|
||||
<./Figures/error_fig.png, id=258, 509.7444pt x 328.5876pt>
|
||||
File: ./Figures/error_fig.png Graphic file (type png)
|
||||
<use ./Figures/error_fig.png>
|
||||
Package pdftex.def Info: ./Figures/error_fig.png used on input line 399.
|
||||
Package pdftex.def Info: ./Figures/error_fig.png used on input line 573.
|
||||
(pdftex.def) Requested size: 252.0pt x 162.44328pt.
|
||||
[4 <./Figures/sys_dyn_matlab.png> <./Figures/error_fig.png (PNG copy)>]
|
||||
<./Figures/Motor_currents.png, id=218, 499.6266pt x 328.1058pt>
|
||||
|
||||
|
||||
LaTeX Warning: `!h' float specifier changed to `!ht'.
|
||||
|
||||
[5 <./Figures/sys_dyn_matlab.png>]
|
||||
<./Figures/Motor_currents.png, id=271, 499.6266pt x 328.1058pt>
|
||||
File: ./Figures/Motor_currents.png Graphic file (type png)
|
||||
<use ./Figures/Motor_currents.png>
|
||||
Package pdftex.def Info: ./Figures/Motor_currents.png used on input line 421.
|
||||
Package pdftex.def Info: ./Figures/Motor_currents.png used on input line 595.
|
||||
(pdftex.def) Requested size: 252.0pt x 165.48434pt.
|
||||
|
||||
(./main.bbl [5 <./Figures/Motor_currents.png (PNG copy)>]
|
||||
[6 <./Figures/error_fig.png (PNG copy)> <./Figures/Motor_currents.png (PNG cop
|
||||
y)>] (./main.bbl
|
||||
Underfull \hbox (badness 1490) in paragraph at lines 97--99
|
||||
[]\OT1/ptm/m/n/8 ------, ``lispbm in vesc,'' []$https : / / github . com / vedd
|
||||
erb / bldc / tree / master /
|
||||
|
|
@ -567,34 +592,35 @@ Before submitting the final camera ready copy, remember to:
|
|||
uses only Type 1 fonts and that every step in the generation
|
||||
process uses the appropriate paper size.
|
||||
|
||||
[6
|
||||
|
||||
] (./main.aux)
|
||||
[7] (./main.aux)
|
||||
Package rerunfilecheck Info: File `main.out' has not changed.
|
||||
(rerunfilecheck) Checksum: 4840E35989685C6A900816FED622AB01;6851.
|
||||
(rerunfilecheck) Checksum: D428FCA31372168544B7CCCCB9675B0D;9238.
|
||||
)
|
||||
Here is how much of TeX's memory you used:
|
||||
14802 strings out of 478287
|
||||
281591 string characters out of 5849289
|
||||
566416 words of memory out of 5000000
|
||||
32767 multiletter control sequences out of 15000+600000
|
||||
505639 words of font info for 98 fonts, out of 8000000 for 9000
|
||||
14909 strings out of 478287
|
||||
283324 string characters out of 5849289
|
||||
567540 words of memory out of 5000000
|
||||
32854 multiletter control sequences out of 15000+600000
|
||||
508470 words of font info for 101 fonts, out of 8000000 for 9000
|
||||
1141 hyphenation exceptions out of 8191
|
||||
70i,8n,79p,470b,903s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
70i,10n,79p,470b,753s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
{/usr/share/texlive/texmf-dist/fonts/enc/dvips/base/8r.enc}</usr/share/texliv
|
||||
e/texmf-dist/fonts/type1/public/amsfonts/cm/cmex10.pfb></usr/share/texlive/texm
|
||||
f-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb></usr/share/texlive/texmf-dist
|
||||
/fonts/type1/public/amsfonts/cm/cmmi7.pfb></usr/share/texlive/texmf-dist/fonts/
|
||||
type1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/p
|
||||
ublic/amsfonts/cm/cmr7.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/am
|
||||
sfonts/cm/cmsy10.pfb></usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8
|
||||
a.pfb></usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmbi8a.pfb></usr/sh
|
||||
are/texlive/texmf-dist/fonts/type1/urw/times/utmr8a.pfb></usr/share/texlive/tex
|
||||
mf-dist/fonts/type1/urw/times/utmri8a.pfb>
|
||||
Output written on main.pdf (6 pages, 315176 bytes).
|
||||
type1/public/amsfonts/cm/cmmi8.pfb></usr/share/texlive/texmf-dist/fonts/type1/p
|
||||
ublic/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/a
|
||||
msfonts/cm/cmr7.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/
|
||||
cm/cmr8.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy1
|
||||
0.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy7.pfb><
|
||||
/usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8a.pfb></usr/share/texl
|
||||
ive/texmf-dist/fonts/type1/urw/times/utmbi8a.pfb></usr/share/texlive/texmf-dist
|
||||
/fonts/type1/urw/times/utmr8a.pfb></usr/share/texlive/texmf-dist/fonts/type1/ur
|
||||
w/times/utmri8a.pfb>
|
||||
Output written on main.pdf (7 pages, 348774 bytes).
|
||||
PDF statistics:
|
||||
301 PDF objects out of 1000 (max. 8388607)
|
||||
266 compressed objects within 3 object streams
|
||||
57 named destinations out of 1000 (max. 500000)
|
||||
304 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
372 PDF objects out of 1000 (max. 8388607)
|
||||
329 compressed objects within 4 object streams
|
||||
71 named destinations out of 1000 (max. 500000)
|
||||
384 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
||||
|
|
|
|||
|
|
@ -12,25 +12,35 @@
|
|||
\BOOKMARK [1][-]{section.4}{\376\377\000A\000i\000m\000\040\000a\000n\000d\000\040\000R\000e\000s\000e\000a\000r\000c\000h\000\040\000O\000b\000j\000e\000c\000t\000i\000v\000e\000s}{}% 12
|
||||
\BOOKMARK [1][-]{section.5}{\376\377\000H\000a\000r\000d\000w\000a\000r\000e\000-\000B\000a\000s\000e\000d\000\040\000S\000i\000x\000-\000S\000t\000e\000p\000\040\000C\000o\000m\000m\000u\000t\000a\000t\000i\000o\000n\000\040\000C\000o\000n\000t\000r\000o\000l\000l\000e\000r}{}% 13
|
||||
\BOOKMARK [1][-]{section.6}{\376\377\000S\000T\000M\0003\0002\000-\000B\000a\000s\000e\000d\000\040\000F\000i\000e\000l\000d\000-\000O\000r\000i\000e\000n\000t\000e\000d\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000M\000o\000t\000o\000r\000\040\000D\000r\000i\000v\000e}{}% 14
|
||||
\BOOKMARK [1][-]{section.7}{\376\377\000S\000o\000f\000t\000w\000a\000r\000e\000\040\000a\000n\000d\000\040\000C\000o\000n\000n\000e\000c\000t\000i\000v\000i\000t\000y}{}% 15
|
||||
\BOOKMARK [2][-]{subsection.7.1}{\376\377\000B\000L\000E\000\040\000C\000o\000m\000p\000a\000t\000i\000b\000i\000l\000i\000t\000y\000\040\000W\000i\000t\000h\000\040\000t\000h\000e\000\040\000V\000E\000S\000C}{section.7}% 16
|
||||
\BOOKMARK [3][-]{subsubsection.7.1.1}{\376\377\000F\000i\000r\000s\000t\000\040\000E\000x\000p\000e\000r\000i\000m\000e\000n\000t}{subsection.7.1}% 17
|
||||
\BOOKMARK [3][-]{subsubsection.7.1.2}{\376\377\000H\000C\000-\0000\0005\000\040\000a\000n\000d\000\040\000t\000h\000e\000\040\000V\000E\000S\000C}{subsection.7.1}% 18
|
||||
\BOOKMARK [3][-]{subsubsection.7.1.3}{\376\377\000B\000L\000E\000\040\000V\000u\000l\000n\000e\000r\000a\000b\000i\000l\000i\000t\000y}{subsection.7.1}% 19
|
||||
\BOOKMARK [2][-]{subsection.7.2}{\376\377\000C\000o\000d\000e\000\040\000i\000n\000t\000e\000g\000r\000i\000t\000y}{section.7}% 20
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.1}{\376\377\000C\000o\000n\000t\000e\000x\000t}{subsection.7.2}% 21
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.2}{\376\377\000L\000i\000s\000p\000B\000M\000\040\000e\000x\000t\000r\000a\000c\000t\000i\000o\000n}{subsection.7.2}% 22
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.3}{\376\377\000L\000i\000s\000p\000B\000M\000\040\000C\000o\000d\000e}{subsection.7.2}% 23
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.4}{\376\377\000P\000r\000o\000p\000o\000s\000e\000d\000\040\000S\000o\000l\000u\000t\000i\000o\000n}{subsection.7.2}% 24
|
||||
\BOOKMARK [2][-]{subsection.7.3}{\376\377\000V\000E\000S\000C\000\040\000C\000o\000m\000p\000i\000l\000i\000n\000g}{section.7}% 25
|
||||
\BOOKMARK [1][-]{section.8}{\376\377\000D\000y\000n\000a\000m\000i\000c\000\040\000M\000o\000d\000e\000l\000l\000i\000n\000g\000\040\000a\000n\000d\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000o\000f\000\040\000t\000h\000e\000\040\000B\000i\000c\000y\000c\000l\000e\040\023\000C\000a\000r\000g\000o\000\040\000S\000y\000s\000t\000e\000m}{}% 26
|
||||
\BOOKMARK [2][-]{subsection.8.1}{\376\377\000D\000y\000n\000a\000m\000i\000c\000\040\000S\000y\000s\000t\000e\000m\000\040\000M\000o\000d\000e\000l\000l\000i\000n\000g}{section.8}% 27
|
||||
\BOOKMARK [2][-]{subsection.8.2}{\376\377\000P\000I\000-\000B\000a\000s\000e\000d\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000S\000t\000r\000a\000t\000e\000g\000y}{section.8}% 28
|
||||
\BOOKMARK [2][-]{subsection.8.3}{\376\377\000C\000o\000n\000t\000r\000o\000l\000\040\000A\000r\000c\000h\000i\000t\000e\000c\000t\000u\000r\000e\000\040\000E\000x\000p\000l\000o\000r\000a\000t\000i\000o\000n}{section.8}% 29
|
||||
\BOOKMARK [1][-]{section.9}{\376\377\000R\000e\000s\000u\000l\000t\000s}{}% 30
|
||||
\BOOKMARK [2][-]{subsection.9.1}{\376\377\000B\000i\000c\000y\000c\000l\000e\000-\000C\000a\000r\000g\000o\000\040\000S\000y\000s\000t\000e\000m\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000R\000e\000s\000u\000l\000t\000s}{section.9}% 31
|
||||
\BOOKMARK [3][-]{subsubsection.9.1.1}{\376\377\000S\000i\000m\000u\000l\000a\000t\000i\000o\000n\000\040\000R\000e\000s\000u\000l\000t\000s}{subsection.9.1}% 32
|
||||
\BOOKMARK [3][-]{subsubsection.9.1.2}{\376\377\000E\000x\000p\000e\000r\000i\000m\000e\000n\000t\000a\000l\000\040\000L\000o\000a\000d\000\040\000C\000h\000a\000r\000a\000c\000t\000e\000r\000i\000z\000a\000t\000i\000o\000n}{subsection.9.1}% 33
|
||||
\BOOKMARK [1][-]{section.10}{\376\377\000D\000i\000s\000c\000u\000s\000s\000i\000o\000n}{}% 34
|
||||
\BOOKMARK [1][-]{section.11}{\376\377\000C\000o\000n\000c\000l\000u\000s\000i\000o\000n\000/\000S\000u\000m\000m\000a\000r\000y}{}% 35
|
||||
\BOOKMARK [1][-]{section*.2}{\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{}% 36
|
||||
\BOOKMARK [2][-]{subsection.6.1}{\376\377\000C\000h\000o\000i\000c\000e\000\040\000o\000f\000\040\000F\000O\000C\000\040\000O\000v\000e\000r\000\040\000T\000r\000a\000p\000e\000z\000o\000i\000d\000a\000l\000\040\000C\000o\000m\000m\000u\000t\000a\000t\000i\000o\000n}{section.6}% 15
|
||||
\BOOKMARK [2][-]{subsection.6.2}{\376\377\000B\000a\000s\000e\000\040\000D\000e\000s\000i\000g\000n\000:\000\040\000C\000h\000e\000a\000p\000\040\000F\000O\000C\000e\000r\000-\0002\000\040\000P\000r\000o\000j\000e\000c\000t}{section.6}% 16
|
||||
\BOOKMARK [2][-]{subsection.6.3}{\376\377\000I\000n\000t\000e\000g\000r\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000t\000h\000e\000\040\000R\000o\000c\000a\000c\000h\000e\000r\000\040\000F\000O\000C\000\040\000T\000i\000l\000e}{section.6}% 17
|
||||
\BOOKMARK [2][-]{subsection.6.4}{\376\377\000P\000i\000n\000\040\000C\000o\000m\000p\000a\000t\000i\000b\000i\000l\000i\000t\000y\000\040\000V\000e\000r\000i\000f\000i\000c\000a\000t\000i\000o\000n\000:\000\040\000L\0004\0007\0006\000\040\000v\000s\000\040\000F\0004\0000\0005}{section.6}% 18
|
||||
\BOOKMARK [2][-]{subsection.6.5}{\376\377\000S\000c\000h\000e\000m\000a\000t\000i\000c\000\040\000D\000e\000s\000i\000g\000n\000\040\000a\000n\000d\000\040\000K\000i\000C\000a\000d\000\040\000I\000m\000p\000l\000e\000m\000e\000n\000t\000a\000t\000i\000o\000n}{section.6}% 19
|
||||
\BOOKMARK [2][-]{subsection.6.6}{\376\377\000R\000o\000u\000t\000i\000n\000g\000\040\000C\000h\000a\000l\000l\000e\000n\000g\000e\000s\000\040\000a\000n\000d\000\040\000C\000u\000r\000r\000e\000n\000t\000\040\000S\000t\000a\000t\000u\000s}{section.6}% 20
|
||||
\BOOKMARK [1][-]{section.7}{\376\377\000S\000o\000f\000t\000w\000a\000r\000e\000\040\000a\000n\000d\000\040\000C\000o\000n\000n\000e\000c\000t\000i\000v\000i\000t\000y}{}% 21
|
||||
\BOOKMARK [2][-]{subsection.7.1}{\376\377\000B\000L\000E\000\040\000C\000o\000m\000p\000a\000t\000i\000b\000i\000l\000i\000t\000y\000\040\000W\000i\000t\000h\000\040\000t\000h\000e\000\040\000V\000E\000S\000C}{section.7}% 22
|
||||
\BOOKMARK [3][-]{subsubsection.7.1.1}{\376\377\000F\000i\000r\000s\000t\000\040\000E\000x\000p\000e\000r\000i\000m\000e\000n\000t}{subsection.7.1}% 23
|
||||
\BOOKMARK [3][-]{subsubsection.7.1.2}{\376\377\000H\000C\000-\0000\0005\000\040\000a\000n\000d\000\040\000t\000h\000e\000\040\000V\000E\000S\000C}{subsection.7.1}% 24
|
||||
\BOOKMARK [3][-]{subsubsection.7.1.3}{\376\377\000B\000L\000E\000\040\000V\000u\000l\000n\000e\000r\000a\000b\000i\000l\000i\000t\000y}{subsection.7.1}% 25
|
||||
\BOOKMARK [2][-]{subsection.7.2}{\376\377\000C\000o\000d\000e\000\040\000i\000n\000t\000e\000g\000r\000i\000t\000y}{section.7}% 26
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.1}{\376\377\000C\000o\000n\000t\000e\000x\000t}{subsection.7.2}% 27
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.2}{\376\377\000L\000i\000s\000p\000B\000M\000\040\000e\000x\000t\000r\000a\000c\000t\000i\000o\000n}{subsection.7.2}% 28
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.3}{\376\377\000L\000i\000s\000p\000B\000M\000\040\000C\000o\000d\000e}{subsection.7.2}% 29
|
||||
\BOOKMARK [3][-]{subsubsection.7.2.4}{\376\377\000P\000r\000o\000p\000o\000s\000e\000d\000\040\000S\000o\000l\000u\000t\000i\000o\000n}{subsection.7.2}% 30
|
||||
\BOOKMARK [2][-]{subsection.7.3}{\376\377\000V\000E\000S\000C\000\040\000C\000o\000m\000p\000i\000l\000i\000n\000g}{section.7}% 31
|
||||
\BOOKMARK [1][-]{section.8}{\376\377\000D\000y\000n\000a\000m\000i\000c\000\040\000M\000o\000d\000e\000l\000l\000i\000n\000g\000\040\000a\000n\000d\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000o\000f\000\040\000t\000h\000e\000\040\000B\000i\000c\000y\000c\000l\000e\000-\000C\000a\000r\000g\000o\000\040\000S\000y\000s\000t\000e\000m}{}% 32
|
||||
\BOOKMARK [2][-]{subsection.8.1}{\376\377\000D\000y\000n\000a\000m\000i\000c\000\040\000S\000y\000s\000t\000e\000m\000\040\000M\000o\000d\000e\000l\000l\000i\000n\000g}{section.8}% 33
|
||||
\BOOKMARK [2][-]{subsection.8.2}{\376\377\000P\000I\000-\000B\000a\000s\000e\000d\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000S\000t\000r\000a\000t\000e\000g\000y}{section.8}% 34
|
||||
\BOOKMARK [2][-]{subsection.8.3}{\376\377\000C\000o\000n\000t\000r\000o\000l\000\040\000A\000r\000c\000h\000i\000t\000e\000c\000t\000u\000r\000e\000\040\000E\000x\000p\000l\000o\000r\000a\000t\000i\000o\000n}{section.8}% 35
|
||||
\BOOKMARK [1][-]{section.9}{\376\377\000R\000e\000s\000u\000l\000t\000s}{}% 36
|
||||
\BOOKMARK [2][-]{subsection.9.1}{\376\377\000F\000O\000C\000\040\000C\000o\000n\000t\000r\000o\000l\000l\000e\000r\000\040\000V\000a\000l\000i\000d\000a\000t\000i\000o\000n}{section.9}% 37
|
||||
\BOOKMARK [3][-]{subsubsection.9.1.1}{\376\377\000C\000u\000r\000r\000e\000n\000t\000\040\000S\000t\000a\000t\000u\000s\000\040\000S\000u\000m\000m\000a\000r\000y}{subsection.9.1}% 38
|
||||
\BOOKMARK [2][-]{subsection.9.2}{\376\377\000B\000i\000c\000y\000c\000l\000e\000-\000C\000a\000r\000g\000o\000\040\000S\000y\000s\000t\000e\000m\000\040\000C\000o\000n\000t\000r\000o\000l\000\040\000R\000e\000s\000u\000l\000t\000s}{section.9}% 39
|
||||
\BOOKMARK [3][-]{subsubsection.9.2.1}{\376\377\000S\000i\000m\000u\000l\000a\000t\000i\000o\000n\000\040\000R\000e\000s\000u\000l\000t\000s}{subsection.9.2}% 40
|
||||
\BOOKMARK [3][-]{subsubsection.9.2.2}{\376\377\000E\000x\000p\000e\000r\000i\000m\000e\000n\000t\000a\000l\000\040\000L\000o\000a\000d\000\040\000C\000h\000a\000r\000a\000c\000t\000e\000r\000i\000z\000a\000t\000i\000o\000n}{subsection.9.2}% 41
|
||||
\BOOKMARK [1][-]{section.10}{\376\377\000D\000i\000s\000c\000u\000s\000s\000i\000o\000n}{}% 42
|
||||
\BOOKMARK [1][-]{section.11}{\376\377\000P\000e\000r\000s\000p\000e\000c\000t\000i\000v\000e\000s\000\040\000a\000n\000d\000\040\000F\000u\000t\000u\000r\000e\000\040\000W\000o\000r\000k}{}% 43
|
||||
\BOOKMARK [2][-]{subsection.11.1}{\376\377\000H\000a\000r\000d\000w\000a\000r\000e\000\040\000C\000o\000m\000p\000l\000e\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000T\000e\000s\000t\000i\000n\000g}{section.11}% 44
|
||||
\BOOKMARK [1][-]{section.12}{\376\377\000C\000o\000n\000c\000l\000u\000s\000i\000o\000n\000/\000S\000u\000m\000m\000a\000r\000y}{}% 45
|
||||
\BOOKMARK [1][-]{section*.3}{\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{}% 46
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -7,6 +7,7 @@
|
|||
\usepackage{url}
|
||||
\usepackage[hidelinks]{hyperref}
|
||||
\usepackage{placeins}
|
||||
\usepackage{booktabs}
|
||||
\usepackage{siunitx}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{textcomp}
|
||||
|
|
@ -112,6 +113,7 @@ We also argue the need for general public's safety when it comes to these bikes,
|
|||
% ********************************************* RELATED WORK ***********************************************************
|
||||
|
||||
\section{Related Work}
|
||||
\label{sec:relatedwork}
|
||||
|
||||
\subsection{Modeling of BLDC Motor}
|
||||
The electromechanical model of a BLDC (Brushless DC) motor is foundational for understanding its behavior under different control
|
||||
|
|
@ -211,152 +213,157 @@ The objective is to minimize the perceived additional effort when towing a cargo
|
|||
PID-based (Proportional-Integral-Derivative) control strategy combined with distance sensing, allowing adaptive
|
||||
assistance based on system dynamics.
|
||||
|
||||
|
||||
% ************************************** LOW TECH SIX STEP CONTROL *****************************************************
|
||||
|
||||
|
||||
\section{Hardware-Based Six-Step Commutation Controller}
|
||||
\label{sec:sixstep}
|
||||
|
||||
|
||||
% ************************************** FIELD ORIENTED CONTROL *****************************************************
|
||||
|
||||
\section{STM32-Based Field-Oriented Control Motor Drive}
|
||||
\label{sec:foc}
|
||||
|
||||
This section presents the design and implementation of a high-performance
|
||||
motor controller based on Field-Oriented Control (FOC).
|
||||
|
||||
\subsection{Choice of FOC Over Trapezoidal Commutation}
|
||||
|
||||
Table~\ref{tab:foc_vs_trap} summarizes the key differences between the
|
||||
two commutation strategies, based on the literature reviewed in
|
||||
Section~\ref{sec:relatedwork}.
|
||||
|
||||
\begin{table}[htbp]
|
||||
\caption{Comparison between FOC and trapezoidal (six-step) commutation}
|
||||
\label{tab:foc_vs_trap}
|
||||
\centering
|
||||
\begin{tabular}{lcc}
|
||||
\toprule
|
||||
\textbf{Criterion} & \textbf{FOC} & \textbf{Six-Step} \\
|
||||
\midrule
|
||||
Torque ripple (at 500 rpm) & \SI{18.4}{\percent} & \SI{35.7}{\percent} \\
|
||||
Low-load efficiency & High & Moderate \\
|
||||
High-speed switching loss & Higher & Lower \\
|
||||
Position sensor requirement & Encoder (high resolution) & Hall sensors \\
|
||||
Implementation complexity & High & Low \\
|
||||
Hardware cost & Higher & Lower \\
|
||||
Dynamic response & Fast & Standard \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
For our cargo bike application, rider comfort and smooth torque delivery
|
||||
are priorities. FOC was therefore selected for the high-performance
|
||||
controller, while a separate low-tech six-step board (Section~\ref{sec:sixstep})
|
||||
was developed for repairability.
|
||||
|
||||
\subsection{Base Design: Cheap FOCer-2 Project}
|
||||
|
||||
The starting point was the open-source \textit{Cheap FOCer-2} project,
|
||||
which provides a complete KiCad design for a VESC-compatible board based
|
||||
on an STM32F405 microcontroller. This design includes:
|
||||
\begin{itemize}
|
||||
\item A three-phase MOSFET full-bridge power stage.
|
||||
\item Gate drivers with built-in dead-time insertion.
|
||||
\item Shunt resistors for phase current sensing.
|
||||
\item USB and CAN interfaces.
|
||||
\item An expansion header for encoder or Hall sensors.
|
||||
\end{itemize}
|
||||
|
||||
The existing KiCad schematic and layout were used as the baseline for
|
||||
our adaptations.
|
||||
|
||||
\subsection{Integration of the Rocacher FOC Tile}
|
||||
|
||||
Mr. Rocacher provided the Kicad schematic of a ready-to-use FOC tile based on an STM32L476
|
||||
microcontroller.
|
||||
|
||||
The initial idea was to make this tile \textit{pluggable} into our
|
||||
carrier board, similar to an Arduino shield. This would allow :
|
||||
\begin{itemize}
|
||||
\item Easy replacement of the computing core without re-soldering.
|
||||
\item Modular upgrades of the microcontroller.
|
||||
\item Simplified repair and maintenance.
|
||||
\end{itemize}
|
||||
|
||||
However, the Cheap FOCer-2 project was not designed for such modularity.
|
||||
Its routing is dense and highly optimized for a single, non-removable
|
||||
F405 chip. Adapting it to accept an L476 tile while preserving all
|
||||
critical functions (PWM, current sensing, USB communication) proved
|
||||
challenging.
|
||||
|
||||
\subsection{Pin Compatibility Verification: L476 vs F405}
|
||||
|
||||
Before modifying the PCB, a thorough pin compatibility check was
|
||||
performed between the STM32L476 and the STM32F405
|
||||
(original Cheap FOCer-2 design). The following aspects were examined:
|
||||
\begin{itemize}
|
||||
\item Physical pinout in LQFP64 package.
|
||||
\item Alternate functions for PWM timers.
|
||||
\item USB DP/DM pins (PA11/PA12).
|
||||
\item Analog inputs for current sensing.
|
||||
\item UART for BLE communication.
|
||||
\end{itemize}
|
||||
|
||||
Three pin conflicts were identified and resolved as follows.
|
||||
|
||||
First, the SPI\_MISO function on PA6 for the STM32F405 conflicts with a
|
||||
DAC output on the same pin for the STM32L476 tile. Since this pin is
|
||||
used for current sensing via SPI in the original Cheap FOCer-2 design,
|
||||
the SPI communication was remapped to PA5 on the L476, which provides a
|
||||
compatible alternate function.
|
||||
|
||||
Second, the gate driver enable signal (EN\_GATE) was originally assigned
|
||||
to PB5 on the F405. This pin is not accessible on the L476
|
||||
tile. The signal was therefore moved to PC5, which is available and
|
||||
can be configured as a standard GPIO output.
|
||||
|
||||
Third, Hall sensor C was originally connected to PC8 (TIM8) on the F405.
|
||||
This pin is not available on the L476 tile. The Hall sensor input was
|
||||
therefore reassigned to PB3, configured as TIM2\_CH2, which provides
|
||||
the necessary input capture functionality for Hall signal decoding.
|
||||
|
||||
All other critical functions (PWM timers, complementary PWM, enable
|
||||
signals, encoder inputs, UART, USB, and CAN) remain fully compatible
|
||||
between the two microcontrollers. The ADC channel differences between
|
||||
the F405 (ADC123/ADC12) and the L476 (ADC3) must still be handled in
|
||||
firmware, as noted previously.
|
||||
|
||||
\subsection{Schematic Design and KiCad Implementation}
|
||||
|
||||
The original Cheap FOCer-2 schematic was modified in KiCad to replace the
|
||||
integrated F405 with connectors for the L476 tile. The main modifications
|
||||
included:
|
||||
\begin{itemize}
|
||||
\item Removal of the F405 and its associated passive components.
|
||||
\item Addition of two 20-pin headers to receive the Rocacher tile.
|
||||
\item Re-routing of PWM, ADC, and USB signals to the headers.
|
||||
\end{itemize}
|
||||
|
||||
The schematic passed Electrical Rule Check (ERC) with no errors.
|
||||
|
||||
\subsection{Routing Challenges and Current Status}
|
||||
|
||||
The PCB layout was then started. The original Cheap FOCer-2 routing is
|
||||
very dense. Inserting connectors for the removable tile while maintaining signal integrity proved
|
||||
difficult.
|
||||
|
||||
The main issues encountered were:
|
||||
\begin{itemize}
|
||||
\item Some footprints for the tile connectors did not appear correctly
|
||||
in the layout after schematic import.
|
||||
\item Routing of high-current paths (battery, motor phases) around the
|
||||
connectors required additional vias, increasing resistance.
|
||||
\item Decoupling capacitors had to be repositioned, raising concerns
|
||||
about switching noise.
|
||||
\end{itemize}
|
||||
|
||||
Currently, the schematic is validated, and the layout is under
|
||||
development. Once routing is completed, the board will be manufactured
|
||||
and tested with the VESC firmware adapted to the L476 tile.
|
||||
|
||||
This section presents the design and implementation of a high-performance
|
||||
motor controller based on Field-Oriented Control (FOC).
|
||||
|
||||
\subsection{Choice of FOC Over Trapezoidal Commutation}
|
||||
|
||||
Table~\ref{tab:foc_vs_trap} summarizes the key differences between the
|
||||
two commutation strategies, based on the literature reviewed in
|
||||
Section~\ref{sec:related}.
|
||||
|
||||
\begin{table}[htbp]
|
||||
\caption{Comparison between FOC and trapezoidal (six-step) commutation}
|
||||
\label{tab:foc_vs_trap}
|
||||
\centering
|
||||
\begin{tabular}{lcc}
|
||||
\toprule
|
||||
\textbf{Criterion} & \textbf{FOC} & \textbf{Six-Step} \\
|
||||
\midrule
|
||||
Torque ripple (at 500 rpm) & \SI{18.4}{\percent} & \SI{35.7}{\percent} \\
|
||||
Low-load efficiency & High & Moderate \\
|
||||
High-speed switching loss & Higher & Lower \\
|
||||
Position sensor requirement & Encoder (high resolution) & Hall sensors \\
|
||||
Implementation complexity & High & Low \\
|
||||
Hardware cost & Higher & Lower \\
|
||||
Dynamic response & Fast & Standard \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
For our cargo bike application, rider comfort and smooth torque delivery
|
||||
are priorities. FOC was therefore selected for the high-performance
|
||||
controller, while a separate low-tech six-step board (Section~\ref{sec:sixstep})
|
||||
was developed for repairability.
|
||||
|
||||
\subsection{Base Design: Cheap FOCer-2 Project}
|
||||
|
||||
The starting point was the open-source \textit{Cheap FOCer-2} project,
|
||||
which provides a complete KiCad design for a VESC-compatible board based
|
||||
on an STM32F405 microcontroller. This design includes:
|
||||
\begin{itemize}
|
||||
\item A three-phase MOSFET full-bridge power stage.
|
||||
\item Gate drivers with built-in dead-time insertion.
|
||||
\item Shunt resistors for phase current sensing.
|
||||
\item USB and CAN interfaces.
|
||||
\item An expansion header for encoder or Hall sensors.
|
||||
\end{itemize}
|
||||
|
||||
The existing KiCad schematic and layout were used as the baseline for
|
||||
our adaptations.
|
||||
|
||||
\subsection{Integration of the Rocacher FOC Tile}
|
||||
|
||||
Mr. Rocacher provided the Kicad schematic of a ready-to-use FOC tile based on an STM32L476
|
||||
microcontroller.
|
||||
|
||||
The initial idea was to make this tile \textit{pluggable} into our
|
||||
carrier board, similar to an Arduino shield. This would allow :
|
||||
\begin{itemize}
|
||||
\item Easy replacement of the computing core without re-soldering.
|
||||
\item Modular upgrades of the microcontroller.
|
||||
\item Simplified repair and maintenance.
|
||||
\end{itemize}
|
||||
|
||||
However, the Cheap FOCer-2 project was not designed for such modularity.
|
||||
Its routing is dense and highly optimized for a single, non-removable
|
||||
F405 chip. Adapting it to accept an L476 tile while preserving all
|
||||
critical functions (PWM, current sensing, USB communication) proved
|
||||
challenging.
|
||||
|
||||
\subsection{Pin Compatibility Verification: L476 vs F405}
|
||||
|
||||
Before modifying the PCB, a thorough pin compatibility check was
|
||||
performed between the STM32L476 and the STM32F405
|
||||
(original Cheap FOCer-2 design). The following aspects were examined:
|
||||
\begin{itemize}
|
||||
\item Physical pinout in LQFP64 package.
|
||||
\item Alternate functions for PWM timers.
|
||||
\item USB DP/DM pins (PA11/PA12).
|
||||
\item Analog inputs for current sensing.
|
||||
\item UART for BLE communication.
|
||||
\end{itemize}
|
||||
|
||||
Three pin conflicts were identified and resolved as follows.
|
||||
|
||||
First, the SPI\_MISO function on PA6 for the STM32F405 conflicts with a
|
||||
DAC output on the same pin for the STM32L476 tile. Since this pin is
|
||||
used for current sensing via SPI in the original Cheap FOCer-2 design,
|
||||
the SPI communication was remapped to PA5 on the L476, which provides a
|
||||
compatible alternate function.
|
||||
|
||||
Second, the gate driver enable signal (EN\_GATE) was originally assigned
|
||||
to PB5 on the F405. This pin is not accessible on the L476
|
||||
tile. The signal was therefore moved to PC5, which is available and
|
||||
can be configured as a standard GPIO output.
|
||||
|
||||
Third, Hall sensor C was originally connected to PC8 (TIM8) on the F405.
|
||||
This pin is not available on the L476 tile. The Hall sensor input was
|
||||
therefore reassigned to PB3, configured as TIM2\_CH2, which provides
|
||||
the necessary input capture functionality for Hall signal decoding.
|
||||
|
||||
All other critical functions (PWM timers, complementary PWM, enable
|
||||
signals, encoder inputs, UART, USB, and CAN) remain fully compatible
|
||||
between the two microcontrollers. The ADC channel differences between
|
||||
the F405 (ADC123/ADC12) and the L476 (ADC3) must still be handled in
|
||||
firmware, as noted previously.
|
||||
|
||||
\subsection{Schematic Design and KiCad Implementation}
|
||||
|
||||
The original Cheap FOCer-2 schematic was modified in KiCad to replace the
|
||||
integrated F405 with connectors for the L476 tile. The main modifications
|
||||
included:
|
||||
\begin{itemize}
|
||||
\item Removal of the F405 and its associated passive components.
|
||||
\item Addition of two 20-pin headers to receive the Rocacher tile.
|
||||
\item Re-routing of PWM, ADC, and USB signals to the headers.
|
||||
\end{itemize}
|
||||
|
||||
The schematic passed Electrical Rule Check (ERC) with no errors.
|
||||
|
||||
\subsection{Routing Challenges and Current Status}
|
||||
|
||||
The PCB layout was then started. The original Cheap FOCer-2 routing is
|
||||
very dense. Inserting connectors for the removable tile while maintaining signal integrity proved
|
||||
difficult.
|
||||
|
||||
The main issues encountered were:
|
||||
\begin{itemize}
|
||||
\item Some footprints for the tile connectors did not appear correctly
|
||||
in the layout after schematic import.
|
||||
\item Routing of high-current paths (battery, motor phases) around the
|
||||
connectors required additional vias, increasing resistance.
|
||||
\item Decoupling capacitors had to be repositioned, raising concerns
|
||||
about switching noise.
|
||||
\end{itemize}
|
||||
|
||||
Currently, the schematic is validated, and the layout is under
|
||||
development. Once routing is completed, the board will be manufactured
|
||||
and tested with the VESC firmware adapted to the L476 tile.
|
||||
|
||||
% ************************************** SOFTWARE AND CONNECTIVITY *****************************************************
|
||||
|
||||
|
|
@ -441,7 +448,6 @@ for the the MAD associates.
|
|||
|
||||
% ************************************ DYNAMIC MODELLING ***************************************************************
|
||||
|
||||
|
||||
\section{Dynamic Modelling and Control of the Bicycle-Cargo System}
|
||||
|
||||
\subsection{Dynamic System Modelling}
|
||||
|
|
@ -528,6 +534,33 @@ where $e_{\text{ref}} = \SI{-0.5}{\meter}$ represents the desired equilibrium of
|
|||
|
||||
\section{Results}
|
||||
|
||||
\subsection{FOC Controller Validation}
|
||||
|
||||
\subsubsection{Current Status Summary}
|
||||
|
||||
Table~\ref{tab:foc_status} summarizes the current status of the FOC
|
||||
controller development.
|
||||
|
||||
\begin{table}[htbp]
|
||||
\caption{FOC controller development status}
|
||||
\label{tab:foc_status}
|
||||
\centering
|
||||
\begin{tabular}{l c}
|
||||
\toprule
|
||||
\textbf{Task} & \textbf{Status} \\
|
||||
\midrule
|
||||
VESC firmware compilation & Completed \\
|
||||
Pin compatibility (F405 / L476) & Completed \\
|
||||
Schematic design (KiCad) & Completed \\
|
||||
ERC validation & Completed \\
|
||||
PCB routing & In progress \\
|
||||
Tile footprint correction & In progress \\
|
||||
Board manufacturing & Planned \\
|
||||
Hardware testing & Planned \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
\subsection{Bicycle-Cargo System Control Results}
|
||||
|
||||
\subsubsection{Simulation Results}
|
||||
|
|
@ -642,12 +675,13 @@ avoided when possible and practical. Examples where this could be relevant inclu
|
|||
impose a tripping hazard. There, an encapsulation of an encrypted control frame could be an thought.
|
||||
|
||||
% ******************************** Perspectives and Future Work ************************************************************
|
||||
|
||||
|
||||
\section{Perspectives and Future Work}
|
||||
|
||||
|
||||
Based on the results obtained and the limitations identified during this
|
||||
project, several directions for future work are proposed.
|
||||
|
||||
|
||||
>>>>>>> 9c1f96ca2cf4e79662cccb061b48216d25c523c2
|
||||
\subsection{Hardware Completion and Testing}
|
||||
The VESC-based FOC PCB requires routing completion and prototype
|
||||
manufacturing. Once fabricated, the board must be tested under real
|
||||
|
|
@ -673,7 +707,8 @@ operating conditions (varying loads, road profiles, and battery voltage).
|
|||
%quantities and units. For example, write ``Temperature (K)'', not
|
||||
%``Temperature/K''.
|
||||
|
||||
% ******************************** REMERCIEMENTS **************************************************************************
|
||||
|
||||
% ******************************** REMERCIEMENTS **************************************************************************
|
||||
|
||||
\section*{Acknowledgment}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue