Automation with Python – Building a Scalable Automation Project for Drive Unit Design

Automation is frequently discussed amongst CAE engineers.  Many engineers have achieved some level of automation, but often at a micro level for a very specific task that fits into a much larger process.  Additionally, do these automation routines run blindly or intelligently decide what to do next?  Large scale automation quickly presents many challenges, such as storing data, interpreting results, and error handling.  The reality is that automation is very complex, requiring detailed consideration of the inputs, constraints, targets, and design logic, therefore requiring transmission design engineers to be heavily involved in the process.

In this webinar, we presented a newly developed open source Python package that lays a foundation for building scalable automation for drivetrain design and analysis.  Explaining the structure and usage of the Python automation building blocks is the primary purpose of the webinar.  Additionally, we demonstrate how to apply this automation package to a complex 6-speed drivetrain system simulation model.  To do this, we develop a logic for catalogue bearing selection and incorporate it into our code, thereby automating the bearing selection process for 19 rolling element bearings in our system.  After each analysis run, our scripted logic chooses each new bearing from the Romax database of over 37,000 bearings.  Such systems are complex, with many variables and dependencies, making the design process highly iterative and thus attractive for automation.  We emphasize that our modular Python automation package can easily extend to include additional logic, e.g. gear design and architectural layout.  By establishing this foundation for large scale automation, CAE engineers can focus more on developing the best drive unit designs, and less on the user interface.