Bicycles have been studied extensively over the past 200 years, with mathematical models providing valuable insights into various aspects of bicycle dynamics and rider control. However, the lack of a common framework for creating and sharing bicycle-rider models hinders the devel
...
Bicycles have been studied extensively over the past 200 years, with mathematical models providing valuable insights into various aspects of bicycle dynamics and rider control. However, the lack of a common framework for creating and sharing bicycle-rider models hinders the development of advanced models, research reproducibility, and dissemination. This thesis addresses this gap by introducing BRiM: an open-source modular and extensible framework for creating Bicycle-Rider Models.
The modular setup of BRiM relies on a systematic approach to define a model and form the analytical equations of motion. For the involved analytical computations BRiM utilizes SymPy, a Computer Algebra System. The systematic approach consists of four stages. The first stage defines the objects in the system, such as symbols and bodies. Secondly, the kinematic relationships between the objects, such as angular velocities between reference frames, are established. The third and the fourth stages, which are order-independent, specify the loads and constraints acting upon the system. The decoupling BRiM required to achieve modularity is enabled through this systematic approach, because computations within a stage are mostly order-independent.
The core of BRiM employs the systematic approach within a unified framework for modeling mechanical systems in general. It describes a model using a tree representation, in which a model is defined as an aggregation of smaller submodels. The relationships between submodels are established by parent models, using interchangeable connections to accommodate complex relations, such as tyre models between the ground and a wheel. This application of submodels enables swapping and adding submodels, making the overarching model both modular and extensible. Actuation within BRiM can either be specified by attaching prespecified groups of loads to models and connections, or by utilizing the interface provided by the mechanics module in SymPy, which offers the flexibility to even manipulate equations in detail.
BRiM applies this generalized framework to create modular bicycle-rider models. Both a stationary bicycle and a modular bicycle based on Moore's convention of the Carvallo-Whipple bicycle have been constructed. These bicycle models are extensible to bicycle-rider models by including an upper and/or lower body. Within the rider models each joint can be actuated by a linear torsional spring-damper. BRiM integrates parametrization of models, which provides mappings between symbolic quantities used in equations and experimentally determined values, using the existing open-source BicycleParameters library. Additionally, SymMePlot, a visualization package for symbolically defined mechanical systems, has been developed and integrated within BRiM to visualize the created bicycle-rider models.
The effectiveness of BRiM is demonstrated through optimization and simulation tasks. Firstly, a real-time forward simulation of a torque-driven upper body bicycle-rider is performed. Secondly, an optimization problem is solved, involving the tracking of a rolling disc along a sinusoidal trajectory while minimizing the control torques. These demonstrations highlight the seamless integration of BRiM with other scientific tools and BRiM's potential for practical applications.
In conclusion, BRiM fills the gap in bicycle dynamics research by providing a modular and extensible framework for creating and sharing bicycle-rider models. Its systematic approach, unified framework, and integration capabilities enable efficient model development, research reproducibility, and further advancement in bicycle research.