Motion Driver for SimMechanics
One way to actuate a SimMechanics model is by providing its Actuator blocks with 'Motion' signals. The input to a 'Motion' actuator is a three-element vector containing position, velocity and acceleration signals.
In many applications, the only data that is available is the position. This raises an interesting question: how can we calculate consistent velocity and position signals? One way to actuate a SimMechanics model is by providing its Actuator blocks with 'Motion' signals. The input to a 'Motion' actuator is a three-element vector containing position, velocity and acceleration signals.
In many applications, the only data that is available is the position. This raises an interesting question: how can we calculate consistent velocity and position signals? Differentiating the position signal sometimes works, but the velocity and acceleration signals tend to become very noisy. A better - though less intuitive approach - is to create a second-order tracking filter and use its position, velocity and acceleration signals to drive the actuator.
This file contains a small Simulink library, motdrv_lib and an example file, mech_motdrv. To use these, copy the files to your computer, add the directory to the MATLAB search path (see addpath for help) and type mech_motdrv in the MATLAB Command Window.
Cite As
Daniel (2024). Motion Driver for SimMechanics (https://www.mathworks.com/matlabcentral/fileexchange/27589-motion-driver-for-simmechanics), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- Simulink > Modeling >
- Physical Modeling > Simscape Electrical > Applications > Motor Drives and Power Electronics > Converters (High Power) >
Tags
Acknowledgements
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
motdrv_lib/
motdrv_lib/
Version | Published | Release Notes | |
---|---|---|---|
1.3.0.0 | Fixed typographical error in description and updated MATLAB release number to match latest code. |
||
1.2.0.1 | Updated license |
||
1.2.0.0 | Enhanced to support inherited initial conditions. Velocity-driven version of block introducted. |
||
1.0.0.0 |