Hi, no, it is not possible to change the link twist for SMC_Trafo(F)_ArticulatedRobot_6DOF. If the robotics kinematics Kin_ArticulatedRobot_6DOF uses the convention for link twist you expect, you could wrap it into two FBs with the same inputs/outputs as SMC_Trafo(F)_ArticulatedRobot_6DOF and use these FBs with your CNC application. Georg
Hi ByCNC, G75 synchronizes the path processing (in German "Satzvorlauf") with the interpolator. It makes sure that the next G-Code line is processed only after the interpolation has reached the line with G75. All path processing buffers are emtpied before the next line is interpreted. Hope this helps, Georg
I would recommend to trace the fSetPosition input of SMC_ControlAxisByPos. Most likely there is a jump in this position for some reason.
Hi intvenkat, the parameters of the robotics kinematics "Kin_ArticulatedRobot_6DOF" are explained here, with pictures: https://content.helpme-codesys.com/en/libs/SM3_Transformation/Current/SM3_Transformation/Function-Blocks/Standalone-Kinematics/Articulated-Robots/6AxisArticulated/Kin_ArticulatedRobot_6DOF.html Does this help, or are you looking for further information about the CNC function block "SMC_TrafoF_ArticulatedRobot_6DOF"? Best regards, Georg
Hi ByCNC, if you have bAvoidGaps = TRUE, then this happens if the velocity of the fSetPosition is greater than the maximum velocity configured for the axis. See the axis configuration, tab "General", group "Dynamic Limits". https://content.helpme-codesys.com/en/CODESYS%20SoftMotion/_sm_edt_drive_general.html Most likely, if you increase the velocity there, the problem disappears. Best regards, Georg
As I said, the queue sizes can be much smaller than the g-code file sizes. I have attached an example were we have ~ 1000 lines of g-code and 50 elements in the queue.
Dear ByCNC, the error probably occurs because you have more than 2^15-1 (32767) elements in your CNC queue. It is not recommended to use such a huge queue size. Even with g-code files that are in the millions of lines, you do not need to keep the entire path in memory. In your case, a queue size of 100 SMC_GeoInfo elements should be more than enough. Best regards, Georg
Hi Peter, I would recommend to check the PLC log and amybe the drive itself what kind of error has occurred. You could also execute MC_ReadAxisError to read the drive specific error object. (You probably need the drive documentation to interpret the value.) And then you could use PLC controlled homing (SMC_Homing) instead of drive controlled homing (MC_Home) as a workaround. Best regards, Georg