![]() | |
| Home Page | Mark Forums Read | Today's Posts | My Replies | Classifieds | Reviews | Photo Gallery | Web Links | Share Files | Advertise With Us | Ad List |
| |||||||
| LinuxCNC (formerly EMC2) Discuss LinuxCNC (formerly EMC2) Controlers here! |
| This forum is sponsored by: |
![]() |
| | LinkBack | Thread Tools | Search this Thread | Display Modes |
|
#1
| |||
| |||
So I purchased Mach 3 three years ago and I thought it was the hottest thing out there, but I've recently purchased a CNC laser and find MACH3 is not ideal at this point for driving a laser. Last night I downloaded the free Ubuntu EMC2 live CD and installed it on my computer. WOW! I'm amazed at how nice my machine runs compared to Mach 3 on Windows! The steppers are incredibly smooth with EMC2. I was particularly impressed with the stepper setup helper. I had my X Y Z motions set up and working great in a matter of minutes without ever reading a manual. It all seemed very intuitive to me, although I did have the experience with these types of setups from MACH 3. The motor test feature is GREAT the way it repeatedly cycles across the travel region and allows you to tweak the acceleration and top speed on the fly. I hooked my laser ON/OFF to the Z direction bit so down will be on and up will be off. 20 minutes after installing Ubuntu with EMC2 I was cutting paper. I ran the stock gcode file that shows the EMC2 logo upon initial startup. It cut out that logo text in a few seconds. It was an absolutely PERFECT CUT! What amazed me was the fact that it was already set up for constant velocity and it handled it quite well with the laser. Most of my previous attempts with Mach3 would give me a burn mark at the very beginning of each motion because the Z direction and the XY motions seemed to be slightly out of sync. Clearly Linux is a better operating system for running a machine. All the motions can be directly mapped to the parallel port without the multi-tasking latency found in windows. With the smart Linux programmers I'm seeing that EMC2 will be quicker to upgrade and modernize. Looks like a touch screen interface is already possible too. These people are amazing. Now I do find myself in need of some advice for one particular issue as described below: 1. Vector cutting is beautiful! No need to change a thing. 2. I processed an image to gcode using BMPtoCNC for a Raster cut engraving and I have some problems. The files are attached as text but they are NC files ready to run. I want this thing to fly across in a sweeping X axis without stalling for the laser to turn on and off. This is what we see when we watch the videos of the more expensive laser engravers on YouTube. It acts just like an ink jet printer and fires some ink during the sweep without ever stalling the motion. I thought that if I make the machine think that the Z axis is infinitely fast then when it hit that portion of code it wouldn't stall but would instead simply fire the laser as it continued the sweep at constant speed. Perhaps my code is wrong or I'm not understanding constant velocity, but it's just not working for me. It stops the X motion to fire the laser and then it sweeps across and stops to turn off. This could go unnoticed when using a low power laser, but with a higher power (40W) laser this creates a deep burn at both the laser ON and the laser OFF positions and a shallow burn during the sweep. You can also see that because of the accel and decel of the X axis the burn goes from deep to shallow then to deep as it is leaving the turn-on and approaching the turn-off. I thought to myself "hey, this is LINUX EMC2" and it's super fast. Perhaps I should just attach pin 1 (the laser ON/OFF) to the flood button and edit the code to have it turn flood on and off instead of the Z0 and Z-0.5 so I used the find and replace function of the word editor to repace the Z0 with M9 and the Z-0.1 with the M8. I thought that surely the EMC2 would instantly turn it on and off without a latency stall. Nope. Sure enough it still pauses the X sweeping motion to turn the flood on and off. I could probably write my own M code, but wouldn't that have the same delay? There must be some value hidden in the bowels of the initialization scripts that sets the dwell time for the M codes. Any advice would be greatly appreciated. -John |
|
#2
| |||
| |||
| Look here and see if this helps: http://www.linuxcnc.org/docs/2.3/htm...1,-G61.1,-G64: Also in stepconf you can set a parallel pin for digital out, then this pin is controlled by m62 -65 - a little bit cleaner then using coolant m code (but doesn't really matter) Here is a link for another fancier laser controlled by EMC2: http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?M5i20_Laser doesn't talk too much about the g coding side thou. Chris M |
|
#3
| |||
| |||
| Super! I'll give that a try. I had not seen that before... well, as I confessed earlier I hadn't read any of the EMC manuals. I'm livin' on the edge right now. I'm going straight from the parallel port to my stepper drives and the laser power supply. I would possibly purchase an interface card if it showed a demonstrated improvement over what I can get from the raw EMC2 parallel port. I visited the link to the M5i20, but I see no videos of the thing in action. I'm also wary of cards that would plug directly to a computer bus which may become outdated in the next decade. I like the newer methods that use USB or fire wire. With MHz digital transport rates on USB, I don't see why anyone would still need to design a board that plugs into an ISA bus. All this CNC stuff is cool, but sometimes I wish that my laser could simply think it was a printer. Wouldn't it be nice to open a document in any program and simply hit print? I've seen where linkmotion makes a driver, but the price seems a little ridiculous. I would have thought that the Linux folks would have done something similar by now. After all, it is actually a retro type of software that would make the parallel port act like it's driving an old plotter open loop. |
|
#4
| |||
| |||
| Well I gave it a try and it still pauses when it hits the M code. I tried both the M62 M63 and the M64 M65 combinations. I also thought that maybe I should try different path control modes like G61, G64. Not any better. The G64 with a high P value would make the axis swing without stopping, but it would also ignore the M63 and M62. This seems odd? I must be doing something wrong in my code. The path motion is staying in the X plane. If it sees the following string, the X path is constant in the negative direction. It is simply being told to fire the laser when it reaches a certain point along the line and then shut if off at another. Why would the Xstage momentarilly pause at these trigger points when there is obviously no change in the direction of travel? There must be an inherent software delay in the trajectory planner or there is a dwell put there on purpose. X-0.132 X-0.146 M63 X-0.979 X-0.993 M62 X-1.285 X-1.299 M63 X-1.896 X-1.91 M62 X-2.104 X-2.118 M63 X-3.799 Last edited by lasersafe1; 11-22-2009 at 06:11 PM. |
|
#8
| |||
| |||
| Laser, Connecting the laser control to the Z axis is the way I have approached the same problem. There is this thing called BLENDING of motion in EMC2. it is the G64 code.read up on how it can help You smooth the motion of laser as XYZ AXES MOVE. Since You are using the Z axis to control laser on/off set your Z axis to a minimum resolvable value ( in case of meric set up make Z axis UP =0.0000 and Z axis DOWN = -0.0001 ) this isufficient to toglle the UP/DOWN flag and control laser on/off state without necesarily penalising You with a time to actually move the Z axis. If this does not provide reliable outcome then set Z axis down stroke to whtat is equivalent to a single stepper motor step. Further by blending ( G64 Pn.nnnn ) motion you may loose on accuracy of cut by n.nnnn factor but the motion will be much faster, the XY axes will not come to a stop but tend to move continuously. Good luck, tell us how you progress. |
|
#9
| |||
| |||
| Thanks Zig. I will certainly be trying things out over the holiday. Perhaps you can provide a hint to a good starting value for P given the following: X-0.132 X-0.146 Z0.0000 X-0.979 X-0.993 Z-0.0001 X-1.285 X-1.299 Z0.0000 X-1.896 X-1.91 Z-0.0001 X-2.104 X-2.118 Z0.0000 X-3.799 Am I to understand that the P value for blending has more to do with the distance between the X moves than anything to do with Z? I read the link on trajectory control, but I'm still a little confused because everything seems to pertain to path changes along an arc but my path is always a straight line when rastering. |
|
#10
| |||
| |||
| Read here about G64: http://wiki.linuxcnc.org/cgi-bin/emc...jectoryControl |
| Sponsored Links |
|
#11
| |||
| |||
| Well after a couple days of testing, here is what I've learned. 1. G64 Px.xxx isn't doing the trick for me. 2. I downloaded and tested the LinkMotion virtual CO2 printer software. I could run my laser with it using the control panel, but it would crash when I tried to send a print job. This is presently $600 software, so it had better work flawlessly. Right now this is a non-starter for me. 3. Since I had to put in a new 3.4GHz machine with at least 1G ram for the linkmotion software, I decided to try Mach 3 again on this new machine. 4. Mach 3 runs well on this machine and the laser engraver plugin does exactly what I need it to do. It still has some faults: The image must be exactly square or it will fold over on itself. This I can live with because I will be repeating two specific images in the production of a product. So this is the end of the road for me for now. My system will produce the product that I need. I will still be watching this thread with hopes that someone can figure out how to do the fast rastering within the Gcode. It will be nice to one day raster my image and then immediately cut it out within one piece of code. I hope the EMC programmers can take a look at the freely available source code for the Mach 3 laser engrave plugin. It would be nice if this could be improved upon and made a part of EMC3. One more statement to make: We have all sorts of companies pushing their new driver cards that have FPGA's and built-in memory for loading a file. They would have us think that our computer printer port cannot do a fast raster on its own. I beg to differ. With a 3.4GHz PC I've got the Mach 3 pulsing engine running at 100kHz. It is outputing the raster to my laser as fast as my motor can travel (1400"/min on X with 250 accel). I suspect if I replace my X axis with a servo I could go even faster. Our problem is not the parallel port interface (on a fast PC) but is instead the present state of milling software. Art did a fine job with the laser engraver plugin, but it does need a few improvements to make it perfect. I suspect that a LINUX software could out perform any Windows software with respect to direct drive of the parallel port. I would think within Linux one would indeed have the ability to suspend all other activity while a file is being "printed" by the laser. |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Universal Laser X2-660 - Need Driver | sanddrag | Laser Engraving & Cutting Machines | 2 | 01-05-2011 02:59 AM |
| Need Help!- Need help with laser and driver board | enixidfrag | Laser Engraving & Cutting Machines | 22 | 11-22-2009 07:13 PM |
| Newbie- how configuring emc2 to use rutex driver | famoldin | LinuxCNC (formerly EMC2) | 1 | 08-01-2009 10:40 AM |
| ITOP--CNC ROUTERS, LASER ENGRAVERS, LASER CUTTING MACHINES, CNC PLASMA CUTTERS | oliver9866 | Product Announcements & Manufacturer News | 0 | 10-17-2008 10:17 AM |
| Need Help!- Linux driver for GCC laser | Litografa | Laser Engraving & Cutting Machines | 0 | 07-09-2008 03:16 AM |