CNCzone.com-The Largest Machinist Community on the net!



Home Page Mark Forums Read Today's Posts My Replies Classifieds Reviews Photo Gallery Web Links Share Files Advertise With Us Ad List
Go Back   CNCzone.com-The Largest Machinist Community on the net! > Machine Controllers Software and Solutions > LinuxCNC (formerly EMC2)


LinuxCNC (formerly EMC2) Discuss LinuxCNC (formerly EMC2) Controlers here!


This forum is sponsored by:

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Ban this user!
Old 06-26-2005, 01:42 PM
 
Join Date: Jan 2005
Location: USA
Posts: 34
Ubarch is on a distinguished road
A question about servo control

Hello,

I'm posting in this forum because a myself and a friend are planning to interface EMC with our own servo controllers. From reading the linuxcnc.org handbook, it seems that they support servo control through the Servo To Go board. It looks like we'll have to understand this code to make EMC communicate with our board. Is this correct, or should we be looking somewhere else in the source?

I'm also hoping that someone can clear up a little bit of fogginess about what exactly EMC sends to a servo controller, and what it expects back. I'm assuming that the PID filter is on the controller (or are people calling an H-bridge a controller? ), and if this is the case, does EMC send a stream of position/velocity data? If so, is there a document that specifies this? What kind of feedback does EMC want from the encoders (ie, does the controller have to process the encoder output at all) ?

Most importantly, does EMC handle synchronization between servos? I'll give an example to illustrate my question. Lets say that the mill is cutting some material with a heavy grain, and the X motor must work harder than the Y motor to cut equivalently. Lets also say that the servo controller is told to cut a line of slope = 1, meaning that the X and Y servos should move at the same speed. If the proportional element of both PID filters is equal, it should take the X motor a longer amount of time to apply the required power. Does EMC take this into account and slow the Y servo? Is this expected of the servo controller?

Thanks for any help you can give. I know we have a lot of reading and code-grokking ahead of us, but if anyone can save us some time and point us to where the correct information is, that would be greatly appreciated.
Tweet this Post!Share on Facebook
Reply With Quote

  #2  
Old 06-26-2005, 01:58 PM
Al_The_Man's Avatar
Community Moderator
 
Join Date: Dec 2003
Location: Canada
Posts: 15,714
Al_The_Man is on a distinguished road
Buy me a Beer?

I was looking into this some time back, I thought maybe that EMC had developed an interface for the dedicated type of servo card as in Galil, Delt-Tau etc, but as far as I can tell it is still software oriented and uses the common step and direction control through the parallel port to 'intelligent' drives, in other words the loop is not closed in the CNC software or controller, and in that case it does not appear that EMC integrates the servo encoder loop.
I hope someone can prove me wrong.
Al.
__________________
“Logic will get you from A to B. Imagination will take you everywhere.”
Albert E.
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)
Tweet this Post!Share on Facebook
Reply With Quote

  #3   Ban this user!
Old 06-26-2005, 09:11 PM
 
Join Date: Sep 2004
Location: USA
Posts: 145
Dan Falck is on a distinguished road

get an IRC client and do this:

IRC - Not technically a mailing list, but developers meet regularly on Internet Relay Chat
Meetings are typically at 10AM Eastern Time (USA) or 14:00 GMT on Sundays, but
discussions can and do occur at any time.
IRC host is: irc.freenode.net
Channel to join is: #emc

Ask there for some help in writing software for you servo control board. Pual Corner (paul_c in IRC) has written a few drivers for servo boards,as have others there.
Yes, EMC does support real closed loop control and was set up for servos long before a driver for steppers was written. Step and direction control was a request that was written for hobbiests, like me.
Also, get on the EMC developer's list http://sourceforge.net/mailarchive/f...emc-developers and ask some questions there. That is where you will get code questions answered.

Thanks,
Dan
Tweet this Post!Share on Facebook
Reply With Quote

  #4  
Old 08-06-2005, 06:20 AM
*Registered*
 
Join Date: Apr 2004
Location: Norway
Posts: 678
ESjaavik is on a distinguished road

Originally Posted by Al_The_Man
I was looking into this some time back, I thought maybe that EMC had developed an interface for the dedicated type of servo card as in Galil, Delt-Tau etc, but as far as I can tell it is still software oriented and uses the common step and direction control through the parallel port to 'intelligent' drives, in other words the loop is not closed in the CNC software or controller, and in that case it does not appear that EMC integrates the servo encoder loop.
I hope someone can prove me wrong.
Al.
Ahh! For once I caught you wrong!!

It does. In fact it even does this when running stepper motors.
You have several driver options. The ones I have used are:
Parallel port direct (freqmod) is one (I don't recommend it).
Now I use Pico-Systems Universal Stepper Controller. I'm thoroughly impressed! It drives the steppers very smoothly. They sound and move like servos. This hardware can use steppers with or without encoders, or with linear encoders by flipping some DIP switches. If no encoders, the step outputs are run directly back to the position counters, so the closed loop does not embrace the screw/axis. Nice thing is I can just put in an encoder, connect it and flip the switches if there is a need.

In both cases the PID values have to be tuned. There are also 3 FF terms.
Whether this is a good thing when using servo drives with their own PID controller is one thing I find interesting. But I guess a P of unity and the others to zero would pass on those resposibilities to the drive?

I'll probably find out, as I have a BLDC servo system I will set up with EMC.

For other drive options I'll have to pass you on to www.linuxcnc.org, as I have not tried them. But I'm pretty sure they all have the PID running inside EMC. The user interface also have a logger/plotter that is very nice when tuning the PID. I did not realise this in the beginning, but once I was told of it, it made the motor tuning a one evening affair.
Tweet this Post!Share on Facebook
Reply With Quote

Reply




Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Question about Centroid M-400 control ValleyFab AjaxCNC Control Products 13 08-18-2005 08:37 PM
DIY Router Power Control Question ignatz General Electronics Discussion 7 06-25-2005 10:59 PM
Servo control software gareth Servo Motors and Drives 0 02-04-2005 08:17 PM
Need input for servo control systems CNCadmin General CNC (Mill and Lathe) Control Software (NC) 0 01-31-2005 11:45 AM
newbie AC Servo question GalaticDan Servo Motors and Drives 3 10-31-2004 12:25 AM




All times are GMT -5. The time now is 05:41 AM.





Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Content Relevant URLs by vBSEO
Template-Modifications by TMS

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353