Motor control is a complicated and advanced topic, with a wide range of intricacies and pitfalls that depend on the number of motors, motor type and sensored or sensorless motor drivers.
NXP has a number of ready-to-use motor control algorithms (middleware), and the best way to get started is with the FreeMaster examples included in the MCUXpresso SDK. These examples utilize the FreeMASTER Run-Time Debugging Tool, a user-friendly real-time debug monitor and data visualization tool that enables runtime configuration and tuning of embedded software applications.
FreeMASTER supports non-intrusive monitoring of variables on a running system and can display multiple variables on oscilloscope-like displays as standard widgets (gauges, sliders and more) or as data in text form, offering simple-to-use data recorders. It can link with HTML, MATLAB® or Excel to other scriptable frameworks or even popular visual programming tools like Node-RED.
MCUXpresso SDK Examples
Several examples, demos and drivers are available within the SDK to help you get started. Some common example related to motor control are listed below.
AC induction motor middleware.
Brushless DC electric motor middleware.
Freemaster middleware for motor control examples.
Permanent magnet synchronous motor middleware.
Tools and References
RTCESL Libraries A group of algorithms ranging from basic mathematics operations to advanced transformations and observers, which can be easily incorporated into complex real-time control applications and used in our motor control reference designs.
AMCLIB User’s Guide Describes the Advanced Motor Control Library (AMCLIB) and optimized functions for the family of Arm Cortex M7F core-based microcontrollers.
Quad Motor Control Development Platform Shows how a single i.MX RT1050 Crossover MCU can control up to four different motors, while managing wired or wireless connectivity and an HMI interface.