Yaskawa MotionWorks+ Pro 3 - optimizing cyclic tasks

BlackBamba

Member
Join Date
Jul 2018
Location
Haifa
Posts
22
Hi all,


I converted a project from MW+ Express to MW+ Pro, for the benefit of more percise control over the performance of different parts in the code.

I created 2 cyclic tasks, a fast and a slow one.

My issue is, it seems that when (cold) STARTING the program, the tasks take much longer to complete than they require afterwards. This forces me to define long intervals for the tasks, which kind of defeats the performance gain I'm after.

The fast task takes about 1.5ms, but starts as long as 3ms.
The slow task takes 7ms to complete, but starts at nearly 20ms.

Anyone knows of common causes for longer scan times on start?
 
Assuming you mean MotionWorksIEC. What controller are you using, what version of MWiec and what firmware version? What is the Mechatrolink rate?
 
Hi sparky66,

Sorry for the slow reply.


Controller is MP2300SIEC
Firmware 2.4.0.136
MotionWorksIEC version 3.5.0.106
System tick is 3 ms
 
Mechatrolink rate is 3ms, so you can't go lower than that for the Fast task. What do you have it set to? What is slow task set to? They should be an even multiple of the Mechatrolink rate.
 
I do aim at 3ms interval for the fast task. Or 4ms at most.


I actually managed to get some of the code to work at around 1.5ms (MAX duration). I simply eliminated different parts that I suspected have a negative impact on task duration. Again, the code completes in about 1.5ms, and it's only when starting that it takes longer to complete. By removing some parts I managed to reduce the duration of the first (?) scan. But in the end, I had to include all the code again. My impression was that running many MC commands together on the first scan takes it's toll, so i tried to make a gradual process of calling the MCs when the program starts. I also tried moving all the relevant MCs to a system event task that fires with the cold-start.


All those manipulations don't seem to have a permanent effect on max scan time for the task though.
 
If you are using multiple function blocks(like MC_Power), then you will absolutely want to stagger the Execute or Enable inputs so they don't all start at the same time.
 

Similar Topics

I'm self teaching myself Yaskawa's IEC MotionWorks to make some changes to an existing machine we have. The original programming was done by an...
Replies
2
Views
2,188
Can anyone confirm if the following capabilities exist for Yaskawa MotionWorks IEC / MPiec controllers: - Indirect addressing of variables -...
Replies
15
Views
6,799
I am very new to PLC programming and would like to if there is a way to modify an existing MotionWorks program that uses block diagrams, by...
Replies
2
Views
1,852
I have a spin welding machine utilizing a Yaskawa Sigma II motor, with an MP940 controller. I am attempting to change the weld characteristics...
Replies
33
Views
9,600
What is the best way to extract the hour and minute from the register that comes from Yaskawa VFD. In studio 5000 I have a register saved as INT...
Replies
3
Views
100
Back
Top Bottom