No renderer 'odt' found for mode 'odt'
mycnc:mycnc_add_shape_to_library
This is an old revision of the document!
Table of Contents
How to add Shape to Shape Library
There are 3 files should be created to build new Library Shape:
- G-code file with Shape Toolpath Programming. A Shape dimension, cutting and nesting parameters can be programmed through Macro Language extension Variables. File should have extension lbf (Library file)
- XML file with definition of Variables used in the Shape toolpath programming (lbf). Variables definition includes Variable address, name, minimum and maximum range, initial value, step for variable change (if SpinBox GUI widget used). MyCNC software use this XML file to build Setup dialog to program Shape parameters, then myCNC software initializes Variables listed in XML file accordingly current Variable Values.
- SVG - Shape preview graphic image file in SVG format (Scalable Vector Graphic)
All 3 files should be placed in Library folder.
- For Linux - ~/myCNC/lib
- For Windows - C:/MyCNC64/lib
Shape Example 1
- 210.lbf
G90 G17 G40 G80 G00 S20000 M03 #101=0 ; Start Z #101=#101-#21 if [ #101 gt #11 ] 20 #101=#11 (if Step Z more than Depth Z, limit it) N20 G0 X0. Y0. A0. #102=[ #10 - #50] / 2; Last X corrected by Tool Radius N50 G0 Z#60 #100=#20 (Current X = Step X ) N100 G1 X#100 Y0. A0. G1 G94 Z#101 F#40 G3 X#100 Y0. I[0-#100] J0. F#41 if [ #100 GE #102 ] 200 #100 = #100 + #20 if [ #100 LE #102 ] 100 #100 = #102 JUMP 100 N200 G00 Z#60 if [ #101 LE #11 ] 500 (goto finish) #101=#101-#21 (Current Z = Step Z ) if [ #101 GT #11 ] 50 #101=#11 JUMP 50 N500 M05 G90 M30
Shape G-code uses Variables:
- #10, #11 - Dimension and Cut depth
- #20, #21 - Steps for X and Z for each pass
- #40, #41 - Feed rates
- #50, #60 - Tool diameter and Safe Height
To generate correct g-code this parameters should be listed XML configuration file. Sections Item represent each Parameter. Item attribute number represent Parameter address. For example first Item in XML file has number 10, Item value is “26”, then value “26” will be loaded into Parameter #10 before loading LBF file.
- 210.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE CNC> <mycnc-shape-variables version="1.0"> <section> <message>Sample Shape 1</message> <message_ru>Выборка</message_ru> </section> <item> <value number="10" type="numpad" step="0.1" min="0" max="10000">26</value> <message>Diameter, mm</message> <message_ru>Диаметр, mm</message_ru> </item> <item> <value number="11" type="numpad" step="0.1" min="-1000" max="0">-15</value> <message>Depth, mm</message> <message_ru>Глубина, mm</message_ru> </item> <item> <value number="20" type="numpad" step="0.1" min="0" max="10000">2</value> <message>Step X, mm</message> <message_ru>Шаг X, mm</message_ru> </item> <item> <value number="21" type="numpad" step="0.1" min="0" max="10000">3</value> <message>Step Z, mm</message> <message_ru>Шаг Z, mm</message_ru> </item> <item> <value number="30" type="numpad" step="10" min="0" max="10000">10</value> <message>Off X, mm</message> <message_ru>Отвод X, мм</message_ru> </item> <item> <value number="40" type="numpad" step="10" min="0" max="3000">200</value> <message>Feed Start</message> <message_ru>Подача врезания Х</message_ru> </item> <item> <value number="41" type="numpad" step="10" min="0" max="3000">800</value> <message>Feed, mm/min</message> <message_ru>Подача, мм/мин</message_ru> </item> <item> <value number="50" type="numpad" step="0.1" min="0" max="50">2</value> <message>Tool Diameter, mm</message> <message_ru>Диаметр инструмента, мм</message_ru> </item> <item> <value number="60" type="numpad" step="0.1" min="0" max="1000">10</value> <message>Tool Lift, mm</message> <message_ru>Безопасная высота, мм</message_ru> </item> </mycnc-shape-variables>
Graphic preview for the Shape is Shape Setup dialog will be -
mycnc/mycnc_add_shape_to_library.1505242805.txt.gz · Last modified: 2017/09/12 15:00 (external edit)