Hi Folks. I left you guys last time with news that electrical noise from the motor was causing problems with some of the important signals in the design. The PWM signal from the PC that lets the motor know how much force to produce and in which direction was so distorted that is was unusable and the encoder signals were affected at high currents. I ordered a new motor driver with integrated phase current sensing to move the motor traces far away from the signal traces on my board, but when It arrived, it did not fit on the current C2000 launchpad with my custom driver board well at all. When I did get it to fit, I had to re-do the encoder connection and ended up breaking one of the pins off of the back of my US digital encoder... This was the second pin that broke on this encoder and It took some real finesse to re-attach the previous one.
Instead of trying to patch the encoder up and continue testing, I took this as an opportunity to address some of the major design flaws with the project.
First, the encoder is a pain to install. It requires a custom 3D printed adapter, Standoffs and also requires gluing to the motor shaft, which at best is tedious and at worst causes misalignment that could rip the connection apart at high speeds. Also I was using a single ended encoder, which is susceptible to noise compared to a differential encoder. To remedy this I searched and searched for a through-shaft encoder to easily attach to this dual shaft stepper motor. After several hours of searching for a through shaft encoder with a 12mm hole with no luck, I was just about ready to give up. Then I had one final idea...Check Alibaba. Immediately I was presented with several serviceable solutions and settled upon the GHH60-12G5000BKL5(60mm outer, 12mm through hollow shaft, 5000PPR, 5v line driver output, 1 meter cable side) encoder from CALT. I should be receiving the motor and encoder by next Monday, so We I'll be interested in the quality of the encoder and to see how well the motor and encoder fit together. Hopefully this will solve the encoder noise and fitment problems for good.
Another problem was the entire interface to the STM board. I was trying to isolate all of the signals from the board, but the power for the board and the USB comms were two separate connectors so there were a lot of wires everywhere on my desk. To simplify this, i will power the STM from the motor supply and isolate between the computer and the STM USB comms. This will require a custom adapter board that will connect the motor driver, C2000 board and the STM. It will also contain the differential signal receiver for the encoder. Here is a block diagram of what the new system will look like.
I hope to be getting into some of the PCB design soon, but I have been doing a lot of that at work lately so it's hard to find time/motivation. Should have something by the end of the year.