■ 우선은 래더 회로의 동작사양에서
래더 회로의 문제점에 대해서 말씀드리기 전에 시스템의 동작 사양에 대해 설명하겠습니다.
※ Push botton 스위치1~32중 어느 하나를 눌렀을 때, 2CH의 입력신호(BCD 4행 데이터)를 아래와 같은 요령으로 DM100~DM131에 격납합니다.
■ 해당 래더의 문제점에 대해서
이 래더회로의 문제점은 도대체 어디에 있을까요?
결론부터 말씀 드리면, 회로 번호 10 --[MOV 2,IR1+]의 오토 인크리먼트(increment) 옵션/,IR1+의 사용법에 문제가 있습니다.
~ 오토 인크리먼트(increment) 옵션 /,IR□+이란?~
그림1의 래더로 설명하겠습니다.
회로 번호 10에서 --[MOV 2 ,IR1+]가 실행된 직후에, IR1의 내용이 +1번지가 되지만, 이 회로에서는 전단의 --| |--, IR0+가 OFF일 경우에는 MOV 명령 자체가 실행되지 않기 때문에 중요한 오토 인크리먼트(increment)처리도 실행되지 않아 버립니다.
IR1의 어드레스 갱신 처리가 제대로 실행되지 않는 원인은 여기에 있습니다.
(注)-||--, IR0+나 여기에는 나오지 않지만, --(,IR□+)~OUT명령~ 과 같이 신호의 1/0상태와 상관없이 매스캔마다 실행되는<상시 실행 타입> 명령어에서는 이러한 문제는 발생하지 않습니다.
■ IR1의 어드레스를 매 스캔마다 갱신하는 회로(예)
[설명]
(1) --[MOV 2 ,IR1+]의 <+옵션>을 하지 않고, 그림2와 같이,
--[MOV 2 ,IR1]로 합니다.
(2) 그 대신, 상시ON플래그(P_On)의 a접점과 ―-[++L IR1]의 조합으로, FOR~NEXT 루프의 매 스캔 마다 IR1의 내용을 +1번지로 합니다.
《참고 정보》
인덱스 레지스터의 기초 사양에 대해 상세히 알고 싶으신 경우는 하기의『메뉴얼』이나 『해설자료』를 참조해 주십시오.
(1)메뉴얼
(2)해설 자료
『인덱스 레지스터의 기초』(1)
『인덱스 레지스터의 기초』(2)
『인덱스 레지스터의 응용/,IR□ 어드레스 변경 회로 예』