The Shop > Electronics & IC Programing

Motion Controller Design

(1/5) > >>

sparky961:
Motion control has always been of great interest to me.  The one question I've never been able to find an answer to though is exactly how multiple axes are synchronized in a motion controller.

Let's say we have a typical 3-axis machine and we're performing linear motion combining all 3.  Does one central controller dynamically figure out the position of each axis in tiny steps, commanding them to each of those steps as time moves on?  Or is there a way to "queue" the motion of each axis then tell them all to "go" at the same time.

Perhaps a naive question, but I think I've always been attempting the latter and I've begun to think it may be the wrong way to approach the problem.

I'd appreciate well-documented code examples, technical papers on the subject, or first hand experiences.

Imagineering:
I think, and I may very much be wrong, that a CNC Controller such as Mach3, utilises an Algorithm which calculates the required speed for each Stepper Motor concurrently to finish moving at the same Point at the same time.
Evidence or Documentation I have neither.

.

Bluechip:
Never worked on CNC but as far as I know all robotic/handling systems do.

Here is a short 'Tube video of a machine I worked on.

Just about possible to see a linear motion of the gripper obtained by the interaction of two rotary motions. ( aml/2 )

http://www.bing.com/videos/search?q=aml%2f2&view=detail&&&mid=9BA298CED915B9B7D1019BA298CED915B9B7D101&rvsmid=9BA298CED915B9B7D1019BA298CED915B9B7D101&fsscr=0

And another  ( AML/J ) P.S. Turn the sound off !! 'kin irritating racket !!

http://www.bing.com/videos/search?q=aml+j&view=detail&&&mid=1D75267255F6E53703981D75267255F6E5370398&rvsmid=1D75267255F6E53703981D75267255F6E5370398&fsscr=0

Dave

chipenter:
Have a look at Arduino it's open source with lots of articals , Mine is a fairly old computer and the com port baud rate is 19200 a second , so from one instruction to the next is a not notisable by eye .

PekkaNF:
You need to google a bit more this article has few concepts at the begining:
http://www.hsmworks.com/docs/hsmworks/2012/en/#StrategyMultiAxisContour

You can think that (tool path) contour is made out of discrete vectors. Blocks like on highschool math books. This is a table of individual axis setpoints. Then servos try their best to make it happen in real life.

In real life that would not work, because on corners and such places one axis would have a zero acceleration and the other(s) infinity.

Therefore those "blocks" are adjusted to keep each axis speed and acceleration within real life limits.

In reallity it is a bit more complicated. Both tool path calculations and control loop to keep everything under control.

Bit like a journey. It's good to to have a plan, but if you follow your initial plan very carefully eyes shut, you are on ditch pretty soon.

Pekka

Navigation

[0] Message Index

[#] Next page

Go to full version