ExpansionUnitNumberToIOWordOffset_FPX_FP0

어댑터를 통해 CPU에 연결된 아날로그 증설 유닛의 I/O 오프셋을 계산하는 펑션입니다.

I/O 시작 어드레스는 어댑터 및 증설 유닛의 설치 위치에 따라 다릅니다. 이 펑션은 어댑터 위치와 어댑터에 상대적인 유닛 위치를 기준으로 I/O 워드 오프셋을 계산합니다.

파라미터

입력

iFPX_ExpansionUnitNumber (INT)

CPU에 상대적인 어댑터의 위치를 설정합니다.

: 1~8

iFP0_ExpansionUnitNumber (INT)

어댑터에 상대적인 FP0/FP0R 증설 유닛의 위치를 설정합니다.

: 1~3

출력

iIOWordOffset (INT)

I/O 워드 오프셋 반환(WX/WY)

POU 헤더Copy code to clipboard

이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.

	VAR
		Inst_FP0R_A21: Unit_AnalogInOut_FP0R_A21;
		iAnalogOut0: INT:=0;
		bIO_Config_done: BOOL:=FALSE;
		iAnalogIn0: INT:=0;
		iAnalogIn1: INT:=0;
	END_VAR

POU 본문

이 펑션은 FP-X CPU에 연결된 FP0/FP0R 아날로그 유닛의 IO 워드 오프셋을 계산합니다. iFPX_ExpansionUnitNumberFP0/FP0R 증설 어댑터의 설치 위치(1~8)입니다. iFP0_ExpansionUnitNumber는 어댑터에 상대적인 아날로그 유닛의 설치 위치입니다(1~3).

LD 본문Copy code to clipboard

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_VARIN,,3,2,2,4,4,);
B(B_F,ExpansionUnitNumberToIOWordOffset_FPX_FP0!,,4,1,26,5,,?DiFPX_ExpansionUnitNumber?DiFP0_ExpansionUnitNumber?C);
B(B_FB,Unit_AnalogInOut_FP0R_A21!,Inst_FP0R_A21,36,1,51,8,,?BiIOWordOffset?BiOutChannel0?BiOutChannel0_Config?BiInChannel0_Config?BiInChannel1_Config?CbConfigIsDone?CiInChannel0?CiInChannel1);
B(B_VAROUT,,bIO_Config_done,51,2,53,4,);
B(B_VARIN,,2,2,3,4,5,);
B(B_VARIN,,iAnalogOut0,34,3,36,5,);
B(B_VAROUT,,iAnalogIn0,51,3,53,5,);
B(B_VARIN,,3,34,4,36,6,);
B(B_VAROUT,,iAnalogIn1,51,4,53,6,);
B(B_VARIN,,0,34,5,36,7,);
B(B_VARIN,,0,34,6,36,8,);
L(1,0,1,8);
L(26,3,36,3);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST 본문Copy code to clipboard

Inst_FP0R_A21(iIOWordOffset := ExpansionUnitNumberToIOWordOffset_FPX_FP0(3, 2),
	iOutChannel0 := iAnalogOut0,
	iOutChannel0_Config := 3,
	iInChannel0_Config := 0,
	iInChannel1_Config := 0,
	bConfigIsDone => bIO_Config_done,
	iInChannel0 => iAnalogIn0,
	iInChannel1 => iAnalogIn1);

최종 수정일: 2023-11-07이 페이지에 대한 피드백Panasonic 직통 전화