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 11-14-2008, 06:48 PM
 
Join Date: Nov 2008
Location: USA
Posts: 17
Jamy is on a distinguished road
EMC2

I am trying to create a M100 to turn an output on in a program. What is the descripter for M100 to be used in HAL. When I create a Gcode program and open it it causes and error because M100 is not defined.

Jamy
Reply With Quote

  #2   Ban this user!
Old 11-14-2008, 07:25 PM
 
Join Date: Nov 2005
Location: Canada
Posts: 465
chester88 is on a distinguished road

Did you look in the integrators manual under M100? Did you follow those instructions? We need more info.

Cheers Chris
Reply With Quote

  #3   Ban this user!
Old 11-14-2008, 09:29 PM
 
Join Date: Nov 2008
Location: USA
Posts: 17
Jamy is on a distinguished road

This is whats in the manual.

12.12 M100 to M199 User Defined Commands
To invoke a user-defined command, program M- P- Q- where P- and Q- are both optional. The
external program “Mnnn” in the directory [DISPLAY]PROGRAM_PREFIX is executed with the P and Q
values as its two arguments. Execution of the RS274NGC file pauses until the invoked program
exits.
It is an error if
• The specified User Defined Command does not exist

I dont what they mean by M- P- Q-. Also the external program "Mnnn" in the directroy [Display]Program_PREFIX is executed with P and Q values as its two arguments. They also talk about the RS274NGC file. I dont know what that is and where to find the file.
Reply With Quote

  #4   Ban this user!
Old 11-15-2008, 11:26 AM
 
Join Date: Nov 2005
Location: Canada
Posts: 465
chester88 is on a distinguished road

Just to confirm- you want to use M100 to run a 'seperate program' to turn an output on or do you just want a M code to turn a output on?

For M100 the m- is just the m number you used 100-199, p- and q- are variables that are passed to the seperate program like on the command line. A RS274NGC file is the original G code file. I think the seperate program needs to be named the same as the M number eg. M100 the program is called m100. The program prefix is probably where EMC is supposed to look for the seperate program. I will try to find out.

If you just want an output turned on and off you want to use M62-65
Reply With Quote

  #5   Ban this user!
Old 11-15-2008, 12:44 PM
 
Join Date: Nov 2005
Location: Canada
Posts: 465
chester88 is on a distinguished road

I asked on the EMC maillist here is what I got:

>
> Does this mean the external program must be named M100-199?

Yes

> What is meant by PROGRAM_PREFIX ? pathway?

>From my lathe .ini file:
...
# Sections for display options
------------------------------------------------
[DISPLAY]
DISPLAY = axis
LATHE = 1
PYVCP = spindle.xml

# DISPLAY = usrmot
# DISPLAY = tkemc

CYCLE_TIME = 0.100
HELP_FILE = doc/help.txt
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
PROGRAM_PREFIX = ../../nc_files/
...

you can see that the M1xx files will need to be two directories up from
the current directory and in nc_files. I believe that makes
it /home/user_name/emc2/nc_files. You can change PROGRAM_PREFIX if you
want.

> I assume the external program can be in any supported language or are
> we talking G code?

My guess is that you can not execute G-code, but bash, python, C or any
non-real-time executable would work. I use a bash script to create
missing g-codes for my lathe, such as M102 Collet Open:

file = /home/kwallace/emc2/nc_files/M102

-----------------
#!/bin/sh

# Custom - Only intended for Kirk Wallace's HNC lathe, KW 20070823
# M102 - Opens Collet Closer
halcmd setp parport.0.pin-07-out False
halcmd setp parport.0.pin-06-out True

exit 0
-----------------

I use M102 in my G-code files for opening the collet closer.

hope that helps
Reply With Quote

Sponsored Links
  #6   Ban this user!
Old 11-17-2008, 09:17 AM
 
Join Date: Feb 2007
Location: USA
Posts: 514
Big John T is on a distinguished road

Jamy,

In response to your question that chester88 posted on the users list and to Kirk's answer I have updated the manual. See if it makes more sense...

