Search talk: bus cycle task

 
<< < 1 .. 9 10 11 12 13 .. 21 > >> (Page 11 of 21)

Post by yannickasselin on Beckhoff CX9240 : Using Internal EtherCAT Bus CODESYS Forge talk (Post)
Control RTE is for Windows. @arj3090 specified Linux.
Last updated: 2026-07-10

Post by mubeta on Some 'pathetic' errors in SoftMotion program CODESYS Forge talk (Post)
Hello everyone, I have a very simple program for the process, but it's driving me crazy and I can't see the problems I'm left with: Short topological description: Dual Core Berghof controller with softmotion runtime version 3.5.19.30; Two axes with servodrive on canopen bus, clocked distributed from master; Ethercat I/O node; 2 ms ethercat task, 2 ms canopen bus cycle time; I/O objects of the canopen master and canopen drives connected to the ethercat task cycle; Problem 1: Two separate programs each manage their own axis and drive, with separate state machines. A first axis moves primarily in velocity, except having to position itself absolutely at a predetermined point at the end of the job; the second axis, on the other hand, is a paper unwinder that changes, for each job cycle, from actions in absolute, relative, and cam displacement with the master axis. Well, the state machine of both axes was written in such a way as to call running the useful FB and change it on state change in this way: CASE i_stateMachine OF 0: o_Power(Enable := TRUE, bRegulatorOn := FALSE, bDriveStart := FALSE, Axis := o_PaperUnwinderAxis); o_MoveAbs(Execute := FALSE, Axis := o_PaperUnwinderAxis); o_MoveRel(Execute := FALSE, Axis := o_PaperUnwinderAxis); o_CamSelect(Execute := FALSE, Master := o_MachineAxis, Slave := o_PaperUnwinderAxis, CamTable := cam_PaperUnwinder); o_CamIn(Execute := FALSE, Master := MachineEncoder, Slave := o_PaperUnwinderAxis); o_CamOut(Execute := FALSE, Slave := o_PaperUnwinderAxis); o_SetPosition(Execute := FALSE, Axis := o_PaperUnwinderAxis); IF ... THEN i_StateMachine := 10; END_IF; 10: o_Power( Enable := TRUE, bRegulatorOn := TRUE, bDriveStart := TRUE, Axis := o_PaperUnwinderAxis ); IF o_Power.Status THEN i_StateMachine := 20; END_IF; 20: (* Avanzamento carta *) o_MoveAbs( Execute := TRUE, Position := o_Somewhere, Velocity := 25.0, Acceleration := 3666.7, Deceleration := 3666.7, Jerk := 48000.0, Direction := MC_DIRECTION.positive, Axis := o_PaperUnwinderAxis ); IF o_MoveAbs.Done THEN o_MoveAbs(Execute := FALSE, Axis := o_PaperUnwinderAxis); i_StateMachine := 30; END_IF 30: d_HomingPosition := ...; o_SetPosition( Execute := TRUE, Position := d_HomingPosition, Mode := FALSE, Axis := o_PaperUnwinderAxis ); (* ... *) IF o_SetPosition.Done = TRUE THEN o_SetPosition(Execute := FALSE, Axis := o_PaperUnwinderAxis ); o_LogServer.Append(sMessage := '...', lscClass := LOGSERVER_CLASS.ALWAYS, sdt := o_CommonsMgrData.systime.sdtLocal); i_StateMachine := 40; END_IF; 50: ... The code above is a sketchy example of what I wanted to write. But it gives me a spot problem: in some, the state change results in a drive error, which is unrecoverable except with a reinitialization via SM3_ReinitDrive(). Things are improved a little if in the program I always run the call of all softmotion blocks in this way: o_Power(Axis := o_PaperUnwinderAxis); o_Jog(Axis := o_PaperUnwinderAxis); o_Halt(Axis := o_PaperUnwinderAxis); o_MoveAbs(Axis := o_PaperUnwinderAxis); o_MoveRel(Axis := o_PaperUnwinderAxis); o_CamIn(Master := MachineEncoder, Slave := o_PaperUnwinderAxis); o_CamOut(Slave := o_PaperUnwinderAxis); If I don't execute all the calls of all the motion FBs used, when exchanging machine state often (but not always), the axis goes into error with event id THE_FB_WASNT_CALL... Done a little diagnostics it seems that the FBs return the bDone, before they are completely terminated. I tried doing the machine state exchange not with the bDone bit of the FBs, but with the 'standstill' state of the axis. It didn't seem to change anything. Problem 2: During the use SM3_ReinitDrive() I get the erro in the log: "NetID 0: SDO read error for object 16#607C..." Assuming that the device involved it's one of the two servodrive, (no others device are present in the network), I don't found any object 0x607C in the 'possible object list in/out' of the two drive, and I don't understand where this object can be listed. So any ideas and suggestions regarding these two issues will be very, very welcome. If you need the source project, I am willing to send it.
Last updated: 2024-07-17

