logo
상품
사례
>

Xiamen ZhiCheng Automation Technology Co., Ltd 사례

행사
문의하기
Miss. Andy
86-0592-5636807
위챗 +8618020763272
지금 접촉하세요
최근 회사 사건 시멘스 SCL 프로그래밍 업그레이드 버전: 12 산업 실용 사례

시멘스 SCL 프로그래밍 업그레이드 버전: 12 산업 실용 사례

12 산업적 실제 사례 (1-6) 경우 1: 모터 시작-정지 제어 스키 FUNCTION_BLOCK FB_모터 컨트롤 VAR_INPUT 시작 버튼: BOOL; 정지 버튼: BOOL; 과부하 신호: BOOL; END_VAR VAR_OUTPUT 실행 상태: BOOL; 오류 표시기: BOOL; END_VAR 시작해 시작-정지 논리 만약 StartButton NOT StopButton NOT OverloadSignal 그렇다면 실행 상태:= TRUE; ELSIF 중지 버튼 또는 과부하 신호 다음 실행 상태:= FALSE; END_IF // 결함 표시 오류 표시기:= 과부하 신호; END_FUNCTION_BLOCK   케이스 2: 타이머 적용 스키 FUNCTION_BLOCK FB_DelayStart VAR_INPUT 시작 신호: BOOL; 지연 시간: 시간:= T#5S; END_VAR VAR_OUTPUT 출력 신호: BOOL; END_VAR VAR 지연시간: TON END_VAR 시작해 DelayTimer ((IN:= 시작 신호, PT:= 지연 시간); 출력 신호:= 지연시간.Q; END_FUNCTION_BLOCK   케이스 3: PID 온도 조절 스키 FUNCTION_BLOCK FB_TempControl VAR_INPUT 설정점: REAL 프로세스 값: REAL END_VAR VAR_OUTPUT 제어 출력: REAL END_VAR VAR Kp: REAL:= 20; Ki: REAL:= 0.05; Kd: REAL:= 0.5; 융합Term: REAL:= 0; LastError: REAL:= 0; 타이머: 톤 END_VAR 시작해 // 주기적으로 실행 (100ms) 타이머 ((IN:= 타이머가 아닙니다.Q, PT:= T#100ms); 타이머.Q 다음 VAR 오류:= 설정점 - 프로세스 값; IntegralTerm:= IntegralTerm + 오류; VAR 파생어:= 오류 - 마지막 오류; LastError:= 오류; 제어 출력:= Kp * Error + Ki * IntegralTerm + Kd * DerivativeTerm; 제어 출력:= LIMIT(0.0, 제어 출력, 100.0); 타이머 ((IN:= FALSE); END_IF END_FUNCTION_BLOCK 케이스 4: 생산 라인 대기열 관리 스키 FUNCTION_BLOCK FB_프로덕션 큐 VAR_INPUT NewOrder: BOOL; OrderID: INT; 완료 신호: BOOL; END_VAR VAR_OUTPUT 현재 명령어: INT; 대기열 길이는: INT END_VAR VAR OrderQuee: INT의 ARRAY[1...50] 큐헤드: INT:= 1; 큐테일: INT:= 1; END_VAR 시작해 새로운 주문 큐 만약 NewOrder AND QueueLength < 50 THEN OrderQueue[QueueTail]:= OrderID; QueueTail:= QueueTail MOD 50 + 1; QueueLength:= QueueLength + 1; END_IF // 순서 정렬 완료 만약 CompleteSignal AND QueueLength > 0 그렇다면 큐헤드:= 큐헤드 MOD 50 + 1; 대기열 길이는:= 대기열 길이는 - 1; END_IF // 현재 순서 만약 QueueLength > 0 그렇다면 CurrentOrder:= OrderQueue[QueueHead]; 다른 것 현재 명령어:= 0; END_IF END_FUNCTION_BLOCK   케이스 5: 안전 게이트 잠금 제어 스키 FUNCTION_BLOCK FB_SafetyGate VAR_INPUT 게이트1 닫힌, 게이트2 닫힌: BOOL; EStopButton: BOOL; 리셋 버튼: BOOL; END_VAR VAR_OUTPUT 안전상황: BOOL END_VAR VAR 잠금 상태: BOOL:= FALSE; 잠금시간: TON END_VAR 시작해 안전 상태 VAR AllGatesClosed:= Gate1Closed AND Gate2Closed. / 응급 정지 최우선 만약 ESTOPButton 그렇다면 안전상태:= FALSE 잠금 상태:= TRUE; 로크아웃타이머 ((IN:= TRUE, PT:= T#10S); 반환 END_IF // 논리를 해제 IF ResetButton AND LockkoutStatus AND LockkoutTimer.Q 다음 잠금 상태:= FALSE; END_IF // 정상 작동 잠금 상태가 안되면 안전 상태:= 모든 게이트가 닫혔다. END_IF
2025-07-03
더 읽기
1
사이트맵 |  개인 정보 정책 | 중국 좋은 품질 병든 레이저 센서 공급업체. 저작권 © 2025 Xiamen ZhiCheng Automation Technology Co., Ltd . 판권 소유.