Welcome! Log In Create A New Profile


Pseudo Servo Midlife Update idea

Posted by SOI Sentinel 
Pseudo Servo Midlife Update idea
April 26, 2008 02:37AM
I've been thinking on closed loop motor control a bit. While I'm working on some fairly beefy DC motor drivers on and off, I keep worrying about them somehow destabilizing a computer PSU's switching control loop. Brushless is somewhat nicer to the PSUs, but are a bit more expensive and require at least 50% more hardware to run. They both get great speed, but pay for that starting torque in higher amps than an equivalent stepper. I'm a bit worried about the breakaway torque required for an allthread setup stalling "small" range BLDC motors (5A peak?). Plus the 24V to 48V power normally required... I obviously have some work to do before I can test to see if my worries are unfounded. Time to reinstall Eagle.

Anyway, with Forrest returning to steppers and the search for cheap steppers on, I figured that we might be able to get something useful out of my wanderings.

With the Darwin using dual shaft motors, I have a suggestion for those worried about missing a step somewhere and want to work with encoders. Consider pairing the stepper with a shaft encoder for Darwin 1.5 or Mendel. This would let the firmware for stepping be used more as a "velocity drive" with the encoder providing the actual feedback. If properly aligned or the firmware is built to be self-aligning, it could also eventually morph into a high pole count brushless servo drive.

I've been meaning to pick up a few of these for testing:


It's a capacitive quadrature encoder. More expensive than the magnetic encoder chip + magnet sets (at about $30 each singly vs $13 last I heard?), but fully assembled and can be set via DIP switch to MANY different resolutions. And comes with LOTS of different shaft bushings, but its meant to mount on the backside of a "normal" motor. Binary encoders like the Austria Microsystems chips are at somewhat of a disadvantage as you can't get most servo step counts to divide evenly into them. However, this can be set to do 800 ppr (3200 lines) so it should give some resolution even for half stepping 0.9 degree motors.


While there's some expense here, the obvious advantage is staged upgradeability.


Gotta stop writing this stuff at 2AM.

Edited 1 time(s). Last edit at 04/26/2008 11:24AM by SOI Sentinel.
Re: Pseudo Servo Midlife Update idea
April 27, 2008 07:38AM
Here's a potential half way point for some folks that want stepper, but don't want the complications of dealing with PID control.


They call it a stepper because you blindly tell it what position to go to and it it does there like a stepper does, but with out your knowledge it does it with feed back. This means that missed steps is a thing of the past. I'd also bet that if you do miss steps it probably has some means of letting you know. It's one thing to miss a step, it's another to miss a step and not know it.

Not to badly priced at $30 ea. Controlled via I2C so interfacing with the arduino shouldn't be much of an issue.
Re: Pseudo Servo Midlife Update idea
April 27, 2008 03:53PM
There haven't been any noticeable problems with missed steps so far in the builds I've been tracking (and I've been following the blogs of everyone I've found who's working on this). Are you suggesting moving to cheaper, less reliable steppers, and using encoders as a way to compensate?

That's certainly an idea worth looking at. However, encoders can sometimes be expensive too.
Re: Pseudo Servo Midlife Update idea
April 28, 2008 02:09PM
Yes, encoders can be expensive. To get the same resolution that's already in Darwin on a cheaper, lower resolution stepper, you'd have to go to a microstepping driver. Not bad, but possibly not the simplest approach. The advantages of having an encoder option as an incremental upgrade I see is like this:

1) Simplest is using it for position verification. This will become more important as Reprap designs are pushed to higher print speeds, as the torque drops and the chance of being off position increases.

2) This could help detect problems earlier. I believe several messes made by Vik because his Repstrap got hung up while printing.

That is what I could see the current Arduino electronics plus a quadrature encoder counter chip or two doing in the near term. More lines than steps starts the possibility of being able to better verify position and possibly close loop microstep. Not enough spare horses or pins in the current design for something like that.

Heck, even open loop microstepping would be nice. Not too useful for a 200 or 400 step design, but a lot more useful for 28 or 48 step units. A selectable range microstep driver might be really useful just simply to open up the range of useable steppers for the basic Darwin electroncs.
Re: Pseudo Servo Midlife Update idea
April 28, 2008 02:26PM
Encoder chips are pretty cheap. The AS5035 is about US$3-5.
Re: Pseudo Servo Midlife Update idea
May 05, 2008 07:12AM
Is the AS5040 much more expensive?
It seems like a nicer choice, as it has a higher resolution than the steppers being used, 1024 'steps' per rev, and a wide range of output formats to play with.
Re: Pseudo Servo Midlife Update idea
May 06, 2008 01:30PM
Forrest Higgs Wrote:
> Encoder chips are pretty cheap. The AS5035 is
> about US$3-5.

not true. last i checked its $10/ea from austria microsystems. do you have a link?
Re: Pseudo Servo Midlife Update idea
May 06, 2008 03:20PM
LOL! I know what they sold them to ME for. I'm sure you are aware that there are prices and prices. smiling bouncing smiley

Mind, I'm not trying to be rude. Let me see if I can dredge up the correspondence. I know that I ordered them not directly from Austria Microsystems who were charging what you said, but from their US distributor who were much more amenable to a bit of bazaar bargaining. smileys with beer
Re: Pseudo Servo Midlife Update idea
May 12, 2008 07:29AM
I had a computer shop years ago. A lot of the techno-junk cannot really be sold anymore because it's too old. Maybe I can save on encoders and finally make use of this stuff smiling smiley

I have a box full of old (unused) PS/2 mice where I had the office. I just brought one of these mice with me to try as an encoder (actually two per mouse). Maybe it is best to just extend the mechanical part of the mouse and just lean to have the chip understand PS/2... I could get it to work on PIC chips, don't have any arduino hardware yet but I guess it might already have been done??


Erik de Bruijn
[Ultimaker.com] - [blog.erikdebruijn.nl]
Re: Pseudo Servo Midlife Update idea
May 12, 2008 01:31PM
Hi Eric,

... last year i was busy with building a small bot which measures his way with both - an optical mouse-chip and two 60steps-per-turn-encoderdiscs attached to the wheels (and two IR-distance-sensors and some more reflex-optocouplers).

Look here: - [www.heise.de]
and here: - [www.ctbot.de]

The software is open source, the electronics and PCB's freely downloadable, so when you need infos about embedding optical mices or encoders, then you can find this here (but in german - when needed, i can help translating ...)

But i think you can find any related information in english bot-forums too ...

Sorry, only registered users may post in this forum.

Click here to login