I'm looking at replacing some steppers with a BLDC to get smoother operation and higher speed. The BLDC motor we want to use is this one.
It is a small 2-axis robot that requires accurate position control but I also want to have speed control if possible (rather than just a step and direction input). The maximum motor speed is probably less than 100 RPM. The motor is sensorless and I found some sensorless controllers like this one but they don't incorporate position control. The encoder on this motor is SPI anyway so I doubt I'll find such a controller.
There will already be another processor (RPi-based) with the main application running, but it's not capable of the high speed requirements of this real-time motor control so there needs to be another external controller. I figured a motor controller like the one above with a small MCU for closing the position loop might work, but then why not just have the MCU do the whole thing (aside from the extra firmware development required). I was looking at the PIC18F2431 which includes a motor feedback module.
In this case it's likely I would use UART or SPI to send motion profiles and get position and status feedback to/from the MCU.
Any other options or factors I should consider?