Post by simotion on Inheritance of axis
CODESYS Forge
talk
(Post)
I have developped a function block 'Axis' the inherits from 'AXIS_REF_SM3' -> FUNCTION_BLOCK Axis EXTENDS AXIS_REF_SM3 In my global variable list I define a variable MasterDrive of type Axis and assign Axis1. Axis1 is a virtual drive (AXIS_REF_VIRTUAL_SM3). This type should inherit from AXIS_REF_VIRTUAL. VAR_GLOBAL MasterDrive : Axis := Axis1; However I get the error 'Cannot convert type'. What is the way to obtain what I want : function block inheriting AXIS_REF_SM3 and initialising this function block with a Softmotion virtual or real axis?
Last updated: 2023-12-07
Post by jbu0105 on Dynamic limits invaild
CODESYS Forge
talk
(Post)
Hello, For my delta robot i wil use the MC_MoveCirvularAbslolute function. Every time that i set the execute of this function has my Axis group a error. Thats is: The dynamic limits for the movement are invalid. What can i do that this error go away? I saw a view funcitons with limit dymanics but i don't now how they work. If i use the function MC_MoveLinearAbsolute than i have no error. Does anyone know how i fix this?
Last updated: 2025-04-04
Post by jbu0105 on Dynamic limits invaild
CODESYS Forge
talk
(Post)
Hello, For my delta robot i wil use the MC_MoveCirvularAbslolute function. Every time that i set the execute of this function has my Axis group a error. Thats is: The dynamic limits for the movement are invalid. What can i do that this error go away? I saw a view funcitons with limit dymanics but i don't now how they work. If i use the function MC_MoveLinearAbsolute than i have no error. Does anyone know how i fix this?
Last updated: 2025-04-04
Post by apurv on Cannot pass array of constant size to a function as a reference
CODESYS Forge
talk
(Post)
I have a Array of constant size defined like this Var Constant MAX_SIZE :UINT := 10; End_var VAR array : ARRAY[0..MAX_SIZE] OF INT; END_VAR Now I want to pass this array to a function by reference, Function fun : INT VAR_IN_OUT CONSTANT MAX_SIZE : UINT; END_VAR VAR_INPUT array : REFERENCE TO ARRAY[0..MAX_SIZE] OF INT; END_VAR but when I run this it gives strange Errors Error : Cannot Convert type 'ARRAY [0..MAX_SIZE] OF INT' to type 'ARRAY[0..MAX_SIZE] OF INT'
Last updated: 2024-01-07
Post by sturmghost on Visualization using methods and cyclic ST-calls
CODESYS Forge
talk
(Post)
I found a way to do it: You can use, for example, the text variable property of any visualization element and call a function in it. Example: Write a test POU as a function (FUN), like MyTestFun which need a boolean Variable as an input value. Now write into the text variable property: MyTestFun(bBooleanValue) Thats it. The function is called at each visu_task cycle.
Last updated: 2024-01-22
Post by micik on CAA File, how to check whether file exists or not
CODESYS Forge
talk
(Post)
Hello, what would be the most efficient way to check whether the file exists or not. I don't want to use file.Open function, it seems like rather inefficiet operaton. I considered GetAttribute function, but this function doesn't accept filename (with path) as an input. Basically I need to check first time when program is loaded to the runtime i.e. when application is started for the first time, whether a file exists on the specific location or not.
Last updated: 2024-05-16
Post by shaunvdm on OSCAT Scale_r function not working in LD 4.60 works in LAD2 on 3.5.21sp3
CODESYS Forge
talk
(Post)
Hi We have picked up an issue OSCAT_BASIC.Scale_r function call not working in the old lad and FBD version 4.60. Gives no output on the function call. When we convert this to LAD2 it works. As can be see by the two screenshot in normal LD not working in LAD2 it works. Please confirm if this is an issue with Oscat or with LAD in 3.5.21sp3, is there an workaround. Regards Shaun
Last updated: 2025-10-23
Post by shaunvdm on OSCAT Scale_r function not working in LD 4.60 works in LAD2 on 3.5.21sp3
CODESYS Forge
talk
(Post)
Hi We have picked up an issue OSCAT_BASIC.Scale_r function call not working in the old lad and FBD version 4.60. Gives no output on the function call. When we convert this to LAD2 it works. As can be see by the two screenshot in normal LD not working in LAD2 it works. Please confirm if this is an issue with Oscat or with LAD in 3.5.21sp3, is there an workaround. Regards Shaun
Last updated: 2025-10-23
Post by kishan on OSCAT Scale_r function not working in LD 4.60 works in LAD2 on 3.5.21sp3
CODESYS Forge
talk
(Post)
here is formula for scale function you can impliment your own scale function Output=OutMin+(Input−InMin)×(InMax−InMin)(OutMax−OutMin) FUNCTION_BLOCK FB_Scale VAR_INPUT xIn : REAL; // Input value (e.g., raw sensor) xInMin : REAL; // Input range minimum xInMax : REAL; // Input range maximum xOutMin : REAL; // Output range minimum xOutMax : REAL; // Output range maximum END_VAR VAR_OUTPUT xOut : REAL; // Scaled output END_VAR VAR xGain : REAL; xOffset : REAL; END_VAR // Implementation xGain := (xOutMax - xOutMin) / (xInMax - xInMin); xOffset := xOutMin - xGain * xInMin; xOut := xGain * xIn + xOffset;
Last updated: 2025-10-26
Post by kareem-pt on Velocity is too low even though correct value is reported
CODESYS Forge
talk
(Post)
Hello, I'm playing around with a single axis. I've setup scaling and set the drive to move 360 degrees in the commissioning tab. The axis does move 360 degrees, but it moves much slower than the 360 degrees per second that I set for the velocity. It seems to be about 3 times slower (taking about 3 seconds instead of 1). This is despite the set and actual velocity both being displayed as 360. The acceleration, deceleration and jerk are all set to very high values. I'm just running this on my PC, using demo mode (no license purchased yet). I've attached a video showing the problem. Does anyone know what the problem could be? Thanks
Last updated: 2025-06-06
Post by peterned on CNC - system goes to X=0 Y=0 before CNC file execution starts, how to avoid that?
CODESYS Forge
talk
(Post)
Hi, I have a XY system and use a CNC file to move it. Everything works OK, except for the following: when CNC execution starts, the system rushes at high speed to (X=0, Y=0) point, and only then goes to the first line of the CNC file. If one of the axes is near 0, the system jumps and immediately stops with an error. In the CNC file settings (screenshot attached) I specified low default values for speed/acceleration and a start position different from 0,0 - but all that is ignored. Any idea how to avoid that move to 0,0 ? Thanks.
Last updated: 2024-04-26
Post by bbm1995 on Security Screen - Custom Certificates for OPC UA Server?
CODESYS Forge
talk
(Post)
Hi everyone, is it possible to use selfsigned/created certificates (eg. with X - Certificate and Key Management) as a OPC UA Server certificate in the Security Screen? As far as I know I can only upload client certificates to the PLC and move it to "Trusted", "Untrusted" and "Quarantined". Same question is on sps-forum.de
Last updated: 2023-08-23
Post by gepert on parker servo and position
CODESYS Forge
talk
(Post)
Hello, I using codesys motion with Parker servo (without brake). In my application i use mc_moverelative. When i send new position motor moves. But when it arrives to the point it stops and does not hold the position. It means that i can easily move shaft by hand Should i somewere turn it on so motor keep position by torque (current)? Best regards Lukasz
Last updated: 2024-08-04
Post by gepert on parker servo and position
CODESYS Forge
talk
(Post)
Gentleman OMG, I made a huge mistake when i tried and moved shaft by hand i hold cover(as on photo) in my fingers. I was convinced that shaft has key but it there is not key. So when i turn cover it slide on shaft. When i take off cover and drive is in standstill, shaft does not move. So everything works perfectly
Last updated: 2024-08-07
Post by xabier on Kinematics Robot Delta 2 Axis
CODESYS Forge
talk
(Post)
Hi, I have a customer and this customer design this robot...The customer need move ...I would like if Codesys has this Kinemtaics I attached photo of the robot.(this robot has 2 Axis) I have checked all kinematics has Codesys but not has the same....Someone help me Please?? Thanks XABI
Last updated: 2024-12-11
Post by jba-eltech on Moving Frames
CODESYS Forge
talk
(Post)
Hello everyone. I am using Codesys and saw in a YouTube video on the Codesys channel (https://www.youtube.com/watch?v=y_l2siXY7dA) that you can create frames and move them with the mouse. However, the video does not show how to do this. Can someone please explain it to me? Thank you very much.
Last updated: 2025-04-01
Post by xabier on What wrong with FB SMC_Interpolator?
CODESYS Forge
talk
(Post)
hi Getdone I have the same problem with you...Could resolved this problem?? Can you move with more speed??... I have cicle time 1 ms and the moment increase speed >5mm/s the FB SMC_Interpolator not fine work....Tell me plese if you resolved this problem Thanks Regards XABI
Last updated: 2024-04-30
Post by poliautomacao on Absolute movement controlled by an external encoder.
CODESYS Forge
talk
(Post)
Hello, is it possible to perform an MC_MoveAbsolute movement, and have the servo move using an external encoder (freeEncoder)? In my application, I have slippage on the main shaft of the servo motor, and I would like to add an encoder to measure the actual position of the material.
Last updated: 2026-03-04
Post by gseidel on Mismatch between coordinate monitor and actual motion using SMC_GroupJog2, MC_MoveLinearAbsolute (6DOF)
CODESYS Forge
talk
(Post)
Hi darwin03, when all joints are 0°, then the 6-axis robot is in a so called singularity. This means that it is in a special position where it cannot move freely in all directions but is restricted by its own construction. For a simple example, imagine a scara robot where the arm is fully stretched. In this position it cannot move freely. You can find a lot of information about robot configurations in the www. As far as CODESYS SoftMotion Robotics is concerned, this page holds the most important links, look for the error SMC_CP_CONFIGS_DIFFER: https://content.helpme-codesys.com/en/CODESYS%20SoftMotion/_sm_robotics_errors.html The most important rules: 1) CP movements (linear moves, circular moves, cartesian jogging) cannot change the configuration during the movement. Both start- and endpoint must be in the same configuration. This excludes also the edge case that one or both of them are in a singularity. 2) PTP movements can move through singularities and cross configurations without problems. 3) SMC_SetKinConfiguration can be used to set the configuration of the axis group. Regards, Georg
Last updated: 2026-05-04
Post by smartcoco on Visualization using methods and cyclic ST-calls
CODESYS Forge
talk
(Post)
I think what you want is a declaration period function for the page, but unfortunately CODESYS does not have it.
Last updated: 2023-10-17
Post by jerry-sorrells on Find Function: Object reference not set to an instance of an object.
CODESYS Forge
talk
(Post)
Build: CODESYS 3.5 SP19 Patch 1 (64-bit) Host OS: Windows 10 Target: Linux SL I have a project with programs in Structured Text and Ladder Diagram. When I try to use the Find function, it works for the Active Editor; however, when I try to use Find for the Entire Project, I get the error "Object reference not set to the instance of an object." I know what this error means in the context of the program, but I have no idea why the find function is returning this error. The variable I am searching does not matter: it happens with all variables. Any help with this will be greatly appreciated. I generally use the Find function quite often as I am developing and not having it is really slowing me down.
Last updated: 2023-10-23
Post by pascaljt on Function block for Ethernet/IP
CODESYS Forge
talk
(Post)
Hello, I program a function for an Ethernet/IP controller. I made a structure with input and output corresponding with the map of my controller for the function block. My problem is that I don't know how to do the link between the controller and my PLC (CC 100 from Wago). The addresses declare in Codesys are illogic, The first addresses are 12 and 13 then 7 then 4. How to do corresponding the addresses of the controller and the input / output structure ? IP adress ? Does I must create the all variables of controller with the controller adresses to use with the function block ? Thanks for your help. (I hope I'm clear, I'm not english)
Last updated: 2023-10-26
Post by tk096 on Axis_Ref_SM3.perfTimers
CODESYS Forge
talk
(Post)
Hi, these variables are internal members of the axis. They measure the duration of some internal function calls.
Last updated: 2023-11-23
Post by eguerra on Error in ScriptingEngine Docs - create_pou()
CODESYS Forge
talk
(Post)
In the ScriptingEngine documentation there seems to be an error (or missing information) in the ScriptIecLanguageObjectContainer part ( https://content.helpme-codesys.com/en/ScriptingEngine/ScriptIecLanguageObjectContainer.html#ScriptIecLanguageObjectContainer.ScriptIecLanguageObjectContainer ). The description of the function create_pou() doesn't specify the correct arguments requested, it only says create_pou(type: SpecialPouType) and a script using the documentation definition of the function will raise an error. I tried passing the function arguments similar to the ones specified for the create_dut() function and it seems to work fine: create_pou(name, PouType) , name : str UPDATE: The offline help has the correct definition IExtendedObject<IScriptObject> create_pou( string name, PouType type = PouType.FunctionBlock, Nullable<Guid> language = null, string return_type = null, string base_type = null, string interfaces = null )
Last updated: 2024-08-05
Post by tk096 on SMC_NCDecoder very slow to decode lines
CODESYS Forge
talk
(Post)
Hi, you can call the decoder function block in a loop and/or decrease the task cycle interval of Task_PATH.
Last updated: 2024-08-23
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.