Welcome! Log In Create A New Profile

Advanced

A worked Servomotor example

Posted by aka47 
A worked Servomotor example
December 08, 2007 10:53AM
Just for fun

I had a rummage around on't t'internet and found a nice cheap (particularly if bought in quantity motor and gearbox combo.

The company is MFA/Como they do stuff mostly for modelers (Model shops are a great source of random mechanics and drive bits if you can avoid trying to explain what you want them for)

I also found an alternative to lead screws for the transmission part of the design just to have something to work from. I think the example I picked could be a touch pricey but something similar may be reprapable......

The page link to attach files appears to have disappeared so if anyone wants the spreadsheet to have a grimace at and fix all my screw ups drop me a PM with your email address in and I will email it to you. It's in Open Office format.

Don't put your email address in here or the spiders will get it...... Onest guv spinning smiley sticking its tongue out

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 09, 2007 08:08AM
Hurro Jarred

Thanks for the interest. Hope you got the email and attachment OK.

The Motor and gear box combo is the 942D, off the shelf ratios are 5:1, 100:1 and 517:1

the web site is [www.mfacomodrills.com]

and the spec/catalog I used is

[www.mfacomodrills.com]

and

[www.mfacomodrills.com]

Unfortunately as luck would have it the particular motor/gearbox combo is the last sheet of the first and the first sheet of the last.

Their catalog etc has pricing in and discount terms, which look extremely favorable to me.

As I sugested in my reply email:-

I don't know what the current spec for Darwin is but suspect that it can
be marginally exceeded at a lesser cost.

The servo motors etc could be driven as if they were steppers using a
drive translation board then presented the same signals to the existing
board (just take out the stepper chip and wire in the signals as if the
translation board were the stepper chip). But to get best effect and
benefit from a servo system you would be better to do a full rework but
keep compatibility maybe at API level.

I am happy to accept that I have probably made all manner of blunders
with my calculations etc If you spot anything let me know. Probably best
done through the forum so that more folk get to benefit/see form the
discussion.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 09, 2007 08:18AM
A Ha...

Don't know why I didn't think of this before.....

I will put up the spreadsheet in my wiki (maybe in a flexible manufacturing web, don't know yet. I don't want to dilute the effort that is going on here) and report back with a link.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 09, 2007 08:49AM
Here we go......

The spreadsheet will download from

[www.kirbyand.co.uk]

I'll mess with my wiki later perhaps.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 11, 2007 02:32AM
Excellent

Many thanks Sebastien....

Please find attached the spreadsheet that the previous link went to.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Attachments:
open | download - example_servodrive.ods (16.4 KB)
Re: A worked Servomotor example
December 19, 2007 07:51AM
An update re MFA/COMO

The motor/gearbox I used in the illustrated example is 12v unfortunately they only do the same but in 24v if you want to mount an encoder on the rear end of the armature.

Despite their website suggesting that they could do specials for larger orders they seem to be reluctant to give me any figures at all for supplying the 24v extended shaft version in 12v.

So much so (Including fully discussing the spec a number of times then re quoting only for the 24v version.....) that I suspect they don't really want to know.

The worked example then is fine as an illustration, holds good for a 24v with slight increase in spec, but needs a replacement motor/gearbox combo from someone who can if we want to use 12v.

Downside of course being in using 24V you will need a 24v capable power supply.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 19, 2007 04:49PM
Funnily enough

After posting the above and sending fed up emails to MFA/COMO I finally got a verbal reply (Nothing in writing though)

That the minimum order for the 12v (instead of 24v) motor in question with the extended shaft is 2000 at a unit cost of


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 20, 2007 04:44PM
is it possible to drive the 24volt ones at 12volts? that would solve the problem nicely, and also allow us the freedom to switch to 24 volts if we need in the future.
Re: A worked Servomotor example
December 21, 2007 04:23AM
Whilst the torque to supply arrangement is not at all linear for the purpose of explain the principles, we will consider it so.

Assume that running a motor wound for 24v but run at 12v will give you half the spec at least (More likely less) this means that, yes you could probably run it at 12v you would draw less current and develop less torque. ie less speed and power.

Virtual all motors can be run at greater or lessor voltages than specified with caveats. They are not a precision mechanical/electronic instrument (I guess why they are cheap and plentiful).

To find out what they would do really would mean acquiring one and testing it.

This is an option, but I wouldn't worry about it for now.

Once we have a controller to go (I am designing at minimum 12v on up to probably 48v) The MOSFET drivers specification claims to be able to cope with more (100v - supply of 12v gives aprox 88v) But it is always wise to avoid driving anything power oriented that close to the envelope of the spec.

BTW DC starts to get a bit too risky in terms of safety beyond 48v (It is arguably risky before this point, as it is the current that does you in, not the voltage, which is just an enabler).

Something to bear in mind is that the supply to the Motors doesn't have to be too well regulated or excessively smoothed. only enough to do the job, at low motor power levels.

So a motor only supply, particularly to DC brushed motor servo system can be relatively simple in PSU terms.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
December 31, 2007 01:24PM
If the ground connection is pulled from a PC PSU, you can parallel the PSUs safely. HOWEVER, especially with DC brush motors, your standard switching PSU may have an overcurrent fault develop. This will definitely vary with peak torque/amps of your setup vs the rated ability of the PSU, however.

Unregulated Linear power supplies (transformer-rectifier-capacitor) are recommended usually for motors as they can put out several times their rated current for short periods of time. This may not be as expensive as you'd think, as I've seen many isolated step-down transformers out there in both new and surplus for 12 and 24V.
Re: A worked Servomotor example
January 01, 2008 03:32PM
A quick update (Just back from London visiting rellies)

I picked up one of the MFA/COMO 12v motors without the extended shaft. Maplin stock them as well as most model shops. (940D with 100:1 planetary gear head)

the motor itself has a sticker on it saying it is wound for 4.5 to 15 v dc so I wouldn't advise running it at 24v for long if at all........

Having clamped the output shaft into a vice and manually felt for backlash, there appears to be a little, when I get time I will have to work out a way to measure how much.

Initial gut feel is that there isn't much (probably too little to worry about, but could revise this later)

This could of course always be preloaded out. Easier for some axes than others.

Whilst in London I had a rummage through the engineering and Electronics sections in Foyle's book shop as they stock some of the more and less usual titles.

Building Robot Drive Trains, from the Robot DNA Series (ISBN9780071408509)

Has a fairly extensive section on DC brushed motors and PWM Control. I must admit to disagreeing with their use of bipolar's for doign the job though. In this section it does though give useful techniques for testing for backlash and torque. Plus the more useful equations for sizing motors and gear trains etc.

There is also a useful chapter comparing the methods of prime locomotion.


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 14, 2008 07:59AM
OK

First and most important, Happy new year etc guys.

Second I have started work on the Universal Servo Controller as promised and will use this thread to discuss the design etc as it unfolds the doc can be found in the wiki at

[www.reprap.org]

Third, many thanks to Zach for sorting out permissions etc so I could do this.

We are currently working through the design and specification stages and will be progressing on to the implementation stages in due course.

I have started the docs with the last bit, first (Bibliography etc) this is so that folk can see where I have got most of my input and direction from and can follow how I/We got to where we did. (Mainly for folk who come along part way through, to save them trying to figure this out).

Last but by no means least, all input is welcome. I will attempt to apply some degree of practicality filtering but endeavor to keep this to the barest minimum necessary for survival.

Hope this is OK.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 14, 2008 10:20AM
Hey Andy,

I'm not sure what you're thinking on using for an encoder, but I have started work on a Magnetic Encoder board based on the AS5040. You can get the eagle files here:

[svn.reprap.org]

Its not done yet, but it would be cool if we could use this as part of the design somehow.
Re: A worked Servomotor example
January 14, 2008 03:22PM
Hurro Zach

The design that is currently floating about mostly in my head has the ability to accept inputs from two types of encoder.

1. An SPI interface that can talk to the Laser Navigation (mouse type) optical sensor. See the Wiki page bibliography for the Cypress Data Sheet.

2. A Logic Level Quadrature Interface. What you choose to make the quadrature stream is up to you. Magnetic (Maybe the chip Vik was looking at), Optical reflective or photo-interupter etc etc etc. I have'nt put the Datasheet for the chip that Vik was looking at on the Wiki yet but will do so. Probably tomorrow now.

1. Has some particularly useful advantages over 2.

At the end of the day a Universal Servo Controler should be able to manage enough variety to enable as much end user experimentation as we can sensibly accommodate. I think that there are often many ways to do something and folk prefer that which is to hand and inexpensive for them (Unfortunately not the same for everyone).

Without looking at the files just yet, does your magnetic circuit output a quadrature stream ??


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 14, 2008 04:03PM
cool.

yes, the board will do quadrature output.

the nice thing about doing a quadrature based system is that you're not limited to a linear motion type of system. you could use the board to drive an extruder for example.

do you have any problems with using atmega microprocessors?

~Zach
Re: A worked Servomotor example
January 15, 2008 07:27AM
Zach

The problem I have at the moment with using processors other than the PIC 18F's is that I have already invested in and am setup with the Programmer, ICD, Compiler etc that make development somewhat more straightforward.

Don't worry though you will be able to run the controller as if it were a stepper motor driver IC but it will be driving a servo motor arrangement instead. This will ensure that it can used with existing kit or with your work with the arduino. The main difference being that there will be a few additional lines available giving you the center reference, each end limit and a signal indicating when a move is complete. (Move complete is likely to be Open Collector so it can be used in a wired 'OR' configuration a cross multiple axis, to use in logic compatible mode add a pull up resistor)

Hmmmm I think I will also be making an error signal available too. (Probably also Open Collector)

This makes it more universal and lets the folk who prefer stepper style drive use the single axis servo controller as if it were a stepper.

Other than that there will of course be a serial interface that lets you get at the advanced features.......

Either can be used..

If you are'nt using the stepper lines just tie the inputs low.

I will model the essential subset of logic level control signals from the stepper controllers spec'd for Darwin.

If you want to run a multi step move from the stepper interface just strobe the step line the required number of steps without waiting for the move complete signal and without waiting between each step. The servo system will stop when the counts match.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 15, 2008 01:04PM
Which complier is it the Microchip offering by any chance?

I really like the idea of the cypress solution as it allows for budget drive systems where as a shaft encoder just really ensures you made the step (as it were) and there are plenty of stepper driver chips that do this. The ability to instantly remove all backlash issues is what makes this special.

Did you get anywhere with samples of the cypress chip?


Ian
[www.bitsfrombytes.com]
Re: A worked Servomotor example
January 15, 2008 01:49PM
Is this just for DC servos? I think brushless would require something with a bit more grunt for the commutation.

The STM32 is a very nice chip for motor control. [www.st.com]

It's a 32 bit 72 MIP ARM for a similar price to a PIC.

If I remember rightly it has three timers, each of which can do four channel PWM so you can microstep three steppers or commutate 3 3 phase servos. It has a fast multichannel dual A/D for simultaneous coil current / voltage sensing, and it has USB and CAN. The only thing that stops it being perfect for RepRap is that I think you can't run the USB and CAN at the same time.

It has a very cheap dev kit: [www.stm32circle.com], I got mine free for sitting through a presentation. Free simple RTOS.

Being ARM, you should be able to use gcc.


[www.hydraraptor.blogspot.com]
Re: A worked Servomotor example
January 17, 2008 11:02AM
I guess if it comes to a discussion of any Micro.

What about dong away with a separate micro altogether and using a soft core in a PLD like the Xilinx IP Free offerings.

Rather than implementing a lot of the control loop in software hard code it in Programmable logic.

I guess if after all someone wants to take the design work etc and port it to another micro, fine.

Incidentaly depending on what PIC16 & 18 devices folk are using with the Eagle and Kicad software you night find you are using one or other of my schematic symbols (Or one derived from it). I made some up when there werent many for Eagle and another guy emailed me for permision to tweak and port them to something else, quite some time ago. (I don't know why he asked as far as I was concerned they were IP Free, but the courtesy was nice)

It came as quite a (Pleasant) shock to me when I loaded up kicad and went for a rummage to find they already had symbols I could use. Wow that deos'nt happen often.

Zach, I remember there being a datasheet or some such kicking around for the Hall Effect Quadrature Shaft sensor IC I downloaded it but have lost it any chance of a pointer to the device ident/number ??

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 17, 2008 11:45AM
Something I missed picking up on. Sorry

Zach's question re running a 24v motor at 12v, there is no earthly reason why not if you are prepared to put up with half the power and how this translates into torque/speed.

Given that the spec'd motors from MFA are roughly the same torque/speed for 12v and 24v models. Running the 24v at 12v would give you somewhat less torque/speed.

If the Laser navigation method is used though running a12v motor with no capability to mount an encoder on it is no longer an issue.

It's worth looking at the Mabuchi motors too.

For the sake of comparison etc, is there any chance that someone with a working Darwin could do some torque/speed measurements etc ?

Things like :-

Max speed (rpm) at the stepper shaft before steps get lost.

Torque required to move each of the axis xyz. (you will need to uncouple the steppers to do this one) measured at the lead screw/stepper coupling.

Cheers

aka47

Edited 1 time(s). Last edit at 01/17/2008 11:48AM by Andy Kirby.


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 17, 2008 04:26PM
aka47: the chip is the Austria Microsystems AS5040.

i've already done a bunch of work with getting an encoder board ready for it in Eagle files here: [svn.reprap.org]

there are a few different methods of getting the data out of that board, and the breakout board i made provides all of them.

you can design your board around all of them, but if its a dedicated proc, then the best route would probably to be design it around quadrature inputs which the board will output. of course you could use any of the output methods it provides as well.
Re: A worked Servomotor example
January 18, 2008 09:16AM
Ian

The compiler is the C18 from microchip (using their IDE) and the ICD (In circuit programmer/debuger) is also theirs too. I run this under a VMware XP machine on my Linux Workstation. Everything else here is almost exclusively Open Source.

As I prefer to use the Flash programmable micros these days (saves the time waiting for Eprom program and UV erase when tweaking code, plus the multiple insertions that knacker up your socketing one way or another) I also usually design in an "in circuit programming" port so that firmwares etc can be readily upgraded even after the boards are populated.

Sure you loose a couple of pins or so but the flexibility is worth the sacrifice.

For the actual embedded work I generally flatly refuse to program in anything of a higher level (less control over execution timing and memory allocation) than 'C' and may do work in assembler (in line or otherwise) when doing particularly sensitive things like interrupt routines.

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 18, 2008 12:20PM
awesome, regardless of which uC we go with, it absolutely has to have ICSP! that is one of the major failings of the UCBs, IMHO.
Re: A worked Servomotor example
January 21, 2008 03:35AM
Andy
That is exactly the setup I love (and use) except I'm all windows but good to know it will work on Linux. I also use the CCS complier just for speed with its mostly good PIC functions. Always ICSP programming, I've spent too long debugging a bad socket contact smiling smiley

Zach
I agree regarding the UCB so I've added one as all the ICSP pins are already broken out I will post on this soon in the Blog but you use the 1-7 breakout connector and the Max/Empty connector. I also had to modify the microchip ICD lead with a new end but that is no problem.


Ian
[www.bitsfrombytes.com]
Re: A worked Servomotor example
January 22, 2008 12:10PM
I do try to be M$ free where ever possible, Some vendors tool sets though mandate a windows environment. Arrrgh

MPLAB and Altera's IDE's being cases in point.

Whilst their tool sets aren't great there ahead of the open source state of the art sad smiley and relatively inexpensive/free.winking smiley

I am drawing near to the end of the Design Considerations Section of the Wiki docs.

[www.reprap.org]

Any chance folk could have a rummage through and offer constructive feedback/corrections.

I suffer like many folk who work a lot in their head from what ends up on paper being a somewhat mangled interpreted image of the cerebral object.

My apologies if the reading is a touch lumpy and long winded, I wanted to capture as much of the rational and input that has been the meat of the discussions here. Particularly to explain it as if to someone coming at the subject with little previous experience.

For spelling, grammar and general corrections can you PM me with these to spare me the embarrassment of the inevitable and well earned public flogging.

For discussion of what is there or something you feel we need to add posting your thoughts here in the forum is good.

Cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 22, 2008 07:28PM
[www.embedded.com] - PID without a PHD smiling smiley
Re: A worked Servomotor example
January 23, 2008 04:16AM
Triffid

Thans for that I have added the link you provided into the bibliography section of the servo doc.

cheers

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 25, 2008 04:15AM
I'd like to toss in a note about the use of digital calipers as well as the mouse encoder for tool head feed back. The digital caliper is a product you can purchase, partly because of it's resistance to environmental errors. I feel in the long run we'll discover the this tech is better for this environment.

Heres a link [www.biotele.com]

Any how just 2 cents.
Re: A worked Servomotor example
January 25, 2008 06:23AM
Jared

I had a look at the link and think the technique has the potential for a lot of mileage.

If I wanted to add carriage based feedback to a smaller carriage for an existing piece of kit I think I would be looking seriously at buying of the shelf calipers and adding in serial ports to my axis controller. (Bearing in mind the one that is on chip is already earmarked for interfacing to a motion planner). The length of travel of the carriage would have to be less than the full range of the calipers so reasonably small.

I guess we also probably need a longer run than a standard set of calipers would give us. Full range on my Verniers is 157mm although the are marked to 200mm for the tail or vernier bit.

This sounds remarkably like something that would be of value to Viktor for some of his micro manipulation stuff. The resolution certainly looks to be excellent.

As we are designing from scratch and will have an SPI interface available for sensor input, I think it is probably worth while for us to come back to the deign of a standalone sensor using this technique to interchange with the mouse type opto sensor. Alternatively someone could take this as a sub project and the SPI + Register specs from the Laser Navigation IC and work on this one in parallel.

I wonder if there is already a chip set for this kicking about somewhere......

Something of note in the link is that contamination from fluids does have a significant effect upon performance and some degree of environmental protection would have to be built in.
Calipers are generally kept in pockets, draws, toolboxes or instrument cases so are not prone to being exposed to the full rigors of machine mounting and the usual amount of spatter that comes from spinning tool heads.

My thoughts for what they are worth, what do you guys think ??

aka47


Necessity hopefully becomes the absentee parent of successfully invented children.
Re: A worked Servomotor example
January 30, 2008 03:36AM
Axminster Tools do a range of DRO based on caliper design for fitting to milling machines they go to 300 or more i think i use some smaller ones on my lathe and they will work on the full length of the rule as in longer than the spec says :-)

Not sure about outputs :-~


Ian
[www.bitsfrombytes.com]
Sorry, only registered users may post in this forum.

Click here to login