A=HGI6=G<= Њ׆ҍչ չ࠾ԅ սնٝ āڷ İ . չ࠾ԅ ण͐ḥ̂Д5չΎܜ GK%8)7!;DDKٝ फ़ύ G7<CC@!5DFC!;DDK फ़ύ %'>G$' ࠢʫ G<ύ!''$-!5-,$-A99 ● یלӭ ● ڗ܄ սնऱİ ؓیЛʫչ ܄ڠրչز չհࢁ ڋԋØऴ ˋؓȪ Лʫչ ìͅ ΥȢ؇ڠ ڋÝ ܄ ऺڗ܄ ؓیלրչ"ز ĥΎÝ սնऴ ˋؓȪ ̣ךӡहؓ ڗ܄ऱωԅ صЗÄ ߕĬऺ ܄րչ"ز 【실습 시 주의 사항】 ٷॊ یӡÝΆ מ ܤࡖڈڟɻ͑ ؓ܍ یȪ ɄڪΆ Θ ܤܤΖրչ"ز ࠇ یלдΆ ؓˋ ؟Ȫ ی٪ ڋƠµƴ ߐ ڋیלѬষ ८ڞळ Ɂګ ؓڍ؋ऺ܄րչز. ڗ܄ ӡܤ ڗչؓ ˁ̗ սն܄ऺ ڋրչ"ز ϩɄ ͐ڈսնİ ٿȷࢲΆ ѬΎऱµƴ Цԉ ڋЗƅ ܤΖրչ"ز Ýڜڵƴ زʅ ګѪӭ ७ ڗڷ٪ ڜڞʑȷɁ" ٿȷࢲΆ ࡡބऴ ˋȪ ی٪ ڋC::͐ ळ Ɂ ؓڍऱրչ "ز ڋࡡބ ؓ܍ یऱω ٿȷࢲ ڗÝڜڵƴ ڗی٪ ڜڞʑȷɁ" սնİؓԅ ljӯƴ ڜӭळ ԪΎ ƴω “ی٪ հ˫ ”ߩٷȪ “ҍӭ հ”ߩٷΆ ȕ̱ ܤے չࡖրչ"ز ڜӭ ڜНӷऱˋ ڋئȪ ӡؓÄ ܝչ ̘؞ऱրչ"ز 개정 이력 ※교재 번호는 이 교재의 맨 뒤 표지 왼쪽 아래에 기재되어 있습니다. 인쇄 날짜 1998년 6월 1998년 9월 ※교재 번호 SH(명)-3309-A SH(명)-3309-B 개정 내용 초판 인쇄 GPPW, LLT소프트 SW1 버전업 대응 이 교재는 공업소유권이나 기타 권리의 실시에 대한 보증 또는 실시권을 허락하는 것이 아 닙니다. 또한 이 교재에 기재된 내용에 따른 사용으로 인해 발생한 공업소유권상의 제반 문 제에 대해 당사에서는 일절 책임 지지 않습니다. 1998 MISTSUBISH ELECTRIC CORPORATION 서론 이 교재에서는 MELSEC-A 시리즈의 프로그래밍에 대한 이해를 돕기 위해 시퀀서에 관한 설명, GPPW를 이용한 프로그램 편집 방법, 시퀀서 명령과 응용 명령 등에 관해 설명합니다. 또한 이 교재에서는 CPU로 A3ACPU를 사용한 경우를 예로 설명합니다. 관련 자료로는 다음과 같은 것이 있습니다. (1) ACPU 프로그래밍 매뉴얼(기초편) ...................... SH(명)-3435 (2) ACPU 프로그래밍 매뉴얼(공통명령편) .................. SH(명)-3436 (3) AnACPU/AnUCPU 프로그래밍 매뉴얼(전용명령편) ......... SH(명)-3437 각 명령에 관해 자세하게 설명하였습니다. (4) Windows용 GPP 기능 소프트웨어 패키지 운영 매뉴얼(설치) ...................................... IB-68978 (5) Windows용 GPP 기능 소프트웨어 패키지 운영 매뉴얼 시작합시다 GPPW (운영) ..................... IB-68997 (6) Windows용 래더 로직 테스트 도구 기능 소프트웨어 패키지 운영 매뉴얼 ............................................ IB-68977 (7) Windows용 GPP 기능 소프트웨어 패키지 운영 매뉴얼 ............................................ IB-68979 조작 방법에 관해 설명하였습니다. 교재에서 사용하는 CPU의 총칭은 다음과 같습니다. 대형 A1 타입 CPU ....... A1NCPU, A1NCPUP21, A1NCPUR21 A2 타입 CPU ....... A2NCPU, A2NCPUP21, A2NCPUR21 A2ACPU, A2ACPUP21, A2ACPUR21, A2UCPU A2-S1 타입 CPU ..... A2NCPU-S1, A2NCPUP21-S1, A2NCPUR21-S1 A2ACPU-S1, A2ACPUP21-S1, A2ACPUR21-S1 A2UCPU-S1 A3 타입 CPU ........ A3NCPU, A3NCPUP21, A3NCPUR21 A3ACPU, A3ACPUP21, A3ACPUR21, A3UCPU A4 타입 CPU ........ A4UCPU 소형 AnSCPU ............. A1SJCPU, A1SCPU, A2SCPU, A2USCPU, A2UCPU-S1, A2UCPU A2USCPU-S1, A1SHCPU, A1SJHCPU, A2SHCPU, A2USHCPU-S1 A2C 시리즈 ......... A2CJCPU, A2CCPU, A2CCPU-DC24V, A2CSPUC24 A2CCPUC24-PRF, A2CCPUP21, A2CCPUR21 A0J2 시리즈 ........ A0J2HCPU, A0J2HCPU-DC24V, A0J2HCPUP21, A0J2HCPUR21 이 교재는 공업소유권이나 기타 권리의 실시에 대한 보증 또는 실시권을 허락하는 것이 아닙 니다. 또한 이 교재에 기재된 내용에 따른 사용으로 인해 발생한 공업소유권상의 제반 문제에 대해 당사에서는 일절 책임 지지 않습니다. © 1998 MISTSUBISH ELECTRIC CORPORATION 차례 ۔% ڵչ࠾ԅ ڗİ %!%r%!%% 1.1 프로그램 ................................................................ 1- 1 1.2 프로그램 처리 순서 ...................................................... 1- 4 1.3 MELSEC-A 유니트의 구성 .................................................. 1- 5 1.4 외부 출력 신호와 입출력 번호 ............................................ 1- 8 1.5 실습기의 시스템 구성과 입출력 번호 ...................................... 1-11 ; ڵ&۔DDK ۤګ &!%r&!') 2.1 GPPW의 조작을 위한 기초 지식 ............................................ 2- 1 2.1.1 GPPW의 화면 구성..................................................... 2- 1 2.1.2 프로젝트............................................................. 2- 3 2.2 회로를 작성하기 전의 조작 ............................................... 2- 5 2.2.1 GPPW의 기동.......................................................... 2- 5 2.2.2 신규 프로젝트 작성................................................... 2- 6 2.2.3 기능 키의 변경....................................................... 2- 8 2.3 회로 작성 ............................................................... 2- 9 2.3.1 기능 키를 사용한 회로 작성........................................... 2- 9 2.3.2 도구 버튼을 사용한 회로 작성......................................... 2-12 2.4 작성한 프로그램의 변환 .................................................. 2-15 2.5 시퀀서 CPU로의 데이터 저장 .............................................. 2-16 2.6 회로 상태의 모니터 ...................................................... 2-18 2.7 회로 편집 ............................................................... 2-20 2.7.1 회로의 일부 수정..................................................... 2-20 2.7.2 괘선의 작성과 삭제................................................... 2-22 2.7.3 행의 삽입과 삭제..................................................... 2-25 2.7.4 회로의 잘라내기와 복사............................................... 2-30 2.8 작성한 회로의 저장 ...................................................... 2-33 2.8.1 신규 또는 기존 프로젝트의 저장....................................... 2-33 2.8.2 다른 프로젝트 이름으로 저장.......................................... 2-34 2.9 저장한 프로젝트 열기 .................................................... 2-35 ڵ'۔չ࠾ԅ ̗ࣈ ؿߩڵЊࡳ '!%r'!' 3.1 디바이스 ................................................................ 3- 1 3.2 파라미터 ................................................................ 3- 2 ڵ(۔չ࠾ԅ ύ͋ê İї ύ͋ % (!%r(!'- 4.1 이 장에서 설명할 명령의 종류 ............................................ 4- 1 4.2 OUT와 SET RST의 차이 ................................................... 4- 3 4.3 타이머 계측 ............................................................. 4- 4 4.4 카운터 계수 ............................................................. 4- 5 4.5 PLS • PLF ............................................................ 4-12 4.6 MC CJ • MCR ............................................................ 4-18 • SCJ • CALL • FEND ............................................ 4-22 CJ • SCJ • ........................................................ 4-22 4.7 4.7.1 4.7.2 CALL(P) • RET .................................................... 4-26 4.7.3 FEND ............................................................... 4-30 4.8 연습 문제 ............................................................... 4-33 4.8.1 연습 문제1 LD~NOP.................................................... 4-33 프로젝트명 TEST1 4.8.2 연습 문제2 SET, RST.................................................. 4-34 프로젝트명 TEST2 4.8.3 연습 문제3 PLS, PLF.................................................. 4-36 프로젝트명 TEST3 4.8.4 연습 문제4 CJ, CALL, RET, FEND....................................... 4-37 프로젝트명 TEST4 ڵ)۔İї ύ͋ & )!%r)!), 5.1 수치(데이터) 표현 ....................................................... 5- 1 5.2 전송 명령 ............................................................... 5- 9 5.2.1 MOV(P) ............................................................ 5- 9 5.2.2 BIN(P) ............................................................ 5-16 5.2.3 BCD(P) ............................................................ 5-18 5.2.4 비트 디바이스의 자릿수 지정과 데이터 전송 예......................... 5-21 5.2.5 FMOV(P) BMOV(P) ................................................... 5-22 5.3 비교 연산 명령 .......................................................... 5-27 5.4 사칙연산 명령 ........................................................... 5-32 - (P) ...................................................... 5-32 5.4.1 + (P) / (P) ...................................................... 5-36 5.4.2 * (P) 5.4.3 32비트 데이터 명령과 그 필요성....................................... 5-42 5.4.4 소수점을 포함한 값의 곱셈 및 나눗셈 계산 예.......................... 5-44 5.5 인덱스 레지스터와 필터 레지스터 ......................................... 5-45 5.5.1 인덱스 레지스터 Z, V의 사용법........................................ 5-45 5.5.2 파일 레지스터 R의 사용법............................................. 5-47 5.6 타이머, 카운터 설정값의 외부 설정과 현재값의 외부 보기 .................. 5-49 5.7 연습 문제 ............................................................... 5-51 5.7.1 연습 문제1 MOV....................................................... 5-51 프로젝트명 TEST5 5.7.2 연습 문제2 BIN, BCD의 변환........................................... 5-52 프로젝트명 TEST6 5.7.3 연습 문제3 FMOV...................................................... 5-53 프로젝트명 TEST7 5.7.4 연습 문제4 비교 명령................................................. 5-54 프로젝트명 TEST8 5.7.5 연습 문제5 +, -...................................................... 5-55 프로젝트명 TEST9 5.7.6 연습 문제6 *, /...................................................... 5-57 프로젝트명 TEST10 5.7.7 연습 문제7 D*, D/.................................................... 5-58 프로젝트명 TEST11 ڵ*۔57DI ۬ ڗİȱ ڗӡٝл *!%r*!&) 6.1 시계 기능 ............................................................... 6- 1 6.2 온라인에서의 테스트 기능 ................................................ 6- 2 6.2.1 디바이스 “Y”의 강제 ON/OFF ........................................... 6- 3 6.2.2 디바이스 “M”의 SET/RESET ............................................. 6- 4 6.2.3 디바이스 “T”의 현재값 변경 ........................................... 6- 5 6.2.4 에러 스텝 불러오기................................................... 6- 6 6.2.5 원격 STOP/RUN........................................................ 6- 7 6.3 파라미터 설정에 의한 I/O의 강제 할당 .................................... 6- 8 6.4 적산 타이머 사용법 ...................................................... 6-10 6.5 디바이스의 일괄 변경 .................................................... 6-12 6.5.1 디바이스 번호의 일괄 변경............................................ 6-12 6.5.2 지정 디바이스인 A접점 ↔B접점의 일괄 변경............................ 6-13 6.6 작동중의 저장 ........................................................... 6-14 6.7 디바이스 등록 ........................................................... 6-15 6.8 코멘트 작성 방법 ........................................................ 6-17 ۔+ࢳ ڵՎ İȱ ٿȷࢲٝ :FCA#HC ύ͋ +!%r+!&( 7.1 특수 기능 유니트란? ..................................................... 7- 1 7.2 특수 기능 유니트와 CPU 간의 정보 교환 ................................... 7- 2 7.2.1 CPU로의 입출력 신호.................................................. 7- 2 7.2.2 특수 기능 유니트와의 데이터 교환..................................... 7- 3 7.3 버퍼 메모리 불러오기 및 저장 프로그램 ................................... 7- 4 7.3.1 불러오기 프로그램(FROM).............................................. 7- 4 7.3.2 저장 프로그램(TO).................................................... 7- 7 7.4 A68AD형 아날로그/디지털 변환 유니트 ..................................... 7- 9 7.4.1 특징................................................................. 7- 9 7.4.2 성능 사양............................................................ 7-10 7.4.3 시퀀서 CPU에 대한 입출력 신호........................................ 7-11 7.4.4 버퍼 메모리.......................................................... 7-13 7.4.5 운전까지의 설정과 순서............................................... 7-19 7.4.6 프로그래밍........................................................... 7-21 7.5 A1S62DA 디지털/아날로그 변환 유니트 ..................................... 7-22 7.5.1 특징................................................................. 7-22 7.5.2 시스템 구성.......................................................... 7-23 7.5.3 사양................................................................. 7-24 7.5.4 운전까지의 설정과 순서............................................... 7-30 7.5.5 프로그래밍........................................................... 7-33 7.6 A1SD61형 고속 카운트 유니트 ............................................. 7-34 7.6.1 특징................................................................. 7-35 7.6.2 성능 사양............................................................ 7-36 7.6.3 기능................................................................. 7-37 7.6.4 외부 기기와의 인터페이스............................................. 7-38 7.6.5 시퀀서 CPU에 대한 입출력 신호........................................ 7-39 7.6.6 버퍼 메모리 할당..................................................... 7-41 7.6.7 운전까지의 설정과 순서............................................... 7-43 7.6.8 펄스 입력과 카운트 방법.............................................. 7-44 7.6.9 프리세트 기능을 실행합니다........................................... 7-51 7.7 A68AD형 아날로그/디지털 변환 유니트 ..................................... 7-52 7.7.1 각부의 명칭.......................................................... 7-52 7.7.2 A/D 변환 특성........................................................ 7-53 7.7.3 입출력 번호 할당..................................................... 7-54 7.7.4 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리.......................... 7-54 7.7.5 실습기를 통한 연습................................................... 7-55 7.8 A62DA형 디지털/아날로그 변환 유니트 ..................................... 7-56 7.8.1 각부의 명칭.......................................................... 7-56 7.8.2 D/A 변환 특성........................................................ 7-57 7.8.3 입출력 번호 할당..................................................... 7-58 7.8.4 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리.......................... 7-58 7.8.5 실습기를 통한 연습................................................... 7-59 7.9 AD61형 고속 카운터 유니트 ............................................... 7-60 7.9.1 각부의 명칭.......................................................... 7-60 7.9.2 고속 카운터 유니트란?................................................ 7-61 7.9.3 입출력 번호 할당..................................................... 7-62 7.9.4 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리.......................... 7-63 7.9.5 불러오기와 저장을 위한 AD61(S1)용 전용 명령.......................... 7-65 7.9.6 실습기를 통한 연습................................................... 7-66 ۔,ࡽ ܥ͐ ڵհࢲ İȱ@@Hګۤ ڗ ,!%r,!%% 8.1 로직 테스트 기능(LLT)의 조작 순서 ....................................... 8-2 8.2 디바이스 상태의 모니터와 테스트 ......................................... 8-4 8.3 I/O, 특수 유니트의 의사 동작 작성 ....................................... 8-8 Ѫ͑ Ѫ!%rѪ!%$% 1. 입출력 제어 방식에 대해 .................................................. 부- 1 1.1 다이렉트 방식.......................................................... 부- 1 1.2 리프레시 방식.......................................................... 부- 2 1.3 다이렉트 방식과 리프레시 방식의 비교................................... 부- 3 2. 명령 일람 ................................................................ 부- 4 3. 전용 명령 일람 ........................................................... 부-21 4. 특수 릴레이 M ............................................................ 부-39 5. 특수 레지스터 D .......................................................... 부-42 6. 응용 프로그램 예 ......................................................... 부-48 6.1 플립플롭 회로.......................................................... 부-48 6.2 원숏 회로.............................................................. 부-50 6.3 장시간 타이머.......................................................... 부-51 6.4 오프딜레이 타이머...................................................... 부-52 6.5 온딜레이 타이머(순간 입력)............................................. 부-53 6.6 ON, OFF 교대 회로...................................................... 부-54 6.7 채터링 입력 방지....................................................... 부-54 6.8 공통 라인이 있는 회로.................................................. 부-55 6.9 시간 제어 프로그램..................................................... 부-56 6.10 시간 회로............................................................. 부-57 6.11 전동기의 스타델타 시동................................................ 부-58 6.12 경과 시간 표시와 도중 시한 출력....................................... 부-59 6.13 적산 타이머........................................................... 부-60 6.14 타이머 설정값의 외부 교체............................................. 부-61 6.15 카운터의 외부 설정.................................................... 부-62 6.16 가동 시간 계측........................................................ 부-64 6.17 사이클 타임 계측...................................................... 부-64 6.18 스캔 타임 측정........................................................ 부-65 6.19 (D)CML(P)의 응용 예................................................... 부-66 6.20 4자리 BIN 값의 나눗셈 결과를 소수점 이하 4자리까지 표시하는 프로그램.. 부-67 6.21 대차 라인 제어........................................................ 부-70 6.22 링카운터를 이용한 컴프레서의 순서 기동 운전........................... 부-72 6.23 위치 결정 제어의 응용 예.............................................. 부-76 6.24 인덱스Z를 이용한 응용 예.............................................. 부-77 6.25 FIFO 선입력, 선출력 명령의 응용 예.................................... 부-79 6.26 데이터 시프트 응용 예................................................. 부-81 6.27 데이터의 평방근 연산 프로그램 예...................................... 부-84 6.28 데이터를 n승하는 연산 프로그램 예..................................... 부-85 6.29 A3ACPU LED 표시기의 보기.............................................. 부-86 6.30 디지털 스위치에 의한 데이터 획득 프로그램............................. 부-93 6.31 16비트의 음수를 32비트의 음수로 변환하는 프로그램..................... 부-94 6.32 고장 검출 프로그램에 의한 고장 건수와 고장 번호의 보기................ 부-95 7 GPP 기능으로 사용하는 키의 용도 ........................................... 부-99 8 PLC9800 시리즈와의 키 비교 ................................................ 부-101 ۔% ڵչ࠾ԅ ڗİ 1.1 프로그램 시퀀서를 제어 회로로 보면 입력 회로와 출력 회로, 내부 시퀀스로 표현 할 수 있습니다. 시퀀서 출력 릴레이 전자 밸브 마그넷 접점 타이머 센서 입력 릴레이 (가상 코일) 외부 출력용 접점 입력 회로 입력 유니트 외부 신호로 입력 릴레이 를 ON/OFF한 다. 내부 시퀀스 입력 릴레이의 접점에서 내부 시퀀스를 가동 시킨다. 출력 회로 출력 릴레이의 ON/OFF 동작을 전달한다. 그림1.1 출력 유니트 외부 부하를 가동시킨다. 시퀀서의 구성 시퀀서는 마이크로 프로세서를 중심으로 하는 전자 디바이스이지만 실 제로는 릴레이와 타이머, 카운터의 집합체로 볼 수 있습니다. 그리고 내 부 시퀀스는 그림1.1과 같이 a접점과 b접점을 직렬 또는 병렬로 접속하여 코일을 ON/OFF하도록 구성되어 있습니다. “릴레이란” 전자계전기라고도 하며 신호를 중계하는 스위치입니다. 논리 회로를 구성하는 주역입니다. ① 코일에 전류를 보낸다. 여자 • a접점이 닫힌다 (도통) • b접점이 열린다 (비도통) ② 코일의 전류를 차단한다. 코일 a접점 코먼 소자 • a접점이 열린다 (비도통) • b접점이 닫힌다 (도통) b접점 a접점 b접점 1-1 코일OFF 코일ON (상시) (조작시) 비도통 도통 도통 비도통 내부 시퀀스의 움직임 그림1.1 내부 시퀀스의 신호 흐름은 다음과 같습니다. ① 센서가 ON하면 입력 릴레이 X06의 코일이 여자됩니다. ② 입력 릴레이 X06의 코일이 여자되면 a접점 X06이 도통하고, 출력 릴레 이 Y74의 코일이 여자됩니다(이 때 타이머는 여자되지 않기 때문에 b 접점은 도통 상태입니다.). ③ 출력 릴레이 Y74의 코일이 여자되면 외부 출력용 접점 Y74의 도통되고, 마그넷 접점(MC)이 투입됩니다. ④ 센서가 OFF하면 입력 릴레이 X06의 코일이 소자되고, a접점 X06은 비 도통이 됩니다. 그러나 출력 릴레이의 자기 유지용 a접점 Y74가 도통 되어 있기 때문에 코일은 그대로 여자 상태를 유지합니다(자기 유지 동작). ⑤ 한편 출력 릴레이 Y74의 코일이 여자되어 있을 때(a접점 Y74는 도통) 센서가 OFF(b접점 X06은 도통)로 되면 타이머 T1의 코일이 여자되어 시간을 계측하기 시작합니다. 3초가 경과하면(K30은 3.0초로 표시됩니다) 타이머의 a접점이 도통함 과 동시에 b접점은 비도통이 됩니다. ⑥ 그 결과 출력 릴레이 Y74의 코일은 소자되고 부하의 마그넷 접점은 떨 어집니다. 또 출력 릴레이의 자기 유지가 해제됩니다. 동작도 입력과 출력 릴레이, 타이머의 동작을 타임 차트로 표시하면 다음과 같습 니다. 입력 출력 타이머 (코일) 타이머 (접점) 3초 1-2 내부 시퀀스를 시퀀서의 프로그램이라고 할 수 있습니다. 프로그램은 아 래 명령 리스트와 비슷한 형태로 프로그램 메모리에 저장됩니다. 스텝 번호 명령어 입출력 번호 반복 연산 (a) 회로도(러더도) (b) 명령 리스트(프로그램 리스트) 그림1.2 프로그램 프로그램은 여러 개의 명령어와 입출력 번호로 구성됩니다(입출력 번 호에는 입력(X)과 출력(Y) 이외에 타이머(T) 등과 같이 회로도를 구성 하는 모든 접점과 코일의 요소 번호가 포함됩니다. 디바이스 번호라고 도 합니다.). [명령=명령어+입출력 번호]로 구성되며, 이러한 명령에는 연산 순서를 나타내는 번호가 부가됩니다. 이것을 스텝 번호라고 합니다. (명령어를 단순히 명령이라고도 합니다.) 명령은 [스텝 번호=0]부터 [명령어 END]까지를 반복해서 실행합니다 (이것을 “반복 연산” 또는 “사이클릭 연산”, “스캐닝”이라고 합니다.). 한 번의 실행에 필요한 시간을 연산 주기(스캔 타임)라고 합니다. 스텝 번호=0에서 END 명령까지의 스텝 수를 프로그램의 길이 또는 사 이즈라고 할 수 있습니다. 프로그램은 CPU 내부의 프로그램 메모리에 저장되지만, 연산 처리 단 위는 1회로 블록입니다. 1회로 블록이란 연산 시작 명령(LD, LDI)에서 OUT 명령(데이터 명령도 포함)까지의 블록을 말합니다. 1-3 1.2 프로그램 처리 순서 CPU의 연산 처리는 다음과 같이 프로그램 메모리의 선두 스텝부터 순서 대로 회로 블록 단위로 왼쪽에서 오른쪽으로 위에서 아래로(①, ②, ..... 의 순서로) 직렬로 연산을 수행합니다. 1-4 1.3 MELSEC-A 유니트의 구성 실제 시퀀서의 구성을 빌딩 블록 타입을 예로 설명하겠습니다. MELSEC-A 빌딩 블록 타입에는 대형(AnA, AnU 타입 등)과 소형(AnS 타입)이 있습니 다. 전원 유니트 CPU 유니트 입출력 유니트 베이스 유니트 그림1.3 MELSEC-A의 유니트 구성 베이스 유니트 기본 베이스 유니트 증설 베이스 유니트 전원 유니트 불필요 증설 베이스 유니트 전 입출력 유니트 전 원 2장 장착 원 전 입출력 유니트 원 3장 장착 입출력 유니트 전 5장 장착 원 전 전 입출력 유니트 원 8장 장착 전 원 원 *1 A32B에는 증설 베이스를 사용할 수 없습니다. *2 기본 베이스가 소형 타입 CPU용 베이스인 경우는 증설이 1단까지입니다. 베이스 유니트의 주요 역할은 전원 유니트, CPU 유니트, 입출력 유니 트 등을 고정시켜 장착하는 것과 전원 유니트로부터의 DC5V 전원을 CPU 유니트, 입출력 유니트 등으로 공급하고 제어 신호를 각 유니트로 전달하는 것입니다. 1-5 전원 유니트 출력 입력 DC5V 8A 5A 5A 3A 2A --8A 5A 8A AC100V AC200V DC24V DC110V DC24V ----0.8A 0.6A 1.5A 1.2A ------- 유니트 타입명 A61P A1S61P A62P A1S62P A65P A66P A63P A1S63P A67P CPU 유니트 (대형 타입 CPU) 시퀀서에 연결할 수 있 는 입출력 점 수(최대) 256점 512점 1024점 2048점 4096점 프로그램 메모리 용량 (최대) 6K스텝 14K스텝 14K스텝 30K X 2스텝 30K X 4스텝 CPU 타입 A1타입 A2타입 A2-S1타입 A3타입 A4타입 *1 메인 프로그램(30K 스텝) 이외에 서브 프로그램(30K 스텝 X )도 사용할 수 있습니다. (소형 타입 CPU) 시퀀서에 연결할 수 있 프로그램 메모리 용량 는 입출력 점 수(최대) (최대) 256점 6K스텝 512점 14K스텝 1024점 14K스텝 1024점 30K스텝 1-6 CPU 타입 A1S타입 A2S • A2US타입 A2US-S1타입 A2USH-S1타입 입출력 유니트 입출력 점 수 타입 AC100V 입 력 유 니 트 AC200V AC24V DC24V DC48V DC100/110/125V TTL 입력 출 접점 출력 력 트라이액 출력 유 트랜지스터 출력 니 TTL 출력 트 입출력 복합 대형 타입 16점 32점 64점 8점 소형 타입 16점 32점 64점 O O ─ ─ O ─ ─ O ─ O O O O O O O O ─ O ─ ─ O O O O ─ ─ O ─ ─ ─ ─ ─ O ─ ─ ─ ─ ─ ─ O O O O O O ─ ─ ─ O O O ─ ─ O ─ ─ O ─ ─ O ─ ─ O ─ ─ ─ ─ ─ O O O O ─ ─ O ─ ─ ─ O O ─ O ─ 메모리(대형 타입 CPU용) ROM (필요하면 장착한다) 메모리 카세트는 EP-ROM을 장착할 ROM소켓 과 이미 장착된 RAM 메모리로 구성되어 있 습니다. 저장시킬 프로그램의 크기나 데이터 종류에 따라 메모리 카세트를 선택합니다. RAM 메모리는 카세트의 타입별로 용량이 정 해져 있습니다. ROM 메모리는 필요에 따라 용량을 정해 장 착합니다. 대형 타입 CPU에는 이 메모리 카세트가 반 드시 필요하지만, 소형 타입 CPU의 경우는 이미 RAM이 CPU에 내장되어 있기 때문에 RAM용 메모리 카세트가 필요 없습니다. 백업용 전지 RAM (RAM 메모리가 장착된 기판) RAM과 ROM, EEP-ROM의 특징 종류 IC-RAM EP-ROM EEP-ROM 프로그램의 저장과 변경 정전 시의 메모리 내용 유지 삭제됩니다. 메모리 용량 내에서 수시로 저장 및 변경이 가 그렇기 때문에 백업용 전지로 메모리 내용을 유지시킬 필요가 능합니다(저장할 때는 주변기기를 사용). 있습니다. ROM 라이터 등을 이용하여 프로그램 전부를 한 번에 저장할 수 있습니다. 저장한 뒤에는 프로 삭제되지 않습니다. 그램을 변경할 수 없습니다. 자외선으로 전부를 삭제한 다음 다시 저장할 수 있습니다. 프로그램 용량 내에서 수시로 저장 및 변경이 가능하지만, 시퀀서가 동작중일 때는 불가능합 삭제되지 않습니다. 니다. 1-7 1.4 외부 출력 신호와 입출력 번호 (1) 입출력 기기의 배선 외부 입력 기기로부터의 신호는 연결된 입력 유니트의 장착 위치와 단자 번호에 따라 정해지는 입력 번호로 바뀌어 프로그램 내에서 사 용됩니다. 또 프로그램 연산 결과의 출력(코일)은 외부 출력 기기가 연결된 출 력 유니트의 장착 위치와 단자 번호에 의해 정해지는 출력 번호를 사 용합니다. 슬롯 번호 (전원) 베이스 유니트 입력 번호 출력 번호 입력 번호는 0부터 시작하는 16진 수입니다. 입력과 출력 번호는 공 용이며, 입력은 X, 출력은 Y 기호 를 붙여서 표시합니다. 입출력 번호의 최대값은 CPU에 따 라 다릅니다. 예를 들면 각 CPU의 입출력 번호 범위는 다음과 같습니다. A1 타입 CPU=0 ~FF (256점) A2 타입 CPU=0 ~1FF (512점) A2-S1 타입 CPU=0 ~3FF (1024점) A3 타입 CPU=0 ~7FF (2048점) A4 타입 CPU=0 ~FFF (4096점) 입출력 번호를 I/O 번호(IN/OUT)라 고도 합니다. 출력 유니트 입력 유니트 그림1.4 입출력 기기의 배선 1-8 (2) 기본 베이스의 입출력 번호 기본 베이스 유니트에 장착된 입출력 유니트의 입출력 번호는 다음과 같이 할당됩니다. 이러한 방식은 특수 기능 유니트의 경우에도 동일 합니다. 기본 베이스9(A32B, A35B, A38B) 슬롯 번호 전 원 유 니 트 입출력 번호 2개용 베이스 일 때(A32B) 5개용 베이스일 때(A35B) 8개용 베이스일 때(A38B) 1슬롯(1유니트)의 입출력 번호는 16점 단위(0~F)로 작은 번호부터 순서대로 할당 됩니다. 즉, 모든 슬롯에 16점 유니트가 장착되어 있을 때가 기준입니다. 예를 들면, 5슬롯에 32점 유니트를 장착할 경우의 입출력 번호는 다음과 같습니다. 기본 베이스 슬롯 번호 32점 유니트로 바꾼 다음 유니트 번호가 바뀝니다(앞에서부터 번호 할당). 전 원 유 니 트 공백 슬롯(입출력 유니트가 장착되지 않는 곳)에도 16점(0~F)이 할당됩니다. 예를 들면, 3슬롯이 공백 슬롯일 때의 입출력 번호는 다음과 같습니다. 기본 베이스 슬롯 번호 전 원 유 니 트 공 백 1-9 (3) 증설 베이스의 입출력 번호 기본 베이스 유니트만으로 슬롯이 부족한 경우에는 증설 베이스를 연 결합니다. 이때의 입출력 번호는 다음과 같이 됩니다. 이러한 방식은 특수 기능 유니트의 경우에도 동일합니다. 기본 베이스(A38B) 슬롯 번호 증설 케이블 전 원 유 니 트 증설 베이스(A38B) (증설 1단) 전 원 유 니 트 증설 베이스(A65B) (증설 2단) 5개용 베이스 유니트 전 원 유 니 트 증설 베이스(A68B) (증설 3단) (주의) 공백 스롯 또는 슬록이 없는 부분의 일출력 번호는 파라 미터를 “0”으로 할 수도 있 습니다. 나중에 설명하겠습니다. 중요 슬롯이 없어도 16점씩 (16점X3) 할당한다. 전 원 유 니 트 증설 베이스의 슬롯도 16점 단위로 작은 번호부터 순서대로 할당됩니다. 증설 베이스의 선두는 기본 베이스의 마지막 번호 또는 앞 단계 증설 베이스의 마 지막 번호 다음을 할당합니다. 기본 베이스가 5개용 또는 증설 베이스가 5개용일 때에도 8개용 베이스를 사용할 때와 같이 할당할 수 있습니다. 즉, 물리적으로 슬롯이 없는 곳에도 16점씩 할당합 니다. 기본 베이스 “A32B”에는 증설 베이스가 연결되지 않습니다. 기본 베이스가 소형 타입 CPU용 베이스인 경우에는 증설이 1단까지입니다. 1 - 10 1.5 실습기의 시스템 구성과 입출력 번호 CPU 유니트 전원 유니트 출력 유니트 입력 유니트 베이스 유니트(A35B) 64점 64점 32점 32점 32점 RS-422 RS-422 I/O 패널 BCD 디지털 표시기(4자리 X 2) 변환기 BCD 디지털 표시기 BCD 디지털 스위치(4자리 X 2) 스냅 스위치 X 6 버튼 스위치(자동 복귀형) X 2 1 - 11 ; ڵ&۔DDK ۤګ 2.1 2.1.1 GPPW의 조작을 위한 기초 지식 GPPW의 화면 구성 ① 타이틀 바 ② 메뉴 바 ③ 툴바 ⑤ 편집 화면 ④ 프로젝트 데이터 일람 ⑥ 스테이터스 바 2-1 ① 타이틀 바 열려 있는 프로젝트명이 표시됩니다. GPPW를 확대/축소합니다. 사이즈 변경, GPPW를 종료합니다. 프로젝트명 및 경로가 표시됩니다. GPPW를 최소화합니다. GPPW를 종료합니다. ② 메뉴 바 GPPW를 조작할 때에 가장 많이 이용하는 것입니다. 메뉴를 선택하면 드롭다운 메뉴가 표시되므로 다양한 기능을 사용할 수 있습니다. ③ 툴 바 많이 사용하는 기능을 버튼으로 한 것입니다. 툴 바를 이용하면 조작 을 신속하게 할 수 있습니다. 툴 버튼으로 마우스 커서를 이동시키면 버튼에 관한 간단한 설명이 나타납니다. 장치 테스트 ④ 프로젝트 데이터 일람 회로 작성 화면, 대화 상자 화면 등을 직접 열 수 있습니다. 프로젝트 내의 데이터를 분류별로 표시할 수 있습니다. ⑤ 편집 화면 회로 작성 화면이나 코멘트 작성 화면을 표시하여 회로, 코멘트, 파라미터 를 설정합니다. 따라서 편집할 내용에 따라 다양한 화면이 나타납니다. ⑥ 스테이터스 바 GPPW의 상태 정보가 나타납니다. 현재 모드가 나타납니다. 마우스 커서 위치의 설명이 나타납니다. CPU 타입이 나타납니다. 연결할 CPU가 표시됩니다. 2-2 Scroll Lock 상태 가 표시됩니다. Caps Lock 상태가 Num Lock 상태가 표시됩니다. 표시됩니다. 2.1.2 프로젝트 프로젝트란 프로그램, 디바이스 코멘트, 파라미터, 디바이스 메모리를 모 은 것입니다. 프로젝트 프로그램 프로그램 디바이스 코멘트 디바이스 코멘트 파라미터 디바이스 메모리 항목 프로그램 디바이스 코멘트 파라미터 디바이스 메모리 내용 시퀀서 CPU를 작동시킬 때에 반드시 필요한 시퀀스 프로그램입니다. 시퀀스 프로그램의 디바이스에 관한 코멘트입니다. 프로젝트에서 공통인 “공통 코멘트”와 프로그램별로 다른 “프로그램 코멘트”의 2종류가 있습니다. 네트워크에 관한 설정이나 디바이스 사용 범위 등을 설정합니다. 현재의 디바이스 값을 표시합니다. 또 수치를 입력하 여 값을 변경하면 디바이스 값을 변경시킬 수 있습니 다. 2-3 ① 하나의 GPPW에서 하나의 프로젝트 GPPW에서는 1개의 프로젝트 단위만 편집할 수 있습니다. 따라서 2개 이상의 프로젝트를 편집할 경우에는 GPPW를 여러 개 기동하여야 합니 다. ② GPPA와의 차이 GPPW에서는 GPPA에서 사용하였던 시스템 이름이 없어지고, 기계 이름 은 프로젝트명이 됩니다. 또 프로젝트는 임의의 장소에 작성할 수 있 습니다. GPPA GPPW : : ₩GPP₩USR₩시스템 이름₩기계 이름 ₩프로젝트명(1바이트 문자로 8문자까지) ③ 디바이스 코멘트 GPPW의 디바이스 코멘트에는 공통 코멘트와 프로그램별 코멘트가 있습 니다. 코멘트 종류 공통 코멘트 프로그램별 코멘트 작성 가능한 개수 내용 프로젝트에 있는 프로그램에서 공통인 디 바이스 코멘트입니다. 각 프로그램별로 설정하는 디바이스 코멘 프로그램 수와 트입니다. 반드시 프로그램 이름과 같은 동일 이름으로 설정하여야 합니다. 1개 2개의 디바이스 코멘트 내용이 중복된 경우의 우선 순위는 다음과 같 습니다. 프로그램별 코멘트 > 공통 코멘트 2-4 2.2 2.2.1 회로를 작성하기 전의 조작 GPPW의 기동 ① 시작 버튼을 클릭합니다. ② [프로그램] 메뉴를 선택합니다. ③ [MELSEC 어플리케이션] 메뉴를 선택합 니다. ② 선택! ③ 선택! ④ 클릭! 마우스 커서를 이동시켜 선택할 수 있습니다 (클릭, 더블클릭은 필요 없습니다.). ① 클릭! ④ [GPP기능] 메뉴를 클릭합니다. ⑤ GPPW가 기동합니다. ⑤ GPPW가 기동합니다. 2-5 2.2.2 신규 프로젝트 작성 ① 툴 바의 ① 클릭! 또는 [프로젝트]→[프로 젝트 신규 작성] 메뉴( )를 클릭합니다. ②「PLC 시리즈」리스트 버튼을 클릭합 ② 클릭! 니다. ③ 리스트 상자가 나타나면 “ACPU”를 클 릭하여 선택합니다. ③ 클릭하여 선택! ④「PLC 타입」리스트 버튼을 클릭합니 ④ 클릭! 다. ⑤ 리스트 상자가 나타나면 “ACPU”를 클 릭하여 선택합니다. ⑤ 클릭하여 선택! 2-6 ⑥ OK 버튼을 클릭합니다. ⑥ 클릭! ⑦ 새로운 프로젝트가 열립니다. ⑦ 새로운 프로젝트가 열립니다! 2-7 2.2.3 기능 키의 변경 ① [도구]→[사용자 정의 키] 메뉴를 클릭 합니다. ① 클릭! ② 설정할 키 타입을 클릭하여 선택합니다. 여기에서는 GPPA 타입을 선택합니다. ② 타입 선택! ③ OK 버튼을 클릭합니다. ③ 클릭! 참 고 각 타입에서 툴 바의 표시는 다음과 같이 바뀝니다. 또 바로 가기 키의 할당도 바뀝니다. GPPA타입 GPPQ타입 MEDOC타입 2-8 2.3 회로 작성 2.3.1 기능 키를 사용한 회로 작성 작성할 회로 왼쪽과 같은 회로를 작성하는 방법에 대 해 설명하겠습니다. 문자는 모두 1바이트 문자로 입력해 주십시오. 2바이트 문자는 사용할 수 없습니다. 회로를 작성할 경우에는 반드시 저장 모 드로 바꾼 다음에 수행해 주십시 오. ① ① 입력합니다! ② F5 키를 누르면 회로 입력 화면이 열립니다. “X2”를 입력합니다. 잘못 입력한 경우에는 Esc 릅니다. Enter 키를 키를 누 ② 올바르게 입력한 경우에는 Enter 누릅니다! 키 를 누릅니다. [OK] 버튼을 클릭하여 입력을 확인할 수 ③ 회로가 나타납니다! 있습니다. [취소] 버튼을 클릭하여 입력을 취소 할 수 있습니다. ④ “X0”을 입력합니다! Enter ⑤ 키를 누릅니다! ③ 입력한 회로 ④ Shift 가 나타납니다. + F5 키를 누른 다음에 “X0” 을 입력합니다. ⑤ Enter 키를 누릅니다. ⑥ 입력한 회로 ⑥ 회로가 나타납니다! 가 나타납니다. ⑦ F7 키를 누른 다음에 “Y70”을 입력합 니다. ⑦ “Y70”을 입력합니다! ⑧ Enter 키를 ⑧ 누릅니다! 2-9 Enter 키를 누릅니다. ⑨ 입력한 회로 가 나타납니다. ⑨ 회로가 나타납니다! ⑩ ⑪ ⑩ “Y70”을 입력합니다! Enter 키 키를 누른 다음 “ Y70” 을 입력합 F7 니다. Enter 를 누릅니다. ⑪ 키를 누릅니다. ⑫ 입력한 회로 ⑫ 회로가 나타납니다! ⑬ 가 나타납니다. 아래의 회로로 커서를 이동시킵니다. F7 ⑬ 커서를 이동 시킵니다! ⑮ Enter 키를 ⑭ 키를 누른 다음 “ X3” 을 입력합니 다. 누릅니다. Enter ⑭ “X3”을 입력합니다! ⑮ 키를 누릅니다. 입력한 회로 F7 회로가 나타납니다! 가 나타납니다. Enter키를 누른 다음 “ Y71” 을 입력합 Enter “Y71”을 입력합니다! 키 니다. 를 누릅니다. 키를 누릅니다. 회로가 나타납니다! 2 - 10 이상으로 회로 작성이 끝났습니다. 2 - 11 2.3.2 툴 버튼을 사용한 회로 작성 왼쪽과 같은 회로를 작성하는 방법에 대 작성할 회로 해 설명하겠습니다. 문자는 모두 1바이트 문자로 입력해 주십시오. 2바이트 문자는 사용할 수 없습니다. 회로를 작성할 경우에는 반드시 저장 모드로 바꾼 다음에 수행해 주십시 오. ① 툴 바의 을 클릭하면 회로 입력 화면이 열리므로 “X2”를 입력합니다. 잘못 입력한 경우에는 취소 버튼을 클 릭합니다. ① 입력합니다! Enter 키를 ② 누릅니다! ② 올바르게 입력한 경우에는 OK 버튼 을 클릭합니다. ③ 입력한 회로 가 나타납니다. ③ 회로가 나타납니다! ④ 툴 바의 을 누른 다음에 “X0”을 입 력합니다. ④ “X0”을 입력합니다! ⑤ OK 버튼을 클릭합니다. Enter 키를 ⑤ 누릅니다! ⑥ 입력한 회로 ⑦ 툴 바의 ⑥회로가 나타납니다! 을 누른 다음에 “Y70”을 입력합니다. ⑧ ⑦ “Y70”을 입력합니다! 가 나타납니다. ⑧ Enter 키를 누릅니다! 2 - 12 OK 버튼을 클릭합니다. ⑨ 회로가 나타납니다! ⑨ 입력한 회로( ⑩ 툴 바의 )가 나타납니다. 을 누른 다음 “Y70”을 입력 합니다. ⑩ 을 클릭한 다음에 “Y70”을 입력합니다! ⑪ 클릭합니다! ⑪ OK 버튼을 클릭합니다. ⑫ 입력한 회로( )가 나타납니다. ⑫ 회로가 나타납니다! ⑬ ⑬ 커서를 이동시킵니다! 아래의 회로로 커서를 이동시킵니 다. ⑭ 툴 바의 ⑭ 을 클릭한 다음에 “X3”을 입력합니다! 을 누른 다음 “X3”을 입력 합니다. ⑮ 클릭합니다! ⑮ OK 버튼을 클릭합니다. 입력한 회로 ( 툴 바의 ) 가 나타납니다. 을 누른 다음 “Y71”을 입력 합니다. 회로가 나타납니다! OK 버튼을 클릭합니다. 을 클릭한 다 음 에 “Y71”을 입 력합니다! 클릭합니다! 클릭! 입력한 회로 ( 회로가 나타납니다! 2 - 13 )가 나타납니다. 이상으로 회로 작성이 끝났습니다. 2 - 14 2.4 작성한 프로그램의 변환 ① 변경할 회로 화면을 클릭하여 활성화 된 상태로 합니다. ① 화면을 활성화합니다! ② 툴 바의 뉴 ( 또는 [변환]→[변환] 메 )를 클릭합니다. 변환 중에 오류가 발행하면 회로 작성 ② 클릭합니다! 불량 장소로 커서가 이동하므로 회로를 확인해 주십시오. 2 - 15 2.5 시퀀서 CPU로의 데이터 저장 ① GPPW로 회로(시퀀스 프로그램)를 작 성하였다고 가정합니다. ②「STOP」으로 바꿉니다! ② CPU의「RUN/STOP」키 스위치를 「STOP」으로 합니다. ③ 툴 바의 또는「온라인」→「PLC 저장」 메뉴를 클릭합니다. ③ 클릭합니다! 2 - 16 ④ 「파일 선택」탭에서 CPU에 저장할 프 ④ 저장할 데이터를 클 릭하여 선택합니다! 로그램이나 파라미터를 클릭하여 선 택합니다. 또는 파라미터+프로그램 을 클릭합니다. ⑤ 클릭합니다! ⑤ 모든 선택이 끝나면 실행 을 클릭합 니다. ⑥ PLC 저장의 실행 유무를 확인하므로 예 를 클릭합니다. ⑥ 클릭합니다! ⑦ 저장 중임을 알리는 화면이 나타납니 다. ⑧ 저장이 완료되면 「완료되었습니다.」 라는 메시지가 나타나므로 확인 을 클 릭합니다. ⑧ 클릭합니다! 2 - 17 2.6 회로 상태의 모니터 ① 시퀀서 CPU에 회로(시퀀스 프로그램)가 ②「RUN」으로 합니다! 저장되어 있다고 가정합니다. ② CPU의「RUN/STOP」 키 스위치를 「STOP」으로 합니다. ③ 툴 바의 또는 「온라인」→「모니 터」→「모니터 모드」 메뉴를 클릭합 니다. ③ 클릭합니다! ④ 모니터 이외의 메뉴로 이동하면 모니터 를 종료할 수 있습니다. 실습기 조작 ① 스냅 스위치 X2를 ON하면 LED 표시등 Y70이 점등하지만, 계속해서 이 스냅 스위치를 OFF로 하여도 LED 표시등 Y70이 계속해서 점등하고 있 는 것을 확인해 주십시오. ② 버튼 스위치 X1을 누르면 LED 표시등 Y70이 소등되지만, 버튼 스위치 에서 손을 떼어도 다시 점등하지 않는 것을 확인해 주십시오. ③ 스냅 스위치 X3을 ON하면 LED 표시등 Y71이 점등합니다. 2 - 18 (1) 모니터 모드에서는 모니터 중이나 정지와 관계없이 아래와 같은 모니 터 상태 화면이 나타납니다. <A 시리즈의 경우> ① ② <QnA 시리즈의 경우> ③ ④ ① ② ③ ① 스캔 타임 모니터할 시퀀서 CPU의 최대 스캔 타임이 나타납니다. ② 시퀀서 CPU 상태 시퀀서 CPU의 동작 상태가 나타납니다. ③ 모니터 실행 상태 모니터중일 때는 점멸합니다. ④ 실행 프로그램 이름 실행중인 프로그램 이름이 나타납니다. (2) 회로의 ON, OFF 상태는 아래와 같습니다. * : 접점의 비교 명령과 코일의 SET, RST, PLS, PLF, SFT, SFTP, MC, FF, DELTA, DELTAP만을 지원합니다(FF, DELTA, DELTAP는 QnA 시리즈의 명령입니다.). 2 - 19 2.7 2.7.1 회로 편집 회로의 일부 수정 수정할 회로 왼쪽 회로의 일부를 수정하는 방법에 대해 설명하겠습니다( ). 문자는 모두 1바이트 문자로 입력 해 주십시오. 2바이트 문자는 사 용할 수 없습니다. 회로를 수정할 경우에는 반드시 저장 모드로 바꾼 다음에 수행해 주십시오. ① 화면 아래의 오른쪽 부분에 “수 정”이 표시되어 있는지를 확인합 니다. “삽입”이라고 표시되어 있을 경우에 는 Ins 키를 눌러 표시를 “수정”으 ① 확인합니다! 로 바꾸어 주십시오. “삽입”이라고 표시되어 있을 경우에는 접점, 코일 이 추가됩니다. <X2→X5로 수정할 경우> 추가됩니다! <SET→RST로 수정할 경우> 추가됩니다! ② 수정할 곳을 더블 클릭합니다. ② 더블 클릭합니다! 2 - 20 ③ 회로 입력 화면이 ③ 회로 입력 화면이 나타납니다. 나타납니다! ④ 클릭하면 문자용 커서( │)가 나타나므로 “Y72”로 수정합니 다. ④ 수정합니다! ⑤ 클릭합니다! ⑤ 수정이 완료되면 OK 버튼을 클릭합니다. ⑥ 수정된 회로가 나타납니다. ⑥ 수정되어 표시됩니다! 2 - 21 2.7.2 괘선의 작성과 삭제 (1) 괘선 작성 수정할 회로 왼쪽 회로에 괘선을 작성하는 방법에 대해 설명하겠습니다. ① 툴 바의 을 클 릭합니다. ① 클릭합니다! ② 시작 위치에서 종료 위치까지 드래 그합니다. ② 드래그합니다! 세로 괘선은 커서 왼쪽에 작성됩니다. ③ 마우스 왼쪽 버튼을 떼면 괘선이 작성됩니다. ③ 괘선 작성 2 - 22 ④ 툴 바의 을 클릭한 다음에 “Y73”을 입력합니다. ⑤ ④ 을 클릭한 다음 입력합니다! OK 버튼을 클릭합니다. ⑤ 클릭합니다! ⑥ 입력한 회로( 니다. ⑥ 회로가 나타납니다! 2 - 23 )가 나타납 (2) 괘선 삭제 수정할 회로 왼쪽 회로의 괘선을 삭제하는 방법에 대해 설명하겠습니다. ① 툴 바의 을 클릭합니 다. ① 클릭합니다! ② 시작 위치에서 종료 위치까지 드래그합 ② 드래그합니다! 니다. ③ 괘선 삭제 ③ 마우스 왼쪽 버튼을 떼면 괘선이 삭제됩 니다. ④ [Delete] 키를 누릅니다. “END” 괘선은 삭제할 수 없습니다. ④ [Delete] 키를 눌러 니다. 2 - 24 을 삭제합 2.7.3 행의 삽입과 삭제 (1) 행 삽입 수정할 회로 왼쪽 회로에 행을 삽입하는 방법에 대 해 설명하겠습니다. ① 삽입할 행(위치는 임의)을 클릭하 여 이동합니다. ① 클릭하여 커서를 이동합니다! 커서 위로 삽입됩니다. ② 회로 작성 화면에서 마우스 오른쪽 버튼을 클릭하여 메뉴를 표시합니 다. ② 메뉴가 나타 납니다! 2 - 25 ③ [행 삽입] ( ) 메뉴를 클릭합니다. ③ 클릭합니다! ④ 커서 행의 상단에 1행이 삽입됩니다. ④ 행이 삽입됩니다! ⑤ 툴 바의 을 클릭하면 회로 입력 화면이 나타나므로 “X7”을 입력합니 다. ⑥ 올바르게 입력하였으면 ⑤ 을 클릭한 다음 입력합니다! ⑥ 클릭합니다! 클릭합니다. 2 - 26 OK 버튼을 ⑦ 회로가 나타납니다! ⑦ 입력한 회로 ⑨ 클릭합니다! ⑧ ⑧ 툴 바의 가 나타납니다. 을 클릭한 다음 “Y77” 을 입력합니다. 을 클릭한 다음 입력합니다! ⑨ OK 버튼을 클릭합니다. ⑩ 입력한 회로 ( ⑩ 회로가 나타납니다! 납니다. 2 - 27 ) 가 나타 (2) 행 삭제 수정할 회로 왼쪽 회로에서 행을 삭제하는 방법에 대 해 설명하겠습니다. ① 삭제할 행(위치는 임의)을 클릭하여 ① 클릭하여 커서를 이동합니다! 이동합니다. ② 회로 작성 화면에서 마우스 오른쪽 버튼을 클릭하여 메뉴를 표시합니다. ② 메뉴가 나타납 니다! 2 - 28 ③ [행 삭제] ( ) 메 뉴를 클릭합니다. ③ 클릭합니다! ④ 커서 행이 1행 삭제됩니다. ④ 행이 삭제됩니다! 2 - 29 2.7.4 회로의 잘라내기와 복사 수정할 회로 왼쪽 회로에 대한 잘라내기와 복사 방법에 대해 설명하겠습니다. ① 잘라낼 회로의 선두 위치를 클릭 잘라내기, 복사 범위 합니다. ① 클릭하여 커서를 이동합니다! ② 드래그하여 잘라낼 범위를 지정합 ② 드래그하여 범위를 지정합니다! 니다. 지정된 범위는 반전되어 표 시됩니다. 회로 블록 단위로 지정할 경우 스텝 번호가 표시되어 있는 위치를 클릭하면 세로 방향 으로 드래그하여 간단하게 범위를 지정할 수 있습니다. ③ 툴 바의 기]( ③ 을 클릭하여 잘라내 기를 실행합니다! 또는 [편집]→[잘라내 )를 선택하면 지 정한 범위의 회로를 잘라냅니다. 2 - 30 ④ 복사할 회로의 선두 위치를 클릭하여 이동합니다. ⑤ 드래그하여 복사할 범위를 지정합니 다. 지정된 범위는 반전되어 표시됩 니다. 회로 블록 단위로 지정할 경우 스텝 번 호가 표시되어 있는 위치를 클릭하면 세 로 방향으로 드래그하여 간단하게 범위 를 지정할 수 있습니다. ⑥ 툴 바의 ⑥ 을 클릭합니다! ( 또는 [편집]→[복사] )를 선택합니다. ⑦ 복사할 위치 하단의 회로 블록 내(위 치는 임의)를 클릭하여 커서를 이동 합니다. 이 회로 블록의 상단에 복사됩니다! ⑦ 클릭하여 커서를 이동합니다! 2 - 31 ⑧ 툴 바의 또는 [편집]→[붙여넣기] 메뉴( )를 선택합니다. ⑧ 클릭합니다! ⑨ 회로 블록이 복사됩니다. ⑨ 복사 완료 2 - 32 2.8 2.8.1 작성한 회로의 저장 신규 또는 기존 프로젝트의 저장 ① 툴 바의 또는 [프로젝트]→[저 장] 메뉴( )를 선택합 니다. ① 클릭합니다! 기존 프로젝트를 저장할 경우에는 이 상으로 저장이 완료됩니다. (새로 저장할 경우만) ② 프로젝트를 저장할 곳을 지정합니 다. ③ 프로젝트명을 설정합니다! ② 프로젝트를 저장할 곳을 설정합니다! ③ 프로젝트명을 설정합니다. ⑤ 클릭합니다! ④ 필요하면 표제어를 설정합니다. ⑤ 각 항목의 설정이 끝나면 저장 버튼을 클릭합니다. ④ 표제어를 설정합니다! (임의) ⑥ 예 버튼을 클릭합니다. 저장이 완료됩니다. ⑥ 클릭합니다! 참 고 프로젝트명은 1바이트 문자로 8문자(2바이트 문자는 4문자)까지 가능합니다. 첫번째 문자는 반드시 영문으로 하고, 나머지는 영문이나 숫자, -(하이픈), _(언더라인)만 을 사용할 수 있습니다. 프로젝트 경로 + 프로젝트명의 문자 수는 1바이트로 150문자(2바이트인 경우는 75문 자)까지입니다. 표제어의 문자 수는 1바이트로 32문자(2바이트인 경우는 16문자)까지입니다. 2 - 33 2.8.2 다른 프로젝트명으로 저장 ① [프로젝트]→[다른 이름으로 저장] 메뉴를 클릭합니다. ① 클릭합니다! ② 프로젝트를 저장할 곳을 지정합니 다. ③ 프로젝트명을 설정합니다! ② 프로젝트를 저장할 곳을 설정합니다! ⑤ 클릭합니다! ③ 프로젝트명을 설정합니다. ④ 필요하면 표제어를 설정합니다. ⑤ 각 항목의 설정이 끝나면 저장 버 튼을 클릭합니다. ④ 표제어를 설정합니다! (임의) ⑥ ⑥ 클릭합니다! 예 버튼을 클릭합니다. 이상으 로 저장이 완료됩니다. 2 - 34 2.9 저장한 프로젝트 열기 ① 툴 바의 ① 클릭합니다! 또는 [프로젝트]→[프 로젝트 열기] 메뉴( )를 클릭합니다. ② 프로젝트가 저장되어 있는 곳을 지 정합니다. ② 프로젝트를 저장할 곳을 지정합니다! ③ 클릭합니다! ④ 클릭합니다! ③ 프로젝트를 클릭합니다. ④ 클릭하여 지정한 프로젝트를 엽니 다. 이러한 경우에는 대화 상자 화면이 나타납니다. (다른 프로젝트가 열려 있을 경우) [예]……………프로젝트를 종료합니다. [아니오]………GPPW를 종료합니다. (다른 프로젝트가 열려 있어 회로가 변환되지 않는 경우) [예]……………변환하지 않고 GPPW를 종료 합니다. [아니오]………GPPW를 종료하지 않습니다 (회로 편집을 계속합니다.). (다른 프로젝트가 열려 있어 저장되지 않는 경우) [예]……………프로젝트를 저장한 다음에 종료합니다. [아니오]………프로젝트를 저장하지 않고 종료합니다. [취소]…………프로젝트를 종료하지 않습니 다. 2 - 35 ڵ'۔չ࠾ԅ ڗʶЗڜհ̗ࣈ ؿЊࡳ 3.1 디바이스 디바이스란 시퀀서 CPU 내에 있는 프로그램용 이미지 소자를 말하며, 프 로그램을 구성하는 요소(접점, 코일 등)라고 할 수 있습니다. 디바이스 번호 디바이스 기호 디바이스 종류 X 입력 Y 출력 M 내부 릴레이 L 래치 릴레이 S 스텝 릴레이 B 링크 릴레이 F 애넌시애이터 T 타이머 C 카운터 W 데이터 레지스터 링크 레지스터 R 파일 레지스터 A 어큐뮬레이터 Z, V N P 인덱스 레지스터 네스팅 포인터 인터럽트용 포인터 D I K 10진 정수 H 16진 정수 설명 버튼, 변환 스위치, 리밋 스위치, 디지털 스위치 등과 같은 외부기기로 시퀀서에 명령이나 데이터를 전달하는 것입니 다. 솔레노이드, 전자 개폐기, 신호등, 디지털 표시기 등에 프 로그램 제어 결과를 출력하는 것입니다. 외부로 직접 출력할 수 없는 시퀀서 내부의 보조 릴레이입 니다. 외부로 직접 출력할 수 없는 시퀀서 내부의 보조 릴레이로 정전 유지가 가능합니다. 외부로 직접 출력할 수 없는 시퀀서 내부의 보조 릴레이입 니다. 데이터 링크용 내부 릴레이로 외부로 출력은 할 수 없습니 다. 링크 초기화 정보 설정에서 설정하지 않은 범위는 내부 릴레이로서 사용할 수 있습니다. 고장 검출용으로 미리 고장 검출 프로그램을 작성하여 RUN 중에 ON하면 특수 레지스터D에 번호가 저장됩니다. 가산식 타이머로 100ms 타이머, 10ms 타이머, 100ms 적산 타이머의 3종류가 있습니다. 가산식이며 시퀀스 프로그램에서 사용하는 카운터와 인터럽 트 시퀀스 프로그램에서 사용하는 인터럽트 카운터의 2종류 가 있습니다. 시퀀서에서 데이터를 저장하는 메모리입니다. 데이터 링크 시의 데이터 레지스터입니다. 데이터 레지스터의 확장용으로 사용자 메모리 영역을 사용 합니다. 기본 명령, 응용 명령의 연산 결과를 저장하는 데이터 레지 스터입니다. 디바이스(X, Y, M, L, B, F, T, C, D, W, R, K, H, P)의 수 식용으로 사용합니다. 마스터 컨트롤의 네스팅입니다. 분기 명령(CJ, SCJ, CALL, JMP)의 분기를 나타냅니다. 인터럽트 요인이 발생하였을 때에 인터럽트 요인에 대응하 는 인터럽트 프로그램의 포인터입니다. 타이머나 카운터의 설정값, 포인터 번호, 인터럽트 포인터 번호, 비트 디바이스의 자릿수 지정, 기본 명령, 응용 명령 의 수치 지정에 사용합니다. 기본 명령, 응용 명령의 수치 지정에 사용합니다. 3-1 비고 • 비트 디바이스 • 주로 ON, OFF 신호 를 취급합 니다. • 워드 디바이스 • 주로 데이 터를 취급 합니다. • 16비트로 1워드를 구성합니 다. 3.2 파라미터 파라미터란 “어떤 제어 대상에 대한 제어를 수행하기 위해 일시적으로 부여된 값”을 말하며, 시퀀서의 기본 기능인 프로그램 용량, 코멘트 용량, 릴레이나 타이머의 종류와 개수 등을 파라미터로 설정할 수 있습니다. 파라미터 모드 기능은 아래와 같이 PLC 파라미터와 네트워크 파라미터로 분류됩니다. 메모리 용량 설정 PLC RAS 설정 PLC 파라미터 PLC 시스템 설정 I/O 할당 설정 프로그램 용량 ..............시퀀스 프로그램+마이콤 프로그램 용량 설정 코멘트 용량 ................시퀀스 프로그램에서 사용하는 코멘트 용량 설정 확장 코멘트 용량 ...........시퀀스 프로그램에서 사용하는 확장 코멘트 용량 설정 파일 레지스터 용량 .........파일 레지스터 점수 설정 디버그용 용량 ..............다른 형식의 파일로 호출한 데이터에 디버그 용량이 설정되어 있으면 수치가 표시됩니다. 메모리 용량 정보 ...........메인 용량, 서브 용량, 전체 용량 값을 표시합니다. WDT 설정 감시 타이머 설정 오류 시의 운전 모드........ 연산 오류, 퓨즈 절단, I/O 유니트 조회 오류, 특수 유 니트 접근 오류의 운전 정지 또는 계속을 설정합 니다. 애넌시애이터 보기 모드..... 애넌시애이터 보기 유/무 RUN→PAUSE 설정 ............원격 RUN→PAUSE 접점 설정 시스템 인터럽트 설정 .......인터럽트 프로그램에서 사용하는 카운터 범위 설정 STOP→RUN 출력 모드 ....... STOP→RUN 시의 출력 상태 설정 데이터 교신 요구 일괄 처리 .계산기 링크 유니트 등의 데이터 교신 요구를 스캔 타임의 END 처리로 처리할 것인지를 설정합니다. A2C용 원격 설정 ............원격 I/O, 원격 터미널에 대해 동작 내용과 통신 방 법을 설정합니다. 시스템의 I/O 할당(공백 슬롯을 포함하여 0, 16, ......................................................32, 48, 64점 단위로 설정)과 유니트 타입을 등록합 니다. 디바이스 설정 ...................................................... 고속 타이머, 적산 타이머, 래치 범위 등을 설정합 니다. MELSECNET 네트워크 파라미터 모드 (AnUCPU) 링크 설정 ...................링크 기지국 수, 입력, 출력, 링크 릴레이, 링크 레지스터, 감시 시간을 설정합니다. (AnUCPU) 데이터 링크 파라미터........ 네트워크 시스템을 구축하기 위한 각종 파라미터를 설정합니다. 루틴 파라미터............... 다계층 네트워크의 트랜젠트 전송 경로를 설정 합니다. MELSECNET/MINI ......................................... MELSECNET/MINI에서 I/O 리프레시를 자동으로 수행하도록 설정할 수 있습니다. 3-2 하드디스크에 인스톨된 GPPW를 기동하면 설정되어 있던 파라미터를 불 러옵니다. 이 값을 기본값(초기값)이라고 합니다. 시퀀서에서는 기본값을 그대로 사용할 수 있지만, 사용 목적에 맞추어 일정 범위 내에서 변경할 수도 있습니다. 조작 예 ............ 프로그램 용량 변경 프로그램 용량의 기본값은 6K 스텝입니다. [화면] [키 조작] [설명] 아래 [PLC 파라미터]를 더블 클릭하면 화면이 나타납니다. 메인 보기 테두리에서 마우스 왼쪽 버튼을 클 릭합니다. 1K 스텝으로 설정합니다. Delete 키를 누릅니다. 1 을 입력 합니다. 을 클릭합니다. 설정을 종료합니다. 파라미터 메뉴 화면으로 돌아갑니다. 3-3 ڵ(۔չ࠾ԅ ύ͋ê İї ύ͋ % 4.1 번 호 1 2 3 4 5 6 7 8 이 장에서 설명할 명령의 종류 명령 기호 (이름) 로드 로드 인버스 And And 인버스 Or Or 인버스 And 블록 Or 블록 기능 도면 보기 (사용 디바이스) 번 호 논리 연산 시작 a 접점 연산 시작 9 논리 부정 연산 시작 b 접점 연산 시 10 논리곱 a 접점 직렬 연결 11 논리곱 부정 b 접점 직렬 연결 12 논리합 a 접점 병렬 연결 13 논리합 부정 b 접점 병렬 연결 14 논리 블록 간의 AND 블록 간의 직렬 연결 논리 블록 간의 OR 블록 간의 병렬 연결 * 15 16 명령 기호 (이름) 아웃 마스터 컨트롤 마스터 컨트롤 리셋 기능 코일 출력 마스터 컨트롤 시작 네스팅 디바이스 세트 리셋 디바이스 리셋 시프트 p 펄스 네스팅 마스터 컨트롤 종료 세트 시프트 도면 보기 (사용 디바이스) 디바이스의 1 비트 시프트 디바이스의 1 비트 시프 (펄스 동작) 펄스 입력 신호 가 올라갈 때에 프로 그램 1주기 분의 펄스 가 발생 부분에 관한 자세한 설명은 PC 초보에 관한 교재나 프로그래밍 매뉴얼을 참 조하십시오. 4-1 번 호 17 18 19 20 21 22 23 24 명령 기호 (이름) 펄스 푸시 리드 펌프 노프 시제이 에스 시제이 콜 번 호 명령 기호 (이름) 펄스 입력 신호 가 내려갈 때에 프로 그램 1주기 분의 펄스 가 발생 25 콜 피 분기 시작 26 중간 분기 27 분기 종료 28 도면 보기 (사용 디바이스) 기능 에프 앤드 앤드 서브 루틴 프로그램 호출 (펄스 동작) 도면 보기 (사용 디바이스) 포인터 서브 루틴 프로그램의 리턴 메인 루틴 프로그램의 종료 프로그램 종료 END 처리 프로그램의 마지막에 반드시 포함 프로그램 말소 또는 공백용 무처리 조건 점프 (즉시 실행형) 조건 점프 1스캔 후 실행형 서브 루틴 프로그램 호출 * 리턴 기능 포인터 포인터 포인터 부분에 관한 자세한 설명은 PC 초보에 관한 교재나 프로그래밍 매뉴얼을 참 조하십시오. 4-2 4.2 OUT와 SET RST의 차이 경로 이름 프로젝트명 A:¥SCHOOL B-1 OUT 명령 OUT 명령은 입력 조건이 “ON”으로 되면 지정된 디바이스를 “ON”으로 하고, 입력 조건이 OFF가 되면 지정된 디바이스를 “OFF”로 합니다. [타이밍 차트] 경로 이름 프로젝트명 A:¥SCHOOL B-2 SET RST 명령 SET 명령은 입력 조건이 “ON”으로 되면 지정된 디바이스를 “ON”으로 하고, 입력 조건이 OFF가 되어도 ON 상태를 유지합니다. [타이밍 차트] 4-3 4.3 타이머 계측 경로 이름 프로젝트명 A:¥SCHOOL B-3 타이머 설정값(시한....3.0초) * OUT T는 1스텝 명령입니다. 타이머 접점은 코일을 여 [타이밍 차트] 자한 다음 설정된 시간만 X5 접점 큼 늦게 동작합니다(온 딜 레이 타이머). 타이머 설정값은 T0 코일 K1~K32767입니다. 3.0초 100ms 타이머 0.1~3276.7초 T0a 접점ㆍY70 코일 10ms 타이머 0.01~327.67초 T0b 접점ㆍY71 코일 타이머 설정값이 음수이거 나 0일 때는 시한이 무한 대가 되어 작동하지 않습 니다. 타이머에는 다음 3종류가 있습니다. 종류 100ms 타이머 .......... 100ms 단위로 카운트 10ms 타이머 ............ 10ms 단위로 카운트 적산 타이머 ............ 100ms 단위로 시간을 적산 타이머 번호(초기값) 파라미터에서 각 타이머 수를 바꿀 수 있습니다. T0~T199(200개) 단 100ms, 10ms, 적산 타이머의 순으로 8개 단 위로 설정합니다. 적산 타이머 적산 타이머에 관한 설명은 6.4를 참조하십시오. 4-4 4.4 카운터 계수 경로 이름 프로젝트명 A:¥SCHOOL B-4 카운터 설정값 카운터는 입력 신호가 올 라갈 때에 카운트합니다. 카운트 업 후에는 입력 신 * OUT C는 1스텝 명령입니다. 호가 있어도 카운트하지 않습니다. 한 번 카운트 업하면 RST [타이밍 차트] 명령이 실행될 때까지 접 점 상태나 현재값(카운터 X1 접점 의 카운트 값)이 변하지 않습니다. C20 코일 카운트 업하기 전에 RST 명령을 실행하면 현재값이 (카운터의 현재값) 0으로 바뀝니다. C20 접점ㆍY72 코일 카운터의 설정값은 K1~K32767입니다(K0~K32768은 K1과 같습니다.). X7 접점(RST 명령 입력) 설정값이 0~-32768일 때는 설정값이 1일 때와 같이 접점은 ON합니다. 설정값의 설정에는 K에 의한 직접 설정 이외에 D(데이터 레지스터)에 의한 간접 설정이 있습니다. 카운터 C30은 입력 신호 설정값 X0가 데이터 레지스터 D10 의 내용(예를 들어 24)과 디지털 스위치 같은 수만큼 ON하면 카운 트 업합니다. 외부의 디지털 스위치로 설정한 값을 카운터 설정 값으로 할 때에 편리합니 다. 타이머의 경우도 카운터와 같이 데이터 레지스터 D에 의한 간접 설정이 가능합니다. 4-5 경로 이름 프로젝트명 A:¥SCHOOL EX1 회로 예 컨베이어 운전 명령(X0) 스위치를 ON하면 3초 간 버저(Y70)가 울린 다음 컨베이어가 운전(Y71)을 시작합니다. 제품이 6개 반송된 것을 검출(X1)하면 컨베이어는 자동으로 정지합니다. 센서 컨베이어 조작판 운전 모터 제어판 버저 아래와 같은 회로를 작성하여 동작을 확인하십시오. 운전 중 버저 3초 타이머 컨베이어 운전 제품 개수 카운터 4-6 조작 순서 (1) 프로젝트 신규 작성 ① 툴 바의 을 클릭합니다. 클릭 ② 프로젝트 신규 작성 화면이 나타납니다. PLC 시리즈가 ACPU, PC 타입이 A3A인 것을 확인한 다음 OK 버 튼을 클릭합니다. 클릭 ③ 작성 중인 프로젝트가 있을 경우에는 프로젝트의 저장을 확인하 는 화면이 나타납니다. 아니오 버튼을 클릭합니다. 클릭 ④ 로젝트를 새로 작성할 수 있는 상태가 됩니다. 4-7 (2) 로그램 작성 [키보드를 사용하여 회로를 작성할 경우] 변환 [툴 버튼을 사용하여 회로를 작성할 경우] ① 툴 바의 클릭한 다음 에 입력합니다 을 클릭하면 회로 입 력 화면이 나타납니다. 클릭 ② 키보드로 “X0”을 입력하고 OK 버튼을 클릭합니다. ③ 툴 바의 클릭한 다음 에 입력합니다 을 클릭하면 회로 입 력 화면이 나타납니다. 클릭 ④ 키보드로 “C0”을 입력하고 OK 버튼을 클릭합니다. 클릭한 다음 에 입력합니다 ⑤ 툴 바의 클릭 을 클릭하면 회로 입 력 화면이 나타납니다. ⑥ 키보드로 “M0”을 입력하고 OK 버튼을 클릭합니다. ⑦ 회로 작성이 끝나면 툴 바의 을 클릭합니다. 클릭 4-8 (3) PLC로의 저장 ① PLC의 메모리에 저장해 주십시오. CPU가 RUN일 때 스위치를 STOP합니다. 툴 바의 을 클릭합니다. PLC 저장 화면이 나타납니다. 클릭 ② 파라미터+프로그램 버튼을 클릭하면 저장된 프로그램과 파라미터 의 체크 박스에 ③ 이 표시됩니다. 실행 버튼을 클릭합니다. 클릭 저장 데이터에 MAIN 과 PLC 파라미터가 표시되면 [실행] 버 튼을 클릭하십시오. ④ PLC 저장 확인 화면에서 클릭 4-9 예 버튼을 클릭합니다. ⑤ PLC 저장 상황에 대한 화면이 순서대로 나타납니다. ⑥ 확인 버튼을 클릭합니다. 클릭 4 - 10 (4) 회로 모니터 회로를 모니터하십시오. CPU를 RESET CPU가 RUN일 때 스위치를 RUN ① 툴 바의 을 클릭합니다. 클릭 ② 회로(저장) 화면이 회로 모니터 화면이 됩니다. 실습기 조작 ① 푸시 버튼 스위치 X0를 ON하면 Y70이 ON함과 동시에 T0이 작동하기 시 작합니다. ② 3초 후에 타이머 T0은 타임 업하여 Y70이 OFF가 되고, Y71은 ON합니다. ③ 푸시 버튼 스위치 X1을 ON/OFF하면 카운터 C0가 카운트를 시작하고, 카운트 업(6회 ON한 다음)하면 Y71이 OFF합니다. 4 - 11 4.5 PLS 펄스(입력 조건이 올라갈 때 지정된 디바이스의 1스캔 ON 명령) PLF 펄스(입력 조건이 내려갈 때 지정된 디바이스의 1스캔 ON 명령) 경로 이름 프로젝트명 A:¥SCHOOL B-5 PLS 명령은 명령 조건이 OFF에서 ON으로 될 때에 지정된 디바이스를 1 스캔만 ON합니다. [타이밍 차트] 1스캔 1스캔 PLF 명령은 명령 조건이 ON에서 OFF로 될 때에 지정된 디바이스를 1스 캔만 ON합니다. [타이밍 차트] 1스캔 4 - 12 1스캔 용 도 운전 조건 대기(대기중) 프로그램에 사용할 수 있습니다. 운전 명령 운전 조건 [타이밍 차트] (명령) (운전) 5초 조건 대기 시간 운전 조건 4 - 13 정수 스텝수 자리지정 워드(16비트) 디바이스 레벨 비트 장치 포인터 사용 가능한 장치 이동하는 물체의 통과를 검출하는 프로그램에 사용할 수 있습니다. 제품이 통과한 것을 검출하여 다음 가공을 시작합니다. 제품 검출기 검출기 (검출 입력 X0) 반송 컨베이어 [타이밍 차트] PLS, PLF 명령은 이렇게도 사용할 수 있습니다. 첫번째 입력이 ON에서 OFF로 될 때에 출력을 일정 시간 기동하는 프로그램에 사용할 수 있습니다. [타이밍 차트] 입력 출력 설정 시한 10초 펄스 폭 [프로그램 예] 경로 이름 프로젝트명 4 - 14 A:¥SCHOOL B-6 PLS, PLF 명령은 이렇게도 사용할 수 있습니다. 두 번째 푸시 버튼 스위치를 누를 때마다 ON과 OFF를 반복하는 반복 동작 프로 그램에 사용할 수 있습니다. PLS 명령을 사용하면 푸시 버튼 스위치를 눌렀을 때에 동작하는 프로 그램이 되고, PLF 명령을 사용하면 손을 떼었을 때에 동작하는 프로 그램이 됩니다.] [타이밍 차트] [프로그램 예] 경로 이름 프로젝트명 4 - 15 A:¥SCHOOL B-7 경로 이름 프로젝트명 A:¥SCHOOL EX2 회로 예 아래와 같은 회로를 작성하여 동작을 확인하십시오. [타이밍 차트] 참 고 다음 타이밍 차트는 OUT 명령에 의한 자기 유지 회로의 차트입니다. PLS 명령에 의한 자기 유지 회로의 타이밍 차트와 비교해 보십시오. 4 - 16 조작 순서 아래 조작은 4.4의 조작 순서 와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 실습기 조작 스위치 X2를 ON하면 Y70이 ON하고, X0을 ON하면 Y70이 OFF합니다(X2가 ON인 상태에서도 X0을 ON하면 Y70은 OFF합니다.). 스위치 X3을 OFF하면 Y71이 ON하고, X1을 ON하면 Y71이 OFF합니다. 관련 연습 문제 TEST3 4 - 17 4.6 MC 마스터 컨트롤 (시작) MCR 마스터 컨트롤 리셋 (종료) 경로 이름 프로젝트명 * A:¥SCHOOL B-8 은 불러오기 모드로 하면 나타납니다. 위 프로그램이 기본적인 형태입니다. (이하 MC~MCR로 한다.) 이 명령에서 네스팅(N) 번호로는 N0~N7의 8개를 사용할 수 있습니다. MC~MCR에서의 스캔 타임은 거의 변하지 않습니다. MC~MCR에서 프로그램의 디바이스 상태는 다음과 같이 됩니다. 모두 OFF로 되는 것OUT 명령 그 상태를 유지하는 것 SET, RST, SFT 명령, 카운터 값, 적산 타이머 값 수치가 0으로 되는 것 100ms 타이머, 10ms 타이머 참 고 마스터 컨트롤의 접점은 회로 작성 시에 직접 입 력할 필요가 없습니다. 회로를 작성하고 변환 ( )한 다음 불러오기 모드로 하면 자동으로 삽입됩니다. 용 도 동 운전과 자동 운전을 변환하는 프로그램에 사용할 수 있습니다(회로 예 를 참조하십시오.). 스텝수 정수 레벨 워드(16비트) 디바이스 자리지정 비트 디바이스 포인터 사용 가능한 디바이스 MC 명령은 5스텝, MCR 명령은 3스텝이 됩니다. 4 - 18 네스트 구조의 MC~MCR 프로그램 예 MC, MCR 명령은 다음 프로그램 예와 같이 네스트 구조로도 사용할 수 있습니다. 경로 이름 프로젝트명 A:¥SCHOOL B-9 MC~MCR 프로그램 ⓐ의 안쪽에 MC~MCR 프로그램 ⓑ를 넣을 수도 있습니 다(네스트 구조). 단, 이러한 경우에는 ① MC의 N의 번호로는 작은 번호부터 사용하십시오. ② MCR의 N의 번호로는 MC에서 사용하는 번호 가운데 큰 번호부터 사 용하십시오. 위 예와 같이 프로그램 ⓐ의 바깥쪽에 프로그램 ⓒ를 넣을 수 있습니 다. 이 때 N의 번호로는 같은 번호를 사용해도 됩니다. 내부 릴레이 M의 번호는 MC별로 다르게 하십시오. MC의 M 은 프로그램 예 ⓓ와 같이 접점으로 사용할 수 있습니다. 4 - 19 경로 이름 프로젝트명 A:¥SCHOOL EX3 회로 예 다음 회로는 MC, MCR 명령을 사용해서 수동 운전과 자동 운전을 변환하 는 프로그램입니다. X7을 OFF로 하여 수동 운전을 선택하였을 때, ① X2를 ON으로 하면 저속 운전이 됩니다. ② X3을 ON으로 하면 고속 운전이 됩니다. X7을 ON으로 하여 자동 운전을 선택하였을 때는 다음과 같이 기동 후 에 3초 간 저속 운전을 한 다음 10초 간 고속 운전을 하고 정지합니다. 고속 저속 3초 10초 수동 키 입력 불필요 수동 운전 저속 명령 수동 운전 고속 명령 자동 키 입력 불필요 자동 기동 키 입력 불필요 자동 운전 저속 명령 자동 운전 고속 명령 저속 명령 고속 명령 4 - 20 조작 순서 아래 조작은 4.4의 조작 순서 와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 실습기 조작 스위치 X7을 OFF로 하면 수동 운전이 선택됩니다. 스위치 X2를 ON으로 하면 Y71이 점등하여 저속 운전을 합니다. 또한 스위치 X3을 ON으로 하면 Y72가 점등하여 고속 운전을 합니다. 스위치 X7을 ON으로 하면 자동 운전이 선택됩니다. 스위치 X0을 ON으로 하면 Y70이 점등하여 자동 기동 중임을 표시함과 동시에 Y71이 3초 간 점등하고, 그 사이에 저속 운전을 합니다. 그리 고 Y72가 10초 간 점등하고 그 사이에 고속 운전을 한 다음 정지합니 다(Y70, Y71, Y72는 모두 소등됩니다.). 주 의 MCR 명령이 한 곳에 모여 있는 네스트 구조일 때는 가장 작은 네스팅 (N) 번호 하나로 모든 마스터 컨트롤을 끝낼 수 있습니다. 4 - 21 4.7 CJ • SCJ • CALL • RET • FEND 경로 이름 프로젝트명 4.7.1 A:¥SCHOOL EX3 CJ (조건 점프 .................. 즉시 실행 조건 점프) SCJ (에스 조건 점프 ................. 스캔 한번 후의 실행 조건 점프) 포인터 CJ 명령은 입력 조건이 ON일 때 바로 지정된 곳(포인터 번호)으로 이 동하여 프로그램을 실행합니다. 입력 조건이 OFF일 때는 이동하지 않습니다. SCJ 명령은 입력 조건이 ON으로 되면 현재의 스캔은 실행하지만, 다음 스캔은 지정된 곳(포인터 번호)부터 실행합니다. 입력 조건이 OFF일 때는 이동하지 않습니다. SCJ 명령은 이동하기 전에 실행해야 할 것이 있을 때에 사용합니다. 예를 들어, 출력을 ON으로 하거나 반대로 리셋 할 때에 사용합니다. [타이밍 차트] 입력 조건 스캔 실행 스캔 실행 스캔 실행 스캔 실행 스캔 한번 스캔 한번 4 - 22 주 의 CJ와 SCJ 명령의 포인터 번호로는 P0~255를 사용할 수 있습니다. 단, P255는 이동할 곳이 END 명령입니다. CJ와 SCJ 명령으로 프로그램을 블록별로 처리할 때는 다음과 같이 FEND 명령을 사용하십시오(FEND에 관해서는 나중에 설명하겠습니다.). 시작 시퀀스 프로그램A CJ 명령 비실행 시 스텝 입력 조건 시퀀스 프로그램A CJ 명령 실행 시 스텝 시퀀스 프로그램B 입력 조건이 ON인가? 시퀀스 프로그램C 시퀀스 프로그램B 시퀀스 프로그램C CJ 명령으로 이동된 회로는 CJ 명령을 실행하기 전 상태를 유지합니다. (CJ 명령 실행 전) (CJ 명령 실행 중) X0가 ON으로 되어 있기 때문에 이 부분의 회로는 각 명령을 실 행하지 않습니다. 그렇기 때문에 X2를 OFF로 해도 Y72는 ON 상태를 유지합니다. 타이머 코일이 ON으로 된 다음 CJ, SCJ 명령으로 타이머 코일을 건너 뛰어도 현재값은 갱신됩니다. 타이머는 END 뒤에 현재값을 갱신하거나 접점을 ON/OFF하기 때문에 타 임 업을 하면 접점은 ON으로 됩니다. 워드(16비트) 디바이스 4 - 23 정수 스텝수 자리지정 레벨 비트 디바이스 포인터 사용 가능한 디바이스 경로 이름 프로젝트명 A:¥SCHOOL EX4 회로 예 아래와 같은 회로를 GPPA로 작성하여 실습기 CPU에 저장하고, “CJ 명령” 과 “SCJ 명령”의 차이를 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서 (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC에 저장 (4) 회로 모니터 4 - 24 와 같습니다. 실습기 조작 (1) X0, X1이 OFF일 때는 CJ, SCJ 명령이 (2) X0이 ON으로 되면 CJ 명령이 실행되어 실행되지 않습니다. P10으로 점프합니다. 따라서 Y70이 ON상태가 됩니다. 따라서 Y70은 ON상태를 유지합니다. [CJ, SCJ 명령 실행 전] [CJ 명령 실행] 첫 번째 스캔 이후 (3) X0을 OFF로 하고 X1을 ON으로 하면 SCJ 명령이 실행되어 두 번째 스캔 이후부터는 P10 으로 점프합니다. 따라서 Y70은 OFF로 됩니다. [SCJ 명령 실행] 첫 번째 스캔 [SCJ 명령 실행] 두 번째 스캔 이후 ON 후 두 번째 스캔 이후 ON 후 첫 번째 스캔 (4) Y71은 CJ, SCJ 명령과 관계없이 X3에 의해 ON/OFF합니다. CJ 명령과 SCJ 명령의 차이를 리스트로 설명하면 다음과 같습니다. X1 ON 후 [CJ] 관련 연습 문제 [SCJ] TEST4 4 - 25 두 번째 스캔 이후 첫 번째 스캔만 4.7.2 CALL(P) RET 콜 서브 루틴 프로그램 실행 리턴 시퀀스 프로그램 서브 루틴 프로그램 위와 같은 형태가 서브 루틴 프로그램을 실행시키는 CALL, RET 명령의 기본적인 사용법입니다. 이러한 형태를 지키지 않으면 오류가 발생하여 시퀀서가 정지합니다. 서브 루틴 프로그램은 하나의 프로그램 안에 여러 번 같은 내용을 실 행시킬 때 사용하는 프로그램입니다. 포인터 P로 시작하여 RET 명령에 의해 종료합니다. 포인터 P의 번호는 0~254입니다(CJ, SCJ 명령에서 사용하는 포인터 번 호는 공용입니다.). 서브 루틴 프로그램의 실행을 도식화하면 다음과 같습니다. (CALL P10 비실행 시) (CALL P10 실행 시) 시퀀스 프로그램 입력 조건 CALL 명령의 다음 스텝 시퀀스 프로그램 서브 루틴 프로그램 시퀀스 프로그램 서브 루틴 프로그램을 실행 4 - 26 네스팅 CALL(P) 명령의 네스팅은 5중까지 가능합니다. 시퀀스 프로그램 서브 루틴 프로그램 서브 루틴 프로그램 서브 루틴 프로그램 서브 루틴 프로그램 서브 루틴 프로그램 위 그림을 래더 회로로 표시하면 다음과 같습니다. 시퀀스 프로그램 P1서브 루틴 프로그램 P2서브 루틴 프로그램 P3서브 루틴 프로그램 P4서브 루틴 프로그램 P5서브 루틴 프로그램 워드(16비트) 디바이스 CALL(P) 명령은 3스텝이고 RET 명령은 1스텝입니다. 4 - 27 정수 스텝수 자리지정 레벨 비트 디바이스 포인터 사용 가능한 디바이스 경로 이름 프로젝트명 A:¥SCHOOL EX5 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기 CPU에 저장하고, “CALL 명 령”과 “RET 명령”을 실행시켜 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서 (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 4 - 28 와 같습니다. 실습기 조작 GPPW로 작성하여 실습기 CPU에 저장한 회로를 모니터하면서 동작을 확인 하십시오. (1) X2가 OFF일 때 X2가 OFF일 때의 연산 ① 0~FEND까지 연산합니다. ② X3을 ON/OFF하면 Y70이 ON/OFF합니다. ③ X4를 ON/OFF하여도 Y71은 바뀌지 않습니다. (2) X2가 ON일 때 ① P10의 서브 루틴을 실행한 다음 스텝4부터 FEND까지 연산을 합니다. ② X3을 ON/OFF하면 Y70이 ON/OFF합니다. ③ X4를 ON/OFF하면 Y71이 ON/OFF합니다. 관련 연습 문제 TEST5 4 - 29 X2가 ON일 때의 연산 4.7.3 FEND 에프 앤드 FEND는 1스텝 명령입니다. FEND 명령은 다음과 같은 경우에 END 명령과 같은 명령으로 사용합니 다. ① 시퀀스 프로그램을 회로 블록별로 연산하여 종료할 때 예를 들면 CJ, SCJ 명령과 함께 사용합니다. ② 서브 루틴 프로그램(CALL, RET 명령)을 사용할 때 ③ 인터럽트 프로그램을 사용할 때 FEND 명령을 실행하면 시퀀서는 타이머, 카운터의 현재값을 처리하거 나 자기 진단을 한 다음 0스텝부터 다시 연산을 시작합니다. CJ 명령을 실행하지 않을 때의 연산 시퀀스 프로그램 시퀀스 프로그램 CJ 명령에 의한 점프 시퀀스 프로그램 CJ 명령을 실행 하였을 때의 연산 서브 루틴 프로그램 인터럽트 프로그램 시퀀스 프로그램 (a) CJ 명령에 의한 회로 블록별 연산의 경우 (b) 서브 루틴 프로그램, 인터럽트 프로 그램이 있는 경우 주 의 FEND 명령은 시퀀스 프로그램에서 여러 번 사용할 수 있지만, 서브 루 틴 프로그램과 인터럽트 프로그램에서는 사용할 수 없습니다. FEND 명령은 시퀀스 프로그램(메인과 서브 모두)의 마지막에서는 사용 할 수 없습니다. 마지막에는 반드시 END 명령입니다. 참 고 인터럽트 프로그램은 통상 프로그램의 실행 중에 인터럽트 요인이 발 생하면 먼저 실행되는 프로그램을 말합니다. 4 - 30 경로 이름 프로젝트명 A:¥SCHOOL EX6 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기 CPU에 저장하고, “FEND 명 령”을 실행시켜 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서 (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC에 저장 (4) 회로 모니터 4 - 31 와 같습니다. 실습기 조작 GPPW로 작성하여 실습기 CPU에 저장한 회로를 모니터하면서 동작을 확인 하십시오. (1) X3이 OFF일 때 ① 0~FEND까지 연산합니다. X3이 OFF일 때의 연산 ② X4를 ON/OFF하면 Y70이 ON/OFF합니다. ③ X5를 ON/OFF하여도 Y72는 CJ 명령에 의한 점프 바뀌지 않습니다. (2) X3이 ON일 때 ① CJ 명령에 의해 P10 포인터로 점프합니다. ② X4를 ON/OFF하여도 Y70은 바뀌지 않습니다. ③ X5를 ON/OFF하면 Y72가 ON/OFF합니다. 관련 연습 문제 TEST4 4 - 32 X3이 ON일 때의 연산 경로 이름 프로젝트명 4.8 4.8.1 A:¥SCHOOL EX5 연습 문제 연습 문제1 LD~NOP X0이 ON하면 Y70이 자기 유지를 하고 0.5초마다 Y74와 Y77이 교대로 깜 박입니다. X1이 ON하면 Y70이 OFF하고, Y74와 Y77의 깜박임도 정지하는 프로그램입 니다. [타이밍 차트] 0.5초 0.5초 아래 프로그램의 0.5초 0.5초 부분을 완성시켜 GPPW으로 프로그램을 작성하고 실제로 실습기에서 확인하십시오. 4 - 33 경로 이름 프로젝트명 4.8.2 A:¥SCHOOL TEST2 연습 문제2 SET, RST X0이 ON하면 Y70이 1초 간격으로 깜박이고고, Y70이 10회 깜박이면 5초 간 깜박임이 정지한 다음 또다시 깜박임을 시작합니다. 그리고 X1이 ON하면 Y70의 깜박임을 정지시킬 수 있는 프로그램입니다. 아래 프로그램의 부분을 완성시켜 GPPW으로 프로그램을 작성하고 실제로 실습기에서 확인하십시오. 4 - 34 힌트 (1) 타이밍 차트는 다음과 같습니다. 재시작 접점 1초 접점 1초 1초1초 스캔 한번 1초 접점 C0의 카운트 값 (2) 기본적인 플리커 회로와 타이밍 차트는 다음과 같습니다. [회로] [타이밍 차트] 시작 T0 접점 1초 T1 접점 참 1초 스캔 한번 고 플리커 회로는 다음과 같이 클록을 발생시키는 특수 릴레이를 사용 하여 만들 수 있습니다. 왼쪽 회로는 M9033(2초 클록)의 예입니다. (2초 클록) 그밖에도 M9030(0.1초 클록) M9031(0.2초 클록) M9032(1초 클록) M9034(1분 클록)가 있습니다. 전원이 ON일 때에 리셋하면 OFF부터 시작 합니다. 1초 1초 1초 4 - 35 경로 이름 프로젝트명 4.8.3 A:¥SCHOOL TEST3 연습 문제3 PLS, PLF X0이 올라갈 때는 Y70이 ON→OFF→ON→OFF ... 를 반복하고, X0이 내려갈 때는 Y71이 ON→OFF→ON→OFF ... 를 반복합니다. [타이밍 차트] 아래 프로그램의 부분을 완성시켜 GPPW으로 프로그램을 작성하고 실제로 실습기에서 확인하십시오. 4 - 36 경로 이름 프로젝트명 4.8.4 A:¥SCHOOL TEST4 연습 문제4 CJ, CALL, RET, FEND X7이 OFF일 때는 Y70과 Y71이 5초씩 깜박이고, X7이 ON일 때는 Y72와 Y73이 10초씩 깜박이는 회로입니다. 또한, X0이 ON하면 현재 깜박이고 있 는 Y70~Y73을 리셋하는 회로입니다. 아래 프로그램의 부분을 완성시켜 실습기에서 확인하십시오. 플립 플롭 회로 플립 플롭 회로 4 - 37 힌트 Y70, Y71 5초 깜박임 Y72, Y73 10초 깜박임 Y70~Y73 리셋 서브 루틴 프로그램 4 - 38 제4장 연습 문제의 해답 해 답 4 - 39 ڵ)۔İї ύ͋ & 5.1 수치(데이터) 표현 시퀀서 CPU에서는 모든 정보를 ON과 OFF 또는 1과 0 상태로 기억하여 처 리합니다. 따라서 수치 연산도 1과 0으로 처리한 수치인 2진수(Binary number 바이너리, BIN)로 처리합니다. 그러나 사람들은 일상 생활에서 알기 쉬운 10진수를 가장 많이 사용하고 있습니다. 따라서 시퀀서에 수치 명령을 전달하거나 시퀀서의 수치 정보 를 읽을 때(모니터)에는 10진수에서 2진수로 또는 2진수에서 10진수로 변 환해야 합니다. 프로그래밍 디바이스에는 이러한 변환이 가능한 기능이 포함되어 있습니다. 또 프로그램 명령에도 변환 기능이 있는 것이 있습니 다. 여기에서는 10진수와 2진수, 16진수, 2진화 10진수(BCD)의 표현과 관계 에 대해서 설명하겠습니다. 10진수 Decimal 10진수는 “0~9의 10종류의 기호를 사용하여 순서와 크기(양)를 나타내 는 수”라고 할 수 있습니다. 그리고 9가 되면 “10”으로 올라가도록 되어 있습니다. 예를 들어 10진수 “153”을 자리와 자릿수라는 측면에서 살펴보도록 하 겠습니다. 10진수 기호(0~9) “자릿수” “자릿수”는 다음과 같이 볼 수 있습니다. 자리 번호 (0, 1, 2 .. ) 10진수 MELSEC-A 시퀀서에서는 10진수를 표현할 때 “K”를 붙입니다. 5-1 2진수 Binary ... BIN 2진수는 “0과 1의 2종류 기호로 순서와 크기를 나타내는 수”라고 할 수 있습니다. 그리고 1이 되면 “10”으로 올라가도록 되어 있습니다. 0, 1의 1자리를 비트라고 합니다. 2진수 10진수 예를 들어 2진수는 10진수로 얼마가 되는지 살펴보도록 하겠습니다. “10011101” 10진수의 자리 번호와 자릿수와 같이 오른쪽부터 비트 번호와 비트 무 게를 붙입니다. 비트 번호 2진수 (비트 번호) (“2진수”) 비트 무게 10진수와 같이 각 비트의 코드와 무게를 곱한 다음에 더해서 구합니다. 즉 2진수에서 “코드가 1인 곳에 비트 무게를 곱해서 더한 것”이 10진수가 됩니다. 5-2 16진수 Hexadecimal 16진수는 “0~9와 A~F의 16종류의 기호로 순서와 크기를 나타내는 수” 라고 할 수 있습니다. 그리고 F가 되면 “10”으로 올라가도록 되어 있 습니다. 10진수 16진수 자리 번호 16진수 2진수 “자릿수” 자리 번호 16진수 16진수의 1자리는 2진수의 4비트에 해당합니다. MELSEC-A 시퀀서에서는 16진수를 표현할 때 “H”를 붙입니다. 16진수는 입출력(X, Y) • 링크 릴레이(B) • 링크 레지스터(W) 번호에 사용됩니다. 5-3 2진화 10진수 Binary Coded Decimal .....BCD 2진화 10진수는 이름에서 알 수 있듯이 “10진수의 각 자리 숫자를 2진 수로 표현한 것”입니다. 자리 번호 10진수 자릿수 2진화 10진수 2진수의 비트 무게 따라서 2진화 10진수는 10진수의 0~9999(4자리의 최대수)를 16비트로 표현합니다. 각 비트의 무게는 다음과 같습니다. 4자리 3자리 2자리 1자리 2진화 10진수는 다음과 같은 경우에 사용합니다. ① 디지털 스위치의 출력 신호 ② 7소자 표시기(디지털 표시기)의 신호 BCD 코드 디지털 스위치 5-4 10진수에서 2진수로의 변환 방법 10진수인 “157”을 2진수로 변환하는 예 비트 무게 몫 나머지 10진수에서 16진수로의 변환 방법 10진수인 “157”을 16진수로 변환하는 예 5-5 MELSEC-A에서 취급하는 수치 보통 8비트를 1바이트, 16비트(2바이트)를 1워드라고 합니다. 1비트 1바이트 1워드(2바이트) MELSEC-A의 각 워드 디바이스의 레지스터는 16비트로 구성되어 있습니다. • 데이터 레지스터D • 타이머T의 현재값 • 카운터C의 현재값 • 파일 레지스터R 16비트(1워드)로 취급할 수 있는 수치에는 다음 2종류가 있습니다. ① 0~65535 ② -32768~0~+32767 MELSEC-A는 ②의 범위입니다. 음수는 양수(1~+32767)에 대한 2의 보수를 사용합니다. 2의 보수는 2진수의 각 비트에서 1을 0으로 0을 1로 바꾼 다음 최하위 비트에 1을 더한 것입니다. 예 1에 대한 2의 보수(-1)를 구하는 법 1과 0을 반전시킵니다 최하위 비트에 1을 더합니다. 최하위 비트는 음수일 때 반드시 1이 됩니다. 즉 부호 비트입니다. 5-6 2진화 10진수 2진수 5-7 10진수 16진수 실습기의 시스템 구성과 입출력 번호 CPU 유니트 전원 유니트 출력 유니트 입력 유니트 베이스 유니트 (64점) (64점) RS-422 I/O 패널 BCD 디지털 표시기(4자리 X 2) 변환기 BCD 디지털 표시기 BCD 디지털 스위치(4자리 X 2) 스냅 스위치 X 6 푸시 버튼 스위치(자동 복귀형) X 2 5-8 5.2 전송 명령 경로명 프로젝트명 5.2.1 A:\SCHOOL B-1 MOV(P) 데이터(16비트) 전송 입력 조건이 “ON”으로 되면 타이머 T0의 현재값을 데이터 레지스터 D0 으로 전송합니다. • ... 소스(송신하는 곳), ... 목적지(수신하는 곳) T0의 현재값은 레지스터에 2진수(BIN)로 저장되어 있습니다. 이것을 2 진수로 데이터 레지스터 D0으로 전송합니다. 전송 시에는 변환하지 않 습니다. 입력 조건이 “ON”으로 되면 10진수 157을 데이터 레지스터 D2로 전송 합니다. 데이터 레지스터 D2에는 2진수로 저장됩니다. 10진수(K)는 자 동으로 2진수로 변환되어 전송됩니다. 5-9 입력 조건이 “ON”으로 되면 16진수 4A9D를 데이터 레지스터 D3으로 전 송합니다. 16진수 2진수 비트 무게 MOV와 MOVP의 차이 MOVP의 P는 펄스(pulse)의 P입니다. 입력 조건 입력 조건이 ON일 때에 스캔을 전송합니다. 입력 조건이 ON으로 되면 그때 올라가는 스캔만을 전송합니다(1회만 실행). 1회만 실행 변화하는 데이터를 읽을 때는 MOV 명령을 사용합니다. 데이터 설정이나 이상 발생 시의 데이터 불러오기 등과 같은 순간 전 송에는 MOVP 명령을 사용합니다. 아래 회로는 모두 같은 기능을 합니다. 스텝수 5 - 10 정수 자리지정 워드(16비트) 디바이스 레벨 비트 디바이스 포인터 사용 디바이스 확인해 주십시오 CPU는 RUN 입력 X2, X3, X4, X5, X7은 ON 데이터 레지스터 D0~D3의 내용을 모니터하십시오. • PLC에 저장한 다음 [온라인]→[모니터]→[디바이스 일괄]을 선택하 십시오. 디바이스 일괄 모니터라는 화면이 나타납니다. • 디바이스 일괄 모니터라는 화면의 디바이스에 “D0”을 입력하고 모니터 시작 버튼을 클릭합니다. D0을 입력합니다. 입력한 다음에 클릭합니다. 5 - 11 타이머와 카운터의 현재값 을 모니터하고 있습니다 (변합니다.). 10진수 157(K157)이 저장 되어 있습니다. 16진수 4A9D에 해당하는 10진수입니다. 워드 디바이스를 비트 단위의 ON/OFF로 나타냅니다. OFF (2진수의 0에 해당) ON (2진수의 1에 해당) 16진수 H4A9D 2진수의 비트 무게 부호 비트 5 - 12 모니터 수치를 16진수로 표시하십시오. 디바이스 일괄 모니터의 수치에 있는 을 클릭하여 16진수를 선택합 니다. 클릭하면 아래로 드롭다운 메뉴가 나타납니다. 16진수를 선택하십시오. [디바이스 일괄 모니터 화면] 디바이스 모니터의 수치를 2진수로 표시하십시오. 디바이스 일괄 모니터의 모니터 형식에 있는 을 클릭하여 비트 다 점을 선택합니다. 클릭하면 아래로 드롭다운 메뉴가 나타납니다. 비트 다점을 선택하십시오. [디바이스 일괄 모니터 화면] D1 수치 D0 수치 디바이스 D3 수치 D2 수치 5 - 13 경로명 프로젝트명 A:\SCHOOL EX7 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기에 저장하고, “MOV 명령”을 실행시켜 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 전송 명령 데이터 의 수정 방법 전송 명령 데이터를 수정할 때는 아래와 같이 하십시오. K 예 : [MOV 200 D0]와 같은 전송 데이터에서 K200을 K100 으로 수정합니다. ① 수정할 명령을 더블클릭합니다. ② 회로 입력 화면이 나타납니다. ③ 커서를 “MOV K200 D0”의 “2”로 이동시킨 다음 “1”로 수정 합니다. ④ 회로 입력 화면의 OK 버튼을 클릭합니다. 안의 데이터를 수정할 때는 위 조작 방법으로 모두 가능 합니다. 단 화면 오른쪽 아래에 “삽입”이라고 표시되어 있을 경우에는 Insert 키를 눌러 “덮어쓰기”로 바꾼 다음 위와 같이 조작하 십시오. ⑤ 수정이 완료되면 툴 바의 5 - 14 을 클릭하십시오. 실습기 조작 실습기 조작 패널의 X0을 ON으로 하여 모니터 화면에서 D0과 D1의 내용이 모두 200으로 되는 것을 확인하십시오. X0이 ON으로 되면 D0과 D1의 현재값이 모두 200이 됩니다. 관련 연습 문제 TEST5 5 - 15 경로명 프로젝트명 5.2.2 A:\SCHOOL B-12 BIN(P) BCD→BIN 데이터 변환 명령 35스텝 이후의 불러오기/저장 조작 BIN 명령과의 차이를 확인하십시오. 입력 조건이 “ON”으로 되면 에서 지정한 디바이스의 데이터를 2진화 10진수(BCD 코드)로 보고 2진수(BIN 코드)로 변환하여 에서 지정한 디바이스로 전송합니다. 측 BCD 9999 천 자리 백 자리 십 자리 일 자리 측 BIN 9999 0이 됩니다. 보통 디지털 스위치에서는 BCD 코드를 사용합니다. 따라서 디지털 스 위치의 데이터를 시퀀서로 전달할 때는 BIN 명령을 사용합니다. 디지털 스위치 D6 BCD 상태로 입력 한 경우 D5 BIN으로 변환하여 입력한 경우 5 - 16 K4X20이란? 워드 디바이스D(데이터 레지스터), T(타이머 현재값), C(카운터 현재 값) 등은 1개가 16비트(1워드)로 구성되어 있고, 원칙적으로 1개의 디 바이스 사이에서 데이터를 전송합니다. 비트 디바이스(X, Y, M 등)도 16점이 모이면 워드 디바이스와 같은 크 기의 데이터로 취급할 수 있습니다. 단 16개의 디바이스 번호가 연속 해야 합니다. 비트 디바이스의 경우는 4점 단위로 데이터를 취급할 수 있습니다. 자리 수 선두 번호 2자리의 데이 터「12」를 읽 을 때에 지정 합니다. 1자리 데이터 “4”를 읽습니다. 2자리 데이터 “34”를 읽습니다. 3자리 데이터 “234”를 읽습니다. 4자리 데이터 “1234”를 읽습니다. 4점 단위로 연속한 디바이스일 경우 선두 디바이스는 어디라도 됩니다. 다른 비트 디바이스의 데이터도 위와 같이 할 수 있습니다. (내부 릴레이 M) * 부록-93의 디지털 스위치에 의한 데이터 전달 프로그램 예를 참조하 십시오. 워드(16비트) 디바이스 5 - 17 정수 레 벨 스텝수 자리지정 비트 디바이스 포인터 사용 가능한 디바이스 경로명 프로젝트명 5.2.3 BCD(P) A:\SCHOOL B-13 BIN→BCD 데이터 변환 명령 입력 조건이 “ON”으로 되면 에서 지정한 디바이스의 데이터를 2진수 (BIN 코드)로 보고 2진화 10진수(BCD 코드)로 변환하여 에서 지정한 디바이스로 전송합니다. 측 BIN 9999 반드시 0으로 하십시오. BCD 변환 측 BIN 9999 천 자리 백 자리 십 자리 일 자리 대부분의 디지털 표시기에서는 BCD 코드로 숫자를 표시합니다. 따라서 시퀀서의 데이터(타이머나 카운터의 현재값, 연산 결과인 데이터 레지 스터의 값)를 표시할 때에 사용합니다. 디지털 표시기 5 - 18 BCD 명령을 사용해 표시할 수 있는 범위 BCD 명령에서는 표시할 데이터(BIN→BCD의 데이터)가 0~9999일 때에 가능합니다. 이 이외의 값이면 오류가 발생합니다. (오류 코드 50 : OPERATION ERROR) 예를 들어 설정값이 9,999를 넘는 타이머 현재값을 표시할 때에는 DBCD 명령을 사용합니다. 이러한 경우에는 99,999,999까지의 숫자를 취급할 수 있습니다. 시퀀서 출력 유니트 출력 전원 (항상 ON) 워드(16비트) 디바이스 5 - 19 정수 스텝수 자리지정 레벨 비트 디바이스 포인터 사용 가능한 디바이스 경로명 프로젝트명 A:\SCHOOL B-13 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기에 저장하고, “BCD 명령”을 실행시켜 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 실습기 조작 실습기 패널의 X0을 여러 번 ON으로 하면 Y40~Y47의 BCD 디지털 표시기에 C0의 값이 표시됩니다. X1을 ON으로 하면 C0를 리셋합니다. BCD 디지털 관련 연습 문제 표시기 TEST6 5 - 20 C0의 값을 표시 5.2.4 비트 디바이스의 자릿수 지정과 데이터 전송 예 프로그램 예 처리 목적지 D 데이터가 워드 디바이스인 경우 0이 됩니다. • 소스 : 송신 디바이스 목적지 : 수신 디바이스 소스 데이터가 워드 디바이스인 경우 변하지 않습니다. 소스 데이터가 정수인 경우 소스 데이터도 비트 디바이스인 경우 0이 전송 M3~M0 데이 변하지 않습니다. 됩니다. 터가 전송 됩니다. 5 - 21 경로명 프로젝트명 5.2.5 FMOV(P) 에프 무브(동일 데이터의 일괄 전송) BMOV(P) 비 무브(블록 데이터의 일괄 전송) A:\SCHOOL B-13 동작 설명 입력 조건 FMOV FMOV 명령은 입력 조건이 “ON”으로 되면 을 에서 지정한 에서 지정한 디바이스 내용 개의 디바이스로 전송합니다. 예 X3을 ON으로 하여 FMOV 명령을 실행하였을 때의 동작은 다음과 같습니다. 8개(K8) FMOV 명령은 대량의 데이터를 한번에 삭제할 경우에 편리합니다. 예 입력 조건 동일 입력 조건 FMOV 명령을 사용하면 위 오른쪽 그림과 같이 RST 명령을 여러 개 사용할 필요가 없습니다. 5 - 22 입력 조건 BMOV BMOV 명령은 입력 조건이 “ON”으로 되면 두로 하여 디바이스에 저장되어 있는 디바이스를 선두로 하는 예 에서 지정한 디바이스를 선 개의 데이터를 에서 지정한 개의 디바이스로 일괄 전송합니다. X5를 ON으로 하여 BMOV 명령을 실행하였을 때의 동작은 다음과 같습니다. BMOV 명령은 다음과 같은 경우에 편리합니다. • 로긴 데이터 파일 • 귀중한 데이터(예: 자동 운전용 데이터, 측정 데이터 등)의 래치 영 역으로의 대피. 예를 들어 파라미터에서 정전 유지용으로 설정한 데 이터 레지스터로 대피시켜 정전으로 인한 데이터 소멸을 방지할 수 있습니다. 정수 레벨 워드(16비트) 디바이스 스텝수 자리지정 비트 디바이스 포인터 사용 가능한 디바이스 주의 주의 (주의) BMOV 명령에서 A0, A1은 사용할 수 없습니다. 5 - 23 실습 조작 앞 쪽의 프로그램을 CPU에 저장한 다음 CPU를 작동시키십시오. 다음 순서에 따라 디바이스를 일괄 모니터하십시오. D0~D47의 내용을 모니터할 수 있습니다. PLC에 저장한 다음 [온라인]→[모니터]→[디바이스 일괄]을 선택하 십시오. 디바이스 일괄 모니터라는 화면에서 디바이스 “D0”을 입력합니다. 모니터 형식의 을 클릭하면 드롭다운 메뉴가 나타나므로 워드 다 점을 선택합니다. 모니터 시작 버튼을 클릭합니다. 클릭하면 드롭다운 메뉴가 나타나므로 워드 다점을 선택합니다. D0을 입력합니다. 디바이스와 모니터 형식을 설정한 다음 클릭합니다. [모니터 화면] ① X3을 ON으로 하십시오. 수치 데이터 365가 D0~D7의 8개 레 지스터로 일괄 전송됩니다. ② X4를 ON으로 하십시오. 수치 데이터 7000이 D8~D23의 16개 레지스터로 일괄 전송됩니다. ③ X5를 ON으로 하십시오. D0~D15의 16개 레지스터 내용이 일 괄적으로 D32~D47의 16개 레지스터 로 전송됩니다. ④ X6을 ON으로 하십시오. 0이 D0~D47의 48개 레지스터로 일괄 적으로 전송됩니다. 즉 48개의 레지 스터 내용이 삭제됩니다. 5 - 24 참 고 만약 D가 비트 디바이스일 때는 다음과 같이 됩니다. FMOV 명령 가 2자리로 지정 되어 있기 때문에 이 데이터 는 무시됩니다. 입력 조건 D0(예 : 내용이 365일 때) 4개(K4) Y40~Y5F 가운데 “1”인 디바이스로부터 출력됩니다. 다음과 같이 프로그래밍하면 입력 조건 ①을 ON으로 하여 Y40~Y5F의 출력을 모두 ON으로 하거나, 입력 조건 ②를 ON으로 하여 Y40~Y5F의 출력을 모두 OFF로 할 수 있습니다. 입력 조건 ① K255의 비트 패턴 입력 조건 ② 비트 디바이스를 4점 단위로 16개까지 OFF할 때는 MOV 명령 32개까지 OFF할 때는 DMOV 명령 32개를 넘었을 때는 FMOV 명령 (64개를 OFF합니다.) FMOV 명령 입력 조건 가 2자리로 지정 되어 있기 때문에 이 데이터 는 무시됩니다. 4개(K4) 위 예와 같이 D0~D3에 제품 코드(16진수)가 저장되어 있으면 종별을 나타내는 아래 2자리 분의 코드만을 추출하여 모니터할 때에 이용할 수 있습니다. 5 - 25 경로명 프로젝트명 A:\SCHOOL EX9 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기에 저장한 다음 FMOV 명령을 실행시켜 동작을 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서 와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 실습기 조작 실습기 조작 패널의 X0을 ON으로 하여 일괄 모니터 화면에서 D0~D4의 내 용이 200으로 되는 것을 확인하십시오. X1을 ON으로 하면 삭제됩니다. 디바이스 일괄 모니터의 설정을 아래와 같이 하면 10진수 표시나 16진수 표시, 2진수 표시가 가능합니다. 수치 : 10진수 ................. 10진수로 표시됩니다. 수치 : 16진수 ................. 16진수로 표시됩니다. 모니터 형식 : 비트 다점 ....... 2진수로 표시됩니다. 관련 연습 문제 TEST7 5 - 26 경로명 프로젝트명 5.3 A:\SCHOOL B-15 비교 연산 명령 대소 비교 (2초 클록) (항상 ON) (항시 ON) 비교 명령은 소스1( )과 소스2( )의 2데이터를 비교하여 조건이 성 립하면 도통합니다. 조건이 성립하면 도통하므로 1개의 a접점( )으로 볼 수 있습니다. 소스1과 소스2가 일치하였을 때 도통합니다. 소스1이 소스2보다 작을 때 도통합니다. 소스1이 소스2보다 클 때 도통합니다. 소스1이 소스2보다 작거나 같을 때에 도통합니다. 소스1이 소스2보다 크거나 같을 때에 도통합니다. 소스1과 소스2가 일치하지 않을 때 도통합니다. 5 - 27 실습 조작 프로그램을 CPU에 저장하십시오. X3과 X4를 ON으로 하십시오. C10이 카운트를 시작합니다(2초마다 한 번 카운트). 또 카운터의 현재 값은 디지털 표시기(Y40~Y4F)에 표시됩니다. Y70~Y76이 ON하는 범위는 다음과 같습니다. 확인하십시오. Y70~Y76이 ON하는 범위 카운트 수(카운터 C10의 현재값) 과 차이 이기 때문에 49입니다. 이 되면 50이 됩니다. 카운터는 200초마다 리셋됩니다. 이와 같이 비교 명령은 하나의 데이터와 비교하는 것 이외에도 범위를 지정할 수도 있습니다. 따라서 제품 등의 합격/불합격을 판정하는 프 로그램에 많이 이용되고 있습니다. 워드(16비트) 디바이스 정수 스텝수 자리지정 레벨 비트 디바이스 포인터 사용 가능한 디바이스 비교 명령 비 고 다음과 같은 경우에는 7스텝이 됩니다. 인덱스 수식을 하고 있을 때. 비트 디바이스의 자리 지정이 K4가 아닐 때. 비트 디바이스의 선두가 8의 배수가 아닐 때. A3HCPU의 경우는 16의 배수. 5 - 28 경로명 프로젝트명 A:\SCHOOL EX10 회로 예 아래와 같은 회로를 FD에서 읽어 실습기에 저장한 다음 >, < 명령을 실 행시켜 확인하십시오. 조작 순서 (1) FD로부터 불러오기 FD에 저장되어 있는 프로젝트 데이터를 불러옵니다. 툴 바의 을 클릭합니다. 클릭 5 - 29 을 클릭하여 [-a-]을 선택하면 “SCHOOL”이라 프로젝트 드라이브의 는 경로명이 나타납니다. “SCHOOL”을 더블 클릭합니다. 클릭하면 드롭다운 메뉴가 나타나므로 [-a-]을 선택합니다. 프로젝트 드라이브에서 선택한 다음 더블 클릭 “EX10”을 더블클릭하면 프로젝트명이 나타납니다. 불러오기 클릭합니다. 클릭 프로젝트명을 선택한 다음 클릭 이후의 조작은 4.4의 조작 순서 (2) PLC로의 저장 (3) 회로 모니터 5 - 30 와 같습니다. 버튼을 실습기 조작 X0을 ON으로 하여 프로그램 동작을 확인하십시오. 관련 연습 문제 TEST8 5 - 31 5.4 사칙연산 명령 경로명 프로젝트명 5.4.1 BIN16 비트 데이터의 덧셈 BIN16 비트 데이터의 뺄셈 입력 조건이 “ON”으로 될 때마다 A:\SCHOOL B-16 에서 지정한 디바이스 내용에 에서 지정한 디바이스 내용을 더해 결과를 의 디바이스에 저장합니 다. (입력 조건) 1회째 ON (가정) 2회째 ON 3회째 ON D0의 내용이 바뀝니다. 입력 조건이 “ON”으로 되면 에서 지정한 디바이스 내용과 정한 디바이스 내용을 더해 결과를 에서 지 의 디바이스에 저장합니다. (입력 조건) (가정) ON D0의 내용은 덧셈을 하여도 바뀌지 않습니다. 주 의 덧셈 및 뺄셈 명령에는 반드시 +P -P 을 사용하십시오. + - 로는 스캔마다 연산을 실행할 수 없습니다. 단 미리 펄스화한 조건이라면 괜찮습니다. 참 고 덧셈 및 뺄셈 처리에서 다음 명령은 같은 기능을 수행합니다. (덧셈) (뺄셈) 5 - 32 경로명 프로젝트명 입력 조건이 “ON”으로 될 때마다 A:\SCHOOL B-17 에서 지정한 디바이스 내용에서 에서 지정한 디바이스 내용을 빼서 결과를 의 디바이스에 저장합 니다. (입력 조건) 1회째 ON (가정) 2회째 ON 3회째 ON D2의 내용이 바뀝니다. 입력 조건이 “ON”으로 되면 에서 지정한 디바이스 내용에서 에서 의 디바이스에 저장합니다. 지정한 디바이스 내용을 빼서 결과를 (입력 조건) (가정) ON D2의 내용은 뺄셈을 하여도 바뀌지 않습니다. 워드(16비트) 디바이스 포인터 스텝수 자리지정 레벨 비트 디바이스 정수 사용 가능한 디바이스 덧셈/뺄셈명령 덧셈/뺄셈명령 7스텝이 되는 것은 5 - 33 타입 경로명 프로젝트명 A:\SCHOOL EX11 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기에 저장한 다음 “+, - 명령” 을 실행시켜 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서 와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 5 - 34 실습기 조작 (1) X0을 ON으로 하면 X30~3F의 데이터와 X20~2F의 데이터를 더해 그 결 과를 Y40~53으로 출력합니다. (2) X1을 ON으로 하면 X30~3F의 데이터에서 X20~2F의 데이터를 빼 그 결 과를 Y40~53으로 출력합니다. 단 결과가 음일 경우에는 Y70을 ON하고 Y40~53을 0으로 합니다. 관련 연습 문제 TEST9 5 - 35 경로명 프로젝트명 5.4.2 * (P) BIN16비트 곱셈 / (P) BIN16비트 나눗셈 A:\SCHOOL B-18 에서 지정한 디바이스 내용과 에서 입력 조건이 “ON”으로 되면 지정한 디바이스 내용을 곱해 그 결과를 에서 지정한 디바이스에 저장합니다. 16비트 데이터 X 16비트 데이터 의 결 과를 저장하는데 16비트(1워드)는 충분 하지 않습니다. 그렇기 때문에 프로그램에서 지정한 D10 이외에 다음 디바이스 번호인 D11도 결 과를 저장하는데 사용합니다. 32비트의 레지스터로 취급하기 때 문에 D10의 왼쪽 끝 비트(B15)는 부호를 판정하는 비트가 아니고 데 이터를 저장하는데 사용합니다. * (P) 명령으로 얻은 연산 결과를 이용하여 프로그래밍할 때는 32비트 명령으로 해 야 합니다(예를 들어 DMOV 명령, DBCD 명령 등). 5 - 36 입력 조건이 “ON”으로 되면 에서 지정한 디바이스 내용을 에서 지정한 디바이스 내용으로 나누어 그 결과를 에서 지정한 디바이스 에 저장합니다. 몫 나머지 그리고 프로그램에서 지정한 D20에는 몫이 저장됩니다. 다음 디바이스 번호인 D21에 는 나머지가 저장됩니다. 나눗셈의 결과에서 소수점 이하의 수치는 버립니다. 를 비트 디바이스로 설정한 경우에는 몫은 저장되지만 나머지는 저 장되지 않습니다. 음수는 다음과 같이 취급합니다. 예 -5 ÷(-3) = 1나머지 -2 -5 ÷(-3) = -1나머지 -2 0으로 나누거나 0을 나누면 다음과 같이 됩니다. 예 0 ÷0 1 ÷0 0 ÷1 오류 “OPERATION ERROR” 몫과 나머지가 모두 0 실습 조작 프로그램을 CPU에 저장하고 작동시키십시오. X0을 ON으로 하고 D0에 2000(BIN 값)을 저장하십시오. X2를 ON으로 하십시오. 다음과 같은 계산이 실행됩니다. 의 연산 결과 “60000”을 16비트 정수로 취급하고 단 D10만을 모니터하면 “-5536”으로 표시되어 버립니다. 올바르게 모니터 하려면 다음 쪽을 참조하십시오. X3을 ON하십시오. 나머지 몫 워드(16비트) 디바이스 곱셈/나눗셈명령 5 - 37 정수 스텝수 자리지정 레벨 비트 디바이스 포인터 사용 가능한 디바이스 32비트 정수 데이터를 모니터하는 방법 곱셈 명령 등으로 연산 결과가 0~32,767 범위를 벗어나면 하위 레지스터의 내용을 회로 모니터하여도 올바르게 표시되지 않습니다. 올바르게 모니터하려면 다음과 같이 하십시오(디바이스 등록 모니터 조작). • [온라인]→[모니터]→[디바이스 등록 데이타]을 선택하십시오. • 디바이스 등록 버튼을 클릭하면 디바이스 등록 화면이 나타납니다. 클릭하면 디바이스 등록 화면이 나타납니다. 다음 쪽에서 계속 5 - 38 앞 쪽에서 계속 • 디바이스 등록 화면의 디바이스에 “D10”을 입력하십시오. • 표시의 을 클릭하여 “32비트 정수”를 선택하십시오. • 등록 버튼을 클릭하면 디바이스 등록 모니터 화면에 나타납니다. • 디바이스 등록이 끝나면 디바이스 등록 화면의 취소 버튼을 클릭하여 닫습니다. ① D10을 입력 ② 클릭해서 드롭다운 메뉴의 32비트 정 수를 선택 ③ 디바이스의 입력과 표시선택이 끝나면 등록 버튼을 클릭 ⑤ 모니터 시작 ④ 등록이 끝나면 취소 버튼을 클릭 버튼을 클릭하십시오. D10과 D11에 저장한 2워드 분의 연산 결과를 모니터할 수 있습니다. 클릭하면 D10과 D11의 연산 결과가 나타납니다. 5 - 39 경로명 프로젝트명 A:\SCHOOL EX12 회로 예 아래와 같은 회로를 GPPW로 작성하여 실습기에 저장한 다음 “*, / 명령” 을 실행시켜 확인하십시오. 조작 순서 아래 조작은 4.4의 조작 순서 (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 5 - 40 와 같습니다. 실습기 조작 (1) X0을 ON으로 하면 X20~2F의 데이터와 X30~3F의 데이터를 곱해 그 결 과를 Y40~5F로 출력합니다. (2) X1을 ON으로 하면 X20~2F의 데이터를 X30~3F의 데이터로 나누어 몫을 Y50~5F로, 나머지를 Y40~4F로 출력합니다. 이 예제의 경우는 연산 결과가 0~32,767 범위 이내이기 때문에 16비트 정수로 모니터해도 올바르게 표시됩니다. 관련 연습 문제 TEST10, TEST11 5 - 41 5.4.3 32비트 데이터 명령과 그 필요성 A 시리즈 시퀀서의 데이터 메모리는 16비트로 구성된 1워드 단위의 메 모리입니다. 따라서 전송이나 비교, 연산에서는 보통 1워드 단위로 처 리합니다. A 시리즈 시퀀서에서는 2워드(32비트) 단위도 취급할 수 있습니다. 이 러한 경우는 각 명령의 선두에 2워드를 의미하는 “D”를 붙입니다. 아 래의 예를 참조하십시오. 데이터 명령 2워드 32비트 1워드 16비트 전송 비교 연산 취급 가능한 수치 범위 () 안은 BIN(P), BCD(P) 명령일 때 () 안은 DBIN(P), DBCD(P) 명령일 때 자리지정에서가능한범위 K1 ∼ K4 K1 ∼ K8 32비트 구성에서의 비트 무게는 다음과 같습니다. 32비트의 경우에도 16비트와 같이 음수는 양수에 대한 2의 보수로 표 현하므로 최상위 비트인 B31은 부호 비트가 됩니다(16비트일 때는 B15 가 부호 비트). 취급 가능한 수치 최상위 비트 (부호 비트) 0일 때 양수가 됩니다. 1일 때 음수가 됩니다. 5 - 42 취급하는 데이터의 크기에 따라 필요하면 2워드(32비트)로 하십시오. 다음과 같은 경우에는 2워드 명령으로 해야 합니다. ① 데이터가 1워드의 범위(-32768~+32767)를 넘을 때 연속한 2개 의 디바이스 에 저장됩니 다. 전송 ② 16비트 곱셈 명령(1워드 명령)의 결과를 전송할 때 곱셈 결과는 연속한 2개의 디바이스에 저장됩니다. 8자리 표시(0∼99,999,999) BCD 변환 * 32비트 데이터의 곱셈 결과는 64비트가 됩니다. ③ 32비트 나눗셈 명령의 결과를 이용할 때 (몫) 몫의 표시 나머지의 표시 5 - 43 (나머지) 경로명 프로젝트명 5.4.4 A:\SCHOOL B-19 소수점을 포함한 값의 곱셈 및 나눗셈 계산 예(연산 명령 *, /을 사용한 경우) 예 1 원주를 구하는 계산 예 디지털 스위치 값 (K4X30) ×3.14 (원주율) 정수부 표시 소수부 표시 (K8Y50) (K2Y48) 프로그래밍 방법 원주율을 3.14의 100배인 314로 한 다음 나중에 100으로 나눕니다. 예 2 소수점 이하의 작은 데이터를 취급하는 계산 예(나눗셈 예) 디지털 스위치 값 ÷0.006 (K4X30) 몫 표시 나머지 표시 (K8Y50) (K4Y40) 프로그래밍 방법 0.006을 정수 6으로 취급하기 위해 1000배를 합니다. 예 1 의 계산을 명령 디지털 스위치 설정값을 몫 정수부(몫) 표시 에 저장 나머지 (소수부) 소수부(나머지) 표시 예 2 의 디지털 스위치 설정값을 에 저장 계산을 명령 몫 몫의 1000배를 표시 나머지의 1000배를 표시 5 - 44 나머지 5.5 5.5.1 인덱스 레지스터와 필터 레지스터 인덱스 레지스터 Z, V의 사용법 인덱스 레지스터(Zn, Vn)는 디바이스 번호를 간접적으로 지정할 때에 사용합니다. 즉 직접 지정한 디바이스 번호에 인덱스 레지스터의 내용 을 더해 디바이스 번호로 지정할 수 있습니다. 예 이것은 디바이스 번호 예를 들어 Z가 0일 때는 D0을 의미합니다. Z가 50이면 D50을 의미합니다. 인덱스 레지스터는 Z, Z1~Z6ㆍV, V1~V6을 사용할 수 있습니다. 인덱스 레지스터(Zn, Vn)는 16비트로 구성된 워드 디바이스입니다. 따 라서 –32768~+32767까지 취급할 수 있습니다. 인덱스 수식은 다음 디바이스에 사용할 수 있습니다. 비트 디바이스 .... X, Y, M, L, S, B, F (예 K4Y40Z) 워드 디바이스 .... T, C, D, R, W (예 D0Z) 정수 ............. K, H (예 K100Z) 포인터 ........... P 주 의 인덱스 레지스터는 타이머, 카운터의 코일에 간접적으로 지정할 수 없습니다. 예 5 - 45 사용 예 디지털 스위치로 지정한 번호의 데이터 레지스터에 데이터를 저장합니 다. D50으로 T2의 현재값이 전송됩니다. 디바이스를 일괄적으로 모니터하면서 확인하십시오. 조작 순서는 5.2.1과 같습니다. 디지털 스위치(X27~X20)에 임의의 2자리 숫자를 설정하고 X0을 ON으로 하십시오. D50으로 T2의 현재값이 전송됩니다. 5 - 46 5.5.2 파일 레지스터 R의 사용법 파일 레지스터(R)는 데이터 레지스터(D)와 같이 16비트로 구성된 레지 스터입니다. 파일 레지스터는 사용자용 메모리 영역(메모리 카세트 RAM 영역)에 설 정합니다. 파라미터 영역 타이머ㆍ카운터의 설정값 사용자용 메모리 영역 메인 프로그램 영역 파일 레지스터 영역 (메모리 카세트 영역) 3K 바이트 4K 바이트 1K 바이트 사용하고 있는 CPU에 따 라 용량이 다릅니다. (1~30K 스텝) 사용하고 있는 CPU에 따 라 용량이 다릅니다. (1~8K 스텝) 파일 레지스터의 데이터는 메모리 카세트의 전지에 의해 유지되기 때 문에 전원이 OFF되거나 리셋을 하여도 데이터는 삭제되지 않습니다. 삭제할 때는 MOV(P) 명령을 사용하여 파일 레지스터에 0을 저장하십시 오. 파일 레지스터 영역은 파라미터에서 1K 점(1024점) 단위로 설정합니다. 사용 예 파일 레지스터 R0~R1023의 1K 점을 설정하여 프로그램에서 사용합니다. 다음과 같은 조작으로 PLC 파라미터에 점수를 설정하십시오. • 프로젝트 데이터 일람의 파라미터를 더블 클릭하면 아래쪽에 PLC 파 라미터와 네트워크 파라미터 항목이 나타납니다. PLC 파라미터를 더블클릭하십시오. 파라미터를 더블클릭 PLC 파라미터를 더블클릭 • A 파라미터 설정 화면이 나타납니다. 5 - 47 A 파라미터 설정 화면의 파일 레지스터에 1을 입력하고 설정 종료 버 튼을 클릭합니다. 1을 입력 파일 레지스터 점 수를 입력한 다음 클릭 파일 레지스터의 데이터는 전지에 의해 유지됩니다. 전원을 OFF로 하거나 리셋을 하여 도 데이터는 삭제되지 않습니다. 데이터를 삭제할 때는 0을 저장하 십시오. CPU에 파라미터와 메인 프로그램을 저장하십시오. 조작에 관한 설명은 4.4를 참조하십시오. 회로를 모니터하면서 X0을 ON/OFF(저장), X1을 ON/OFF(삭제)하십시오. 조작에 관한 설명은 4.4를 참조하십시오. 5 - 48 5.6 타이머, 카운터 설정값의 외부 설정과 현재값의 외부 보기 타이머, 카운터는 K(10진수 정수)에 의한 직접 지정 이외에 D(데이터 레 지스터)에 의한 간접 지정이 가능합니다. 다음과 같이 프로그래밍하면 외 부 디지털 스위치로 설정값을 바꿀 수 있습니다. 디지털 스위치 디지털 표시기 T10의 현재값을 표시 이 프로그램은 텍스트 FD에 프로젝트명 TC 로 저장되어 있으므로 GPPW로 불러온 다음 PLC에 저장하고 확인하십시오. 조작 순서 아래 조작 가운데 (1)은 5.3의 조작 순서 조작 순서 와 같습니다. (1) FD로부터 불러오기 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 5 - 49 와 같고 (2)~(4)는 4.4의 실습기 조작 (1) 타이머 설정값의 외부 설정과 현재값 보기 О 디지털 스위치(X20~2F)에 타이머 설정값을 설정한 다음 스위치 X0 을 ON으로 하십시오. О 스위치 X4를 ON으로 하면 디지털 스위치에서 설정한 시간만큼 늦게 Y70이 ON합니다(예를 들어 로 설정하면 123.4초 후에 Y70이 ON합니다.). О 또 디지털 표시기(Y40~4F)에는 타이머 T10의 현재값이 표시됩니다. (2) 카운터 설정값의 외부 설정과 현재값 보기 О 디지털 스위치(X30~3F)에 카운터 설정값을 설정한 다음 스위치 X1 을 ON으로 하십시오. О 스위치 X5로 OFF→ON을 반복하면 디지털 스위치에서 설정한 수와 같은 회수만큼 ON하였을 때(카운트 업하였을 때) Y71이 ON합니다. О 또 디지털 표시기(Y50~5F)에는 카운터 C10의 현재값(X5가 ON한 회 수)이 표시됩니다. О 스위치 X6을 ON으로 하면 카운터 C10은 삭제되어 현재값이 0이 됩 니다. 이미 카운트 업하여 접점 C10이 ON일 때는 접점도 해제됩니 다. 5 - 50 경로명 프로젝트명 5.7 5.7.1 A:\SCHOOL TEST5 연습 문제 MOV 연습 문제1 X0~X7의 8점 입력 상태를 한 번에 D0로 전송한 다음 Y70~Y77의 8점으로 출력하십시오. (예를 들어 X0이 ON이고 Y70이 ON) 아래 프로그램의 부분을 완성시켜 GPPW로 작성한 다음 실습기에서 확인하십시오. 힌 트 (입력 유니트) (출력 유니트) CPU는 입력 신호가 ON일 때 1, OFF일 때 0을 받아들입니다. 또 1을 출력하면 출력 유니트 는 ON, 0을 출력하면 OFF합니다. 비교ᆞ검토 MOV 명령을 사용하지 않고 시퀀스 명령으로 프로그램을 작성하면 다음과 같이 됩니다. 5 - 51 경로명 프로젝트명 5.7.2 연습 문제2 A:\SCHOOL TEST6 BIN, BCD의 변환 X1이 ON한 회수를 Y40~Y4F에 연결된 표시기에 BCD로 출력하십시오. 단 카운터(C0) 설정값은 디지털 스위치(X20~X2F)로 입력하고 X0을 ON하면 설 정할 수 있어야 합니다. 아래 프로그램의 부분을 완성시켜 GPPW로 작성한 다음 실습기에서 확인하십시오. 힌 트 BIN 값 BCD 값 설정값 BCD 디지털 스위치 X20~X2F (K4X20) BCD 값 BIN 값 5 - 52 BCD 디지털 표시기 X40~X4F (K4Y40) 경로명 프로젝트명 5.7.3 A:\SCHOOL TEST7 FMOV 연습 문제3 X0이 ON하였을 때 Y40~Y7F까지의 64점 출력을 ON으로 하고, X0이 OFF하 였을 때 Y40~Y7F까지의 64점 출력을 OFF로 하는 프로그램을 작성하십시오. 아래 프로그램의 부분을 완성시켜 GPPW로 작성한 다음 실습기에서 확인하십시오. 힌 트 (출력 카드) CPU로부터 정수를 출력할 경우는 2진수 대응으로 처리합니다. 255를 Y40으로부터 출력하면 문제에서는 64점(Y40~Y7F) 출력이므로 255를 출력 단위로 가정한 다면 몇 개의 블록이 필요합니까? 비교ᆞ검토 FMOV 명령을 사용하지 않고 시퀀스 명령으로 프로그램을 작성하면 다음 과 같이 됩니다. 사용 스텝 수는 130입니다. 5 - 53 경로명 프로젝트명 5.7.4 연습 문제4 A:\SCHOOL TEST8 비교 명령 2개의 BCD 디지털 스위치를 사용하여 (A-B) 연산을 수행하고 결과를 BCD 디지털 표시기(Y40~Y4F)에 표시하십시오. A-B의 결과를 Y40~Y4F의 BCD 표시기에 표시합니다. 단 A-B<0(음)일 때의 표시는 0으로 하고 Y70의 LED를 점등시킵니다. 아래 프로그램의 힌 부분을 완성시켜 실습기에서 확인하십시오. 트 CPU 내부에서 수행하는 연산 처리에서는 항상 2진수를 취급합니다. 5 - 54 경로명 프로젝트명 5.7.5 A:\SCHOOL TEST9 +, - 연습 문제5 X0이 ON하였을 때 디지털 스위치(X20~X2F)에서 지정한 값을 D3과 D2(32 비트 데이터)에 저장하고, D1과 D0에 더한 결과를 표시기(Y40~Y5F)에 표 시하십시오. 또 X1이 ON하였을 때 디지털 스위치(X20~X2F)에서 지정한 값을 D5과 D4 에 저장한 다음 D1과 D0에서 뺀 결과를 표시하십시오. 단 결과가 음일 때 는 Y77을 ON으로 함과 동시에 결과에 대한 2의 보수를 구해 표시하도록 하십시오. 아래 프로그램의 부분을 완성시켜 실습기에서 확인하십시오. 외부 설정값을 D0에 더합니다. 결과가 양일 때 표시 외부 설정값을 D0 에서 뺍니다. 결과가 음이면 양수 로 변환하여 표시 (음수의 절대값을 구합니다.). 음수인 것을 출력 D0, D1을 삭제 참 고 부정 전송 DCML 실행 전 D0, D1(32비트 데이터)에 대한 2의 보수를 구하는 것은 절대값 을 구하는 것과 같습니다. DCML 실행 후 D+P 실행 후 (절대값) 16비트 데이터가 음수일 경우는 NEG(2의 보수) 명령으로 절대값으로 합니다. 비 고 CML 명령은 입력 조건이 ON으로 되면 S의 비트 패턴을 반전하여 D로 전송합니다. 입력 조건 5 - 55 경로명 프로젝트명 5.7.6 연습 문제6 A:\SCHOOL TEST10 *, / X0을 ON으로 하면 곱셈이나 나눗셈의 데이터를 설정할 수 있습니다. X2 를 ON으로 하였을 때 디지털 스위치 X20~X27과 X30~X37에서 지정한 값의 BIN 곱셈을 수행하고, X3을 ON으로 하였을 때는 BIN 나눗셈을 수행합니다. 곱셈 결과나 나눗셈의 몫은 Y40~Y4F의 BCD 표시기로 출력하고, 나눗셈의 나머지는 Y60~Y67의 BCD 표시기로 출력하는 프로그램을 작성하십시오. 아래 프로그램의 부분을 완성시켜 GPPW로 작성한 다음 실습기에서 확인하십시오. 힌 트 BIN 곱셈 BIN 값 BIN 값 0 BIN 값 BIN 나눗셈 BIN 값 BIN 값 BIN 값 BIN 값 5 - 56 경로명 프로젝트명 5.7.7 연습 문제6 A:\SCHOOL TEST11 D*, D/ X2가 ON으로 되었을 때 5자리의 디지털 스위치(X20~X33)에서 설정한 값 에 1,100을 BIN로 곱하고 그 결과가 99,999,999 이하이면 8자리 표시기 (Y40~Y5F)로 표시하십시오. 또 X3이 ON으로 되었을 때 8자리의 디지털 스위치(X20~X3F)에서 설정한 값을 40,000으로 BIN 나눗셈을 하고 그 결과는 X4가 ON이면 몫을, X4가 OFF이면 나머지를 8자리 표시기(Y40~Y5F)로 표시하십시오. 몫 나머지 아래 프로그램의 부분을 완성시켜 GPPW로 작성한 다음 실습기에서 확인하십시오. 5 - 57 제5장 연습 문제의 해답 해 답 5 - 58 ڵ*۔57DI ۬ ڗİȱ ڗӡٝл 6.1 시계 기능 시계 기능에 대해서는 다음 실습 프로그램을 실행해 보십시오. 시계 기능의 년, 월, 일, 시, 분, 초를 A3 타입 CPU 유니트의 LED에 표시 합니다. 실습 프로그램은 프로젝트명 아래와 같이 조작하십시오. EX13 입니다. CPU 앞면의 LED 표시기에 보기 년 월 일 시 분 초 은 월요일 시계 데이터 설정 요구 안이 설정 항목입니다. (1) 시계 기능의 저장은 다음과 같이 설정합니다. 설정할 때는 정확한 시각보다 2~3분 정보 빠른 시각을 설정한 다음 PLC에 저장합니다. 그리고 그 시각이 되었을 때 입력 스위치 X7을 ON으로 하면 정확한 시각을 설정할 수 있습니다. (2) 시계 기능의 불러오기 프로그램 시계 데이터 불러 오기 날짜와 시간 표시 분과 초 보기 X07을 OFF로 하면 시각을 불러올 수 있습니다. 또 X06을 ON으로 하면 CPU 의 LED에 시각을 표시할 수 있습니다(CPU 앞면에 표시할 수 있는 것은 A3 타입 CPU뿐입니다.) 비 고 [온라인]→[시계 기능]을 이용해서 시퀀서 CPU 내장 시계에 시각을 저장하는 방법도 있습니다. 6-1 6.2 온라인시의 테스트 기능 프로그램 프로젝트명 EX14 을 이용해 실습해 주십시오. 먼저 다음 순서에 따라 준비를 하십시오. 조작 방법에 관한 자세한 설명은 2장을 참조하십시오. ① 사용자의 플로피디스크(FD)로부터 파라 미터+프로그램을 메모리로 불러옵니다. ② 메모리로 불러온 파라미터+프로그램을 CPU(PLC)에 저장합니다. ③ GPPW를 모니터 모드로 합니다. ④ 화면에 표시된 프로그램을 확인하십시오. 6-2 6.2.1 디바이스 “Y”의 강제 ON/OFF CPU를 STOP으로 하고 조작하십시오. ① 툴 바의 버튼을 클릭하십시오. ① 클릭! ② 디바이스 테스트 화면이 나타나므로 “디바이스”를 클릭한 다음 리스트 박스에 “Y70”을 입력합니다. ③ ③ 클릭! 강제 ON / 강제 OFF 버튼을 클 릭해 “Y70”을 강제로 ON/OFF합니다. ② 클릭하여 설정! 실습기에 의한 확인 ① 강제 ON 버튼/ 강제 OFF 버튼을 조작하여 화면의 실행 결과 표시 가 ON→OFF→ON→ ...... 으로 바뀌는 것을 확인하고, 실습기 Y70의 LED가 이것에 따라 점등, 소등, 점등 ...... 하는가를 확인하십시오. 주 의 CPU가 작동 중일 때는 프로그램 연산 결과가 우선합니다. 따라서 실습기 에서 확인할 때는 CPU를 STOP으로 하십시오. 포인트 강제 출력, SET/RST, 현재값 변경은 회로를 모니터하는 테스트 기능으로 도 수행할 수 있습니다. 6-3 6.2.2 디바이스 “M”의 SET/RESET CPU를 RUN으로 하고 조작하십시오. ① 툴 바의 버튼을 클릭하십시 오. ① 클릭! ② 디바이스 테스트 화면이 나타 나므로 “디바이스”를 클릭한 다음 리스트 박스에 “M10”을 입력합니다. ③ 클릭! ③ ② 클릭하여 설정! 강제 ON 버튼/ 강제 OFF 버 튼을 클릭해 “M10”을 세트/리 셋합니다. 실습기에 의한 확인 X4를 OFF로 한 다음 다음을 확인하십시오. ① M10을 세트하면 이 비도통으로 되어 타이머 T0의 현 재값이 0으로 됩니다. 디지털 표시기(Y50~Y5F)의 표시가 정지하는 것을 확인하 십시오. ② M10을 리셋하면 (M10을 SET하였을 때의 모니터 화면) 이 도통으로 되어 T0의 현재값이 0부 터 시작하고 매초 10씩 증가합니다. 표시기(Y50~Y5F)의 표시가 매초 10씩 증가하는 것을 확 인하십시오 포인트 내부 릴레이(M) 이외의 비트 디바이스도 위와 같은 조작으로 강제 세트/ 리셋할 수 있습니다. 6-4 6.2.3 디바이스 “T”의 현재값 변경 CPU를 RUN으로 하고 조작하십시오. ① 툴 바의 버튼을 클릭하십시오. ① 클릭! ② 디바이스 테스트 화면이 나타나므 로 “워드 디바이스/버퍼 메모리” 의 “디바이스”를 클릭한 다음 리 스트 박스에 “T0”을 입력합니다. ② 클릭하여 설정! ③ 「설정값」을 클릭한 다음 리스트 박스에 “1000”을 입력합니다. 설정 ③ 클릭하여 설정! ④ 설정이 끝나면 ④ 클릭! 버튼을 클릭 하여 T0의 현재값을 강제로 1000 으로 변경합니다. 실습기에 의한 확인 ① 디지털 표시기(Y50~Y5F)의 표시가 을 눌렀을 때 1000으로 바뀌는 것을 확인하십시오. 포인트 타이머(T) 이외의 워드 디바이스의 현재값도 위와 같은 조작으로 변경할 수 있습니다. 6-5 6.2.4 에러 스텝 불러오기 CPU를 RUN으로 하고 조작하십시오. ① [진단]→[PLC 진단] 메뉴를 클릭 합니다. ① 클릭! ② PLC 진단 화면이 나타납니다. 오류가 있을 때는 오류 스텝 No. 가 표시됩니다. 오류가 없을 때는 “오류 없음”이 라는 메시지가 표시됩니다. 6-6 6.2.5 원격 STOP/RUN CPU를 RUN으로 하고 조작하십시오. ① [온라인]→[원격 조작] 메뉴를 클릭 합니다. ① 클릭! ② 원격 조작 화면이 나타나므로 「조 작 」 리스트 박스에서 “STOP”을 선 택합니다. ③ 설정이 끝나면 실행 버튼을 클릭합 니다. ② 클릭! ③ 클릭! ④ “실행하겠습니까?”라는 메시지가 나 타나므로 예 버튼을 클릭합니다. CPU가 정지합니다. ⑤ 위 ②의 설정을 “RUN”으로 변경한 다음 ②~④ 조작을 반복합니다. ④ 클릭! 위 조작에서 정지했던 CPU가 또다시 작 동하기 시작합니다. 6-7 6.3 파라미터 설정에 의한 I/O의 강제 할당 ① 프로젝트 일람의 「파라미터」를 더 ① 더블 클릭! 블 클릭합니다. ②「PLC 파라미터」와 「네트워크 파라 미터 」 가 나타나므로 「 PLC 파라미 ② 더블 클릭! 터」를 더블 클릭합니다. ③ A 파라미터 설정 화면이 나타나므로 «I/O 할당 설정» 탭을 클릭합니다. ③ 클릭! ④ 「 종별 」 리스트 박스에서 “입력”을 선택합니다. ⑤ 「 타입 이름 」 에 “AX42”를 입력합니 ⑥ 선택! ④ 선택! 다. ⑥「점 수」 리스트 박스에서 “32점”을 ⑤ 입력! 선택합니다. ⑦ 클릭! ⑦ 설정이 끝나면 설정 종료 버튼을 클 릭합니다. 6-8 실습기에 의한 확인 CPU를 정지시키고 툴 바의 을 클릭합니다. PLC 저장 화면이 나타나므로 편집 중인 데이터의 파라미터를 선택하여 파 라미터만을 CPU에 저장한 다음 CPU를 작동시켜 다음을 확인하십시오. ① 타이머 T0의 현재값이 디지털 표시기(Y50~Y5F)에 표시되지 않고, 대신 Y70~Y77 LED 표시등이 설정된 디바이스 값이 될 때까지 점멸합니다. ② X6을 ON으로 하고 Y70, Y74로 출력해도 Y70, Y74 LED 표시등은 점등하 지 않습니다. [강제로 할당하기 전의 I/O 번호] [0슬롯] A62P 전원 유니트 [1슬롯] 0번지 2번지 4번지 6번지 1번지 3번지 5번지 7번지 0번지 4번지 1번지 5번지 2번지 6번지 3번지 7번지 16점으로 하나의 번지를 점유합니다. 64점 유니트는 4개의 번지를 점유합니다. 디지털 표시기 명판 명판 [강제로 할당한 다음의 I/O 번호] 0번지 1번지 A62P 전원 유니트 4번지 6번지 5번지 7번지 0번지 2번지 1번지 3번지 X32점으로 설정하였기 때문에 후반 32점 분을 사용할 수 없습니다. 따라서 이후의 번지가 2씩 작아집니다. 디지털 표시기 명판 4번지 5번지 명판 포인트 7번지 위치가 5번지로 바뀌었습니다. 따라서 여기로 타이머 T0의 현재 값이 출력되고 이 커넥터에 연결되어 있는 Y70~Y77 LED가 점멸합니다. 출력 유니트의 7번지가 없어지기 때문에 Y70, Y74로 출력해도 그 결과 는 표시되지 않습니다. 디바이스 번호를 K4Y50 K4Y30, Y70~Y77 적으로 표시할 수 있습니다. 6-9 Y50~Y57로 변경하면 정상 6.4 적산 타이머 사용법 적산 타이머는 입력 조건이 ON으로 되면 코일이 ON으로 되어 덧셈을 시 작합니다. 현재값이 설정값과 같아지면 타임 업하여 접점이 ON합니다. 덧 셈 도중에 입력 조건이 OFF로 되면 코일은 OFF로 되지만 현재값은 유지됩 니다. 여기에서 또다시 입력 조건이 ON으로 되면 코일이 ON으로 되어 덧 셈을 계속하기 때문에 현재값은 적산됩니다. X6 접점 T232 코일 T232a 접점 3.0초 2.0초 X7 접점(RST 명령 입력) T232 현재값 적산 타이머로 사용할 경 우는 미리 파라미터에서 범위를 설정하십시오. 적산 타이머의 타임 업 후의 접점 OFF와 현재값 삭제는 반드시 RST 명령으로 하십시오. 저속 타이머=T0~T215, 고속 타이머=T216~T231, 적산 타이머=T232~T255로 설정할 경우의 조작을 설명하겠습니다. ① 프로젝트 일람의 「파라미터」를 ① 더블 클릭! 더블 클릭합니다. ② 「PLC 파라미터」와 「네트워크 파라미터」가 나타나므로 「PLC 파라미터」를 더블 클릭합니다. ② 더블 클릭! 6 - 10 ③ A 파라미터 설정 화면이 나타나 므로 <디바이스 설정> 탭을 클릭 합니다. ③ 클릭! ④ 「 고속 타이머 」 의 「 선두 」 를 클릭하여 “216”을 입력합니다. ⑤ 「 적산 타이머 」 의 「 선두 」 를 클릭하여 “232”를 입력합니다. ⑥ 설정이 끝나면 설정 종료 버튼을 클릭합니다. ④ 입력! ⑤ 입력! ⑥ 클릭! 6 - 11 6.5 6.5.1 디바이스의 일괄 변경 디바이스 번호의 일괄 변경 Y70~Y9F(48개)를 Y50~Y7F(48개)로 일괄 변경합니다. ① [찾기/바꾸기]→[디바이스 바꾸기] 메뉴를 클릭합니다. ① 클릭! ② 디바이스 바꾸기 화면이 나타나므 로 「기존 디바이스」 리스트 박스 에 “Y70”을 입력합니다. ② 입력! ③ 「 신규 디바이스 」 리스트 박스에 ③ 입력! “Y50”을 입력합니다. ④「바꾸기 점 수」 핀 박스를 “48”로 ④ 설정! ⑤ 클릭! 설정합니다. ⑤ 설정이 끝나면 모두 바꾸기 버튼을 클릭합니다. ⑥ 디바이스 번호가 바뀐 것을 확인하 십시오. 변경 전 변경 후 6 - 12 6.5.2 지정 디바이스인 A접점 ↔ B접점의 일괄 변경 프로그램에서 지정한 디바이스 A 접점을 B 접점으로 B 접점을 A 접점으로 일괄 변경합니다. ① [찾기/바꾸기]→[AB 접점 변경] 메뉴를 클릭하여 선택합니다. ① 클릭! ② AB 접점 변경 화면이 나타나므로 「디바이스」 리스트 박스에 “X4” ② 입력! 를 입력합니다. ③ 설정이 끝나면 모두 바꾸기 버튼 을 클릭합니다. ④ AB 접점이 바뀐 것을 확인하십시 ③ 클릭! 오. 변경 전 변경 후 주 의 6.5 다음에 6.6을 실습할 때는 반드시 컴퓨터 내의 프로그램을 ACPU에 저장하십시오. 저장하는 방법은 2.5를 참조하십시오. 6 - 13 6.6 작동중의 저장 CPU가 작동하고 있을 때에 프로그램을 저장하는 기능입니다. CPU를 작동시킨 다음에 조작하십시오. ① 회로를 변경! ① 회로를 변경합니다. (여기에서는 “X1”을 “X0”으로 변경 합니다.) ② 변경한 다음 [변환]→[변환(작동중 ② 클릭! 저장)] 메뉴를 클릭합니다. ③ “주의” 메시지가 나타나므로 내용을 확인한 다음 예 버튼을 클릭합니 다. ③ 클릭! ④ “작동중 저장 처리가 완료되었습니 다.” 라는 메시지가 나타나므로 OK 버튼을 클릭합니다. ④ 클릭! 주 의 시퀀서 CPU의 프로그램과 수정 전의 GPPW의 프로그램이 일치하지 않으면 작동 중에 저장이 되지 않으므로 확인한 다음 수정, 작동중 저장을 실행 하십시오. 6 - 14 6.7 디바이스 등록 회로상 서로 떨어진 위치에 있는 디바이스나 여러 종류의 디바이스를 한 화면에서 동시에 모니터할 수 있습니다. ① [온라인]→[모니터]→[디바이스 등 록] 메뉴를 클릭합니다. ① 클릭! ② 디바이스 등록 화면이 나타나므로 디바이스 등록 버튼을 클릭합니다. ② 클릭! ③ 디바이스 등록 화면이 나타나므로 「디바이스」를 클릭해 “Y74”를 입 력합니다. ③ 설정! ④ 입력이 끝나면 등록 버튼을 클릭합 니다. ④ 클릭! ⑤ 클릭! ⑤ 취소 버튼을 클릭하여 화면을 닫습 니다. 6 - 15 ⑥ 모니터 시작 버튼을 클릭합니다. ⑥ 클릭! ⑦ 상태 화면에 디바이스의 ON/OFF/현재값이 나타납니다. ⑦ 보기! 비 모니터 고 등록한 모니터 디바이스를 취소할 때는 디바이스 삭제 버튼을 클릭합니다. 6 - 16 6.8 코멘트 작성 방법 경로명 프로젝트명 A:\SCHOOL B-1 코멘트와 접점 사용처가 추가된 회로의 인쇄 예 T0의 a 접점이 2스텝과 19스텝에 있습니다. b 접점이 22스텝에 있습니다. 0.3S 타이머 타이머 0.6S NO.1 타이머 0.6S NO.1 0.3S 타이머 0.9S 플리커 운전 시작 생산 개수 카운트 0.9S 플리커 생산 개수 카운트 생산 개수 카운트 생산 개수 카운트 타이머 0.6S NO.1 플리커 외부 보기 타이머 0.6S NO.1 트리거 ON 리셋 삭제한다 트리거 ON 리셋 삭제한다 6 - 17 위 프로그램을 키보드로 입력하거나 또는 FD로부터 불러오십시오. (1) 코멘트 작성시의 개략 흐름도 파라미터에 코멘트 용량을 설정합니다. 코멘트를 추가할 디바이스 범위를 설정합니다. 코멘트를 추가할 디바이스를 불러옵니다. 코멘트를 작성합니다. 다른 디바이스에 코멘트를 추가할 경우 코멘트를 플로피디스크에 저장합니다. 코멘트가 추가된 회로를 불러와 확인합니다. 코멘트와 접점 사용처가 추가된 회로를 인쇄합니다. 6 - 18 (2) 코멘트 작성 순서 ① 프로젝트 일람의 “파라미터”를 더 ① 더블클릭! 블클릭합니다. ② 「PLC 파라미터」와 「네트워크 파 라미터」가 나타나므로 「PLC 파라 미터」를 더블클릭합니다. ② 더블클릭! ③ A 파라미터 설정 화면이 나타나므 로 «메모리 용량 설정» 탭을 클릭 합니다. ④ 「코멘트(0, 2-64) 」에 “5”를 입 력합니다. ③ 클릭! ⑤ 설정이 끝나면 ④ 입력! 설정 종료 버튼을 클릭해 화면을 닫습니다. ⑤ 클릭! ⑥ 프로젝트 일람의 「 디바이스 코멘 트」를 더블클릭합니다. ⑥ 더블클릭! 6 - 19 ⑦ 「COMMENT」와 「MAIN」이 나타 ⑦ 더블클릭! 나므로 「 COMMENT 」 를 더블클릭 해 COMMENT 화면을 표시합니다. ⑧ [편집]→[코멘트 범위 설정] 메 뉴를 클릭합니다. ⑧ 클릭! ⑨ 코멘트 범위 설정 화면이 나타나 므로 «프로그램 공통» 탭을 클릭 합니다. ⑩ 클릭! ⑨ 클릭! ⑩ 「X/Y」의 「선두」를 클릭한 다 음 아래와 같이 입력합니다. 6 - 20 선두 마지막 0 9F ⑪ 입력이 끝나면 «프로그램별» 탭을 클릭합니다. ⑫ 입력! ⑪ 클릭! ⑫ 입력란을 클릭한 다음 왼쪽 화면 과 같이 입력합니다. ⑬ 입력이 끝나면 OK 버튼을 클릭 하여 화면을 닫습니다. ⑬ 클릭! ⑭ 코멘트 입력 ⑭ 입력란을 클릭한 다음 왼쪽 화면 과 같이 코멘트를 입력합니다. 6 - 21 ⑮ 입력! 클릭! ⑮ 「디바이스」 리스트 박스에 “Y70” 입력! 을 입력합니다. 보기 버튼을 클릭하면 입력한 디 바이스로부터의 코멘트 일람이 나 타납니다. 입력란을 클릭한 다음 왼쪽 화면과 같이 코멘트를 입력합니다. 입력! 클릭! 「 디바이스 」 리스트 박스에 “M1” 입력! 을 입력합니다. 보기 버튼을 클릭하면 입력한 디 바이스로부터의 코멘트 일람이 나 타납니다. 입력란을 클릭한 다음 왼쪽 화면과 같이 코멘트를 입력합니다. 6 - 22 • 입력! • 클릭! 「 디바이스 」 • 입력! 리스트 박스에 “T0”을 입력합니다. 보기 버튼을 클릭하면 입력한 디바이스로부터의 코멘트 일람이 나타납니다. 입력란을 클릭한 다음 왼쪽 화면 과 같이 코멘트를 입력합니다. • 입력! • 클릭! 「 디바이스 」 리스트 박스에 “C2”를 입력합니다. • 입력! 보기 버튼을 클릭하면 입력한 디바이스로부터의 코멘트 일람이 나타납니다. 입력란을 클릭한 다음 왼쪽 화면 과 같이 코멘트를 입력합니다. 6 - 23 (3) 코멘트 저장 조작 ① [프로젝트]→[다른 이름으로 저장] 메뉴를 클릭합니다. ① 클릭! ② 다른 이름으로 저장 화면이 나타나 므로 저장 버튼을 클릭합니다. ② 클릭! 6 - 24 (4) GPPW 화면에 코멘트가 추가된 회로를 표시하는 조작 ① [보기]→[코멘트 보기] 메뉴를 클릭 합니다. ① 클릭! ② 코멘트가 추가된 회로 화면이 나타 0.3S 타이머 타이머 0.6S NO.1 타이머 0.6S NO.1 0.3S 타이머 0.9S 플리커 운전 시작 생산 개수 카운트 0.9S 플리커 생산 개수 카운트 6 - 25 납니다. ۔+ࢳ ڵՎ İȱ ٿȷࢲٝ :FCA#HC ύ͋ 7.1 특수 기능 유니트란? (1) 특수 기능 유니트 종류 특수 기능 유니트는 시퀀서 CPU(이하 ACPU라고 함)로는 불가능하거나 용도가 한정된 기능을 실현시킬 수 있는 유니트입니다. 따라서 목적에 따라 필요한 기능이 있는 특수 기능 유니트를 선택하 여 사용합니다. 아래 표는 이러한 유니트의 예입니다. 표7.1 특수 기능 유니트의 예 입출력 점유 점 수 명칭 아날로그-디지털 변환 유니트 (A68AD) 디지털-아날로그 변환 유니트 (A62DA) 고속 카운터 유니트 (AD61) 32점 32점 32점 기능 4~20mA→0~1000 0~±10V→0~±2000 로 변환하는 입력 유니트 4~20mA→0~1000 0~±20000~±10V 로 변환하는 출력 유니트 펄스 입력 최고 50kpps 1상, 2상 0~16, 777, 215 카운트(가역) ACPU의 카운터 C로는 카운트할 수 없는 고속 카운트가 가능합니다. 유니트 소비 전류 DC5V 0.9A DC5V 0.6A DC24V 0.35A DC5V 0.3A (2) CPU와의 조합 특수 기능 유니트는 기본 베이스와 증설 베이스의 임의의 I/O 슬롯에 장착하여 사용합니다. 그리고 내부 소비 전류가 많은 입출력 유니트 및 특수 기능 유니트는 기본 베이스 또는 전원 유니트가 필요한 증설 베이스(A65B, A68B)에 장착하여 사용하십시오. 전원 유니트가 없는 증 설 베이스(A58B, A55B)에 장착하여 사용할 경우 5V 전원은 기본 베이 스의 전원 유니트로부터 공급되므로 소비 전류 및 전압 강하(증설 케 이블의 저항에 의한 강하)를 계산하여 선정하십시오. I/O 슬롯 No. 특수 유니트(32점) 특수 유니트 [사용 번호] X, Y0~1F의 32점 그림7.1 특수 유니트 장착 7-1 7.2 특수 기능 유니트와 CPU 간의 정보 교환 크게 2종류의 정보를 교신합니다. 비트 단위의 정보 입출력 X, Y를 사용하는 신호 워드 단위의 정보 16비트 또는 32비트의 데이터 ACPU 특수 기능 유니트의 내부 구성 외부 (시퀀서 CPU) 프로그램 디바이스 메모리 X/Y 입력X 출력Y 데이터 불러오기 (비트 데이터) 버퍼 메모리 기능 CPU I / F (워드 데이터) 저장 그림7.2 특수 기능 유니트의 내부 구성 7.2.1 CPU로의 입출력 신호 ACPU와 특수 기능 유니트 사이의 교신 신호 가운데 1비트 단위는 입출력 X, Y를 사용합니다. 여기에서 말하는 X, Y는 외부 입출력과는 다른 특수 기능 유니트 고유의 신호로 시퀀스 프로그램에서 사용하는 것입니다. 그리고 입출력 번호로는 특수 기능 유니트의 장착 위치에 따라 붙여진 번호를 사용합니다. [X] ACPU 특수 기능 유니트 준비 완료 신호 그림7.3 특수 기능 유니트로부터의 X [Y] ACPU 특수 기능 유니트 프리 세트 뺄셈 카운트 현재값 홀드 출력 허가 그림7.4 CPU로부터의 Y 시퀀스 프로그램에서 사용하는 X는 특수 기 능 유니트에서 ACPU로 입력되는 신호로 발 생한 곳은 특수 기능 유니트입니다. 프로그 램에서는 접점으로 사용됩니다. 다음과 같 은 예가 있습니다. (1) 준비 완료 신호 전원 ON에 의해 특수 기능 유니트가 정 상적으로 작동하여 준비가 완료된 것을 ACPU에 입력하는 신호 (2) 비교 결과 고속 카운터 유니트에서는 카운트 입력 에 대해 설정 값과 비교하여 대소(>, <)나 일치(=)를 ACPU에 입력하는 신호 시퀀스 프로그램에서 사용하는 SET나 RST, OUT-Y는 ACPU에서 특수 기능 유니트로 출력 되는 신호로 발생하는 곳은 ACPU입니다. 프 로그램에서는 코일이나 접점으로 사용됩니 다. (1) 고속 카운터 유니트에서는 설정 값 등 의 프리 세트나 감산 명령 등을 출력합 니다. (2) D/A 변환 유니트에서는 D/A 변환한 아 날로그 값을 외부로 출력하기 위한 허 가 명령(출력 허가)을 출력합니다. 7-2 7.2.2 특수 기능 유니트와의 데이터 교환 데이터는 16비트 또는 32비트 단위로 전송합니다. 그래서 특수 기능 유 니트에는 데이터를 저장하기 위한 버퍼 메모리가 있습니다. 특수 기능 유니트 버퍼 메모리 주소 CH1 디지털 값 CH2 디지털 값 CH1의 전압 설정값 CH2의 전압 설정값 CH1의 전류 설정값 CH2의 전압 설정값 FROM ACPU 불러오기 TO 버퍼 데이터 메모리 체크 체크 체크 체크 코드 코드 코드 코드 ACPU로부터 불러오기와 저장이 가능 메모리 맵 예 : A62DA형 디지털 아날로그 변환 유니트 저장 그림7.5 버퍼 메모리 (1) 버퍼 메모리는 ACPU로부터 불러오기나 저장이 가능합니다. 또 주변기 기로부터 인터페이스를 매개하여 저장이 가능한 유니트도 있습니다. (2) 버퍼 메모리는 1워드(16비트)마다 각 특수 기능 유니트 고유의 주소 를 갖고 있습니다. 0부터 시작하는 주소를 지정하여 불러오기와 저장을 합니다. 최소 단 위는 1워드입니다. 17~32비트 데이터는 2워드(32비트)로 취급합니다. 부호 비트 1 : 음 0 : 양 데이터부 +276의 경우 (음수 디지털 값은 2의 보수로 표현합니다.) 그림7.6 버퍼 메모리 내용 예(D/A 변환 유니트) 그림7.6은 D/A 변환 유니트의 16비트 예입니다. ACPU로부터 불러온 디지털 값입니다. 그 내용은 부호가 있는 16비트 바이너리로 – 2048~+2047의 디지털 값을 설정합니다. (3) 버퍼 메모리로부터의 불러오기와 저장에는 특수 기능 유니트용 명령 FROM(불러오기)과 TO(저장)을 사용합니다. (4) 버퍼 메모리는 RAM입니다. 7-3 7.3 버퍼 메모리 불러오기 및 저장 프로그램 7.3.1 불러오기 프로그램(FROM) 특수 기능 유니트의 버퍼 메모리 내용을 ACPU로 불러오는 명령입니다. 불러온 데이터는 ACPU의 워드 디바이스인 D, T, C, W, R에 저장할 수 있 습니다. FROM 명령에는 아래 표와 같이 4종류가 있습니다. 표7.2 FROM 명령의 종류 실행 조건 ON에서 항상 실행 실행 조건 올라가기에서 실행 16비트 데이터 (1워드 데이터) FROM FROMP 32비트 데이터 (2워드 데이터) DFRO DFROP 형 식 FROM 명령 실행 조건 내용 특수 기능 유 니트에 할당 된 선두 입출 력 번호의 위 2 자리 K, H 사용 가능한 디바이스, 정수 통상은 H 데이터가 저장된 버퍼 메모리의 선두 주소 불러온 데이 불러온 데이 터를 저장할 터의 데이터 디바이스의 수 선두 번호 (1~2000) K, H 통상은 K T, C, D, W, R K, H 통상은 K 그림7.7 불러오기 명령 FROM 아래 그림은 FROM 명령의 n1 부분의 예입니다(T0 명령의 n1도 같습니다.). 입출력 번호 그림7.8 n1의 예 7-4 [16비트 데이터의 불러오기 예] 예 1 특수 기능 유니트를 입출력 번호 X130~14F, Y130~14F에 할당하고 버퍼 메모 리 주소 10으로부터 데이터를 1워드만 D15로 불러올 경우 (데이터 레지스터) 특수 기능 유니트 버퍼 메모리 ACPU (주소) 불러오기 데이터 데이터 10 데이터 수 실행 조건 예 2 위와 동일한 데이터의 불러오기에 펄스화 된 릴레이를 사용할 경우 실행 조건 예 3 특수 기능 유니트를 입출력 번호 X00~1F, Y00~1F에 할당하고 버퍼 메모리 주 소 3으로부터 5워드의 데이터를 D1~D5로 불러올 경우 (데이터 레지스터) 데이터1 데이터2 데이터3 데이터4 데이터5 불러오기 특수 기능 유니트 버퍼 메모리 (주소) 데이터1 데이터2 데이터3 데이터4 데이터5 실행 조건 그림7.9 16비트 데이터의 불러오기 예 7-5 데이터 수 [32비트 데이터의 불러오기 예] 예 1 특수 기능 유니트를 입출력 번호 X10~2F, Y10~2F에 할당하고 버퍼 메모리 주소 4로부터 2워드(32비트)의 데이터를 1데이터 분의 D0~D1로 불러올 경우 특수 기능 유니트 버퍼 메모리 (주소) (데이터 레지스터) 데이터하위 데이터상위 불러오기 데이터하위 데이터상위 데이터 수 실행 조건 예 2 위와 동일한 데이터의 불러오기에 펄스화 된 릴레이를 사용할 경우 실행 조건 예 3 특수 기능 유니트를 입출력 번호 XB0~CF, YB0~CF에 할당하고 버퍼 메모리 주소 5072~5077의 2워드(32비트) 데이터를 3데이터 분의 D6~11로 불러올 경우 특수 기능 유니트 버퍼 메모리 (주소) ACPU (데이터 레지스터) 데이터1하위 상위 데이터2하위 상위 데이터3하위 상위 불러오기 데이터1하위 상위 데이터2하위 데이터2하위 상위 데이터3하위 상위 실행 조건 그림7.10 32비트 데이터의 불러오기 예 7-6 데이터 수 7.3.2 저장 프로그램(TO) ACPU에서 특수 기능 유니트의 버퍼 메모리로 저장하는 명령입니다. 저장 될 데이터는 ACPU의 디바이스인 D, W, R, T, C에 저장된 것이나 정수인 10진수(K ) 및 16진수(H )입니다. TO 명령에는 아래 표와 같이 4종류가 있습니다. 표7.3 TO 명령의 종류 실행 조건 ON에서 항상 실행 실행 조건 올라가기에서 실행 16비트 데이터 (1워드 데이터) TO TOP 32비트 데이터 (2워드 데이터) DTO DTOP 형 식 TO 명령 실행 조건 내용 특수 기능 유 데이터를 니트에 할당 저장할 버퍼 된 선두 입출 메모리의 력 번호의 위 선두 주소 2자리 사용 가능한 K, H 디바이스, 정수 통상은 H K, H 통상은 H 저장할 데이 터가 저장된 선두 디바이 스 번호 또는 정수 저장할 데이터의 데이터 수 (1~2000) T, C, D, W, K, H 통상은 H R, K, H 그림7.7 저장 명령 TO 주 의 불러오기와 저장 프로그램의 주의 사항 (1) 버퍼 메모리의 주소에 따라서는 불러오기 전용 영역이 있습니다. 이 영 역에는 절대로 저장하지 마십시오. 혹시 저장을 하더라도 특수 기능 유 니트 측이 항상 데이터를 저장하므로 버퍼 메모리 데이터는 손상됩니 다. 때에 따라서는 특수 기능 유니트가 오동작을 할 수도 있습니다. (2) 버퍼 메모리의 주소 범위 이외를 불러오거나 저장하지 않도록 하십시 오. 범위 이외의 주소는 OS에서 사용하는 부분이므로 동작을 보장할 수 없습니다. (3) 17비트 이외의 데이터에는 반드시 DFRO, DFROP, DTO, DTOP를 사용하십 시오. (4) 불러오기와 저장은 16비트 데이터나 32비트 데이터 모두 1명령에 대해 최대 200 데이터로 합니다. 단 감시 타이머 에러가 되지 않는 범위로 하십시오. 7-7 [16비트 데이터의 저장 예] 예 1 특수 기능 유니트를 입출력 번호 XA0~BF, YA0~BF에 할당하고 데이터 레지스터 D90에 저장된 1워드 데이터를 버퍼 메모리 주소 151에 저장할 경우 ACPU (데이터 레지스터) 저장 데이터 특수 기능 유니트 버퍼 메모리 (주소) 데이터 데이터 수 실행 조건 예 2 특수 기능 유니트를 입출력 번호 X60~7F, Y60~7F에 할당하고 버퍼 메모리 주소 0에 8을 저장할 경우 ACPU 저장 특수 기능 유니트 버퍼 메모리 (주소) 실행 조건 [32비트 데이터의 저장 예] 예 2 특수 기능 유니트를 입출력 번호 X10~2F, Y10~2F에 할당하고 데이터 레지스터 D51, D52에 저장된 2워드(32비트) 데이터를 버퍼 메모리 주소 5078, 5079에 저장할 경우 (데이터 레지스터) 특수 기능 유니트 버퍼 메모리 (주소) ACPU 데이터하위 데이터상위 저장 실행 조건 7-8 데이터하위 데이터상위 데이터 수 7.4 A68AD형 아날로그/디지털 변환 유니트 이 사용자 매뉴얼은 MELSEC-A 시리즈의 CPU 유니트(이하 시퀀서 CPU로 함)와 조합하여 사용하는 A1S64AD형 아날로그-디지털 변환 유니트(이하 A1S64AD로 함)의 사양, 취급, 프로그래밍 방법 등을 설명한 것입니다. A1S64AD는 시퀀서 외부로부터의 아날로그 신호(전압 또는 전류 입력)를 16비트 부호 BIN 데이터의 디지털 값으로 변환하는 유니트입니다. 시퀀서 CPU TO 명령 A1S64AD 평균 처리 지정 등의 초기 설정 (버퍼 메모리) 설정 데이터 디지털 값 디지털 값 불러오기 FROM 명령 디지털 값 7.4.1 아 날 로 그디 지 털 변 환 (입력 단자) 1채널 4채널 0~±10V 또는 0~±20mA 아날로그 출력 기기 0~±10V 또는 0~±20mA 아날로그 출력 기기 특징 A1S64AD의 특징을 설명하겠습니다. (1) 1 유니트로 4 채널의 A/D 변환이 가능 A1S64AD 1 유니트로 4 채널의 A/D 변환이 가능합니다. 또 채널별로 전압 입력, 전류 입력을 선택할 수 있습니다. (2) 1/12000의 고분해능이 가능(전 채널 일괄) 분해능 배율 설정으로 디지털 값의 분해능을 1/4000, 1/8000, 1/12000로 설정할 수 있기 때문에 고분해능 디지털 값을 구할 수 있 습니다. (3) 지정 시간 또는 회수에 의한 평균 처리가 가능(채널별로) ① A/D 변환을 하였을 때 디지털 값을 출력하는 샘플링 처리 방식 ② 평균 처리로 지정된 채널의 A/D 변환을 설정 회수 또는 설정 시 간에 따라 실시하고 그 평균값을 디지털 값으로 출력하는 평균 처리 방식을 채널별로 선택할 수 있습니다. (4) 변환 허가 및 금지 설정이 가능(채널별로) 채널별로 A/D 변환 허가 및 금지를 설정할 수 있습니다. 사용하지 않는 채널을 변환 실행 금지로 설정하여 변환 속도를 단축할 수 있 습니다. (5) 소음으로 오프셋/게인 조정이 가능(채널별로) 오프셋 값 및 게인 값은 전압 또는 전류를 입력하여 설정 스위치를 ON하면 얻을 수 있습니다. 7-9 7.4.2 성능 사양 A1S64AD의 성능 사양을 설명하겠습니다. 표3.2 성능 사양 항목 아날로그 입력 디지털 입력 입출력 특성 최대 분해능 종합 정밀도 최대 변환 속도 절대 최대 입력 아날로그 입력 점 수 절연 방식 입출력 점유 점 수 연결 단자 외부 전원 적합 전선 크기 적합 압착 단자 내부 소비 전류 질량 사양 전압 : DC-10~0~+10V (입력 저항1MΩ) 입력 소자로 선택 전류 : -20~0~+20㎃ (입력 저항250Ω) 16비트 부호 바이너리 1/4000 설정 시-4096~+4095 1/8000 설정 시-8192~+8191 1/12000 설정 시-12288~+12287 디지털 출력값(게인 5V/20mA, 오프셋 0V/0mA인 경우) 아날로그 입력 1/4000 1/8000 1/12000 +12000 +8000 +4000 +10V +6000 +4000 +2000 +5V 또는 +20mA 0 0 0 0V 또는 0mA -6000 -4000 -2000 -5V 또는 -20mA -12000 -8000 -4000 -10V 1/4000 1/8000 1/12000 전압 입력 2.5㎷ 1.25㎷ 0.83㎷ 전류 입력 10㎂ 5㎂ 3.33㎂ ±1% 이내(최대값에 대한 정밀도) 20ms/1채널 전압 ±15V 전류 ±30mA 4채널/1유니트 입력 단자와 시퀀서 전원 사이를 포토커플러 절연(채널 간은 비절연) 특수 32점 20점 단자대 필요 없음 0.75~1.5㎟ 1.25-3, 1.25-YS3, V1.25-YS3A 0.4A 0.25kg * 공장 출하 시에는 게인 5V, 오프셋 0V로 설정되어 있습니다. 포인트 최대 분해능, 종합 정밀도의 허용 가능한 아날로그 입력 범위는 다음과 같습니다. 전압 –10~0~+10V 전류 –20~0~+20mA 7 - 10 7.4.3 시퀀서 CPU에 대한 입출력 신호 입출력 신호의 할당과 각 기능에 대해 설명하겠습니다. 7.4.3.1 입출력 신호 일람 A1S64AD는 시퀀서 CPU와의 데이터 교신에서 입력 32점, 출력 32점을 사 용합니다. 표3.2는 입출력 신호 할당과 각 신호의 명칭입니다. 디바이스 X는 A1S64AD로부터 시퀀서 CPU로의 입력 신호, 디바이스 Y는 시퀀서 CPU로부터 A1S64AD로의 출력 신호를 의미합니다. 이 장 이후의 입출력 번호 X, Y, I/O 주소는 A1S64AD를 기본 베이스 유 니트의 I/O 슬롯 0에 장착한 경우입니다. 표3.2 입출력 신호 일람 신호 방향 : A1S64AD→시퀀서 CPU 신호 방향 : 시퀀서 CPU→A1S64AD 디바이스 NO. X0 신호 명칭 감시 에러 플러그 X1 A/D 변환 READY X2 X3 ~ X1F 에러 플러그 디바이스 NO. Y0 ~ Y11 Y12 Y13 ~ Y1F 사용 불가 신호 명칭 사용 불가 에러 리셋 사용 불가 포인트 Y0~Y11, Y13~Y1F를 시퀀스 프로그램에서 ON/OFF한 경우는 A1S64AD로서 의 기능을 보증할 수 없습니다. X0~X1F와 같은 번호 Y0~Y1F는 내부 릴레이로 사용할 수 없습니다. 7 - 11 7.4.3.2 입력 신호 기능 A1S64AD의 각 입출력 신호 기능을 설명하겠습니다. 표3.3 입출력 신호 디바이스 NO. X0 X1 신호 명칭 내용 비고 감시 타이머 • A1S64AD의 자기 진단 기능에 • A1S64AD의 A/D 변환은 정지합니 다. 에러 플러그 의해 감시 타이머 에러가 되 었을 때에 ON합니다. • X0이 ON한 경우는 A1S64AD의 하 드웨어 고장 A/D 변환 READY • 시퀀서 CPU의 전원 투입 시 • A/D 변환 준비 완료는 4채널의 전체 A/D 변환을 한번 완료하고 또는 리셋 시에 일반 모드 디지털 출력값을 버퍼 메모리에 (테스트 모드 이외)로 A/D 저장하였을 때입니다. 변환 준비가 완료되면 ON합 니다. • 버퍼 메모리 불러오기/저장 시의 인터록으로 사용 가능 합니다. • 유니트 전면의 테스트 단자 를 단락하면 OFF합니다. X2 에러 플러그 • A1S64AD에서 감시 타이머 에 러 이외의 에러가 발생하였 을 때에 ON합니다. • X2가 ON하면 에러 코드 저장 영역에 에러 코드가 저장됩 니다. • 에러 리셋 신호를 ON하면 X2 는 OFF합니다. Y12 에러 리셋 • 에러 리셋 신호를 ON하여 A1S64AD의 에러 발생으로 ON 한 에러 플러그를 OFF함과 동시에 버퍼 메모리의 에러 코드 저장 영역에 저장된 에 러 코드를 삭제하고 “0”을 저장합니다. • 유니트 전면의 “RUN” LED를 에러 발생(점멸)에서 정상 동작 중(점등)으로 바꿉니 다. 7 - 12 시스템이 ON /OFF합니다. 에러 플러그 (X2) 사용자프로 그램으로ON /OFF합니다. 에러 리셋 (Y12) 버퍼 메모리 주소 에러 코드 7.4.4 버퍼 메모리 A1S64AD에는 시퀀서 CPU와의 데이터 교신용 버퍼 메모리가 있습니다(배 터리는 사용할 수 없습니다.). 이 버퍼 메모리의 할당이나 데이터 구성에 대해 설명하겠습니다. 7.4.4.1 버퍼 메모리 할당 버퍼 메모리의 할당은 다음과 같습니다. 주소(10진수) A/D 변환 허가ㆍ금지 설정 평균 처리 지정 CH1 평균 시간, 회수 CH2 평균 시간, 회수 CH3 평균 시간, 회수 CH4 평균 시간, 회수 기본값 000FH(전 채널 허가) 0(전 채널 샘플링 처리) 불러오기 저장 가능 가능 가능 가능 참조 3.7.2항 3.7.2항 가능 사용 불가 CH1 CH2 CH3 CH4 3.7.2항 디지털 출력값 디지털 출력값 디지털 출력값 디지털 출력값 가능 사용 불가 저장 데이터 에러 코드 A/D 변환 완료 플러그 분해능 배율 설정 0(에러 없음) 000FH(전 채널 A/D 변환 완료) 1 (1/4000) 가능 가능 가능 가능 3.7.2항 3.7.2항 3.7.2항 그림3.6 버퍼 메모리의 할당 포인트 버퍼 메모리 주소 10~13(불러오기 전용 영역)에는 저장하지 마십시오. 저장하면 에러가 발생하여 A1S64AD의 “RUN” LED가 점멸하고 버퍼 메모리 주소18에 에러 코드가 저장됩니다. 또 A1S64AD가 데이터를 덮어쓰기 때 문에 데이터가 손상됩니다. 7 - 13 7.4.4.2 A/D 변환 허가ᆞ금지 설정 A1S64AD의 각 채널의 A/D 변환 허가ㆍ금지를 버퍼 메모리의 주소0에 채 널별로 “1”(허가) 또는 “0”(금지)를 저장하여 설정할 수 있습니다. 사용하지 않는 채널을 변환 금지로 하면 샘플링 주기를 단축할 수 있습 니다(기본값은 전 채널 A/D 변환 실행입니다.). 예) 채널1, 3만 A/D 변환 허가로 한 경우의 샘플링 주기 2 × 20㎳ = 40㎳ (허가 채널 수) (1채널의 변환 속도) ① 변환 허가ㆍ금지 설정 방법 변환 허가ㆍ금지를 각 채널별로 설정합니다. 주소0 무시됩니다. 채널 지정 1 : A/D 변환 허가 0 : A/D 변환 금지 ② 변환 허가ㆍ금지 설정 시의 A1S64AD 처리 (a) 평균 처리의 초기화 평균 처리를 하기 위해 A1S64AD 시스템의 워크 영역 데이터를 초기화합니다. 버퍼 메모리에 저장된 디지털 값은 변환 허가ㆍ금지를 설정하 기 전의 데이터를 유지합니다. 예를 들어 50회의 평균 처리를 지정한 채널이 30회의 샘플링 을 하였을 때 변환 허가ㆍ금지를 실행하면 30회의 샘플링 데 이터를 삭제하고 초기 상태에서 평균 처리를 합니다. (b) A/D 변환 완료 플러그의 리셋 채널1~4의 A/D 변환 완료 플러그(버퍼 메모리의 주소19)를 리 셋합니다. 7 - 14 7.4.4.3 샘플링 처리/평균 처리 설정 (1) 샘플링 처리와 평균 처리의 디지털 값 출력 방법 (a) 샘플링 처리 아날로그 입력값을 순차적으로 A/D 변환하여 디지털 출력값을 버퍼 메모리에 저장합니다. 샘플링 처리된 디지털 출력값이 버퍼 메모리에 저장되는 시간 은 A/D 변환 허가 채널 수에 따라 다릅니다. (처리 시간) = (A/D 변환 허가 채널 수) X 20(ms) 최대 변환 속도 [예] 채널 1, 2, 3의 3채널을 변환 허가한 경우 3 ×20 = 60(㎳) (b) 평균 처리 A1S64AD은 시퀀서 CPU에서 평균 처리로 지정된 채널을 설정 회 수나 설정 시간만큼 A/D 변환하고, 최대값과 최소값을 제외한 합계를 평균하여 버퍼 메모리에 저장합니다. 단 처리 회수가 2 회 이하일 때는 샘플링 처리가 됩니다. A/D 변환 허가ㆍ금지를 설정하면 평균 처리의 초기화를 실행합 니다. ① 시간에 의한 평균 처리를 지정한 경우 • 설정 시간은 10ms 단위로 설정하고 10ms 미만은 버립니다. [예] 1234ms로 설정하면 1230ms으로 취급합니다. • 설정 시간의 처리 회수는 A/D 변환 허가 채널 수에 따라 다릅니다. (처리 회수) = 설정 시간 (A/D 변환 허가 채널 수) X 20(ms) 최대 변환 속도 [예] A/D 변환 허가 채널 수 4, 설정 시간 8000ms인 경우 8000 ÷(4 ×20) = 100(회) ② 회수에 의한 평균 처리를 지정한 경우 회수 평균에 의한 평균값을 버퍼 메모리에 저장하는 시간 은 A/D 변환 허가 채널 수에 따라 다릅니다. (처리 시간) = (설정 회수) X (A/D 변환 허가 채널 수) X 20(ms) 최대 변환 속도 [예] 채널1, 2, 3, 4의 4채널을 A/D 변환 허가, 설정 회수 50회인 경우 50 ×4 ×20 = 4000(ms) 7 - 15 (2) 평균 처리 지정과 시간 평균ᆞ회수 평균의 선택 (a) 전원을 투입한 다음 A1S64AD의 A/D 변환 READY 신호가 ON하였을 때 전 채널 샘플링 처리로 지정됩니다. (b) 샘플링 처리 또는 평균 처리의 선택과 평균 처리의 경우 처리 방법을 지정합니다. 주소1 무시 평균 처리 채널 지정 1:평균 처리 0:샘플링 처리 무시 시간/회수 지정 1:시간 평균 0:회수 평균 포인트 (1) 평균 처리를 지정할 때는 사전에 평균 처리 회수 또는 시간을 설정해야 합니다. (2) 평균 처리로 지정하지 않으면 시간/회수의 지정과 관계없이 샘플링 처리가 됩니다. (3) 평균 시간ᆞ평균 회수의 지정 (a) 평균 처리로 지정한 채널별로 평균 시간 또는 평균 회수를 버퍼 메모리 주소2~5의 채널에 대응하는 주소에 저장합니다. 전원을 투입하였을 때의 평균 시간과 평균 회수는 0이 됩니다. (b) 설정 가능한 범위는 아래와 같습니다. 회수에 의한 평균 처리 1~500회 시간에 의한 평균 처리 80~10000㎳ 포인트 위 범위 이외의 설정값을 저장하면 설정 에러가 발생하여 버퍼 메모 리에 저장되지 않고, A1S64AD은 설정 에러 이전의 평균 시간, 회수로 A/D 변환 처리를 실행합니다. 7 - 16 7.4.4.4 디지털 출력값 A/D 변환된 디지털 값은 버퍼 메모리 주소10~13에 채널별로 저장됩니다. 디지털 출력값은 16비트 부호 바이너리로 분해능 1/4000을 설정하면 – 4096~4095, 1/8000을 설정하면 –8192~8191, 1/12000을 설정하면 – 12288~12287으로 표시됩니다(음수의 디지털 값은 2의 보수로 표시됩니 다.). 주소10~13 데이터부 분해능 1/4000 분해능 1/8000 분해능 1/12000 데이터부와 부호 비트 이외는 12비트 13비트 14비트 음수(b15가 1)일 때 1 양수(b15가 0)일 때 0 이 됩니다. 부호 비트 1:음수 0:양수 7.4.4.5 저장 데이터 에러 코드 (1) A1S64AD는 시퀀서 CPU로부터 데이터가 왔을 때 1회만 데이터 범위를 체크하고 불러오기/저장 영역의 접속을 체크합니다. 범위 이외인 경 우에는 에러 코드를 버퍼 메모리 주소18에 16비트 바이너리 값으로 저장합니다. 에러 코드는 6.1항을 참조하십시오. (2) 에러가 여러 개 발생한 경우에는 A1S64AD가 최초로 발생한 에러 코 드만을 저장합니다. (3) 에러 코드를 리셋할 경우는 시퀀스 프로그램으로 Y12(3.6항 참조)를 ON합니다. (4) 에러 코드를 리셋하면 데이터 에러 코드는 0이 되고 A1S64AD의 “RUN” LED는 점멸에서 점등으로 바뀝니다. (5) 버퍼 메모리 주소18에 “0”을 저장하면 에러가 리셋됩니다. 7 - 17 7.4.4.6 A/D 변환 완료 플러그 (1) A/D 변환 완료 플러그는 전원이 투입된 다음 A/D 변환 READY 신호 (X1)가 ON하면 이미 1~4 채널의 A/D 변환이 완료된 상태이므로 버퍼 메모리에 000FH(15)이 저장되어 있습니다. (2) 전원을 투입한 다음 A/D 변환 완료 플러그 처리는 A/D 변환 허가ㆍ 금지 설정(“주소0”)을 변경하였을 때만 1회 처리합니다. A/D 변환 금지→허가하였을 때 평균 처리를 지정한 경우는 평균 회수 또는 평균 시간의 평균 처 리를 완료하고 A/D 변환 디지털 값을 버퍼 메모리에 저장한 다음 플러그를 1로 합니다. A/D 변환 허가→금지하였을 때 해당하는 채널의 A/D 변환 완료 플러그를 0으로 합니다. (3) A/D 변환 완료 플러그는 채널별로 있습니다. 주소19 A/D 변환 완료 플러그 1:A/D 변환 완료 0:A/D 변환 미완료 (4) A/D 변환 완료 플러그는 평균 처리할 채널의 디지털 값을 불러올 때 인터록으로 사용할 수 있습니다. 7.4.4.7 분해능 배율 설정 (1) 디지털 출력값의 분해능을 1/4000, 1/8000, 1/12000 가운데에서 설 정합니다. 전원을 투입하였을 때는 기본값으로 1/4000이 설정됩니다. (2) 분해능 배율 설정은 버퍼 메모리 주소20에 “1~3”을 저장합니다. 설정 데이터 1 2 3 분해능 1/4000 1/8000 1/12000 포인트 분해능 배율은 시퀀서가 RUN 중일 때 A/D 변환 허가ㆍ금지를 설정하기 전에 1회만 설정하십시오. A/D 변환 허가 중에 설정을 변경하면 올바른 디지털 출력값을 얻을 수 없습니다. 7 - 18 7.4.5 운전까지의 설정과 순서 7.4.5.1 각부의 명칭 A1S64AD의 각부에 대한 명칭을 설명하겠습니다. 번호 명칭과 외관 RUN LED 내용 A1S64AD의 운전 상태를 표시합니다. (일반 모드) 점등 : 정상 동작 중 점멸 : 저장 데이터 에러 발생 시 소등 : 5V 전원 단절이나 감시 타이머 에러 (테스트 모드) 점등 : OFF SET 스위치 또는 GAIN 스위치가 ON일 때 소등 : OFF SET 스위치 또는 GAIN 스위치가 모두 OFF일 때 CHANNEL 선택 스위치 오프셋 및 게인을 조정할 채널을 선택합니다. (1~4 채널 이외는 무처리) OFF SET 스위치 스위치를 OFF SET쪽으로 하면 그때의 아날로그 입력값을 오프셋 값으로 A1S64AD에 저장합니다. GAIN 스위치 스위치를 GAIN쪽으로 하면 그때의 아날로그 입력값을 게인 값으로 A1S64AD에 저장합니다. 테스트 모드 단자 오프셋 및 게인을 설정할 때 단자 1-2 사이를 단락합니다. 7 - 19 7.4.5.2 오프셋ᆞ게인 설정 입출력 변환 특성을 변경할 때에는 아래 순서에 따라 변경하십시오. 시 작 테스트 모드 단자(1-2사이)를 단락합니다. 게인 값이 될 전압 또는 전류를 추가합니다. 전압의 경우 전류의 경우 “채널 선택 스위치”를 변경 할 채널에 맞춥니다. 실제로 연결할 저항값 소등 설정할 채널에 맞춥니다. 게인 스위치를 “GAIN”으로 합니다. 오프셋 값이 될 전압 또는 전류를 추가합니다. 점등 전압의 경우 전류의 경우 다른 채널도 조정하시겠습니까? 실제로 연결할 저항값 테스트 모드 단자(1-2 사이)를 개방합니다. 오프셋 스위치를 “OFFSET”으로 합니다. 점등 종 7 - 20 료 7.4.6 프로그래밍 A/D프로그래밍 변환 완료 순서 채널의 디지털 출력값 불러오기 채널1, 2, 3을 A/D 변환 허가로 설정 채널2의 평균 회수를 50회로 설정 A/D 변환 허가ㆍ 금지, 평균 처리 지정 등의 초기 설정 채널3의 평균 시간을 100ms로 설정 채널2, 3을 평균 처리로 지정하고 채널2를 회수, 채널3을 시간으로 설정 (평균 처리 지정) (회수ㆍ시간 지정) 분해능 배율을 “2”(1/8000로 설정) 저장 데이터 에러 발생 으로 Y40을 ON합니다. 저장 데이터 에러 발생 시의 처리 저장 데이터 에러 코드 를 D0에 저장합니다. 에러 코드를 BCD 표시기에 출력합니다. X20이 ON하였을 때 Y12를 ON시키는 저장 데이터 에 러를 리셋합니다. 저장 데이터 에러의 리셋 A/D 변환 완료 플 러그 영역 불러오기 X20이 ON하였을 때 A/D 변 환 완료 플러그를 M0~M2로 불러옵니다. A/D 변환 완료 플러그가 ON인 채널의 디지털 출력값 을 D10~D12로 불러옵니다. A/D 변환 완료 채널 의 디지털 출력값 불러오기 종 료 7 - 21 7.5 A1S62DA 디지털/아날로그 변환 유니트 이 사용자 매뉴얼은 MELSEC-A 시리즈의 CPU 유니트(이하 시퀀서 CPU로 함)와 조합하여 사용하는 A1S62DA형 디지털-아날로그 변환 유니트(이하 A1S62DA로 함)의 사양과 취급, 프로그래밍 방법에 대해 설명한 것입니다. A1S62DA는 시퀀서 CPU에서 설정한 디지털 값(16비트 부호 바이너리 값) 을 아날로그 값으로 변환하여 외부로 출력이 가능한 유니트입니다. 7.5.1 특징 A1S62DA의 특징을 설명하겠습니다. (1) 1유니트로 2채널의 D/A 변환이 가능 A1S62DA는 아날로그 값(전압/전류)을 2개의 외부 기기로 출력할 수 있습니다. (2) 디지털 값의 분해능을 3단계로 설정 가능(전 채널 일괄) 분해능 배율 설정으로 디지털 값의 분해능을 1/4000, 1/8000, 1/12000로 설정할 수 있습니다. (3) 채널별로 아날로그 출력의 허가/금지가 설정 가능 시퀀스 프로그램으로 D/A 변환한 아날로그 값을 외부 기기로 출력할 수 있도록 채널별로 설정할 수 있습니다. 아날로그 출력 금지로 설정된 채널의 아날로그 출력은 0V 또는 0mA 가 됩니다. (4) 시퀀서 CPU가 STOP일 때의 아날로그 출력 유지/삭제 설정이 가능 (전 채널 일괄) 시퀀서 CPU를 STOP 상태로 하였을 때는 직전의 아날로그 출력을 유 지하도록 HOLD/CLEAR 단자로 선택할 수 있습니다. (5) 스위치로 오프셋/게인 조정이 가능 오프셋 값 및 게인 값은 UP/DOWN 스위치를 이용하여 채널별로 설정 할 수 있습니다. 7 - 22 7.5.2 시스템 구성 (1) 적용 CPU • A1SJCPU • A1SCPU • A52GCPU(T21B) • A2SCPU • Q2ASCPU(S1) • A2USCPU(S1) • Q2ASHCPU(S1) (2) 장착 개수 적용 CPU의 입출력 점 수 범위 이내이면 사용 가능한 유니트 수에 제한이 없습니다. (3) 장착 슬롯 아래 경우를 제외하고 베이스 유니트의 임의의 슬롯에 장착할 수 있 습니다. 전원 유니트가 없는 증설 베이스 유니트(A1S52B, A1S55B, A1S58B)에 장착하면 전원 용량이 부족해 지는 경우가 있으므로 주의하십시오. 전원 유니트가 없는 증설 베이스 유니트에 A1S62DA를 장착할 경우에 는 ① 기본 베이스 유니트 전원 유니트의 전류 용량 ② 기본 베이스 유니트에서의 전압 강하 ③ 증설 베이스 유니트에서의 전압 강하 ④ 증설 케이블에서의 전압 강하 를 충분히 고려하여 전원 유니트, 기본 베이스 유니트, 증설 베이스 유니트, 증설 케이블을 선정하십시오. (4) A1S62DA에서 2채널을 사용할 경우의 주의 사항 A1S62DA에서 출력 단자와 시퀀서 전원 사이는 포토커플러 절연이지 만, 아날로그 출력의 글랜드는 내부에서 연결되어 있습니다. 따라서 각 채널의 “-V”와 “-I”는 같은 레벨이 됩니다. (5) 데이터 링크 시스템 데이터 링크 시스템에서는 마스터국이나 로컬국, 리모트 I/O국에 장 착할 수 있습니다. 리모트 I/O국의 프로그램 예는 MELSECNET, MELSECENET/B 데이터 링크 시스템의 레퍼런스 매뉴얼을 참조하십시 오. 비 고 입출력 점 수 범위, 전압 강하의 계산 방법에 대해서는 아래 매뉴얼 을 참조하십시오. A1SJCPU 사용자 매뉴얼(고급) ............. SH(명)-3498 A1SCPU/A2SCPU 사용자 매뉴얼(고급) ....... SH(명)-3504 A2USCPU(S1) 사용자 매뉴얼(고급) ......... SH(명)-3499 A52GCPU(T21B) 레퍼런스 매뉴얼 ........... SH(명)-3475 7 - 23 7.5.3 7.5.3.1 사양 성능 사양 A1S62DA의 성능 사양을 설명하겠습니다. 표3.2 성능 사양 사양 항목 디지털 출력 전류 출력 -4000~4000 -8000~8000 -12000~12000 0~4000 0~8000 0~12000 DC-10~0~10V (외부 부하 저항:2㏀~1㏁) 아날로그 1/4000 1/8000 1/12000 출력값 DC0~20mA (외부 부하 저항: 0~600 Ω) 아날로그 1/4000 1/8000 1/12000 출력값 1/4000 1/8000 1/12000 아날로그 출력 분해능 입출력 특성 전압 출력 디지털 입력값 아날로그 1/4000 1/8000 값의 최대 1/12000 분해능 종합 정밀도 최대 변환 속도 절대 최대 입력 출력 단락 보호 아날로그 출력 점 수 절연 방식 입출력 점유 점 수 연결 단자대 오프셋ㆍ게인 조정 적합 전선 크기 적합 압착 단자 내부 소비 전류 질량 4000 2000 0 -2000 -4000 8000 12000 4000 6000 0 0 -4000 -6000 -8000 -12000 2.5㎷ 1.25㎷ 0.83㎷ 10V 5V 0V -5V -10V (10V) (10V) (10V) 4000 2000 0 8000 4000 0 12000 6000 0 5㎂ 2.5㎂ 1.7㎂ ±1% 이내(최대값에 대한 정밀도) 25ms 이내/2채널(1채널의 경우도 동일 시간) 전압:±12V 전류:±28㎃ 있음 2채널/1유니트 출력 단자와 시퀀서 전원 사이 ....... 포토커플러 절연 각 채널 간 ......................... 비절연 32점 20점 단자대 테스트 스위치에 의한 조정(소음) 0.75~1.5㎟ 1.25-3, 1.25-YS3A, V1.25-3, V1.25-YS3A 0.8A 0.32㎏ *1 ...... 오프셋 값 : 0V, 게인 값 : 10V(공장 출하시)인 경우 *2 ...... 오프셋 값 : 4mA, 게인 값 : 20mA인 경우 *3, *4는 다음 항을 참조하십시오. 외부 전원은 필요 없습니다. 7 - 24 20㎃ 12㎃ 4㎃ (20㎃) (20㎃) (20㎃) 7.5.3.2 시퀀서 CPU에 대한 입출력 신호 입출력 신호의 할당과 각 기능에 대해 설명하겠습니다. 7.5.3.2.1 입출력 신호 일람 A1S62DA는 시퀀서 CPU와의 신호 교신에서 입력 32점, 출력 32점을 사용 합니다. 표3.4는 입출력 신호의 할당과 각 신호의 명칭입니다. 디바이스 X는 A1S62DA로부터 시퀀서 CPU로의 입력 신호, 디바이스 Y는 시퀀서 CPU로부터 A1S62DA로의 출력 신호를 의미합니다. 이 장 이후의 입출력 번호 X, Y, I/O 주소는 A1S62DA를 기본 베이스 유 니트의 I/O 슬롯 0에 장착한 경우입니다. 표3.4 입출력 신호 일람 신호 방향 : A1S62DA→시퀀서 CPU 디바이스 NO. X0 X1 X2 신호 명칭 WDT 에러 플러그 (A1S62DA 검출) D/A 변환 READY 에러 플러그 신호 방향 : 시퀀서 CPU→A1S62DA 디바이스 NO. 신호 명칭 Y0 ~ YF 사용 불가 Y10 Y11 X3 ~ X1F 중 사용 불가 Y12 ~ Y17 Y18 Y19 ~ Y1F CH1 출력 CH2 출력 D/A 변환값 허가 플러그 D/A 변환값 허가 플러그 사용 불가 에러 리셋 사용 불가 요 Y0~YF, Y12~Y17, Y19~Y1F는 시스템에서 사용하기 때문에 사용자는 사용 할 수 없습니다. 혹시 시퀀스 프로그램에서 사용(ON/OFF)한 경우에는 A1S62DA로서의 기능 을 보증할 수 없습니다. X0~XF와 같은 번호 Y0~YF는 내부 릴레이로 사용할 수 없습니다. 7 - 25 7.5.3.2.2. 입출력 신호의 기능 A1S62DA의 각 입출력 신호 기능을 설명하겠습니다. 표3.5 입출력 신호 디바이스 NO. X0 신호 명칭 WDT 감시 타이머 에러 플러그 X1 D/A 변환 READY 내용 비고 • A1S62DA의 자기 진단 기능에 • A1S62DA의 A/D 변환은 정지합니 다. 의해 감시 타이머 에러가 되 • X0이 ON한 경우는 A1S62DA의 하 었을 때에 ON합니다. 드웨어 고장 • 시퀀서 CPU의 전원 투입 시 • D/A 변환 준비 완료는 2채널의 전체 D/A 변환을 한번 완료하고 또는 리셋 시에 일반 모드(테 아날로그 출력값을 외부로 출력 스트 모드 이외)로 D/A 변환 하였을 때입니다. 준비가 완료되면 ON합니다. • 버퍼 메모리 불러오기/저장 시의 인터록으로 사용 가능합 니다. • 유니트 전면의 테스트 단자를 단락하면 OFF합니다. X2 에러 플러그 • A1S62DA에서 감시 타이머 에 러 이외의 에러가 발생하였을 때에 ON합니다. • 에러 리셋 플러그를 ON하거나 2채널의 설정값 체크 코드 저 장 영역(버퍼 메모리 주소10, 11)에 “0”을 저장하면 X2는 OFF합니다. Y10 Y11 D/A 변환값 출력 허가 플러그 • 채널1, 2용 D/A 변환값 출력 Y10...채널1의 D/A 변환값 출력 허가 플러그 허가 플러그로 ON하면 해당 채널의 D/A 변환값 출력이 허 Y11...채널2의 D/A 변환값 출력 허가 플러그 가 상태로 됩니다. • D/A 변환값 출력을 금지하려 면 OFF로 합니다. Y18 에러 리셋 • 에러 리셋 신호를 ON하여 A1S64AD의 에러 발생으로 ON 한 에러 플러그를 OFF함과 동 시에 버퍼 메모리의 설정값 체크 코드를 삭제하고 “0”을 저장합니다. 7 - 26 시스템이 ON /OFF합니다. 에러 플러그 (X2) 에러 리셋 (Y18) 버퍼 메모리 주소(10, 11) 사용자프로 그램으로ON /OFF합니다. 체크 코드 7.5.3.3 버퍼 메모리 A1S62DA에는 시퀀서 CPU와의 데이터 교신용 버퍼 메모리가 있습니다(배 터리는 사용할 수 없습니다.). 버퍼 메모리의 할당이나 데이터 구성에 대해 설명하겠습니다. 7.5.3.3.1 버퍼 메모리 할당 버퍼 메모리의 할당은 다음과 같습니다. 주소 (10진수) 아날로그 출력 허가ㆍ금지 채널 CH1 디지털 값 CH2 디지털 값 기본값 불러오기 저장 참조 가능 가능 3.7.5항 가능 가능 3.7.5항 가능 가능 3.7.5항 가능 가능 3.7.5항 사용 불가 디지털 값의 분해능 배율 CH1 설정값 체크 코드 CH2 설정값 체크 코드 사용 불가 그림3.6 버퍼 메모리의 할당 7.5.3.3.2 아날로그 출력 허가ᆞ금지 채널 설정 영역(주소0) (1) 채널별로 D/A 변환한 아날로그 값의 외부 출력 허가/금지를 설정하 는 영역입니다. (2) 아래와 같은 경우에는 전 채널이 출력 허가로 됩니다. (a) 전원 투입 시 (b) 시퀀서 CPU의 리셋 (3) 외부 출력의 허가/금지는 채널별로 I/O로 설정합니다. (a) 1 ....... 금지 (b) 0 ....... 허가 (4) 채널별 출력 허가/금지 영역의 구성은 다음과 같습니다. 무시됩니다. 그림3.7 채널별 출력 허가/금지 영역의 구성 7 - 27 7.5.3.3.3 CH.1, CH.2의 디지털 값 설정 영역(주소1, 2) (1) 시퀀서 CPU에서 D/A 변환을 하기 위한 디지털 값을 저장하는 영역입 니다. (2) 아래와 같은 경우에는 전 채널의 디지털 값이 0으로 됩니다. (a) 전원 투입 후 D/A 변환 READY(X1)가 ON하였을 때 (b) 시퀀서 CPU를 리셋한 다음 D/A 변환 READY(X1)가 ON하였을 때 (3) 설정 가능한 디지털 값은 16비트 부호 바이너리로 디지털 값 분해능 이 설정 가능한 범위입니다. 디지털 값 분해능이 설정 가능한 영역 이외의 값을 설정하면 표3.6 의 데이터로 D/A 변환을 실시합니다. 또 설정값 체크 코드 저장 영역(주소10, 11)에 체크 코드가 저장됩 니다. 표3.6 디지털 값 설정 가능 범위 출력 디지털 값 분해능 1/4000 전압 출력 1/8000 1/12000 1/4000 전류 출력 1/8000 1/12000 설정 가능 범위 -4096~4095 (실용 범위:-4000~4000) -8192~8192 (실용 범위:-8000~8000) -12288~12287 (실용 범위:-12000~12000) 0~4095 (실용 범위:0~4000) 0~8191 (실용 범위:0~8000) 0~12287 (실용 범위:0~12000) 7 - 28 범위 이외의 값을 설 정하였을 때의 D/A 변환 디지털 값 4096 이상: 4095 -4097 이하: -4096 8192 이상: 8191 -8193 이하: -8192 12288 이상: 12287 -12289 이하:-12288 4096 이상: 4095 -1 이하: 0 8192 이상: 8191 -1 이하: 0 12288 이상: 12287 -1 이하: 0 7.5.3.3.4 디지털 값의 분해능 배율 설정 영역(주소9) (1) 아날로그 출력 전압의 범위에 대한 디지털 값의 분해능을 설정하는 영역으로 설정한 분해능은 전 채널 공통입니다. (2) 아래와 같은 경우에는 디지털 값의 분해능 배율이 “1”(1/4000)이 됩 니다. (a)전원 투입 시 (b)시퀀서 CPU의 리셋 (3) 설정 가능한 배율은 1~3의 범위입니다. 표3.7 배율 설정 범위 배율 설정값 디지털 값의 분해능 1 2 3 1/4000 1/8000 1/12000 포인트 (1) 배율 1~3 이외의 값을 저장하면 배율을 변경하지 않고 저장하기 전의 최종 설정값 또는 기본값으로 처리됩니다. (2) 분해능 배율 변경은 시퀀서 CPU가 RUN 중일 때 D/A 변환값 출력 허가 플러그를 허가(ON)하기 전에 1회만 실행하십시오. D/A 변환값 출력을 허가하고 있을 때에 설정을 변경하면 설정값 에러 또는 아날로그 출력이 바뀔 수가 있습니다. 7.5.3.3.5 CH.1, CH.2의 설정값 체크 코드 저장 영역(주소10, 11) (1) 설정한 디지털 값이 디지털 값 분해능의 설정 범위 이내인가를 체크 하는 영역입니다. (2) 디지털 값 분해능의 설정 범위 미만이거나 설정 범위를 넘었을 때는 표3.8의 체크 코드가 저장됩니다. 표3.8 체크 코드 일람 체크 코드 000Fh 00F0h 00FFh 디지털 디지털 디지털 디지털 값 분해능의 값 분해능의 값 분해능의 값을 동시에 내용 설정 범위를 넘은 디지털 값을 설정한 경우 설정 범위에 못 미치는 디지털 값을 설정한 경우 설정 범위에 못 미치는 디지털 값과 범위를 넘는 설정한 경우 (3) 한번 저장된 체크 코드는 설정값이 디지털 값 분해능의 설정 범위 이내로 되어도 리셋되지 않습니다. 설정값 체크 코드 저장 영역을 리셋하려면 에러 리셋 플러그(Y18)를 ON으로 하거나, 저장 영역에 “0”을 저장합니다. 포인트 설정값 체크 코드 저장 영역에 체크 코드를 저장하면 에러 플러그 (X2)가 ON합니다. 7 - 29 7.5.4 운전까지의 설정과 순서 7.5.3.2 각부의 명칭 A1S62DA의 각부에 대한 명칭을 설명하겠습니다. 번호 명칭과 외관 내 용 RUN LED A1S62DA의 운전 상태를 표시합니다. (일반 모드) 점등 : 정상 동작 중 소등 : 5V 전원 단절이나 감시 타이머 에러 점멸 : 디지털 값을 저장하였을 때나 상한값 또는 하한값을 초과하여 설정한 경우에 0.1초 간격으로 점멸합니다. (테스트 모드) 소등 : 오프셋ㆍ게인 스위치가 SET 위치일 때 점멸 : 오프셋ㆍ게인 선택 스위치가 OFFSET 또는 GAIN 위치일 때 0.5초 간격으로 점멸합니다. UP/DOWN 스위치로 설정 가능한 범위를 벗어나 상한값 또는 하한값이 되면 0.1초 간격으로 고속 점멸합니다. 채널 선택 스위치 오프셋 및 게인 값을 조정할 채널을 선택합니다. 7 - 30 번호 명칭과 외관 오프셋/게인 선택 스위치 내 용 OFFSET 위치: 오프셋 값을 설정할 때에 스위치를 OFFSET 위치로 합니다. GAIN 위치 : 오프셋 값을 설정할 때에 스위치를 GAIN 위치로 합니다. SET 위치 : 스위치를 OFFSET 또는 GAIN 위치에서 SET 위치로 바꾸었을 때 설정한 오프셋 값 또는 게인 값을 A1S62DA에 저장합니다. UP/DOWN 스위치 지정된 채널의 오프셋 값 또는 게인 값을 증감시킵니다. 테스트 모드 단자 오프셋ㆍ게인을 설정할 때 단자 1-3 사이를 단락합니다. 출력 홀드/삭제 설정 단자 시퀀서 CPU가 STOP일 때의 아날로그 출력 상태를 설정합니다. 단자 2-4 개방 : 삭제 단자 2-4 단락 : 홀드 7 - 31 7.5.3.2.1 오프셋/게인 설정 순서 입출력 변환 특성은 아래 순서에 따라 변경하십시오. 시 작 테스트 모드 단자(1-3 사이)를 단락합니다. 오프셋/게인 선택 스위치를 “GAIN”으로 합니다. 점멸 “채널 선택 스위치”를 변경 할 채널에 맞춥니다. 소등 설정할 채널 에 맞춥니다. 오프셋/게인 선택 스위치를 “OFFSET”으로 합니다. 점멸 “UP/DOWN 스위치”로 오프셋 값이 될 전압 또는 전류에 맞춥니다. “UP/DOWN 스위치”로 게인 값이 될 전압 또는 전류에 맞춥니다. 전압의경우 전류의 경우 실제로 연결할 저항값 오프셋/게인 선택 스위치를 “SET”로 합니다. 소등 다른 채널도 조정하시겠습니까? 전압의경우 전류의 경우 실제로 연결할 저항값 테스트 모드 단자(1-3사이)를 개방합니다. 오프셋/게인 선택 스위치를 “SET”로 합니다. 소등 종 7 - 32 료 7.5.5 프로그래밍 프로그래밍 순서 디지털 값의 분해능 배율을 1/4000로 설정합니다. 채널1을 아날로그 출력 허가, 채널2를 아날로그 출력 금지 채널로 설정합니다. 초기 설정 WDT 에러 플러그가 OFF, D/A 변환 READY 플러그가 ON일 때 채널1의 출력 허가 플러그를 ON으로 합니다. BCD 디지털 스위치로부터의 입력(X30~X3F)을 바이너리로 변환하여 D0에 저장합니다. 디지털 값 저장 D0의 값을 버퍼 메모리의 주소1에 저장합니다. 에러 플러그가 ON하였을 때 Y60을 설정합니다. 에러가 발생하면 버퍼 메모 리의 주소10에서 체크 코드 를 D1로 불러옵니다. 설정값이 4096 이상의 값이면 Y61을 ON합니다. 에러 보기 설정값이 -4097 이하의 값이면 Y62을 ON합니다. 에러 표시와 체크 코드를 리셋합니다. 에러 리셋 종 료 7 - 33 7.6 A1SD61형 고속 카운트 유니트 이 사용자 매뉴얼은 MELSEC-A 시리즈 CPU 유니트(이하 시퀀서 CPU로 함)와 조합하여 최고 계수 속도 50kPPS까지의 카운트를 하는 A1SD61형 고속 카운터 유니트(이하 A1SD61로 함)의 사양과 취급, 프로그래밍을 설 명한 것입니다. A1SD61은 1상/2상 펄스 입력에 대해 다음과 같이 카운트합니다. 1상 펄스 입력 ........... 펄스가 올라갈 때에 카운트 2상 펄스 입력 1체배 ...... A상 펄스가 올라갈 때 카운트 2상 펄스 입력 2체배 ...... A상 펄스가 올라가거나 내려갈 때 카운트 2상 펄스 입력 4체배 A상 .. 펄스/B상 펄스가 올라가거나 내려갈 때 카운트 A1SD61의 동작 개요는 다음과 같습니다. 입출력 신호 시퀀서 CPU 버퍼 메모리의 불러오기/저장 펄스 펄스 발생 기기 인코더 제어기 리밋 스위치 출력 (8채널) 외부 입력 신호 프리세트 카운터 기능 선택 ① A1SD61에 입력된 펄스를 카운트합니다. ② 외부 입력 신호로 프리세트, 카운터 기능을 선택할 수 있습니다. ③ 리밋 스위치 출력으로 카운트 현재값과 비교하여 신호를 출력할 수 있습니다. ④ 시퀀스 프로그램으로 A1SD61의 입출력 신호, 버퍼 메모리 상태를 확인할 수 있습니다. 또 카운트 시작/정지, 프리세트 등을 실시할 수 있습니다. * A1SD61은 AD61(S1)의 기능과 다릅니다. 부록1을 참조하십시오. 7 - 34 7.6.1 특징 (1) -2147483648~2147483647 범위의 계수가 표현 가능 카운트 값을 32비트 부호 바이너리로 저장합니다. (2) 카운트 체배가 가능(제5장 참조) 2상 펄스 입력 시에 1체배/2체배/4체배 가운데 하나를 선택할 수 있 습니다. (3) 최고 계수 속도 50kPPS/10kPPS 변환이 가능(3.2항, 4.3항 참조) 50kPPS일 때는 1상 입력, 2상 입력 모두 50kPPS까지 펄스를 카운트 할 수 있습니다. 10kPPS일 때는 1상 입력에서 10kPPS, 2상 입력에서 7kPPS까지 펄스를 카운트할 수 있습니다. (4) 링 카운터 기능이 가능(제7장 참조) 설정된 프리세트 값과 링 카운터 값 사이에서 반복해서 카운트할 수 있습니다. (5) 리밋 스위치 출력이 가능(제8장 참조) 임의의 CH의 출력 상태를 미리 설정해 놓고 카운터 현재값과 비교하 여 ON/OFF 신호를 출력합니다. (a) 1유니트로 8채널 출력이 가능합니다. (b) 1채널의 도그 수는 4입니다. (6) 4개의 카운터 기능이 선택 가능(제9장 참조) 아래 기능 가운데 하나를 선택할 수 있습니다. (a) 래치 카운터 기능 (b) 샘플링 카운터 기능 (c) 주기 펄스 카운터 기능 (d) 카운트 금지 기능 (7) 외부 입력에 의한 프리세트 기능/카운터 기능의 선택 실행이 가능 (6.3항, 9장 참조) 외부 단자 PRESET(프리세트) 단자/F.START(기능 시작) 단자에 전압 을 인가하면 프리세트 기능/카운터 기능을 선택하여 실행할 수 있습 니다. 7 - 35 7.6.2 성능 사양 A1SD61의 성능 사양은 다음과 같습니다. 표3.2 성능 사양 항목 사양 계수 속도 변환 설정 핀 입출력 점유 점 수 채널 수 상 신호 레벨 카운트 ) 입력 신호 ( 50k쪽 32점 1채널 1상 입력, 2상 입력 계수 속도 ※(최고) 계수 범위 형 10k쪽 1상 입력 2상 입력 식 DC 5V DC12V 2~5㎃ DC24V 50kPPS 10kPPS 50Kpps 7kPPS 32비트 부호 바이너리 -2147483648~2147483647 UP/DOWN 프리세트 카운터 +링 카운터 기능 최소 카운트 펄스 폭 카운터 입력의 올라 가고 내려가는 시간은 5㎲ 이 하로 하십시 오. 듀티비 50% 리밋 스위치 출력 (1, 2상 입력) 비교 범위 비교 결과 외부 입력 (1상 입력) 프리세트 기능 시작 외부 출력 비교 출력 소비 전류(DC5V) 질 (2상 입력) 32비트 부호 바이너리 a 접점 동작 : 도그 ON 주소 ≤ 카운트 값 ≤ 도그 OFF 주소 b 접점 동작 : 도그 OFF 주소 ≤ 카운트 값 ≤ 도그 ON 주소 DC12/24V 3/6㎃ DC5V 5㎃ 트랜지스터(오픈 컬렉터) 출력 DC12/24V O.1A/1점 0.8A/1커몬 0.35A 량 0.27kg ※ 계수 속도는 펄스가 올라가거나 내려가는 시간의 영향을 받습니다. 카운트 가능한 계수 속도는 다음 표와 같습니다. 올라가거나 내려가는 시간이 큰 펄스를 카운트하면 에러가 발생하기 쉬우므로 주의하십시오. 계수 속도 변환 설정 핀 올라가기/내려가기 시간 t=5㎲ 이하 t=50㎲ 이하 t=50㎲ 50K 1상 입력 2상 입력 50kPPS 50kPPS 5kPPS 5kPPS - - 10K 1상 입력 2상 입력 10kPPS 7kPPS 1kPPS 700PPS 500PPS 7 - 36 250PPS 7.6.3 기능 A1SD61의 기능 일람은 다음과 같습니다. 표3.3 기능 사양 명칭 내용 참조 프리세트 기능 • 카운터 현재값을 임의의 수치로 바꾸는 기능 • 프리세트는 시퀀스 프로그램 또는 외부 프리세트 입력으로 실행합니다. 6장 링 카운터 기능 • 링 카운터 명령에 의해 설정된 프리세트 값과 링 카운터 값 사이에서 반복해서 카운트합니다. 7장 리밋 스위치 출력 기능 • 임의의 채널 출력 상태를 미리 설정해 놓고 리밋 스위치 출력 명령 카운터의 현재값과 비교하여 ON/OFF 신호를 출 력하는 기능입니다. 8장 래치 카운터 기능 • 카운터 기능 선택 시작 명령 신호가 입력되었을 때의 카운 터 현재값을 버퍼 메모리에 저장하는 기능 9.2항 샘플링 카운터 기능 • 카운터 기능 선택 시작 명령 신호가 입력된 다음 미리 설 정한 샘플링 시간 동안 입력된 펄스를 카운트하여 버퍼 메 모리에 저장하는 기능 9.3항 주기 펄스 카운터 기능 • 카운터 기능 선택 시작 명령 신호가 입력되고 있는 동안 입력된 펄스 수를 미리 설정한 주기 시간마다 버퍼 메모리 에 저장하는 기능 9.4항 카운트 금지 기능 • 카운트 가능 명령이 ON일 때 펄스 카운트를 정지시키는 기 능 9.5항 카 운 터 기 능 선 택 ※ 카운터 기능 선택에서는 4개의 기능 가운데 하나만 선택할 수 있습니다. 7 - 37 7.6.4 외부 기기와의 인터페이스 A1SD61의 외부 기기 인터페이스 일람은 다음과 같습니다. 표3.4 외부 기기 인터페이스 일람 입출력 구분 단자 번호 내부 회로 펄스 입력 전압 설정 핀 1 신호 명칭 동작 입력 전압 (보증값) 동작 전류 (보증값) A상 펄스 입력 24V ON일 때 21.6~26.4V 2~5㎃ OFF일 때 5V 이하 0.1㎃이하 ON일 때 10.8~13.2V 2~5㎃ OFF일 때 ON일 때 4V 이하 4.5~5.5V 0.1㎃이하 2~5㎃ OFF일 때 2V 이하 0.1㎃이하 A상 펄스 입력 12V A상 펄스 입력 5V 2 입력 COM B상 펄스 입력 24V 펄스 입력 전압 설정 핀 3 B상 펄스 입력 12V 4 B상 펄스 입력 5V COM 프리세트 입력 12V/24V 외부 입력 전압 설정 핀 5 입력 6 프리세트 입력 5V COM 기능 시작 입력 24V 외부 입력 전압 설정 핀 7 입력 기능 시작 입력 12V 기능 시작 입력 5V 8 COM 11 OUT 1 12 13 14 15 16 17 18 19 OUT 2 OUT 3 OUT 4 OUT 5 OUT 6 OUT 7 OUT 8 12/24V 20 0V 출력 ON일 때 21.6~26.4V 2~5㎃ OFF일 때 ON일 때 5V 이하 10.8~13.2V 0.1㎃이하 2~5㎃ OFF일 때 ON일 때 4V 이하 4.5~5.5V 0.1㎃이하 2~5㎃ OFF일 때 2V 이하 0.1㎃이하 ON일 때 10.2~26.4V 2~6㎃ OFF일 때 ON일 때 2V 이하 4.5~5.5V 0.1㎃이하 3.5~5.5㎃ OFF일 때 응답 시간 ON일 때 1.5V 이하 OFF→ON 1㎳ 이하 21.6~26.4V 0.1㎃이하 ON→OFF 3.5 ㎳이하 2~5㎃ OFF일 때 ON일 때 5V 이하 10.8~13.2V 0.1㎃이하 2~5㎃ OFF일 때 ON일 때 4V 이하 4.5~5.5V 0.1㎃이하 2~5㎃ OFF일 때 응답 시간 사용 정격 최대 ON일 *2 응답 2V 이하 0.1㎃이하 OFF →ON 1㎳ ON →OFF 1㎳ 이하 이하 전압 10.2~30V 정격 전류 0.5A 전압 0.1A/1점 0.8A/1커몬 돌입 전류 0.6A 10ms 때의 최대 전압 강하 0.7V(TYP) 1.3V(MAX) 시간 OFF →ON 1㎳(MAX) 0.3㎳(MIN) ON →OFF 1㎳(MAX) 0.3㎳(MIN) 입력 전압 10.2V~30V 소비 전류 8㎃(TYP DC24V) *1 ... 프리세트 입력과 기능 시작 입력의 외부 입력 전압 설정 핀은 같 은 것입니다. *2 ... 응답 시간에는 내부 처리 시간이 포함되어 있습니다. 데이터를 검출하여 외부로 출력할 때까지의 시간입니다. 7 - 38 7.6.5 시퀀서 CPU에 대한 입출력 신호 A1SD61의 시퀀서 CPU에 대한 입출력 신호는 표3.5와 표3.6과 같습니다. 이 장 이후의 입출력 번호 (X, Y), I/O 주소는 A1SD61을 기본 베이스 유니트의 I/O 슬롯 0에 장착한 경우입니다. 표3.5 입력 신호 일람 입력 신호 신호 명칭 A1SCPU ←A1SD61 내용 X00 WDT 에러 플러그 A1SD61에서 감시 타이머 에러가 발생하 면 ON합니다. X01 X02 X03 X04 X05 X06 X07 X08 CH1 CH2 CH3 CH4 CH5 CH6 CH7 CH8 리밋 리밋 리밋 리밋 리밋 리밋 리밋 리밋 스위치 스위치 스위치 스위치 스위치 스위치 스위치 스위치 출력 출력 출력 출력 출력 출력 출력 출력 상태 상태 상태 상태 상태 상태 상태 상태 플러그 플러그 플러그 플러그 플러그 플러그 플러그 플러그 X09 리밋 스위치 출력 가능 플러그 X0A 외부 프리세트 명령 검출 플러그 X0B 에러 플러그 X0C 퓨즈/외부 전원 절단 검출 플러그 X0D 샘플링/주기 펄스 카운터 플러그 참조 리밋 스위치 출력과 동기하여 ON/OFF합 니다. 리밋 스위치 출력 명령(Y15)이 OFF일 때 8.1항 는 모든 채널을 OFF합니다. 리밋 스위치 동작이 가능할 때에 ON합니 다. PRESET 단자에 프리세트 명령(전압 인 가)이 들어가면 ON합니다. 6.3항 외부 프리세트 명령 검출 리셋 명령 (Y16)이 ON하면 OFF합니다. 설정값에 에러가 있으면 ON합니다. 에러 플러그가 ON함과 동시에 저장 데이 터 에러 코드 저장용 버퍼 메모리(주소 11)에 에러 코드를 저장합니다. 리밋 스위치 출력 부분의 퓨즈가 절단되 었을 때 또는 OUT 단자에 전압이 공급되 지 않을 때에 ON합니다. 샘플링/주기 펄스 카운터 기능을 실행하 9.3항 고 있으면 ON합니다. 9.4항 X0E ~ X1F 사용 불가 7 - 39 표3.6 출력 신호 일람 출력 신호 Y00 ~ Y0F 신호 명칭 CPU →A1SD61 동작 타이밍 내용 참조 사용 불가 *1 Y10 카운트 허가 명령 펄스를 카운트합니다. 뺄셈 카운트 명령 ON일 때에 펄스 입력으로 뺄 셈 카운트를 합니다. 1상 펄 스를 입력할 때만 유효합니 다. 단 외부 입력 과의 병 용은 불가능합니다. 프리세트 명령 프리세트를 실행합니다. 링 카운터 명령 링 카운터를 실행합니다. *1 Y11 *2 Y12 *1 Y13 *1 Y14 *2 *1 Y15 *1 Y16 카운터 기능 선택 시작 명령 6.2.1항 7.1항 카운터 기능 선택을 실행합니 9.2항, 9.3항, 다. 9.4항, 9.5항 8.1항 리밋 스위치 출력(8CH 일괄) 을 가능하게 합니다. 리밋 스위치 출력 명령 외부 프리세트 명령 검출 리셋 명령 외부 프리세트 명령 검출 플 러그(X0A)를 OFF합니다. 에러 리셋 명령 에러 코드를 리셋함과 동시에 에러 플러그(X0B)를 OFF합니 다. *2 Y17 5.1.1항 Y18 ~ Y1F 6.3.1항 사용 불가 비고 ① 표3.6의 동작 타이밍 ( )은 다음과 같이 되어 있습니 다. .......... 신호가 ON일 때 유효합니다. .......... 신호가 올라갈 때(OFF→ON) 유효합니다. 포인트 * 1 .....ON일 때의 동작에서는 OUT 명령을 사용하십시오. * 2 .... 올라갈 때의 동작에서는 PLS 명령을 사용하십시오. 출력 신호(Y10~17)를 SET/RST 명령으로 ON/OFF시켰을 때 ON 시간을 1.5[ms] 이상으로 하지 않으면 정상으로 동작하지 않는 경우가 있습니 다. 7 - 40 7.6.6 버퍼 메모리 할당 A1SD61의 버퍼 메모리 할당은 표3.7과 같습니다. 버퍼 메모리 주소12~147의 설정 내용은 표3.8과 같습니다. 버퍼 메모리는 전원이 ON할 때나 시퀀서 CPU를 리셋하였을 때에 초기값 이 설정됩니다. 시퀀서 CPU의 시퀀스 프로그램에서 FROM/TO 명령으로 버퍼 메모리 내용 을 불러오거나 저장합니다. 포인트 특수 기능 유니트의 각종 처리에서 시퀀서 CPU로부터의 접근은 우선 처 리됩니다. 따라서 시퀀서 CPU에서 특수 기능 유니트의 버퍼 메모리로 빈번하게 접 속하면 시퀀서 CPU의 스캔 타임이 늘어날 뿐만이 아니고 특수 기능 유니 트의 각종 처리에도 지연이 발생합니다. FROM/TO 명령 등을 이용해 시퀀서 CPU로부터 버퍼 메모리에 접속하는 것 은 필요한 경우에만 실행하십시오. 표3.7 버퍼 메모리 할당 주소 0 1 2 3 4 5 6 7 8 9 10 11 12~28 29~45 46~62 63~79 80~96 97~113 114~130 131~147 설정 내용 현재값 초기값 (L) (H) (L) 카운터 기능 선택 카운트 값 (H) 펄스 입력 모드 설정 카운터 기능 선택 설정 (L) 프리세트 값 설정 (H) (L) 링 카운터 값 설정 (H) 샘플링/주기 시간 설정 저장 데이터 에러 코드 CH1 리밋 스위치 출력 데이터 설정 CH2 리밋 스위치 출력 데이터 설정 CH3 리밋 스위치 출력 데이터 설정 CH4 리밋 스위치 출력 데이터 설정 CH5 리밋 스위치 출력 데이터 설정 CH6 리밋 스위치 출력 데이터 설정 CH7 리밋 스위치 출력 데이터 설정 CH8 리밋 스위치 출력 데이터 설정 불러오기/저장 0 참조 5.3항 불러오기 전용 0 9.1.1항 0 0 5장 9.1항 6.2.1항 6.3.1항 0 불러오기/저장 가능 1024 7.1항 1 0 0 0 0 0 0 0 0 0 9.3항, 9.4항 10.1항 7 - 41 불러오기/저장 가능 8.1항 표3.8 표3.8 버퍼 메모리 주소12~147(CH1~CH8 리밋 스위치 출력 데이터 설정)의 내용 설정 내용 CH CH 의 멀티도그 수 의 도그 No.0 (L) (H) 의 ON 주소 CH 의 도그 No.0 (L) (H) 의 OFF 주소 CH 의 도그 No.1 (L) (H) 의 ON 주소 CH 의 도그 No.1 (L) (H) 의 OFF 주소 CH 의 도그 No.3 (L) (H) 의 ON 주소 CH 의 도그 No.3 (L) (H) 의 OFF 주소 CH 의 도그 No.4 (L) (H) 의 ON 주소 CH 의 도그 No.4 (L) (H) 의 OFF 주소 버퍼 메모리 63~79 80~96 97~113 114~130 131~147 CH.4 CH.5 CH.6 CH.7 CH.8 63 80 97 114 131 64 81 98 115 132 65 82 99 116 133 66 83 100 117 134 67 84 101 118 135 12~28 CH.1 12 13 14 15 16 29~45 CH.2 29 30 31 32 33 46~62 CH.3 46 47 48 49 50 17 18 19 20 21 22 23 24 25 26 34 35 36 37 38 39 40 41 42 43 51 52 53 54 55 56 57 58 59 60 68 69 70 71 72 73 74 75 76 77 85 86 87 88 89 90 91 92 93 94 102 103 104 105 106 107 108 109 110 111 119 120 121 122 123 124 125 126 127 128 136 137 138 139 140 141 142 143 144 145 27 28 44 45 61 62 78 79 95 96 112 113 129 130 146 147 은 채널 번호입니다. 7 - 42 7.6.7 7.6.7.1 운전까지의 설정과 순서 각부의 명칭 A1SD61의 각부에 대한 명칭과 설정 방법을 설명하겠습니다. 번호 명칭 ① 계수 속도 변환 설정 핀 ② ③ ④ 내용 펄스 입력 전압 설정 핀 외부 입력 전압 설정 핀 퓨즈 RUN ⑤ ⑥ ⑦ ⑧ ⑨ A B LED 보 기 A B 50k쪽 : 1상 입력/2상 입력에서 50kPPS의 속도까지 카운트 가능 10k쪽 : 1상 입력에서 10kPPS, 2상 입력에서 7kPPS의 속도까지 카운트 가능 (출하시에는 50k) (단락 밸브로 설정) A상/B상에 입력할 펄스의 전압을 설정합니다(출하시에는 24V쪽). 설정한 전압보다 높은 전압의 펄스를 인가하면 유니트를 보증할 수 없습니 다. (단락 밸브로 설정)(3.4항 참조) PRESET 단자/F.START 단자에 입력할 전압을 설정합니다(출하시에는 24V쪽). 설정한 전압보다 높은 전압을 인가하면 유니트를 보증할 수 없습니다.(단락 밸브로 설정)(3.4항 참조) OUT1~OUT8의 과전류 보호용 퓨즈(기판 납땜 타입) 점등 : 정상 동작 점멸 : 저장 데이터 에러 소등 : 감시 타이머 에러 A상 펄스 입력 단자에 전압을 인가하면 점등합니다. B상 펄스 입력 단자에 전압을 인가하면 점등합니다. PRESET 단자에 전압을 인가하면 점등합니다. 외부 프리세트 명령 검출 리셋 명령(Y16)이 ON하면 소등합니다. F.START 단자에 전압을 인가하면 점등합니다. 리밋 스위치 출력 기능으로 각 채널의 리밋 스위치를 ON으로 하면 점등하고 OFF로 하면 소등합니다. 펄스 입력 단자( B는 뺄셈 카운트 명령으로도 사용) 외부로부터 프리세트를 실행할 때에 전압을 인가하는 단자 카운터 기능 선택을 실행할 때에 전압을 인가하는 단자 리밋 스위치 출력의 외부 출력 단자 7 - 43 7.6.8 펄스 입력과 카운트 방법 1SD61의 펄스 입력과 카운트 방법을 설명하겠습니다. (1) 펄스 입력 방식에는 1상 펄스 입력과 2상 펄스 입력이 있습니다. (a) 1상 펄스 입력 1상 펄스 입력 시에는 아래와 같은 카운트가 가능합니다. ① A상 덧셈 펄스 입력과 뺄셈 카운트 명령에 의한 카운트 ② A상 덧셈 펄스 입력과 B상 뺄셈 펄스 입력에 의한 카운트 (b) 2상 펄스 입력 2상 펄스 입력 시에는 아래와 같은 카운트가 가능합니다. ① 1체배 ....... A상 펄스가 올라갈 때 카운트 ② 2체배 ....... A상 펄스가 올라가거나 내려갈 때 카운트 ③ 4체배 ....... A상 펄스/B상 펄스가 올라가거나 내려갈 때 카운트 (2) 1상 펄스 입력의 경우에는 펄스가 올라갈 때 카운트합니다. (3) 펄스 입력 모드를 변경한 경우에는 “0”부터 카운트합니다. 7 - 44 7.6.8.1 1상 펄스 입력 1상 펄스 입력에 의한 카운트 방법을 설명하겠습니다. 7.6.8.1.1 A상 덧셈 펄스 입력과 뺄셈 카운트 명령에 의한 카운트 A상 덧셈 펄스 입력과 뺄셈 카운트 명령을 사용하면 아래와 같은 카운 트가 가능합니다. A상에 입력될 펄스가 올라갈 때에 덧셈 카운트합니다. A상에 입력될 펄스가 올라갈 때 뺄셈 카운트 명령(B상에 전압 인 가 또는 시퀀서 CPU에 의한 Y11의 ON)이 입력되어 있으면 뺄셈 카운트를 합니다. (1) 덧셈 카운트 덧셈 카운트 시의 펄스 입력, 뺄셈 카운트 명령, 현재값 저장용 버 퍼 메모리의 관계는 다음과 같습니다. 인코더 펄스 입력 펄스 입력(A상) 뺄셈 카운트 명령 (B상, Y11) 현재값 저장용 버퍼 메모리 (주소0~1) (2) 뺄셈 카운트 뺄셈 카운트 시의 펄스 입력, 뺄셈 카운트 명령, 현재값 저장용 버퍼 메모리의 관계는 다음과 같습니다. 펄스 인코더 펄스 입력 뺄셈 카운트 명령 (Y11의 ON) 입력(A상) 뺄셈 카운트 명령 (B상, Y11) 현재값 저장용 버퍼 메모리 (주소0~1) 포인트 뺄셈 카운트 명령은 B상의 전압 인가 또는 시퀀서 CPU에 의한 Y11의 ON 가운데 하나로 실행하십시오. (3) 카운트 방법의 설정 이 카운트 방법을 사용할 때는 시퀀스 프로그램에서 A1SD61의 펄스 입력 모드 설정용 버퍼 메모리(주소4)에 0을 설정하십시오. [시퀀스 프로그램] 저장 명령 WDT 에러 비 고 ① 에는 A1SD61에 할당된 선두 입출력 번호를 16진수 3자리로 표현하였을 때의 위 2자리를 설정하십시오. 7 - 45 7.6.8.1.2 A상 덧셈 펄스 입력과 B상 뺄셈 펄스 입력에 의한 카운트 A상 덧셈 펄스 입력과 B상 뺄셈 펄스 입력을 사용하면 아래와 같은 카 운트가 가능합니다. *A상에 입력될 펄스가 올라갈 때에 덧셈 카운트합니다. *B상에 입력될 펄스가 올라갈 때 뺄셈 카운트합니다. *A상과 B상에 펄스를 입력하면 카운트 값은 덧셈 펄스 수와 뺄셈 펄스 수의 뺄셈이 됩니다. (1) 덧셈 카운트 덧셈 카운트 시의 덧셈 펄스 입력, 뺄셈 펄스 입력, 현재값 저장용 버퍼 메모리의 관계는 다음과 같습니다. 인코더 인코더 덧셈 펄스 입력 덧셈 펄스 입력(A상) 뺄셈 펄스 입력 뺄셈 펄스 입력(B상) 현재값 저장용 버퍼 메모리 (주소0~1) (2) 뺄셈 카운트 뺄셈 카운트 시의 덧셈 펄스 입력, 뺄셈 펄스 입력, 현재값 저장용 버퍼 메모리의 관계는 다음과 같습니다. 인코더 인코더 덧셈 펄스 입력 덧셈 펄스 입력(A상) 뺄셈 펄스 입력 뺄셈 펄스 입력(B상) 현재값 저장용 버퍼 메모리 (주소0~1) (3) 덧셈/뺄셈 카운트 덧셈/뺄셈 카운트 시의 덧셈 펄스 입력, 뺄셈 펄스 입력, 현재값 저 장용 버퍼 메모리의 관계는 다음과 같습니다. 인코더 인코더 덧셈 펄스 입력 덧셈 펄스 입력(A상) 뺄셈 펄스 입력 뺄셈 펄스 입력(B상) 현재값 저장용 버퍼 메모리 (주소0~1) (4) 카운트 방법의 설정 이 카운트 방법을 사용할 때는 시퀀스 프로그램에서 A1SD61의 펄스 입력 모드 설정용 버퍼 메모리(주소4)에 1을 설정하십시오. [시퀀스 프로그램] 저장 명령 WDT 에러 7 - 46 비 고 ① 에는 A1SD61에 할당된 선두 입출력 번호를 16진수 3자리로 표현하였을 때의 위 2자리를 설정하십시오. 7.6.8.2 2상 펄스 입력 2상 펄스 입력 시에는 1체배, 2체배, 4체배의 카운트 방법을 선택할 수 있습니다. 1체배는 A상 펄스가 올라갈 때 덧셈/뺄셈 카운트를 합니다. 2체배는 A상 펄스가 올라가거나 내려갈 때 덧셈/뺄셈 카운트를 합니다. 4체배는 A상/B상 펄스가 올라가거나 내려갈 때 덧셈/뺄셈 카운트 를 합니다. (1) A상 펄스 입력과 B상 펄스 입력의 관계는 다음과 같습니다. A상 펄스 입력 인코더 B상펄스입력 (2) 카운트 방법의 설정 이 카운트 방법을 사용할 때는 시퀀스 프로그램에서 A1SD61의 펄스 입력 모드 설정용 버퍼 메모리(주소4)에 2~4를 설정하십시오. 카운트 방법 설정값 1체배 2체배 4체배 2 3 4 [시퀀스 프로그램] 저장 명령 WDT 에러 비 고 ① 에는 A1SD61에 할당된 선두 입출력 번호를 16진수 3자리로 표현하였을 때의 위 2자리를 설정하십시오. ② 에는 2~4를 설정하십시오. 7 - 47 7.6.8.2.1 2상 펄스 입력 1체배에 의한 카운터 A상 펄스가 올라갈 때 카운트합니다. A상 펄스와 B상 펄스의 위상차로 덧셈 카운트를 할 것인지 뺄셈 카운트 를 할 것인지를 결정합니다. [덧셈 카운트] [뺄셈 카운트] A상 펄스 입력 A상 펄스 입력 B상 펄스 입력 B상 펄스 입력 현재값 저장용 버퍼 메모리(주소0~1) 현재값 저장용 버퍼 메모리(주소0~1) A상 덧셈 카운트 조건 올라갈 때 뺄셈 카운트 조건 A상 올라갈 때 B상 B상 2상 펄스 입력 1체배 카운트 시의 주의 사항 A1SD61의 2상 펄스 입력 1체배 카운트는 A상이 올라갈 때 카운트를 합 니다. 다음과 같은 점에 주의하십시오. (1) 펄스 입력이 아래 범위에서 반복되면 덧셈 또는 뺄셈만 실행됩니다. 이 사이에서 반복되면 덧셈만 합니다. 이 사이에서 반복되면 뺄셈만 합니다. A상 펄스 입력 B상 펄스 입력 (2) 위치 결정 제어와 같이 덧셈과 뺄셈이 필요한 경우에는 4체배를 사 용하도록 하십시오. 7 - 48 7.6.8.2.2 2상 펄스 입력 2체배에 의한 카운트 A상 펄스가 올라가거나 내려갈 때에 카운트합니다. A상 펄스와 B상 펄스의 위상차로 덧셈 카운트를 할 것인지 뺄셈 카운트 를 할 것인지를 결정합니다. [덧셈 카운트] [뺄셈 카운트] A상 펄스 입력 A상 펄스 입력 B상 펄스 입력 B상 펄스 입력 현재값 저장용 버퍼 메모리(주소0~1) 현재값 저장용 버퍼 메모리(주소0~1) A상 덧셈 카운트 조건 내려갈 때 올라갈 때 B상 7.6.8.2.3 뺄셈 카운트 조건 내려갈 때 올라갈 때 A상 B상 2상 펄스 입력 4체배에 의한 카운트 A상 펄스나 B상 펄스가 올라가거나 내려갈 때에 카운트합니다. A상 펄스와 B상 펄스의 위상차로 덧셈 카운트를 할 것인지 뺄셈 카운트 를 할 것인지를 결정합니다. [덧셈 카운트] [뺄셈 카운트] A상 펄스 입력 A상 펄스 입력 B상 펄스 입력 현재값 저장용 버퍼 메모리(주소0~1) B상 펄스 입력 현재값 저장용 버퍼 메모리(주소0~1) A상 올라갈 때 덧셈 카운트 조건 내려갈 때 올라갈 때 B상 A상 올라갈 때 내려갈 때 뺄셈 카운트 조건 내려갈 때 올라갈 때 B상 7 - 49 내려갈 때 7.6.8.3 현재값 불러오기 A1SD61의 현재값 저장용 버퍼 메모리(주소0~1)에 저장된 현재값 내용과 호출 방법을 설명하겠습니다. (1) 현재값 저장용 버퍼 메모리에는 펄스 입력 시, 프리세트 시, 링 카 운터 기능 실행 시, 카운트 금지(카운터 기능 선택) 시의 카운트 값 이 저장되어 있습니다. 단 래치 카운터, 샘플링 카운터, 주기 펄스 카운터 기능 실행 시의 카운트 값은 카운터 기능 선택 카운트 값 저장용 버퍼 메모리(주소 2~3)에 저장됩니다. (2) 현재값(-2147483648~2147483647)이 32비트 부호 바이너리로 현재값 저장용 버퍼 메모리에 저장됩니다. (3) 현재값 저장용 버퍼 메모리는 덧셈 카운트할 때 2147483647을 넘으 면 –2147483648이 됩니다. 현재값 저장용 버퍼 메모리는 뺄셈 카운트할 때 -2147483648을 넘으 면 2147483647이 됩니다. [덧셈 카운트 시] 펄스 입력 현재값 저장용 버퍼 메모리 [뺄셈 카운트 시] 펄스 입력 현재값 저장용 버퍼 메모리 (4) 현재값 저장용 버퍼 메모리의 현재값을 불러오는 시퀀스 프로그램은 다음과 같습니다. 불러오기 명령 WDT 에러 불러올 데이터 수 현재값을 저장할 디바이스의 선두 번호 현재값이 저장된 선두 주소 선두 입출력 번호의 상위 2자리 2워드 단위의 불러오기 명령 7 - 50 7.6.9 프리세트 기능을 실행합니다. [프로그램] 펄스 입력 모드 설정 2상 펄스 입력 1체배에 의한 펄스 입력 모드를 설정 합니다. 카운트 동작을 시작합니다. 카운트 허가 명령의 SET에 의해 펄스를 카운트합니다. 현재값을 불러옵니다. 현재값을 불러와 D1~D2에 저장합니다. 프리세트 명령 프리세트 값 100을 버퍼 메모리 주소 6에 저장합니다. 프리세트를 실행 합니다. 에러 검출/리셋 에러 코드를 불러와 D5에 저장합니다. 에러를 리셋합니다. 카운트 동작을 정지합니다. 카운트 허가 명령의 RST에 의해 펄스 카운트를 중지합니다. 7 - 51 7.7 7.7.1 A68AD형 아날로그/디지털 변환 유니트 각부의 명칭 A68AD의 각부에 대한 명칭을 설명하겠습니다. 자세한 내용은 사용자 매뉴얼을 참조하십시오. 테스트 모드 단자 오프셋ㆍ게인을 설정할 때 단자 1-3 사이를 단락합니다. REN LED A68AD의 운전 상태를 나타냅니다. (일반 모드) 점등 : 정상 동작 중 점멸 : 저장 데이터에서 에러가 발생하였을 때 소등 : 5V 전원이 차단되었거나 감시 타이머 에러 (테스트 모드) 점등 : OFFSET 스위치나 GAIN 스위치가 ON일 때 소등 : OFFSET 스위치나 GAIN 스위치가 OFF일 때 CHANNEL 선택 스위치 오프셋이나 게인을 조정할 채널을 선택합니다(0.9의 위치 는 무처리). OFFSET 스위치 스위치 ON에서 그때의 아날로그 입력값을 오프셋 값으로 하여 A68AD에 저장합니다. GAIN 스위치 스위치 ON에서 그때의 아날로그 입력값을 게인 값으로 하 여 A68AD에 저장합니다. 보기 스위치는 테스트 모드에서만 유효합니다. 7 - 52 7.7.2 A/D 변환 특성 (1) 전압 입력에서의 A/D 변환 특성 디지털 출력 디지털 출력값 입력 전압 아날로그 입력 전압 그림7.12 A/D 변환 특성(전압 입력) 아날로그-디지털 변환 유니트는 외부로부터의 아날로그 입력을 디지 털 값으로 변환하여 CPU에서의 연산을 가능하게 하는 것입니다. 전 압 입력에서는 –10V의 입력으로 디지털 값-2000을 출력하고, 10V에 서 2000을 출력합니다. 따라서 입력 5mV가 디지털 값1에 해당하고, 5mV보다 작은 값은 변환되지 않고 버려집니다. (2) 전류 입력에서의 A/D 변환 특성 디지털 출력 디지털 출력값 입력 전류 아날로그 입력 전압 그림7.13 A/D 변환 특성(전류 입력) 전류 입력 –20mA에서 출력-1000, 0mA에서 출력 0, 20mA에서 출력 1000이 됩니다. 20㎂가 디지털 값1에 해당하고, 20㎂보다 작은 값은 변환되지 않고 버려집니다. 출하 시에는 –12mA에서 –1000, 4mA에서 0, 20mA에서 1000으로 변환하는 특성을 가지고 있습니다. 7 - 53 7.7.3 입출력 번호 할당 D/A 변환 유니트 출력 유니트 입력 유니트 고속 카운터 유니트 A/D 변환 유니트 64점 64점 32점 32점 32점 채널2 채널 채널1 I/O 패널 100펄스/회전 인코더 (입력 전압계) (출력 전압계) 핸들 입력용 볼륨 7.7.4 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리 [입출력 신호] X00 입 (X80) 력 신 X01 호 (X81) 출 력 신 호 감시 타이머 에러 A68AD의 감시 타이머 에러(H/W 이상)가 발생하여 ON A/D 변환 READY 전원 투입 또는 시퀀서 CPU 리셋 시, A/D 변환 준비가 완료되었을 때에 ON 시퀀서 CPU에서 A68AD로 불러오거나 저장할 때의 인터록으로 사용합니다. 없음 • X, Y00~1F 가운데 위에서 열거한 것 이외의 것은 아직 사용하지 않고 있습니다. • (X80), (X81)은 실습기의 할당 번호입니다. [버퍼 메모리] 주소(10진수) 0 채널 수 1 평균 처리 지정 CH1 평균 시간, 회수 CH2 평균 시간, 회수 CH3 평균 시간, 회수 CH4 평균 시간, 회수 CH5 평균 시간, 회수 CH6 평균 시간, 회수 CH7 평균 시간, 회수 CH8 평균 시간, 회수 CH1 디지털 출력값 CH2 디지털 출력값 CH3 디지털 출력값 CH4 디지털 출력값 CH5 디지털 출력값 CH6 디지털 출력값 CH7 디지털 출력값 CH8 디지털 출력값 저장 데이터 에러 코드 7 - 54 아날로그 값 의 샘플링을 시간 또는 회수에 의한 평균 처리로 변경할 때에 사용 경로명 프로젝트명 7.7.5 A:\SCHOOL A68AD 실습기를 통한 연습 A68AD 예제 버퍼 메모리 에서 디지털 값을 불러옵니다. AD 변환 READY 신호 실습기 조작 디지털 값 보기 ① A68AD의 채널2(CH2)로 입력된 아날로그 값은 버퍼 메모리(디지털 값) 에 저장되고, X2를 ON으로 하면 이것을 CPU(데이터 레지스터 D0)로 불러옵니다. ② X3을 ON으로 하면 D0의 값을 외부로 표시합니다. 조작 순서 아래 조작은 4.4의 조작 순서와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 7 - 55 7.8 7.8.1 A62DA형 디지털/아날로그 변환 유니트 각부의 명칭 A68DA의 각부에 대한 명칭을 설명하겠습니다. RUN LED A68DA의 운전 상태를 나타냅니다. (일반 모드)점등 : 정상 동작중 소등 : 5V 전원이 차단되었거나 감시 타이머 에러 (테스트 모드) 점멸 :오프셋 및 게인 설정 스위치가 OFFSET 또는 GAIN 위치일 때 0.5s 간격으로 점멸합니다. UP/DOWN 스위치 로 설정 가능한 범위를 넘어 상한값 또는 하한값이 되었을 때 0.1s 간격으로 고속 점멸합니다. 소등 : 오프셋 및 게인 설정 스위치가 SET 위치일 때 테스트 모드 단자 {}오프셋ㆍ게인을 설정할 때 단자 1-2 사이를 단락합니다. 전원 입력 단자 전원 입력 단자로 <18> DC24V를 연결합니다. 채널 선택 스위치 오프셋이나 게인을 조정할 채널을 선택합니다. 오프셋/게인 선택 스위치 OFFSET 위치 : 오프셋 값 교정 모드 GAIN 위치 : 게인 값 교정 모드 SET 위치 : OFFSET 또는 GAIN 위치에서 SET 위치로 바뀌 었을 때 오프셋 값 또는 게인 값을 A62DA에 저장합니다. UP/DOWN 스위치 지정한 채널의 오프셋 또는 게인 값을 아래와 같은 비율로 증감시킵니다. ①1.5초 미만 ON 한 번에 5mV 또는 20㎂씩 증감 ②1.5초 이상 ON 0.05s마다 5mV 또는 20㎂씩 증감 보기 스위치는 테스트 모드에서만 유효합니다. 7 - 56 7.8.2 D/A 변환 특성 (1) 전압 입력에서의 D/A 변환 특성 아 날 로 그 출 력 전 압 아 날 로 그 출 력 전 압 디지털 입력값 디지털 입력값 그림7.14 D/A 변환 특성(전압 출력) 디지털-아날로그 변환 유니트는 ACPU로부터 출력되는 디지털 값을 아날로그 값으로 변환하여 외부로 출력하는 것입니다. 디지털 값 –2000의 입력으로 아날로그 값 –10V를 출력하고, 2000에서는 10V를 출력합니다. 따라서 입력값 1이 아날로그 값 5mV에 해당하고 소수점 이하의 디지털 입력은 변환 되지 않고 버려집니다. (2) 전류 출력에서의 D/A 변환 특성 아 날 로 그 출 력 전 류 아 날 로 그 출 력 전 류 디지털 입력값 입력 그림7.15 D/A 변환 특성(전류 출력) 전류 출력에서는 –1000에서 –20mA, 1000에서 20mA로 변환합니다. 디지털 입력값 1은 아날로그 값 20㎂에 해당하고 소수점 이하의 디 지털 입력은 변환되지 않고 버려집니다. 출하 시에는 –1000에서 –12mA, 0에서 4mA, 1000에서 20mA로 변환하 는 특성을 가지고 있습니다. 7 - 57 7.8.3 입출력 번호 할당 D/A 변환 유니트 출력 유니트 입력 유니트 64점 64점 A/D 변환 유니트 32점 고속 카운터 유니트 32점 32점 채널2 채널 채널1 I/O 패널 100펄스/회전 인코더 (입력 전압계) (출력 전압계) 핸들 입력용 볼륨 7.8.4 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리 [입출력 신호] 입 력 신 호 출 력 신 호 XOO (XA0) XO1 (XA1) Y1B (YBB) 감시 타이머 에러 A62DA의 감시 타이머 에러(H/W 이상)가 발생하여 ON D/A 변환 READY 전원 투입 또는 시퀀서 CPU 리셋 시, A/D 변환 준비가 완료되었을 때에 ON 시퀀서 CPU에서 A62DA로 불러오거나 저장할 때의 인터록으로 사용합니다. 출력 채널1ㆍ2 공용으로 ON일 때 D/A 변환한 아날 로그 값을 출력합니다. OFF일 때 오프셋 값을 아날로그 값으로 출력합니다. • X, Y00~1F 가운데 위에서 열거한 것 이외의 것은 아직 사용하지 않고 있습니다. • (XA0), (XA1), (YBB)는 실습기의 할당 번호입니다. 7 - 58 [버퍼 메모리] 주소(10진수) 0 CH1 디지털 값 1 CH2 디지털 값 2 CH1의 전압 설정값 체크 코드 3 CH2의 전압 설정값 체크 코드 4 CH3의 전압 설정값 체크 코드 5 CH4의 전압 설정값 체크 코드 경로명 프로젝트명 7.8.5 A:\SCHOOL A62DA 실습기를 통한 연습 A62DA 예제 출력 허가 설정값으로 디지털 스위치 값을 불러와 표시합니다 (D10). 설정값이 2000을 넘으면 2000을 설정값으로 합니다. 버퍼 메모리에 CH1의 디지 털 값(D10)을 저장합니다. D/A 변환 READY 실습기 조작 ① 2를 ON으로 하면 출력을 허가합니다. ② 3을 ON으로 하면 디지털 스위치(X20~2F)에 설정한 값을 D/A 변환하여 출력(전압계)합니다. 단 디지털 스위치의 설정값이 2000을 넘으면 항상 2000을 D/A 변환하 여 출력합니다. 표시기(Y60~6F)에는 디지털 스위치의 설정값, 표시기(Y40~4F)에는 D/A 변환한 디지털 값을 표시합니다. 조작 순서 아래 조작은 4.4의 조작 순서 (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 7 - 59 와 같습니다. 7.9 7.9.1 AD61형 고속 카운터 유니트 각부의 명칭 AD61의 각부에 대한 명칭을 설명하겠습니다. LED 표시기 입출력 단자대 (자세한 설명) 유니트 고정 구멍(상하 2곳) A상 펄스 입력 보기(A상 펄스 입력 단자에 전압을 인가하면 점등) B상 펄스 입력 보기(B상 펄스 입력 단자에 전압을 인가하면 점등) 연산중 보기 1상 뺄셈을 지정하였을 때 또는 2상 지정 시에 AㆍB상 펄스가 뺄셈 위상일 때 점등 카운트 입력 접수 가능 불허 입력이 OFF이고 내부 출력의 카운트 허가가 ON일 때 점등 외부 프리세트 입력 검출 프리세트 입력 단자에 전압이 인가되었을 때 점등 래치됩니다. 외부 일치 출력 동작 중 카운트 값 일치 신호가 ON이고 외부 출력 허가가 ON일 때 점등합니다.) 7 - 60 7.9.2 고속 카운터 유니트란? ACPU는 스캔을 하고 있기 때문에 스캔 타임(수 ns 이상이 많다)보다 짧은 펄스 신호는 카운트할 수 없습니다. 고속 카운터 유니트는 ACPU 와는 독립적으로 펄스를 카운트하므로 펄스 폭 10㎲ 이상(50kpps 이 하)의 펄스를 카운트할 수 있습니다. 아래 그림은 펄스 입력과 카운트 타이밍을 나타낸 것입니다. 1상 사용 시의 카운트 타이밍 (최소) A상 펄스 입력 뺄셈 지정 신호 카운터 값 2상 사용 시의 카운트 타이밍 A상 펄스 입력 B상 펄스 입력 카운터 값 는 뺄셈 중임을 나타내는 표시입니다. 그림7.16 펄스 입력과 카운트 타이밍 카운터의 사용 목적은 미리 설정값을 정해 놓고(예를 들어 12000) 펄 스 입력의 카운트 값이 설정값 12000이 되면 프로그램 접점을 ON, OFF하는 것입니다. 이러한 설정값=카운트 값 이외에 설정값>카운트 값, 설정값<카운트 값 신호를 취할 수도 있습니다. 단 이러한 접점 은 ACPU의 스캔 타임만큼 늦을 수가 있기 때문에 설정값=카운트 값 으로 외부 출력이 가능한 트랜지스터 출력을 1개 가지고 있습니다. 이러한 출력 신호를 사용하여 부하를 ON, OFF하는 것이 가장 빠른 처리 방법입니다. 카운트, 뺄셈 지시 등 정보 펄스 입력 트랜지스터 출력 설정값=카운트 값 그림7.17 AD61 고속 카운터 유니트 7 - 61 7.9.3 입출력 번호 할당 D/A 변환 유니트 출력 유니트 입력 유니트 고속 카운터 유니트 A/D 변환 유니트 64점 64점 32점 32점 채 채널2 널 32점 채널1 I/O 패널 100펄스/회전 인코더 (입력 전압계) (출력 전압계) 입력용 볼륨 7 - 62 핸들 7.9.4 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리 [입출력 신호] 채널 CH1 CH2 X00 X04 신호 명칭 카운트 값이 크다 카운트 값>설정값일 때에 ON합니다. 카운트 값=설정값이 되면 ON으로 래치되고, 일치 카운트 값 일치 신호 리셋 명령으로 OFF합니다. 카운트 값이 작다 카운트 값<설정값일 때에 ON합니다. 외부 입력으로 프리세트 신호가 들어왔을 때에 ON 외부 프리세트 검출 으로 래치되고, 외부 프리세트 검출 리셋 명령 Y16, Y1D에 의해 OFF합니다. 카운트 값 일치 신호(래치), 외부로의 일 일치 신호 리셋 명령 치 출력(EQU) 신호의 리셋 신호 입 X01 력 X02 신 호 X03 X05 Y10 Y17 Y11 Y18 프리세트 명령 Y12 출 력 Y13 신 호 Y14 Y19 일치 신호 출력 허가 Y1A 뺄셈 카운트 명령 Y1B 카운트 허가 Y15 Y1C 현재값 홀드 Y16 Y1D 외부 프리세트 검출 리셋 명령 X06 X07 내용 프리세트 값 저장 실행 신호 이 신호를 ON으로 하면 카운트 값 일치 신호가 외부로 출력됩니다. 1상 모드일 때 이 신호가 ON이면 뺄셈 카 운트를 합니다. 이 신호를 ON으로 하면 카운트 동작이 가 능해집니다. 이 신호가 올라갈 때에 버퍼 메모리로의 저장을 정지합니다. 외부 프리세트 검출 신호(X03, X07 ON으 로 래치)의 리셋 신호 • X, Y00~1F 가운데 위에서 열거한 것 • 동작 타이밍의 은 레벨에서 동작 이외의 것은 아직 사용하지 않고 있 하고(ON일 때 유효), 습니다. 때에 동작하는 것을 나타냅니다. • X08~X0F 신호는 사용하지 마십시오. • 카운트 값 일치 신호 X01, X05는 전 원 투입 시나 리셋 실행 시에 카운 트 값, 설정값이 모두 0이기 때문에 ON으로 됩니다. 7 - 63 은 올라갈 [버퍼 메모리] 주소(10진수) 0 (미사용) 프리세트 값 0~6, 777, 215 모드 설정 현재값 (불러오기 전용) CH1 용 설정값 0~6, 777, 215 (미사용) 프리세트 값 0~6, 777, 215 모드 설정 현재값 (불러오기 전용) CH2 용 설정값 0~6, 777, 215 • 프리세트 값 ........ 카운트 초기값 • 현재값 ............. 카운트 값 • 설정값 ............. > 설정값 • 모드 설정 .......... 1상에서 사용할 때 “8” ≤ 카운트 값 신호를 출력하는 기준값 2상에서 사용할 때 “18”로 설정합니다. 7 - 64 7.9.5 불러오기 및 저장 AD61(S1)용 전용 명령 분류 명령 이름 형식 처리 내용 에서 지정한 AD61(S1)의 CH.1에 에서 지정한 프리세트 데이터를 저장합니다. 프리세트 값 데이터 설정 에서 지정한 AD61(S1)의 CH.2에 에서 지정한 프리세트 데이터를 저장합니다. 에서 지정한 AD61(S1)의 CH.1에 에서 지정한 설정값 데이터를 저장합니다. 설정값 데이터 저장 에서 지정한 AD61(S1)의 CH.2에 에서 지정한 설정값 데이터를 저장합니다. 에서 지정한 AD61(S1)의 CH.1의 현재값을 불러와 에서 지정한 워 드 디바이스 번호에 저장합니다. 현재값 불러오기 에서 지정한 AD61(S1)의 CH.2의 현재값을 불러와 에서 지정한 워 드 디바이스 번호에 저장합니다. 7 - 65 경로명 프로젝트명 7.9.6 A:\SCHOOL AD61 실습기를 통한 연습 A68AD 예제 카운트 시작 명령 모드 레지스터의 설정 (2상, CH1) 카운트 허가 카운트 종료 명령 현재값 불러오기 I/O 주소 HC0의 CH1로부터 현재값을 불러옵니다. 카운트 펄스 수 보기 프리세트 값 설정 명령 프리세트 데이터 불러오기 프리세트 값 설정 I/O 주소 HC0의 CH1 에 D10의 프리세트 값을 저장합니다. 설정값 데이터 불러오기 설정값 저장 명령 설정값 설정 비교 출력 명령 카운터 값이 작은 신호 카운터 값이 작을 때 출력 카운터 값 일치 신호 카운터 값이 일치하였을 때 출력 카운터 값이 큰 신호 카운터 값이 클 때 출력 일치 신호 출력 허가 카운터 값 일치 신호 리셋 명령 일치 신호 래치의 리셋 7 - 66 실습기 조작 ① 카운트 시작 명령 X0을 ON으로 하면 채널1(CH1)로의 2상 입력을 카운 트합니다. ② 카운트 현재값을 불러와 펄스 수로 변환([카운트 수] ÷ 4 2상 입 력 시에는 1펄스 입력에 대해 4카운트합니다.)하여 표시기 Y40~Y5F에 표시합니다. ③ 프리세트 값 설정 명령 X2를 ON으로 하면 디지털 스위치(X20~3F의 8 자리)에 설정한 프리세트 펄스 수를 4배로 한 값(2상 입력 시에는 1 펄스에 대해 4카운트합니다.)을 카운트 프리세트 값으로 변환합니다. ④ 설정값 저장 명령 X3을 ON으로 하면 디지털 스위치(X20~3F의 8자리) 에 설정한 값(펄스 수)을 4배로 한 값(2상 입력 시에는 1펄스에 대해 4카운트합니다.)을 설정값으로 저장합니다. ⑤ 비교 출력 명령 X4를 ON으로 하면 카운트 값<설정값에서 출력 LED Y70을 ON 카운트 값=설정값에서 출력 LED Y71을 ON 카운트 값>설정값에서 출력 LED Y72를 ON으로 합니다. ⑥ 카운트 값과 설정값이 일치하면 카운트 값 일치 명령(XC1)이 ON으로 래치되기 때문에 리셋 명령 X5를 ON으로 하여 래치된 일치 신호를 리 셋합니다. 조작 순서 아래 조작은 4.4의 조작 순서와 같습니다. (1) 프로젝트 신규 작성 (2) 프로그램 작성 (3) PLC로의 저장 (4) 회로 모니터 시퀀서 CPU에 대한 입출력 신호와 버퍼 메모리 본 번역본의 7.6.4를 참조 불러오기와 저장을 위한 AD61(S1)용 전용 명령 본 번역본의 7.6.5를 참조 실습기를 통한 연습 본 번역본의 7.6.6을 참조 7 - 67 ۔,ࡽ ܥ͐ ڵհࢲ İȱ@@Hګۤ ڗ 로직 테스트 기능(LLT)을 GPPW가 인스톨되어 있는 PLC에 추가하면 오프 라인 시의 디버그를 실현할 수 있습니다. 로직 테스트 기능(LLT)을 사용하면 1대의 PLC에서 시퀀스 프로그램의 개 발과 디버그가 가능하기 때문에 시퀀스 프로그램을 수정한 다음 확인 작 업을 신속하게 수행할 수 있습니다. 시퀀서 CPU와 연결하지 않아도 로직 테스트 기능(LLT)이 시퀀서 CPU를 대신하기 때문에 회로 모니터, 디버그 테스트 등을 수행할 수 있습니다. (1) 로직 테스트 기능(LLT)이 지원하는 기능 로직 테스트 기능(LLT)이 지원하는 기능에는 로직 테스트 기능(LLT) 메뉴에서 실행하는 기능과 GPPW 메뉴에서 실행하는 기능이 있습니다. GPPW 메뉴의 기능은 로직 테스트 기능(LLT)과 조합하였을 때에만 유 효합니다. 기능 회로 모니터, 디바이스 모니터 디바이스 테스트 GPPW 메뉴에 서 실행 가능한 기능 PLC 저장 PLC 진단 스킵 운전 부분 운전 스텝 실행 리모트 운전 로직 테스트 기능(LLT) 메뉴에서 실행 가능한 기능 모니터 테스트 내용 로직 테스트 기능(LLT)의 연산 처리 상태를 모니터하는 기능 모니터 중에 로직 테스트 기능(LLT)의 디바이스 값을 강제로 변환하는 기능 파라미터 파일과 프로그램 파일을 로직 테스트 기능(LLT) 에 저장하는 기능 로직 테스트 기능(LLT) 상태나 에러를 확인하는 기능 지정된 스텝에서 스텝까지의 프로그램을 스킵(처리를 하 지 않음)하는 기능 지정된 스텝 또는 포인터 범위 내의 프로그램을 부분적으 로 실행하는 기능 시퀀스 프로그램을 1스텝씩 실행하는 기능 로직 테스트 기능(LLT)의 실행 상태를 조작하는 기능 디바이스 메모리 상태를 모니터하거나 디바이스의 강제 ON/OFF, 현재값 변경 등의 테스트를 수행하는 기능 I/O 시스템 설정 기능 간단한 설정으로 기계측의 동작을 시물레이션하는 기능 도구 기능 디바이스 메모리/버퍼 메모리의 저장과 불러오기를 수행 하는 기능 8-1 8.1 로직 테스트 기능(LLT)의 조작 순서 로직 테스트 기능(LLT)을 사용하여 디버그하는 순서를 설명하겠습니다. 프로그램 프로젝트명 LLT 을 이용하여 실습하십시오. ① 프로젝트가 열려 있는 것을 확인하고 버튼을 클릭합니다. ① 클릭! ② 로직 테스트 기능(LLT)이 기동합니 다. 로직 테스트 기능(LLT)의 기동과 동시에 ② 로직 테스트 기 능(LLT)이 기동! 파라미터와 프로그램이 로직 테스트 기능 (LLT)에 자동으로 저장됩니다. ③ GPPW 화면을 클릭하면 활성화됩니다. ③ 클릭하면 활성화 됩니다! 8-2 ④ ④ 클릭! 버튼을 클릭하여 모니터 모드로 합니다. ⑤ 시퀀서가 연결되어 있지 않은 상태 (오프라인)에서 회로 모니터가 실행 됩니다. ⑥ 로직 테스트 기능(LLT)을 사용하여 디바이스 모니터나 임의의 디바이스 값 변경, I/O, 특수 유닛 동작의 시 ⑥ 로직 테스트 기능 (LLT)을 사용! 뮬레이션 등과 같은 디버그를 수행합 니다. 디버그 조작으로 시퀀스 프로그램을 변경 하거나 로직 테스트 기능(LLT)을 이용하여 또 다시 디버그를 수행할 경우에는 로직 테스트 기능(LLT) 상태를 STOP로 한 다음 버튼을 클릭하여 시퀀스 프로그램을 다 시 저장해야 합니다. ⑦ 디버그가 끝나면 버튼을 클릭하여 로직 테스트 기능(LLT)을 종료합니 ⑦ 클릭! 다.모드일 경우에는 모니터 모드를 종 모니터 료한 다음 로직 테스트 기능(LLT)을 종료 합니다. 8-3 8.2 디바이스 상태의 모니터와 테스트 디바이스 상태의 모니터, 비트 디바이스의 강제 ON/OFF, 워드 디바이스 값 변경 등의 조작을 설명하겠습니다. 프로그램 프로젝트명 LLT 을 이용하여 실습하십시오. (1) 비트 디바이스를 강제로 ON/OFF합니다 비트 디바이스 “X” 상태를 모니터하여 “X0”을 강제로 ON시키는 예를 설명하겠습니다. ① 로직 테스트 기능(LLT)의 [메뉴 기 동]→[디바이스 메모리 모니터] 메 뉴를 클릭합니다. ① 클릭! ② 디바이스 메모리 모니터의 [디바이 스 메모리]→[비트 디바이스 창]→ [X] 메뉴를 클릭합니다. ② 클릭! ③ 비트 디바이스 “ X” 의 상태가 표시 되므로 “ X” 의 상태가 모니터 가능 ③ “X”의 모니터 화 면이 나타납니다! 합니다. ON 상태로 되어 있는 비트 디바이스는 “ 노란색” 으로 표시됩니다. 8-4 ④ 강제로 ON/OFF시키는 디바이스 번호 를 더블클릭 합니다. (여기에서는 “ X0” 을 더블클릭 합니 다.) ④ 더블클릭! ⑤ 설정된 비트 디바이스 번호가 노란색 으로 표시되고 ON 상태가 됩니다. 노란색으로 표시된(ON 상태) 비트 디바이 스 번호를 더블클릭하면 OFF 상태가 됩니 ⑤ ON 상태로 됩니다! 다. ⑥ ON 상태로 한 내용이 회로 모니터 화 면에 반영됩니다. ⑥ 반영됩니다! 8-5 (2) 워드 디바이스 값을 변경합니다 워드 디바이스 “C(현재값)” 상태를 모니터하여 “C0” 값을 “5”로 변경 하는 예를 설명하겠습니다. ① 로직 테스트 기능(LLT)의 [메뉴 기 동]→[디바이스 메모리 모니터] 메 뉴를 클릭합니다. ① 클릭! ② 디바이스 메모리 모니터의 [디바이 스 메모리]→[워드 디바이스 창]→ [C(현재값)] 메뉴를 클릭합니다. ② 클릭! ③ 워드 디바이스 “ C(현재값)” 의 상 태가 ③ “C(현재값)”의 모니터 화면이 나타납니다! 표시되므로 “ C(현재값)” 의 상태가 모니터 가능합니다. “ C0” 값의 변화를 로직 테스트 기능 (LLT) 및 회로 모니터 화면에서 확인할 수 있습니다. 8-6 ④ 디바이스 값을 변경할 디바이스 번 호를 더블클릭 합니다. (여기에서는 “ C0” 을 더블클릭 합 니다.) ④ 더블클릭! ⑤ 숫자나 기호 버튼을 클릭하여 디바 이스 값을 설정합니다. (여기에서는 “ 5” 로 설정합니다.) ⑤ 클릭! ⑥ 설정 버튼을 클릭합니다. ⑥ 클릭! ⑦ 디바이스 값이 “ 5” 로 설정됩니 다. ⑦ “ 5” 로 설정됩니 ⑧ 반영됩니다! ⑧ 값을 “ 5” 로 설정한 내용이 회로 모니터 화면에 반영됩니다. 8-7 8.3 I/O, 특수 유닛의 의사 동작 작성 로직 테스트 기능(LLT)을 이용하여 I/O, 특수 유닛 동작을 비슷하게 작 성하는 조작을 설명하겠습니다. 여기에서는 M0이 ON으로 된 다음 5초 후에 X0이 ON으로 되는 의사 동작 을 설정합니다. 프로그램 프로젝트명 LLT 을 이용하여 실습하십시오. ① 로직 테스트 기능(LLT)의 [메뉴 기 동]→[I/O 시스템 설정] 메뉴를 클릭 합니다. ① 클릭! ② 더블클릭! ② 설정 No.1의 「조건」 위의 텍스트 박스를 더블클릭 합니다. ③ 디바이스 이름(M), 디바이스 번호 (0), ON/OFF 지정(ON)을 설정합니다. OK ③ 설정합니다! ④ ④ 클릭! 8-8 버튼을 클릭합니다. ⑤ 설정한 내용이 나타납니다. 키보드로 직접 “ M0=ON” 을 입 ⑤ 설정 내용이 나타납니다! 력하여 설정할 수도 있습니다. ⑥ “ 타이머” “ 500” 텍스트 박스에 (5초)을 입력합니다. ⑥ 입력합니다! ⑦ “ 입력 No.(시뮬레이션 디바이 스)” 텍스트 박스를 더블클릭 합니다. ⑦ 더블클릭! ⑧ 디바이스 이름(X), 디바이스 번호(0)를 설정합니다. ⑧ 설정합니다! ⑨ OK 버튼을 클릭합니다. ⑨ 클릭! ⑩ 설정한 내용이 나타납니다. 키보드로 직접 “ X0” 을 입력하여 설 ⑫ 체크! ⑩ 설정 내용이 나타납니다! 정할 수도 있습니다. ⑪ “ ON” 라디오 버튼을 클릭합 니다. ⑪ 클릭! ⑫ 설정을 유효하게 하기 위해서 는 클릭하여 체크합니다. 8-9 ⑬ 설정한 의사 동작을 저장할 파일명을 입력합니다. (여기에서는 저장 장소를 ⑭ 클릭! ⑬ 파일명을 입력! “ C:₩MELSEC₩LLT₩COMMON₩DATA” , 파일 명을 “ LLT.TXT” 로 합니다.) ⑭ 저장 버튼을 클릭합니다. ⑮ 로직 테스트 기능(LLT)의 RESET 버튼 을 클릭하여 의사 동작을 유효하게 합 ⑮ 클릭! 니다. 버튼을 클릭합니다. 클릭! 8 - 10 입력합니다! “ M0” 을 입력합니다. 강제 ON 버튼을 클릭합니다. 클릭 클릭! 닫기 버튼을 클릭합니다. M0이 ON으로 된 다음 5초 후에 ON! “ M0” 이 ON으로 된 다음 5초 후에 “ X0” 이 ON으로 됩니다. * BIT 디바이스 출력(MO) 8 - 11 Ѫ͑ 부1. 입출력 제어 방식에 대해 CPU의 입출력 제어 방식에는 다이렉트 방식과 리프레시 방식이 있습니다. 부1.1 다이렉트 방식 다이렉트 방식은 입력 신호를 즉시 시퀀서로 보내 입력 정보로 사용합니 다. 또 프로그램에서의 연산 결과도 즉시 출력용 데이터 메모리와 출력 유니트로 출력합니다. 다음은 다이렉트 방식의 입력과 출력 정보에 대한 흐름도입니다. 시퀀서 CPU (연산 처리부) 입력(X)용 데이터 메모리 주변기기에 의한 테스트 조작 MELSECNET의 링크 리프레시 계산기 링크 유니트 커뮤니케이션 유니트 등으로 부터의 저장 입력 유니트 출력(Y)용 데이터 메모리 시퀀스 프로그램의 OUT 명령을 실행 주변기기에 의한 테스트 조작 계산기 링크 유니트 커뮤니케이션 유니트 등으로 부터의 저장 출력 유니트 입력 접점 명령을 실행한 경우 입력 유니트의 입력 정보(①)와 데이터 메모리의 입력 정보(②)에 대 해 OR 연산을 수행합니다. 그 결과를 입력 정보(③)로 하여 시퀀스 프 로그램을 실행합니다. 출력 접점 명령을 실행한 경우 데이터 메모리로부터 출력 정보(④)를 불러와 시퀀스 프로그램을 실행 합니다. 출력 OUT 명령을 실행한 경우 시퀀스 프로그램의 연산 결과(⑤)를 출력 유니트로 출력하고 출력(Y) 용 데이터 메모리에 저장합니다. 부 -1 부1.2 리프레시 방식 리프레시 방식은 입력 유니트의 변화를 매번 스캔을 실행하기 전에 일괄 적으로 시퀀서 CPU의 입력용 데이터 메모리에 저장하여 연산을 실행할 때 에 사용합니다. 출력(Y) 프로그램의 연산 결과는 출력용 데이터 메모리에 저장되었다가 END 명령을 실행한 다음 일괄적으로 출력 유니트로 출력됩니다. 다음은 리프레시 방식의 입력과 출력 정보에 대한 흐름도입니다. 시퀀서 CPU (연산 처리부) 입력(X)용 데이터 메모리 출력(Y)용 데이터 메모리 입력 리프레시일 때 출력 리프레시일 때 입력 유니트 출력 유니트 입력 리프레시 0스텝을 실행하기 전에 일괄적으로 입력 유니트로부터 입력 정보를 불 러와(①) 입력(X)용 데이터 메모리에 저장합니다. 출력 리프레시 0스텝을 실행하기 전에 출력(Y)용 데이터 메모리 내용(②)을 일괄적으 로 출력 유니트에 출력합니다. 입력 접점 명령을 실행한 경우 입력(X)용 데이터 메모리로부터 입력 정보를 불러와(③) 시퀀스 프로 그램을 실행합니다. 출력 접점 명령을 실행한 경우 출력(Y)용 데이터 메모리로부터 출력 정보를 불러와(④) 시퀀스 프로 그램을 실행합니다. 입력 접점 명령을 실행한 경우 출력 OUT 명령을 실행한 경우 시퀀스 프로그램의 연산 결과(⑤)를 출력(Y)용 데이터 메모리에 저장 합니다. 부 -2 부1.3 다이렉트 방식과 리프레시 방식의 비교 입력 X0이 ON하면 출력 Y70이 ON하는 회로를 예로 들어 설명하겠습니다. 항목 다이렉트 방식 리프레시 방식 프로그램 실행 1. 입력이 변한 프로그램 실행 다음 출력될 때까지의 지연 입력 명령(LD X0) 출력 명령(OUT YT0) 지연이 최소인 경우 입력 명령(LD X0) 출력 명령(OUT YT0) 지연이 최소인 경우 지연 (명령 실행 시간) 지연이 최대인 경우 입력 리프레시 출력 리프레시 내부 입력 지연이 최대인 경우 지연 지연 (1스캔) 내부 입력 (1스캔) 지연 (2스캔) • 지연은 최소 0스캔(명령 실행 시간만), 최대는 1스캔 • 지연은 최소 1스캔, 최대는 2스캔. • 지연의 오차 범위는 0~1스캔 • 지연의 오차 범위는 0~1스캔 2. 입출력 명령 의 실행 시간 • 입출력 유니트에 접속하므로 리프레시 • 데이터 메모리에 접속하므로 일반적 3. 스캔 타임 • 입출력 명령의 실행 시간이 늦은 만큼 • 입출력 명령의 실행 시간이 빠른 만큼 방식이 늦습니다. 으로 빠릅니다. 스캔 타임이 커집니다. • 실제 스캔 타임은 프로그램 실행 시간만 부 -3 스캔 타임이 작아집니다. • 실제 스캔 타임은 프로그램 실행 시간+ 입력 전송 시간+출력 전송 시간 부2. 명령 일람 (1) 시퀀스 명령 분류 처리단위 명령 기호 기호 처리 내용 실행 조건 스텝 수 논리 연산 시작(a접점 연산 시작) 논리 연산 시작(b접점 연산 시작) 논리곱(a접점 직렬 연결) 접점 논리곱 부정(b접점 직렬 연결) 논리합(a접점 병렬 연결) 논리합 부정(b접점 병렬 연결) 논리 블록 간의 AND (블록 간의 직렬 연결) 논리 블록 간의 OR (블록 간의 병렬 연결) 결합 연산 결과 저장 MPS에서 저장한 연산 결과 불러오기 MPS에서 저장한 연산 결과의 불러오기와 리셋 디바이스 출력 출력 디바이스 세트 비고 참조 디바이스 리셋 비고 참조 입력 신호가 올라갈 때에 프로그램 1주 분의 펄스가 발생합니다. 입력 신호가 내려갈 때에 프로그램 1주 분의 펄스가 발생합니다. 디바이스 출력 반전 I/O 리프레시 방식일 때 비 고 SET, RST 명령의 실행 조건은 디바이스가 F(애넌시애이터)일 때 고, 그밖에는 이 됩니다. 명령 일람표를 보는 방법에 대해서는 부록 19쪽을 참조하십시오. 부 -4 이 되 시퀀스 명령(계속) 분류 시프트 마스터 컨트롤 처리단위 명령 기호 기호 처리 내용 디바이스의 1비트 시프트 마스터 컨트롤 시작 마스터 컨트롤 해제 프로그램 종료 메인 루틴 프로그램의 마지막에 반드시 추가하여 처리를 종료합니다. 시퀀스 프로그램의 마지막에 반드시 추가하여 스텝0으로 돌아갑니다. 정지 입력 조건이 성립하면 출력을 리셋하 여 시퀀스 프로그램을 정지시킵니다. RUN 키 스위치를 또 다시 RUN으로 하면 시퀀스 프로그램을 실행합니다. 무처리 무처리 프로그램의 말소나 공백용 부 -5 실행 조건 스텝 수 (2) 분류 처리단위 명령기호 기본 명령 기호 처리 내용 (S1)=(S2)일 때 도통 상태 (S1)≠(S2)일 때 비도통 상태 (S1)≠(S2)일 때 도통 상태 (S1)=(S2)일 때 비도통 상태 (S1)>(S2)일 때 도통 상태 (S1)≤(S2)일 때 비도통 상태 16비트 데이터 16비트 비교 (S1)≤(S2)일 때 도통 상태 (S1)>(S2)일 때 비도통 상태 (S1)<(S2)일 때 도통 상태 (S1)≥(S2)일 때 비도통 상태 (S1)≥(S2)일 때 도통 상태 (S1)<(S2)일 때 비도통 상태 부 -6 실행 조건 스텝 수 기본 명령(계속) 분류 처리단위 명령기호 기호 처리 내용 (S1+1, S1)=(S2+1, S2)일 때 도통 상태 (S1+1, S1)≠(S2+1, S2)일 때 비도통 상태 (S1+1, S1)≠(S2+1, S2)일 때 도통 상태 (S1+1, S1)=(S2+1, S2)일 때 비도통 상태 32비트 데이터 32비트 비교 (S1+1, S1)>(S2+1, S2)일 때 도통 상태 (S1+1, S1)≤(S2+1, S2)일 때 비도통 상태 (S1+1, S1)≤(S2+1, S2)일 때 도통 상태 (S1+1, S1)>(S2+1, S2)일 때 비도통 상태 (S1+1, S1)<(S2+1, S2)일 때 도통 상태 (S1+1, S1)≥(S2+1, S2)일 때 비도통 상태 (S1+1, S1)≥(S2+1, S2)일 때 도통 상태 (S1+1, S1)<(S2+1, S2)일 때 비도통 상태 부 -7 실행 조건 스텝 수 기본 명령(계속) 분류 처리단위 명령기호 기호 처리 내용 (D) + (S) →(D) BIN 16비트 16비트 덧셈 및 뺄셈 (S1) + (S2) →(D) (D) - (S) →(D) (S1) - (S2) →(D) (D+1,D) + (S+1,S) →(D+1,D) BIN 32비트 덧셈 및 32비트 뺄셈 (S1+1,S1) + (S2+1,S2) →(D+1,D) (D+1,D) - (S+1,S) →(D+1,D) (S1+1,S1) - (S2+1,S2) →(D+1,D) BIN 16비트 16비트 곱셈 및 나눗셈 (S1) ×(S2) →(D+1,D) (S1) ÷(S2) →몫(D) 나머지(D+1) 부 -8 실행 조건 스텝 수 기본 명령(계속) 분류 처리단위 BIN 32비트 32비트 곱셈 및 나눗셈 명령기호 기호 처리 내용 (S1+1,S1) ×(S2+1,S2) →(D+3,D+2,D+1,D) (S1+1,S1) ÷(S2+1,S2) →몫(D+1,D) 나머지(D+3,D+2) (D) + (S) →(D) BCD 4자리 BCD 덧셈 및 4자리 뺄셈 (S1) + (S2) →(D) (D) - (S) →(D) (S1) - (S2) →(D) (D+1,D) + (S+1,S) →(D+1,D) (S1+1,S1) + (S2+1,S2) →(D+1,D) BCD 8자리 BCD 덧셈 및 8자리 뺄셈 (D+1,D) - (S+1,S) →(D+1,D) (S1+1,S1) - (S2+1,S2) →(D+1,D) 부 -9 실행 조건 스텝 수 기본 명령(계속) 분류 BCD 4자리 곱셈 및 나눗셈 처리단위 명령기호 기호 처리 내용 (S1) ×(S2) →(D+1,D) (S1) ÷(S2) →몫(D) 나머지(D+1) BCD 8자리 곱셈 및 나눗셈 BIN 데이터 증가 (S1+1,S1) ×(S2+1,S2) →(D+3,D+2,D+1,D) (S1+1,S1) ÷(S2+1,S2) →몫(D+1,D) 나머지(D+3,D+2) (D) + 1 →(D) (D+1,D) + 1 →(D+1,D) BIN 데이터 감소 (D) - 1 →(D) (D+1,D) - 1 →(D+1,D) BCD 변환 BCD 변환 (S) →(D) BIN(0~9999) BCD 변환 (S1+1,S1) →(D+1,D) BIN(0~99999999) 부 - 10 실행 조건 스텝 수 기본 명령(계속) 분류 처리단위 명령기호 기호 처리 내용 4자리 BIN 변환 (S) →(D) BCD(0~9999) 8자리 BIN 변환 →(D+1,D) (S1+1,S1) BCD (0~99999999) BIN 변환 16비트 (S) →(D) 32비트 (S+1,S) →(D+1,D) 16비트 (S) →(D) 32비트 (S+1,S) →(D+1,D) 전송 부정 전송 블록 전송 16비트 16비트 (D1) < > (D2) 32비트 (D1+1,D1) < > (D2+1,D2) 교환 부 - 11 실행 조건 스텝 수 기본 명령(계속) 분류 점프 처리단위 명령기호 기호 처리 내용 입력 조건이 성립하면 P**으로 점프 입력 조건이 성립하면 다음 스캔부터 P**으로 점프 무조건 P**으로 점프 서브 루틴 콜 인터럽트 프로그램 입력 조건이 성립하면 P** 서브 루틴 프로그램을 실행 서브 루틴 프로그램으로부터 시퀀스 프로그램으로 복귀합니다. 인터럽트 프로그램 실행 금지를 해제 합니다. A N은 N9053이 OFF일 때 인터럽트 프로그램 실행을 금지 합 니다. A N은 N9053이 OFF일 인터럽트 프로그램으로부터 때 시퀀스 프로그램으로 복귀합니다. 마이컴 프로그램 콜 n에서 지정된 마이컴 프로그램을 실행합니다. 변환 메인 프로그램과 서브 프로그램을 변환합니다. 링크 리프레시 링크 리프레시의 허가및금지 부분 리프레시 링크 리프레시, 일반 데이터를 처리합니다. 링크 리프레시 실행 금지를 해제 합니다. M9053일 ON일 때 링크 리프레시 실행을 금지합니다. M9053일 ON일 때 1스캔 도중에 해당하는 디바이스만 을 부분 리프레시합니다. M9053일 ON일 때 부 - 12 실행 조건 스텝 수 (3) 응용 명령 분류 처리단위 명령기호 기호 처리 내용 (D) (S) →(D) 16비트 논리곱 (S1) (S2) →(D) 32비트 (D+1,D) (S+1,S) →(D+1,D) (D) (S) →(D) 16비트 논리곱 (S1) (S2) →(D) 32비트 (D+1,D) (S+1,S) →(D+1,D) (D) (S) →(D) 16비트 배타적 논리합 (S1) (S2) →(D) 32비트 (D+1,D) (S+1,S) →(D+1,D) 부 - 13 실행 조건 스텝 수 응용 명령(계속) 분류 처리단위 명령기호 기호 실행 조건 처리 내용 (D) (S) →(D) 부정 배타적 논리합 16비트 (S1) (S2) →(D) 32비트 2의 보수 (부호 16비트 반전) (D+1,D) (S+1,S) →(D+1,D) (D)+1 →(D) 캐리 오른쪽으로 n비트 회전 우회전 캐리 캐리 오른쪽으로 n비트 회전 16비트 캐리 왼쪽으로 n비트 회전 좌회전 캐리 캐리 왼쪽으로 n비트 회전 부 - 14 스텝 수 응용 명령(계속) 분류 처리단위 명령기호 기호 실행 조건 처리 내용 캐리 오른쪽으로 n비트 회전 우회전 캐리 캐리 오른쪽으로 n비트 회전 32비트 캐리 왼쪽으로 n비트 회전 좌회전 캐리 캐리 왼쪽으로 n비트 회전 캐리 n비트 시프트 16비트 캐리 1비트 시프트 캐리 n비트 캐리 1워드 시프트 n워드 부 - 15 스텝 수 응용 명령(계속) 분류 처리단위 명령기호 기호 실행 조건 처리 내용 데이터 검색 A0:일치 N0 A1:일치 개수 16비트 A0:1의 개수 비트 체크 A0:1의 개수 32비트 8→256 디코드 디코더 인코더 2n비트 디코드 2n비트 256→8 디코드 2n 비트 7세그먼트 디코드 인코더 A □N, A3H는 디코드 M9052가 OFF일 때 비트 세트 리셋 16비트 4비트 n=3일 때 4비트 분리 결합 모두 0 4비트 4비트 n=3일 때 아스키 변환 영문과숫자 영문과 숫자를 아스키 코드로 변환하여 (D) 디바이스로부터 4점에 저장합니다. 부 - 16 스텝 수 응용 명령(계속) 분류 처리단위 명령기호 기호 실행 조건 처리 내용 포인터 포인터+1 저장 16비트 포인터 포인터-1 불러오기 1워드 데이터 불러오기 특수 유니트로부터 데이터를 불러옵니다. 2워드 1워드 특수 유니트에 데이터를 저장합니다. 데이터 저장 2워드 FOR NEXT 사이를 n회 실행합니다. 반복 로컬국 데이터의 불러오기 와 저장 리모트 I/O 국 데이터 의 불러오기 와 저장 1워드 로컬국의 데이터를 불러옵니다. 로컬국의 데이터를 저장합니다. 원격국의 특수 유니트로부터 데이터를 불러옵니다. 원격국의 특수 유니트에 데이터를 저장합니다. 부 - 17 스텝 수 응용 명령(계속) 분류 처리단위 명령기호 기호 처리 내용 지정된 디바이스로부터 8점(16문자) 의 아스키 코드를 출력 유니트로 출력합니다. 지정된 디바이스로부터 NUL(00H)이 올 때까지 연속해서 아스키 코드를 출력 유니트로 출력합니다. 아스키 프린트 지정된 디바이스의 코멘트를 아스키 코드로 변환하여 출력 유니트로 출력합니다. 디바이스1의 코멘트도 가능합니다 표시기 16문자 보기 영문과 숫자 영문과 숫자 지정된 영문과 숫자를 표시기에 표시 합니다. LEDA:앞부분 8문자 LEDB:뒷부분 8문자 (S) 디바이스의 코멘트를 표시합니다. 보기 리셋 표시기의 표시를 리셋합니다. WDT 리셋 시퀀스 프로그램에서 WDT를 리셋 합니다. 고장 체크 고장 있음→(D1):ON (D2):고장 없음 정상→(D1):OFF,(D2):0 A N은 I/O 다이렉트 방식일 때 상 태 세트 래 치 리셋 파라미터 설정에서 설정한 조건 에 따라 상태 래치용 메모리에 데이터를 저장합니다. 상태 래치를 해제하여 SLT 명령을 유효하게 합니다. 샘 플 링 트 레 이 스 캐 리 세트 파라미터 설정에서 설정한 조건에 따라 샘플링 트레이스용 메모리에 샘플링 데이터를 저장합니다. 리셋 샘플링 트레이스를 재개합니다 (STRA 명령을 유효하게 합니다.). 세트 비트 리셋 타이밍 클럭 비트 캐리 플러그 접점(M9012)을 ON으로 합니다. 캐리 플러그 접점(M9012)을 OFF로 합니다. 아래와 같은 타이밍 클럭이 발생 합니다. n1스캔 n2스캔 부 - 18 실행 조건 스텝 수 (4) 명령 일람표 보는 방법 (1)~(3)의 명령 일람표는 다음과 같은 형식으로 구성되어 있습니다. 명령 일람표 보는 방법 분류 처리단위 명령기호 기호 처리 내용 BIN 16비트 16비트 덧셈 및 뺄셈 실행 조건 스텝 수 (D) + (S) →(D) (S1) + (SS) →(D) BIN 32비트 덧셈 32비트 및 뺄셈 (D+1,D) + (S+1,S) →(D+1,D) (S+1,S1) + (S2+1,S2) →(D+1,D) 설 명 ① .....명령을 용도별로 분류하였습니다. ② .....명령 실행시의 처리 단위입니다. 처리 단위 16비트 32비트 디바이스 X,Y,M,L,F,B T,C,D,W,R,A,Z,V X,Y,M,L,F,B T,C,D,W,R,A0,Z 점 수 4점 단위로 최대 16점 1점 4점 단위로 최대 32점 2점 디바이스 처리 단위 ③ ..... 프로그램에서 사용하는 명령 기호입니다. 명령 기호는 16비트 명령이 기준이며, 32비트 명령이나 OFF →ON일 때만 실행 명령이 다음과 같이 됩니다. 32비트 명령 ..... 명령 앞에 D를 부가합니다. 예 + D 16비트 명령 32비트 명령 OFF→ON할 때의 실행 명령 예 + 명령 뒤에 P를 부가합니다. P ON일 때의 실행 명령 부 - 19 OFF→ON할 때의 실행 명령 ④ .....회로 상에서의 기호입니다. 목적지 목적지 소스 명령 기호 소스 명령 기호 회로 상에서의 기호 목적지(destination) ....... 연산 후에 데이터가 가야 할 곳 소스(source) ............... 연산 전에 데이터를 저장하는 곳 ⑤ .....각 명령에 대한 처리 내용입니다. 16비트 16비트 16비트 32비트 상위 16비트 하위 16비트 각 명령의 처리 내용 ⑥ ..... 각 명령의 상세한 실행 조건은 다음과 같습니다. 기호 없음 실행 조건 상시 실행 명령으로 명령 전에 조건의 ON/OFF에 관계없 이 항상 실행됩니다. 전 조건이 OFF인 경우 명령은 OFF 라는 처리를 수행합니다. ON일 때 실행되는 명령으로 명령의 전 조건이 ON일 동안 만 실행됩니다. 전 조건이 OFF인 경우는 실행되지 않습 니다. ON일 때 1회만 실행되는 명령으로 명령의 전 조건이 OFF →ON할 때만 실행되고, 이후에 조건이 ON으로 되더라도 명령은 실행되지 않습니다. OFF일 때 1회만 실행되는 명령으로 명령의 전 조건이 ON →OFF할 때만 실행되고, 이후에 조건이 OFF로 되더라도 명령은 실행되지 않습니다. ⑦ ..... 각 명령의 스텝 수입니다. 조건에 의해 스텝 수가 다른 것은 별도로 표시하였습니다. 자세한 것은 각 명령을 참조하십시오. 부 - 20 부3. 전용 명령 일람 아래 일람표의 명령은 A2ACPU, A2ACPU-S1, A3ACPU용으로 확장된 명령입 니다. (1)다이렉트 처리 명령 다이렉트 처리 명령 분류 명령 형식 처리 내용 출력(Y)을 시퀀서 CPU 외부로 직접 출력합니다 (OUT 명령에 해당). 조건 접점이 ON으로 되면 ON합니다. 조건 접점이 OFF로 되면 OFF합니다. 출력(Y)을 시퀀서 CPU 외부로 직접 세트합니다 (SET 명령에 해당). 다이렉트 출력 다이렉트 세트 출력(Y)을 시퀀서 CPU 외부로 직접 리셋합니다 (RST 명령에 해당). 다이렉트 리셋 일람표 보는 방법 분 류 명령을 실행 용도별로 분류하였습니다. 명 령 시퀀스 프로그램에서 사용할 때의 기호입니다. 명령 기호는 16비트 단위로 처리하는 명령이 기본이며, 32비트 단위로 처 리 가능한 명령은 다음과 같이 명령 기호 앞에 “D”를 부가합니다. 예) 16비트 처리 명령 ..... DABIN 32비트 처리 명령 ..... DDABIN 32비트 지정 형 식 시퀀스 프로그램의 러더 회로에서 사용할 경우의 명령 형식입니다. 사용할 명령을 기술합니다. 접점 조건 ... 전용 명령의 시작입니다. LEDA : 매 스캔마다 실행 LEDB : 1스캔만 실행 .. 연산을 할 데이터, 연산 결과를 저장할 디바이스를 설정합니다. LEDC : 디바이스 번호를 지정할 경우 SUB : 16비트 데이터를 설정할 경우 DXNR : 32비트 데이터를 설정할 경우 ... 전용 명령의 종료입니다. 처리 내용 명령 실행에 따른 소스나 목적지 부 - 21 의 변화를 설명하였습니다. (2) 구조화 프로그램용 명령 구조화 프로그램용 명령 분류 명령 형식 처리 내용 디바이스 수식용 회로에 사용하는 각 디바이스에 대해 인덱스를 부여합니다. 회로 인덱스 수식 디바이스 수식용 회로 FOR~NEXT 명령에 의한 반복 처리를 강제로 종료하고 S에서 지정한 포인터로 실행이 옮겨갑니다. 반복 강제 종료 입력 조건이 성립하지 않으면 서브 루틴 프 로그램을 실행하지 않습니다. 서브 루틴 콜 CHK 명령에 의한 고장 체크에서 체크 회로 패턴을 임의의 패턴으로 변경하여 고장을 체크합니다. 고장 체크 회로 패턴의 변경 체크 회로 패턴 부 - 22 (3) 데이터 조작 명령 데이터 조작 명령 분류 명령 형식 처리 내용 에서 지정한 디바이스로부터 에서 지정한 점 수 분의 32비트 데이터에 대해 에서 지정한 32 비트 데이터와 같은 값을 검색하여 그 개수와 위치 를 A0과 A1에 저장합니다.비검색 데이터 검색 데이터 데이터 검색 에서 지정한 점 수 분 32비트 데이터 32비트 데이터 위치 검색 결과 개수 에서 지정한 1워드 데이터의 상하 바이트를 교 환합니다. 상하 바이트 교환 에서 지정한 워드 디바이스 이후의 데이터를 에서 지정한 비트 점 수로 분리하여 에서 지 정한 워드 디바이스 번호 이후에 저장합니다. 비트점수 비트점수 비트점수 비트점수 데이터의 분리/결합 에서 지정한 디바이스 번호 이후에 저장된 데 이터의 각 비트를 에서 지정한 비트 분씩 결합 하여 에서 지정한 디바이스 번호 이후에 저장 합니다. 비트점수 비트점수 비트점수 비트점수 에서 지정한 워드 디바이스의 각 비트 가운데 에서 지정한 비트만을 추출하여 에서 지정한 비트 디바이스에 I/O 상태를 출력합니다. 비트 비트 추출 , +1 32비트 데이터의 각 비트 가운데 에 서 지정한 비트만을 추출하여 에서 지정한 비 트 디바이스에 I/O 상태를 출력합니다. 비트 비트 부 - 23 (4) 입출력 조작 명령 입출력 조작 명령 분류 명령 형식 처리 내용 입력 조건이 올라갈 때 에서 지정한 비트 디바이스 코일의 ON/OFF 상태를 반전합니다. 출력 반전 (플립플롭) 에서 지정한 입력 유니트의 8점 분으로 아스 키 데이터를 받아 에서 지정한 디바이스 번호 이후에 16진수 값으로 변환하여 저장 합니다. 입력유니트 입력자릿수지정 키보드에 의한 숫자 입력 입력자릿수 스트로브 부 - 24 (5) 실수 처리 명령 (a) BCD형 실수 처리 실수 처리 명령 분류 명령 형식 처리 내용 에서 지정한 값(BCD 4자리)의 평방근을 계산하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 정수부 BCD 4자리/8자리의 평방근 계산 소수부 , +1에서 지정한 값(BCD 8자리)의 평방근을 계산하여 에서 지정한 워드 디바이스 번호에 저장 합니다. 정수부 소수부 에서 지정한 값(BCD 4자리)의 사인(sin)을 계산 하여 +1, +2에서 지정한 워드 디바이스 번호 에 저장합니다. 부호 정수부 소수부 에서 지정한 값(BCD 4자리)의 코사인(cos)을 계산하여 +1, +2에서 지정한 워드 디바이스 번호에 저장합니다. 부호 정수부 소수부 에서 지정한 값(BCD 4자리)의 탄젠트(tan)를 계 산하여 +1, +2에서 지정한 워드 디바이스 번 호에 저장합니다. 부호 정수부 소수부 삼각 함수 에서 지정한 역사인(sin-1)값으로 각도를 계산하 여 에서 지정한 워드 디바이스 번호에 저장(BCD 4 자리)합니다. 부호 정수부 소수부 에서 지정한 역코사인(cos-1) 값으로 각도를 계산하 여 에서 지정한 워드 디바이스 번호에 저장(BCD 4 자 리)합니다. 부호 정수부 소수부 에서 지정한 역탄젠트(tan-1) 값으로 각도를 계산 하여 에서 지정한 워드 디바이스 번호에 저장(BCD 4자리)합니다. 부호 정수부 소수부 부 - 25 (b) 부동 소수점형 실수 처리 실수 처리 명령 분류 명령 형식 처리 내용 에서 지정한 부동소수점 실수를 1워드 정수로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 실수 부동소수점 실수 정수 1워드 정수 (16비트 BIN) 에서 지정한 부동소수점 실수를 2워드 정수로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 2워드 정수 (32비트 BIN) 에서 지정한 1워드 정수를 부동소수점 실수로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 정수 1워드 정수 부동소수점 (16비트 BIN) 에서 지정한 2워드 정수를 부동소수점 실수로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 실수 2워드 정수 (32비트 BIN) 부동소수점 과 에서 지정한 부동소수점 실수를 더해 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 부동소수점 실수 부동소수점 실수 에서 지정한 부동소수점 실수에서 에서 지정한 부동소수점 실수를 빼 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 사칙연산 부동소수점 실수 부동소수점 실수 과 에서 지정한 부동소수점 실수를 곱해 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 부동소수점 실수 부동소수점 실수 에서 지정한 부동소수점 실수에서 에서 지정한 부동소수점 실수로 나누어 에서 지정한 워드 디바 이스 번호에 저장합니다. 부동소수점 실수 부 - 26 부동소수점 실수 부동소수점 실수 실수 처리 명령(계속) 분류 명령 형식 처리 내용 각도 단위를 에서 지정한 도 단위에서 라디안 단위로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다 각도 라디안 부동소수점 실수 부동소수점 실수 각도 단위를 에서 지정한 라디안 단위에서도 단위로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 라디안 각도 부동소수점 실수 부동소수점 실수 에서 지정한 값의 사인(sin)을 계산하여 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 부동소수점 실수 에서 지정한 값의 코사인(cos)을 계산하여 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 부동소수점 실수 에서 지정한 값의 탄젠트(tan)을 계산하여 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 부동소수점 실수 에서 지정한 역사인(sin-1)값으로 각도를 계산 하여 에서 지정한 워드 디바이스 번호에 저장 합니다. 삼각함수 부동소수점 실수 부동소수점 실수 에서 지정한 역코사인(cos-1)값으로 각도를 계산 하여 에서 지정한 워드 디바이스 번호에 저장합 니다. 부동소수점 실수 부동소수점 실수 에서 지정한 역탄젠트(tan-1)값으로 각도를 계산 하여 에서 지정한 워드 디바이스 번호에 저장합 니다. 부동소수점 실수 부동소수점 실수 에서 지정한 값의 평방근을 계산하여 에서 지정한 워드 디바이스 번호에 저장합니다. 부동소수점 실수 부 - 27 부동소수점 실수 실수 처리 명령(계속) 분류 명령 형식 처리 내용 에서 지정한 값의 지수를 계산하여 한 워드 디바이스 번호에 저장합니다. 에서 지정 지수 연산 부동소수점 실수 부동소수점 실수 에서 지정한 값을 자연 대수(e)의 아래로 하였을 때의 대수를 계산하여 에서 지정한 워드 디바이 스 번호에 저장합니다. 자연 대수 부동소수점 실수 부 - 28 부동소수점 실수 (6) 문자열 처리 명령 문자열 처리 명령 분류 명령 형식 처리 내용 에서 지정한 1워드 BIN 값을 5자리의 10진 아스 키 값으로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 만단위 부호 백단위천단위 BIN 값 일단위 십단위 아스키 값 에서 지정한 2워드 BIN 값을 10자리의 10진 아스 키 값으로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 십억단위 부호 BIN 값 천만단위억단위 십만단위 백만단위 천단위 만단위 십단위백단위 0 또는 20H 일단위 아스키 값 에서 지정한 1워드 BIN 값을 4자리의 16진 아스키 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 162자리163자리 1 BIN 값 160자리16 자리 아스키 값 에서 지정한 2워드 BIN 값을 8자리의 16진 아스키 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 166자리167자리 5 164자리16 자리 2 BIN 값 16 자리163자리 1 160자리 16 자리 아스키 값 에서 지정한 1워드 BCD 값을 4자리의 10진 아스키 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 백단위천단위 BIN 값 일단위십단위 아스키 값 에서 지정한 2워드 BCD 값을 8자리의 10진 아스키 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 백만단위천만단위 만단위십만단위 BIN 값 백단위 천단위 일단위 십단위 아스키 값 부 - 29 문자열 처리 명령(계속) 분류 명령 형식 처리 내용 에서 지정한 5자리의 10진 아스키 값을 1워드 BIN 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 만단위 부호 백단위 천단위 일단위십단위 BIN 값 아스키 값 에서 지정한 10자리의 10진 아스키 값을 2워드 BIN 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 십억단위 부호 천만단위억단위 십만단위백만단위 천단위 만단위 십단위 백단위 무시한다일단위 BIN 값 아스키 값 에서 지정한 4자리의 16진 아스키 값을 1워드 BIN 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 162자리163자리 1 160자리16 자리 BIN 값 아스키 값 에서 지정한 8자리의 16진 아스키 값을 2워드 BIN 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 166자리 167자리 5 164자리16 자리 162자리163자리 1 160자리16 자리 아스키 값 부 - 30 BIN 값 문자열 처리 명령(계속) 분류 명령 형식 처리 내용 에서 지정한 4자리의 10진 아스키 값을 1워드 BCD 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 백단위천단위 일단위십단위 BCD 값 아스키 값 에서 지정한 8자리의 10진 아스키 값을 2워드 BCD 값으로 변환하여 에서 지정한 워드 디바이스 번호 에 저장합니다. 백만단위천만단위 만단위십만단위 백단위 천단위 일단위십단위 BCD 값 아스키 값 에서 지정한 디바이스의 코멘트를 에서 지정한 워드 디바이스 번호 이후에 아스키 값으로 저장합니다. 2문자째1문자째 4문자째3문자째 디바이스 코멘트 불러오기 코멘트 데이터 (15문자 분) 6문자째5문자째 8문자째7문자째 10문자째9문자째 12문자째11문자째 14문자째13문자째 00H 15문자째 아스키 값 에서 지정한 디바이스의 코멘트를 에서 지정한 워드 디바이스 번호 이후에 아스키 값으로 저장합니다. 2문자째1문자째 4문자째3문자째 6문자째7문자째 문자열 길이 검출 00H n문자째 아스키 값 부 - 31 00H까지의 길이 BIN 값 문자열 처리 명령(계속) 분류 명령 형식 처리 내용 에서 지정한 1워드 BIN 값을 에서 지정한 위치에 소수점을 부가한 다음 문자열로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 전체 자릿수 소수부자릿수 1워드데이터 1자리째 부호 3자리째 2자리째 전체 5자리째 4자리째 자릿수 7자리째 6자리째 지정분 BIN 아스키값 에서 지정한 2워드 BIN 값을 에서 지정한 위치에 소수점을 부가한 다음 문자열로 변환하여 에서 지정한 워드 디바이스 번호에 저장합니다. 10진 문자열 전체 자릿수 소수부자릿수 2워드데이터 1자리째 부호 3자리째 2자리째 전체 5자리째 4자리째 자릿수 7자리째 6자리째 지정분 9자리째 8자리째 00H 10자리째 아스키값 에서 지정한 소수점을 포함한 문자열을 1워드 BIN 값으 로 변환하여 에서 지정한 워드 디바이스 번호에 저장 합니다. 1자리째 부호 00H 코드까지 3자리째 2자리째 의문자열 5자리째 4자리째 7자리째 6자리째 전체 자릿수 소수부자릿수 1워드데이터 10진 문자열 아스키값 에서 지정한 소수점을 포함한 문자열을 2워드 BIN 값으 로 변환하여 에서 지정한 워드 디바이스 번호에 저장 합니다. BIN 1자리째 부호 00H 코드까지 3자리째 2자리째 5자리째 4자리째 의문자열 7자리째 6자리째 9자리째 8자리째 11자리째10자리째 전체 자릿수 소수부자릿수 1워드데이터 아스키값 에서 지정한 디바이스 번호 이후의 1워드 BIN 값을 16진 아스키로 변환하여 에서 지정한 워드 디바이스 번호 이후 에 에서 지정한 문자 수만큼 저장합니다. 2자리째 1자리째 4자리째 3자리째 16진 BIN 2자리째 1자리째 ASCII 4자리째 3자리째 2자리째 1자리째 4자리째 3자리째 BIN 값 부 - 32 아스키값 에 서 지 정 한 문 자 수 문자열 처리 명령(계속) 분류 명령 형식 처리 내용 에서 지정한 워드 디바이스 이후의 16진 아스키 데이터를 에서 지정한 문자 수만큼 BIN 값으로 변환하여 에서 지정한 디바이스 번호 이후에 저장합니다. 2자리째 1자리째 4자리째 3자리째 ASCII 2자리째 1자리째 에 서 지 정 한 문 자 수 16진 BIN 4자리째 3자리째 2자리째 1자리째 4자리째 3자리째 아스키값 에서 지정한 문자열 데이터를 디바이스 번호 이후로 전송합니다. 2자리째 1자리째 2자리째 1자리째 4자리째 3자리째 문자열 전송 6자리째 5자리째 00H BIN 값 에서 지정한 워드 00H 코드 까지의 문자열데이터 n자리째 4자리째 3자리째 6자리째 5자리째 00H n자리째 문자열데이터 문자열데이터 에서 지정한 문자열과 에서 지정한 문자열을 결합하여 에서 지정한 워드 디바이스 번호 이후에 저장합니다. 2자리째 1자리째 4자리째 3자리째 00H 문자열 결합 4자리째 3자리째 n자리째 문자열데이터 부 - 33 2자리째 1자리째 4자리째 3자리째 1자리째 n자리째 n자리째 2자리째 1자리째 00H 00H 코드 까지의 문자열데이터 00H 코드 까지의 문자열데이터 3자리째 2자리째 5자리째 4자리째 n자리째 (n-1)자리째 문자열 처리 명령(계속) 분류 명령 형식 처리 내용 에서지정한문자열과 에서지정한문자열을비교 하여같으면 에서지정한비트디바이스를ON으로합니다. 문자열 비교 00H 코드 까지의 문자열 데이터 00H 코드 일때 까지의 를 문자열 ON 데이터 00H 코드 까지의 문자열 데이터 00H 코드 일때 까지의 를 문자열 OFF 데이터 에서 지정한 워드 디바이스 이후의 1워드 데이터를 에서 지정한 바이트 수만큼 상하 바이트로 분리하여 에 서 지정한 워드 디바이스 번호 이후에 저장합니다. 에서 지정한 바이트 수만큼 1바이트 단위로 에서 지정한 워드 디바이스 이후의 1바이트 데이터를 에서 지정한 바이트 수만큼 상하 바이트를 결합하여 에서 지정한 워드 디바이스 번호 이후에 저장합니다. 분리 및 결합 에서 지정 한바 이트 수만 큼 부 - 34 (7) 데이터 제어 명령 데이터 제어 명령 분류 명령 형식 처리 내용 에서 지정한 값을 에서 설정한 상한값/하한값에 따라 일정 범위의 데이터로 가공하여 에서 지정한 워드 디바이스 번호에 저장합니다. 일때 의값을 에저장 일때 의값을 에저장 의값을 에저장 일때 출력값 출력값 지정값 입력값 상하한 리밋 제어 입력값 지정값 에서 지정한 값을 에서 설정한 상한값/하한값에 따라 일정 범위의 데이터로 가공하여 에서 지정한 워드 디바이스 번호에 저장합니다. 일때 의 값을 에 저장 일때 의 값을 에 저장 일때 의 값을 에 저장 출력값 지정값 출력값 입력값 입력값 지정값 에서 지정한 영역을 불감대로 하여 에서 지정한 입력값이 불감대 영역 안에 있을 때는 “0”, 불감대 영역 외에 있을 때는 입력값-불감대 상하한값을 계산하여 에서 지정 한 워드 디바이스 번호에 저장합니다. 일때 일때 일때 출력값 출력값 플러스바이어스값 입력값 불감대 제어 입력값 플러스 바이어스값 에서 지정한 영역을 불감대로 하여 에서 지정한 입력값이 불감대 영역 안에 있을 때는 “0”, 불감대 영역 외에 있을 때는 입력값-불감대 상하한값을 계산하여 에서 지정한 워드 디바이스 번호에 저장합니다. 일때 일때 일때 출력값 출력값 플러스바이어스값 입력값 입력값 마이너스바이어스값 부 - 35 데이터 제어 명령(계속) 분류 명령 형식 처리 내용 에서 지정한 입력값에 대해 플러스, 마이너스 바이어스 값을 의 설정에 따라 +바이어스 값과 같이 계산 하여 에서 지정한 워드 디바이스 번호에 저장합니다. 일때 일때 일때 출력값 출력값 불감대 하한값 입력값 존 제어 입력값 출력값 불감대상한값 에서 지정한 입력값에 대해 플러스, 마이너스 바이어스 값을 의 설정에 따라 +바이어스 값과 같이 계산하여 에서 지정한 워드 디바이스 번호에 저장합니다. 일때 일때 일때 출력값 불감대하한값 출력값 입력값 입력값 출력값 불감대상한값 (8) 시계용 명령 시계용 명령 분류 명령 형식 처리 내용 시계 데이터를 에서 지정한 워드 디바이스 번호 이후에 BIN 값으로 저장합니다. BIN 값 년 월 일 시 시계소자 분 초 시계 데이터의 불러오기 및 저장 요일 에서 지정한 워드 디바이스 번호 이후로 설정된 시계 데이터(BIN 값)를 시계 소자에 저장합니다. BIN 값 년 월 일 시 분 초 요일 부 - 36 시계소자 (9) 확장 파일 레지스터용 명령 확장 파일 레지스터용 명령 분류 명령 형식 처리 내용 확장 파일 레지스터의 블록 번호를 한 번호로 변경합니다. 블록 No. 지정 에서 지정 에서 지정한 확장 파일 레지스터의 내용을 에서 지정한 점 수만큼 에서 지정한 확장 파일 레지스터로 전송합니다. 블록 No. 점수 선두디바이스번호 블록 No. 선두디바이스번호 블록 전송 블록 No. 블록 No. 에서 지정한 확장 파일 레지스터의 내용과 에서 지정한 확장 파일 레지스터의 내용을 에서 지정한 점 수만큼 교환합니다. 블록 No. 점수 선두디바이스번호 블록 No. 선두디바이스번호 블록 교환 블록 No. 블록 No. 블록 번호와 관계없이 확장 파일 레지스터의 연속 한 디바이스 번호로 에 지정하여 지정된 디바 이스 번호의 데이터를 어큐뮬레이터 A0에 1워드 단위로 불러옵니다. (디바이스번호) 확장 파일 레지스터 블록 No. 1 영역 블록 No. 2 영역 불러온 데이터 블록 No. 3 영역 1워드 단위의 1워드 직접 불러오기 블록 번호와 관계없이 확장 파일 레지스터의 연속 한 디바이스 번호로 에 지정하여 어큐뮬레이터 A0에 설정되어 있는 데이터를 지정된 디바이스 번 호에 1워드 단위로 저장합니다. 및 저장 (디바이스번호) 확장 파일 레지스터 블록 No. 1 영역 블록 No. 2 영역 블록 No. 3 영역 1워드 부 - 37 저장 데이터 확장 파일 레지스터용 명령(계속) 분류 명령 형식 처리 내용 확장 파일 레지스터의 각 디바이스 번호를 1바이트 단 위로 분할하여 1바이트의 디바이스 메모리로 사용합니 다. 1바이트 단위로 분할한 확장 파일 레지스터에는 자동으로 블록 번호를 무시한 연속 번호가 할당되고, 이 번호를 에서 지정하여 지정된 번호의 1바이트 데이터를 어큐뮬레이터 A0으로 불러옵니다. (디바이스번호) 확장 파일 레지스터 블록 No. 1 영역 블록 No. 2 영역 블록 No. 3 영역 1바이트 단위의 직접 불러오기 및 저장 1바이트 1바이트 확장 파일 레지스터의 각 디바이스 번호를 1바이트 단 위로 분할하여 1바이트의 디바이스 메모리로 사용합니 다. 1바이트 단위로 분할한 확장 파일 레지스터에는 자동으로 블록 번호를 무시한 연속 번호가 할당되고, 이 번호를 에서 지정하여 어큐뮬레이터 A0에 설정 되어 있는 1바이트 데이터를 지정된 디바이스 번호에 저장합니다. (디바이스번호) 확장 파일 레지스터 블록 No. 1 영역 블록 No. 2 영역 블록 No. 3 영역 1바이트 부 - 38 무시 1바이트 부4. 특수 릴레이 M 특수 릴레이는 시퀀서 내부에서 용도가 정해져 있는 내부 릴레이입니다. 따라서 표의 *1, *2, *3 이외는 프로그램에서 ON/OFF하지 마십시오. 적용 여부는 CPU에 따라 다릅니다. 번호 명칭 M9000*1 퓨즈 절단 M9002*1 입출력 유니트 조회 에러 MINI 링크 에러 M9004*1 M9005*1 AC DOWN 검출 M9006 배터리 저하 M9007*1 배터리 저하 래치 자기 진단 에러 애넌시애이터 검출 연산 에러 플러그 연산 에러 플러그 M9008*1 M9009 M9010 M9011*1 내용 M9012 캐리 플러그 M9016 데이터 메모리 포맷 플러그 OFF:무처리 ON:출력 포맷 M9017 데이터 메모리 포맷 플러그 OFF:무처리 ON:출력 포맷 M9020 M9021 M9022 M9023 M9024 M9025*1 M9026 M9027 M9028*1 사용자 타이밍 클럭 No.0 사용자 타이밍 클럭 No.1 사용자 타이밍 클럭 No.2 사용자 타이밍 클럭 No.3 사용자 타이밍 클럭 No.4 내용 설명 OFF:정상 ON:퓨즈 절단 유니트 있 음 OFF:정상 ON:에러 있음 OFF:정상 ON:에러 있음 OFF:AC DOWN 없음 ON:AC DOWN 있음 OFF:정상 ON:배터리 저하 OFF:정상 ON:배터리 저하 OFF:에러 없음 ON:에러 있음 OFF:검출 없음 ON:검출 있음 OFF:에러 없음 ON:에러 있음 OFF:에러 없음 ON:에러 있음 OFF:캐리 OFF ON:캐리 ON n2 스캔 • 퓨즈가 절단된 출력 유니트가 1개라도 있으면 ON으로 되고, 이후에 정상이 되어도 ON 상태가 계속됩니다. • 입출력 유니트가 전원 투입 시에 등록된 상태와 다르면 ON 으 로 되고, 이후에 정상이 되어도 ON 상태가 계속됩니다. • MINI 링크의 마스터국에서 에러를 검출한 유니트가 있으면 ON으로 되고, 이후에 정상이 되어도 ON 상태가 계속됩니다. • 20ms 이내의 순간 정전이 있으면 ON으로 되고, 전원을 OFF →ON하면 리셋됩니다. • 배터리 전압이 규정치 이하로 저하하면 ON으로 되고, 이후 배터리 전압이 정상으로 되면 OFF로 됩니다. • 배터리 전압이 규정치 이하로 저하하면 ON으로 되고, 이후 배터리 전압이 정상으로 되어도 ON 상태가 계속됩니다. • 자기 진단 결과에 에러가 있으면 ON합니다. • OUT F, SET F 명령이 실행되면 ON합니다. D9124 내용이 0이 되면 OFF합니다. • 응용 명령의 실행 중에 연산 에러가 발생하면 ON, 에러가 없어지면 OFF합니다. • 응용 명령의 실행 중에 연산 에러가 발생하면 ON, 이후 정 상이 되어도 ON상태가 계속됩니다. • 응용 명령에 사용되는 캐리 플러그 • M9016이 ON일 때 계산기로부터의 리모트 RUN 시에 래치 범 위를 포함한 모든 데이터 메모리(특수 릴레이와 레지스터는 제외)를 모두 포맷합니다. • M9017이 ON일 때 계산기로부터의 리모트 RUN 시에 래치되지 않은 데이터 메모리(특수 릴레이와 레지스터는 제외)를 모 두 포맷합니다. n2 스캔 n1 스캔 시계 데이터 세트 요구 OFF:무처리 ON:세트 요구 있음 시계 데이터 에러 시계 데이터 보기 시계 데이터 불러오기 요구 OFF:에러 없음 ON:에러 있음 OFF:무처리 ON:보기 OFF:무처리 ON:불러오기 요구 • 일정 스캔 간격으로 ON/OFF를 반복하는 릴레이. • 전원이 ON하였을 때나 리셋하였을 때는 OFF부터 시작합니 다. • DUTY 명령으로 ON/OFF 간격을 설정합니다. • M9025가 OFF→ON으로 바뀐 스캔의 END 명령을 실행한 다음 에 D9025~D9028에 저장되어 있는 시계 데이터를 시계 소자 로 불러옵니다. • 시계 데이터(D9025~D9028)의 값에서 에러가 발생하면 ON, 에러가 없어지면 OFF합니다. • 시계 데이터(D9025~D9028) CPU 전면의 LED 표시기에 표시합 니다. • M9028이 ON일 때 시계 데이터를 BCD 값으로 D9025~D9028로 불러옵니다. 부 - 39 번호 명칭 내용 M9030 0.1초 클럭 0.05초0.05초 M9031 0.2초 클럭 0.1초 0.1초 M9032 1초 클럭 0.5초 0.5초 M9033 0.2초 클럭 1초 M9034 30초 30초 1분 클럭 내용 설명 • 0.1초, 0.2초, 1초, 2초, 1분의 각 클럭이 발생합니다. • 스캔마다 ON/OFF하는 것이 아니고 스캔 중에도 해당 시간이 경과하면 ON/OFF합니다. • 전원 ON이나 리셋 시에는 OFF부터 시작합니다. 1초 ON: OFF: ON: M9037 항상 OFF OFF: RUN 후에 ON: 1스캔 M9038 1스캔만 ON OFF: RUN 플러그(RUN 후에 ON: M9039 1스캔 OFF: 1스캔만 OFF) OFF:PAUSE 금지 M9040 PAUSE 허가 코일 ON:PAUSE 허가 OFF:PAUSE 중이 아님 M9041 PAUSE 상태 접점 ON:PAUSE 중임 OFF:스톱 상태가 아님 M9042 스톱 상태 접점 ON:스톱 상태임 M9036 항상 ON M9043 샘플링 트레이스 완료 M9044 샘플링 트레이스 M9046 샘플링 트레이스 M9047 샘플링 트레이스 준비 M9049 출력 문자 수 변환 OFF:NUL 코드까지 출력 ON:16점 출력 M9051 CHG 명령 실행 금지 OFF:가능 ON:금지 M9052*2 SEG 명령 변환 M9053*2 EI/DI 명령 변환 M9054 STEP RUN 플러그 M9055 상태 래치 완료 플러그 • 시퀀스 프로그램에서 초기화나 응용 명령의 더미 접점 으로 이용하는 것입니다. • M9036, M9037은 CPU 전면의 키 스위치 상태와 관계없이 ON/OFF하지만, M9038, M9039는 키 스위치 상태에 따라 바뀝니다. 키 스위치가 STOP이면 OFF가 됩니다. 키 스위치가 STOP이 아니면 M9038은 1스캔만 ON하고 M9039는 1스캔만 OFF합니다. • RUN 키 스위치가 PAUSE 또는 리모트 PAUSE 접점이 ON하 였을 때 M9040이 ON이면 PAUSE상태가 되고 M9041은 ON합니다. • RUN 키 스위치가 STOP일 때 ON이 됩니다. OFF:샘플링 트레이스 중 ON:샘플링 트레이스 완료 와 같음 와 같음 OFF:트레이스 중이 아님 ON:트레이스 중임 OFF:샘플링 트레이스 중지 ON:샘플링 트레이스 시작 • 명령을 실행한 다음 파라미터에서 설정한 회수 만큼 샘플링이 완료되면 ON합니다. 명령을 실행하면 리셋됩니다. • M9044를 ON/OFF하여 STRA/STRAR 명령과 유사한 명령을 실행합니다. (M9044의 ON/OFF는 주변 디바이스를 이용해 강제로 ON/OFF시켜 실행합니다.) M9044 OFF→ON 시 명령 M9044 ON→OFF 시 명령 이때 샘플링 트레이스의 조건으로는 D9044에 저장된 값을 사용합니다. (스캔 시, 타임 시→시간(10ms 단위)) • 샘플링 트레이스를 실행 중일 때 ON합니다. • 샘플링 트레이스는 M9047을 ON하지 않으면 실행되지 않 습니다. M9047을 OFF하면 샘플링 트레이스를 중지합니다. M9049가 OFF일 때 • PR 명령 실행 시의 출력 문자 수를 임의로 설정할 수 있습니다(NUL 코드까지의 문자를 모두 한 번에 출력합 M90니다 49가 ON일 때 • PR 명령 실행 시의 출력 문자 수를 16점으로 고정하여 출력합니다. • CHG 명령 실행을 금지시킬 경우는 ON합니다. • 프로그램전송요구시에ON으로하고전송이완료되면자동으로OFF합니다. • M9052가 ON일 때 I/O부분 리프레시 명령으로 실행합니다. OFF:7SEG 보기 M9052가 OFF일 때 7SEG 보기 명령으로 실행합니다. ON:I/O 부분 리프레시 OFF:시퀀스 인터럽트 제어 • 링크 리프레시 허가, 금지(E1, D2) 명령을 실행할 때는 ON으로 합니다. ON:링크 인터럽트 제어 OFF:스텝 RUN 중이 아님 • RUN 스위치가 스텝 RUN일 때 ON이 됩니다. ON:스텝 RUN 중 • 상태 래치가 완료되면 ON합니다. OFF:미완료 ON:완료 리셋 명령에 의해 OFF가 됩니다. 부 - 40 번호 M9056 M9057 M9058 M9059 명칭 메인측 P, I 세트 서브측 P, I 세트 메인측 P, I 세트 서브측 P, I 세트 요구 요구 요구 요구 내용 내용 설명 ON:P, I 세트 요구 중 OFF:P, I 세트 요구 중이 아님 ON:P, I 세트 요구 중 OFF:P, I 세트 요구 중이 아님 P, I 세트가 완료되면 순간적으로 ON P, I 세트가 완료되면 순간적으로 ON • RUN 중에 다른 쪽 프로그램(예를 들어 메인이 RUN 중 일 때의 서브 프로그램)의 전송을 완료하면 P, I 세 트 요구를 ON합니다. P, I 세트가 완료되면 자동으 로 OFF합니다. M9065 분할 처리 실행 검출 OFF:분할 처리 중이 아님 ON:분할 처리 중 M9066*2 분할 처리 요구 플러그 OFF:일괄 처리 ON:분할 처리 M9081 교신 요구 등록 영역 BUSY 신호 OFF:교신 요구 등록 영역에 공백 있음 ON:교신 요구 등록 영역에 공백 없음 M9084*2 에러 체크 OFF:에러 체크 있음 ON:에러 체크 없음 M9091*2 명령 에러 플러그 OFF:에러 없음 ON:에러 발생 I/O 교환 플러그 OFF:교환하지 않음 ON:교환함 M9094 *2*3 • P, I 세트가 완료되면 순간적으로 ON하였다가 사라집 니다. • AD57(S1), AD58에 대한 명령을 분할 처리로 실행 중 일 때 ON하고 완료되면(분할 처리를 하지 않으면) OFF합니다. • AD57(S1), AD58에 대한 명령의 처리 시간이 길면 스 캔 타임이 대폭 늘어나기 때문에 M9066을 ON하여 명 령을 분할 처리합니다. • MNET/MINI(-S3)로의 실행 대기 명령(FROM/TO) 등록 영역을 32개 가지고 있지만, 등록할 수 있는 영역이 없으면 ON합니다. • END 명령 처리 시에 아래와 같은 에러의 체크 여부를 설정합니다(END 명령 처리 시간을 단축하기 위해) • 퓨즈 절단 체크 • 입출력 유니트 조회 체크 • 배터리 체크 • 명령 관련 에러가 발생하면 ON합니다. 이후 정상이 되어도 ON 상태가 계속됩니다. • D9094로 교환할 I/O 유니트의 선두 I/O 번호를 설정 한 다음 M9094를 ON하면 온라인에서 I/O 유니트를 교 환할 수 있습니다(한 번의 설정으로 1유니트만 교환 가능). • RUN 중에 I/O 교환을 수행할 때는 프로그램이나 주변 기기의 테스트 모드에 의해 ON하고, STOP 중일 때는 주변 기기의 테스트 모드에 의해 ON합니다. • I/O 교환이 종료할 때까지 RUN/STOP도 모드를 바꾸지 말 것. 포인트 (1) 전원 OFF, 래치 포맷, 리셋을 실행하면 내용이 모두 “OFF”됩니다. RUN 키 스위치를 “STOP”으로 하면 내용은 유지됩니다. (2) 위 특수 릴레이에서 *1 표시는 정상이 되어도 “ON” 상태가 계속됩니다. 따라서 “OFF”로 하려면 다음과 같이 합니다. ① 사용자 프로그램을 이용한 방법 오른쪽 회로를 프로그램에 리셋 실행 명령 삽입한 다음 리셋 실행 명령 접점을 ON으로 하여 특수 M을 포맷합니다. 리셋 번호 기입 ② 주변 기기를 이용한 방법 주변 기기의 테스트 기능으로 강제 리셋합니다. 조작 방법은 각 주변 기기의 매뉴얼을 참조하십시오. ③ CPU 전면의 리셋 키 스위치를 리셋쪽으로 하면 “ OFF” 가 됩니다. (3) *2 표시의 번호는 시퀀스 프로그램으로 ON/OFF를 제어합니다. (4) *3 표시의 번호는 주변 기기의 테스트 모드로 ON/OFF를 제어합니다. 부 - 41 부5. 특수 레지스터 D 특수 레지스터는 시퀀서 내부에서 용도가 정해진 데이터 레지스터이므로 프로그램 상에서 특수 레지스터에 데이터를 저장하지 마십시오(표 가운데 *2 표시의 번호는 제외). 적용 여부는 CPU에 따라 다릅니다. 번호 명칭 내용 D9000 퓨즈 절단 퓨즈 절단 유니트 No. D9002 입출력 유니 트 조회 에러 입출력 유니트 조회 에러 유니트 No. D9003 SUM 명령 검출 개수 SUM 명령에 의해 검출된 비트 수 D9004*1 MINI 링크 에러 파라미터 설정(1~8대) 상태를 저장 D9005*1 AC DOWN 카운터 자기 진단 에러 D9001 D9008 AC DOWN 회수 카운트 자기 진단 에러 번호 D9009 애넌시애이터 검출 외부 고장이 발생한 F 번호 D9010 에러 스텝 연산 에러가 발생한 스텝 번호 D9011 에러 스텝 연산 에러가 발생한 스텝 번호 D9014 입출력 제어 방식 입출력 제어 방식 번호 내용 설명 • 퓨즈 절단 유니트를 검출하면 검출된 유니트 가운데 가장 작은 번호가 16진수로 저장됩니다(예 : Y50~6F 출력 유니트가 퓨즈 절 단 16진수로 “50”을 저장). 주변 기기로 모니터할 경우에는 16진 수 표시로 조작합니다. (D9100~D9107의 내용이 모두 0이 되었을 때 포맷됩니다.) • 전원 투입 시에 등록된 정보와 다른 입출력 유니트를 검출하면 검출된 유니트 가운데 가장 작은 번호의 앞 부분 입출력 번호가 16진수로 저장됩니다(저장 방법은 D9000과 같다.). 주변 기기로 모니터할 경우에는 16진수 표시로 조작합니다. (D9100~D9107의 내용이 모두 0이 되었을 때 포맷됩니다.) • SUM 명령 실행 시에 검출 개수가 BIN 코드로 저장되고 이후 실행 시마다 갱신됩니다. • 파라미터에서 설정한 대수(1~8대)에서 MINI 링크 마스터국이 에러를 검출하면 비트 패턴으로 표시합니다. (1) MELSECNET/MINI-S3 마 B15 BO 스터국 이상이 발생하 면 “1”이 됩니다. (2) AnACPU MINI(-S3) 마 8대 1대8대 8대 스터국이 리프레시할 수 없으면 “1”이 됩니 다. • CPU 유니트가 연산 중에 입력 전압이 정격의 80% 이하로 될 때마 다 +1되고, 값은 BIN 코드로 저장됩니다. • 자기 진단에서 에러가 발생하였을 때의 에러 번호가 BIN 코드로 저장됩니다. • OUT F, SET F에 의해 F0~255 가운데 하나가 ON하면 ON한 F 번호 가운데 가장 빨리 검출된 F 번호가 BIN 코드로 저장됩니다. * D9009의 포맷은 RST F, LEDR 명령으로 가능합니다. 다른 F 번호 가 검출되었을 때 D9009를 포맷하면 다음 번호가 D9009에 저장됩 니다. • OUT F, SET F에 의해 F0~255 가운데 하나가 ON하면 ON한 F 번호 가운데 가장 빨리 검출된 F 번호가 BIN 코드로 저장됩니다. • D9009의 포맷은 RST F나 LEDR 명령 CPU 전면의 INDICATOR RESET 스위치를 ON하여 할 수 있습니다. 다른 F 번호가 검출되었을 때 D9009를 포맷하면 다음 번호가 D9009에 저장됩니다. • 응용 명령 실행 중에 연산 에러가 발생하면 에러가 발생한 스텝 번호를 BIN 코드로 저장합니다. 이후 연산 에러가 발생할 때마다 D9010 내용이 갱신됩니다. • 응용 명령 실행 중에 연산 에러가 발생하면 에러가 발생한 스텝 번호를 BIN 코드로 저장합니다. D9011의 저장은 M9011이 OFF→ON 하였을 때 실행되므로 M9011을 사용자 프로그램으로 삭제하지 않 으면 D9011 내용은 갱신되지 않습니다. • 설정된 입출력 제어 방식이 아래 번호로 반환됩니다. 0. 입출력 공동 다이렉트 1. 입력 리프레시, 출력 다이렉트 3. 입출력 공동 리프레시 부 - 42 번호 명칭 내용 내용 설명 • D9015에는 아래 그림과 같은 CPU 동작 상태가 저장됩니다. RUN/STOP으로는 CPU의 키 스위치리모트 바뀌지 않습니다. D9015 CPU 동작 상태 파라미터 설정에 의한 리모트 RUN/STOP CPU 동작 상태 프로그램에서의 상태 아래 이외 명령 실행 계산기에 의한 리모트 RUN/STOP ROM/RAM 설정 D9016 프로그램 번호 0:메인 프로그램 1:메인 프로그램 2:서브 프로그램 D9017 스캔 타임 최소 스캔 타임(10ms 단위) D9018 스캔 타임 스캔 타임(10ms 단위) D9019 스캔 타임 최대 스캔 타임(10ms 단위) D9020*2 컨스턴트 스캔 컨스턴트 스캔 타임(10ms 단위로 사용자가 설정) D9021 스캔 타임 스캔 타임(1ms 단위) D9022 시간 시간 부 - 43 * 1 : CPU가 RUN 중이고 M9040이 OFF일 때는 PAUSE로 하여도 RUN 상태가 계속됩니다. • 메모리 선택 칩의 설정 내용을 나타냅니다. 0~2의 값이 BIN 코드로 저장됩니다. • 현재 어느 시퀀스 프로그램이 실행되고 있는가 를 나타냅니다. 0~2의 값이 BIN 코드로 저장됩 니다. (단 “2”는 A3, A3N, A3HCPU인 경우에만 해당됩 니다.) • END에서 스캔 타임이 D9017 내용보다 작으면 새로운 값을 저장합니다. 즉 D9017에는 스캔 타임의 최소값이 BIN 코드로 저장됩니다. • END에서의 스캔 타임이 BIN 코드로 저장됩니 다. • END에서 스캔 타임이 D9019 내용보다 크면 새 로운 값을 저장합니다. 즉 D9019에는 스캔 타 임의 최대값이 BIN 코드로 저장됩니다. • 사용자 프로그램을 일정 간격으로 실행시킬 때 의 실행 간격을 10msec 단위로 설정합니다. 0:컨스턴트 스캔 기능 없음 1~200:컨스턴트 스캔 기능 있음 설정값 X 10msec 간격으로 실행 • END에서의 스캔 타임이 BIN 코드로 저장됩니 다. • 1초마다 +1됩니다. 번호 D9025*2 명칭 시계 데이터 내용 내용 설명 • D9025에는 아래 그림과 같이 년도(아래 2자 리)와 월이 BCD 코드로 저장됩니다. 시계 데이터(년, 월) 예) 87년, 7월 H8707 년 월 • D9026에는 아래 그림과 같이 일과 시가 BCD 코드로 저장됩니다. D9026*2 시계 데이터 시계 데이터(일, 시) 예) 31일, 10시 H3110 일 시 • D9027에는 아래 그림과 같이 분과 초가 BCD 코드로 저장됩니다. D9027*2 시계 데이터 예) 35분, 48초 시계 데이터(분, 초) H3548 분 초 • D9028에는 아래 그림과 같이 요일이 BCD 코 드로 저장됩니다. 예) 금요일 H0005 D9028*2 시계 데이터 시계 데이터(, 요일) D9035 확장 파일 레지스터 사용 블록 No. 확장 파일 레지스터의 디바이스 번호 지정용 확장 파일 레지스터의 각 디바이스에 직접 접속 할 때의 디바이스 번호 반드시 “0”을 설정합니다. 요일 일 월 화 수 목 금 토 • 현재 사용하고 있는 확장 파일 레지스터의 블록 번호가 BIN 코드로 저장됩니다. • 직접 불러오기, 저장을 실행하는 확장 파일 레지스터의 디바이스 번호를 D9036, D9037 의 2워드에 BIN 값으로 설정합니다. 디바이 스 번호는 블록 No.와 관계없이 블록 No.1 의 R0에서 연속한 번호로 지정합니다. D9036 확장 파일 레지스터 블록No.1 영역 블록No.2 영역 D90357 디바이스 No. 부 - 44 (BIN 값) 번호 명칭 D9038*2 내용 내용 설명 • CPU 유니트의 LED 표시부 보기 우선 순위 1~4위(D9038), 5~7위(D9039)에 요소 번호를 설정합니다. 우선 순위1~4 (위) 우선 순위 “0”을 설정해도 CPU가 연산을 정지(파라미터 설정을 포함)하는 에 러에 대해서는 무조건 LED로 표시합니다. LED 보기 우선 순위 D9039*2 우선 순위5~7 기본값 D9038=H4321 D9039=H0765 D9044 샘플링 트레이스용 샘플링 트레이스 시의 스텝 또는 시간 D9055 상태 래치 상태 래치 스텝 D9072 계산기 링크 D9081 교신 요구 등록 영역 공백 개수 교신 요구 등록 영역 공백 개수 D9090*1 특수 기능 유니 트 개수 초과 특수 기능 유니트 개수 초과 D9091*1 상세한 에러 번호 자기 진단의 상세한 에러 번호 D9094*2 교환 I/O 선두 입출력 번호 교환 I/O 선두 입출력 번호 퓨즈 절단 유니 트 퓨즈 절단 유니트의 16점 단위의 비트 패턴 D9100*1 D9101*1 요소 번호 내 용 표시하지 않음 입출력 조회, 퓨즈 절단 특수 유니트, 링크 파라미터 연산 에러 CHK 명령 에러 애넌시애이터 LED 명령 관련 배터리 에러 시계 데이터 • 주변 기기로 M9044를 ON/OFF하여 샘플링 트 레이스 STRA, STRAR을 동작 시킬 때 샘플링 트레이스의 조건으로 D9044에 저장된 값을 사용합니다. 스캔 시 0 타임 시 시간(10ms 단위) D9044에는 BIN 코드로 값을 저장합니다. • 상태 래치하였을 때에 실행한 스텝 번호가 BIN 코드로 저장됩니다. • 자기 반환 체크 시에 사용합니다. • MNET/MINI(-S3)으로의 교신 요구 등록 영역 에 등록 가능한 공백 개수가 저장됩니다(최 대 32개). • 특수 기능 유니트 개수를 초과하였을 때 등 록 가능한 마지막 특수 기능 유니트의 선두 I/O 번호÷16의 값이 BIN 값으로 저장됩니 다. • 자기 진단 발생 시의 상세한 에러 번호가 BIN 코드로 저장됩니다. • 온라인 중에 착탈할 I/O 유니트의 선두 2자 리 I/O 번호가 BIN 값으로 저장됩니다. 예) 입력 유니트 • 퓨즈가 절단된 출력 유니트 번호(16점 단 위)가 비트 패턴으로 입력됩니다(파리미터 에서 설정할 때는 설정된 번호). D9102*1 D9103*1 *1 D9104 D9105*1 퓨즈가 절단된 상태 D9106*1 (정상이 되어도 삭제되지 않으므로 프로그램 으로 삭제해야 합니다.) D9107*1 부 - 45 번호 명칭 내용 내용 설명 *1 • 전원 ON 시에 등록된 입출력 유니트 정보와 다 른 입출력 유니트가 검출되면 그 번호(16점 단 위)가 입력됩니다. (파리미터에서 설정할 때는 설정된 입출력 유 니트 번호) D9116 *1 D9117 D9118*1 D9119*1 D9120*1 D9121*1 입출력 유니트 조회 에러 조회 에러 유니트의 16점 단위 비트 패턴 D9122*1 입출력 유니트 조회 에러 D9123 (정상이 되어도 삭제되지 않으므로 프로그램으 로 삭제해야 합니다.) D9124 애넌시애이터 검출 개수 애넌시애이터 검출 개수 D9125 D9126 D9127 D9128 애넌시애이터 검출 개수 애넌시애이터 검출 개수 • OUT F, SET F에 의해 F0~255 가운데 하나가 ON 하면 D9124 내용이 +1되고, RST F나 LEDR 명령 을 실행하면 D9124 내용이 –1됩니다. (A3CPU는 CPU 유니트 화면의 INDICATOR RESET 스위치로도 실행할 수 있습니다.) • OUT F, SET F에 의해 ON한 개수가 최대 8까지 저장됩니다. • OUT F, SET F에 의해 F0~255 가운데 하나가 ON 하면 D9125~D9132에 순서대로 ON한 F 번호가 등록됩니다. RST F에 의해 OFF된 F 번호가 D9125~D9132로부 터 삭제되고, 삭제된 F 번호가 저장되어 있었 던 데이터 레지스터 이후의 데이터 레지스터로 이동합니다. LEDR 명령에 의해 D9125~D9132 내용이 하나씩 위로 시프트합니다(A3CPU는 CPU 유니트 화면의 INDICATOR RESET 스위치로도 실행할 수 있습니 다.). 애넌시애이터 검출 개수가 8개인 경우에는 9번 째를 검출해도 D9125~D9132에 저장되지 않습니 다. D9129* D9130 D9131 D9132 부 - 46 포인트 (1) 전원 OFF, 래치 포맷, 리셋을 실행하면 내용이 모두 삭제됩니다. RUN 키 스위치를 “STOP”으로 하면 내용은 유지됩니다. (2) 위 특수 릴레이에서 *1 표시 번호는 정상이 되어도 레지스터 내용이 삭제되지 않습니다. 따라서 내용을 삭제하려면 다음과 같이 하십시 오. ① 사용자 프로그램을 이용한 방법 오른쪽 회로를 프로그램에 삭제 실행 명령 삽입한 다음 삭제 실행 명령 접점을 ON으로 하여 레지스터 내용을 삭제합니다. ② 주변 기기를 이용한 방법 주변 기기의 테스트 기능을 이용한 현재값 변경으로 0으로 하거 나 또는 강제로 리셋합니다. 조작 방법은 각 주변 기기의 매뉴얼을 참조하십시오. ③ CPU 전면의 리셋 키 스위치를 리셋쪽으로 하면 “ 0” 이 됩니다. (3) *2 표시의 번호는 시퀀스 프로그램으로 데이터를 저장합니다. 부 - 47 부6. 부6.1 응용 프로그램 예 플립 플롭 회로 (1) X00을 ON하면 Y70이 ON하고, X01을 ON하면 Y70이 OFF합니다. (2) X02를 ON하면 Y70이 ON인 동안 Y71이 OFF하고, Y70이 OFF인 동안 Y71 이 ON으로 되는 플립 플롭을 반복합니다. 경로명 프로젝트명 X02 TO 접점 T1 접점 Y70 Y71 부 - 48 A:\SCHOOL A-16 (3) X02가 ON하였을 때 플립 플롭을 시작하여 T0 타이머가 ON일 때 Y70이 ON이 되고, T1 타이머가 ON일 때 Y71이 ON으로 됩니다(주기는 10초). 경로명 프로젝트명 X02 TO 접점 T1 접점 Y70 Y71 부 - 49 A:\SCHOOL A-17 부6.2 원숏 회로 (1) 입력 X01을 ON으로 한 다음 일정 시간 출력을 구동할 경우입니다. (입력의 ON 시간은 설정 시한 이상이 필요합니다.) X1 T15b 접점 Y75 설정 시한 7초 (2) 입력 X00이 순간적으로 ON하면 Y76이 원숏이 됩니다. (3) 입력 X00이 ON→OFF하는 타이밍에서 출력을 일정 시간 구동할 경우 입니다. XOO Y76 설정 시한 10초 부 - 50 펄스 폭 부6.3 장시간 타이머 (1) 타이머를 직렬로 하여 필요한 만큼 긴 시간을 얻습니다. 3000.0초 2000.0초 장시한 타임업으로 ON X02 T9a 접점 T10a 접점 Y71 3000.0초 2000.0초 5000.0초 (2) 타이머와 카운터를 사용하여 필요한 만큼 긴 시간을 얻습니다. 타이머 시한 X 카운터 설정값 = 장시간 타이머(타이머의 정밀도가 누 적되는 단점이 있습니다.) 경로명 프로젝트명 A:\SCHOOL A-18 장시한 타임업으로 ON 1연산 시간 X2 T14 코일 T14a 접점(M56) C7 Y73 900초 X 4=3600초=1시간 (주의) 타이머 T14의 타임업 회수를 카운터 C7로 계수하여 장시간을 얻습 니다. M56은 타임업 후에 T14를 리셋합니다. C7은 카운트업 시에 출력 Y73을 유지시키고, Y73은 T14를 리셋하여 이후의 시한 동작 을 중지시킵니다. 부 - 51 부6.4 오프딜레이 타이머 MELSEC-A에는 오프딜레이 타이머가 없습니다. 아래와 같이 하여 만드십 시오. X5 T14 코일 T6b 접점 Y70 설정 시한 0.8초 (1) X05가 OFF로 되었을 때부터 타이머 T6이 시작합니다. (2) X05가 순간적으로 ON하면 준비가 완료 X06이 순간적으로 ON하였을 때부터 타이머 T8이 시작합니다. X5 X5 T8 코일 M45 T8b 접점 Y71 설정 시한 4.1초 (주의) 순간 입력 X5, X6에 의한 오프딜레이 회로 M45는 T8의 순간 접점에 해당합니다. 부 - 52 부6.5 온딜레이 타이머(순간 입력) 시퀀서의 타이머에서 온딜레이를 이용한 연속 입력은 간단하지만 순간 입력의 경우는 릴레이 M을 이용합니다. 경로명 프로젝트명 A:\SCHOOL A-19 X1의 ON으로 타이머 시작 자기 유지를 합니다. 6.2초 후 ON 6.2초 후 OFF 설정 시한 6.2초 (주의) 순간 입력 X1, X2에 의한 온딜레이 회로 부 - 53 부6.6 ON, OFF 교대 회로 입력 X0의 첫번째 ON으로 Y70이 ON하고, X0의 두 번째 ON으로 Y70이 OFF 하는 회로입니다. AnA, AnUCPU의 경우 전용 명령 FF(출력 반전)를 사용하면 시퀀스 프로그램을 간단하게 할 수 있습니다. 부6.7 채터링 입력 방지 입력이 0.2초 동안 연속해서 ON하였을 때 출력하도록 타이머를 이용합니 다. M1은 X0이 연속해서 0.2초 이상 ON하였을 때 ON이 됩니다. 따라서 프로 그램 작성 시에는 X00 대신에 사용합니다. 부 - 54 부6.8 공통 라인이 있는 회로 아래와 같은 회로 상태로는 시퀀서 프로그램이 될 수 없습니다. 마스터 컨트롤(MC, MCR) 명령을 사용하여 프로그램을 작성하십시오. 수동 자동 릴레이 회로 경로명 프로젝트명 A:\SCHOOL A-1 마스터 컨트롤을 사용한 시퀀스 프로그램 수동 회로 자동 회로 공통 회로 부 - 55 부6.9 시간 제어 프로그램 디지털 스위치 2자리로 시간을 설정하고 출력 Y70~Y72를 특정 시한 ON으 로 함과 동시에 경과 시간을 Y40~Y47로 출력하여 표시합니다. 시간 설정 디지털 스위치 현재 시간 표시기 0.1초 단위 0.1초 단위 시퀀서 시간 불러오기 버튼 2초 미만 ON 타이머용 스위치 3초 ON 운전 스위치 4.1초 이상 ON 경로명 프로젝트명 A:\SCHOOL A-2 설정 시간 불러오기 0.1초 단위 2자리 타이머 시작 점멸 시간을 외부 출력 T3이 0.1~1.9초이면 ON T3이 3.0초이면 ON T3이 4.1초 이상이면 ON 부 - 56 부6.10 시간 회로 시, 분, 초를 외부 디지털 표시기로 출력합니다. 경로명 프로젝트명 A:\SCHOOL A-3 0.5S 플리커 초 계수 분 계수 시 계수 초 1위 1위 10위 10위 시 1위 분 10위 출력 유니트 LED 10위 1위 K2Y50 시, 출력 10위 1위 K2Y48 분, 출력 부 - 57 10위 1위 K2Y40 초, 출력 부6.11 전동기의 스타델타 시동 시동 스위치를 ON하면 운전을 시작하고, 운전 시간이 경과하면 아 크 인터록을 한 다음△운전을 시작합니다. 경로명 프로젝트명 A:\SCHOOL A-20 운전 중 기간 타이머 운전 아크 인터록 운전 시동 X0 정지 X1 운전 T70 기간 운전 T5=2초 T6=0.5초 .... 아크 인터록 부 - 58 부6.12 경과 시간 표시와 도중 시한 출력 타이머 경과 시간을 LED 표시기에 표시함과 동시에 도중 시한에 출력하 는 회로입니다. 카운터도 마찬가지로 가능합니다. 경과 시간 표시기 (BCD 4자리) 출력 유니트 ON으로 하면 시작 OFF로 하면 정지 X02가 ON하면 타이머 시작 타이머 현재값 출력 50초 이상이면 ON 12초 이하면 ON X02가 ON하면 타이머 시작 타이머 현재값 출력 30초 이상이면 ON 30~31.9초면 ON 32~33.9초면 ON 34초 이상이면 ON 60초 이상이면 ON 80초 이상이면 ON 부 - 59 부6.13 적산 타이머 ON, OFF를 반복하는 입력 X02의 ON 시간을 적산하여 적산값 n으로 Y72를 ON으로 합니다. (1) 적산 타이머를 사용하지 않고 적산하는 경우의 회로 경로명 프로젝트명 A:\SCHOOL A-21 X02가 ON하면 타이머 시작 X02가 ON하면 D7을 타이머에 저장 타이머 현재값을 D7로 대피시킵니다. 타임업으로 D7을 삭제합니다. 타임업으로 Y72가 ON (2) 타이머를 파라미터의 타이머 설정 기능으로 적산 타이머에 할당한 경우 타이머 설정 (파라미터) (보조 기능) [보조 기능] 타이머 설정 저속[ 0] 고속[128] 적산[192] (타이머 설정) 0~127까지 0.1s 타이머 128~191까지 0.01s 타이머 192~255까지 0.1s 적산 타이머 타이머 설정 후 경로명 프로젝트명 A:\SCHOOL A-21 X02가 ON하면 타이머 시작 OFF로 되어도 삭제 하지 않습니다. X01이 ON하면 삭제 할 수 있습니다. 부 - 60 부6.14 타이머 설정값의 외부 교체 (1) 1개의 타이머 시한을 외부 교체 스위치로 1초, 10초, 100초의 3단계 로 설정할 수 있습니다. 타이머의 시동과 리셋은 푸시 버튼으로 합니다. 1초 10초 10초 타이머 동작 중 표시 100초 타이머업 표시 타이머 시동 부하 타이머 리셋 입력 전원 부하 전원 경로명 A:\SCHOOL 설정값 1초 설정값 10초 설정값 100초 타이머 시작 타이머 정지 타이머 동작 중 ON 타이머업에 의해 ON이 됩니다. 부 - 61 부6.15 카운터의 외부 설정 외부에 있는 4자리 디지털 스위치로 카운터를 리모트 설정하여 카운터 현재값을 4자리로 표시합니다. 설정값의 100 전, 50 전, 카운트업에서 각 각을 출력합니다. 그리고 카운터 설정값이 100 미만일 때는 설정 이상을 표시합니다. 디지털 스위치(BCD X 4자리) 설정 신호 설정 에러 시동 운전 중 ON 리셋 또는 정지 카운트 펄스 100 전 ON 현재값 표시 BCD X 4자리 50 전 ON 정지하면 ON 설정값 최대 설정값9999 설정 에러 범위 시동 X05를 ON합니다. 100 전 Y72 ON 부 - 62 50 전 Y73 ON 카운트업 Y74 ON 경로명 프로젝트명 A:\SCHOOL A-22 설정 설정값 불러오기 100 이하일 때 에러 출력 설정값-100 (100 전) 설정값-50 (50 전) 운전 중 ON 정지 ON 카운터 100 전에서 ON 카운터 50 전에서 ON 카운터 X01을 ON하면 카운트 리셋 카운트 계수를 외부 표시 100 전에서 ON 50 전에서 ON 카운트업으로 ON 부 - 63 부6.16 가동 시간 계측 제어 대상의 가동 시간을 설정하여 부품 교환, 주유 등의 관리에 이용합 니다. 타이머 T, 데이터 레지스터 D는 정전 시에도 유지되어야 합니다. D31(1시간 단위)을 외부로 표시하면 가동 시간계가 됩니다. 타이머 T250은 파라미터에서 적산 타이머로 할당해야 합니다. 경로명 프로젝트명 A:\SCHOOL A-23 6분 타이머 1시간 타이머 1시간 단위로 계측 (항상 ON) 가동 시간을 외부로 출력 교환 시기 표시 관리 시간을 100Hr로 설정하였습니다. 부6.17 사이클 타임 계측 제어 대상의 시동에서 완료까지의 시간을 측정하여 사이클 타임 초과를 표시하거나 시간의 범위 오차를 관리할 수 있습니다. 아래는 사이클 타임 초과를 나타낸 것입니다. T200을 <, >, = 명령을 사 용해 판별하여 카운터를 작동시키면 시간의 범위 오차를 측정할 수 있습 니다. 경로명 프로젝트명 A:\SCHOOL A-24 사이클 중 사이클 타임 계측 사이클 타임 초과 사이클 타 3.01 ~4.00초의 회수 초과 표시 삭제와 카운트 삭제 부 - 64 부6.18 스캔 타임 측정 특수 레지스터(D9017~D9019)를 GPPA로 모니터합니다. 10msec 단위이므로 1msec 단위의 스캔 타임이 필요할 때는 다음과 같은 프로그램으로 측정합니다. 스캔 타임을 자동으로 msec 단위로 측정하는 프로그램 (T200은 10msec 타임) 경로명 프로젝트명 A:\SCHOOL A-23 계측 D200으로 대피 X00을 ON하면 리셋 1000스캔에서 Y70이 ON 측정을 중지 합니다. X00을 OFF하면 1000 스캔할 시간을 T200이 계측하여 D200에 저장합니다. GPPW로 D200을 모니터하여 100으로 나누면 msec 단위의 스캔 타임이 됩니 다. 부 - 65 부6.19 complement (D)CML(P)의 응용 예 -32768 이하의 음수(~-2147483648 32비트 데이터)의 절대값을 구합니다. DCML 실행 전 (음수) DCML 실행 후 D+ 실행 후 (절대값) (예제) X1을 ON할 때마다 999를 빼서 그 결과를 표시합니다. 단 뺄셈 결과가 음수일 때는 출력 Y70을 ON하여 절대값을 표시합니다. 설정값 불러오기 X0을 ON 뺄셈(-9999) X1을 ON 결과 = 음수 Y70 세트 DCML 실행 +1 실행 결과 표시 데이터 입력 999를 뺍니다. 음수이면 Y70을 ON D0이 음수일 때는 2의 보수로 양수 (절대값)로 합니다. 절대값 출력 양수 출력 부 - 66 부6.20 4자리 BIN 값의 나눗셈 결과를 소수점 이하 4자리까지 표시하는 프로그램 (1) 예1 2개의 4자리 디지털 스위치에 지정한 숫자를 연산하여 결과를 정수 부 4자리와 소수부 4자리로 표시합니다. 디지털 표시기 디지털 스위치 나뉠 숫자, 나눌 숫자 불러오기 나뉠 숫자 디지털 스위치 나눌 숫자 디지털 스위치 나눗셈 몫 표시 몫 인덱스 레지스터 V, Z 데이터 레지스터 D10의 삭제 소수점 이하의 표시 주소 설정 나머지를 10배 하여 나눈 다음 하위 1자리의 몫으로 합니다. 하위 1자리 표시 회수(레지스터 V) 카운트 회수 = 4 부 - 67 1회째 2회째 3회째 4회째 나머지 예1의 시퀀스 프로그램 FOR-NEXT 명령으로 소수점 1자리씩을 나누어 K4Y40으로 소수점 이하 4자 리를 표시합니다. 경로명 프로젝트명 A:\SCHOOL A-5 데이터 불러오기 나눗셈 몫을 BCD 출력 인덱스 Z, V를 삭제 D10을 삭제 4회 반복 을 실행하면 V에 1을 더합니다. 부 - 68 (2) 예2 D0÷D1=D5를 계산하여 소수점 아래 4자리를 산출합니다. D0을 10000배 한 다음 계산 결과를 BCD 변환하여 외부 디지털 표시기 로 출력합니다. D6 정수 4자리 D5 소수 4자리 D7 소수의 나머지 경로명 프로젝트명 A:\SCHOOL A-6 D2 삭제 10000배 정수부 소수부 소수 나머지 부 - 69 부6.21 대차 라인 제어 대차로 워크(재료)를 반송하는 시퀀스 제어의 예입니다. 대차에 워크가 설치되면 대차가 전진하고 끝까지 가면 밀어내기 암에 의 해 다른 컨베이어로 워크가 이동하고 대차는 복귀합니다. 이것이 1사이클 동작입니다. 워크 설치 디바이스 LS 복귀 완료(X4) LS 워크 있음(X1) LS 복귀 종점(X3) 밀어내기(Y73) 대차 대차 전진(Y71) 대차 복귀(Y72) 밀어내기 복귀 (Y74) 조작 패널 LS 전진 종점(X2) 운전 중 램프 (Y70) 입력 시작 버튼 (X0) 출력 시작 버튼 운전 중 램프 스위치(LS 워크 있음) 대차 전진 스위치(LS 전진 종점) 대차 복귀 스위치(LS 복귀 종점) 밀어내기 스위치(LS 복귀 완료) 밀어내기 복귀 부 - 70 경로명 프로젝트명 A:\SCHOOL A-10 운전 중 램프 대차 전진 밀어내기 밀어내기 복귀 대차 복귀 완료 플러그 타이밍 차트 시작 버튼 스위치(LS 워크 있음) 스위치(LS 전진 종점) 스위치(LS 복귀 종점) 스위치(LS 복귀 완료) 운전 중 램프 대차 전진 대차 복귀 밀어내기 밀어내기 복귀 3초 부 - 71 부6.22 링카운터를 이용한 컴프레서의 순서 기동 운전 이 시스템은 3대의 컴프레서에 의한 압력 제어입니다. 3개의 압력 스위치에 의해 검출됩니다. 압력 부족 상태에 맞는 대수의 컴프레서가 적정 압력이 될 때까지 운전되지만 각 컴프레서의 빈도를 원 활하게 하기 위해 순서 제어를 수행합니다. 컴프레서 제어 시스템의 구성 컴프레서 압력 스위치 조작 패널 압력 부족 “대” 압력 부족 “중” 적정 압력 시동 버튼 시동 입력 정지 버튼 압력 부족 “소” 출력 컴프레서A 정지 컴프레서B 압력 스위치 컴프레서C 적정 압력 압력 부족 “소” 압력 부족 “중” 압력 부족 “대” 부 - 72 동작 설명 (1) 기본 동작으로 시동 스위치(X00)를 ON하면 압력 스위치(X02, X03, X04)가 OFF 상태이기 때문에 3대의 컴프레서가 동시에 기동하지만, 압력 적정(X02, X03, X04가 ON)이 되면 3대의 컴프레서가 모두 정지 합니다. 압력 적정으로 모든 컴프레서가 정지 상태이거나 압력 부족이 “소”(X4가 OFF)가 되면 1대의 컴프레서가 기동하여 압력 적정이 될 때까지 계속 운전을 합니다. 이때 기동되는 컴프레서는 압력 부족이 되어 재기동될 때마다 A→B→C 순서를 반복합니다. 또 정지 스위치(X01)를 ON하면 언제든지 컴프레서를 정지시킬 수 있 습니다. (2) 압력 부족을 1대의 컴프레서로 대처할 수 없거나 압력 부족이 “중”(X3이 OFF)일 때는 2번째 컴프레서가 기동합니다. A가 운전 중일 때는 C가 운전을 시작하고, B가 운전 중일 때는 A가 운전을 시작하 며 C가 운전 중일 때는 B가 운전을 시작합니다. (3) 2대의 컴프레서가 운전 중일 때 압력 부족이 “대”(X02가 OFF)가 되면 나머지 1대도 운전을 시작합니다. 또 기본 동작으로 1대가 운전 중일 때 압력 부족이 급하게 “대”가 되 면 나머지 2대가 동시에 운전을 시작합니다. (4) 여러 대가 운전 중일 때는 압력 적정이 될 때까지 여러 대가 동시에 운전을 하지만 압력 적정(X04가 ON)이 되면 동시에 정지합니다. 타이밍 차트 시동 압력 스위치 컴프레서 압력 부족 컴프레서 대 소 부 - 73 소 중 대 소 소 소 중 경로명 프로젝트명 A:\SCHOOL A-10 운전 중 적정 압력 표시 압력 적정 X04가 OFF하면 압력 부족이 “소”가 됩니다. 압력이 “중”이고 X03이 OFF하면 압력 부족이 “중”이 됩니다. 압력이 “대”이고 X02가 OFF하면 압력 부족이 “대”가 됩니다. 압력 부족 “소” 압력 부족 “중” 압력 부족 “대” 시동 시에 M9를 ON합니다. 압력 부족이 소이면 시프트 정지 X01이 ON하면 리셋 시프트 레지스터 시프트를 M10으로 돌려놓습니다. 컴프레서A 컴프레서B 컴프레서C 부 - 74 압력이 부족하면 컴프레서가 기동합니다. 이때 3대의 컴프레서의 사용 빈도를 균일하게 하기 위해 M10~M12에 의한 3단 링 카운터(링 형태의 시 프트 레지스터)로 순서 제어를 실시합니다. 시프트 신호는 압력 부족에 의해 X04가 ON → OFF할 때에 발생합니다. 컴프레서 시동 정지 오프 시프트 동작 부 - 75 부6.23 위치 결정 제어의 응용 예 모터나 브레이크, 단위 거리마다 펄스가 발생하는 펄스 발신기에 의한 위치 결정 시스템의 예입니다. 명령값을 디지털 스위치로 설정하고 시동 시에 명령값과 현재값을 비교 하여 정전, 역전 방향을 결정합니다. 정전 시에는 현재값 레지스터 D16을 –1하고 역전 시에는 D16을 +1 합니다. 명령값이 같아지면 위치 결정이 완 료됩니다. 또 현재값을 BCD 변환하여 10진수 4자리로 현재 위치를 표시합 니다. 원점 정전 펄스 발신기 역전 모터 브레이크 원점 시동 정전 역전 현재값 표시기 브레이크 명령값 설정 스위치 경로명 프로젝트명 A:\SCHOOL A- 26 운전 중 브레이크 개방 명령값 불러오기 정전 역전 정전일 때 –1 역전일 때 +1 명령값과 일치 하는가를 판정 원점 복귀 삭제 (항상 ON) 현재값 외부 표시 부 - 76 부6.24 인덱스Z를 이용한 응용 예 (1) 월 생산 개수를 매일 카운트하여 날짜에 대응하는 데이터 레지스터 (D1~D31)에 실적을 저장합니다. (2) 하루 생산 예정 개수를 외부 디지털 스위치로 설정하여 예정 개수를 생산하면 생산을 중지시킵니다. (3) 날짜도 외부 디지털 스위치로 지정합니다. (4) 당월 생산 개수 누적과 당일 분의 실적을 외부에 표시합니다. (5) Z를 사용할 때 32비트 연산을 실행하면 V의 내용이 바뀝니다. 날짜 표시 날짜 입력 유니트 생산 예정 출력 유니트 당일의 생산 개수 표시 누적 개수 표시 계수 당일의 생산을 C5로 카운트합니다. 누적 생산 개수를 C6으로 카운트합니다. 날짜를 인덱스 Z에 넣고 D0Z로 날짜에 대응한 데이터 레지스터를 간접 지 정합니다. Z=30일 때 D0Z는 0+Z가 되어 D30을 지정합니다. 누적 개수 생산 예정 개수 날짜 1일~31일의 실적이 D1~D31에 저장되어 있으므로 필요하면 생산 데이터로 사용합니다. 부 - 77 경로명 프로젝트명 A:\SCHOOL A- 26 디지털 스위치 X20~2F가 0일 때 D35에 32760을 저장 생산 개수 카운트 클럭) 계수 가정) 생산 지시 입력 날짜 지정 입력 생산 날짜가 31 이상 일 때는 Y71이 점멸 하여 에러를 표시합 니다. 생산일 간접 지정 생산 개수를 데이터 레지스터에 저장 생산일 외부 표시 (항상 ON) 당일 생산 개수 표시 월 생산 개수 표시 하루 생산 개수를 도중에 삭제할 수 있습니다. 월말에 모두 삭제합니다. D0~D31으로 데이터 0을 동시에 전송 K4Y40, K4Y50, K4Y60으로 데이터 0을 동시에 전송 부 - 78 부6.25 FIFO 선입력, 선출력 명령의 응용 예 수동에 의한 도금에서의 공정과 작업 시간을 기억시켜 자동 운전을 구현 합니다. 반송 기구 공정 티칭 패널 도금 용기 X20~25 센서로 위치를 파악합니다. (K2X20) FIFO 테이블 포인터 FIFRP로 호출 공정 X03이 ON하면 데이터를 대피시킵니다. 도금 용기 패턴 X05가 ON하면 대피시켰던 데이터를 불러옵니다. FIFWP로 저장 FIFO 테이블 포인터 공정 D1(T1 타이머 정수) FIFRP로 호출 공정 X03이 ON하면 데이터를 대피시킵니다. 세정 시간 X05가 ON하면 대피시켰던 데이터를 불러옵니다. T0 타이머의 현재값 FIFWP로 저장 부 - 79 경로명 프로젝트명 A:\SCHOOL A- 9 오른쪽으로 이동 왼쪽으로 이동 세정 세정 용기 위치 패턴 저장 세정 시간 저장 저장 데이터의 대피 대피 데이터의 불러오기 세정 용기 위치 패턴 불러오기 세정 시간 불러오기 오른쪽으로 이동 왼쪽으로 이동 패턴 일치로 세정 시작 세정 세정 시간 저장 세정이 종료하면 다음 세정 용기를 호출 포인터 출력 부 - 80 부6.26 데이터 시프트 응용 예 가공물이 이동하면 그 코드 번호도 시프트하여 가공 기계에 대응한 데이 터 레지스터 내용을 판정하고 코드 번호에 대응하는 가공을 실시합니다. 시동 운전 중 정지 코드 번호 1~8 가공물 이동 입력 유니트 종별 검출 출력 유니트 시프트 명령 기계 데이터 레지스터 코드1 코드2 코드3 코드4 코드5 코드6 코드7 코드8 데이터 레지스터의 내용에 코드 번호가 포함되어 그 번호에 대응하는 M이 ON하여 가공을 실시합니다. 기계A K1X20에서 코드 번호가 입력됩니다. 기계B 기계C 기계D X02가 ON하면 코드 번호가 시프트합니다. 부 - 81 기계E 기계F 경로명 프로젝트명 A:\SCHOOL A- 12 운전 중 코드 번호를 입력합니다. (항상 ON) 코드 번호를 시프트합니다. 기계A 기계B 기계C 부 - 82 기계D 기계E 기계F 부 - 83 경로명 프로젝트명 부6.27 A:\SCHOOL A- 14 데이터의 평방근 연산 프로그램 예 D5에 저장된 데이터의 평방근을 계산하여 D7에 저장합니다. 데이터 설정 평방근 계산 평방근 나머지 AnA, AnUCPU 전용 명령 BSQR(평방근)을 사용하면 시퀀스 프로그램을 간단하게 만들 수 있습니다. 데이터(D5)에서 홀수(D6)를 뺀 회수가 답이 됩니다. 데이터(D5)보다 홀 수(D6)가 커지면 뺄 수가 없어지고 나머지가 D5에 남습니다. 예 D5=10일 때 데이터(D5) 홀수(D6) 뺄셈 회수(D7) 나머지 답 부 - 84 경로명 프로젝트명 부6.28 A:\SCHOOL A- 15 데이터를 n승하는 연산 프로그램 예 D10에 저장된 데이터를 D14 승하여 D10에 저장합니다. 데이터 삭제 데이터 설정 n 설정 n회 제곱승 10자리 BCD 외부 출력 주 의 D10 내용이 2147483647을 넘으면 OPERATION ERROR가 됩니다. 부 - 85 부6.29 A3ACPU LED 표시기의 보기 (1) 예1 타이머와 카운터의 현재값과 코멘트를 표시합니다. 서브 루틴 콜 아스키 코드로 변환 코멘트 현재값 16문자 비트 분리 논리합 16비트 왼쪽 시프트 A3NCPU의 LED에 표시 서브 루틴, 리턴 (시퀀스 프로그램의 흐름도) 타이머 회로 카운터 회로 (서브 루틴 프로그램) BCD 데이터를 1자리씩 분리 코멘트의 아스키 변환 코멘트의 아스키 변환 타이머 현재값의 BCD 변환 타이머 현재값의 BCD 변환 서브 루틴 콜 서브 루틴 콜 LED 표시 LED 표시 스캔할 때마다 신규 데이터 표시 카운트를 입력할 때마다 신규 데이터 표시 부 - 86 각 자리의 10진수를 아스키 코드로 변환 2문자의 아스키 코드를 1데이터 레지스터에 저장 <시퀀스 프로그램> ① 코멘트의 아스키 변환 하위 8비트 상위 8비트 ② 타이머 현재값의 BCD 변환 바이너리 값 BCD 값 경로명 프로젝트명 A:\SCHOOL A- 17 타이머 회로 카운터 회로 스캔할 때마다 새로 표시 M100의 1스캔 플리커 회로 카운트를 입력 (X000)할 때마다 새로 표시 부 - 87 (서브 루틴 프로그램) 16비트 데이터의 4비트 분리 10진수의 아스키 코드 변환 16비트 데이터의 8비트 왼쪽 시프트 2문자 데이터를 1데이터 레지스 터에 저장 2문자 데이터를 1데이터 레지스 터에 저장 2문자 데이터를 1데이터 레지스 터에 저장 2문자 데이터를 1데이터 레지스 터에 저장 AnA, AnUCPU의 경우 전용 명령 BCDDA(BCD를 ASCII 변환)를 사용하면 시퀀스 프로그램을 간단하게 할 수 있습니다. ③16비트 데이터의 4비트 분리 반드시 “ 0” 부 - 88 ④ 10진수의 아스키 코드 변환 10진수 아스키 코드 ⑤ 2문자 데이터를 1데이터 레지스터에 저장 8비트 ⑥ LED(표시) 데이터 (코멘트) (현재값) 8데이터 레지스터 (16문자) 표시 하위 8비트 상위 8비트 부 - 89 (2) 예2 100시간 타이머(초 단위)의 LED 보기 메시지 시간 분 초 1초 플리커 .... 0.5초 점등 .... 0.5초 소등 <시퀀스 프로그램의 흐름도> 시계 회로 입력 X002 ON ... 시계 시작 리셋 회로 OFF... 리셋 시간 표시 데이터의 설정 시간 카운터 현재값의 BCD 변환 BCD 데이터의 유효 자리를 1자리 1데이터로 분리 각 자리 10진수를 아스키 코드로 변환 메시지 표시 데이터 설정 (아스키 변환) 2문자의 아스키 데이터를 1데이터 레지스터에 저장 2분 표시 데이터의 설정 초 표시 데이터의 설정 부 - 90 LED 표시 경로명 프로젝트명 A:\SCHOOL A- 28 <시퀀스 프로그램> 시계 시작SW T10:0.1초 타이머 “초” 카운트 “분” 카운트 “시간” 카운트 리셋 회로 0.2초 클럭 (0.1초 ON/0.1초 OFF) “시간” 표시 “분” 표시 “초” 표시 1초 클럭 메시지 표시 (플리커) (0.5초 ON/0.5초 OFF) AnA, AnUCPU의 경우 전용 명령 BINDA(바이너리 값을 ASCII 변환)를 사용하면 시간, 분, 초의 현재값을 간단하게 ASCII로 변환할 수 있습니다. 부 - 91 시계 회로 (3) 예3 X0이 ON하면 T0의 현재값을 A3ACPU의 LED로 표시하는 프로그램입니다. 또 X1이 ON하면 LED 표시를 삭제합니다. D0~D7은 모두 아스키 코드로 합니다. LED표시기의 보기 내용 T0 표시 현재값 표시 데이터 저장용 데이터 레지스터 경로명 프로젝트명 A:\SCHOOL A- 29 “TIMER T”를 아스키로 변환 아스키 “00”을 저장 LED 삭제 T0의 현재값을 BCD로 변환 T0의 현재값 5번째 자리를 아스키로 변환 2D는 –의 아스키 변환 T0의 현재값의 1번째와 2번째 자리를 아스키로 변환 T0의 현재값의 3번째와 4번째 자리를 아스키로 변환 LED 표시 AnA, AnUCPU의 경우 전용 명령 BINDA(바이너리 값을 ASCII 변환)를 사용하면 T0의 현재값을 간단하게 ASCII로 변환할 수 있습니다. 부 - 92 부6.30 디지털 스위치에 의한 데이터 획득 프로그램 디지털 스위치의 설정값을 시퀀서에 상시 입력하여 D10에 저장할 경우 디지털 스위치 입력 유니트 BIN 변환 데이터 레지스터 D10 (항상 ON) 나쁜 예 위와 같은 프로그램에서 RUN 중에 디지털 스위치 값을 바꾸면 스위치가 변환되는 타이밍에 의해 0~9 이외의 코드가 발생하여 CPU의 “OPERATION ERROR”가 될 수 있습니다. 아래와 같이 바꾸면 개선됩니다. (예1) X20~X2F의 4자리인 경우 (예2) X20~X3F의 8자리인 경우 부 - 93 부6.31 16비트의 음수를 32비트의 음수로 변환하는 프로그램 D5의 음수를 D8, D7에 음수로 저장할 경우 경로명 프로젝트명 A:\SCHOOL A- 30 일단 양수로 변경 32비트 데이터의 2의 보수를 구합니다. 16비트의 BIN 산술 연산에서 발생한 음수를 32비트의 BIN 산술 연산에 사용할 때에 이용할 수 있습니다. 부 - 94 부6.32 고장 검출 프로그램에 의한 고장 건수와 고장 번호의 보기 연속해서 사용하는 다수의 비트 디바이스(X, M, F 등) 가운데 ON인 디바 이스의 개수와 번호를 차례대로 표시하는 프로그램입니다. [사용 예] 고장 검출 프로그램의 출력 디바이스로 M이나 F를 사용하고 있을 때 복수 의 고장이 발생하여 고장 번호를 알고싶을 경우 [시퀀스 프로그램의 흐름도] (조작 순서) 고장 검출 회로 프로그램 예에서는 디바이스 F를 사용 표시기 B ① 고장(ON) 디바이스 검색 ② 고장 표시 표시기 A에 개수를 표시 최초의 고장 번호를 표시 표시기 C에 고장 번호를 표시 표시기 A 표시기 C 프로그램의 조건 고장 회로는 총 50개로 가정 합니다. 다음 고장 번호로 표시 되어 있는 고장을 포함한 나머지 고장 수를 표시 표시기 A에 나머지 고장 개수를 표시 표시기 C에 다음 고장 번호를 표시 마지막 고장 표시 종료 부 - 95 경로명 프로젝트명 A:\SCHOOL A- 31 고장 회로 ON 디바이스 검색 고장 회로 선두 번호 지정 (F→0) 부 - 96 32비트 데이터를 오른쪽으로 시프트 하면서 ON 디바이스 검색 다음 ON 디바이스 검색 검색이 완료되면 리셋 (1) ON 디바이스 검색 32비트 실행 전 (K8F1) 실행 후 1의 개수가 BIN으로 저장됩니다. (예에서는 16개입니다.) X002를 ON하면 F1~F64에서 ON인 비트 수를 D10에 저장하고 표시합니다. 부 - 97 MOVP 명령에 의한 전송 +P 명령에 의한 덧셈 X20~5B에서 ON의 개수 (2) 32비트 데이터를 오른쪽으로 시프트하면서 ON 디바이스 검색 32비트 DMOV 명령 (16비트) (16비트) 실행 전 B31로 캐리 플러그 (M9012) 실행 전의 B0 내용 실행 후 B31로 ① X000을 ON하여 위 시프트 데이터(A1, A0)의 설정과 최초로 ON한 비 트를 검출할 때까지 오른쪽으로 1비트씩 시프트합니다. ON 비트가 검출된 스캔(M9012가 ON)에서 시프트를 정지하고 그때까 지의 시프트 카운트 수(디바이스 번호에 해당)를 표시합니다. ② X001을 ON할 때마다 ON인 다음 비트를 검출하여 그 번호를 표시합 니다. 또 미리 ON 비트 수를 검색한 값에서 하나씩 빼 나머지 ON 개수를 표시합니다. 부 - 98 부7 GPP 기능으로 사용하는 키의 용도 GPP 기능에서 사용하는 키의 용도는 다음과 같습니다. (1) 키 용도 키 명칭 J I S 기 준 키 용도 키 명칭 창 닫기, 실행 중단, 명령 선택 창의 불러오기/닫기 메뉴 선택 TAB 코드 입력, 커서의 고속 이동 커서 위치의 왼쪽 문자 삭제 영문/숫자와 기능 기를 조합하여 사용 왕복대(carriage) 리턴 입력 시프트 위치에 있는 문자 선택 가나와 한자 변환 실행 알파벳의 대문자와 소문자 변환 가나와 한자 무변환 실행 회로, HELP 등의 다음 쪽 보기 (1화면 -방향으로 스크롤) 회로, HELP 등의 이전 쪽 보기 (1화면 +방향으로 스크롤) 특 수 키 용도 회로 덮어쓰기 모드/삽입 모드의 변환 커서 위치의 문자 삭제 (설정 내용 전부 삭제) 커서를 홈 위치로 이동 커서 이동, 회로, 리스트 등의 보기 줄 스크롤 부 - 99 화면 복사 스크롤 업, 다운 금지 숫자 키보드를 숫자 키 전용 으로 사용 (2) 회로 모드 시의 기능 키 기능 키 조합 없음 저장 디바이스 테스트 모니터 변환 스킵 모니터정지 스텝 실행 부분운전 실행 리모트 조작 모니터 시작 (전체창) 불러 오기 괘선 삭제 상태 표시 코멘트 표시 노트 표시 괘선 저장 복사 붙여 넣기 잘라 내기 모니터 변환(RUN 저장모드 중 저장) 모니터 변환(편집 정지 중인모든 (전체창) 프로그램) 기기 이름 표시 ① 기능 키 F2 (저장) Shift 로 모드를 바꿀 수 있고, F4 ② ③ + F2 (불러오기), F3 (모니터) (변환) 키를 사용할 수 있습니다. (붙여넣기), Ctrl Ctrl + ( C (복사), Ctrl + V (잘라내기)로 회로를 편집할 수 있습니다. F4 ...... 변환할 수 있습니다. + Shift Alt + C + ..... RUN 중에 저장할 수 있습니다. F4 Ctrl + F4 ...... 편집 중인 모든 프로그램을 RUN 중 에 저장할 수 있습니다. 부 - 100 부8 PLC9800 시리즈와의 키 비교 GPP 기능에서 사용하는 키의 용도는 다음과 같습니다. (1) 키 용도 키 명칭 DOS/V PLC980 PLC 0 키 명칭 DOS/V PLC980 PLC 0 용도 창 당기, 명령 선택 실행 중단, 용도 커서 위치의 왼쪽 문자 삭제 왕복대 리턴 입력 J I S 기 준 키 특 수 키 TAB 코드 입력, 커서의 고속 이동, 편집 대상의 변환 영문자 키나 기능 키를 조합해서 사용 영문자, 가나 문자의 변환 시프트 위치에 있는 문자 선택 가나 한자 변환 모드 알파벳의 대문자와 소문자 변환 가나 한자 변환 실행 메뉴 선택 가나 한자 무변환 실행 회로 등의 다음 쪽 보기 (1화면 -방향으로 스크롤) 회로 모드 시에 0스텝으 로 커서 이동 회로 등의 이전 쪽 보기 (1화면 +방향으로 스크롤) 회로 모드 시에 End 명령 으로 커서 이동 커서 위치에 공백 삽입 스크롤 업, 다운 금지 커서 위치의 문자 삭제 (설정 내용 전부 삭제) 커서를 홈 위치로 이동 커서 이동, 회로 등의 보기 줄 스크롤 • 일본어 변환 키(*1)는 사용하는 일본어 FEP에 따라 다릅니다. 부 - 101 설정, 해제 숫자 키보드를 숫자 키 전용으로 사용 (PLC9800은 노트북에만 있습니다.)
© Copyright 2024