Delta Tau Forums
Macro activation problem on Brick LV power on - Printable Version

+- Delta Tau Forums (http://forums.deltatau.com)
+-- Forum: Delta Tau Data Systems (http://forums.deltatau.com/forumdisplay.php?fid=1)
+--- Forum: Power PMAC (http://forums.deltatau.com/forumdisplay.php?fid=2)
+--- Thread: Macro activation problem on Brick LV power on (/showthread.php?tid=3181)



Macro activation problem on Brick LV power on - jnasri - 02-18-2021

Hi all,

I am having some trouble with the Macroactivation on power on of a Brick LV:

The hardware setting is as follow: 1 Powerbrick LV as Master & 1 Powerbrick LV as Slave.

the config of the Master
PowerBrick[0].MacroModeA =$00403000;
PowerBrick[0].MacroModeB =$00000000;
PowerBrick[0].MacroEnableA =$0FFFFF00;
PowerBrick[0].MacroEnableB =$0;

PowerBrick[1].MacroModeA =$0;
PowerBrick[1].MacroModeB =$0;
PowerBrick[1].MacroEnableA =$0;
PowerBrick[1].MacroEnableB =$0;

Macro.TestPeriod =10/Sys.ServoPeriod;
Macro.TestMaxErrors =Macro.TestPeriod/10;
Macro.TestReqdSynchs =Macro.TestPeriod-Macro.TestMaxErrors;
Macro.IOTimeout =0;

config of the slave
PowerBrick[0].MacroModeA =$00408000;
PowerBrick[0].MacroModeB =$0;
PowerBrick[0].MacroEnableA =$0FFFFF00;
PowerBrick[0].MacroEnableB =$0;

PowerBrick[1].MacroModeA =$0;
PowerBrick[1].MacroModeB =$0;
PowerBrick[1].MacroEnableA =$0;
PowerBrick[1].MacroEnableB =$0;

Macro.TestPeriod = 10/Sys.ServoPeriod;
Macro.TestMaxErrors = Macro.TestPeriod/10;
Macro.TestReqdSynchs = Macro.TestPeriod-Macro.TestMaxErrors;

Randomly on power on , the master macro status never pass to Active.
I have the following macro status:
on the On master:
Macro.status[0].active=0
Macro.Status[0].SynchMaster =1
Macro.Status[0].TestEnabled=0
On the slave:
Macro.status[0].active=1
Macro.Status[0].SynchMaster =0
Macro.Status[0].TestEnabled=1



From the master side, I issued some line command as follow:
Macro.RingTest[0].PwrOnErrCntr
Macro.RingTest[0].PwrOnErrCntr=0
Macro.Status[0].RingError
Macro.Status[0].RingError=0
Macro.Status[0].ErrorsFault
Macro.Status[0].ErrorsFault=0
clrf
stdin:6:5: error #50: MACRO COM TIMEOUT: clrf
Macro.RingTest[0]
stdin:7:2: error #20: ILLEGAL CMD: Macro.RingTest[0]
Macro.Rings
Macro.Rings=1
Macro.ICs
Macro.ICs=4
Macro.IC3s
Macro.IC3s=2
Ldata.CmdStatus
Ldata.CmdStatus=0
Macro.RingTest[0].RingBrkStationNum
Macro.RingTest[0].RingBrkStationNum=0
MacroControllerDetect
Error: PowerBrick[0] isn't in a connected Ring
Error: PowerBrick[1] isn't in a connected Ring
MacroControllerDetect
Error: PowerBrick[0] isn't in a connected Ring
Error: PowerBrick[1] isn't in a connected Ring



When I disconnect/ reconnect the fiber optics With the brick lv powered on the status of the macro change to active.

Please help me to diagnose the problem.

Best regards


RE: Macro activation problem on Brick LV power on - Gregs - 02-18-2021

Try setting PowerBrick[0].MacroModeA =$808000 on the Slave. Copied from the Power PMAC User manual:

Slave IC
An IC used as a slave on the ring, as in a Power Brick drive used as a slave device, should have bits 12 and 13 both set to 0 to disable any master functionality. Bit 15 should be set to 1 to lock in the IC’s phase clock on receipt of the sync packet. Bit 23 should be set to 1 to disable the “master-number check” on the Node 23 packet. This means that Gate3[i].MacroMode should be set to $808000 for this IC (Node 15 master-number check disable, sync packet receipt lock).


RE: Macro activation problem on Brick LV power on - jnasri - 02-19-2021

I tried your suggestion : "PowerBrick[0].MacroModeA =$808000 on the Slave".

unfortunately it doesn't change the activation pb on power on of the master side.

on power on:
slave side: i have auxslaveconfigfault ( see Slavestatus2.png)
PowerBrick[0].MacroModeA =$808200

on the master side: see MasterStatus2.PNG

note: the macro status leds are green on both sides ( master and slave).


RE: Macro activation problem on Brick LV power on - Richard - 02-21-2021

One workaround is to issue MacroControllerInit from a PLC until the ring is active. Something like:

GLOBAL MacroInitCtr

OPEN PLC MacroInitPLC
MacroInitCtr = 0
WHILE(Macro.Status[0].Active == 0 && MacroInitCtr < 10)
{
CMD"MacroControllerInit"
CALL DelayTimer.msec(1000)
IF(Macro.Status[0].Active == 1){DISABLE PLC MacroInitPLC}
MacroInitCtr++
}
DISABLE PLC MacroInitPLC
CLOSE

Also, note that:
- It is recommended to only enable used nodes
- Node 14 on the slave should be left off, PowerBrick[0].MacroEnableA =$0BFFFF00


RE: Macro activation problem on Brick LV power on - jnasri - 02-22-2021

I added MacroinitPLC and changed the PowerBrick[0].MacroEnableA value to $0BFFFF00 on the slave

but the following command that i use in one of my PLCs didnt repond : macro timeout
MacroAuxiliaryRead 0,P555, P556

it responds only if the PowerBrick[0].MacroEnableA = $0FFFFF00 OR PowerBrick[0].MacroEnableA = $0FBFFF00


I added a ctr to see in how much time the active status is reached and it is about 30 second +/- 20 seconds

i added also a ctr to see in how mush time the MacroAuxiliaryRead Command is successfull and the result is 5 to 30 retry ( 1 second between each command)

do you have an explanation for that?


RE: Macro activation problem on Brick LV power on - Richard - 03-02-2021

$0FBFFF00 is correct. $0BFxxxxx was a typo.

We have seen this issue with the UMAC counterpart accessory (ACC-5E3). It turned out to be a hardware ECO.

We had not seen it with the Brick series, but it may be susceptible to environment and installation conditions. I have already asked the design team to look into it.