Post by ph0010421 on Task time too fast? CODESYS Forge talk (Post)
Hello I've made an FB which is a TCP server. It uses the excellent CAA NetServices library. If I have the FB in a task <4ms, then the RT crashes immediately at boot up. If the task >=4ms, it starts and runs perfectly. This is even if the block is not doing anything; just instantiated. Am I missing something silly? Why would a low task time cause this? 4ms is perfectly adequate, but I'm just interested why... thanks PH
Last updated: 2024-11-27

Post by jari-koivuluoma on Finding out exception code position CODESYS Forge talk (Post)
Is it possible to find out the code position from where the exception originated using information from this log entry? 2025-07-02T13:56:19Z, 0x00000011, 8, 81, 3, #### Exception: *EXCEPTION* [<excpt>AccessViolation</excpt>] occurred: App=[<app>Application</app>], Task=[<task>Task</task>] 2025-07-02T13:56:19Z, 0x00000011, 8, 81, 3, #### Exception: *SOURCEPOSITION* App=[<app>Application</app>] area=<area>2</area>, offset=<off>13349868</off>
Last updated: 2025-07-02

Post by stuartjr on Disabling forcing of specific variables CODESYS Forge talk (Post)
OK.. so maybe I miss understood for how the forcing order works. It seems that the force list is applied at the beginning of every task call (I'm assuming this based on what I am seeing). If I force my variable FALSE and then write it TRUE in a task, then it stays TRUE for that task, but then in the next task it will go back to FALSE.
Last updated: 2024-03-15

Post by eschwellinger on SysProcessExecuteCommand2 and CANopen Device CODESYS Forge talk (Post)
please call sysproccess in an own task with low prio
Last updated: 2024-06-20

[Error when Install Codesys for Beaglebone black ver4.0.0] cannot access '/sys/bus/i2c/devices/0-0050/at24-0/nvmem': No such file or directory CODESYS Forge talk (Thread)
[Error when Install Codesys for Beaglebone black ver4.0.0] cannot access '/sys/bus/i2c/devices/0-0050/at24-0/nvmem': No such file or directory
Last updated: 2021-11-21

Post by eschwellinger on CAN-Bus in Demo-Version CODESYS Forge talk (Post)
Eigentlich alles ok - sollte gehen - der MDBX wie ist der konfiguriert (also die PDO's) auf Änderung / zyklisch? Wenn du einen CAN Monitor hast, anschließen und schauen was genau auf dem BUS los ist. Also einen CAN Trace machen.
Last updated: 2024-02-09

Post by snhatton on Saving variable values on power cycle (RevPi Connect) CODESYS Forge talk (Post)
Have you tried using the persistence manager which uses the file system of the controller to store persistent variables?
Last updated: 2023-12-04

Post by tk096 on High Cycle Times for SoftMotion_PlanningTask when using AxisGroup CODESYS Forge talk (Post)
Hi, which (kind of) PLC do you use?
Last updated: 2024-03-13

Post by eschwellinger on Two OneWireMaster on one Raspberry PI 5 CODESYS Forge talk (Post)
you need to have an own task for the one wire and io update these slaves in an own low prio task!
Last updated: 2025-10-18

Post by gseidel on SMC_FB_WASNT_CALLED_DURING_MOTION when enable MC_MoveRelative CODESYS Forge talk (Post)
Hi ducng, please make sure to call all Motion-FBs in the EtherCAT task. In your case, the PLC_PRG should be below the EtherCAT task, not the MainTask. Best regards, Georg
Last updated: 2025-11-03

Post by davidbo on *EXCEPTION* [ProsessorLoadWatchdog] codesys 3.5.11.40 CODESYS Forge talk (Post)
Under Application->"Task Configuration" you can find your task double click on that and you will see a fane to the right. You find the watchdog enable switch it off or increase the time
Last updated: 2025-11-17

Post by elektron785 on CAN-Bus in Demo-Version CODESYS Forge talk (Post)
Hallo, wie verhält es sich mit der Demo-Version und Datenübertragung z.B. via CAN-Bus. Der Bus läuft, das Device befindet sich im Zustand "Operational" aber es werden keine Daten von der Soft-SPS empfangen. Ich benutze aktuell eine nicht lizenzierte Version von CoDeSys Control for Linux ARM64SL. Normalerweise sollte die Demo-Version uneingeschränkt laufen - also kann ich davon ausgehen, dass es sich um einen Programmierfehler handelt oder ist die Feldbusfunktion ohne Lizenz doch in irgendeiner Form eingeschränkt verfügbar (außer dem 30 Minuten Limit nach Reboot)?
Last updated: 2024-02-06

Post by tvm on Web Client (HMI) Disconnects from Webvisu (Weidmuller u-OS) CODESYS Forge talk (Post)
ok, that's different than our issue then. We're using Schneider Electric M262 PLCs, and we've had it where certain web browsers cause the web server to only allow https connections, but it's not recoverable with a refresh. It usually requires a power cycle or even a full firmware flash. Your issue might have more to do with the timing. I don't know if it helps you, but we normally run our visu task at 200mS, with an update rate of 200mS. Seems to work. I went through this: https://faq.codesys.com/pages/viewpage.action?pageId=112525371 but it really seems like trial and error.
Last updated: 2023-09-06

Post by gseidel on Can't get SMC_SmoothPath to work CODESYS Forge talk (Post)
Hi bertus, I cannot see any problem in the code you posted. Just some ideas: What is the value of D_ANGLE_TOL? - Do you need the assignment bAbort := NOT bDecoder? Does it help to leave it out? Any errors (e.g. SMC_SmoothPath.Error/ErrorID) or PLC log messages? What if you comment out SMC_SmoothMerge and SMC_LimtiDynamics, is corner smoothing still not working? Is bDecode written from a different task (e.g. visu)? Then I would recommend to assign to a local variable (bDecodeLocal := bDecode) and use that for all FBs. Otherwise, FBs might see different values of bDecode in a single cycle, which will cause problems. Regards, Georg
Last updated: 2025-12-17

Post by timvh on EXCEPTION [watchdog] how to find position cause CODESYS Forge talk (Post)
Monitor what your current cycle time is (in the Task Configuration when you are online). If this is sometimes close to 200ms, then change your code (e.g. limit the loops, or prevent copying a lot of data between objects). Or just set the Watchdog time (or sensitivity) higher if you don't care that it sometimes takes longer than 200ms. If you want to find out which objects in your application consume the most time, then buy a PDE (Professional Developer Edition) license. With this you get a license for the Profiler. This can help you a lot to find the root cause, because it will create a nice overview of all objects, their calls and the time (percentage) it takes to execute it.
Last updated: 2026-02-09

Post by tk096 on Some 'pathetic' errors in SoftMotion program CODESYS Forge talk (Post)
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 general: - Motion function blocks have to be called until they report 'Done', 'Error', 'CommandAborted' or a subsequent motion FB with BufferMode=Aborting is started in the current cycle. - Setting the Execute input to FALSE will not abort any ongoing motion of the motion function block. For example, one case that is often problematic is the execution of the Axis Halt instruction. When, after a MoveAbosulte instruction this returns the event as 'done' and indeed the axis is in standstill, the state machine first sets the move instruction to FALSE, and the next cycle sets the Halt request to TRUE. Some of the time everything works out fine. Occasionally, however, in this exchange, the axis goes into fault, also losing the OPERATIONAL state. I think the error SMC_FB_WASNT_CALLED_DURING_MOTION is only a follow-up (and misleading) error that results from the axis not being in operational state anymore (bus problems). Is there an error 'regulator or start not set' in the device log before the error 'motion generating FB wasn't called for at least one cycle'? Which error does the respective function block (Halt.ErrorId) report?
Last updated: 2024-07-22

Post by janderson on Ethercat scan for devices not picking up EL7041 as a softmotion axis CODESYS Forge talk (Post)
also my ethercat bus won't run.
Last updated: 2023-09-02

Post by pafarrell on Ethercat not running. CODESYS Forge talk (Post)
Were you able to fix this? I had a program with motion working (several actually) and now bus not running. I'm stuck!
Last updated: 2025-06-05

Post by eschwellinger on CAN-Bus in Demo-Version CODESYS Forge talk (Post)
nein nur die 30 Minuten- aber sonst keine Einschränkung. Gerätebaum alles Grün/Orange? IO Variablen mappen und auch im Programm verwendet?
Last updated: 2024-02-06

Post by arj3090 on Beckhoff CX9240 : Using Internal EtherCAT Bus CODESYS Forge talk (Post)
Is it possible to get CodeSys working with Beckhoff IO cards connected directly to the CX9240 running Linux?
Last updated: 2026-07-09

Post by yannickasselin on Beckhoff CX9240 : Using Internal EtherCAT Bus CODESYS Forge talk (Post)
Now I understand. I always thought this was not supported. I might test it later. Thanks.
Last updated: 2026-07-10

Post by eschwellinger on Beckhoff CX9240 : Using Internal EtherCAT Bus CODESYS Forge talk (Post)
you need just out of this windows rte cx package the internal EthercatMaster device description
Last updated: 2026-07-10

Post by zenrumdermachtt on Ansteuerung M-Bus Beckhoff KL6781 CODESYS Forge talk (Post)
Hallo, gab es eine Lösung für dein Problem? bzw. hast du das umgesetzt? Gruß Thomas
Last updated: 2026-01-21

<< < 1 .. 9 10 11 12 13 .. 21 > >> (Page 11 of 21)

Showing results of 503

Sort by relevance or date