The goal of this project is to introduce simulation earlier in the design process by automating the workflow associated with the design and control of complex mechanical systems.
NI, Autodesk and UC Berkeley are partnering to bring Inventor and NI platform together via Modelica. #NIWeek— Desktop Engineering (@DEeditor) August 6, 2015
In the workflow, we start with a CAD model of our complex system then transfer the model into a simulation environment, where control software can be designed to control both the model in a simulation and the physical system. We can repeat this process until we get satisfactory behavior from our system before manufacturing the physical system.
We model our mechanical system in Autodesk Inventor. The CAD environment allows us to add constraints and specify material and mass properties. This information is crucial for modeling the dynamics of a mechanical system.
We use the Modelica modeling language as an intermediate step to convert the Inventor model into a LabVIEW block for control and simulation. We take advantage of the Modelica Standard Library for ready-to-use components to add multimedia components: motors, sensors, input and output blocks, and more.
LabVIEW is a convenient tool for simulating dynamic systems, testing controller designs, and deploying control systems to real-time hardware in an integrated environment. Given a complex mechanical system as a FMU from Modelica, we convert the system into a plant model, tune system parameters, and design multilayer control systems for the mechanical system.
LabVIEW simulation provides useful data about the position, velocity, and acceleration of all components using the original Modelica model. This information is used to visualize the dynamic behavior of the complex system by exporting the data to Inventor and using Inventor Dynamic Simulation.
The inverted pendulum is an inherently unstable system and a classic problem in dynamics and control theory. In the workflow, we start with a model of our system and bring it into a simulation environment to design a control system and verify the dyanmics of the system before manufacturing.
We start with a physical model of the inverted pendulum system, reverse engineer the process of designing it using Inventor, and export details of the system to LabVIEW. Then we compare results of simulations of the system in LabVIEW with the results of connecting the same control schema to the physical system.
A model of the inverted pendulum is created in Inventor using dimensions from the fixture. The inverted pendulum system consists of three main parts: the pendulum, the stage, and the base. The stage slides along the base and the pendulum rotates about a point on the stage.
A Modelica model of the inverted pendulum is created using the Inventor-to-Modelica translation software. The translator is able to convert the constraints from the CAD model correctly but did not include multimedia elements needed in our model.
We can add the multimedia elements and relationships not captured by the translator by taking advantage of the Modelica Standard Library. For the inverted pendulum, we add components such as friction blocks, sensor blocks, and input/output terminals.
To convert our inverted pendulum model from Modelica to LabVIEW, we use JModelica and the Functional Mock-up Interface, a tool independent standard that supports model exchange and co-simulation.
In LabVIEW, we calibrate our model specifications by performing experiments comparing the simulation and the real time system to get accurate models of each component. For the inverted pendulum system, we tune the linear motor gains and friction coefficients.
We implement a simple PD control system for the position of the stage in simulation and compare the results from the simulation with the results from the real time system using the same control system. In this example, we approximate friction with damping since the Modelica static friction blocks had trouble exporting to LabVIEW.
LabVIEW simulation provides useful data about the position, velocity, and acceleration of all components using the original Modelica model. This information is used to visualize the dynamic behavior of the complex system by exporting the data to Inventor and using the Dynamic Simulation tools available.