Siemens#?=무엇
3136 단어 PLC
http://soup01.com/ja/2019/12/25/post-1990/
F1의 관점에서 볼 때Variant 변수를 참조 변수로 처리할 수 있습니다.
태그가 Variant로 처리될 때 그 참조가 유효하면 참조를 직접 사용할 수 있고 그렇지 않으면 값이 NULL입니다.
참고로 처리할 때 인용이 유효한지 물어보는 방법이 있다.LAD와 FBO의 경우 ENO의 상태를 기준으로 판단할 수 있습니다.ENO가 1이면 유효하고 0이면 유효하지 않습니다.STL, SCL의 경우 ISNULL 또는 NOTNULL의 Function을 사용하면 유효한지 확인할 수 있습니다.
규칙.
1. Variant는 Temp의 변수인 NG입니다.
2. Variant를 참조하는 스토리지 영역은 최적화된 스토리지 영역이어야 합니다.
3. 참조 Variant 변수가 정렬된 경우 길이도 함께 해야 합니다.예를 들어 [0.9] 배열의 Variant는 [0.10] 배열을 참조할 수 없습니다.
4.SCL은 a:=b:=c처럼 많이 줄 수 없습니다.
이루어지다
그럼 EXAMPLE를 빨리 제작하세요.먼저 3개의 구조체를 만든다.
Paras1
Paras2
Paras3
Function
Interface는 다음과 같습니다.
Input은 Variant입니다.
Temp Area를 참조하십시오.REF_토가 돼라.이것은 먼저 말한 "참고"이다. 3개의 참조를 만드는 데 쓰이는 변수다.
Flag만 tparas의 배열이 단순한 참조일 뿐이라는 것을 나타낸다.
Program
라인 2~12에서는 Variant가 어떤 Data Type인지를 판단하기 위해 Case 문과 Type Of의 Function을 사용합니다.Paras1의 경우 Variant는 tparas1... 을 참조합니다.
라인 14-16에서는 각 참조 변수가 NULL인지 확인합니다.
Line 1-3 데이터 타입에 따라 결과가 달라질 경우
^ 인용 변수를 사용할 때는 문장을 붙여야 합니다.
Check
마지막으로 우리 한번 해 봅시다.데이터 블록을 작성합니다.
안에 세 개의 변수가 있고 다른 값이 있다.
마지막으로 Function을 세 번 호출하여 다른 변수를 넣고 테스트합니다.
Network 1은 1과 42, 블록은 곱셈이기 때문에 결과는 42다.
Network2는 1.99와 5.32를 넣었고, 블록에서는 마이너스를 넣었기 때문에 결과는 -3이었다.
Network3이 들어오는 것은 모두 온의 부울이기 때문에 블록에서 AND의 연산 결과는 1이다.
수고하셨습니다.
Reference
이 문제에 관하여(Siemens#?=무엇), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/soup01/items/37572d950e9433e674f0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)