http://www.linuxcnc.org/docview/html...:M100-to-M199:

Thanks for asking the question.

John
Reply With Quote

  #7   Ban this user!
Old 11-17-2008, 11:51 AM
 
Join Date: Nov 2008
Location: USA
Posts: 17
Jamy is on a distinguished road

How do I go about doing the M64 and M65 turning on the Digital output. I know in the program I just type M64. But in the HAL file?
Reply With Quote

  #8   Ban this user!
Old 11-17-2008, 12:23 PM
 
Join Date: Feb 2007
Location: USA
Posts: 514
Big John T is on a distinguished road

This page on M66 should help you understand...

http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Mword

and here...

http://www.linuxcnc.org/docview/html...ec:M62-to-M65:

and watch it all with HAL show...

http://www.linuxcnc.org/docview/html//hal_halshow.html

John
Reply With Quote

  #9   Ban this user!
Old 12-19-2008, 03:40 PM
 
Join Date: Nov 2008
Location: USA
Posts: 17
Jamy is on a distinguished road
1 input to start program and continue program after a M0

How do I create an input to start a program in EMC2. Also the same input to run the program after a M0 stop command. I was able to do start the program and when it got to M0 it stopped but when I pressed the input it started the program from the beginning. It seems like I need to do some sort of IF statement. If program.run and mode.auto is true then input only is used to program.run. Is there anyone that can help me?
Reply With Quote

  #10   Ban this user!
Old 12-19-2008, 05:45 PM
acondit's Avatar  
Join Date: Apr 2005
Location: USA
Posts: 1,774
acondit is on a distinguished road

Originally Posted by Jamy View Post
How do I create an input to start a program in EMC2. Also the same input to run the program after a M0 stop command. I was able to do start the program and when it got to M0 it stopped but when I pressed the input it started the program from the beginning. It seems like I need to do some sort of IF statement. If program.run and mode.auto is true then input only is used to program.run. Is there anyone that can help me?
If you are just talking about resuming after an M0, I believe that you just press the 'S' key on the keyboard. This is like when the machine stops for a tool change, you have changed the tool and want to resume the run.

Alan
__________________
http://www.alansmachineworks.com
Reply With Quote

Sponsored Links
  #11   Ban this user!
Old 12-19-2008, 06:12 PM
 
Join Date: Nov 2008
Location: USA
Posts: 17
Jamy is on a distinguished road

Yes I know the S will work and also clicking on the resume button on the screen. What I am refering to is a button used by a operator to start a program. I would like to use the same button to resume the program when the program is paused (M0). The only input the operator can toggle is this button. The button is setup like this remote-start halui.program.run halui.mode.auto = parport 15

What Im going to try next is to create a manual and auto button on the screen. By selecting auto the switch can be configured as remote start halui.program. run halui.program.resume=parport 15. I have a feeling that it probaly will just start the program over with having Halui.program.run.

Any other suggestions?
Reply With Quote

  #12   Ban this user!
Old 12-21-2008, 05:07 PM
 
Join Date: Feb 2007
Location: USA
Posts: 514
Big John T is on a distinguished road

If you use halui you can take advantage of the pins halui.program.is-paused, is-idle, resume, run to restart/start based on the current status. For this you use a logic operator to do the right thing.

In your hal file you want to do the following pseudo code

Code:
                            If paused then resume
My button pressed |
                            If idle then start
John
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
Need Help!- M8 still not being red by EMC2 SpeedsCustom LinuxCNC (formerly EMC2) 27 04-13-2008 03:36 PM
EMC2 to diy CNC dakiller322 LinuxCNC (formerly EMC2) 11 10-05-2007 12:16 AM
Emc2 sdantonio Mach Mill 2 02-05-2007 02:26 PM
emc2 -hal*? essa LinuxCNC (formerly EMC2) 3 05-27-2006 12:06 PM
emc2 heilcnc LinuxCNC (formerly EMC2) 2 05-23-2006 05:03 PM




All times are GMT -5. The time now is 05:28 PM.





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 354 355 356 357 358 359 360 361