모두CBT

19-2주어진 접점 회로도가 아래 프로그램과 똑같이 동작하도록 빈 부분… | 2019년 전기산업기사실기(필답형) 2회차 기출문제 상세 페이지

4

19-2

주어진 접점 회로도가 아래 프로그램과 똑같이 동작하도록 빈 부분을 채워 넣으시오.

[명령어 규약] ① STR : 입력 a접점 ② STRN : 입력 b접점 ③ AND : 직렬 a접점 ④ ANDN : 직렬 b접점 ⑤ OR : 병렬 a접점 ⑥ ORN : 병렬 b접점 ⑦ OB : 블록끼리의 병렬 접속 ⑧ OUT : 출력 코일 ⑨ END : 프로그램 끝 ⑩ W : 각 번지의 끝

어드레스명령어데이터비고
01STR001W
02STR003W
03ANDN002W
04OB-W
05OUT100W
06STR001W
07ANDN002W
08STR003W
09OB-W
10OUT200W
11END-W

100 200

해설

001100003002001002200003

출력 (100) : 001 a접점 한 줄과, 003 a접점·002 b접점을 직렬로 이은 가지를 병렬로 묶어 (100) 코일에 접속 — 100=001+(003002)100 = 001 + (003 \cdot \overline{002})

출력 (200) : 001 a접점·002 b접점을 직렬로 이은 줄과, 003 a접점 가지를 병렬로 묶어 (200) 코일에 접속 — 200=(001002)+003200 = (001 \cdot \overline{002}) + 003


[해설]

니모닉을 접점 회로로 되돌릴 때는 명령어를 스택 연산으로 읽으면 헷갈리지 않는다. STR은 새 블록을 여는 명령이고, OB는 직전에 연 두 블록을 병렬로 합치는 명령이다. AND·ANDN은 지금 만들고 있는 블록에 접점을 직렬로 덧붙인다.

어드레스 01~05를 순서대로 읽으면

01 STR 001 → 블록 A = 001
02 STR 003 → 새 블록 B = 003
03 ANDN 002 → 블록 B = 003 · 002바
04 OB → A와 B를 병렬 합성 = 001 + 003 · 002바
05 OUT 100 → 그 결과를 코일 (100)에 출력

따라서 100=001+(003002)100 = 001 + (003 \cdot \overline{002})이고, 회로도에서는 001 a접점 한 줄 밑에 003 a접점과 002 b접점을 직렬로 이은 줄을 나란히 두어 병렬 가지로 만든다.

어드레스 06~10도 같은 방식이다.

06 STR 001 → 블록 A = 001
07 ANDN 002 → 블록 A = 001 · 002바
08 STR 003 → 새 블록 B = 003
09 OB → A + B = 001 · 002바 + 003
10 OUT 200 → 코일 (200)에 출력

200=(001002)+003200 = (001 \cdot \overline{002}) + 003이다. 두 출력은 001·002바·003이라는 같은 재료를 쓰지만 묶는 순서가 달라 결과가 다르다. 003이 직렬 가지 안에 들어가 있으면 100, 003이 단독 병렬 가지로 나와 있으면 200이라고 보면 구분이 쉽다. 003이 002 b접점과 함께 직렬로 묶이는지 아닌지가 두 회로를 가르는 지점이므로, OB가 어느 두 블록을 합치는지만 정확히 짚으면 된다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.