Skip to main content

Motor position and velocity control using slg47105

2 months ago

Motor position and velocity control using slg47105

Posted by mactro 0 points 1 reply
0 upvotes

Hello,

I would like to control position and velocity of a motor. I have found slg47105, which has high enough output current, but I'm not sure whether it is possible to implement PID controller on it. I have found an application note for the motor control, but it uses a lot of dicrete components to implement a PID. In my case this is not an option, since I have very limited space on PCB. Is it possible to implement PID without using external components?

The specific requirements for my motor controller are:

  • reading quadrature encoder pulses
  • controlling motor posistion and sending it to supervisory MCU
  • controlling motor velocity and sending it to supervisory MCU
  • reading motor current and sending it to MCU
  • ideally, there should be a possiblity to adjust PID settings by sending a command via I2C

If necessary, I can accomodate one more IC in a package not bigger than 3x3mm.

2 months ago

ssaravan

Hi,

Thank you for reaching out.

1. The encoder pulses can be read but not more than one encoder since there is only one FSM in the IC

2. The motor position can be set by using the CNT/DLY blocks using the counter data or delay time in the macrocell

3. velocity can be controlled by the PWM block present

4. Current can be measured by connecting a shunt resistor across one of the sense pins

Could you please also take a look at the SLG47004 with integrated opamps, rheostats - https://www.dialog-semiconductor.com/products/slg47004, here is a linl to the DS https://www.dialog-semiconductor.com/sites/default/files/slg47004_ds_2v2.pdf. .