I'm a bit new to PyCAM and excited be how well it works in english. Metric is giving me a problem. PyCAM seems to post dimensions to four places after the decimal (X.XXXX) in english and metric. My Haas mill exepts four decimal places in english, but only three decimal places in metric. Is there a setting to controll the number of decimal places, if so where? If there is no setting for this, can you advise an other technique. Right now I convert to english but prefer metric. Thank you.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank your for your detailed explanation.
But I am still not sure, if I understand your specific problem :)
Thus: which specific change do you have in mind?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In G21 metric PyCAM will post all positions to the fourth decimal place (ex. X34.6823 Y102.3358). The Haas machine I run, when in G21 metric needs a three place resalution to recognize the number as valid (ex. X34.682 Y102.336). In G20 english the mill recognizes a four place decimal as a valid number. How can I change the resolution of the numbers that PyCAM posts?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ah - ok. What a tricky machine!
I would recommend to file a bug report to its vendor.
In pycam you can try to reduce the "Step Precision" in the GCode settings. It defaults to 0.0001. If you reduce it to 0.001, then all values should be formatted with only three digits.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Again, I Thank You. The virsion of pycam I was using was from https://github.com/SebKuzminsky/pycam/releases ; pycam_0.6_all.deb released by SebKuzminsky Feb 18. I found the name PyCAM 0.6-svn from the 'Help/About'. I used this because it appeared to be the latest debain package. I installed pycam_0.5.1-1_all.deb relased by njh, and all works well for me. I don't know if any of the other pycam-6 have the Step Precision feature because my limited package managment skills are unable to make any of them run. I hope they do or will have this feature. Thank you and all PyCAM developers.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello everyone :)
I also have a problem with the minimum step width. I have set it to 0.002 for all axes but when I export the G-code file I have got the following lines:
X78.099 Z0.006
X78.097 Z0.005
X78.095 Z0.004
So, as you see, the Z axes difference between the first and second step is only 0.001 and also for second and third, and this precision has been not acceptable by my motors, so, is there any suggestion here please?
Thanks in advance :)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
the current StepWidth logic within pycam is defined as follows (see pycam/Toolpath/Filters.py: line 476):
calculate the distances between every two successive locations (for all three axes)
if all three distances (x, y, z) are smaller than their defined StepWidth (here: 0.002), then this location is skipped
For your example it means, that probably some points in between were already skipped, but somewhen the x stepping exceeded the limit - thus the point was recorded.
I do not have a machine that exhibits this specific physical limitation.
Thus: could you please try to specify (in detail) a logic that the StepWidth code should follow (instead of the above)?
Or (maybe even better): shouldn't there be a setting in your controller software (e.g. linuxcnc), that handles this machine limitation?
(I think, this would be the proper approach for that problem)
Cheers,
Lars
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for fast rsponse :D
I want the StepWidth to see if there is a distance in any axes (x,y,z) smaller than (0.002) and skip it, so, in my situation I want the G-code to be like the following:
X78.099 Z0.006
X78.097
X78.095 Z0.004
I have a servo motors driven by a PLC, and there minimum width is only (0.002) so, its impossible to get a more accurate step
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ah - ok.
We should just skip the "below step width" axis (and keep the other axes of the location). This sounds reasonable - I will take a look at that.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm a bit new to PyCAM and excited be how well it works in english. Metric is giving me a problem. PyCAM seems to post dimensions to four places after the decimal (X.XXXX) in english and metric. My Haas mill exepts four decimal places in english, but only three decimal places in metric. Is there a setting to controll the number of decimal places, if so where? If there is no setting for this, can you advise an other technique. Right now I convert to english but prefer metric. Thank you.
Thank your for your detailed explanation.
But I am still not sure, if I understand your specific problem :)
Thus: which specific change do you have in mind?
In G21 metric PyCAM will post all positions to the fourth decimal place (ex. X34.6823 Y102.3358). The Haas machine I run, when in G21 metric needs a three place resalution to recognize the number as valid (ex. X34.682 Y102.336). In G20 english the mill recognizes a four place decimal as a valid number. How can I change the resolution of the numbers that PyCAM posts?
Ah - ok. What a tricky machine!
I would recommend to file a bug report to its vendor.
In pycam you can try to reduce the "Step Precision" in the GCode settings. It defaults to 0.0001. If you reduce it to 0.001, then all values should be formatted with only three digits.
That was exactly what I was looking for. Thank you very much.
I recently loaded PyCAM 0.6-svn. I am unable to find this setting in the new PyCAM.
This version name sounds weird.
Please try one of the latest releases: https://github.com/SebKuzminsky/pycam/releases
Again, I Thank You. The virsion of pycam I was using was from https://github.com/SebKuzminsky/pycam/releases ; pycam_0.6_all.deb released by SebKuzminsky Feb 18. I found the name PyCAM 0.6-svn from the 'Help/About'. I used this because it appeared to be the latest debain package. I installed pycam_0.5.1-1_all.deb relased by njh, and all works well for me. I don't know if any of the other pycam-6 have the Step Precision feature because my limited package managment skills are unable to make any of them run. I hope they do or will have this feature. Thank you and all PyCAM developers.
Hello everyone :)
I also have a problem with the minimum step width. I have set it to 0.002 for all axes but when I export the G-code file I have got the following lines:
X78.099 Z0.006
X78.097 Z0.005
X78.095 Z0.004
So, as you see, the Z axes difference between the first and second step is only 0.001 and also for second and third, and this precision has been not acceptable by my motors, so, is there any suggestion here please?
Thanks in advance :)
Hi,
the current StepWidth logic within pycam is defined as follows (see pycam/Toolpath/Filters.py: line 476):
For your example it means, that probably some points in between were already skipped, but somewhen the x stepping exceeded the limit - thus the point was recorded.
I do not have a machine that exhibits this specific physical limitation.
Thus: could you please try to specify (in detail) a logic that the StepWidth code should follow (instead of the above)?
Or (maybe even better): shouldn't there be a setting in your controller software (e.g. linuxcnc), that handles this machine limitation?
(I think, this would be the proper approach for that problem)
Cheers,
Lars
Thanks for fast rsponse :D
I want the StepWidth to see if there is a distance in any axes (x,y,z) smaller than (0.002) and skip it, so, in my situation I want the G-code to be like the following:
X78.099 Z0.006
X78.097
X78.095 Z0.004
I have a servo motors driven by a PLC, and there minimum width is only (0.002) so, its impossible to get a more accurate step
Ah - ok.
We should just skip the "below step width" axis (and keep the other axes of the location). This sounds reasonable - I will take a look at that.