Activity for tk096

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, a few questions that you can check regarding your kinematics: * Does your kinematics FB implement the interface ISMKinematicWithInfo2? * Does AxesToCartesian(a, out f) -> CartesianToAxes(f, out aCompare) result in a=aCompare for random positions a? * Do you return a valid rotation matrix f.mR (SMC_Matrix3) in AxesToCartesian()?

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you have to define how many increments of the drive correspond to one unit in your application. This is done in the Scaling/Mapping Tab in the drive editor.

  • tk096 tk096 modified a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you can call the decoder function block in a loop and/or decrease the task cycle interval of Task_PATH.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you can call the decoder function block in a loop and/or increase the task cycle interval of Task_PATH.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you could calculate the position/dynamics of the slave axis yourself and use one of the function blocks SMC_FollowPosition/SMC_FollowSetValues to move the slave axis. https://content.helpme-codesys.com/en/libs/SM3_Basic/Current/SM3_Basic/POUs/Movement/Direct/SMC_FollowPosition.html https://content.helpme-codesys.com/en/libs/SM3_Basic/Current/SM3_Basic/POUs/Movement/Direct/SMC_FollowSetValues.html

  • tk096 tk096 modified a comment on discussion Motion πŸ‡¬πŸ‡§

    Meanwhile, I would like to understand why the motion FB instances must still be called even after the Execute is set to FALSE, especially in view of the fact that the next instruction is programmed to abort the previous one, with BufferMode set to 'Aborting'. All these unnecessary FB calls are an unnecessary overhead on the CPU anyway. Is there any precise rule about when to cease calling the various instances? (It should precisely be the 'done' status that says this one has finished its work). In...

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Meanwhile, I would like to understand why the motion FB instances must still be called even after the Execute is set to FALSE, especially in view of the fact that the next instruction is programmed to abort the previous one, with BufferMode set to 'Aborting'. All these unnecessary FB calls are an unnecessary overhead on the CPU anyway. Is there any precise rule about when to cease calling the various instances? (It should precisely be the 'done' status that says this one has finished its work). In...

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, dwIpoTime should be set to the cycle time of your motion task. It defines the interpolation interval of the interpolator. E.g. in the attached screenshot, the task has a task interval of 4ms. The dwIpoTime input of the interpolator should be set to 4000.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, I suppose that you are referring to the error code "SMC_FB_WASNT_CALLED_DURING_MOTION"? Starting of Softmotion version 4.15.0.0 the instance path of the function block that has not been called is logged into the device log. This might help you to identify why it has not been called.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, can you post a screenshot of your drive configuration?

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, a few suggestions on how to tackle the problem: - it might help to increase the cycle time of the ethercat task - increase the value of the ethercat parameter DCInSyncWindow (https://content.helpme-codesys.com/en/libs/IODrvEtherCATDriver/Current/pou-IoDrvEtherCAT/DCInSyncWindow.html) (see attached image) - enable FrameAtTaskStart (https://content.helpme-codesys.com/en/libs/IODrvEtherCATDriver/Current/pou-IoDrvEtherCAT/FrameAtTaskStart.html) in the ethercat master (see attached image) - if the...

  • tk096 tk096 modified a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, under this circumstances the performance of a Raspberry Pi 4 should be sufficient to run a Softmotion robotics application. A closer look at the project would be required. Maybe you could contact the codesys support? Usually it is recommended to run the planning task cyclically every 2ms with task priority of 0 on a dedicated core. In the task configuration you can have a look at the average and maximum execution time of the planning task. You could use the function block SMC_TuneCPKernel (https://content.helpme-codesys.com/en/libs/SM3_Robotics/Current/SM3_Robotics/POUs/AdministrativeConfiguration/Computation/SMC_TuneCPKernel.html)...

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, under this circumstances the performance of a Raspberry Pi 4 should be sufficient to run a Softmotion robotics application. A closer look at the project would be required. Maybe you could contact the codesys support? Usually it is recommended to run the planning task cyclically every 2ms with task priority of 0 on a dedicated core. In the task configuration you can have a look at the average and maximum execution time of the planning task. You could use the function block SMC_TuneCPKernel (https://content.helpme-codesys.com/en/libs/SM3_Robotics/Current/SM3_Robotics/POUs/AdministrativeConfiguration/Computation/SMC_TuneCPKernel.html)...

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you need a realtime capable plc. Codesys Control WinV3 is not realtime capable. https://content.helpme-codesys.com/en/CODESYS%20Control/_rtsl_performance_optimization_linux.html The last chapter of https://content.helpme-codesys.com/en/CODESYS%20SoftMotion/_sm_robotics_diagnosis_movement_problems.html deals with how to configure the planning task.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, which (kind of) PLC do you use?

  • tk096 tk096 modified a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, do you use a self-built custom kinematics or a kinematics that is shipped with the Softmotion package?

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, do you use a self-build custom kinematics or a kinematics that is shipped with the Softmotion package?

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you can define a start position for your GCode. How the start position can be defined depends on the CompileMode: For File and SMC_CNC_REF: Set the start position input of SMC_NCInterpreter (https://content.helpme-codesys.com/en/libs/SM3_CNC/Current/SM_CNC_POUs/NC2/Interpreter/SMC_NCInterpreter.html) For SMC_OutQueue: * Right-click on the CNC object in the project tree * Select Properties * Select the tab 'CNC' * Set the start position Concerning your second question: If the new set position...

  • tk096 tk096 modified a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, right-click on the device in the project tree on the left side and execute the command 'Enable Softmotion'.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, right-click on the device and execute the command 'Enable Softmotion'.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, you can take a look at https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_pragma_attribute_global_init_slot.html Maybe it helps.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, these variables are internal members of the axis. They measure the duration of some internal function calls.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, Softmotion Robotics does not support tracking in/out to dynamic coordinate systems with relative movements. Is MC_MoveLinearAbsolute an option? See SMC_RELATIVE_MOVEMENT_TRACKING_CS in https://content.helpme-codesys.com/en/libs/SM3_Error/Current/SM3_Error/SMC_ERROR.html Concerning the other error: Do you use any motion function blocks of SM3_Basic to move a single axis of the robot in your application?

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi ByCNC, have you seen G43? https://content.helpme-codesys.com/en/CODESYS%20SoftMotion/_sm_cnc_din66025_preprocessor.html https://content.helpme-codesys.com/en/libs/SM3_CNC/Current/SM_CNC_POUs/SoftMotion-CNC/SoftMotion-Function-Blocks/SMC_ToolLengthCorr.html https://content.helpme-codesys.com/en/CODESYS%20SoftMotion/_sm_example_tool_correction_usage.html Is this the functionality you are looking for? Hope this helps!

  • tk096 tk096 modified a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, the example project is shipped together with the Softmotion package (version 4.12.0.0 or higher). It should be located at <-path-to-your-codesys-installation->\CODESYS SoftMotion\Examples\Tutorial. Hope this helps.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    Hi, the example project is shipped together with the Softmotion package (version 4.12.0.0 or higher). It should be located at <path-to-your-codesys-installation>\CODESYS SoftMotion\Examples\Tutorial.</path-to-your-codesys-installation> Hope this helps.

  • tk096 tk096 posted a comment on discussion Motion πŸ‡¬πŸ‡§

    A sample project for a simple kinematics can be found under https://content.helpme-codesys.com/en/CODESYS%20SoftMotion/_sm_example_custom_robotics_kinematic.html

1