u/unusual_username14

Any strategies to achieve straight line motion on my 6-axis robot?

The limitation of the hardaware is that I'm communicating to each joint over CAN from my laptop, which I found to be slow. It seems I cannot go over 20 Hz before finding comm issues.

As I see it, the only solution is to use a microcontroller and control the stepper motors with Pulse/Direction commands. Or is there an alternative solution?

Motors: Nema17 stepper

Driver: Closed-Loop SERVO42D CAN driver

Another issue: When sending position commands, the driver implements a trapezoidal, so naturally, with continuous small commands, the motion will be jerky.

I've tried streaming velocity commands instead, which works a bit better, but still unable to achieve smooth motion, as seen in the video.

For more details about the robot, feel free to check the YT video:

https://youtu.be/eowXnKFP63c?si=vKJIxuGsIe-FVQj2

u/unusual_username14 — 15 days ago