FORUM CTRLX AUTOMATION
ctrlX World Partner Apps for ctrlX AUTOMATION
Dear Community User! We are updating our platform to a new
system.
Read more: Important
information on the platform change.
05-23-2023 08:04 AM
With PLCOpen (maybe also with AxisInterface) I can't see how to access the power up status of a drive ie. bits 15/14 of S-0-0135 Status Word. I want to use the status bits in some logic for MC_Power.Enable so I don't enable when there is no power.
I could do a non real time access to the datalayer but I would prefer to use the cyclic data from S-0-0135.
Solved! Go to Solution.
05-23-2023 05:09 PM
I just looked in the PLC but could not find a function for that.
But you could read the S-135 in the PLC programm. Or is this way not what you want.
I just tried in my PLCopen test programm: It works:
1) Import at Datalayer-Realtime node:
2) Then you have i.e. at %IW0 the state word S-135 (in my case)
3) Then it's clear for you:
Regards,
Stefan
05-23-2023 11:53 PM
Thanks @stefanAT_ctrlX
05-24-2023 07:27 AM - edited 09-01-2023 07:24 AM
Please keep in mind that axis bits like bb, Ab and AF are not part of PLCopen state machine.
@bclapperton you can also have a look in our template for cartesian handling systems. There we also process the bits out of the status word:
Declaration:
...
AxisY_StatusWord AT %IW200 : WORD; // S-0-0135 Drive status word
AxisY_bb_relay AT %IX202.0 : BOOL; // P-0-0115.0 Drive status word (bb signal)
AxisY_in_Ab_AH_AF AT %IX200.15 : BOOL; // S-0-0135.15 Drive status word (Ab,AH,AF signal)
AxisY_to_Ab AT %QX202.0 : BOOL; // S-0-0240 DC Bus Power Control (Swith to Ab signal)
...
Implementation:
...
// check if DC bus is OK (all axis in AB,AH,AF)
bDCBusLoaded := AxisX_in_Ab_AH_AF AND AxisY_in_Ab_AH_AF AND AxisZ_in_Ab_AH_AF AND AxisX2_in_Ab_AH_AF AND AxisZ_in_Ab_AH_AF AND AxisY2_in_Ab_AH_AF AND AxisZ2_in_Ab_AH_AF AND AxisLin_in_Ab_AH_AF;
// check all axis in AF
bAllAxesInAF := bDCBusLoaded AND_THEN
AxisX_StatusWord.14 AND_THEN
AxisY_StatusWord.14 AND_THEN
AxisZ_StatusWord.14 AND_THEN
AxisX2_StatusWord.14 AND_THEN
AxisY2_StatusWord.14 AND_THEN
AxisZ2_StatusWord.14 AND_THEN
AxisLin_StatusWord.14 OR_ELSE (bRealAxis=FALSE);
...
05-24-2023 08:11 AM - edited 05-24-2023 08:49 AM
Thanks @CodeShepherd
It is sad that these signals were not included in MC_ReadStatus.
The PLC mapping method above needs to be manually addressed. This is not good for projects with many axes.
I'm looking for a way to use an AXIS_REF variable to look them up.
I'm happy to use a DL_ReadNode even though it is not real time. I just need a datalayer node with the same name as my AXIS_REF variable and build the nodename using string functions.
I can't see a statusword node under motion/axs/... Let me know if there is one.
05-24-2023 08:47 AM
The motion does not have a drive status word node. Also in the axisprofile it the setting parameter where the profile is looking for the data.
For your case you could do it more dynamic:
We are currently discussing and working on a data source like AxisData known from the MLC but there is no release date for this.
05-25-2023 12:28 AM
Thanks @CodeShepherd
I look forward to having a ctrlX version of AxisData!
08-31-2023 04:17 PM
Hello, is there any update whether some Status information would be available in incoming releases? I would really expect some data available to make programming more efficient (as we promise everywhere;)).
Thanks a lot.
09-01-2023 07:31 AM - edited 09-01-2023 07:31 AM
Current time scheduler is set to next year but I cannot tell a exact date. Please keep in mind that this has nothing to do with PLCOpen as it was mentioned in the header of this topic.