{}

Our Brands

Impact-Company-Logo-English Black-01-177x54

Welcome to the Schneider Electric Website

Welcome to our website.
Search FAQs
IMC implicit exchanges (DRIVE_PIx/POx) do not start when an Extended IO option board is present
When an Extended IO card is present in ATV71 and when IMC card (v4.0ie13 and below) is supplied separately by its +24V connector, implicit exchanges (DRIVE_PIx/POx) do not start when the following sequence is applied:
- Switch off ATV71 AC power
- Wait for the communication between the drive and the card to be lost
- Switch on ATV71 AC power -> implicit exchanges between ATV and IMC do not start (DRIVE_PIx = 0)

A workaround is to copy-paste in Drive_Start POU the following code to configure implicit exchanges:
In declaration part :
wRetry: WORD:=0 ;

In code part :
CASE wStateInitialization OF
1:
(* Initializing Cyclic data exchange Read*)
DriveParameterCyclicReadSet(
addrDRIVE_PI1:= 3207,        (* for example to read line voltage (ULN) *)
addrDRIVE_PI2:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PI2*)
addrDRIVE_PI3:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PI3*)
addrDRIVE_PI4:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PI4*)
addrDRIVE_PI5:= xxx,    (*Uncomment the line to map a Drive parameter to DRIVE_PI5*)
addrDRIVE_PI6:= xxx,    (*Uncomment the line to map a Drive parameter to DRIVE_PI6*)
addrDRIVE_PI7:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PI7*)
addrDRIVE_PI8:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PI8*)
bExecute:= TRUE);
(* on some configuration, the request is taken into account by the drive after more than 1 second,
for example with an IoExtended board. So we need to manage 500 retry *)
IF DriveParameterCyclicReadSet.bError AND wRetry < 500 THEN
wRetry := wRetry + 1;
ELSIF DriveParameterCyclicReadSet.bDone THEN

wStateInitialization:=2;
wRetry := 0;
END_IF

2:
(* Initializing Cyclic data exchange Write*)
DriveParameterCyclicWriteSet(
addrDRIVE_PO1:= xxx,         (*Uncomment the line to map a Drive parameter to DRIVE_PO1*)
addrDRIVE_PO2:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PO2*)
addrDRIVE_PO3:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PO3*)
addrDRIVE_PO4:= xxx,        (*Uncomment the line to map a Drive parameter to DRIVE_PO4*)
(*addrDRIVE_PO5:= ,*)        (*Uncomment the line to map a Drive parameter to DRIVE_PO5*)
(*addrDRIVE_PO6:= ,*)        (*Uncomment the line to map a Drive parameter to DRIVE_PO6*)
(*addrDRIVE_PO7:= ,*)        (*Uncomment the line to map a Drive parameter to DRIVE_PO7*)
(*addrDRIVE_PO8:= ,*)        (*Uncomment the line to map a Drive parameter to DRIVE_PO8*)
bExecute:=TRUE );
IF DriveParameterCyclicWriteSet.bError AND wRetry < 500 THEN
wRetry := wRetry + 1;
ELSIF DriveParameterCyclicWriteSet.bDone THEN

wStateInitialization:=3;
wRetry := 0;
END_IF

3:    Display_RestoreSavedParameters();


Schneider Electric Egypt and North East Africa

Attachment(s)
IMC EXT IO workaround.projectarchive [746.59 KB]
Explore more
Range:
Articles that might be helpful Users group

Discuss this topic with experts

Visit our Community for first-hand insights from experts and peers on this topic and more.
Explore more
Range: