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-28-2006, 01:14 PM
 
Join Date: May 2006
Location: UK
Posts: 4
willhrt is on a distinguished road
EMC2 Serial Port?

Hi could someone please tell me if its possible to use a 3axis machine via the serial/com port instead of the parallel port, the reason being our unimatic educam has a serial port connector not a parallel and has been causing us grief for a while.

Thanks

Will
Tweet this Post!Share on Facebook
Reply With Quote

  #2   Ban this user!
Old 06-28-2006, 02:45 PM
 
Join Date: Apr 2005
Location: finland
Posts: 262
andy55 is on a distinguished road

Parallell port control machines usually use step/dir signals. I don't think those are possible or are used in the unimatic ?

If you know the protocol used over the serial port then it would be possible to write a driver for EMC2 that sends the required commands over serial port to your control.
Tweet this Post!Share on Facebook
Reply With Quote

  #3   Ban this user!
Old 06-28-2006, 05:54 PM
 
Join Date: May 2006
Location: UK
Posts: 4
willhrt is on a distinguished road

hi andy,

yeh youre right, from what i can remember the unimatic doesnt use step-direction, and it does run off a serial port. we had the idea of using a parallel to serial convertor but i guess this isnt going to work, neither will soldering up a parallel-serial conversion. as weve spent ages gettting this far i dont think learning serial port protocol and writing drivers is an option- has anyone done this before?

alternatively the emc2 manual specifies a few other pci cards, could we plug the unimatic serial plug into any of these or are we stumped?

thanks

will
Tweet this Post!Share on Facebook
Reply With Quote

  #4   Ban this user!
Old 06-28-2006, 08:25 PM
 
Join Date: Jun 2003
Location: Boalsburg PA
Posts: 844
unterhaus is on a distinguished road

people keep talking about writing EMC drivers for intelligent drives, but it never seems to happen. Is the serial protocol known? You could probably use a serial analyzer to reverse engineer it.
Tweet this Post!Share on Facebook
Reply With Quote

  #5   Ban this user!
Old 06-29-2006, 01:32 AM
 
Join Date: Apr 2005
Location: finland
Posts: 262
andy55 is on a distinguished road

Originally Posted by willhrt
hi andy,
yeh youre right, from what i can remember the unimatic doesnt use step-direction, and it does run off a serial port. we had the idea of using a parallel to serial convertor but i guess this isnt going to work, neither will soldering up a parallel-serial conversion. as weve spent ages gettting this far i dont think learning serial port protocol and writing drivers is an option- has anyone done this before?
alternatively the emc2 manual specifies a few other pci cards, could we plug the unimatic serial plug into any of these or are we stumped?
thanks
will
If the unimatic protocol is serial port and your computer has a serial port, then the easiest way is to use that serial port. Sure, there are EMC2 drivers for cards/parallell port which could probably emulate a serial port - but you would then need to write the code for standard serial port communication also which is probably not a good idea...

If you find out the protocol that the unimatic uses and document it well enough I think some kind EMC2 developer could help you with the driver. Basically it should be assembling correctly formatted ascii strings and then sending/receiving these over serial. I'm guessing your machine does not have encoders so there is no need to send encoder counts back to EMC2 in a hurry.

I wonder if it would be possible to have the original software run the unimatic and simultaneously insert a 'snooper' cable connected to another computer that would pick up all the communications on the serial port. That way you could quickly learn the protocol used. Or simply ask unimatic ?
Tweet this Post!Share on Facebook
Reply With Quote

Sponsored Links
  #6   Ban this user!
Old 06-29-2006, 06:10 PM
 
Join Date: May 2006
Location: UK
Posts: 4
willhrt is on a distinguished road

Ok so the Unimatic manual doesnt tell us anything about the protocol the machine uses only which pins do what. Off the top of my head 3 control the motors, one is an earth and another 2 allow the machine/pc to know if ifs ok to send a signal.

Andy, if the simplest way forward were to happen and Unimatic detailed us how the protocol works, how long do you imagine it would take to write a driver with the help of a developer? Im asking as im part of a two man team trying to get a cnc-lathe up and running in an art school. Ive been helping since christmas and the other guy has been working on this for 3 years. Weve exhausted almost all avenues with windows and we thought we might have an easy way out with Emc and Linux. Were both almost tearing our hair out here.

And once the driver gets hypothetically written weve got al long way to go to get it all working.

Anyway after that rant i hope you can help out. Cheers for the help so far.
Tweet this Post!Share on Facebook
Reply With Quote

  #7   Ban this user!
Old 06-29-2006, 07:27 PM
acondit's Avatar  
Join Date: Apr 2005
Location: USA
Posts: 1,774
acondit is on a distinguished road

Will,

I know this isn't what you want to hear, but have you considered getting inside the machine (not literally) and replacing the unimatic controller with a step/dir controller.
You would first have to determine if the machine uses servo motors or stepper motors.

Then you would have to find out what the power requirements for the motors are, in order to choose appropriate motor drivers.

If you can't write the software for the serial interface, this would provide an approach that would actually allow you to use a "vanilla" version of EMC2 or Mach.

Alan
Tweet this Post!Share on Facebook
Reply With Quote

  #8   Ban this user!
Old 06-30-2006, 12:53 AM
 
Join Date: Apr 2005
Location: finland
Posts: 262
andy55 is on a distinguished road

Originally Posted by willhrt
Ok so the Unimatic manual doesnt tell us anything about the protocol the machine uses only which pins do what. Off the top of my head 3 control the motors, one is an earth and another 2 allow the machine/pc to know if ifs ok to send a signal.
sounds like standard rs232:
http://www.interfacebus.com/RS232_Pinout.html

the trick is finding out what bytes are sent over the data line.

Andy, if the simplest way forward were to happen and Unimatic detailed us how the protocol works, how long do you imagine it would take to write a driver with the help of a developer? Im asking as im part of a two man team trying to get a cnc-lathe up and running in an art school. Ive been helping since christmas and the other guy has been working on this for 3 years. Weve exhausted almost all avenues with windows and we thought we might have an easy way out with Emc and Linux. Were both almost tearing our hair out here.
And once the driver gets hypothetically written weve got al long way to go to get it all working.
Anyway after that rant i hope you can help out. Cheers for the help so far.
You need to find out the protocol yourself, since it's likely that no EMC developer has an unimatic. You migth try asking if anyone knows the protocol on the big mailing lists (cad_cam_edm_dro and diy_cnc on yahoo).

then it would probably make sense to try to make a simple test program with just buttons and number fields that sends commands to the unimatic. when that works it makes sense to try to integrate it into emc.

If you can work with a developer i.e. compile and test new code with a days notice or so then I don't think it will take very long to write the driver.
Ofcourse it depends on what the protocol is, EMC drivers usually take the signals from the HAL layer which basically is the instantaneous (real-time) position of the current axis. If your control box wants G0X0.10 style of commands instead then they need to come from a higher layer in EMC which is not that straightforward.
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





All times are GMT -5. The time now is 04:13 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