130VDC Motor control with Arduino

Discussion in 'The Projects Forum' started by ilijamt, Jan 5, 2014.

  1. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    Hi,

    I have the following motor available, and I would like to be able to control it pretty accurately.

    This is the motor that I have and I want to control.

    Can anyone give me suggestions on how to proceed, as this is my first time, trying to control something this powerful, as I don't have experience with this, this is my initial thoughts, and can someone help me to see if I'm on the right track.

    My resistor values are a little low, but they can be adjusted later

    I want to be able to control the motor for up to +- 0.5 RPM , if it can be done +- 0.01 even better.

    My initial thoughts about controlling the motor was using an Full MOSFET H Bridge with back EMF Diodes.

    [​IMG]

    I'm planing to use PID controller on the Arduino to control the RPM of the motor, also I know that the PWM pins on the arduino is from 0 to 255, is to use a dual PWM circuit for a finer RPM control.

    Thanks for any help you can give me.
     
  2. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    What means of feed back do you intend using for that degree of control?
    Max.
     
  3. strantor

    AAC Fanatic!

    Oct 3, 2010
    4,302
    1,988
    Im assuming the purpose of the middle 2 optos is armature feedback for speed regulation? Not sure thats going to cut it. Youre probably going to need encoder feedback.
     
  4. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    The two middle opto functions are a mystery, the output side is only rated for 100ma and there does not appear to be anything to restrict the current, particularly with the 130vdc version of motor?
    Max.
     
  5. 4pyros

    New Member

    Jan 3, 2014
    22
    3
    Where did you get that circuit?
     
  6. bertus

    Administrator

    Apr 5, 2008
    15,648
    2,346
    Hello,

    It looks like the middle optocouplers are used to switch the back-EMF diodes.
    As stated there is no current limiting on them.

    Bertus
     
  7. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    The two diodes are used to prevent a back-EMF diodes from the motors when we switch them on and off at high frequencies, on both sides to short out the back EMF in one direction.

    The SG ( Signal Ground ), and PG ( Power Ground ) are used to separate the grounding between the Motor and the Arduino, because of the interference caused by the high voltage on the ground wire.

    The middle opto-isolators are used to control which diode is on.

    The other opto-isolators are used to control the motor, and protect the low voltage systems from high voltage.

    As this motor doesn't have an encoder on the motor, so reading the speed will have to be done somehow.

    The purpose of this motor is to control ladles for mixing liquids, the motor is gonna spin several ladles connected with a belt.

    If the motor is not rotating the ladles, we should be able to calculate what is the current RPM based on the power and load the motor is drawing from the system, but if there something, there are other parameters that need to be adjusted.

    The circuit was adapted from a book from my university.

    If there is another way to do this, I'm open to suggestions, as I said I'm kinda new when it comes to designs like this, so I'm open to suggestions.

    Ilija
     
  8. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    The way I interpret it there will be full voltage across the output of the opto in one motor direction with no current limit for the opto output?
    Max.
     
  9. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    The Lines 1, 2, 3, 4 are controlled by a logic circuit.

    [​IMG]

    The power will be controlled by a PWM pin on the Arduino, and the Lines 1, 2, 3, 4 are generated from the circuit on the picture.

    The PWM will be attached to base of the H11D3M, which should limit the power flowing to the motor, and thus control the rotation of the motor.
     
  10. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    Turns out the motor has an encoder, that can measure revolutions, by counting gears, every 6 gears = 1 revolution.

    That should be enough to achieve at least +- 0.5
     
  11. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    If the output of the gear detection is a square wave pulse, you can detect the rising and falling edge to increase the resolution x2 if needed.
    Max.
     
  12. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    Any ideas on how to improve this?
    Or even a better design for motor control like this?

    I will see soon, I won't be home for the next week, so I can't check what's the signal.
     
  13. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    5,435
    1,305
    Why aren't you using the 24v model? The driving electronics is much easier to make and much safer, and it only requires 24v DC at 2.6 Amps so the 24v DC PSU can be any cheap 24v SMPS.

    Also a 2.6A 24v DC motor driver can be bought fairly cheaply as a complete module.

    Secondly what is the motor driving and how accurate does the RPM need to be?

    I did a DC motor algorithm here;
    http://www.romanblack.com/onesec/DCmotor_xtal.htm
    which will lock the motor speed to xtal speed, ie "clock" accuracy of average speed.

    That algorithm will work very well if your motor is driving a reasonably constant load, or if you are driving a highly variable load we can suggest other systems of speed regulation (but we need to know what it is driving and why the speed accuracy is important!).
     
  14. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    As I said in the beginning that is the motor I have, I don't want to buy a new one.

    As for what is it gonna drive, there is gonna be belt connected to the motor, and with a mechanism spinning 8 ladles, all of them will spin together, and all of them will be in water, so the spinning of the ladles will happen while they are under water.

    I would like it to be accurate up to +-0.1 RPM, max RPM is 465, but it usually wont go over 120 RPM.

    To achieve finer control I plan to use two PWN pins together for 10-12 bit resolution which should give me between 1023-2047 states to control.
     
  15. Alec_t

    AAC Fanatic!

    Sep 17, 2013
    5,797
    1,103
    What on earth are you mixing with ladles which demands such great accuracy (1 part in 1000)? Won't belt tension variations and liquid turbulence cause greater error than that?
    Why do you need a reverse option for ladles? The circuit could be simplified for one direction of rotation.
     
    Last edited: Jan 12, 2014
  16. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    Using a DC motor you are going to need some feedback device of some kind and PID type of loop to get that accurate a control.
    Max.
     
  17. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
    Actually what I wanted to know is, how does the control circuit look ?
    Is it a proper design for the circuit?

    Do I need to add some other elements in the design to have a better or more stable circuit?

    It was mentioned I don't have anything to limit the current.
    For the middle opto-isolators there is no need to limit it, is there ?
    What about the others ?

    Not really necessary but since I'm doing it why not do it like that, even +-0.5 RPM is more than enough.

    I'm only interested in the RPM of the motor not in the actual RPM of the ladles (but it's a nice idea, first I want to be able to control the motor then maybe we will see about monitoring the actual RPM of the ladles).

    I know it will be implemented using a PID control loop, as I said the motor has an encoder that counts gears (6 gears = 1 revolution).
     
  18. jrz126

    New Member

    Sep 17, 2008
    7
    0
    How big are the ladles? Are you sure that motor is even powerful enough?
     
  19. ilijamt

    Thread Starter New Member

    Dec 24, 2013
    10
    0
  20. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    Or 5.4lb-in after reduction @ 6:1?
    2500rpm motor.
    Max.
     
Loading...