[Emc-users] problems with using Montenc-Lite card
Hello, We want to do some experiments using the Motenc-Lite card with the EMC2_2.3.1 software. The graphical interface we are using is TKEMC. The problem we are facing is as follows: 1. Start emc and select montec in My Configurations file folder. 2. Clear the “E-STOP” condition and turn the machine on (by pressing F1 then F2). 3. When press “Home” button, an error message Can't do that (EMC_AXIS_HOME) in auto mode with the interpreter idle occurs. If we skip the third step above, then the problem occurs as follows: 1. Start emc and select montec in My Configurations file folder. 2. Clear the “E-STOP” condition and turn the machine on (by pressing F1 then F2). 3. Load the file cds.ngc. 4. Put the stock to be milled on the table. 5. Set the proper offsets for each axis by jogging, an error message can't do that (EMC_AXIS_JOG) in auto mode with the interpreter idle occurs. If we skip the fifth step above, then the problem occurs as follows: 1. Start emc and select montec in My Configurations file folder. 2. Clear the “E-STOP” condition and turn the machine on (by pressing F1 then F2). 3. Load the file cds.ngc. 4. Put the stock to be milled on the table. 5. Run the program, and an error message Linear move on line 14 would exceed limits occurs. May anyone help us to solve the above problem please? Thank you, Schlieffen Wang Engineer Accupower Techonlogies email: schlief...@163.com -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] problems with using Montenc-Lite card
emc should be in manual mode to home an axis. press F3 to select manual mode before homing, or use the pop-down menu button that is marked with the current mode (e.g., AUTO). Jeff -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] G41/G42 question
Hello, guys! I am experimenting with G-code output from my CAM application for EMC. I used this CAM programm for my old controls on waterjet machine and now I would like to keep it also for EMC. The question is - where and how to specify the amount of compensation to be applied with G41 and G42? The CAM program automatically inserts appropriate G41 or G42 before each block of G01/G02/G03 moves and issues G40 after that. I just don't get, where the size of tool (in my case - radius of water jet) is specified? I was searcing the web, but all the places I looked are basically talking about the difference between G41 and G42 - which is left, and which is right side, and that they do not work in canned cycles and some other stuff. I looked also in EMC2 G-code reference page, where G41 and G42 commands are explained, but it also does not explain. http://linuxcnc.org/docs/html/gcode_main.html#sec:G41,-G42 Is there a way to specify the tool radius as a variable in the same line with G41 or G42? I think that this would be the most convinient way for me, because then I can save the syntax of whole G41 or G42 line in my CAM program so that I do not have to edit file by hand and also that would allow me from time to time adjust this number to meet exact size of water jet - nozzle wears out and I have to adjust to that. with best regards, Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] G41/G42 question
On 8 June 2010 13:49, Viesturs Lācis viesturs.la...@gmail.com wrote: The question is - where and how to specify the amount of compensation to be applied with G41 and G42? It comes from the Tool Table for the currently loaded tool. Is there a way to specify the tool radius as a variable in the same line with G41 or G42? G43.1 ? http://linuxcnc.org/docs/html/gcode_main.html#sub:G43,-G49:-Tool -- atp -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] G41/G42 question
G41 and G42 work with tools from the tool table. In the tool table you define the exact diameter and other parameters of the tool. You probably want to use G41.1 and G42.1 which allow you to specify the diameter along with the code. http://linuxcnc.org/docs/html/gcode_main.html#sec:G41.1,-G42.1 The same is true for G43.1 but for tool lenght, not diameter compensation. Regards, Alex - Original Message - From: Viesturs Lacis viesturs.la...@gmail.com To: Enhanced Machine Controller (EMC) emc-users@lists.sourceforge.net Sent: Tuesday, June 08, 2010 3:49 PM Subject: [Emc-users] G41/G42 question Hello, guys! I am experimenting with G-code output from my CAM application for EMC. I used this CAM programm for my old controls on waterjet machine and now I would like to keep it also for EMC. The question is - where and how to specify the amount of compensation to be applied with G41 and G42? The CAM program automatically inserts appropriate G41 or G42 before each block of G01/G02/G03 moves and issues G40 after that. I just don't get, where the size of tool (in my case - radius of water jet) is specified? I was searcing the web, but all the places I looked are basically talking about the difference between G41 and G42 - which is left, and which is right side, and that they do not work in canned cycles and some other stuff. I looked also in EMC2 G-code reference page, where G41 and G42 commands are explained, but it also does not explain. http://linuxcnc.org/docs/html/gcode_main.html#sec:G41,-G42 Is there a way to specify the tool radius as a variable in the same line with G41 or G42? I think that this would be the most convinient way for me, because then I can save the syntax of whole G41 or G42 line in my CAM program so that I do not have to edit file by hand and also that would allow me from time to time adjust this number to meet exact size of water jet - nozzle wears out and I have to adjust to that. with best regards, Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] G41/G42 question
2010/6/8 Andy Pugh a...@andypugh.fsnet.co.uk: On 8 June 2010 13:49, Viesturs Lācis viesturs.la...@gmail.com wrote: The question is - where and how to specify the amount of compensation to be applied with G41 and G42? It comes from the Tool Table for the currently loaded tool. So there is no other way to adjust the kerf size as only in the tool table? Ok, thank You for a suggestion, probably I can live with that as I do not have to do it very often. Is there a way to specify the tool radius as a variable in the same line with G41 or G42? G43.1 ? http://linuxcnc.org/docs/html/gcode_main.html#sub:G43,-G49:-Tool That is tool LENGTH compensation... Am I missing something? I feel like that might be a good way to adjust for different nozzle lengths, but I do not see, how to compensate the kerf size. Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] G41/G42 question
2010/6/8 Alex Joni alex.j...@robcon.ro: G41 and G42 work with tools from the tool table. In the tool table you define the exact diameter and other parameters of the tool. You probably want to use G41.1 and G42.1 which allow you to specify the diameter along with the code. http://linuxcnc.org/docs/html/gcode_main.html#sec:G41.1,-G42.1 Thank You! My apologies for such an impatience, at the beginning I read it once, but did not clearly understand, so asked this question on the mailing list, now I read it twice and understood that it is exactly, what I meant :)) Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] 5 axis G-code
Hello again! Now I have two questions, regarding correct G-code for 5 axis machine: 1) If I use G43 to compensate the nozzle length, how is EMC going to behave, when rotary axis are moved? What I want to achieve is that I would like to save appropriate tool length, which corresponds to distance from center of both rotary axis to the point, where water jet has to enter the material (here and after - tool tip) and have EMC conduct any compensating moves along X, Y and Z axis, so that tool tip does not move, when rotary axis are turned. Or are there any other way to achieve that? 2) is following command for G01 move correct?: G01 X10.000 Y 10.00 I0.000 J10.000 C90 The thing I want to find out is: how to properly write G03 move in XY plane with synchronised turn of rotary axis. This particular example would keep the cutting head oriented in the direction of the move. Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Axis on Debian Squeeze crashes
On 06/07/2010 06:30 PM, Jeff Epler wrote: Internet searches imply that this may be a general OpenGL problem. http://shi.govasp.com/viewtopic.php?f=3t=58 http://canberra.autons.net/docs/linux/install.phtml http://www.cgl.ucsf.edu/pipermail/chimera-users/2009-March/003708.html Yep, I am pretty sure that this is a bug in a system library rather than EMC/axis. However, my question pointed more in the direction on whether somebody has an idea how to workaround the issue rather than fix it. I realize that this is nontrivial, however. -- Greetings Michael. -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] 5 axis G-code
2010/6/8 Viesturs Lācis viesturs.la...@gmail.com: Hello again! Now I have two questions, regarding correct G-code for 5 axis machine: 1) If I use G43 to compensate the nozzle length, how is EMC going to behave, when rotary axis are moved? What I want to achieve is that I would like to save appropriate tool length, which corresponds to distance from center of both rotary axis to the point, where water jet has to enter the material (here and after - tool tip) and have EMC conduct any compensating moves along X, Y and Z axis, so that tool tip does not move, when rotary axis are turned. Or are there any other way to achieve that? 2) is following command for G01 move correct?: G01 X10.000 Y 10.00 I0.000 J10.000 C90 The thing I want to find out is: how to properly write G03 move in XY plane with synchronised turn of rotary axis. This particular example would keep the cutting head oriented in the direction of the move. My apologies for my laziness - please ignore the second question, as I found this one: If a line of code makes an arc and includes rotational axis motion, the rotational axes turn at a constant rate so that the rotational motion starts and finishes when the XYZ motion starts and finishes. Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] 5 axis G-code
On 8 June 2010 15:07, Viesturs Lācis viesturs.la...@gmail.com wrote: 1) If I use G43 to compensate the nozzle length, how is EMC going to behave, when rotary axis are moved? Unless the kinematics module takes account of the tool length, I am pretty sure that nothing else will. -- atp -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Difficulties with GIT
Hello! You need the source, and you might as well get that with Git, as that makes it easier to share any changes you make. (if you do write a kinematics module for waterjet, then the project wants it) http://wiki.linuxcnc.org/emcinfo.pl?Installing_EMC2#Getting_the_source_with_git and http://wiki.linuxcnc.org/emcinfo.pl?Git I followed Andy's advide, opened these links and tried to follow instructions. sudo apt-get install git-core gitk git-gui This worked without any issues. git clone git://git.linuxcnc.org/git/emc2.git emc2-dev For this command I get this one in terminal: fatal: The remote end hung up unexpectedly I thought that maybe I should have done this prior to downloading the source of EMC: git config --global user.name Your full name git config --global user.email y...@example.com But I did not get any response in terminal - I tried with and without the quotes (sorry, I do not know, if this is the case, where quotes have to be removed). What am I missing? Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] How to create custom kinematics module?
2010/6/5 Andy Pugh a...@andypugh.fsnet.co.uk: You would create a new file viesturskins.c (and possibly a .h) and put it in the src/emc/kinematics/ directory, then recompile. The module would then be available to load in HAL. You might need to add it to a makefile or header file somewhere. Hopefully someone with a bit more knowledge of the build process can advise here. With some help from Przemek Klosowski I now have downloaded the source of EMC. I looked in .../emc2-dev/src/emc/kinematics folder. There are .c and .h files for different kinematics modules. 1) Is there some source of information, where I can find out, what does each file do (cubic, genserkins and pumakins has both - .c and .h files, 5axiskins, gantrykins and scarakins - only .c file) and what is the difference? 2) Where can I find some information about the syntax, used in the .c and .h files? I encounter the word double in beginning of so many lines, that I have a suspicion that it is not meant to be mathematical action. I feel that my lack of programming skills is making me reconsidering, if I ever want to try this :) 3) Where are first two files, mentioned below? They are mentioned also in several .c files, but I do not see them in this folder... #include rtapi_math.h #include posemath.h #include genhexkins.h #include kinematics.h And what is the purpose of these files? What does each of them define/control? 4) My own preference (which is irrelevant, as it isn't my machine) would be for a kinematics module that takes X, Y, Z, A where the A is an angle set by the Gcode, but isn't directly related to the conventional A axis, but is in fact a kerf-angle or cutting angle, with positive to the right of direction of travel, and negative to the left. The kinematics module would measure the instantaneous X and Y velocities to determine the tangent, and do the maths from there. Output of the kinematics module would be pass-through of X, Y, Z for the X1 X2 Y Z joints, and calculated positions for the two head joints. Currently it seems to me that this type of solution can manage vast majority of my needs for 5 axis cutting (assuming that I can change the angle of tilt with appropriate G-code commands for different G01/G02/G03 moves or even during them). Any ideas, how to implement this? It seems to me that this whole thing has to be separated in following parts: a) kinematics for A and B rotary axis, where offset from end of nozzle to center of rotary axis is handled b) implementing tangent calculation: The kinematics module would measure the instantaneous X and Y velocities to determine the tangent c) implement A and B move calculation to keep tilt angle perpendicular to movement direction Are there any examples, where something similar has been achieved? ANY help, tips, advices, opinions or commentaries will be greatly appreciated :)) Viesturs -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] How to create custom kinematics module?
On 8 June 2010 22:31, Viesturs Lācis viesturs.la...@gmail.com wrote: 2) Where can I find some information about the syntax, used in the .c and .h files? http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?ie=UTF8s=booksqid=1276036335sr=8-1 :-) More seriously, perhaps look on the internet. This page was the first I found, but looks OK. http://www.cprogramming.com/tutorial/c/lesson1.html Alternatively, and to see immediate results (albeit results unrelated to your project) you could start where I started a few months ago: http://www.ladyada.net/learn/arduino/index.html Starting in friendly programming environment but working closely with hardware might not be the worst place to start. You shouldn't have to learn all of C in one go, it should be possible to take an existing kinematics file and understand which bits do the maths, and just change them. In fact, for your purposes you can just choose a kinematics module that you know you won't use, and repurpose it. That way it gets compiled without you having to worry about telling the compiler there is a new file to compile. I encounter the word double in beginning of so many lines, that I have a suspicion that it is not meant to be mathematical action. Indeed not. In this case double is a type of variable, a floating point one with lots of precision: http://en.wikipedia.org/wiki/Double_precision I feel that my lack of programming skills is making me reconsidering, if I ever want to try this :) I won't pretend that it isn't going to be a challenge. But being able to program is very, very, useful. (I understand that it is even possible to get paid for doing it!) 3) Where are first two files, mentioned below? They are mentioned also in several .c files, but I do not see them in this folder... #include rtapi_math.h #include posemath.h #include genhexkins.h #include kinematics.h And what is the purpose of these files? What does each of them define/control? rtapi_math.h includes definitions of a set of realtime-safe functions such as trigonometry. Your kins module will _definitely_ need that one. You will find both in emc2-dev/include. Luckily so will the compiler so you don't have to worry about it other than adding that line. .h files are headers they contain definitions of variable types and functions, but don't actually contain any software in the sense that you probably think of the term. Currently it seems to me that this type of solution can manage vast majority of my needs for 5 axis cutting (assuming that I can change the angle of tilt with appropriate G-code commands for different G01/G02/G03 moves or even during them). That is how I envisaged it. Any ideas, how to implement this? It seems to me that this whole thing has to be separated in following parts: a) kinematics for A and B rotary axis, where offset from end of nozzle to center of rotary axis is handled Indeed, look in genserkins for an example of that sort of calculation, from fixed geometrical constants. ANY help, tips, advices, opinions or commentaries will be greatly appreciated :)) You need to learn enough C to be able to read through and get a feel for what is happening, but the actual mathematical descriptions are a very few lines of code. for example rotatekins.c does all the maths in lines 24,25,43 and 45 to make a normal XYZ machine act as if it has a rotary table. Your module would end up looking a lot like that. Looking in that file we can see that the x and y coordinates seem to be returned by pos-tran.x, pos-tran.y etc. That might be all we need, I have tried tracking back through the definitions of pos-tran and find a lot of rather clever stuff going on that I am glad somebody else has already figured out. The only complication I see is that you might have to add some variables to the structure to remember X and Y from call to call to get the (dx,dy) to calculate the tangent. Or that information might well be somewhere else in the pos structure like pos-vel.x (though I can see no reason for that to be the case) Incidentally, after writing and researching that I now know 20x as much about kinematics as I did before, and might have pulled back ahead of you in understanding emc kins. -- atp -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Preferred syntax of G71
I am planning on (slowly) implementing a G71 roughing cycle for EMC2. The syntax varies between manufacturers and i would like to use this post to setup a syntax everyone can agree on. I think the goal is easy, it has to work well within EMC2's gcode and variable use, some may hope it's just like their G71, but that might not happen, if the result is just like you are used to, you are lucky :). We need a way to specify: Depth of cut: Word proposal: D Retract: Word proposal: R Stock allowance in X: Word proposal: U Stock allowance in Z: Word proposal: W First line of shape to rough: Word: P Last line of shape to rough: Word: Q You may have followed link [1] already and wonder why i started out saying that people probably won't get what they are used to and now the proposal above is identical to Haas' G71. I was already told using U and W could be a problem since U and W are already in use for second turret motion of X and Z. (Proposed) Example: G00 Z.1 G00 X7. G71 P10 Q20 D.250 U.02 W.005 R.050 F.010 N10 G0 X5. N20 G1 Z-8. G00 Z.1 G28 X0. G28 Z0. The above example would position to Z.1 and X7., the start point from which to run the canned cycle. X7-X5 0 means we are cutting an OD, we cut a stock of 7 down to 5.02 , 7.995 long in .250 radial depth, retracting at the end of the pass at 45deg. (think Z=Z+R X=X+2*R) (I am aware that this simplest use example could easily be done in a o word loop, i've done it, it's a syntax example) If there is no way in EMC to differentiate between the use of U and W for motion and U and W for a canned cycle setup, we need other words to use in place of U and W, and to be honest, the words used don't actually matter as long as they don't interfere with anything else and are documented so it's easy for new users to adapt to use this G71. The link [2] i think nicely illustrates the benefit of using a simple canned cycle for roughing vs handcoding this line by line. (I cheated and asked our CAM software to post without canned cycles for the examples on that link.) Especially when moving the same code between different size machines that can deal with different depths of cut. No need to maintain separate programs for different machines either. I would like to propose a single line for a G71 like the way Haas sets them up [1], unlike the double line G71 (some) Fanuc controllers use [2]. My current goal is to implement G71 in a way that it will not consider undercuts, it is the safer of the two variants of G71 cycles. And still a most useful tool. I am looking forward to hear your suggestions, Daniel [1] http://wiki.linuxcnc.org/emcinfo.pl?HaasRoughingFinishing [2] http://wiki.linuxcnc.org/emcinfo.pl?FanucRoughingCycleExamples -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users