Motor GUI for motor control, monitoring, tuning, and IMU visualization.
- Serial UART,RS485 and CAN support
- Motor ID detection
- Motor mode switching:
- Stop
- Self-test
- Calibration
- Open-loop
- Current loop
- Speed loop
- Position loop
- Target control for:
- Iq
- Id
- Speed
- Position
- Uq / Ud
- PID tuning interface
- Limits configuration
- Real-time data monitoring
- Communication log
- Manual hex command sending
- IMU 3D visualization
- Optional custom 3D model loading
motor_gui.py— main GUI applicationrun.batrun.sh
sh ./run.shbash run.batThe application contains these tabs:
- Connection
- Motor Control
- PID Tuning
- Real-time Data
- Limits
- Communication Log
- Manual Command
- IMU 3D Display
- Select communication interface:
- UART
- RS485
- CAN
- For serial:
- Choose serial port
- Choose baudrate
- For CAN:
- Set CAN channel
- Set bustype
- Set bitrate
- Click Connect
- Click Detect Motor ID
- Select the detected motor ID in the motor control tab
Available modes:
- Stop
- Self-test
- Calibration
- Open-loop
- Current loop
- Speed loop
- Position loop
Depending on the control mode, set:
- Iq target
- Id target
- Speed target
- Position target
- Uq / Ud target
Then apply the values through the GUI.
Use the PID tuning tab to adjust controller parameters.
Use the real-time data and IMU tabs to observe:
- Currents
- Speed
- Position
- IMU orientation
Use the manual command tab to send raw hexadecimal commands and inspect received data.
- Check whether the device is connected
- Verify system permission for serial devices
- Refresh the port list
- Install
python-can - Verify CAN adapter, channel, and driver configuration
- Confirm Python 3 is installed
- Confirm all required packages are installed
- Re-run the .bat or .sh
- Activate the virtual environment before running