Many innovative ideas and technological advances are born from passion, and the motorcycle racing simulator developed by Frédéric Nicolo is no exception. A numerical and scientific calculation engineer in France, Mr. Nicolo's love for motorcycles inspired him to start his own venture after realizing there were no motorbike simulators that performed at the same level as existing driving simulators for cars. Using MapleSim, the modeling and simulation tool from Maplesoft, he was able to successfully develop his simulator, designed to accommodate the unique characteristics of motorbikes. "The motorbike world addresses a limited audience; motorcycle manufacturers are few and investment in research and development is low compared to the automotive sector," he said. "Physical phenomena relating to motorbike racing are harder to replicate in a simulator. These encompass a broader spectrum than with cars - such as pitch and roll - and very few of these factors can be disregarded or approximated."
In order to simulate the many physical phenomena for this project, it was essential for Mr. Nicolo to find a suitable tool to accurately model them. The various domains involved in the development of a racing simulator make it necessary to have an effective tool that allows for a rapid, highly scalable, multi-domain design model. Previously, Mr. Nicolo used a hand-coded digital model in C++ for motorbike simulations. Coding a motorcycle dynamics model from scratch was a very rewarding experience for him, but it had its limitations, particularly on the level of accuracy and the scalability of the model. "I was then introduced to MapleSim which, I discovered, provides a great amount of sophistication in physical modeling required for these experiments," Mr. Nicolo explained. "I received access to an evaluation copy of MapleSim and this trial period made me feel confident that the MapleSim solution would meet my numerous requirements, from the perspective of physical modeling, performance and interoperability of the computed generated code. The code generated from a MapleSim model is free of all licensing and proprietary libraries, allowing the user to design digital models that can be adapted seamlessly into many real-time environments."
Much of his work on the simulator focuses on the calculation of motorcycle dynamics in order to have a solid and realistic simulation basis for the behavior of a motorcycle. The project encompasses the following elements:
• Acquisition of rider/motorbike interactions
• Physical modeling and simulation of the rider, the motorbike and its environment
• Using modeling results to create a realistic experience for the simulator rider
• Description and 3D visualization of the virtual world where the rider and his machine operate
• Inclusion of a sound system in the virtual world
Mr. Nicolo had previous experience using the Modelica modeling language and MapleSim's use of Modelica helped facilitate the development of a motorcycle dynamics model that incorporates these elements. His models were comprised of elements developed using MapleSim Multibody and 1-D Mechanical Libraries, elements developed in C++ and interfaced in MapleSim, and a servomotor controller developed in MapleSim. He tested the integration of a number of modules previously developed in C++ and, with some adaptation, optimized the generated code, allowing him to build efficient and scalable executables. "I was able to successfully test the real-time run of the motorcycle dynamics model in fixed step at 200µs on a current medium-range machine configuration," he added.
The models also span multiple domains with inclusion of communication elements such as Ethernet modules, and components, including a driver card needed for the code to work on the motorbike simulation platform, Mr. Nicolo explained. "The goal was to develop a MapleSim model which, once compiled as executable, can be used directly on the simulator," he said. "MapleSim offers a real advantage as a model-integration platform - combining models from a variety of engineering domains and techniques - because of MapleSim's Modelica capabilities and the ability to use external C code on MapleSim models."
Using the MapleSim code generation application was an important step for Mr. Nicolo because it allowed him to generate executable code for reconfiguring the whole motorbike without having to regenerate the model from within MapleSim. The analysis window integrated with MapleSim combines two complementary approaches when processing simulated data, offering an initial qualitative approach that can be executed rapidly by visualizing the results as a 3D video. "With this feature, you can process the information quickly and decide to review your test scenario and modeling, or move toward a more detailed approach with analysis of the simulation results," Mr. Nicolo said. "There again, the quantitative approach is made easier with the available tools in MapleSim. Comparing the results of several simulations is also a very interesting feature. The post-processing of calculated data and the development of models are greatly simplified by these tools."
Mr. Nicolo emphasized that his project can continue to benefit from MapleSim as the motorbike simulator becomes more complex and incorporates more accurate models. Moving forward, he plans to utilize MapleSim for even more functions in his simulator project, including data acquisition processing, sizing of mechanical parts and actuators on the simulation platform, and design and development of the control loops of the simulator actuators.
"As the simulator continues to evolve, it will be able to perform even more functions with greater accuracy. The MapleSim solution provides the motorcycle simulator with effective tools to further develop system performance," Mr. Nicolo said. "MapleSim's numerous tools and capabilities are driving the success of this project."