{}

我們的品牌

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

歡迎造訪施耐德電機全球網站

歡迎訪問我們的網站
搜尋常見問題
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();


施耐德電機Taiwan

附件
IMC EXT IO workaround.projectarchive [746.59 KB]
探索更多
系列:
可能有幫助的文章
探索更多
系列: