ajout travail hugo
This commit is contained in:
parent
694a067188
commit
e806bc1ef5
5 changed files with 402 additions and 151 deletions
|
|
@ -21,6 +21,7 @@
|
||||||
\citation{mohammd_taher_new_2021}
|
\citation{mohammd_taher_new_2021}
|
||||||
\@writefile{toc}{\contentsline {section}{\numberline {I}Introduction}{1}{section.1}\protected@file@percent }
|
\@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 }
|
\@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 }
|
\@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}
|
||||||
\citation{gieras_modern_2023,gasc_conception_2004}
|
\citation{gieras_modern_2023,gasc_conception_2004}
|
||||||
|
|
@ -46,42 +47,56 @@
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {II-D}4}Dynamic Response}{2}{subsubsection.2.4.4}\protected@file@percent }
|
\@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 {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 {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{b1}
|
\citation{b1}
|
||||||
\citation{b2}
|
\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 {VII}Software and Connectivity}{4}{section.7}\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 {subsection}{\numberline {\mbox {VII-A}}BLE Compatibility With the VESC}{4}{subsection.7.1}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {section}{\numberline {VII}Software and Connectivity}{3}{section.7}\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 {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}2}HC-05 and the VESC}{4}{subsubsection.7.1.2}\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}3}BLE Vulnerability}{4}{subsubsection.7.1.3}\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 {subsection}{\numberline {\mbox {VII-B}}Code integrity}{4}{subsection.7.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 {subsubsection}{\numberline {\mbox {VII-B}1}Context}{4}{subsubsection.7.2.1}\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}2}LispBM extraction}{4}{subsubsection.7.2.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}3}LispBM Code}{4}{subsubsection.7.2.3}\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}4}Proposed Solution}{4}{subsubsection.7.2.4}\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 {subsection}{\numberline {\mbox {VII-C}}VESC Compiling}{4}{subsection.7.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 {section}{\numberline {VIII}Dynamic Modelling and Control of the Bicycle-Cargo System}{4}{section.8}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VII-C}}VESC Compiling}{3}{subsection.7.3}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-A}}Dynamic System Modelling}{4}{subsection.8.1}\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-B}}PI-Based Control Strategy}{5}{subsection.8.2}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-A}}Dynamic System Modelling}{3}{subsection.8.1}\protected@file@percent }
|
\newlabel{subsec:Simulink_model}{{\mbox {VIII-B}}{5}{PI-Based Control Strategy}{subsection.8.2}{}}
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-B}}PI-Based Control Strategy}{4}{subsection.8.2}\protected@file@percent }
|
\@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{subsec:Simulink_model}{{\mbox {VIII-B}}{4}{PI-Based Control Strategy}{subsection.8.2}{}}
|
\newlabel{fig:simulink-closedloop}{{1}{5}{Closed-loop model of the bicycle-cargo system with PI control}{figure.1}{}}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Closed-loop model of the bicycle–cargo system with PI control.}}{4}{figure.1}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-C}}Control Architecture Exploration}{5}{subsection.8.3}\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 {section}{\numberline {IX}Results}{5}{section.9}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {VIII-C}}Control Architecture Exploration}{4}{subsection.8.3}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IX-A}}FOC Controller Validation}{5}{subsection.9.1}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {section}{\numberline {IX}Results}{4}{section.9}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-A}1}Current Status Summary}{5}{subsubsection.9.1.1}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IX-A}}Bicycle-Cargo System Control Results}{4}{subsection.9.1}\protected@file@percent }
|
\@writefile{lot}{\contentsline {table}{\numberline {II}{\ignorespaces FOC controller development status}}{5}{table.2}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-A}1}Simulation Results}{4}{subsubsection.9.1.1}\protected@file@percent }
|
\newlabel{tab:foc_status}{{II}{5}{FOC controller development status}{table.2}{}}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Position tracking error between bicycle and cargo cart.}}{4}{figure.2}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {IX-B}}Bicycle-Cargo System Control Results}{5}{subsection.9.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-B}1}Simulation Results}{5}{subsubsection.9.2.1}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-A}2}Experimental Load Characterization}{4}{subsubsection.9.1.2}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {\mbox {IX-B}2}Experimental Load Characterization}{5}{subsubsection.9.2.2}\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{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 }
|
||||||
|
\@writefile{toc}{\contentsline {section}{\numberline {XI}Perspectives and Future Work}{6}{section.11}\protected@file@percent }
|
||||||
\bibstyle{IEEEtran}
|
\bibstyle{IEEEtran}
|
||||||
\bibdata{PIR_MadMax3}
|
\bibdata{PIR_MadMax3}
|
||||||
\bibcite{patil_analysis_2025}{1}
|
\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{li_quantitative_2019}{2}
|
||||||
\bibcite{mohammd_taher_new_2021}{3}
|
\bibcite{mohammd_taher_new_2021}{3}
|
||||||
\bibcite{gieras_modern_2023}{4}
|
\bibcite{gieras_modern_2023}{4}
|
||||||
|
|
@ -91,5 +106,7 @@
|
||||||
\bibcite{lee_advanced_2001}{8}
|
\bibcite{lee_advanced_2001}{8}
|
||||||
\bibcite{b1}{9}
|
\bibcite{b1}{9}
|
||||||
\bibcite{b2}{10}
|
\bibcite{b2}{10}
|
||||||
\@writefile{toc}{\contentsline {section}{References}{6}{section*.2}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {\mbox {XI-A}}Hardware Completion and Testing}{7}{subsection.11.1}\protected@file@percent }
|
||||||
\gdef \@abspage@last{6}
|
\@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:48
|
||||||
entering extended mode
|
entering extended mode
|
||||||
restricted \write18 enabled.
|
restricted \write18 enabled.
|
||||||
%&-line parsing 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
|
(/usr/share/texlive/texmf-dist/tex/latex/placeins/placeins.sty
|
||||||
Package: placeins 2005/04/18 v 2.2
|
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
|
(/usr/share/texlive/texmf-dist/tex/latex/siunitx/siunitx.sty
|
||||||
Package: siunitx 2022-02-02 v3.0.46 A comprehensive (SI) units package
|
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_marker_box=\box54
|
||||||
\l__siunitx_angle_unit_box=\box55
|
\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
|
(/usr/share/texlive/texmf-dist/tex/latex/translations/translations.sty
|
||||||
Package: translations 2022/01/04 v1.11 internationalization of LaTeX2e packages
|
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
|
(/usr/share/texlive/texmf-dist/tex/latex/etoolbox/etoolbox.sty
|
||||||
Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW)
|
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_exponent_fixed_int=\count298
|
||||||
\l__siunitx_number_min_decimal_int=\count295
|
\l__siunitx_number_min_decimal_int=\count299
|
||||||
\l__siunitx_number_min_integer_int=\count296
|
\l__siunitx_number_min_integer_int=\count300
|
||||||
\l__siunitx_number_round_precision_int=\count297
|
\l__siunitx_number_round_precision_int=\count301
|
||||||
\l__siunitx_number_group_minimum_int=\count298
|
\l__siunitx_number_group_minimum_int=\count302
|
||||||
\l__siunitx_table_tmp_box=\box56
|
\l__siunitx_table_tmp_box=\box56
|
||||||
\l__siunitx_table_tmp_dim=\dimen176
|
\l__siunitx_table_tmp_dim=\dimen189
|
||||||
\l__siunitx_table_column_width_dim=\dimen177
|
\l__siunitx_table_column_width_dim=\dimen190
|
||||||
\l__siunitx_table_integer_box=\box57
|
\l__siunitx_table_integer_box=\box57
|
||||||
\l__siunitx_table_decimal_box=\box58
|
\l__siunitx_table_decimal_box=\box58
|
||||||
\l__siunitx_table_before_box=\box59
|
\l__siunitx_table_before_box=\box59
|
||||||
\l__siunitx_table_after_box=\box60
|
\l__siunitx_table_after_box=\box60
|
||||||
\l__siunitx_table_before_dim=\dimen178
|
\l__siunitx_table_before_dim=\dimen191
|
||||||
\l__siunitx_table_carry_dim=\dimen179
|
\l__siunitx_table_carry_dim=\dimen192
|
||||||
\l__siunitx_unit_tmp_int=\count299
|
\l__siunitx_unit_tmp_int=\count303
|
||||||
\l__siunitx_unit_position_int=\count300
|
\l__siunitx_unit_position_int=\count304
|
||||||
\l__siunitx_unit_total_int=\count301
|
\l__siunitx_unit_total_int=\count305
|
||||||
|
|
||||||
(/usr/share/texlive/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
|
(/usr/share/texlive/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
|
||||||
(/usr/share/texlive/texmf-dist/tex/latex/l3kernel/expl3.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
|
(/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
|
||||||
File: l3backend-pdftex.def 2022-01-12 L3 backend support: PDF output (pdfTeX)
|
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
|
\l__pdf_internal_box=\box61
|
||||||
))
|
))
|
||||||
Package: l3keys2e 2022-01-12 LaTeX2e option processing using LaTeX3 keys
|
Package: l3keys2e 2022-01-12 LaTeX2e option processing using LaTeX3 keys
|
||||||
)
|
)
|
||||||
(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
|
(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
|
||||||
Package: array 2021/10/04 v2.5f Tabular extension package (FMi)
|
Package: array 2021/10/04 v2.5f Tabular extension package (FMi)
|
||||||
\col@sep=\dimen180
|
\col@sep=\dimen193
|
||||||
\ar@mcellbox=\box62
|
\ar@mcellbox=\box62
|
||||||
\extrarowheight=\dimen181
|
\extrarowheight=\dimen194
|
||||||
\NC@list=\toks23
|
\NC@list=\toks23
|
||||||
\extratabsurround=\skip56
|
\extratabsurround=\skip56
|
||||||
\backup@length=\skip57
|
\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
|
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def
|
||||||
File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex
|
File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex
|
||||||
))
|
))
|
||||||
\Gin@req@height=\dimen182
|
\Gin@req@height=\dimen195
|
||||||
\Gin@req@width=\dimen183
|
\Gin@req@width=\dimen196
|
||||||
)
|
)
|
||||||
(/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
|
(/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
|
||||||
Package: textcomp 2020/02/02 v2.0n Standard LaTeX package
|
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 xcolor Info: Model `wave' substituted by `hsb' on input line 1375.
|
||||||
)
|
)
|
||||||
Package translations Info: No language package found. I am going to use `englis
|
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)
|
(./main.aux)
|
||||||
\openout1 = `main.aux'.
|
\openout1 = `main.aux'.
|
||||||
|
|
||||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it 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 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 18.
|
LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 19.
|
||||||
LaTeX Font Info: ... okay on input line 18.
|
LaTeX Font Info: ... okay on input line 19.
|
||||||
|
|
||||||
-- Lines per column: 56 (exact).
|
-- 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
|
(/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
|
||||||
Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section
|
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
|
(/usr/share/texlive/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty
|
||||||
Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO)
|
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 \ref on input line 19.
|
||||||
LaTeX Info: Redefining \pageref on input line 18.
|
LaTeX Info: Redefining \pageref on input line 19.
|
||||||
LaTeX Info: Redefining \nameref on input line 18.
|
LaTeX Info: Redefining \nameref on input line 19.
|
||||||
|
|
||||||
(./main.out) (./main.out)
|
(./main.out) (./main.out)
|
||||||
\@outlinefile=\write3
|
\@outlinefile=\write3
|
||||||
|
|
@ -489,20 +509,20 @@ File: translations-basic-dictionary-english.trsl (english translation file `tra
|
||||||
nslations-basic-dictionary')
|
nslations-basic-dictionary')
|
||||||
)
|
)
|
||||||
Package translations Info: loading dictionary `translations-basic-dictionary' f
|
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
|
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||||
[Loading MPS to PDF converter (version 2006.09.02).]
|
[Loading MPS to PDF converter (version 2006.09.02).]
|
||||||
\scratchcounter=\count304
|
\scratchcounter=\count308
|
||||||
\scratchdimen=\dimen184
|
\scratchdimen=\dimen197
|
||||||
\scratchbox=\box64
|
\scratchbox=\box64
|
||||||
\nofMPsegments=\count305
|
\nofMPsegments=\count309
|
||||||
\nofMParguments=\count306
|
\nofMParguments=\count310
|
||||||
\everyMPshowfont=\toks24
|
\everyMPshowfont=\toks24
|
||||||
\MPscratchCnt=\count307
|
\MPscratchCnt=\count311
|
||||||
\MPscratchDim=\dimen185
|
\MPscratchDim=\dimen198
|
||||||
\MPnumerator=\count308
|
\MPnumerator=\count312
|
||||||
\makeMPintoPDFobject=\count309
|
\makeMPintoPDFobject=\count313
|
||||||
\everyMPtoPDFconversion=\toks25
|
\everyMPtoPDFconversion=\toks25
|
||||||
) (/usr/share/texlive/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty
|
) (/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
|
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
|
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv
|
||||||
e
|
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
|
(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
|
||||||
File: umsa.fd 2013/01/14 v3.01 AMS symbols A
|
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
|
(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
|
||||||
|
|
@ -527,29 +547,29 @@ File: umsb.fd 2013/01/14 v3.01 AMS symbols B
|
||||||
) [1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}
|
) [1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}
|
||||||
|
|
||||||
|
|
||||||
]
|
] [2] [3] [4]
|
||||||
Underfull \vbox (badness 1354) has occurred while \output is active []
|
<./Figures/sys_dyn_matlab.png, id=253, 430.2474pt x 226.6869pt>
|
||||||
|
|
||||||
[2]
|
|
||||||
[3]
|
|
||||||
<./Figures/sys_dyn_matlab.png, id=202, 430.2474pt x 226.6869pt>
|
|
||||||
File: ./Figures/sys_dyn_matlab.png Graphic file (type png)
|
File: ./Figures/sys_dyn_matlab.png Graphic file (type png)
|
||||||
<use ./Figures/sys_dyn_matlab.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 517.
|
||||||
(pdftex.def) Requested size: 252.0pt x 132.77559pt.
|
(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)
|
File: ./Figures/error_fig.png Graphic file (type png)
|
||||||
<use ./Figures/error_fig.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 570.
|
||||||
(pdftex.def) Requested size: 252.0pt x 162.44328pt.
|
(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)
|
File: ./Figures/Motor_currents.png Graphic file (type png)
|
||||||
<use ./Figures/Motor_currents.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 592.
|
||||||
(pdftex.def) Requested size: 252.0pt x 165.48434pt.
|
(pdftex.def) Requested size: 252.0pt x 165.48434pt.
|
||||||
|
[6 <./Figures/error_fig.png (PNG copy)> <./Figures/Motor_currents.png (PNG cop
|
||||||
(./main.bbl [5 <./Figures/Motor_currents.png (PNG copy)>]
|
y)>] (./main.bbl
|
||||||
Underfull \hbox (badness 1490) in paragraph at lines 97--99
|
Underfull \hbox (badness 1490) in paragraph at lines 97--99
|
||||||
[]\OT1/ptm/m/n/8 ------, ``lispbm in vesc,'' []$https : / / github . com / vedd
|
[]\OT1/ptm/m/n/8 ------, ``lispbm in vesc,'' []$https : / / github . com / vedd
|
||||||
erb / bldc / tree / master /
|
erb / bldc / tree / master /
|
||||||
|
|
@ -567,34 +587,35 @@ Before submitting the final camera ready copy, remember to:
|
||||||
uses only Type 1 fonts and that every step in the generation
|
uses only Type 1 fonts and that every step in the generation
|
||||||
process uses the appropriate paper size.
|
process uses the appropriate paper size.
|
||||||
|
|
||||||
[6
|
[7] (./main.aux)
|
||||||
|
|
||||||
] (./main.aux)
|
|
||||||
Package rerunfilecheck Info: File `main.out' has not changed.
|
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:
|
Here is how much of TeX's memory you used:
|
||||||
14802 strings out of 478287
|
14909 strings out of 478287
|
||||||
281591 string characters out of 5849289
|
283324 string characters out of 5849289
|
||||||
566416 words of memory out of 5000000
|
567540 words of memory out of 5000000
|
||||||
32767 multiletter control sequences out of 15000+600000
|
32854 multiletter control sequences out of 15000+600000
|
||||||
505639 words of font info for 98 fonts, out of 8000000 for 9000
|
508470 words of font info for 101 fonts, out of 8000000 for 9000
|
||||||
1141 hyphenation exceptions out of 8191
|
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
|
{/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
|
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
|
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/
|
/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
|
type1/public/amsfonts/cm/cmmi8.pfb></usr/share/texlive/texmf-dist/fonts/type1/p
|
||||||
ublic/amsfonts/cm/cmr7.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/am
|
ublic/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/a
|
||||||
sfonts/cm/cmsy10.pfb></usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8
|
msfonts/cm/cmr7.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/
|
||||||
a.pfb></usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmbi8a.pfb></usr/sh
|
cm/cmr8.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy1
|
||||||
are/texlive/texmf-dist/fonts/type1/urw/times/utmr8a.pfb></usr/share/texlive/tex
|
0.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy7.pfb><
|
||||||
mf-dist/fonts/type1/urw/times/utmri8a.pfb>
|
/usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8a.pfb></usr/share/texl
|
||||||
Output written on main.pdf (6 pages, 315176 bytes).
|
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, 348626 bytes).
|
||||||
PDF statistics:
|
PDF statistics:
|
||||||
301 PDF objects out of 1000 (max. 8388607)
|
372 PDF objects out of 1000 (max. 8388607)
|
||||||
266 compressed objects within 3 object streams
|
329 compressed objects within 4 object streams
|
||||||
57 named destinations out of 1000 (max. 500000)
|
71 named destinations out of 1000 (max. 500000)
|
||||||
304 words of extra memory for PDF output out of 10000 (max. 10000000)
|
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.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.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.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.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.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 [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 [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 [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 [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 [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 [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.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.7.2}{\376\377\000C\000o\000d\000e\000\040\000i\000n\000t\000e\000g\000r\000i\000t\000y}{section.7}% 20
|
\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 [3][-]{subsubsection.7.2.1}{\376\377\000C\000o\000n\000t\000e\000x\000t}{subsection.7.2}% 21
|
\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 [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 [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.2.3}{\376\377\000L\000i\000s\000p\000B\000M\000\040\000C\000o\000d\000e}{subsection.7.2}% 23
|
\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.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 [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 [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 [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 [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.7.2}{\376\377\000C\000o\000d\000e\000\040\000i\000n\000t\000e\000g\000r\000i\000t\000y}{section.7}% 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 [3][-]{subsubsection.7.2.1}{\376\377\000C\000o\000n\000t\000e\000x\000t}{subsection.7.2}% 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 [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 [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 [3][-]{subsubsection.7.2.3}{\376\377\000L\000i\000s\000p\000B\000M\000\040\000C\000o\000d\000e}{subsection.7.2}% 29
|
||||||
\BOOKMARK [1][-]{section.9}{\376\377\000R\000e\000s\000u\000l\000t\000s}{}% 30
|
\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.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 [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 [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 [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 [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 [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 [1][-]{section.10}{\376\377\000D\000i\000s\000c\000u\000s\000s\000i\000o\000n}{}% 34
|
\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 [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 [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*.2}{\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{}% 36
|
\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{url}
|
||||||
\usepackage[hidelinks]{hyperref}
|
\usepackage[hidelinks]{hyperref}
|
||||||
\usepackage{placeins}
|
\usepackage{placeins}
|
||||||
|
\usepackage{booktabs}
|
||||||
\usepackage{siunitx}
|
\usepackage{siunitx}
|
||||||
\usepackage{graphicx}
|
\usepackage{graphicx}
|
||||||
\usepackage{textcomp}
|
\usepackage{textcomp}
|
||||||
|
|
@ -112,6 +113,7 @@ We also argue the need for general public's safety when it comes to these bikes,
|
||||||
% ********************************************* RELATED WORK ***********************************************************
|
% ********************************************* RELATED WORK ***********************************************************
|
||||||
|
|
||||||
\section{Related Work}
|
\section{Related Work}
|
||||||
|
\label{sec:relatedwork}
|
||||||
|
|
||||||
\subsection{Modeling of BLDC Motor}
|
\subsection{Modeling of BLDC Motor}
|
||||||
The electromechanical model of a BLDC (Brushless DC) motor is foundational for understanding its behavior under different control
|
The electromechanical model of a BLDC (Brushless DC) motor is foundational for understanding its behavior under different control
|
||||||
|
|
@ -206,19 +208,160 @@ Third, the security of the wireless communication interface is investigated, wit
|
||||||
vulnerabilities. A Flipper Zero device is used as a diagnostic tool to evaluate potential attack surfaces and identify
|
vulnerabilities. A Flipper Zero device is used as a diagnostic tool to evaluate potential attack surfaces and identify
|
||||||
weaknesses in the communication layer.
|
weaknesses in the communication layer.
|
||||||
|
|
||||||
Finally, a dynamic model of the bicycle–cargo system is developed to improve rider experience.
|
Finally, a dynamic model of the bicycle-cargo system is developed to improve rider experience.
|
||||||
The objective is to minimize the perceived additional effort when towing a cargo cart. This is achieved through a
|
The objective is to minimize the perceived additional effort when towing a cargo cart. This is achieved through a
|
||||||
PID-based (Proportional–Integral–Derivative) control strategy combined with distance sensing, allowing adaptive
|
PID-based (Proportional-Integral-Derivative) control strategy combined with distance sensing, allowing adaptive
|
||||||
assistance based on system dynamics.
|
assistance based on system dynamics.
|
||||||
|
|
||||||
|
|
||||||
% ***************************** Hardware-Based Six-Step Commutation Controller ****************************************
|
% ***************************** Hardware-Based Six-Step Commutation Controller ****************************************
|
||||||
|
|
||||||
\section{Hardware-Based Six-Step Commutation Controller}
|
\section{Hardware-Based Six-Step Commutation Controller}
|
||||||
|
\label{sec:sixstep}
|
||||||
|
|
||||||
|
|
||||||
% ***************************** STM32-Based Field-Oriented Control Motor Drive *****************************************
|
% ***************************** STM32-Based Field-Oriented Control Motor Drive *****************************************
|
||||||
|
|
||||||
\section{STM32-Based Field-Oriented Control Motor Drive}
|
\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.
|
||||||
|
|
||||||
% ************************************** SOFTWARE AND CONNECTIVITY *****************************************************
|
% ************************************** SOFTWARE AND CONNECTIVITY *****************************************************
|
||||||
|
|
||||||
|
|
@ -304,8 +447,7 @@ for the the MAD associates.
|
||||||
% ************************************ DYNAMIC MODELLING ***************************************************************
|
% ************************************ DYNAMIC MODELLING ***************************************************************
|
||||||
|
|
||||||
|
|
||||||
\section{Dynamic Modelling and Control of the Bicycle–Cargo System}
|
\section{Dynamic Modelling and Control of the Bicycle-Cargo System}
|
||||||
|
|
||||||
\subsection{Dynamic System Modelling}
|
\subsection{Dynamic System Modelling}
|
||||||
|
|
||||||
The studied system consists of a bicycle towing a cargo cart through a rigid mechanical linkage. This link is only used
|
The studied system consists of a bicycle towing a cargo cart through a rigid mechanical linkage. This link is only used
|
||||||
|
|
@ -376,7 +518,7 @@ where $e_{\text{ref}} = \SI{-0.5}{\meter}$ represents the desired equilibrium of
|
||||||
|
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[width=\linewidth]{./Figures/sys_dyn_matlab.png}
|
\includegraphics[width=\linewidth]{./Figures/sys_dyn_matlab.png}
|
||||||
\caption{Closed-loop model of the bicycle–cargo system with PI control.}
|
\caption{Closed-loop model of the bicycle-cargo system with PI control.}
|
||||||
\label{fig:simulink-closedloop}
|
\label{fig:simulink-closedloop}
|
||||||
|
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
@ -390,6 +532,33 @@ where $e_{\text{ref}} = \SI{-0.5}{\meter}$ represents the desired equilibrium of
|
||||||
|
|
||||||
\section{Results}
|
\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}
|
\subsection{Bicycle-Cargo System Control Results}
|
||||||
|
|
||||||
\subsubsection{Simulation Results}
|
\subsubsection{Simulation Results}
|
||||||
|
|
@ -476,6 +645,19 @@ What should be a clear conclusion from our test with the jammer is that a contro
|
||||||
avoided when possible and practical. Examples where this could be relevant include electric skateboards, as cables could
|
avoided when possible and practical. Examples where this could be relevant include electric skateboards, as cables could
|
||||||
impose a tripping hazard. There, an encapsulation of an encrypted control frame could be an thought.
|
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.
|
||||||
|
|
||||||
|
\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
|
||||||
|
operating conditions (varying loads, road profiles, and battery voltage).
|
||||||
|
|
||||||
|
% ******************************** CONCLUSION **************************************************************************
|
||||||
|
|
||||||
\section{Conclusion/Summary}
|
\section{Conclusion/Summary}
|
||||||
|
|
||||||
|
|
@ -495,8 +677,29 @@ impose a tripping hazard. There, an encapsulation of an encrypted control frame
|
||||||
%quantities and units. For example, write ``Temperature (K)'', not
|
%quantities and units. For example, write ``Temperature (K)'', not
|
||||||
%``Temperature/K''.
|
%``Temperature/K''.
|
||||||
|
|
||||||
|
% ******************************** REMERCIEMENTS **************************************************************************
|
||||||
|
|
||||||
\section*{Acknowledgment}
|
\section*{Acknowledgment}
|
||||||
|
|
||||||
|
The authors would like to thank Pascal Acco and Thierry Rocacher for their
|
||||||
|
continuous technical guidance and support throughout this project. Their
|
||||||
|
expertise in power electronics, embedded systems, and PCB design was
|
||||||
|
invaluable.
|
||||||
|
|
||||||
|
We also thank La Manufacture Autonome Décentralisée (LaMAD) for providing
|
||||||
|
the use case, the technical requirements, and the cargo bike platform used
|
||||||
|
for validation.
|
||||||
|
|
||||||
|
Finally, we acknowledge the INSA Toulouse GEI department for providing
|
||||||
|
access to laboratory facilities, measurement equipment, and the necessary
|
||||||
|
components for prototyping.
|
||||||
|
|
||||||
|
This work was carried out as part of the 4th-year research project (PIR)
|
||||||
|
at INSA Toulouse.
|
||||||
|
|
||||||
|
% ******************************** IA **************************************************************************
|
||||||
|
\section*{Statement on AI Usage}
|
||||||
|
|
||||||
The authors acknowledge the use of generative AI tools during this project, both for the development work and for
|
The authors acknowledge the use of generative AI tools during this project, both for the development work and for
|
||||||
writing this paper.
|
writing this paper.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue