05-28-2019, 07:39 AM
你好!我目前在做一个3 d印刷项目with an ABB IRB120. For the extruder, I am using an arduino Mega/RAMPS for extruder control and hotend control. I noticed that when generating the RAPID code, roboDK translates the E values from the G-code to a function called 'ExtruderSpeed()' which seems to set the extrusionspeedrather than how manymm of filamentto extrude as shown in the segment below
Is there any way to avoid this? Or some option that I need to change? Because when I generate the code with the 3D printing example included in the software, it seems to translate the E values from the G code as it is, it to a number that relates to the mm of filament to be extruded rather than a set speed as shown in the segment below.
Could this be due to Slic3r? Or is it some setting in RoboDK? Kindly let me know! Thank you!
Code:
MoveL [[-0.000,0.000,0.350],[0.00000000,0.00000000,-1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],[130.00,500,5000,1000],z1,IRBpelletextruder,\WObj:=Frame2;
ExtruderSpeed 0.000;
MoveL [[-0.000,0.000,0.350],[0.00000000,0.00000000,-1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v40,z1,IRBpelletextruder,\WObj:=Frame2;
ExtruderSpeed 13.000;
,123.450 MoveL [[147.614, 0.350], [0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],[130.00,500,5000,1000],z1,IRBpelletextruder,\WObj:=Frame2;
ExtruderSpeed 0.000;
,123.450 MoveL [[147.614, 0.350], [0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v40,z1,IRBpelletextruder,\WObj:=Frame2;
,123.450 MoveL [[147.614, 0.350], [0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
ExtruderSpeed 3.000;
MoveL [[149.933,120.891,0.350],[0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[150.392,120.432,0.350],[0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[152.948,118.115,0.350],[0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[153.450,117.704,0.350],[0.00000000,0.00000000,-1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[156.222,115.647,0.350],[0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[156.762,115.287,0.350],[0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[159.722,113.513,0.350],[0.00000000,0.00000000,-1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
MoveL [[160.295,113.206,0.350],[0.00000000,0.00000000,1.00000000,0.00000000],[-1,1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v30,z1,IRBpelletextruder,\WObj:=Frame2;
Is there any way to avoid this? Or some option that I need to change? Because when I generate the code with the 3D printing example included in the software, it seems to translate the E values from the G code as it is, it to a number that relates to the mm of filament to be extruded rather than a set speed as shown in the segment below.
Code:
rdkSpeed:=[1000.0,500,1000.0,500];
MoveAbsJ [[29.080182,61.286059,29.900204,-150.914601,91.036706,-179.423374],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj;
rdkSpeed:=[83.3,500,83.3,500];
MoveL [[-59.027,-59.027,5.000],[0.00000001,0.00000000,1.00000000,-0.00000001],[0,-2,-2,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj;
Extruder(-1);
MoveL [[-59.027,-59.027,5.000],[0.00000001,0.00000000,1.00000000,-0.00000001],[0,-2,-2,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj;
Extruder(0.000);
rdkSpeed:=[130.0,500,130.0,500];
MoveL [[-59.027,-59.027,10.000],[0.00000000,0.00000000,1.00000000,0.00000000],[0,-2,-2,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj;
Extruder(-2.000);
rdkSpeed:=[40.0,500,40.0,500];
MoveL [[-59.027,-59.027,10.000],[0.00000000,0.00000000,1.00000000,0.00000000],[0,-2,-2,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj;
Extruder(0.000);
rdkSpeed:=[130.0,500,130.0,500];
MoveL [[-59.027,-59.027,10.000],[0.00000000,0.00000000,1.00000000,0.00000000],[0,-2,-2,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj;
Extruder(2.000);
rdkSpeed:=[40.0,500,40.0,500];
Could this be due to Slic3r? Or is it some setting in RoboDK? Kindly let me know! Thank you!