SYS2

PC 링크 영역의 시스템 레지스터 설정 변경

시스템 레지스터 40~47(FP0R, FP-S 32k, FP-X 또는 50~57), PC 링크 영역의 값을 변경할 수 있습니다.

PLC가 RUN 모드이면 SYS2는 지정된 시스템 레지스터 설정을 변경합니다. s_Start에는 d_Startd_End 사이에서 정의된 해당 시스템 레지스터의 새 값이 포함됩니다.

주석

  • 이 명령을 실행하면 제어 유닛에서 시스템 ROM의 콘텐츠를 다시 쓸 수 없습니다. 그 결과, 전원 유닛을 끈 후 다시 켜면 도구 소프트웨어에서 지정한 시스템 레지스터의 콘텐츠를 다시 쓸 수 있습니다.

  • 40~47 사이의 값은 d_Start 또는 d_End에 지정되어야 합니다. 또한 d_Start£d_End 방식으로 항상 값이 지정되어야 합니다.

  • 시스템 레지스터 값이 변경되면 프로그램 확인 시 확인 에러가 발생할 수 있습니다.

파라미터

입력

s_Start (WORD, INT, UINT)

잔여 변수 두 개에서 정의한 시스템 레지스터의 새 값을 포함합니다.

d_Start (WORD, INT, UINT)

새 값을 수신하는 첫 번째 시스템 레지스터(40~47 사이)입니다.

정수이어야 함
d_End (WORD, INT, UINT)

새 값을 수신하는 마지막 시스템 레지스터(40~47 사이)입니다.

정수이어야 함

에러 플래그

sys_bIsOperationErrorHold(TRUE로 전환되어 TRUE로 유지됨)
  • d_Start > d_End인 경우

  • 지정 값이 다양한 시스템 레지스터 설정 값에 지정된 범위를 벗어나는 경우

sys_bIsOperationErrorNonHold(스캔 1회에 대해 TRUE로 전환)
  • d_Start > d_End인 경우

  • 지정 값이 다양한 시스템 레지스터 설정 값에 지정된 범위를 벗어나는 경우

DUT

구조체(DUT)를 사용하여 다른 데이터 형식으로 구성된 구조체를 정의할 수 있습니다. DUT는 먼저 DUT 풀에서 정의된 후 POU 헤더의 전역 변수 목록에서 표준 데이터 형식(BOOL, INT 등)으로 처리됩니다.

POU 헤더

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

	VAR
		LinkAreas: @'LINK_AREAS':=RelayArea := 64, RegisterArea := 128;
		SetLinkAreas: BOOL:=FALSE;
	END_VAR

POU 본문

SetLinkAreas가 켜지면 PC 링크 시스템 레지스터 40~45의 값을 LinkAreas의 정의대로 변경합니다.

LD 본문

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_F,SYS2!,Instance,10,0,16,6,,?DEN?Ds_Start?Hd_Start?Hd_End?AENO);
B(B_VARIN,,SetLinkAreas,8,1,10,3,);
B(B_VARIN,,LinkAreas.RelayArea,8,2,10,4,);
B(B_VARIN,,40,8,3,10,5,);
B(B_VARIN,,45,8,4,10,6,);
L(1,0,1,6);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

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