Shop OBEX P1 Docs P2 Docs Learn Events
0 to +10Vdc signal @ 1024 steps for speed control of a motor — Parallax Forums

0 to +10Vdc signal @ 1024 steps for speed control of a motor

4Alex4Alex Posts: 119
edited 2010-03-08 00:06 in Propeller 1
Hi everybody,

I would like to interface a propeller to a digital servo motor controler. This controler can, among other things, vary the speed of a motor through an external potentiometer. The controler recognises 1024 steps between 0 and +10 Vdc and proportionally set the speed. Here's my question: anyone knows of a chip or circuit that could be connected to a propeller (3v3) and generate between 0 to +10v at reproducible set increments? BTW, it requires only very low, signal-type, current.

I've thought of a digipot but I couldn't find one that supports 10v nor 1024 steps...

Thanks for any assistance.

Cheers,

Alex

Comments

  • Mike GreenMike Green Posts: 23,101
    edited 2010-03-06 15:01
    You will need a 10-bit or better DAC to produce the 1024 steps. That will produce a voltage between 0 and +3.3V which you will have to run through an op-amp buffer to produce the 0 to +10V signal.

    That seems like a lot of work to control a motor controller. Doesn't it have some other kind of input that the Propeller could control more directly?
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2010-03-06 15:41
    Mike, wouldn't the RC DAC circuit through an opamp work? The DAC will work but it sounds like overkill.

    @Alex: As to "reproductible set increments" that sounds a bit strange for an analog 0-10V signal controlling a motor which has it's own variabilities. Either the system measures it speed or some other parameter and feeds back in a servo loop or the exact speed it is not really important. Have a look at my post to another thread regarding 0-10V signals http://forums.parallax.com/showthread.php?p=886089

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    *Peter*
  • kwinnkwinn Posts: 8,697
    edited 2010-03-06 15:48
    @Peter, it's possible the controller 4Alex is talking about has the servo control loop built in and only requires a voltage proportional to the desired speed.
  • 4Alex4Alex Posts: 119
    edited 2010-03-06 20:27
    Hi guys,

    Sorry if I didn't replied sooner but my tender half, the love of my life, is to blame for insisting that household chores must be done... right away! (why it inevitably falls on a Saturday morning at the precise moment I start playing with my toys baffles me) Anyway, back to the fun stuff.

    @Mike:
    I'd like to use a salvaged (kind of) digital controller for a brushless motor. The one I have on-hand was designed for a PLC interface, hence the 0-10Vdc ramp. Actually, there's also an even worst option that's availlable to me: -10 to 0 to +10Vdc... They do sell a brand new serial (RS485) model but it's way, way over my means (otherwise I'd hire someone to do the aforementioned household chores, trust me). However, thank you very much for your solution. BTW, my Honey thanks you for the last posting you helped me with: It turns out that I didn't burned down the house...

    @Peter & Kwinn:
    I've double-checked the datasheet and they do say "... analogue input set value: 0..10Vdc (Ri=132 kOhms), Resolution: 1024 steps." As for servo control loop, there's an embedded Hall sensor in the motor. Peter, I've looked at your previous posting and that should be perfect for me. I guess the Vp would be +10vdc and 103 would be 0.01 µF?

    Thank you so much for your help.

    Cheers,

    Alex
  • Mike GreenMike Green Posts: 23,101
    edited 2010-03-06 21:00
    @Peter - Yes, using one of the cog counters with an RC filter would work just fine with an op-amp buffer as shown in the thread you provided.

    The application note (AN001) on the cog counters describes how to do this.

    Yes, burning down the house would be a really annoying beginning to an otherwise nice weekend.
  • HollyMinkowskiHollyMinkowski Posts: 1,398
    edited 2010-03-06 22:10
    I'm a master of crackpot ideas so here is yet one more smile.gif

    Would it be possible to take a small low V ac transformer and hook it to a bridge rectifier
    and use the propeller to switch a transistor on/off to allow only a narrow slice of each dc
    waveform pulse to pass on to a filter?

    Seems like just moving the slice of the 0 to max V dc wave that the prop allows to pass would
    give you any dc voltage from 0 to the max the transformer could deliver. You would be delivering
    240 slices of dc from the bridge circuit per second since you could use a slice from both the rising and the falling
    part of the 120hz waveform.

    I'd think the prop is fast enough to control the transistor and sense the V ???

    I wonder just how stable such a strange pwr supply would be? and how much pwr could it handle....
    It should have more than the 1024 parts of resolution and a 10 cent transistor would handle
    a few hundred ma or so. You could detect 0V dc and use that to let the prop calculate when to
    switch the transistor on and off to deliver a desired voltage....that would be easy and cheap.

    Maybe you could run the motor directly using such a setup and delete the digital servo motor controller from
    the project?
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2010-03-06 22:14
    Alex, unless you use a rail-to-rail opamp you will need 12V or more as the LM358 can only go to within 1.5V of the supply but otherwise there is nothing wrong with it in this application. I was guessing that the motor was as you said a digital servo motor so my comment was meant highlight then your confusing requirement of "reproducible set increments".

    You also have to train your wife Alex smile.gif and teach her all about engineering timing units such as when you say "in a minute", well that means "not now". smile.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    *Peter*
  • 4Alex4Alex Posts: 119
    edited 2010-03-06 22:30
    @Peter:

    Thank you, I'll use a 12v rail.

    As for the household, pardon my cowardice, but I'll let YOU do the talking... (good luck on that one, if you can ever place a word).

    Cheers,

    Alex
  • John R.John R. Posts: 1,376
    edited 2010-03-06 23:07
    This is very similar to the application Peter referenced. Right now I'm working on getting the encoders hooked up, and getting the rest of the "electrical" (power routing, connections to the various components), so I haven't really done much with the 0 - 10 volt signal, other than use 12 Volts across a 10K Pot. I'll let you know what I end up doing. I'm leaning toward some type of DAC so that I can set a solid 5 Volts out for "neutral" in my case. Subject to change...

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    John R.
    Click here to see my Nomad Build Log
  • kwinnkwinn Posts: 8,697
    edited 2010-03-07 02:27
    I cannot help but wonder if a voltage multiplier or boost regulator style circuit would work for this application.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2010-03-07 04:22
    The opamp is already a "voltage multiplier" in that it takes the 0 to 3.3V signal and multiplies it to 0 to 10V. Of course there are actually voltage multipliers or boost regulators used to step-up power supply voltages rather than signals. It is possible therefore to have a boost regulator to convert from 3.3V to 12V and have that power the opamp "multiplier". Theoretically you could have a voltage directly control a boost converter to directly generate the 0 to 10V signal but it's a lot harder and the regulator would have trouble tracking the control signal due to filtering etc. The opamp is a very fast servo amplifier and buffer ideal for this type of thing.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    *Peter*
  • kwinnkwinn Posts: 8,697
    edited 2010-03-07 15:33
    @Peter, what you say regarding regarding the opamp is true, but it now means adding a 12V power supply to the circuit. If all you need is a 0-10V reference voltage at very low current it might be possible to generate that with a few diodes and capacitors in the case of a voltage multiplier, or a small inductor, diode, and capacitor for a boost regulator.

    I agree that you would have trouble tracking a control signal that has to change rapidly, but for an application that only needs a reference signal (ie 10V=100% speed, 6V=60% speed) it may work. After all, if a PWM signal on an I/O pin can be filtered to provide a DC control signal I see no reason the same cannot be done for a voltage multiplier output or boost regulator style circuit.

    Obviously this approach would only be used in a case where you only needed one such signal and did not have a 12V supply available.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2010-03-08 00:06
    Kwinn, if this was a USB or battery powered system then a boost converter would be in order. But ask yourself the question, where is the +5V powered from? Invariably it is a mains supply and 12V is a very common supply to use. I don't even think it is a question of trying to boost the power as that usually complicates matters rather than simplifying them. The way I see it, you have 12V in, regulate to 5V and/or 3.3V and that's it. The opamp is trivial but needed nonetheless in either boost or buck regulation to ensure that the required gain is met from the control signal and that it is buffered. Because it is an opamp with a negative feedback loop it automatically compensates for variations in supply and load.

    Anyway, to prove the merits of your idea come up with a circuit that works and is simpler than a 12V supply into an opamp taking into account that the motor has to have power from somewhere too.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    *Peter*
Sign In or Register to comment.