일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- QJ71C24N
- CIMON SCADA
- SCADA
- 윈도우 단축키
- PLC FOR-NEXT
- GP-4401T
- 배터리 수명
- 사용자LOG DB
- 무수순 통신
- 브롤스타즈
- 진주육전
- CIMON 예제
- QJ71C24N MODBUS
- gx logviewer
- 단양
- BMOV
- LED 추천
- CIMON
- M2I 다운로드
- 이더넷 통신
- PLC
- 주방등 추천
- PLC 다운로드
- CIMON LOG DB
- PLC FOR문
- 소선지국밥
- FANUC
- PLC 메모리
- 진주육전맛집
- ISMART
- Today
- Total
For maintenance
GX-WORK2 Marking data Shift시켜 10개 나타내기(FOR-NEXT) 본문
마킹된 데이터를 순차적으로 10개 나타내기 위해서는 BMOV 명령어를 사용하면 된다.
1~2개의 데이터를 BMOV(블록무브) 시키기는 쉬우나 여러개의 데이타를 BMOV 시키기 위해서
동일한 명령어를 여러 번 사용하여 프로그램을 작성하여야 한다.
FOR문을 사용하면 시간을 단축하여 편리하게 작성 할 수 있다.
FOR문 : PLC가 RUN모드에서 FOR문을 만나면 n회 실행한 후 NEXT명령의 다음 스텝을 실행합니다.
FOR~NEXT 루프를 빠져나오는 다른 방법은 BREAK명령을 사용.
FOR문을 많이 사용하면 SCAN 시간이 길어져 필요 이상 사용을 금지.
동영상 설명(스텝기준)
0.
1) M100 실행 접점으로 FOR문 실행
2) MOV명령어를 이용하여 데이터 리셋
5.
1) FOR문 실행
7.
1) FOR문과 함께 증가된 값을 사용할 수 있게 Z0(인덱스) 디바이스 사용
2) INC 명령어로 FOR문 반복 시마다 ZO 1씩 증가
3) 시프트시킬 데이터 수만큼 곱하기(K100)
4) M200(A접점) BMOV 명령어를 역순으로 실행할 수 있도록 Z6디바이스에 증가값 저장
: M200실행하여 역순으로 BMOV를 실행하면 데이터 정상적으로 시프트 가능
※ BMOV로 나타내면 ↓
BMOV D1000 D1100 K100
BMOV D900 D1000 K100
BMOV D800 D900 K100
/
BMOV D100 D200 K100
5) M200(B접점) BMOV 명령어를 정방향으로 실행할 수 있도록 Z6디바이스에 증가값 저장
: 정방향으로 BMOV를 실행하면 1~n 까지 모든 데이터가 동일하게 저장됨
※ BMOV로 나타내면 ↓
BMOV D100 D200 K100
BMOV D200 D300 K100
BMOV D300 D400 K100
/
BMOV D1000 D1100 K100
6) BMOV D100Z6 D200Z6 K100
D100 + Z6값(Z6 : 100 → D200) // D200 + Z6값(Z6 : 100 → D300)
D200~D299값을 D300~D399에 블록 데이터 전송
27.
1) Z0이 10이되면 M200 리셋
END
'PLC > PLC 명령어' 카테고리의 다른 글
PLC 명령어> MELSEC PLC 실수(소수점) 나눗셈[ / ] 연산하기 (0) | 2022.10.31 |
---|---|
PLC명령어> PLC DECO 명령어란? (0) | 2021.06.11 |
PLC 명령어> 기초 명령어 / 특수 릴레이 (0) | 2020.01.06 |
PLC 명령어> INC(P),DEC(P) - 16비트 BIN 데이터 인크리먼트, 디크리먼트 (0) | 2019.05.24 |
PLC명령어> MELSEC-Q 특수릴레이 일람 메뉴얼 (0) | 2019.04.24 |