MITSUBISHI
안전상의주의 ( 실습에앞서반드시읽어주십시오.) 시스템을설계할때에는반드시관련매뉴얼을읽고안전에대해충분한고려를하시기바랍니다. 또한, 실습할때에는다음과같은사항에주의하면서올바르게취급하여주실것을당부드립니다. 위험 실습시의주의사항 감전사고가발생하지않도록전기가공급되는동안에는단자에접촉하지마십시오. 안전커버를열때에는전기를차단하거나안전을확인하고나서작업하십시오. 주의 강사의지시에따라실습에임하십시오. 무단으로실습기의모듈을분리하거나배선을바꾸지마십시오. 고장, 오동작, 부상, 화재의원인이됩니다. 모듈을착탈할때에는전원을 OFF 한후에실행하십시오. 전원이공급되는동안에실행을하면, 모듈의고장이나감전의원인이됩니다. 실습기 (X/Y 테이블등 ) 에냄새나소음이발생하는경우에는, 전원스위치 또는 비상 스위치 를눌러서정지시키십시오. 이상이발생한경우에는바로강사에게연락하여주십시오. A - 1
개정이력 텍스트번호는본교재뒷면의왼쪽아래에기재되어있습니다. 인쇄일자 텍스트번호 개정내용 2001년10월 SH( 명 )-080196-A 초판인쇄 본서에의해서공업소유권및그외의권리의실시에대한보증, 또는실시권을허락하는것이아닙니다. 또한, 본서의내용의사용에기인하는공업소유권상의여러문제에대해서당사는책임을지지않습니다. 2001 MITSUBISHI ELECTRIC CORPORATION A - 2
안내 본교재는 MELSEC-Q 시리즈의 Ethernet 모듈 QJ71E71 의사용방법과프로그래밍에대한이해를돕기 위한자료입니다. 실습용외부기기는 Microsoft R Visual Basic R 6.0 이동작하는 PC 를사용합니다. 아래는본교재와관련되는자료입니다. 매뉴얼명칭 Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) Ethernet 모듈의사양, 상대기기와의데이터교신순서, 회선접속 ( 오픈 / 클로즈 ), 고정버퍼교신, 랜덤액세스용버퍼교신, 트러블슈팅에대해서설명하고있습니다. Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 응용편 ) Ethernet 모듈의전자메일기능, PLC CPU의상태감시, MELSECNET/H, MELSECNET/10을중계로하여교신하는기능, 데이터링크용명령으로교신하는기능, 파일전송 (FTP 서버 ) 을사용하는경우에대해서설명하고있습니다. Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 (Web 기능편 ) Ethernet 모듈의 Web 기능을사용하는경우에대해서설명하고있습니다. Q 대응 MELSEC 커뮤니케이션프로토콜레퍼런스매뉴얼시리얼커뮤니케이션모듈 /Ethernet 모듈을사용하여, 교신상대기기로부터의 PLC CPU에대한데이터읽기, 쓰기등을실행하기위한 MC프로토콜에의한교신방법, 제어순서에대해서설명하고있습니다. MX Component Version2 오퍼레이팅매뉴얼 ( 스타트업편 ) MX Component에서의인스톨, 언인스톨및오퍼레이팅매뉴얼열람순서등을설명하고있습니다. MX Component Version2 오퍼레이팅매뉴얼 MX Component에서의각유틸리티에대한설정, 조작방법등을설명하고있습니다. MX Component Version 2 프로그래밍매뉴얼 ActiveX 컨트롤의프로그래밍순서, 상세설명및에러코드에대해서설명하고있습니다. GX Developer Version7 오퍼레이팅매뉴얼 GX Developer에서의프로그램작성방법, 인쇄방법, 모니터방법, 디버그방법등의기능에대해서설명하고있습니다. 매뉴얼번호 ( 형명코드 ) SH-080004 (13JQ36) SH-080005 (13JQ37) SH-080144 (13JT53) SH-080003 (13JQ34) SH-080150 (13JN87) SH-080151 (13JN88) SH-080152 (13JC07) SH-080160 (13JN90) A - 3
차례 안전상주의 A- 1 개정이력 A- 2 안내 A- 3 차례 A- 4 총칭ㆍ약칭 A- 7 제 1 장 Ethernet 네트워크의기초 1-1~1-12 1.1 Ethernet 의개요 1-1 1.2 어드레스 1-2 1.2.1 MAC 어드레스 (Ethernet 어드레스 ) 1-2 1.2.2 IP 어드레스 1-3 1.3 통신프로토콜 1-6 1.3.1 통신모델 1-6 1.3.2 IP 프로토콜 1-8 1.3.3 TCP와 UDP 1-9 1.4 MELSEC-Q Ethernet 모듈 1-11 1.4.1 Ethernet 모듈의역할 1-11 1.4.2 Ethernet 모듈의개요 1-12 제 2 장 Ethernet 모듈을사용하기전에숙지해야할사항 2-1~2-24 2.1 2개의데이터코드 2-1 2.2 데이터교신기능의종류 2-3 2.2.1 MC프로토콜에의한교신 2-3 2.2.2 고정버퍼에의한교신 2-6 2.2.3 랜덤액세스용버퍼에의한교신 2-9 2.2.4 데이터교신기능별상대기기와의교신가부 2-10 2.3 오픈 / 클로즈처리 2-11 2.3.1 Active 오픈 / 클로즈처리 2-17 2.3.2 Passive 오픈 / 클로즈처리 2-19 2.3.3 UDP/IP 오픈 / 클로즈처리 2-22 제 3 장시스템구성 3-1~3-4 3.1 적용시스템 3-1 3.2 네트워크구성시에필요한기기 3-2 제 4 장 Ethernet 모듈의사양 ᆞ 운전까지의설정순서 4-1~4-18 4.1 성능사양 4-1 4.2 기능일람 4-3 4.3 운전까지의설정순서 4-5 4.4 각부의명칭 4-7 4.5 네트워크로의접속 4-8 4.6 GX Developer에서의설정 4-9 4.7 자기진단테스트 4-14 4.7.1 자기진단테스트 4-14 4.7.2 하드웨어테스트 4-17 4.8 모듈의착탈 4-18 A - 4
제 5 장과제 1(PC-PLC CPU 간 MC 프로토콜교신 ) 5-1~5-38 5.1 실습시스템구성 5-1 5.2 파라미터설정및 PC의 TCP/IP 설정 5-4 5.2.1 GX Developer의기동과멀티 CPU 설정 5-4 5.2.2 네트워크파라미터 MNET/10H Ethernet 장수설정 5-6 5.2.3 연결대상지정 5-9 5.2.4 파라미터쓰기 5-10 5.2.5 PC의 TCP/IP 설정 5-11 5.3 MX Component의조작 5-13 5.3.1 논리국번설정 5-13 5.3.2 통신진단 5-16 5.4 Visual Basic 프로그램 ( 디바이스읽기 ) 5-17 5.4.1 Visual Basic 프로그램 5-17 5.4.2 실습기조작 5-24 5.5 Visual Basic 프로그램 ( 디바이스쓰기 ) 5-29 5.5.1 Visual Basic 프로그램 5-29 5.5.2 실습기조작 5-34 제 6 장과제 2(PLC CPU-PLC CPU 간고정버퍼교신 ( 수순 )) 6-1~6-18 6.1 실습시스템구성 6-1 6.2 송신측 Ethernet 모듈의설정 6-3 6.2.1 GX Developer에서파라미터를설정한다 6-3 6.2.2 시퀀스프로그램 6-6 6.3 수신측 Ethernet 모듈의설정 6-9 6.3.1 GX Developer에서파라미터를설정한다 6-9 6.3.2 시퀀스프로그램 6-12 6.4 GX Developer에서의 PING 테스트 (CPU 경유 ) 6-14 6.5 실습기조작 6-17 제 7 장과제 3(PLC CPU-PLC CPU 간고정버퍼교신 ( 무수순 )) 7-1~7-20 7.1 실습시스템구성 7-1 7.2 Ethernet 모듈의설정 (PLC A1~A5) 7-3 7.2.1 GX Developer에서파라미터를설정한다 7-3 7.2.2 시퀀스프로그램 7-6 7.3 Ethernet 모듈의설정 (PLC B1~B5) 7-11 7.3.1 GX Developer에서파라미터를설정한다 7-11 7.3.2 시퀀스프로그램 7-14 7.4 GX Developer에서의 PING 테스트 (CPU 경유 ) 7-18 7.5 실습기조작 7-19 A - 5
제 8 장과제 4( 라우터를경유하는 PLC CPU-PLC CPU 간고정버퍼교신 ( 무수순 )) 8-1~8-10 8.1 실습시스템구성 8-1 8.2 Ethernet 모듈의설정 (PLC A1~A5) 8-2 8.2.1 GX Developer에서파라미터를설정한다 8-2 8.2.2 시퀀스프로그램 8-5 8.3 Ethernet 모듈의설정 (PLC B1~B5) 8-6 8.3.1 GX Developer에서파라미터를설정한다 8-6 8.3.2 시퀀스프로그램 8-9 8.4 PC에서의 PING 테스트 8-10 8.5 실습기조작 8-10 부록부 - 1~ 부 -69 부 1 Visual Basic R Version6 부 - 1 부 1.1 Visual Basic R 의기동 부 - 1 부 1.2 개략커맨드 부 - 4 부 1.3 용어 부 - 9 부 1.4 툴박스일람 부 -10 부 1.5 툴바일람 부 -12 부 1.6 속성일람 부 -14 부 1.7 메소드일람 부 -19 부 1.8 함수일람 부 -21 부 2 MX Component 부 -25 부 2.1 MX Component 로할수있는것 부 -25 부 2.2 함수일람 부 -30 부 2.3 에러코드일람 부 -36 부 3 GX Developer 와 PLC CPU 의 Ethernet 경유접속 부 -46 부 4 트러블슈팅 부 -48 부 4.1 LED 에의한이상확인방법 부 -49 부 4.1.1 이상표시의확인 부 -49 부 4.1.2 COM.ERR LED 의소등, 에러정보읽기 클리어방법 부 -51 부 4.2 GX Developer 에의한이상확인방법 부 -52 부 4.2.1 Ethernet 진단 부 -53 부 4.2.2 시스템모니터 부 -54 부 5 전용명령 부 -56 부 5.1 전용명령일람 부 -56 부 5.2 OPEN 명령 부 -57 부 5.3 CLOSE 명령 부 -61 부 5.4 BUFSND 명령 부 -64 부 5.5 BUFRCV 명령 부 -67 A - 6
총칭 ᆞ 약칭 본교재는특별히명기한경우를제외하고아래에기재한총칭ㆍ약칭을사용 합니다. 총칭 / 약칭 총칭 ᆞ 약칭의내용 DOS/VPC IBM PC/AT R 및호환기의 DOS/V 대응 PC 의약칭 (PC98-NX R 을포함 ). Ethernet 모듈 QJ71E71, QJ71E71-B2, QJ71E71-100의총칭. Q시리즈시리얼커뮤니케이션모듈또는 Ethernet 인터페이스모듈의교신순서로써 MELSEC 커뮤니케이션상대기기에서 PLC CPU에액세스하기위한통신방식의이름. 프로토콜 ( 본문중에는 MC프로토콜이라고표현 ) (MC프로토콜) ASCII 코드데이터에의한교신방법과바이너리코드데이터에의한교신방법이있다. PC-9800 PC-9800 R 시리즈의약칭 (PC98-NX R 을포함 ) QJ71E71 QJ71E71 형 Ethernet 인터페이스모듈의약칭. QJ71E71-B2 QJ71E71-B2 형 Ethernet 인터페이스모듈의약칭. QJ71E71-100 QJ71E71-100 형 Ethernet 인터페이스모듈의약칭. 상대기기 인터넷 (Internet) 인트라넷 (Intranet) 데이터교신을하기위하여 Ethernet 에접속되어있는 PC, 계산기, 워크스테이션 (WS), 기타 Ethernet 모듈등의총칭. 통신프로토콜 TCP/IP 를이용하여전세계의네트워크를상호접속하는거대한컴퓨터 네트워크망. 인터넷은전체를총괄하는컴퓨터가없는분산형네트워크로, 전세계에무수하게 산재해있는서버가상호접속되어, 각각의서버가서비스를제공함으로써성립되고 있다. 통신프로토콜 TCP/IP 를근간으로한인터넷표준기술을이용하여구축된기업내의 네트워크. 인터넷과제휴한어플리케이션의구축이나조작성의통합등의장점이있다. PC DOS/VPC 및 PC-9800 R 의총칭. A - 7
메 모 A - 8
제 1 장 Ethernet 네트워크의기초 부탁말씀 본교재에서는 MELSEC-Q 시리즈 Ethernet 모듈의기본적인사용방법을주로설명하고있습니다. 일반적인컴퓨터네트워크기술 (TCP/IP 통신등 ) 의상세내용에관해서는시중의도서를참조하여주시기바랍니다. 또한, Ethernet 모듈의상세내용에대해서는제품의매뉴얼을참조해주십시오. 1.1 Ethernet 의개요 1973 년미국의 Xerox 사팔로알토연구소에서연구가시작되었으며, 이후에 ANSI/IEEE 표준규격, ISO 국제표준으로써승인된네트워크기술의규격입니다. 최근에는네트워크기기나전달경로도포함한광의의의미로써사용되고있습니다. (*1) 실제로네트워크가동작하는데는 ( 협의의의미로써 ) Ethernet 으로규정된전송선로등의하드웨어이외에, TCP/IP 등의통신을수행하기위한통신규격 ( 프로토콜 : 약속된순서 ( 수순 )) 의기술이필요합니다. 아래표는현재일반적으로이용되고있는 Ethernet 사양입니다. 사양 10BASE5 10BASE2 10BASE-T 100BASE-TX 데이터전송속도 10Mbps 10Mbps 10Mbps 100Mbps 최대세그먼트길이 500m 185m 100m 100m 최대네트워크길이 (or 최대노드간격 ) 2500m (5 세그먼트 ) 925m (5 세그먼트 ) 노드간최대거리 2.5m 0.5m 케이블 동축 50Ω( 직경 12mm) 통칭 : 이에로 케이블 동축 50Ω( 직경 5mm) UTP( 비실드 대선 ) 카테고리 3 UTP( 비실드 대선 ) 카테고리 5, STP( 실드대선 )IBM Type1, 2 네트워크타입버스버스스타스타 *1 본교재에서는통신회선 (10BASE-T, 10BASE-TX, 10BASE5 및 10BASE2) 을 Ethernet 으로표기합니다. 10BASE2/10BASE5 에의한접속 10BASE-T/100BASE-TX 에의한접속 세그먼트길이 노드 트랜시버 허브 터미네이터 세그먼트 노드 리피터 리피터 노드 세그먼트 최대100m(5m) 최대 100 m 가스켓접속은최대 4 단 (2 단 ) 까지 길이 노드 노드간최장거리 노드 길이 E 7 1 * 10BASE2 에의한접속시에트랜시버는없습니다. * ( ) 는 100BASE-TX 에의한접속시를의미합니다. 1-1
1.2 어드레스 Ethernet 에접속되는기기 컴퓨터가네트워크상에서교신하기위해서는서로를인식하기위한어드레스가필요합니다. 기본적으로 Ethernet 의경우, 사용자가인식하는어드레스는 IP 어드레스라고생각해주십시오. 우편포스트 우편접수 A 씨네집 텍스트 우편네트워크 사진 사용자주소 ( 어드레스 ) 사용자주소 ( 어드레스 ) 데이터 ( 패킷 ) 통신형식 헤더 1.2.1 MAC 어드레스 (Ethernet 어드레스 ) MAC 어드레스 (Media Access Control Address) 는각네트워크기기에할당된고유의물리어드레스입니다. ( 서로다른기기에서동일한 MAC 어드레스를갖는기기는존재하지않습니다.) Ethernet 의경우에는기기제조회사를구분하는벤더코드 3 바이트 (IEEE 관리 ) 와노드번호 3 바이트 ( 각제조회사관리 ) 의합계 6 바이트의코드로표시됩니다.(*1) Ethernet 접속기기는사용자가지정한 IP 어드레스부터자동적으로 MAC 어드레스를확보하여교신합니다만, 기본적으로는사용자가이를인식할필요가없습니다. MAC 어드레스는 Ethernet 어드레스또는인터넷어드레스라고불리는경우가있으나, 다음에기술한 IP 어드레스와는다르므로주의하시기바랍니다. *1 Ethernet 모듈의 MAC 어드레스는모듈측면에있는정격명판의 MAC ADD. 난에기재되어있습니다. 1-2
1.2.2 IP 어드레스 IP 어드레스 (Internet Protocol Address) 는인터넷이나인트라넷등의 IP 네트워크에접속된기기ㆍ PC 를구분하기위하여할당하는인식번호입니다 ( 편지의주소, 전화의전화번호에해당 ). 네트워크를세계적규모로접속한인터넷상에서는국제적으로각국에서관리하는하나의어드레스가사용되고있습니다. 현재보급되고있는 IPV4 에서는 IP 어드레스를 32 비트수치로표현합니다. 일반적으로는 192.168.1.1 의 8 비트씩 4 부분으로구분하여 10 진수로표기합니다. 32 비트의값은각네트워크를인식하는네트워크부와이네트워크내의접속기기 (PC 등 ) 를인식하는호스트부로분할됩니다. (IP 어드레스 )=(( 클래스 )+ 네트워크부어드레스 )+( 호스트부어드레스 ) IP 어드레스의표현방법 IP 어드레스 (IPv4) 는 32 비트의수치로표현된다. 2 진수 00000000000000000000000000000000 ~ 11111111111111111111111111111111 10 진수 0 ~ 4294967295 16 진수 0 ~ FFFFFFFF 사람이이해하기쉽게하기위해 8비트씩구분한다. 2진수 00000000.00000000.00000000.00000000 ~ 11111111.11111111.11111111.11111111 10진수 0. 0. 0. 0 ~ 255. 255. 255. 255 16진수 0. 0. 0. 0 ~ FF. FF. FF. FF (1) 클래스로의분류 오래전부터 IP 어드레스의네트워크부와호스트부의경계를고정적으로취 급하는 클래스 라고불리는분류방식이사용되었습니다. 클래스 비트할당 (*1) 상위비트 하위비트 상위 8 비트 네트워크어드레스의경계 프라이비트 IP 어드레스범위 클래스 A 네트워크부 (8) 호스트부 (24) 1 7 24 0 네트워크 ID 호스트 ID 0******* (0~127) 상위에서 8 비트 10.0.0.0~10.255.255.255 클래스 B 네트워크부 (16) 호스트부 (16) 2 14 16 1 0 네트워크 ID 호스트 ID 10****** (128~191) 상위에서 16 비트 172.16.0.0~172.31.255.255 클래스 C 네트워크부 (24) 호스트부 (8) 3 21 8 1 1 0 네트워크 ID 호스트 ID 110***** (192~223) 상위에서 24 비트 192.168.0.0~192.168.255.255 *1 IP 어드레스를표현하는수치의상위에표시한부가클래스입니다. 클래스A~C가일반적으로이용됩니다. 반면에, 인터넷에직접접속하지않는기기에이용가능한어드레스를 프라이비트 IP 어드레스 라고칭합니다. 1-3
예전에는이클래스단위로어드레스를관리하였습니다만, 현재는어드레스 공간을효율적으로이용할수있도록, 경계비트수를가변길이로한클래스 어드레스가사용되고있습니다. (2) 클래스어드레스의관리예전부터클래스단위로관리되어왔지만, 현재는 IP 어드레스의부족으로, 어드레스공간을효율적으로이용하기위하여, 네트워크부를가변길이로한클래스어드레스가이용되고있습니다. Prefix 길이 IP 어드레스 네트워크부 포스트부 ( 서브 ) 네트워크 1111 1111 000 000 모두 1 모두 0 IP 어드레스의호스트부의비트를모두 0으로한것이 (Ethernet 단위의 ) 네트워크어드레스입니다. 네트워크어드레스의길이 (Prefix 길이 ) 를명시하기위하여 IP 어드레스의뒤에 / 를부가하며, 이후에네트워크어드레스부의비트길이를부가하는경우도있습니다. 일반적으로역사적인이유로네트워크마스크 (netmask) 가자주이용됩니다. 이러한네트워크부를모두 1로, 호스트부를 0으로한것입니다. 또한, 네트워크를분할관리 ( 서브네트워크화 ) 한다고하여, 서브네트워크마스크 (sub netmask) 라고부릅니다. 예.IP 어드레스 192.168.10.68로써 Prefix 길이 26비트의경우 네트워크부 (26) 호스트부 (6) 2 진수 10 진수 16 진수 11000000.10101000.00001010.01000100 / 26 192. 168. 10. 68 / 26 C0. A8. A. 44 / 26 슬래시이후숫자가 Prefix 길이 호스트에 IP 어드레스를설정한경우에관한정보예정보어드레스어드레스의값 (2진수) 비고 IP 어드레스 192.168. 10. 68/26 1100 0000 1010 1000 0000 1010 0100 0100 ( 서브 ) 네트워크마스크 255.255.255.192 1111 1111 1111 1111 1111 1111 1100 0000 - 네트워크어드레스 192.168. 10. 64/26 1100 0000 1010 1000 0000 1010 0100 0000 브로드캐스트어드레스 192.168. 10.127 1100 0000 1010 1000 0000 1010 0111 1111 호스트부분이 1인어드레스 1-4
비고 특수한 IP 어드레스 (1) 모든비트가 0과 1 0.0.0.0 이라고하는 IP 어드레스는자신의 IP 어드레스가분할되지않거나, 교신상대에통지되지않는경우에이용됩니다. 255.255.255.255는브로드캐스트어드레스 ( 교신상대 : 동일한네트워크에접속되어있는모든기기ㆍPC) 를의미합니다. (2) 루프백어드레스동일기기 (PC) 에서실행되고있는프로그램에서이용되는어드레스입니다. 127.0.0.0~127.255.255.255의범위에서사용합니다. (3) 멀티캐스트어드레스특정그룹사이에서통신할때에이용되는어드레스입니다. 224.0.0.0~239.255.255.255 의범위에서사용합니다. (4) 프라이비트어드레스인터넷에접속되어있지않은때는어떠한 IP 어드레스를사용하여도무방합니다만, 트러블을방지하기위해서자유롭게할당가능한어드레스가지정되어있습니다. 이것이프라이비트어드레스라고하는것입니다. 네트워크어드레스 (*1) IP 어드레스의범위 (*2) 10/8 10.0.0.0~10.255.255.255 172.16/12 172.16.0.0~172.31.255.255 192. 168/16 192.168.0.0~192.168.255.255 *1 / 의우측의수치는 IP 어드레스의상위측에표시되는네트워크어드레스의비트수 ( 최상위비트로부터의비트수 ) 를나타냅니다. *2 브로드캐스트용 IP 어드레스를포함합니다. 1-5
1.3 통신프로토콜 여기에서대상으로하는 MELSEC-Q Ethernet 모듈은통신을위한프로토콜 ( 규약 : 약속 ) 로써, TCP/IP와 UDP/IP의 2가지프로토콜에대응하고있습니다. 1.3.1 통신모뎀 통신다. 이는 장치로써 ISO( 국제표준화기구 ) 에의한 OSI 참조모델 이라는것이있습니 통신에필요한기능을 7 개의계층으로나눈것입니다. 계층 기능 이미지 프로토콜예 이용자와가장가까운계층 각애플리케이션프로토콜 HTTP ㆍ실제서비스내용에관한결정 TELNET 7 애플리케이션층원격로깅 TELNET 프로토콜ㆍ사용자가실제로검토하는것파일전송 FTP FTP 프로토콜ㆍ이용가능한서비스 SMTP 6 프레젠테이션층 데이터포맷을정의ㆍ변환 ㆍ데이터표현방식의정의데이터네트워크 MIME ㆍ데이터의암호 / 해독, 압축 / 전개포맷A 공통포맷데이터포맷A HTML ㆍ문자코드, 데이터포맷 XML 데이터표현이잘못된것을흡수 5 섹션층 4 트랜스포트층 통신커넥션을확립 ㆍ커넥션의확립 / 차단ㆍ커넥션의인증ㆍ데이터교신의동기 교신상대까지정확한데이터전송제공 ㆍ시점종점간의데이터신뢰성확보ㆍ에러정정 ( 도착순정정, 재송신요구 ) ㆍ통신흐름제어 통신커넥션관리 신뢰성확보 ACK RPC TCP UDP 3 네트워크층 인접하지않은교신상대와의통신순서 ㆍ경로제어 ( 루틴 ) 정의ㆍ통신경로결정의정의ㆍ어드레스에의한가상접속확립 IP 경로선택 2 데이터링크층 1 물리층 인접한장치간의데이터교신 ㆍ인접한장치간의통신순서ㆍ송수신데이터포맷정의ㆍ장치간의데이터오류검출, 정정방법정의 물리적인접촉을제어 ㆍ최하위레벨의전기적접속조건ㆍ데이터신호의 ON/OFF 정의ㆍ커넥터형상, 각신호핀배열등 0101 프레임과비트열의교환인접장치간데이터전송 0101 0101 Ethernet PPP Ethernet ISDN 전화회선 숫자가큰쪽이상위 ( 논리적 ) 계층이고, 작은쪽이하위 ( 물리적 ) 계층입니다. IP 는네트워크층, TCP 와 UDP 는트랜스포트층에대응합니다. 또한, Ethernet 은데이터링크층ㆍ물리층에대응합니다. 1-6
<Ethernet 모듈과통신모뎀> OSI 참조모델 에대응하는 Ethernet 모듈의소프트웨어구성에대해설명합니다. 물리층, 데이터링크층은 Ethernet 모듈의 Ethernet 부분에대응합니다. 네트워크층, 트랜스포트층은 Ethernet 모듈의 IP, TCP/UDP 부분에대응합니다. 보다상위의섹션층, 프레젠테이션층, 애플리케이션층에대해서는 QPLC CPU 와 Ethernet 모듈의조합으로실현되고있는 MELSEC-Q 독자의각종기능의소프트웨어부분에대응합니다. 1-7
1.3.2 IP 프로토콜 (1) IP의역할 IP는 IP 네트워크에접속하는모든기기가처리하는네트워크층의프로토콜입니다. TCP/IP(UDP/IP) 네트워크의가장중요한역할은 목적 ( 상대 ) 어드레스의기기ㆍPC로데이터를운반하는것 입니다. 이역할은 IP(Internet Protocol) 에의해실현됩니다. 데이터 ( 화물 ) 에는 IP 헤더 라고하는정보 ( 꼬리표 ) 를부가하여배송합니다. (2) IP에서의제어사항 IP는데이터를목적하는 PC에운반하는역할을합니다만, 몇가지제한이있습니다. (a) 목적지로의도달보증이없다 3 2 1 IP 네트워크 3 1 (b) 송신한순번대로도달하는지에대한보증이없다 3 2 1 IP 네트워크 2 1 3 (c) 한번에운반할수있는사이즈에제한이있으므로, 화물단위 ( 패킷 ) 가전송시에여럿으로분할될가능성이있다 (*1) 1 IP 네트워크 1-2 1-1 (d) 데이터가손상되지않는다는보증이없다 손상데이터 1 23456789 IP 네트워크 1 24789356 즉, IP는 목적한기기ㆍPC에데이터 ( 화물 ) 을운반하는데노력은하지만보증은하지않는다 ( 최선노력 :Best Effort) 라고하는역할을합니다. 단, IP의상위층으로 TCP를이용하는경우에는, 이러한제한을둘필요는없습니다. 상위층으로 UDP를이용하는경우에는, 데이터손상검출이외에는상기의제한이있으므로주의가필요합니다. *1 Ethernet 모듈이송수신할수있는 1전문 (1패킷) 의크기는최대 1500바이트 (IP 헤더를포함 ) 입니다. 1500바이트를초과하는데이터는 TCP/IP통신, UDP/IP통신의어느경우에도분할하여송신되며, 분할된데이터는수신측에서는합쳐져서, 애플리케이션 ( 응용 ) 프로그램에도달하게됩니다. 1-8
1.3.3 TCP 와 UDP TCP 와 UDP 는통신하는양단의기기ㆍ PC 가처리하는 ( 트랜스포트층 ) 프로토콜 입니다. (1) 포트번호실제적인통신은기기ㆍPC 내에서동작하는애플리케이션프로그램을통해이루어집니다. TCP와 UDP에서는포트번호 (port number) 에의해, 어떤애플리케이션프로그램과어떤애플리케이션프로그램이통신되고있는지를인식합니다. IP 어드레스를 주소 라고생각할때, 포트번호는 건물의층 에해당합니다. 애플리케이션프로그램 A 애플리케이션프로그램 B 애플리케이션프로그램 C 주소XX (IP 어드레스 ) 건물의층 ( 포트번호 ) IP 네트워크 건물의층 ( 포트번호 ) 애플리케이션프로그램 D 애플리케이션프로그램 E 주소 YY (IP 어드레스) 실제적으로는다음의 5개의조합으로통신이인식됩니다. ㆍ송신상대 IP 어드레스ㆍ송신소스 IP 어드레스ㆍ송신상대포트번호ㆍ송신소스포트번호ㆍ프로토콜번호 (TCP=6H, UDP= 17H) 1-9
(2) TCP와 UDP의비교이용자애플리케이션에따라, 네트워크에대한요구레벨이다릅니다. 하지만, 많은요구에대해고유의프로토콜을만드는것은대단한일입니다. 여기서, 최소한으로필요한기본서비스로써, TCP(Transmission Control Protocol) 와 UDP(User Datagram Protocol) 가만들어졌습니다. TCPㆍㆍㆍ신뢰성이높고, 가장먼저송신상대로의경로 ( 커넥션 ) 를고정하며, 쌍방향으로 1:1통신을합니다. UDPㆍㆍㆍ애플리케이션으로부터넘어온데이터를지정한송신상대에한쪽방향으로통신을합니다. IP를사용하여그상태그대로송신하므로고속입니다. 다음 표는이들의특징을비교한것입니다. 항목 TCP UDP 비고 신뢰성 높다 낮다 ( 처리 ) 속도 저속 고속 유니캐스트 (1:1통신). 통신상대기기의수 1:1 1:1 또는 1:n 멀티캐스트 (1:n통신). (*1) 송신상대로의도달보증 있다 없음 송신에러시의동작 자동으로재송신한다 ( 설정에따름 ) 재송신없음 ( 패킷파손 ) 통신커넥션의확립 필요 불필요 TCP에서는패킷단위의송신순으로도착. 전송타입 스트림형 TCP에서도애플리케이션데이터그램형 ( 문자열로명령ㆍ데이터를레벨로데이터그램형실현 ( 고정포맷으로송신 ) 송신 ) 가능. 데이터수신측의버퍼크 흐름제어 있음 없음 기에대응하여송신측이 송신데이터량을제어. 폭주제어네트워크의혼잡도에대응있음없음 ( 재송신제어 )(*2) 하여패킷송신량을제어. 커넥션의커넥션에대해서는 2.3항오픈중불가능가능 (*3) 참조상대기기변경 TCP는데이터를확실하게전송하고자하는경우등에이용됩니다.. UDP는 PC화면등에서리얼타임모니터를할경우등에이용됩니다. *1 멀티캐스트 (1:n통신) 의 n은동일 Ethernet상의 1개의그룹에포함되는여러기기의집합을나타냅니다. *2 네트워크상의교신패킷의정체를 폭주 로표현합니다. *3 커넥션이오픈중일때교신상대기기를변경하는것은교신트러블의요인이됩니다. 가능하다면, 커넥션이오픈중일때에는교신할상대기기를변경하지마십시오. 1-10
1.4 MELSEC-Q Ethernet 모듈 1.4.1 Ethernet 모듈의역할 Ethernet 모듈은 Ethernet으로접속된외부기기와 PLC CPU 또는 PLC CPU 간의데이터교신을지원하고, TCP/IP 또는 UDP/IP 통신으로상대기기와데이터를송수신하는역할을합니다. 따라서, 멀리떨어져있는외부기기로부터 PLC CPU의상황을확인할수있습니다. 공장 A PLC 외부기기 PLC Ethernet 모듈 Ethernet 모듈 루트 공장 B Ethernet 모듈 외부기기 외부기기 PLC 모든외부기기는 Ethernet을경유하여공장A와공장B의 PLC와교신할수있습니다. 또한, 공장A와공장B의 PLC 간에도동일한교신을수행할수있습니다. 1-11
1.4.2 Ethernet 모듈의개요 (1) 통신방식으로써 TCP/IP통신, UDP/IP통신이가능 Ethernet 모듈은 TCP/IP통신과 UDP/IP통신을지원합니다. 상대기기에맞는통신방식을선택할수있습니다. (2) 데이터코드의선택가능 Ethernet 모듈은바이너리코드또는 ASCII 코드의데이터로써교신할수있습니다. 데이터코드의상세내용은 2.1항을참조하십시오. (3) 교신목적에부합하도록하는 3 가지교신기능 Ethernet 모듈은아래에기재된 3가지의교신기능을갖고있습니다. 사용자의교신목적을충족시키기위해, 기능을 있습니다. 상세내용은 2. 2항을참조하십시오. ㆍ MC 프로토콜에의한교신ㆍ고정버퍼에의한교신 ( 수순 / 무수순 ) ㆍ랜덤액세스버퍼에의한교신 선택하여데이터교신할수 포인트 교신하는기기간에통신필요가있습니다. 방식과송수신할데이터의데이터코드를일치시킬 (4) 전자메일에의한원격지와의교신전자메일송수신기능에의해, 원격지의 PC와데이터를송수신할수있습니다. 또한, 자동통지조건을설정하여놓으면, 이조건의성립시에전자메일을자동적으로송신하게할수있습니다. (5) Web기능에의한인터넷액세스 (QJ71E71-100만대응) 시판하는 Web 브라우저를사용하여, 시스템관리자가원격지에있는 Q 시리즈 PLC CPU를인터넷을경유하여감시할수있습니다. Web기능을이용할때에는통신라이브러리ㆍ사용자작성화면및 Q PLC 액세스용프로그램을 Web 서버에저장해놓을필요가있습니다. 1-12
제 2 장 Ethernet 모듈을사용하기전에숙지해야할사항 2.1 2 개의데이터코드 Ethernet 모듈은바이너리코드또는 ASCII 코드의데이터로외부기기와교신할수있습니다. 바이너리코드 /ASCII 코드의전환은 GX Developer로써설정합니다. 상세내용은 4.6항을참조하십시오. (1) 바이너리코드에의한교신 Ethernet 모듈은자신의 1바이트데이터를그대로송신 / 수신합니다. (a) 장점 1 ASCII 코드에비해송신 / 수신하는데이터의용량을 1/2로회선의부하를줄일수있습니다. 2 00H~FFH의데이터를취급할수있습니다. (b) 단점수치데이터를표시하는경우, ASCII 코드로변환할필요가있습니다. 예 :1234H 를송신 / 수신하는경우 2-1
(2) ASCII 코드에의한교신 Ethernet 모듈은 1바이트의데이터를 ASCII 코드 2문자의데이터로송신 / 수신합니다. (a) 장점외부기기측은자신의데이터를그대로표시합니다. (b) 단점 1 바이너리코드의데이터에비해송신 / 수신하는데이터의용량이 2배로회선의부하가많아집니다. 2 수치를취급데이터는 ASCII-바이너리로변환할필요가있습니다. (Ethernet 모듈측에서는자동적으로변환됩니다.) 예 : 1234 를송신 / 수신하는경우 (3) 각교신방법과데이터코드의관계 각교신방법에있어서의데이터코드의사용여부는아래와같습니다. 데이터교신기능 교신데이터코드설정바이너리코드 ASCII 코드 MC프로토콜에의한교신 자동오픈 UDP 포트 *1 - 사용자오픈포트 고정버퍼에의한교신 수순 무수순 *1 - 랜덤액세스용버퍼에의한교신 : 선택가능 -: 교신불가능 *1 GX Developer에서의교신데이터코드설정에관계없이 Ethernet 모듈은바이너 리코드의데이터교신을실행합니다. 2-2
2.2 데이터교신기능의종류 Ethernet 모듈은 MC 프로토콜에의한교신, 고정버퍼에의한교신, 랜덤 액세스용버퍼에의한교신 등 3 가지의교신기능을보유하고있습니다. 다음은각교신기능에대한개요입니다. 2.2.1 MC 프로토콜에의한교신 MC프로토콜은 Ethernet 모듈또는 Q시리즈시리얼커뮤니케이션모듈을중계로하여 PC에서 PLC CPU의디바이스데이터, 프로그램의읽기 / 쓰기등을실행하기위한기능입니다. PC 측은 MC프로토콜에맞게데이터의송수신을할수있는프로그램을작성하면, 간단하게 PLC CPU에액세스할수있습니다. PLC CPU 측은교신프로그램을작성할필요가없습니다. 포인트 MC 프로토콜에의한데이터교신을실행하는경우에는 Q 대응 MELSEC 커뮤니케이션프로토콜레퍼런스매뉴얼을참조하십시오. (1) MC프로토콜의기능 (a) PLC CPU 데이터의읽기, 쓰기 Ethernet 접속국 ( 자국 ) 또는 MELSECNET/H, MELSECNET/10상의다른국 PLC CPU의디바이스메모리, 인텔리전트기능모듈의버퍼메모리에대한데이터의읽기, 쓰기를실행할수있습니다. 데이터의읽기, 쓰기를실행함으로써, PC에서 PLC CPU의동작감시, 데이터해석및생산관리등을수행할수있습니다. 또한, PC에서생산지시등도할수있습니다. 읽기 디바이스메모리, 버퍼 메모리읽기, 쓰기가능 PC 쓰기 PLC CPU 2-3
(b) PLC CPU 파일의읽기, 쓰기 PLC CPU에저장되어있는시퀀스프로그램이나파라미터등의파일을읽거나쓸수있습니다. 파일을읽기 / 쓰기함으로써 QCPU 및타국 QnACPU의파일을 PC에서관리할수있습니다. 또한, PC에서 PLC CPU의실행프로그램등을변경할수있습니다. 읽기 디바이스메모리, 버퍼 메모리읽기, 쓰기가능 PC 쓰기 PLC CPU (c) PLC CPU의리모트제어가가능리모트 RUN/STOP/PAUSE/ 래치클리어 / 리셋이가능합니다. PLC CPU의리모트제어기능을사용함으로써, PC에서 PLC CPU를원격조작할수있습니다. (2) MX Component, MX Links의활용 하기 OS로동작하고있는 PC의경우, MX Component 또는 MX Links(SW3D5F-CSKP 이후 ) 를사용함으로써, MC프로토콜의상세프로토콜 ( 송수신순서 ) 을의식하지 않고교신프로그램을작성할수있습니다. ( 대응하는기본 OS) ㆍMicrosoft R Windows R 95 Operating System ㆍMicrosoft R Windows R 98 Operating System ㆍMicrosoft R Windows NT R Workstation 4.0 Operating System ㆍMicrosoft R Windows R Millennium Edition Operating System(*1) ㆍMicrosoft R Windows R 2000 Professional Operating System(*1) *1 MX Component Version 2 이후부터대응합니다. 본교재의 5 장에 MX Component 를사용한과제를정리해놓았습니다. 또한, 부록 2 항에 MX Component 의특징이기재되어있습니다. 2-4
(3) 데이터교신이가능한상대기기 MC프로토콜에의한교신은아래의상대기기에서실행할수있습니다. 1 Ethernet 모듈과같은 Ethernet상에접속되어있는기기 2 라우터를경유하여다른 Ethernet상에접속되어있는기기 3 PLC CPU를중계로하여 MELSECNET/H에접속되어있는기기 2 PC Ethernet-2 1 PC 라우터 Ethernet- 1 PLC CPU ( 액세스상대국 ) PLC CPU MELSECNET/H 3 PC PC (4) 데이터송신 / 수신순서의개요 아래의그림에나타낸흐름과같이데이터의송신 / 수신이이루어집니다. (a) TCP/IP 통신시 PLC CPU Ethernet 모듈 상대기기 버퍼메모리 커맨드수신 ACK 송신응답송신 ACK 수신 송신처리 수신처리 (b) UDP/IP 통신시 PLC CPU Etherne 모듈 상대기기 버퍼메모리 커맨드수신 송신처리 응답송신 수신처리 비고 MC프로토콜에의한교신에있어서, 하기언어를사용한 PC 측의교신프로그램예는 Q대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 을참조하십시오. ㆍMicrosoft R Corporation의 Visual C++ ㆍMicrosoft R Corporation의 visual basic 2-5
2.2.2 고정버퍼에의한교신 Ethernet 모듈내의버퍼메모리에준비되어있는고정버퍼를사용하여타 PLC CPU 또는 PC와교신할수있습니다. PLC CPU 간또는 PLC CPU와상위시스템간에서, 최대 1k워드분의임의의데이터를송신또는수신할수있습니다. Ethernet 모듈에는 1k워드의고정버퍼가 16개준비되어있어, 각각을임의의기기와송신용또는수신용버퍼로써할당하여사용합니다. MC프로토콜에의한교신이수동적인교신인것에대해, 고정버퍼에의한교신은능동적인교신을하기위한기능입니다. 기계설비의에러발생시나어떠한조건성립시에, PLC CPU 측으로부터상위시스템에데이터를송신할수있습니다. 또한, 인터럽트프로그램에의한데이터수신기능을사용함으로써, PLC CPU로의수신데이터의수취를빠르게할수있습니다. 에러확인 PC 에러발생 PLC CPU( 자국 ) 에러확인 PLC CPU (1) 제어방식 Ethernet 모듈내의고정버퍼를사용하여상대기기와교신합니다. PLC 상대기기 송신 수신 BUFSND 명령 BUFRCV 명령 버퍼메모리고정버퍼 No.1 No.2 No.3 No.4 No.16 2-6
아래그림에표시한대로, 각각의고정버퍼 (No.1~No.16) 를사용하여교신할상대기기의 IP어드레스및사용용도 ( 송신용 / 수신용, 수순 / 무수순 ) 등을 Ethernet 모듈의커넥션 ( 논리회선 ) 의오픈시에설정하여, 각각의버퍼에대한상대기기를고정합니다.(*1) *1 데이터교신에서사용할커넥션의번호 (1~16) 와고정버퍼의번호는같습니다. 고정버퍼 No.1 고정버퍼 No.2 고정버퍼 No.3 상대기기1에대한송신용상대기기1에대한수신용 상대기기 8 에대한수신용 1 상대기기 1 상대기기 8 고정버퍼No.16 상대기기28에대한송신용상대기기28 (2) 수순과무수순의차이점 고정버퍼교신 ( 수순 ) 과고정버퍼교신 ( 무수순 ) 의차이점은아래와같습니 다. 수순 무수순 통신방법 자국PLC CPU와상대기기의어플리케이션자국PLC CPU와상대기기의어플리케이션프로그램이, 핸드쉐이크 ( 신호변경 ) 를하지프로그램이, 핸드쉐이크 ( 신호변경 ) 를하면않고교신한다.( 데이터송신시에상대기서교신한다. 기의수신확인을할수없음.) 오픈한커넥션의용도 고정버퍼교신, 랜덤액세스용버퍼에의한교신, MC프로토콜에의한교신이가능. 고정버퍼교신가능. 어플리케이션전문포맷의제약없음.( 상대기기측의 Ethernet 모듈이결정한전문포맷. 데이터부의전문포맷전문포맷으로교신가능.) 교신데이터의코드 ASCII 코드또는바이너리코드 바이너리코드 전용명령사용시의데이터길이단위 워드 바이트 (3) 데이터교신이가능한상대기기고정버퍼에의한교신은아래의상대기기와행할수있습니다. 1 Ethernet 모듈과동일 Ethernet상에접속되어있는기기 2 라우터를경유하는다른 Ethernet상에접속되어있는기기 Ethernet-2 2 PC 1 PC 라우터 Ethernet - 1 PLC CPU ( 액세스국 ) 2-7
(4) 데이터송신 / 수신순서의개요아래그림에표시하는흐름으로, 데이터의송신 / 수신이행해집니다. (a) TCP/IP통신시 1 고정버퍼교신 ( 수순 ) PLC CPU Ethernet 모듈상대기기송신요구데이터송신 BUFSND 명령고정버퍼-n ACK 수신응답수신수신처리완료 ACK 송신 BUFRCV 명령 수신완료 수신완료 확인 고정버퍼 -m 데이터수신 ACK 송신응답송신 ACK 수신 송신처리 2 고정버퍼교신 ( 무수순 ) PLC CPU BUFSND 명령 송신요구 완료 Ethernet 모듈 고정버퍼 -n 데이터송신 ACK 수신 상대기기 수신처리 BUFRCV 명령 수신완료 수신완료 확인 고정버퍼 -m 데이터수신 ACK 송신 송신처리 (b) UDP/IP 통신시 1 고정버퍼교신 ( 수순 ) PLC CPU BUFSND 명령 송신요구 완료 Ethernet 모듈 고정버퍼 -n 데이터송신 응답수신 상대기기 수신처리 BUFRCV 명령 수신완료 수신완료 확인 고정버퍼 -m 데이터수신 응답송신 송신처리 2 고정버퍼교신 ( 무수순 ) PLC CPU BUFSND 명령 송신요구 완료 Ethernet 모듈 고정버퍼 -n 데이터송신 상대기기 수신처리 BUFRCV 명령 수신완료 고정버퍼 -m 데이터수신 송신처리 수신완료 확인 2-8
2.2.3 랜덤액세스용버퍼에의한교신 Ethernet 모듈내의버퍼메모리에준비되어있는랜덤액세스용버퍼를사용하여 PC와교신할수있습니다. 고정버퍼교신으로는데이터용량 ( 최대 1k워드 ) 이부족한경우에, 랜덤액세스용버퍼에의한교신기능을사용하면, 대량의데이터를송수신할수있습니다. (1) PLC CPU와상대기기의공통메모리로써의활용상대기기와대용량 ( 최대 6k워드 ) 의데이터통신을할수있습니다. 랜덤액세스용버퍼는상대기기를고정하지않고, 임의의상대기기 (*1) 에서자유롭게읽기 / 쓰기를할수있습니다. 따라서, Ethernet에접속되어있는상대기기의공통메모리로써, 랜덤액세스용버퍼를사용할수있습니다.(*2) *1 PLC CPU 사이에서의교신용으로써랜덤액세스용버퍼에의한교신기능은사용할수없습니다. *2 랜덤액세스용버퍼에대한 PLC CPU로부터의읽기 / 쓰기와, 상대기기로부터의읽기 / 쓰기는비동기로실행됩니다. Ethernet 모듈 버퍼메모리 쓰기 상대기기 PLC CPU TO 명령 FROM 명령 시스템액세스용 버퍼 읽기 쓰기 읽기 상대기기 (2) 데이터교신이가능한상대기기랜덤액세스용버퍼에의한교신은아래의상대기기와실행할수있습니다. 1 Ethernet 모듈과같은 Ethernet상에접속되어있는기기 2 라우터를경유하는다른 Ethernet상에접속되어있는기기 Ethernet-2 2 PC 1 PC 라우터 Ethernet-1 PLC CPU ( 액세스국 ) 2-9
(3) 데이터송신 / 수신순서의개요아래그림에나타낸흐름과같이데이터의송신 / 수신이이루어집니다. (a) TCP/IP통신시 PLC CPU Ethernet 모듈 상대기기 ( 쓰기시 ) ( 데이터 ) 커맨드수신 ( 읽기 / 쓰기요구 ) ACK 송신 송신처리 TO 명령 FROM 명령 랜덤액세스용버퍼 ( 데이터 ) ( 읽기시 ) 응답송신 ACK 수신 수신처리 (b) UDP/IP 통신시 PLC CPU Ethernet 모듈 상대기기 ( 쓰기시 ) ( 데이터 ) 커맨드수신 ( 읽기 / 쓰기요구 ) 송신처리 TO 명령 FROM 명령 랜덤액세스용버퍼 ( 데이터 ) ( 읽기시 ) 응답송신 수신처리 2.2.4 데이터교신 기능별상대기기와의교신여부 Ethernet 모듈은 MC프로토콜에의한교신, 고정버퍼에의한교신, 랜덤액세스용버퍼에의한교신 등 3가지의교신기능을갖고있습니다. Ethernet 모듈의각교신기능의상대기기와의교신가능여부를표시합니다. 상대기기 (*1) PC PC QJ71E71 QJ71E71 종래기종기능 QJ71E71 QJ71E71 QJ71E71 종래기종 QJ71E71 MC프로토콜에의한교신 고정버퍼에의한교신 랜덤액세스용버퍼 에의한교신 : 교신가능 : 교신불가능 *1 종래기종은 MELSEC-A 시리즈, QnA 시리즈의 Ethernet 인터페이스모듈을의미 합니다. 2-10
2.3 오픈 / 클로즈처리 Ethernet 모듈을사용하여상대기기와교신할때는모듈의기동시에자동적으로실행되는이니셜 ( 초기화 ) 처리완료후에, 상대기기와데이터교신하기위한커넥션의확립 ( 논리회선의접속 ) 을할필요가있습니다. Ethernet 모듈의경우커넥션은시스템용과사용자용이있으며, 모두오픈처리가실행됨으로써, 상대기기와의데이터교신이가능해집니다. 또한, 확립한커넥션을교신종료후에클로즈처리합니다. 다음은 Ethernet 모듈의커넥션과오픈처리, 클로즈처리에대한설명입니다. ( 데이터교신순서의개략도 ) (1) Ethernet 모듈의커넥션 (a) 시스템용커넥션 1 위그림의오른쪽에표시한 Ethernet 모듈의특수기능등을이용하여, 사용자가데이터교신할때에사용되는커넥션입니다. 2 Ethernet 모듈의기동시에자동적으로오픈처리가실행됩니다. 사용자가수동으로커넥션의오픈처리, 클로즈처리를할필요가없습니다. (b) 사용자용커넥션 1 위그림의왼쪽에표시한 Ethernet 모듈의기본기능을이용하여, 사용자가데이터교신할때에사용되는커넥션입니다. 2 상대기기와의데이터교신을시작할때에사용자가오픈처리를실행하고, 데이터교신을종료할때에사용자가클로즈처리를실행합니다. 3 상대기기와데이터교신할때의통신방식에따라, 커넥션의확립이실행됩니다. 2-11
(TCP/IP통신을하는경우 ) ㆍ오픈처리가정상완료됨으로써, 커넥션이확립됩니다. ㆍ데이터교신종료후에클로즈처리가정상완료됨으로써, 커넥션이끊깁니다. ㆍ커넥션의확립방법으로써능동적인 Active 오픈, 수동적인 Passive 오픈이있습니다. (Active 오픈 ) 커넥션의확립을대기하고있는지정상대기기에대하여, 커넥션의확립요구를실행합니다. 전화회선의경우, 전화를거는쪽이해당됩니다. (Passive 오픈 ) Fullpassive 오픈과 Unpassive 오픈이있습니다. 전화회선의경우, 전화를받는쪽이해당됩니다. Ethernet 모듈측의 Passive 오픈에의한오픈처리, 클로즈처리는 PLC CPU에서수행하는방법과 Ethernet 모듈의시스템이수행하는방법이있습니다.(*1) (Fullpassive 오픈 ) 지정한상대기기에서자국소스커넥션의확립요구 (Active 오픈 ) 를기다립니다. (Unpassive 오픈 ) 임의의상대기기에서자국소스커넥션의확립요구 (Active 오픈 ) 를기다립니다. ( 커넥션확립순서의개략도 ) PLC CPU Ethernet 모듈 Ethernet 모듈 PLC CPU 이니셜처리 이니셜요구 이니셜요구 이니셜처리 이니셜완료 이니셜완료 이니셜완료 이니셜완료 Fullpassive/ Unpassove 오픈 오픈 오픈요구대기 오픈요구 Active 오픈 오픈완료 오픈완료 오픈완료 오픈완료 (UDP/IP통신을하는경우 ) ㆍ오픈처리, 클로즈처리는상대기기와데이터교신이가능하도록하기위한 Ethernet 모듈의내부처리입니다. ㆍ오픈처리가정상완료된후의데이터교신시에커넥션이확립됩니다. ㆍUDP/IP 통신할때의 Ethernet 모듈측의오픈처리, 클로즈처리는 PLC CPU가수행하는방법과 Ethernet 모듈의시스템이수행하는방법이있습니다.(*1) 2-12
*1 다음에기재한 Ethernet 모듈측의오픈처리, 클로즈처리는 PLC CPU가수행하는방법과 Ethernet 모듈의시스템이수행하는방법이있으며, 아래 GX Developer에서의 Ethernet 모듈용파라미터의설정값에따라결정됩니다. ㆍT CP/IP통신할때의 Passive 오픈에의한오픈처리, 클로즈처리. ㆍUDP/ IP통신할때의오픈처리, 클로즈처리. (1) GX Developer에서의 Ethernet 모듈용파라미터설정에있어, 하기 1과 2의양쪽의설정에해당하는커넥션의오픈처리, 클로즈처리는 Ethernet 모듈의시스템이수행합니다. 상대기기와의데이터교신에서사용하는커넥션에대해시퀀스프로그램으로오픈처리, 클로즈처리를할필요가없습니다. ( 설정화면은다음쪽을참조하십시오.) 1 동작설정의 이니셜타이밍설정 에서, 상시 OPEN 대기 를설정한경우 ( 모든사용자용커넥션공통의설정입니다.). 2 오픈설정의 프로토콜, 오픈방식 에서, 아래의설정을실행한사용자용커넥션. ㆍ 프로토콜 =TCP, 오픈방식 =Unpassive ㆍ 프로토콜 =TCP, 오픈방식 =Fullpassive ㆍ 프로토콜 =UDP, 오픈방식 =( 설정불필요 ) 비고상기설정으로 Ethernet 모듈을기동시킨경우 ( 프로토콜 =TCP를설정한커넥션 ) ㆍ상대기기로부터의오픈처리(Active 오픈 ) 로오픈중에있으며, 데이터교신을할수있습니다. ㆍ데이터교신을종료할때에도, 상대기기로부터의클로즈처리로써커넥션이끊깁니다. ㆍ필요에따라상대기기에서오픈처리, 클로즈처리를실행하여 데이터교신을하십시오. 단, 커넥션이오픈중에교신트러블등에의해 해당커넥션을클로즈했을때에는 CLOSE 명령을 PLC CPU 측에서 사용하여시퀀스 프로그램으로클로즈처리를실행하십시오. 이경우, Ethernet 모듈의시스템에의한해당커넥션의오픈대기처리는실행되지않으므로, Ethernet 모듈측의이후의오픈처리 (OPEN 명령을사용), 클로즈처리는모두시퀀스프로그램으로실행할필요가있습니다. ( 프로토콜 =UDP를설정한커넥션 ) Ethernet 모듈의기동으로상대기기와데이터교신을할수있습니다. 2-13
(2) 상기파라미터설정을통해하기 1 또는 2와같이설정을한경우에, 해당커넥션의오픈처리, 클로즈처리는시퀀스프로그램으로실행합니다. Ethernet 모듈의시스템은이러한오픈처리, 클로즈처리를실행하지않습니다. 1 동작설정의 이니셜타이밍설정 에서, OPEN 대기로하지않는다 를설정한경우 ( 모든사용자용커넥션의공통설정입니다.). 2 오픈설정의 프로토콜, 오픈방식 에서, 아래와같이설정한사용자용커넥션. ㆍ 프로토콜 =TCP, 오픈방식 =Active 2-14
(2) 오픈처리 (a) 오픈처리는상대기기와데이터송수신을가능하게하는처리입니다. 1 TCP/IP통신을하는경우ㆍEthernet 모듈의시스템은데이터교신에이용하는커넥션을사용하여상대기기와교신하며, 커넥션을확립 ( 논리회선의접속 ) 합니다. ㆍ오픈처리가정상완료함에따라, 이커넥션을사용하여사용자가데이터를송수신할수있습니다. 2 UDP/IP통신을하는경우ㆍEthernet 모듈의시스템은내부처리를실행합니다. ㆍ오픈처리가정상완료함에따라, 오픈처리한커넥션을사용하여사용자가데이터를송수신할수있습니다. (b) 오픈처리를실행하기위해서는이니셜처리가정상완료되어있을필요가있습니다. (c) 오픈처리는최대 16장의상대기기에대하여실행합니다. 단, 동일한상대기기와고정버퍼교신에의해송신ㆍ수신 을실행한경우에는 2개의고정버퍼가필요하므로교신할수있는상대기기가적어집니다. 포인트 MC 프로토콜에의한교신, 랜덤액세스용버퍼에의한교신을실행한경우에는아래사항에주의하여주십시오. ㆍ Ethernet 모듈장착국의 PLC CPU 를 STOP 으로한경우라도데이터교신을계속하고자할때에는 이니셜타이밍설정 을 상시오픈대기 (STOP 중교신가능 ) 로설정하십시오. 2-15
(3) 클로즈처리 (a) 클로즈처리는상대기기와데이터를송수신할수없도록하는처리입니다. 1 2 TCP/IP통신을하는경우ㆍEthernet 모듈의시스템은데이터교신에서이용한커넥션을사용하여상대기기와교신하며, 커넥션끊기 ( 논리회선의차단 ) 를실행합니다. ㆍ클로즈처리가정상완료함에따라, 이커넥션을사용하여데이터교신하는상대기기의변경이가능해집니다. UDP/IP통신을하는경우 ㆍEthernet 모듈의시스템은내부처리를실행합니다. ㆍ클로즈처리가정상완료함에따라, 이커넥션을사용하여데이터교신하는상대기기의변경이가능해집니다. (b) 하기와같은경우에클로즈처리를실행합니다. ㆍ상대기기와의교신을종료한다. ㆍ교신하는상대기기를변경한다. ㆍ교신조건을변경한다. (c) 시퀀스프로그램으로오픈처리를실행한커넥션은클로즈처리역시시퀀스프로그램으로실행하여주십시오. (d) 클로즈처리의타이밍은상대기기에따라결정하십시오. 포인트 클로즈요구가없다할지라도다음과같은경우에는자동적으로오픈완료신호 ( 어드레스 :5000H의해당비트 ) 가 OFF하여통신회선이클로즈됩니다. (1) 생존확인기능의타임아웃이발생한경우 (2) 상대기기로부터의클로즈, ABORT(RST) 명령을수신한경우 (3) TCP/IP 에서의오픈완료상태에서, 상대기기로부터다시 Active 오픈요구를수신한경우 (RST 커맨드를송신한후에커넥션이클로즈됩니다.) 2-16
2.3.1 Active 오픈 / 클로즈처리 Active 오픈은 TCP/IP통신을하는커넥션의오픈대기상태 (Fullpassive/ Unpassive) 로되어있는상대기기에대하여접속처리를실행하고, 데이터교신이가능하도록합니다. PLC CPU Ethernet 모듈 Ethernet 모듈 PLC CPU 이니셜처리 이니셜요구 이니셜요구 이니셜처리 이니셜완료 이니셜완료 이니셜완료 이니셜완료 Fullpassive/ Unpassove 오픈 오픈 오픈요구대기 오픈요구 Active 오픈 오픈완료 오픈완료 오픈완료 오픈완료 아래는 Ethernet 모듈시퀀스프로그램및타이밍차트입니다. << 전용명령-OPEN 명령에의한커넥션No.1의오픈처리 >> 지시 GX Developer 의 오픈설정 에서설정한 D0~D8에컨트롤데이터를설정 사용용도 를사용할때 (*1) 컨트롤데이터 [D0]: H0 M0 M1 ZP.OPEN "U0" K1 D0 M0 정상완료시의처리 OPEN 명령의컨트롤데이터에서 사용용도 를설정할때 (*1) [D0] : H8000 [D1]~[D9] 를사용용도에맞게설정 M1 이상완료시의처리 << 전용명령-CLOSE 명령에의한커넥션No.1의클로즈처리 >> 지시 ZP.CLOSE " U0" K1 D100 M100 M100 M101 M101 정상완료시의처리 이상완료시의처리 *1 사용용도 의설정항목은아래와같습니다. 상세내용은 Q대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 을참조하십시오. ㆍ고정버퍼의용도 ( 송신용, 수신용 ) ㆍ교신상대생존확인 ( 생존확인한다, 생존확인하지않는다 ) ㆍ페어링오픈 ( 페어링오픈한다, 페어링오픈하지않는다 ) ㆍ통신방식 (TCP/IP, UDP/IP) ㆍ고정버퍼교신의순서유무 ( 수순, 무수순 ) ㆍ오픈방법 (Active 또는 UDP/IP, Unpassive, Fullpassive) 2-17
번호내용파라미터교신후에 Ethernet 모듈의이니셜처리의정상완료를확인합니다. 1 ( 이니셜정상완료신호 (X19):ON) 전용명령-OPEN 명령을사용하여오픈처리를시작합니다. 2 ( 오픈요구신호 ( 어드레스 :5002H b0):on) 3 오픈처리를실행합니다. ㆍ오픈처리정상종료시데이터교신이가능해집니다. 4 ㆍ오픈처리이상종료시 OPEN 명령의컨트롤데이터에저장되어있는 완료스테이터스 ( 상태 ) 를확인하여복구처리를실행하십시오. 5 전용명령-CLOSE 명령을사용하여클로즈처리를시작합니다.( 오픈요구신호 :OFF) 6 클로즈처리를실행합니다. 7 오픈완료신호가 OFF합니다. 2-18
2.3.2 Passive 오픈 / 클로즈처리 Passive 오픈은 TCP/IP통신을하는커넥션의상대기기로부터의오픈요구 (Active 오픈에의한접속요구 ) 를수신대기하는상태가됩니다. Passive 오픈에는 Unpassive 오픈과 Fullpassive 오픈이있습니다. 2가지모두 TCP커넥션의수동오픈처리입니다. 오픈방식 Unpassive Fullpassive 내용네트워크에접속되어있는모든기기를대상으로자국소스의오픈요구 ( 접속요구 ) 를수신대기합니다. 지정한상대기기를대상으로자국소스의오픈요구 ( 접속요구 ) 를수신대기합니다. GX Developer에의한동작설정의이니셜타이밍설정 ( OPEN 대기로하지않는다, 상시 OPEN 대기 ) 의설정값에따라 Ethernet 모듈의처리가달라집니다. (1) 동작설정에서 상시 OPEN 대기 를설정한경우 Ethernet 모듈의시스템은항상커넥션을오픈대기상태로합니다. ( 오픈처리및클로즈처리에대한시퀀스프로그램은불필요합니다.) 오픈상태 전원투입 파라미터수신완료 1 (*1) 오픈가능상태 ( 클로즈중 ) (Active 오픈수신가능 ) 클로즈상태 이니셜정상완료 X19 오픈완료신호 ( 어드레스 :5000H) 오픈요구신호 ( 어드레스 :5002H) 2 SYN+ACK 3 4 FIN+ACK SYN FIN 번호내용파라미터교신후에 Ethernet 모듈의이니셜처리의정상완료를확인합니다. ( 이니셜정상완료신호 (X19):ON) 1 이니셜처리가정상완료한후에커넥션은오픈가능상태가되고, 상대기기로부터의오픈요구를수신대기상태로합니다. 상대기기에서오픈요구 (SYN) 를수신하면, Ethernet 모듈은오픈처리를실행합니다. 2 오픈처리가정상종료되면, 오픈완료신호 ( 어드레스 :5000H b0) 가 ON합니다. 데이터를교신할수있는상태가됩니다. 상대기기에서클로즈요구 (FIN) 를수신하면, Ethernet 모듈은클로즈처리를실행합니다. 3 클로즈처리가완료되면, 오픈완료신호가 OFF합니다. 데이터를교신할수없는상태가됩니다. 4 Ethernet 모듈의클로즈처리가완료된후에, 커넥션은다시오픈가능한상태가됩니다. *1 이니셜처리의정상완료후부터오픈수신가능상태까지수신한오픈요구 (SYN) 는에러가되고, Ethernet 모듈은커넥션의강제클로즈 (RST) 를송신합니다. 2-19
(2) 동작설정에서 OPEN 대기로하지않는다 를설정한경우시퀀스프로그램으로오픈처리및클로즈처리를실행합니다. 커넥션의오픈처리가정상완료된후에, 데이터의송신 / 수신이가능해집니다. 오픈처리및클로즈처리는전용명령을사용하여실행해주십시오. << 전용명령-OPEN 명령에의한커넥션No.1의오픈처리 >> 지시 GX Developer 의 오픈설정 에서설정한 D0~D9에컨트롤데이터를설정사용용도를사용할때 (*1) 컨트롤데이터[D0]: H0 M0 M1 ZP.OPEN "U0" K1 D0 M0 정상완료시의처리 OPEN 명령의컨트롤데이터에서사용용도를설정할때 (*1) [D0] : H8000 [D1]~[D9] 를사용용도에맞게설정 M1 이상완료시의처리 << 전용명령-CLOSE 명령에의한커넥션No.1의클로즈처리 >> 지시 ZP.CLOSE " U0" K1 D100 M100 M100 M101 M101 정상완료시의처리 이상완료시의처리 *1 사용용도 의설정항목은아래와같습니다. 상세내용은 Q대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 을참조하십시오. ㆍ고정버퍼의용도 ( 송신용, 수신용 ) ㆍ교신상대생존확인 ( 생존확인한다, 생존확인하지않는다 ) ㆍ페어링오픈 ( 페어링오픈한다, 페어링오픈하지않는다 ) ㆍ통신방식 (TCP/IP, UDP/IP) ㆍ고정버퍼교신의순서유무 ( 수순, 무수순 ) ㆍ오픈방법 (Active 또는 UDP/ IP, Unpassive, Fullpassive) 2-20
번호 1 2 3 4 5 내용파라미터교신후에 Ethernet 모듈의이니셜처리의정상완료를확인합니다. ( 이니셜정상완료신호 ( X19):ON) 전용명령-OPEN 명령을사용하여오픈처리를시작합니다. ( 오픈요구신호 ( 어드레스:5002H b0):on) 상대기기에서오픈요구 (SYN) 를수신하면, Ethernet 모듈은오픈처리를실행합니다. ㆍ오픈처리정상종료시오픈완료신호 ( 어드레스 :5000H b0) 가 ON합니다. 데이터를교신할수있는상태가됩니다. ㆍ오픈처리이상종료시 OPEN 명령의컨트롤데이터에저장되어있는 완료스테이터스 를확인하여복구처리를실행하십시오. 상대기기에서클로즈요구 (FIN) 를수신하면, Ethernet 모듈은클로즈처리를실행합니다. 클로즈처리가완료되면, 오픈완료신호가 OFF합니다. 데이터를교신할수없는상태가됩니다. 전용명령-CLOSE 명령을사용하여클로즈처리를시작합니다.( 오픈요구신호 :OFF) *1 이니셜처리의정상완료후부터오픈수신가능상태까지수신한오픈요구 (SYN) 는에러가되고 Ethernet 모듈은커넥션의강제클로즈 (RST) 를송신합니다. *2 상기그림은상대기기측으로부터의클로즈요구에대한 Ethernet 모듈측의클로즈처리타이밍을기재한것입니다. Ethernet 모듈측에서커넥션끊기를실행한경우에는시퀀스프로그램에서클로즈명령을이용하여클로즈처리를실행합니다. (FIN의송신처리, FIN+ACK의수신처리가실행됩니다.) 2-21
2.3.3 UDP/IP 오픈 / 클로즈처리 UDP/IP로의오픈처리 / 클로즈처리는 Ethernet 모듈의내부처리입니다. GX Developer에의한동작설정의이니셜타이밍설정 ( 상시 OPEN 대기, OPEN 대기로하지않는다 ) 의설정값에따라, Ethernet 모듈의처리가달라집니다. (1) 동작설정에서 상시 OPEN 대기 를설정한경우 Ethernet 모듈의시스템은항상데이터를송신 / 수신할수있는상태가됩니다. ( 오픈처리및클로즈처리의시퀀스프로그램은불필요합니다.) 비고 상시 OPEN 대기 (STOP 중교신가능 ) 를설정하여도, Ethernet 모듈측에서전용명령-OPEN 명령, CLOSE 명령을사용하여오픈처리, 클로즈처리를실행한경우에해당커넥션의이후의오픈처리, 클로즈처리는모든시퀀스프로그램에서실행할필요가있습니다. ( OPEN 대기로하지않는다 (STOP 중교신불가능 ) 를설정한경우의커넥션과동일한오픈처리, 클로즈처리가필요해집니다.) (2) 동작설정에서 OPEN 대기로하지않는다 를설정한경우 (STOP 중교신불가능 ), 시퀀스프로그램으로오픈처리및클로즈처리를실행합니다. 커넥션의오픈처리가정상완료된후에, 데이터의송신 / 수신이가능해집니다. 오픈처리및클로즈처리는전용명령을사용하여실행해주십시오. << 전용명령-OPEN 명령에의한커넥션No.1의오픈처리 >> 지시 D0~D9에컨트롤데이터를설정 GX Developer 의 오픈설정 에서설정한 사용용도 를사용할때 (*1) 컨트롤데이터 [D0]: H0 M0 M1 ZP.OPEN "U0" K1 D0 M0 정상완료시의처리 OPEN 명령의컨트롤데이터에서 사용용도 를설정할때 (*1) [D0] : H8000 [D1]~[D9] 를사용용도에맞게설정 M1 이상완료시의처리 << 전용명령 -CLOSE 명령에의한커넥션 No.1 의클로즈처리 >> 지시 ZP.CLOSE " U0" K1 D100 M100 M100 M101 M101 정상완료시의처리 이상완료시의처리 *1 사용용도 의설정항목은 2.3.1항을참조하십시오. 상세내용은 Q대응 Ethernet 인터페이스모듈사용자참조하십시오. 매뉴얼 ( 기본편 ) 을 2-22
오픈상태 전원투입 파라미터교신완료 오픈가능상태 ( 클로즈중 ) 1 클로즈상태 이니셜정상완료 X19 OPEN 명령 OPEN 명령완료디바이스 2 1 스캔 OPEN 명령완료디바이스 +1 CLOSE 명령 CLOSE 명령완료디바이스 5 1 스캔 CLOSE 명령완료디바이스 +1 오픈완료신호 ( 어드레스 : 5000H) 7 3 내부처리 4 6 내부처리 번호 1 2 내용 파라미터교신후에 Ethernet 모듈의이니셜처리의정상완료를확인합니다. ( 이니셜정상완료신호 (X19):ON) 전용명령-OPEN 명령을사용하여오픈처리를시작합니다. ( 오픈요구신호 ( 어드레스 :5002H b0):on) 3 Ethernet 모듈은오픈처리를실행합니다 ( 내부처리에한함 ). 4 ㆍ오픈처리정상종료시 오픈완료신호 ( 어드레스 :5000H b0) 가 ON합니다. 데이터를교신할수있는상태가됩니다. ㆍ오픈처리이상종료시 OPEN 명령의컨트롤데이터에저장되어있는 완료스테이터스 를확인하여복구처리를실행하십시오. 5 전용명령-CL OSE 명령을사용하여클로즈처리를시작합니다 ( 오픈요구신호 :OFF). 6 클로즈처리를실행합니다.( 내부처리에한함 ) 7 오픈완료신호가 OFF 합니다. 2-23
메 모 2-24
제 3 장시스템구성 3.1 적용시스템 Ethernet 모듈은아래의시스템에서사용할수있습니다. (1) 적용모듈과장착가능장수 Ethernet 모듈을장착할수있는 CPU 모듈및리모트 I/O국과장착가능장수를나타냅니다. 적용모듈 장착가능장수 비고 Q02CPU Q모드에만장착가능 Q02HCPU MELSECNET/H용모듈도포함 Q06HCPU 최대 4장하여 8장까지장착가능 Q12HCPU CPU 모듈 (*1) Q25HCPU Q00JCPU Q00CPU Q01CPU 최대 1장 (*1) 리모트 I/O국 QJ72LP25-25 MELSECNET/H 리모트 I/O국 QJ72LP25G 최대 4장 (*2)(*3) QJ72BR15 *1 사용하는 CPU 모듈의사용자매뉴얼 ( 기능해설 프로그램기초편 ) 을참조하십시오. *2 Q대응 MELSECNET/H 네트워크시스템레퍼런스매뉴얼 ( 리모트 I/O 네트워크편 ) 을참조하십시오. *3 기능버전B의 Ethernet 모듈을사용하여주십시오. (2) 장착가능베이스모듈 Ethernet 모듈은베이스모듈의임의의 I/O슬롯 (*1) 에장착할수있습니다. *1 CPU 모듈, 리모트I/O국의 I/O점수범위내로제한됩니다. (3) 적용소프트웨어패키지다음은 Ethernet 모듈대응소프트웨어패키지일람입니다. (a) PLC용소프트웨어 품명 형명 비고 GX Developer SWnD5C-GPPW MELSEC PLC 프로그래밍소프트웨어. 형명중의 n 은 4 이상. (b) 상대기기용통신지원툴 품명 형명 비고 MX Component SWnD5C-ACT 통신용 ActiveX 라이브러리. 형명중의 n은 0 이상. MX Links SWnD5F-CSKP 통신용 DLL 라이브러리. 형명중의 n은 3 이상. 3-1
3.2 네트워크구성시에필요한기기 네트워크의구성기기에대하여설명합니다. 네트워크의설치공사는안전에대해충분한대책이필요하므로, 전문가에 의뢰하여주십시오. 비고본항에서는 QJ71E71-100을사용하였을경우에대해기재하고있습니다. 그밖의모듈 (QJ71E71, QJ71E71-B2) 에대해서는 Q대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 을참조하십시오. (1) QJ71E71-100으로 Ethernet 시스템을구성하는경우 QJ71E71-100을네트워크에접속하는경우에는 10BASE-T 또는 100BASE-TX를사용할수있습니다. 10BASE-T와 100BASE-TX의구별은허브에연결되어있는 Ethernet 모듈이담당합니다. (a) 100BASE-TX에의한접속 트위스트페어케이블 허브 * 가스켓접속은최대 2 단까지 상대기기 Ethernet 모듈 IEEE802.3 100BASE-TX의규격을만족하는기기를사용하여주십시오. ( 허브이외의기기에대하여 ) 실드트위스트페어케이블 (STP 케이블 )( 카테고리5) * 스트레이트케이블사용가능 (Ethernet 모듈의 100BASE-TX에의한접속에서, 크로스케이블을사용하여상대기기와접속하는경우에는동작을보증할수없습니다. 단, Ethernet 모듈 (QJ71E71-100와같은사양 ) 과의데이터교신또는 GOT와의접속시에는크로스케이블에의한접속이가능합니다.) RJ45잭 100Mbps용허브 3-2
(b) 10BASE-T 에의한접속 트위스트페어케이블 허브 * 가스켓접속은최대 4 단까지 상대기기 Ethernet 모듈 IEEE802.3 10BASE-T의규격을만족하는기기를사용하여주십시오. ( 허브이외의기기에대하여 ) 비실드트위스트페어케이블 (UTP 케이블 )( 카테고리3(4, 5)) * 스트레이트케이블사용가능 (Ethernet 모듈의 10BASE-T에의한접속에서, 크로스케이블을사용하여상대기기와접속한경우에는동작을보증할수없습니다. 단, Ethernet 모듈 (QJ71E71과같은사양, QJ71E71과 QJ71E71-100) 과의데이터교신또는 GOT와의접속시에는크로스케이블에의한접속이가능합니다.) RJ45잭 10Mbps용허브 포인트 100BASE-TX 접속에의한고속통신 (100Mbps) 에서는설치환경에따라 PLC 이외의기기등으로부터의고주파노이즈의영향으로통신에러가발생하는경우가있습니다. 다음은네트워크시스템구축시의고주파노이즈의영향을방지하기위한 QJ71E71-100 측의대책입니다. (1) 배선접속 트위스트페어케이블의배선시에는주회로나동력선등과함께묶거나근접시키지않는다. 트위스트페어케이블을덕트에수납한다. (2) 통신방식 TCP/IP 통신으로써상대기기와데이터교신을한다. 필요에따라통신리트라이 ( 재시도 ) 횟수를늘린다. (3) 10Mbps 통신 QJ71E71-100 의접속허브를 10Mbps 제품으로변경하여, 데이터전송속도를 10Mbps 로하여교신한다. 3-3
메 모 3-4
제 4 장 Ethernet 모듈의사양 운전까지의설정과순서 4.1 성능사양 QE71E71-100 의성능사양에대해설명합니다. 기타 Ethernet 모듈의성능사양에대해서는 Q 대응 Ethernet 모듈사용자매뉴 얼 ( 기본편 ) 을참조하십시오. 항목 사양 100BASE-TX 10BASE-T 데이터전송속도 100Mbps 10Mbps 전송방법 베이스핸드 전송사양 노드간최장거리 허브와노드간의길이 100m 최대노드수 / 접속 캐스케이드접속최대2단 캐스케이드접속최대4단 최소노드간격 동시오픈가능수 16커넥션 ( 시퀀스프로그램에서사용할수있는커넥션 ) 송수신고정버퍼 1k워드 16 데이터랜덤액세스용버퍼 6k워드 1 저장용전자첨부파일 6k워드 1(*1) 메모리메일본문 960워드 1(*1) 입출력점유점수 32점 (I/O할당: 인텔리전트 ) DC5V 내부소비전류 0.50A 노이즈내량 내전압 Ethernet 모듈장착국의전원모듈사양에따름 절연저항 외형치수 98(H) 27.4(W) 90.5(D)[mm] 중량 0.11kg 데이터첨부파일 6k워드 1 사이즈본문 960워드 1 데이터전송방법 송신시 : 첨부파일, 본문중에하나를송신 ( 선택 ) 수신시 : 첨부파일을수신 Subject( 건명 ) Us-ASCII 형식또는 ISO-2022-JP(Base64) 첨부파일형식 MIME 형식 MIME 버전1.0 첨부파일의데이터 바이너리 /ASCII/CSV 중에선택가능 형식파일명 :XXXX.bin( 바이너리 ), XXXX.asc(ASCII), XXXX.csv(CSV)(CSV:Comma Separated Value) 전자메일불가능 (1파일만송신 / 수신가능 ) 전송사양첨부파일의분할 * 분할파일을수신한경우에는, 최초의파일만수신하고남아있는파일은삭제된다. 송수신 데이터 Subject : Base64/7bit 송신시 ( 인코드 ) (*1) 본 문 :7bit 첨부파일 :Base64 Subject :( 디코드하지않음 ) 본 문 :( 수신불가능 ) 수신시 ( 디코드 ) 첨부파일 :Base64/7bit/8bit/Quoted Printable * 상대기기에서 PLC측으로전자메일을송신할때, 첨부파일의엔코드방식 (Base64/7bit/ 8bit/Quoted Printable) 을지정한다. 암호화 없음 압축 없음 메일서버와의교신 SMTP( 송신서버 ) 포트번호=25, POP3( 수신서버 ) 포트번호=110 4-1
*1 PLC CPU에의한전자메일의송수신기능과랜덤액세스용버퍼에의한교신기능은병용할수없습니다. 한가지의기능만사용할수있습니다.(Ethernet 모듈의 PLC CPU 감시기능에의한전자메일의송신기능과랜덤액세스용버퍼에의한교신기능은병용할수있습니다.) 비고 다음은 10BASE-T/100BASE-TX 에의한접속의전송사양입니다. 허브 최대 100m(5m) 최대 100m 가스켓은최대 4 단 (2 단 ) 까지 Ethernet 모듈 * ( ) 는 100BASE-TX 에의해접속한경우를나타냅니다. 4-2
4.2 기능일람 Ethernet 모듈의기능일람을나타냅니다. (1) Ethernet 모듈의기본기능 Ethernet 모듈은 TCP/IP 및 UDP/IP 통신에의해아래표와같이교신할수 있습니다. MC 프로토콜에 의한교신 기능기능개요설명항 QnA 호환 3E 프레임 A 호환 1E 프레임 상대기기에서 PLC CPU 데이터의읽기 / 쓰기를실행. MELSEC 커뮤니케이션 프로토콜레퍼런스 고정버퍼에 수순 Ethernet 모듈의고정버퍼를사용하여, PLC CPU 와 6 장 의한교신 무수순 상대기기간에임의데이터의송신 / 수신을실행. 7 장 랜덤액세스용버퍼에의한교신전자메일에의한송신 / 수신데이터링크용명령에의한교신파일전송 (FTP서버기능 ) Web기능에의한교신 복수의상대기기에서 Ethernet 모듈의랜덤액세스용버퍼에대해데이터의읽기 / 쓰기를실행. 전자메일을사용하여데이터를송신 / 수신한다. PLC CPU에의한송신 / 수신 PLC CPU감시기능 ( 자동통지기능 ) 에의한송신데이터링크용명령을사용하여, Ethernet경유로타국 PLC CPU 데이터의읽기 / 쓰기를실행. 상대기기에서 FTP커맨드를사용하여파일단위의읽기 / 쓰기를실행. 시판하는 Web브라우저에서인터넷경유로 PLC CPU 데이터의읽기 / 쓰기를실행. Q대응 Ethernet 모듈사용자매뉴얼 ( 기본편 ) Q대응 Ethernet 모듈사용자매뉴얼 ( 응용편 ) Q대응 Ethernet 모듈사용자매뉴얼 (Web기능편) (2) Ethernet 모듈의부가기능 아래표에나타낸 Ethernet 모듈의부가기능을사용할수있습니다. 기능 기능개요 설명항 MELSECNET/H, MELSECNET/10 중계교신 Ethernet과 MELSECNET/H, MELSECNET/10이혼재하는네트워크시스템또는 Ethernet를복수로중계하는네트워크시스템에서, 이들네트워크를복수로경유하여데이터교신을실행한다. Q대응 Ethernet 모듈사용자매뉴얼 ( 응용편 ) 라우터및게이트웨이를중계로하여데이터교신을라우터중계교신 ( 라우터중계한다.( 라우터중계기능은 Ethernet 모듈이라우터로기능 ) 써동작하는기능에는없다.) 8장 상대기기의생존체크 커넥션을접속 ( 오픈처리 ) 한후에, 상대기기가정상적으로동작하고있는지를체크한다. 페어링오픈에의한교신 수신용커넥션과송신용커넥션을 1개의페어로하여오픈한다.( 고정버퍼교신용 ) 자동오픈 UDP포트로의교신 Ethernet 모듈의장착국을기동한후에교신이가능해진다.( 시퀀스프로그램에의한오픈, 클로즈처리가불필요 ) Q대응 Ethernet 모듈사용자매뉴얼 ( 기본편 ) 리모트패스워드체크 원격지의사용자가 QCPU에부정액세스하는것을방지한다. 일제동보 ( 동시전송 ) 통신 UDP/IP에의한데이터교신에서, Ethernet 모듈과같은 Ethernet상의모든상대기기에대해서데이터의송신 / 수신을실행 ( 일제동보 ). 4-3
(3) Ethernet 모듈의상태체크 Ethernet 모듈이정상적으로동작하고정상적으로교신할수있는지를 체크합니다. 기능기능개요설명항 Ethernet 모듈의송수신기능, 회선접속상태를체크자기진단테스트 4.7.1항한다. 하드웨어테스트 Ethernet 모듈의 RAM 및 ROM을테스트한다. 4.7.2항데이터교신에러발생시에, 전문 ( 스테이트먼트 ) 의서브헤더 ( 머리글 ), 상대기기의 IP 어드레스등을포 Q대응 Ethernet 모듈교신에러의저장함한에러정보 ( 에러이력정보 ) 를최대16조분버퍼사용자매뉴얼 ( 기본편 ) 메모리에저장한다. 4-4
4.3 운전까지의설정과순서 Ethernet 모듈의설정과조작의순서를나타냅니다. 운전까지의순서 Ethernet 모듈을베이스모듈에장착한다. Ethernet 모듈을 Ethernet 네트워크에접속한다. GX Developer 와 QCPU 를케이블접속한다. GX Developer 에의해 Ethernet 모듈용네트워크파라미터를설정한다. GX Developer 에의해자기진단테스트를실행한다. GX Developer 에의해운전모드를 온라인 으로설정한다. 상대기기로부터 PING 커맨드를송신하여, Ethernet 모듈의이니셜처리의완료를확정한다. 진단테스트를실행한다. 각각의교신용프로그램을작성한다. 운전 2.3 항참조 포인트 GX Developer 에서파라미터설정을추가 / 변경한경우에, 추가 / 변경한파라미터로써 Ethernet 모듈을운전하고자하는경우에는, PLC CPU 에파라미터를쓰고나서 PLC CPU 를리셋하십시오. 4-5
중요 (1) 모듈의버퍼메모리의 시스템영역 에데이터를쓰지마십시오. (2) 출력신호중에 사용금지 의신호를출력 (ON) 하지마십시오. (3) Ethernet 모듈을교환한경우에는, 상대기기도리셋하십시오 ( 상대기기가교신상대 MAC 어드레스를유지하고있는경우에 Ethernet 모듈을교환하면 MAC 어드레스가바뀌므로, 계속교신할수없게되는경우가있습니다.). 마찬가지로, 상대기기 (PC 등 ) 를교환한경우도 Ethernet 모듈을재기동해주십시오. 4-6
4.4 각부의명칭 Ethernet 모듈의각부의명칭을나타냅니다. QJ71E71-100 RUN INIT. OPEN SD ERR. COM.ERR 100M RD 1 명칭 내용 1 표시 LED (1) 표시 LED 의표시내용참조 Ethernet 모듈을 10BASE-T/100BASE-TX 에접속하기위한 10BASE-T/100BASE-TX 2 2 10BASE-T/100BASE-TX 접속커넥터 3 모듈장착용레버 커넥터. (10BASE-T와 100BASE-TX는허브 ( 상대기기 ) 에맞추어 Ethernet 모듈이구별합니다.) Ethernet 모듈을베이스모듈에바르게장착하기위한가이드. QJ71E71-100 3 (1) 표시LED의표시내용 (*1) LED명칭 표시내용 점등시 소등시 RUN 정상운전표시 정상 이상 INIT 이니셜처리상태표시 정상완료 미처리 OPEN 오픈처리상태표시 오픈정상완료커넥션오픈정상완료커넥션있음없음 SD 데이터송신표시 데이터송신중 데이터미송신 ERR. 설정이상표시 이상 정상설정 COM.ERR 교신이상표시 교신이상발생 정상교신중 100M 전송속도표시 100Mbps 10Mbps/ 미접속시 RD 데이터수신상태표시 데이터수신중 데이터미수신 * 1 이상표시의원인, 처리에대해서는부록4.1항을참조하십시오. 4-7
4.5 네트워크로의접속 Ethernet 모듈을 10BASE-T/100BASE-TX 의네트워크에접속하는방법에대해설명 합니다. < 조작순서 > ( 순서 1) 트위스트페어케이블을허브에접속합니다. 1 대 1 로접속하는경우는상대기기의접속커넥터에접속합니다. ( 순서 2) 아래와같이트위스트페어케이블을 Ethernet 모듈에접속합니다. QJ71E71-100 트위스트페어케이블 포인트 10BASE-T 와 100BASE-TX 는허브 ( 상대기기 ) 에연결된 Ethernet 모듈이판별합니다. 4-8
4.6 GX Developer 에서의설정 Ethernet 모듈을사용하기위해서는미리 GX Developer로써파라미터를설정할필요가있습니다. 본교재의각과제에있는파라미터의설정은각과제 (5~8장) 의파라미터설정을참조하십시오. 또한, 각화면의상세내용은 GX Developer 오퍼레이팅매뉴얼및 Q대응 Ethernet 모듈사용자매뉴얼을참조하십시오. 본교재에따라파라미터를설정하려면 GX Developer Version7 이후의제품이필요합니다 ( 본교재에서는 GX Developer Version7을사용하여설명하고있습니다.). (1) 멀티 CPU 설정멀티 CPU를구성하기위한 CPU 장수, 동작모드, 리프레시등을설정합니다. 멀티 CPU 시스템에서는반드시설정하십시오. 멀티 CPU 설정화면을나타내는데까지의조작에대해서는 5.2.1항을참조하십시오. 비고본교재에서사용하는실습기에는멀티 CPU를구성하기위해 2장의 CPU가장착되어있는바, PLC 파라미터의멀티 CPU 설정이필요합니다. 멀티 CPU 시스템에관한설정에있어본교재에서는, 하기이외의파라미터 ( 관리 CPU의설정등 ) 는디폴트값을그대로사용하고있습니다. 항목명 설정내용 CPU 장수 멀티 CPU 시스템사용시의 CPU 장수를설정합니다. 동작모드 PLC 정지에러시의동작 ( 정지 ) 을설정합니다. 그룹이외의입력 / 출력상태페치 ( 수신 ) 할지의여부를설정합니다. 그룹이외의입력설정 *1 그룹분을실행하지경우는, 모두 1호기가관리합니다. 그룹이외의모듈에대하여액세스한경우, OPERATION ERROR가발생합니다. 리프레시설정 *1 멀티 CPU 간의 CPU 공유메모리G를설정합니다. 멀티파라미터유용버튼 *1 유용할프로젝트를지정하고멀티파라미터를읽습니다. *1 본교재에서는사용하지않습니다. 4-9
(2) 네트워크파라미터 MNET/10H Ethernet 장수설정 Ethernet 모듈을네트워크모듈로써사용하기위한설정을실행합니다. Ethernet 모듈을사용하기위한 동작설정, 이니셜설정 등을설정할때의메인화면입니다. 항목명 설정내용 네트워크종류 Ethernet를설정합니다. 선두I/O No. Ethernet 모듈의선두입출력번호를설정합니다. 네트워크No. Ethernet 모듈의 MELSECNET/H, MELSECNET/10용네트워크번호를설정합니다. 그룹No. Ethernet 모듈의 MELSECNET/H, MELSECNET/10용그룹번호를설정합니다. 국번 Ethernet 모듈의 MELSECNET/H, MELSECNET/10용국번호를설정합니다. 모드 Ethernet 모듈의운전모드를설정합니다. 동작설정 교신데이터코드, Ethernet 모듈의 IP 어드레스등을설정합니다. 이니셜설정 *1 TCP/IP통신용공통타이머값및전자메일기능을사용하기위한 DNS서버에대해설정합니다. 상대기기와데이터교신하기위한커넥션의오픈 오픈설정 처리나고정버퍼교신용버퍼메모리의용도에관 하여설정합니다. 루틴정보 라우터를경유하여다른 Ethernet상의상대기기와데이터교신하는경우에설정합니다. Ethernet이나 MELSECNET/H, MELSECNET/10을경유하 MNET/10 루틴정보 *1 여다른국 PLC CPU와교신하기위한설정을실행합 니다. FTP 파라미터 *1 파일전송 (FTP) 기능을사용하는경우에사용합니다. 전자메일설정 *1 전자메일을송신 / 수신하는경우에설정합니다. 인터럽트설정 *1 인터럽트프로그램을실행하는경우에설정합니다. *1 본교재에서는사용하지않습니다. 4-10
(a) 동작설정 송신, 수신할데이터코드, 오픈처리할타이밍, 자국 Ethernet 모듈의 IP 어드레스를설정합니다. 항목명설정내용바이너리코드로교신할지, ASCII 코드로교신할지를설정합니다. 교신데이터코드 MC프로토콜교신에서자동오픈 UDP 포트를사용하고, 고정버퍼교신의무수순을사용하는경우에는, 설정에관계없이바이너리코드로교신합니다. 이니셜타이밍설정커넥션의오픈타이밍을설정합니다. IP 어드레스자국의 IP 어드레스를설정합니다. Ethernet 모듈이송신할프레임을설정합니다. 송신프레임설정본교재에서는 Ethernet(V2.0) 만사용합니다. MC프로토콜에의한교신에서, PLC CPU가 RUN 중에 RUN 중쓰기의허가상대기기로부터의데이터쓰기를허가 / 금지로할것인지를선택합니다. 포인트 동작설정은 Ethernet 모듈측의사용자용각커넥션공통설정항목입니다. 4-11
(b) 오픈설정 데이터교신할때의프로토콜이나오픈방식을설정합니다. 항목명 설정내용 프로토콜통신방식 (TCP, UDP) 을선택합니다. 프로토콜로써 TCP 를설정할때의오픈방식 (Active, Unpassive, Fullpassive) 을 오픈방식 선택합니다. 또한, MELSOFT 접속 (MELSOFT 제품과의접속용 ) 방법을선택합니다. 오픈에관한상세사항은 2.3 항을참조하십시오. 고정버퍼 고정버퍼를송신용으로써사용할지, 수신용으로써사용할지를선택합니다. 고정버퍼교신순서 수순, 무수순 을선택합니다. 페어링오픈 페어링오픈을실행할지의여부를선택합니다. 생존확인 상대기기의생존확인을실행할것인지를선택합니다. 자국포트번호 (*1) 데이터교신에서사용할자국의포트번호를 16진수로설정합니다. 교신상대 IP 어드레스 (*1) 데이터교신할상대기기의 IP 어드레스를설정합니다. 교신상대포트번호 (*1) 데이터교신할상대기기의포트번호를설정합니다. *1 프로토콜, 오픈방식 의설정값에따라다음과같이설정하십시오. 프로토콜 TCP(Active) TCP(Passive) UDP 오픈방식상대기기의 ARP 기능 MELSOFT 상대기기의 ARP 기능 Unpassive Fullpassive 접속설정항목있음없음있음없음 자국포트번호 교신상대 IP 어드레스 교신상대포트번호 포인트 : 설정필요 : 설정불필요 (1) 화면오른쪽의값 (1~16) 은 Ethernet 모듈측의커넥션번호에대응합니다. (2) 사용할모든커넥션에대하여오픈설정을실행하십시오. (3) ARP 기능이없는기기와교신할때에는, OPEN 명령 ( 전용명령 ) 을사용하여오픈처리하십시오.( 상대기기의 MAC 어드레스를 OPEN 명령의컨트롤데이터에설정하여오픈처리를실행합니다.( 부 5.2 항참조 )) 4-12
(c) 루틴정보 라우터경유로상대기기와교신하는경우에설정합니다. 과제 4 에서는루틴정보를사용합니다. 상세내용은제 8 장을참조하십시오. 항목명설정내용라우터중계기능을사용할것인지의여부를선택라우터중계기능합니다. 서브네트워크마스크패턴네트워크의서브네트워크마스크를설정합니다. 타 Ethernet상의상대기기와데이터교신할때의디폴트라우터IP 어드레스기본경로가되는라우터 ( 디폴트라우터라고부릅니다.) 의 IP 어드레스를설정합니다. 각설정항목의입력형식 (10진수/16진수) 을선택입력형식합니다. 디폴트라우터이외를경유하여다른 Ethernet상의서브네트워크어드레스상대기기와교신할때의상대국의네트워크어드레스또는서브네트워크어드레스를설정합니다. 디폴트라우터이외를경유하여다른 Ethernet상의라우터 IP 어드레스상대기기와교신할때에경유할라우터의 IP 어드레스를설정합니다. 교신상대 1 Ethernet1 Ethernet2 교신상대 2 Ethernet3 라우터 1 라우터 2 자국 Ethernet 디폴트라우터 Ethernet 모듈 ( 자국 ) Ethernet4 교신상대 3 교신상대 4 Ethernet 모듈은송신시, 직접상대국에송신하는것은아니고, 루틴정보에따라지정라우터에일단데이터를보냅니다. 라우터는보내온데이터를상대국으로다시보냅니다. 4-13
4.7 자기진단테스트 4.7.1 자기진단테스트 자기진단테스트는 Ethernet 모듈이자국소스에테스트전문을송신하고, 정확 하게수신할수있는지를확인하는테스트입니다. (1) 실습기의시스템구성 다음은실습기시스템의구성내용입니다. Q61P -A1 ( 전원 ) QCPU (1 호기 ) QX QCPU * 42 (2 호기 )(64점) X0 QY 42P (64점) Y40 Q64 Q64 QE71E AD DA 71-100 (16점) (16점) (32점) X80 Y80 X90 Y90 XA0 YA0 * 본텍스트에의한실습에서는 STOP 상태로둡니다. X3F Y7F X8F Y8F X9F Y9F XBF YBF GX Developer PC 허브 (2) 파라미터설정자기진단테스트를실행한경우, GX Developer에서파라미터를설정할필요가있습니다. 다음은파라미터를설정하기까지의조작순서입니다. 1 5.2.1 항을참조하여, 프로젝트를기동한후에, 멀티 CPU 설정을실행합니다. 2 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 3 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 다음쪽에서계속 4-14
이전쪽에서계속 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 4 아래의내용을설정합니다. 네트워크종류 :Ethernet 선두I/O번호 :00A0 (Ethernet 모듈의선두입출력신호 ) 네트워크No. :1~239( 임의 ) 그룹No. :0~32( 임의 ) 국번 :1~64( 임의 ) 모드 : 자기진단테스트 5 동작설정버튼을클릭하면, Ethernet 동작설정대화상자가표시됩니다. 9 종료버튼을클릭하면, Ethernet 동작설정대화상자가열립니다. 자기진단테스트의설정내용은임의로설정합니다. ( 본교재에서는디폴트값을사용합니다.) 10 종료버튼을클릭하면, 네트워크파라미터 MNET/10H Ethernet 장수설정화면이열립니다. 이를설정하면자기진단테스트의파라미터설정이완료됩니다. 설정이완료되면, 설정내용을 PLC CPU 에씁니다. 4-15
(3) 파라미터쓰기설정한파라미터를 PLC CPU에씁니다. 접속상대지정에대해서는 5.2.3항을참조하십시오. 파라미터쓰기조작에대해서는 5.2.4항을참조하십시오. (4) 자기진단테스트실행 자기진단테스트를실행하기전에, Ethernet 모듈과허브를트위스트페어 케이블로접속하십시오. MODE RUN ERR. USER BAT. BOOT ON SW 1 2 3 4 5 STOP RUN RESET L CLR RESET L CLR 1 PLC CPU 커버를열고, RESET/L.CLS 스위치를 RESET 측으로돌렸다가본래의위치로되돌려놓습니다. (STOP/RUN 스위치는 STOP 측으로합니다.) RESET L CLR USB RESET L CLR RS-232 QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD 2 Ethernet 모듈의 RUN 과 OPEN 표시 LED 가 5 초간점등한후에 LED 상태를확인합니다. RUN LED 만점등한경우 Ethernet 모듈은정상입니다. QJ71E71-100 RUN INIT OPEN SD 5 초후 ERR. COM.ERR 100M RD QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD RUN LED, ERR. LED 가점등한경우 Ethernet 모듈의하드웨어이상입니다. Ethernet 모듈의버퍼메모리 (E5H) 에러코드를확인하여대응하십시오. 에러코드의내용은 Q 대응 Ethernet 모듈사용자매뉴얼 ( 기본편 ) 을참조하십시오. 모듈정상 모듈이상 4-16
4.7.2 하드웨어테스트 하드웨어테스트는 Ethernet 모듈의 RAM 및 ROM에이상이있는지를확인하는테스트입니다. 하드웨어테스트의조작순서는자기진단테스트와같습니다. 단, 네트워크파라미터 MNET/10H Ethernet 장수설정화면의 모드 를 H/W 테스트 로설정하십시오. (1) 테스트결과모듈이상이발생한경우 Ethernet 모듈의 RAM 또는 ROM 이상입니다. Ethernet 모듈의버퍼메모리 (E5H) 에러코드를확인하여처리하십시오. 에러코드의내용은 Q대응 Ethernet 모듈사용자매뉴얼 ( 기본편 ) 을참조하십시오. 4-17
4.8 모듈의착탈 Ethernet 모듈의착탈순서에대해설명합니다. (1) Ethernet 모듈교환시의조작순서 ( 순서1) Ethernet 모듈장착국의전원을 OFF한다. ( 순서2) 네트워크케이블및 Ethernet 모듈을빼낸다. ( 순서3) 4.3 운전까지의설정과순서 에따라서 Ethernet 모듈을기동한다. ( 순서 4) 상대기기를리셋한다. 포인트 Ethernet 모듈을교환하는경우에는상대기기도리셋하십시오. 상대기기가교신상대 Ethernet 어드레스를유지하고있는경우, Ethernet 모듈의교환으로 Ethernet 어드레스가바뀜에따라계속교신할수없는경우가있습니다. 마찬가지로, 상대기기 (PC 등 ) 를교환한경우에도 Ethernet 모듈을다시기동하십시오. (2) QCPU 교환시의조작순서 ( 순서1) GX Developer를사용하여 PLC CPU에서 Ethernet 모듈용파라미터를읽고저장한다. (*1) ( 순서2) QCPU를교환한다 (QCPU 사용자매뉴얼참조 ). ( 순서3) GX Developer에저장된 Ethernet 모듈용파라미터를 QCPU에쓴다. ( 순서4) 상대기기를리셋한다. *1 CPU 교환시에 Ethernet 모듈용파라미터를작성ㆍ변경한경우에는, 파라미터를기록ㆍ저장해놓을것을추천합니다. 4-18
```` 제 5 장과제 1(PC-PLC CPU 간 MC 프로토콜교신 ) 5.1 실습시스템구성 본과제에서는 MC 프로토콜에의한교신기능에대해실습합니다. 상대기기인 PC 는 MX Component 를사용하여 PLC CPU 의정보를읽습니다. 다음은과제1에서실습할시스템구성입니다. Ethernet상에는 10대의기기가접속되어있으나, 과제1에서는이들중실습기No. 가동일한기기간에서만교신합니다. (1) 모듈구성 < 실습기 No.1> <PC1> Ethernet 모듈 ( QJ71E71-100 ) IP 어드레스 :192.168.1.101 네트워크 No. :1 그룹 No. :0 국번 :11 Q 61P - A1 Q02H CPU <PLC A1> Q X 42 QY Q64 Q64 42P AD DA IP 어드레스 :192.168.1.1 네트워크No. :1 그룹No. :0 국번 : 1 < 실습기 No.2> <PC2> ( QJ71E71-100 ) Ethernet 모듈 192.168.1.102 IP 어드레스 :1 네트워크No. : 그룹No. : 0 12 국번 Q 61P - A1 Q02H CPU <PLC A2> Q X 42 QY Q64 Q64 42P AD DA IP 어드레스 :192.168.1.2 네트워크No. :1 그룹No. :0 국번 : 2 < 실습기 No.3> <PC3> Ethernet 모듈 ( QJ71E71-100 ) IP 어드레스 :192.168.1.103 네트워크 No. :1 그룹 No. :0 국번 :13 Q 61P - A1 Q02H CPU <PLC A3> Q X 42 QY Q64 Q64 42P AD DA IP 어드레스 :192.168.1.3 네트워크No. :1 그룹No. :0 국번 : 3 < 실습기 No.4> <PC4> Ethernet 모듈 ( QJ71E71-100 ) IP 어드레스 :192.168.1.104 네트워크 No. :1 그룹 No. :0 국번 :14 Q 61P - A1 Q02H CPU <PLC A4> Q X 42 QY Q64 Q64 42P AD DA IP 어드레스네트워크No. 그룹No. 국번 :192.168.1.4 :1 :0 : 4 < 실습기 No.5> <PC5> Ethernet 모듈 ( QJ71E71-100 ) IP 어드레스 :192.168.1.105 네트워크 No. :1 그룹 No. :0 국번 :15 Q 61P - A1 Q02H CPU <PLC A5> Q X 42 QY Q64 Q64 42P AD DA IP 어드레스 :192.168.1.5 네트워크No. :1 그룹No. :0 국번 : 5 Ethernet 5-1
(2) I/O 할당 5-2
(3) 실습내용 MX Component 의프로그램을사용하여디바이스의모니터, 쓰기를실행합니다. < 디바이스읽기 (5.4 항 )> < 디바이스쓰기 (5.5 항 )> ( 커넥션 1 을사용 ) 읽기 쓰기 PLC CPU 5-3
5.2 파라미터설정및 PC TCP/IP 설정 PC와교신하기전에 PLC CPU 측의 Ethernet 모듈의파라미터를 GX Developer로써설정합니다. 또한, MX Component가인스톨되어있는 PC의 TCP/IP를설정합니다. 설정내용은 5.1항의내용과동일합니다. 5.2.1 GX Developer 의기동과멀티 CPU 설정 PLC CPU 측의멀티 CPU 설정, Ethernet 파라미터설정을실행하기위해 GX Developer 를기동합니다. 1 [ 시작 ] [ 프로그램 ] [MELSOFT 어플리케이션 ] [GX Developer] 를클릭합니다. 2 GX Developer 가기동되면, [ 프로젝트 ] [ 프로젝트새로만들기 ] 메뉴를클릭합니다. 3 본실습에서는 Q02HCPU 를사용하므로, PLC 시리즈 를 QCPU(Q 모드 ), PLC 유형 을 Q02(H) 로설정하고, 확인버튼을클릭합니다. 다음쪽에계속 5-4
이전쪽에서계속 4 프로젝트데이터일람에서 PLC 파라미터 를더블클릭합니다. 5 Qn(H) 파라미터설정대화상자가표시되면, 멀티 CPU 설정버튼을클릭합니다. 6 멀티 CPU 설정대화상자가표시됩니다. 7 CPU 장수 를 2 장 으로설정하고, 종료버튼을클릭합니다. 8 Qn(H) 파라미터설정대화상자의종료버튼을클릭합니다. 5-5
5.2.2 네트워크파라미터 MNET/10H Ethernet 장수설정 Ethernet 에접속하기위해 Ethernet 파라미터를설정합니다. 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 4 아래의내용을설정합니다. 네트워크종류 :Ethernet 선두I/O번호 :00A0 네트워크No. :1 그룹No. :0 국번 : 각실습기의국번을설정 (11~15) 모드 : 온라인 5 동작설정버튼을클릭하면, Ethernet 동작설정대화상자가나타납니다. 다음쪽에계속 5-6
이전쪽에서계속 6 아래의내용을설정한후에, 종료버튼을클릭하여, Ethernet 동작설정대화상자를엽니다. (192.168.1.101~192.168.1.105를설정합니다.) 교신데이터코드설정 : 바이너리코드교신이니셜타이밍설정 :OPEN을기다리지않음 IP 어드레스설정 : 각실습기의 IP 어드레스를설정 (192.168.1.101~ 192.168.1.105) 송신프레임설정 :Ethernet(V2.0) RUN 중쓰기설정 : 허가 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을나타냅니다. 8 아래의내용을설정합니다. 프로토콜 :TCP 오픈방식 :MELSOFT 연결 MELSOFT 연결을지정하면, 다른 MELSOFT 제품에서동시에 PLC CPU 로액세스할수있습니다. 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을엽니다. 10 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을엽니다. 다음쪽에계속 5-7
이전쪽에서계속 11 버튼을클릭합니다. ( 프로젝트저장 ) 12 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX1-A 는실습기 No. 예. 실습기 No.1 의경우 EX1-A1 5-8
5.2.3 연결대상지정 PLC CPU 에파라미터를쓰기위해, 연결상대를지정합니다. 1 [ 온라인 ] [ 연결대상지정 ] 메뉴를클릭합니다. 2 연결대상지정화면에서다음설정을확인합니다. PC 측 I/F : 시리얼 USB PLC 측 I/F : CPU 모듈 타국지정 : 지정내용없음 통신테스트 를클릭하면, 접속상태나전송사양의설정에문제가있는지를확인할수있습니다. 필요에따라테스트하십시오. 3 확인버튼을클릭합니다. 이것으로연결상대지정이완료됩니다. 5-9
5.2.4 파라미터쓰기 설정한 Ethernet 파라미터를 PLC CPU 에씁니다. 1 을클릭합니다. (PLC 쓰기 ) 2 PLC 쓰기화면에서파라미터+프로그램버튼을클릭하면, 프로그램의 MAIN 과파라미터의 PLC/ 네트워크 가체크됩니다. 3 실행버튼을클릭하여, 파라미터를씁니다. 4 쓰기가완료되어왼쪽화면이표시되면, 확인버튼을클릭합니다. 5 닫기버튼을클릭하여, PLC 쓰기대화상자를닫습니다. 쓰여진파라미터가유효해지도록 PLC CPU 를리셋합니다. 이로써파라미터의쓰기가완료됩니다. 5-10
5.2.5 PC 의 TCP/IP 설정 PC 의 TCP/IP 를설정합니다. 본교재에서는 Microsoft R Windows R 98 Operating System 환경에서동작하는 PC 를사용하여설명합니다. 1 [ 시작 ] [ 설정 ] [ 제어판 ] 을클릭합니다. 2 제어판이표시되면, 네트워크연결 을선택합니다. 3 네트워크 대화상자가표시되면, 인터넷프로토콜 (TCP/IP) 을선택하고속성버튼을클릭합니다. 다음쪽에계속 5-11
이전쪽에서계속 4 IP 어드레스 탭을선택하고, 아래의내용을설 정합니다. IP 주소 : 각 PC 의 IP 어드레스 (192.168.1.1~192.168.1.5) 서브넷마스크 :255.255.255.0( 클래스 C) 5 기본게이트웨이 를클릭하여, 라우터의 PC 측 IP 어드레스를설정합니다. 기본게이트웨이 : 라우터의 IP 어드레스 (192.168.1.254) 6 확인버튼을클릭하여, 화면을닫습니다. 7 닫기버튼을클릭하여 네트워크 대화상자를닫습니다. 5-12
5.3 MX Component 의조작 MX Component의조작에대해설명합니다. 본교재에서는 Visual Basic R 으로어플리케이션을작성하여, Ethernet 경유로 PLC CPU에액세스합니다. 5.3.1 논리국번설정 논리국번이라는것은통신회선을오픈시키기위하여, 필요한접속상대정보를통신설정유틸리티를사용하여하나의데이터로합치고, 이데이터에논리적인번호를부여한것을말합니다. 먼저, PLC CPU에액세스하기위하여논리국번을설정합니다. ( 예 ) Ethernet 통신시 1 [ 시작 ] [ 프로그램 ] [MELSOFT Application] [MX Component] [Communication Setup Utility] 를클릭합니다. 2 통신설정유틸리티가기동합니다. 다음쪽에계속 5-13
이전쪽에서계속 3 Wizard 버튼을클릭합니다. 4 왼쪽화면이표시되면, Logical station number 를 1 로설정하고, anext 버튼을클릭합니다. 5 PC측을아래와같이설정하고설정이끝나면, anext 버튼을클릭합니다. PC측 I/F :Ethernet 보드접속상대모듈타입 :QJ71E71 프로토콜 :TCP 네트워크No. :1 국번 : 각실습기의국번을설정 (1~5) 타임아웃 :10000ms ( 응답수신감시용 ) 6 PLC측을아래와같이설정하고설정이끝나면, anext 버튼을클릭합니다. PLC측 I/F :Ethernet Module 모듈타입 :QJ71E71 호스트명 : 각실습기의 IP 어드레스를설정 (192.168.1.101~192.168.1.105) 네트워크No. :(1) 국번 : 각실습기의국번을설정 (11~15) 다음쪽에계속 5-14
이전쪽에서계속 7 통신설정을실행하고, 아래와같이설정되면, anext 버튼을클릭합니다. 국번타입 :Host station CPU 타입 :Q02(H) 멀티 CPU 호기 :None 8 코멘트는본교재에서는설정하지않으므로, afinish 버튼을클릭합니다. ( 논리국번에코멘트를부가하는경우에는, 여기서설정합니다.) 9 설정이완료되어통신설정화면이표시되면, 설정내용을확인합니다. 5-15
5.3.2 통신진단 통신진단을실행하여논리국번이바르게설정되어있는지를확인합니다. 1 Connection test 탭을클릭합니다. 2 통신테스트화면이표시됩니다. 통신테스트를수행할논리국번 ( 본교재에서는 1 을지정 ) 을설정합니다. atest 버튼을클릭하여, 통신테스트를실시합니다. 3 PLC CPU 와정상적으로교신되면, 통신테스트가완료되었습니다. 라고표시합니다. 또한, 테스트결과를 0x00000000 으로나타냅니다. 이상이발생한경우에는표시된에러코드를확인하십시오. 에러코드는부 2.3 항을참조하십시오. 4 Exit 버튼을클릭합니다. 5-16
5.4 Visual Basic 프로그램 ( 디바이스읽기 ) PLC CPU 의비트디바이스 X0~X7(8 점분 ) 의 ON/OFF 상태및워드디바이스 D0~D4 (5 워드분 ) 의내용을읽습니다. 5.4.1 Visual Basic 프로그램 프로젝트파일명 E71-1.VBP Option Explicit Const MonitorTime As Integer = 100 ' 변수선언 ' 디바이스모니터간격정의 Private Sub cmdopen_click() Dim lret As Long lret = ActEasyIF1.Open ' 반환값 ' 통신회선오픈 If lret = 0 Then txtstatus.text = _ " 통신회선을정상적으로오픈하였습니다." ' 정상시의메시지 cmdopen.enabled = False ' 오픈버튼이무효하게된다 cmdclose.enabled = True ' 클로즈버튼이유효하게된다 cmdmonitor.enabled = True ' 모니터시작버튼이유효하게된다 cmdend.enabled = False ' 종료버튼이무효하게된다 Else txtstatus.text = _ " 에러발생 ( 에러코드 :" + Hex$(lRet) + ")" ' 이상시의메시지 End If End Sub Private Sub cmdclose_click() Dim lret As Long lret = ActEasyIF1.Close ' 반환값 ' 통신회선클로즈 If lret = 0 Then txtstatus.text = _ " 통신회선을정상적으로클로즈하였습니다." ' 정상시의메시지 cmdopen.enabled = True ' 오픈버튼이유효하게된다 cmdclose.enabled = False ' 클로즈버튼이무효하게된다 cmdmonitor.enabled = False ' 모니터시작버튼이무효하게된다 cmdend.enabled = True ' 종료버튼이유효하게된다 Else txtstatus.text = _ " 에러발생 ( 에러코드 :" + Hex$(lRet) + ")" ' 이상시의메시지 End If End Sub 5-17
Private Sub cmdmonitor_click() If tmrtime.interval = 0 Then tmrtime.interval = MonitorTime txtstatus.text = " 모니터중 " cmdmonitor.caption = " 모니터정지 " cmdclose.enabled = False Else tmrtime.interval = 0 txtstatus.text = " 모니터를정지하였습니다." cmdmonitor.caption = " 모니터시작 " cmdclose.enabled = True End If ' 모니터중인지를확인 ' 모니터실행 ' 모니터중인메시지표시 ' 버튼표시변경 ' 클로즈버튼이무효하게된다 ' 모니터종료 ' 모니터정지메시지표시 ' 버튼표시변경 ' 클로즈버튼이유효하게된다 End Sub Private Sub cmdend_click() End ' 프로그램종료 End Sub Private Sub tmrtime_timer() Dim i As Integer ' 루프용변수1 Dim j As Integer ' 루프용변수2 Dim k As Integer ' 루프용변수3 Dim szdevicelist As String ' 모니터디바이스저장용 Dim Devbox(12) As String ' 모니터디바이스일시저장용 Dim ldata(12) As Long ' 모니터디바이스값저장 Dim lret As Long ' 반환값 Const lsize As Long = 13 ' 모니터할디바이스개수 ' 모니터할디바이스설정 Devbox(0) = "X0" Devbox(1) = "X1" Devbox(2) = "X2" Devbox(3) = "X3" Devbox(4) = "X4" Devbox(5) = "X5" Devbox(6) = "X6" Devbox(7) = "X7" Devbox(8) = "D0" Devbox(9) = "D1" Devbox(10) = "D2" Devbox(11) = "D3" Devbox(12) = "D4" For i = 0 To lsize - 1 szdevicelist = szdevicelist + Devbox(i) If i <> lsize Then szdevicelist = szdevicelist + vblf End If Next ' 모니터할디바이스설정 5-18
' 랜덤읽기 lret = ActEasyIF1.ReadDeviceRandom(szDeviceList, lsize, ldata(0)) If lret <> 0 Then txtstatus.text = _ " 에러발생 ( 에러코드 :" + Hex$(lRet) + ")" ' 에러시에에러코드표시 End If ' 비트디바이스 (X0~X7) 의표시 For j = 0 To 7 If ldata(j) = 1 Then lblon_off(j).caption = " " Else lblon_off(j).caption = " " End If Next 'ON 시에 를표시 'OFF 시에 를표시 ' 워드디바이스 (D0~D4) 표시 For k = 0 To 4 lbl_dvalue(k).caption = ldata(k + 8) Next End Sub 5-19
(1) 플로차트 (a) cmdopen_click()( 오픈버튼클릭에의한동작 ) START 통신회선오픈 (OPEN()) 오픈은정상? No Yes 정상표시 통신회선을정상적으로오픈하였습니다. 이상표시 에러발생 ( 에러코드 : ) 오픈버튼을무효로설정 클로즈버튼을유효로설정 모니터시작버튼을유효로설정 종료버튼을무효로설정 END 5-20
(b) cmdclose_click()( 클로즈버튼클릭에의한동작 ) START 통신회선클로즈 (CLOSE()) 클로즈는정상? No Yes 정상표시 통신회선을정상적으로클로즈하였습니다. 이상표시 에러발생 ( 에러코드 : ) 오픈버튼을유효로설정 클로즈버튼을무효로설정 모니터시작버튼을무효로설정 종료버튼을유효로설정 END 5-21
(c) cmdmonitor_click()( 모니터시작버튼클릭에의한동작 ) START 마스터동작중? No Yes 100ms 간격으로모니터시작 모니터를정지 스테이터스표시 모니터중 스테이터스표시 모니터를정지하였습니다. 모니터시작 버튼을 모니터정지 버튼을 모니터정지 버튼으로변경 모니터시작 버튼으로변경 클로즈버튼을무효로설정 클로즈버튼을유효로설정 END (d) cmdend_click()(end 버튼클릭에의한동작 ) START 프로그램을종료 END 5-22
(e) tmrtime_timer()( 모니터중의동작 ) START 모니터할디바이스를 Devbox 에저장 SzDeviceList 에디바이스리스트를저장 랜덤읽기를실행 ( ReadDeviceRandom ()) 에러발생? No Yes 이상표시 에러발생 ( 에러코드 : ) 비트디바이스값표시 ON 시 : OFF 시 : 워드디바이스값표시 END 5-23
5.4.2 실습기의조작 프로그램을실행하고, PLC CPU 의디바이스를모니터합니다. (1) 프로그램의화면 다음은프로그램의화면상의오브젝트명입니다. lblon_off(0) lblon_off(7) lbl_ Dvalue(0) lbl_ Dvalue ( 4 ) cmdmonitor cmdend txtstatus cmdopen cmdclose (2) X0~X7 의디바이스상태확인 1 Visual Basic R 을기동하고, 5.4.1항에기재한프로젝트파일 (E71-1.VBP) 을읽습니다. 2 ActEasyIF1 속성의 ActLogicalStation Number 가 1 로되어있는지를확인하십시오. 이설정번호는 5.3.1 항에서설정한논리국번에대응합니다. 논리국번을사용함으로써, 논리국번으로설정되어있는경로로통신할수있게됩니다. 3 니다. 버튼 ( 시작 ) 을클릭하여, 프로그램을실행합 다음쪽에계속 5-24
이전쪽에서계속 4 OPEN 버튼을클릭하여, 통신회선을오픈합니다. 정상적으로오픈되면, 통신상태에 통신회선을정상적으로 OPEN 합니다. 라고표시됩니다. 이상이발생하면, 에러코드가표시됩니다. 에러코드의상세내용은부 2.3 항을참조하십시오. 5 정상적으로오픈되면, 모니터개시버튼이활성화되는데, 클릭하여모니터를시작합니다. X7 X6 X5 X4 X3 X2 X1 X0 ON OFF 6 I/O 패널의 X0~X7 의스위치를 ON/OFF 함에따라프로그램상의비트디바이스의상태가변화하는지를확인하십시오. 계속하여워드디바이스 (D0~D4) 의내용을확인합니다. 5-25
(3) D0~D4의디바이스상태확인 MX Component로써변경한값을프로그램에서확인합니다.(*1) *1 실습기의 X7~XB와표시기를사용하여, 아래내용을처리할수도있습니다. X7:D0~D4에 0 을저장 X8, X9 :D0~D4에임의의값을저장 XA:D0~D2의값을표시 XB :D3~D4의값을표시 1 [ 시작 ] [ 프로그램 ] [MELSOFT Application] [MX Component] [PLC Monitor Utility] 를클릭합니다. 2 접속상대설정화면이표시되면, Logical station number 를 1 로설정허고, aok 버튼을클릭합니다. 3 PLC 모니터유틸리티가기동되면, Device 를 D0 으로설정하고, Start monitor 버튼을클릭합니다. 4 디바이스가표시되면, 변경하고자하는값의디바이스란을더블클릭합니다. D0~D4 의값을변경 (*1) 하면, 프로그램상의 D0~ D4 의표시가변경됩니다. *1 화면에지정되어있는형식대로값을입력하십시오. 다음쪽에계속 5-26
이전쪽에서계속 5 디바이스쓰기화면이표시되면, Set Value 에임의의값을입력하고, astart 버튼을클릭합니다. 여기에서는 D0 을 100 으로설정합니다. 6 디바이스쓰기화면의 a 닫기버튼을클릭하여, 화면을엽니다. 7 프로그램을활성 (*1) 화하여, 워드디바이스의값이변화하는지를확인하십시오. 4~5 의조작을반복하여 D0~D4 의값을변경하면, 프로그램상의 D0~D4 의값도변화합니다. 다음쪽에계속 5-27
이전쪽에서계속 8 모니터를종료할경우에는, 모니터정지버튼을클릭합니다. 9 CLOSE 버튼을클릭하여, 통신회선을클로즈합니다. 정상적으로클로즈되면, 통신상태에 통신회선을정상적으로클로즈하였습니다. 라고표시됩니다. 이상이발생하면에러코드가표시됩니다. 에러코드의상세내용은부 2.3 항을참조하십시오. 10 종료버튼을클릭하여프로그램을종료합니다. 다음프로젝트파일의읽기가가능해집니다. 5-28
5.5 Visual Basic 프로그램 ( 디바이스쓰기 ) PLC CPU 의비트디바이스 Y70~Y77(8 점분 ) 및워드디바이스 D0~D4(5 워드분 ) 의 내용을변경합니다. 5.5.1 Visual Basic 프로그램 프로젝트파일명 E71-2.VBP Option Explicit Const MonitorTime As Integer = 100 ' 변수선언 ' 디바이스모니터간격설정 Private Sub cmdopen_click() Dim lret As Long lret = ActEasyIF1.Open ' 반환값 ' 통신회선오픈 If lret = 0 Then txtstatus.text = _ " 통신회선을정상적으로오픈하였습니다." ' 정상시의메시지 cmdopen.enabled = False ' 오픈버튼이무효하게된다 cmdclose.enabled = True ' 클로즈버튼이유효하게된다 cmdmonitor.enabled = True ' 모니터시작버튼이유효하게된다 cmdend.enabled = False ' 종료버튼이무효하게된다 Else txtstatus.text = _ " 에러발생 ( 에러코드 :" + Hex$(lRet) + ")" ' 이상시의메시지 End If End Sub Private Sub cmdclose_click() Dim lret As Long lret = ActEasyIF1.Close ' 반환 ( 복귀 ) 값 ' 통신회선클로즈 If lret = 0 Then txtstatus.text = _ " 통신회선을정상적으로클로즈하였습니다." ' 정상시의메시지 cmdopen.enabled = True ' 오픈버튼이유효하게된다 cmdclose.enabled = False ' 클로즈버튼이무효하게된다 cmdmonitor.enabled = False ' 모니터시작버튼이무효하게된다 cmdend.enabled = True ' 종료버튼이유효하게된다 Else txtstatus.text = _ " 에러발생 ( 에러코드 :" + Hex$(lRet) + ")" ' 이상시의메시지 End If End Sub 5-29
Private Sub cmdmonitor_click() Dim i As Integer ' 루프용변수1 Dim j As Integer ' 루프용변수2 Dim k As Integer ' 루프용변수3 Dim szdevicelist As String ' 쓰기디바이스저장용 Dim Devbox(12) As String ' 쓰기디바이스일시저장용 Dim ldata(12) As Long ' 쓰기디바이스값저장 Dim lret As Long ' 반환값 Const lsize As Long = 13 ' 쓰기디바이스개수 ' 쓰기디바이스설정 Devbox(0) = "Y70" Devbox(1) = "Y71" Devbox(2) = "Y72" Devbox(3) = "Y73" Devbox(4) = "Y74" Devbox(5) = "Y75" Devbox(6) = "Y76" Devbox(7) = "Y77" Devbox(8) = "D0" Devbox(9) = "D1" Devbox(10) = "D2" Devbox(11) = "D3" Devbox(12) = "D4" For i = 0 To lsize - 1 szdevicelist = szdevicelist + Devbox(i) If i <> lsize Then szdevicelist = szdevicelist + vblf End If Next ' 비트디바이스 (Y70~Y77) 의값을설정 For j = 0 To 7 If lblon_off(j).caption = " " Then ldata(j) = 1 Else ldata(j) = 0 End If Next ' 쓰기디바이스설정 ' 이면 "1" 을저장 ' 이면 "0" 을저장 ' 워드디바이스 (D0~D4) 의값을설정 For k = 0 To 4 ldata(k + 8) = Val(txtDvalue(k).Text) Next 5-30
' 랜덤쓰기 lret = ActEasyIF1.WriteDeviceRandom(szDeviceList, lsize, ldata(0)) If lret = 0 Then txtstatus.text = " 정상적으로쓰여졌습니다." ' 정상시의메시지 Else txtstatus.text = _ " 에러발생 ( 에러코드 :" + Hex$(lRet) + ")" ' 에러시에에러코드표시 End If End Sub Private Sub cmdend_click() End ' 프로그램종료 End Sub Private Sub lblon_off_dblclick(index As Integer) ' 더블클릭하면, 이반전됨 If lblon_off(index).caption = " " Then lblon_off(index).caption = " " Else lblon_off(index).caption = " " End If End Sub 5-31
(1) 플로차트 (a) cmdopen_click()( 오픈버튼클릭에의한동작 ) 5.4.1항 (1)(a) 와동일하므로참조하십시오. (b) cmdclose_click()( 클로즈버튼클릭에의한동작 ) 5.4.1항 (1)(b) 와동일하므로참조하십시오. (c) cmdmonitor_click()( 모니터시작버튼클릭에의한동작 ) START 쓰기디바이스를 Devbox 에저장 SzDeviceList 에디바이스리스트를저장 비트디바이스 (Y70~77) 값을 IData 에설정 워드디바이스 (D0~D04) 값을 IData 에설정 랜덤쓰기를실행 ( WriteDeviceRandom ()) 에러발생? No Yes 이상표시 에러발생 ( 에러코드 : ) 정상표시 정상적으로쓰기하였습니다. END (d) cmdend_click()(end 버튼클릭에의한동작 ) 5.4.1 항 (1)(d) 과동일하므로참조하십시오. 5-32
(e) lblon_off_dblclick()( 라벨더블클릭시의동작 ) START 라벨의표시는? No Yes 라벨표시 라벨표시 로변경 로변경 END 5-33
5.5.2 실습기의조작 프로그램을실행하고, PLC CPU 의디바이스값을변경합니다. (1) 프로그램의화면 다음은프로그램의화면상의오브젝트명입니다. lblon_off(0) lblon_off(7) txtdvalue (0) txtdvalue( 4 ) cmd Monitor cmd End txt Status cmdopen cmdclose (2) 조작순서 1 Visual Basic R 을기동하고, 5.5.1항에설명한프로젝트파일 (E71-2.VBP) 을읽습니다. 2 ActEasyIF1 의속성 ActLogicalStation Number 가 1 로되어있는지를확인하십시오. 본설정에서는 5.3.1 항에서설정한논리국번을설정합니다. 논리국번을설정함으로써, 논리국번으로설정된통신경로로통신할수있습니다. 3 니다. 버튼 ( 시작 ) 을클릭하여, 프로그램을실행합 다음쪽에계속 5-34
이전쪽에서계속 4 OPEN 버튼을클릭하여, 통신회선을오픈합니다. 정상적으로오픈되면, 통신상태에 통신회선을정상적으로 OPEN 합니다. 라고표시됩니다. 이상이발생하면, 에러코드가표시됩니다. 에러코드의상세내용은부 2.3 항을참조하십시오. 5 값을변경할비트디바이스의 을더블클릭하여, ON/OFF 를설정합니다. 은 OFF, 은 ON 을나타냅니다. 6 값을변경할워드디바이스의텍스트상자에값을입력합니다. 입력할값은 10 진수로취급됩니다. 7 쓰기버튼을클릭하여씁니다. Y77 Y76 Y75 Y74 Y73 Y72 Y71 Y70 다음쪽에계속 8 정상적으로쓰기가완료되면통신상태에 정상적으로쓰여졌습니다. 라고표시됩니다. I/O 패널의 Y70~Y77 LED 를확인합니다. 프로그램상에서 ON 된비트디바이스의 LED 가점등되어있는지를확인합니다. 5-35
이전쪽에서계속 9 쓰여진값을 MX Component 로써확인합니다.(*1) 5.4.2 항 (3) 을참조하여, PLC 모니터유틸리티를기동하고, 논리국번을 1 로설정합니다. [ 시작 ] [ 프로그램 ] [MELSOFT Application] [MX Component] [PLC Monitor Utility]. 접속상대설정화면에서 Logical station number 를 1 로설정하고, aok 버튼을클릭합니다. 10 디바이스 를 D0 으로설정하고, 모니터시작버튼을클릭합니다. 11 쓰여진디바이스값이표시되는지를확인합니다. 확인후, 종료버튼을클릭합니다. 12 CLOSE 버튼을클릭하여, 통신회선을클로즈합니다. 정상적으로클로즈되면, 통신상태에 통신회선을정상적으로클로즈하였습니다. 라고표시됩니다. 이상이발생하면에러코드가표시됩니다. 에러코드의상세내용은부 2.3 항을참조하십시오. 다음쪽에계속 5-36
이전쪽에서계속 13 종료버튼을클릭하여프로그램을종료합니다. 다음프로젝트파일의읽기가가능해집니다. *1 실습기의표시기에서 X7~XB를사용하여, 아래와같은작업을수행할수있습니다. X7 :D0~D4에 0 을저장 X8, X9 : 각각, D0~D4에임의의값을저장 XA :D0~D2의값을표시 XB :D3~D4의값을표시 5-37
메 모 5-38
제 6 장과제 2(PLC CPU-PLC CPU 간고정버퍼교신 ( 수순 )) 6.1 실습시스템구성 본과제에서는고정버퍼교신 ( 수순 ) 기능에대해실습합니다. PLC A 측은데이터를송신하고, PLC B 측은데이터를수신합니다. 과제2에서실습할시스템구성을나타냅니다. 과제2에서는 TCP/IP통신으로데이터교신하고, 송신측 PLC CPU의디바이스 (X) 를수신측실습기로써모니터합니다. Ethernet상에는 10대의 PLC CPU가접속되어있습니다만, 과제2에서는, 실습기 No. 가같은 PLC CPU 사이에서만교신합니다. (1) 모듈구성 6-1
(2) 실습내용 송신측 PLC CPU 의 X0~X7, X20~X2F 의정보를수신측 PLC CPU 의 Y70~Y77, Y40~Y4F 에나타냅니다. < 송신측 PLC CPU(Active 오픈 > < 수신측 PLC CPU(Passive 오픈 > X2F X20 Y4F Y40 1 4 0 2 ( 커넥션 1 을사용 ) ( 커넥션 1 을사용 ) X7 X6 X5 X4 X3 X2 X1 X0 Y77 Y76 Y75 Y74 Y73 Y72 Y71 Y70 ON OFF 6-2
6.2 송신측 Ethernet 모듈의설정 송신측 Ethernet 모듈에대해설정합니다. 6.2.1 GX Developer 로써파라미터를설정한다 Ethernet 모듈의파라미터를 GX Developer 로써설정합니다. 설정내용이 6.1 항의내용과같아지도록설정합니다. (1) GX Developer 의기동과멀티 CPU 설정 5.2.1 항과동일하게멀티 CPU 설정을실시해주십시오. (2) 네트워크파라미터 MNET/10H Ethernet 장수설정 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 다음쪽에계속 6-3
이전쪽에서계속 4 네트워크파라미터 MNET/10H Ethernet 장수설정 화면의아래내용을설정합니다. 네트워크종류 :Ethernet 선두I/O No. :00A0 네트워크No. :1 그룹No. :0 국번 : 각실습기의국번을설정 (11~15) 모드 : 온라인 5 동작설정버튼을클릭하여, Ethernet 동작설정대화상자를표시합니다. 6 아래의내용을설정하고, 종료버튼을클릭하여, Ethernet 동작설정대화상자를닫습니다. 교신데이터코드설정 :ASCII 코드교신이니셜타이밍설정 : 상시 OPEN 대기 IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.101~ 192.168.1.105) 송신프레임설정 :Ethernet(V2.0) 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을표시합니다. 다음쪽에계속 8 아래의내용을설정합니다. 프로토콜 :TCP 오픈방식 :Active 고정버퍼 : 송신고정버퍼교신순서 : 수순있음페어링오픈 : 페어로하지않음생존확인 : 확인안함자국포트No. :0401 교신상대 IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.201~ 192.168.1.205) 교신상대포트No. :0401 6-4
이전쪽에서계속 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을닫습니다. 10 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을닫습니다. 11 버튼을클릭합니다. ( 프로젝트저장 ) 12 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX2-A 는실습기 No. 예. 실습기 No.1 의경우 EX2-A1 6-5
6.2.2 시퀀스프로그램 수신측 PLC CPU 에데이터를송신하기위한프로그램을작성합니다. 커넥션 1 의오픈처리를실시하고데이터를송신합니다. 데이터송신후에는커넥션 1 의클로즈처리를실행합니다. 포인트 시퀀스프로그램을작성하고 GX Developer로써아래와같이조작합니다. 1 FD로의저장드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX2-A ( 는실습기No.) 예. 실습기No.1의경우, EX2-A1 2 접속상대지정 (5.2.3항참조 ) 3 PLC CPU로의쓰기 (5.2.4항참조 ) (1) 사용하는디바이스일람 디바이스명 내용 디바이스명 내용 SM400 상시 ON. X0B 커넥션을클로즈하는스위치. M0 커넥션No.1의오픈처리가완료된후, 1스캔만 ON한다. X20~X2F 수신측에송신하는데이터. M1 커넥션No.1의오픈처리가이상완료된경 X0B9 Ethernet 모듈의이니셜처리가정상완료우, 1스캔만 ON한다. (X(n+1)9) 되면 ON한다. M10 커넥션No.1의클로즈처리가완료된후, X0BC 1스캔만 ON한다. (X(n+1)C) COM.ERR LED 점등시에 ON한다. M11 커넥션No.1의클로즈처리가이상완료된경우, 1스캔만 ON한다. Y7A 데이터송신이정상완료된때에 ON한다. M20 데이터송신이완료된후, 1스캔만 ON한다. Y7B 데이터송신이이상완료된때에 ON한다. M21 데이터송신이이상완료된경우, 1스캔만 ON한다. Y0B7 COM. ERR LED 소등요구. M22 데이터송신시에 ON한다. 또한, 데이터송신완료시에 OFF한다. D0~D9 OPEN명령의컨트롤데이터를저장한다. M48 커넥션No.1이오픈상태일때 ON한다. D10~D11 CLOSE명령의컨트롤데이터를저장한다. M64 커넥션No.1의오픈요구가발행되었을때와오픈중일때 ON한다. D20~D21 BUFSND명령의컨트롤데이터를저장한다. X0~X7 수신측에송신하는데이터. D22 송신데이터길이를저장한다. X8 데이터의송신을지령하는스위치. D23 송신데이터 (X0~X7) 를저장한다. X9 표시LED의에러표시를클리어하는스위치. D24 송신데이터 (X20~X2F) 를저장한다. X0A 커넥션을오픈하는스위치. 6-6
(2) 시퀀스프로그램 전용명령의상세내용에대해서는 Q 대응 Ethernet 인터페이스모듈사용자매 뉴얼 ( 기본편 ) 의제 10 장을참조하십시오. 드라이브 / 경로 A: Q-E71 프로젝트이름 EX2-A 6-7
6-8
6.3 수신측 Ethernet 모듈의설정 수신측 Ethernet 모듈에대해설정합니다. 6.3.1 GX Developer 로써파라미터를설정한다 Ethernet 모듈의파라미터를 GX Developer 로써설정합니다. 설정내용은 6.1 항의내용과같아지도록설정합니다. (1) GX Developer 의기동과멀티 CPU 설정 5.2.1 항과동일하게멀티 CPU 설정을실행합니다. (2) 네트워크파라미터 MNET/10H Ethernet 장수설정 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 다음쪽에계속 6-9
이전쪽에서계속 4 네트워크파라미터 MNET/10H Ethernet 장수설정 화면의아래내용을설정합니다. 네트워크종류 :Ethernet 선두I/O No. :00A0 네트워크No. :1 그룹No. :0 국번 : 각실습기의국번을설정 (21~25) 모드 : 온라인 5 동작설정버튼을클릭하여, Ethernet 동작설정대화상자를표시합니다. 6 아래의내용을설정하고, 종료버튼을클릭하여, Ethernet 동작설정대화상자를닫습니다. 교신데이터코드설정 :ASCII 코드교신이니셜타이밍설정 : 상시 OPEN 대기 IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.201~ 192.168.1.205) 송신프레임설정 :Ethernet(V2.0) 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을표시합니다. 다음쪽에계속 8 아래의내용을설정합니다. 프로토콜 :TCP 오픈방식 :Unpassive 고정버퍼 : 수신 고정버퍼교신순서 : 수순있음 페어링오픈 : 페어로하지않음 생존확인 : 확인안함 자국포트No. :0401 6-10
이전쪽에서계속 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을닫습니다. 10 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을닫습니다. 11 버튼을클릭합니다. ( 프로젝트저장 ) 12 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX2-B 는실습기 No. 예. 실습기 No.1 의경우 EX2-B1 6-11
6.3.2 시퀀스프로그램 상대기기에서송신한데이터를수신처리하는프로그램을작성합니다. 데이터수신이정상완료된경우, 송신된데이터 (X0~X7, X20~X2F) 를 Y70~Y77, Y40~Y4F 에출력합니다. 포인트 시퀀스프로그램을작성하고 GX Developer로써아래와같이조작합니다. 1 FD로의저장드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX2-B ( 는실습기No.) 예. 실습기No.1의경우, EX2-B1 2 접속상대지정 (5.2.3항참조 ) 3 PLC CPU로의쓰기 (5.2.4항참조 ) (1) 사용하는디바이스일람 디바이스명 내용 디바이스명 내용 SM400 상시 ON. Y78 데이터수신이정상완료된때에 ON한다. M30 데이터수신이완료된후, 1스캔만 ON한다. Y79 데이터수신이이상완료된때에 ON한다. M31 데이터수신이이상완료된경우, 1스캔만 Y0B7 ON한다. (Y(n+1)7) COM. ERR LED 소등요구. M80 Ethernet 모듈의커넥션No.1이데이터를수신하고있는경우에 ON한다. D30~D31 BUFRCV명령의컨트롤데이터를저장한다. X9 표시LED의에러표시를클리어하는스위치. D32 수신데이터길이가저장된다. X0BC (X(n+1)C) COM.ERR LED 점등시에 ON한다. D33 수신데이터 (X0~X7) 가저장된다. Y40~Y4F 송신측에서송신된 X20~X2F의정보를저장한다. D34 수신데이터 (X20~X2F) 가저장된다. Y70~Y77 송신측에서송신된 X0~X7의정보를저장한다. 6-12
(2) 시퀀스프로그램 전용명령의상세내용에대해서는 Q 대응 Ethernet 인터페이스모듈사용자매 뉴얼 ( 기본편 ) 의제 10 장을참조하십시오. 드라이브 / 경로 A: Q-E71 프로젝트이름 EX2-B 6-13
6.4 GX Developer 에서의 PING 테스트 (CPU 경유 ) GX Developer에서의 PING 테스트를실행합니다. PING 테스트는자국 Ethernet 모듈의이니셜처리가정상완료하고, 동일한 Ethernet상의상대기기와바르게접속되어있는지를확인하는테스트입니다. PING 테스트를실시하기전에송신측 PLC CPU, 수신측 PLC CPU의전원을투입하고, STOP 상태로해주십시오. GX Developer < 송신측 PLC CPU> Q61P Q02H Q X Q Y Q64 Q64 E71 -A1 CPU 42 42P AD DA IP 어드레스 192.168.1.101 PING 테스트를실행 Q61P -A1 < 수신측 PLC CPU> Q02H CPU QX 42 QY Q64 Q64 42P AD DA E71 IP 어드레스 192.168.1. 01 2 1 송신측 PLC CPU 의프로젝트파일을엽니다. 2 [ 진단 ] [Ethernet 진단 ] 메뉴를클릭합니다. 3 Ethernet 진단화면이표시됩니다. Ethernet 진단을실시할자국의대상 Ethernet 모듈은 모듈 No. 의항목에서지정합니다. 다음쪽에계속 6-14
이전쪽에서계속 4 PING 테스트버튼을클릭합니다. 5 PING 테스트화면이표시되면, 아래의내용을설정합니다. 네트워크No. :1 국번 : 각실습기의국번을설정 (11~15) IP 어드레스 :PING 테스트를실시할교신상대실습기의 IP 어드레스를설정 (192.168.1.201~ 192.168.1.205) 6 실행버튼을클릭합니다. 7 예버튼을클릭하여, PING 테스트를실시합니다. < 정상완료시 > 8 PING 테스트실행결과가표시됩니다. < 이상완료시 > 타임아웃으로표시되는경우는, 교신상대 IP 어드레스가잘못되어있다 또는 단선되어있다 의가능성이있으므로, 확인하시기바랍니다. 6-15
비고다음은동일 Ethernet상에접속되어있는상대기기에서자국 Ethernet 모듈에 PING 커맨드를발행 (DOS/V PC Ethernet 모듈 ) 하여이니셜처리의완료를확인하는예에대한설명입니다. (IP 어드레스의클래스와네트워크 ID가같은기기인경우에확인하는예 ) 지정방법 Ping IP 어드레스 프로그램예 Ethernet 모듈의 IP 어드레스 :192.168.1.201 정상시의화면예 C: >ping 192.168.1.201 ping 커맨드의실행 Pinging 192.168.1.201 with 32 bytes of data: Reply from 192.168.1.201: bytes=32 time=2ms TTL=250 Reply from 192.168.1.201: bytes=32 time<1ms TTL=250 Reply from 192.168.1.201: bytes=32 time<1ms TTL=250 Reply from 192.168.1.201: bytes=32 time<1ms TTL=250 Ping statistics for 192.168.1.201 : Packets: Sent = 4, Received = 4, Lost = 0 (0% loss) Approximate round trip times in milli-seconds: Minimum = 1ms,Maximum = 2ms,Average = 1ms C: >_ 정상시의화면예 C: >ping 192.168.1.201 ping 커맨드의실행 Pinging 192.168.1.201 with 32 bytes of data: Request timed out: Request timed out: Request timed out: Request timed out: Ping statistics for 192.168.1.201 : Packets: Sent = 4, Received = 0, Lost = 4 (100% loss) Approximate round trip times in milli-seconds: Minimum = 0ms,Maximum = 0ms,Average = 0ms C: >_ <이상완료한경우> 아래의내용을확인한후에다시 PING 커맨드를송신하십시오. Ethernet 모듈의장착상태. Ethernet의접속상태. PLC CPU에입력되어있는각종파라미터의내용. PLC CPU의동작상태 ( 이상이발생하고있지나않은지?). PING 커맨드로지정된송신상대 Ethernet 모듈의 IP 어드레스. 6-16
6.5 실습기의조작 실습기를조작하여 Ethernet 경유로 PLC CPU A( 송신측 ) 에서 PLC CPU B( 수신측 ) 로 데이터가송신되는지를확인합니다. 1 5.2.4 항을참조하여 PLC CPU A, PLC CPU B 에파라미터와프로그램을씁니다. 2 PLC CPU A( 송신측 ), PLC CPU B( 수신측 ) 모두를 RUN 상태로합니다. OFF ON OFF 3 PLC CPU A I/O 패널의 XA 를 OFF ON OFF 하고, 커넥션을오픈합니다. XA PLC CPU B 는파라미터의동작설정에다음과같이설정되어있으므로, 오픈대기상태 (Unpassive 오픈 ) 가됩니다. 이니셜타이밍설정 : 상시 OPEN 대기 QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD 4 Ethernet 모듈의커넥션이오픈되며, OPEN LED 가점등합니다. X8 OFF ON 5 PLC CPU A 의 X0~X7 을 ON/OFF 합니다. 또한, 디지털스위치 (X20~X2F) 에값을입력합니다. PLC CPU A I/O 패널의 X8 을 ON 하고, 데이터를송신합니다. < 송신측 > < 수신측 > Y4F Y40 X2F X20 1 4 0 2 6 PLC CPU A X0~X7 의상태에부합하여, PLC CPU B Y70~Y77 이점등합니다. 또한, PLC CPU A 의디지털스위치 (X20~X2F) 의값이 PLC CPU B 의 LED 표시기 (Y40~Y4F) 에표시됩니다. < 송신측 > X7 X6 X5 X4 X3 X2 X1 X0 ON OFF < 수신측 > Y77 Y76 Y75 Y74 Y73 Y72 Y71 Y70 다음쪽에계속 6-17
이전쪽에서계속 ON OFF 7 I/O 패널에서의확인이끝나면, PLC CPU A 의 X8 을 OFF 하고, 데이터송신을종료합니다. X8 다시데이터를송신할때에는 5 부터실행하십시오. OFF ON OFF 8 PLC CPU A I/O 패널의 XB 를 OFF ON OFF 하여커넥션을클로즈합니다. XB QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD 9 커넥션이클로즈되며, 각 Ethernet 모듈의 OPEN LED 가소등합니다. 6-18
제 7 장과제 3(PLC CPU-PLC CPU 간고정버퍼교신 ( 무수순 )) 7.1 실습시스템구성 본과제에서는고정버퍼교신 ( 무수순 ) 기능에대해실습합니다. PLC A 측과 PLC B 측은각각데이터송신과데이터수신을수행합니다. 다음은과제3에서실습할시스템구성입니다. 과제3에서는 TCP/IP통신으로데이터를송수신하고, 송신측 PLC CPU의디바이스 (X) 를수신측의실습기로써모니터합니다. Ethernet상에는 10장의 PLC CPU가접속되어있으나, 과제3에서는실습기No. 가같은 PLC CPU 간에만교신합니다. (1) 모듈구성 7-1
(2) 실습내용 PLC CPU A X0~X7, X20~X2F의정보가 PLC CPU B의 Y70~Y77, Y40~Y4F에표시됩니다. 또한, PLC CPU B X0~X7, X20~X2F의정보가 PLC CPU A의 Y70~Y77, Y40~Y4F에표시됩니다. 7-2
7.2 Ethernet 모듈의설정 (PLC A1~A5) PLC A1~A5 측의 Ethernet 모듈을설정합니다. 7.2.1 GX Developer 로써파라미터를설정한다 Ethernet 모듈의파라미터를 GX Developer 로써설정합니다. 설정내용은 7.1 항의내용과같아지도록설정합니다. (1) GX Developer 의기동과멀티 CPU 설정 5.2.1 항과동일하게멀티 CPU 설정을실시하십시오. (2) 네트워크파라미터 MNET/10H Ethernet 장수설정 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 다음쪽에계속 7-3
이전쪽에서계속 4 네트워크파라미터 MNET/10H Ethernet 장수설정 화면의아래내용을설정합니다. 네트워크종류 :Ethernet 선두I/O번호 :00A0 네트워크No. :1 그룹No. :0 국번 : 각실습기의국번을설정 (11~15) 모드 : 온라인 5 동작설정버튼을클릭하여, Ethernet 동작설정대화상자를표시합니다. 6 아래내용을설정하고, 종료버튼을클릭하여, Ethernet 동작설정대화상자를닫습니다. 교신데이터코드설정 : 임의 ( 설정에관계없이, 바이너리코드로교신합니다.) 이니셜타이밍설정 : 상시 OPEN 대기 IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.101~ 192.168.1.105) 송신프레임설정 :Ethernet(V2.0) 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을표시합니다. 다음쪽에계속 7-4
이전쪽에서계속 8 아래내용을설정합니다. 프로토콜 :TCP 오픈방식 :Active 고정버퍼교신순서 : 순서없음 ( 무수순 ) 페어링오픈 : 페어로한다생존확인 : 확인안함자국포트No. :0401 교신상대IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.201~ 192.168.1.205) 교신상대포트 No. :0401 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을닫습니다. 10 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을닫습니다. 11 버튼을클릭합니다. ( 프로젝트저장 ) 12 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX3-A 는실습기 No. 예. 실습기 No.1 의경우 EX3-A1 7-5
7.2.2 시퀀스프로그램 시퀀스프로그램을작성합니다. 파라미터의오픈설정에서설정한페어링오픈지정에의해, 커넥션 1 과커넥션 2 에대한오픈처리 ( 페어링오픈지정 ) 를실행하고데이터를송수신합니다. 데이터송수신후에는커넥션 1 과커넥션 2 의클로즈처리를실시합니다. 포인트 (1) 무수순으로교신하는경우에는데이터길이의지정이바이트단위로되어있으니주의하십시오. 순서있음 ( 수순 ) 으로써교신을하는경우는워드단위입니다. (2) 시퀀스프로그램을작성하고 GX Developer로써아래와같이조작하십시오. 1 FD로의저장드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX3-A ( 는실습기No.) 예. 실습기No.1의경우, EX3-A1 2 접속상대지정 (5.2.3항참조 ) 3 PLC CPU로의쓰기 (5.2.4항참조 ) 7-6
(1) 사용디바이스일람 디바이스명 내용 디바이스명 내용 SM400 상시 ON. X20~X2F PLC CPU B에송신할데이터. M0 커넥션No.1의오픈처리완료후, 1스캔만 X0B9 Ethernet 모듈의이니셜처리가정상완료 ON한다. (X(n+1)9) 되면 ON한다. M1 커넥션No.1의오픈처리가이상완료된 X0BC 경우, 1스캔만 ON한다. (X(n+1)C) COM.ERR LED 점등시에 ON한다. M10 커넥션No.1 클로즈처리완료후, 1스캔만 PLC CPU B에서송신된 X20~X2F의정보가 Y40~Y4F ON한다. 저장된다. M11 커넥션No.1의클로즈처리가이상완료된 PLC CPU B에서송신된 X0~X7의정보가 Y70~Y77 경우, 1스캔만 ON한다. 저장된다. M20 데이터송신완료후, 1스캔만 ON한다. Y78 데이터수신이정상완료되면 ON한다. M21 데이터송신이이상완료된경우, 1스캔만 ON한다. Y79 데이터수신이이상완료되면 ON한다. M22 데이터송신시에 ON한다. 또한, 데이터송신이완료되면 OFF한다. Y7A 데이터송신이정상완료되면 ON한다. M30 데이터수신완료후, 1스캔만 ON한다. Y7B 데이터송신이이상완료되면 ON한다. M31 데이터수신이이상완료된경우, 1스캔만 Y0B7 ON한다. (Y(n+1)7) COM. ERR LED 소등요구. M48 커넥션No.1이오픈상태일때 ON한다. D0~D9 OPEN명령의컨트롤데이터를저장한다. M49 커넥션No.2가오픈상태일때 ON한다. D10~D11 CLOSE명령의컨트롤데이터를저장한다. M64 커넥션No.1의오픈요구가실행되거나오픈중일때 ON한다. D20~D21 BUFSND명령의컨트롤데이터를저장한다. M65 커넥션No.2의오픈요구가실행되거나오픈중일때 ON한다. D22 송신데이터길이를저장한다. M80 Ethernet 모듈의커넥션No.1이데이터수신중일때 ON한다. D23 송신데이터 (X0~X7) 를저장한다. X0~X7 PLC CPU B에송신할데이터. D24 송신데이터 (X20~X2F) 를저장한다. X8 데이터송신을지시하는스위치. D30~D31 BUFRCV명령의컨트롤데이터를저장한다. X9 표시LED 에러표시의클리어를지시하는스위치. D32 수신데이터길이가저장된다. X0A 커넥션의오픈을지시하는스위치. D33 수신데이터 (X0~X7) 가저장된다. X0B 커넥션의클로즈를지시하는스위치. D34 수신데이터 (X20~X2F) 가저장된다. 7-7
(2) 시퀀스프로그램 전용명령의상세내용에대해서는 Q 대응 Ethernet 인터페이스모듈사용자매 뉴얼 ( 기본편 ) 의제 10 장을참조하십시오. 드라이브 / 경로 A: Q-E71 프로젝트이름 EX3-A 7-8
7-9
7-10
7.3 Ethernet 모듈의설정 (PLC B1~B5) PLC B1~B5 측의 Ethernet 모듈을설정합니다. 7.3.1 GX Developer 로써파라미터를설정한다 Ethernet 모듈의파라미터를 GX Developer 로써설정합니다. 설정내용은 7.1 항의내용과같아지도록설정합니다. (1) GX Developer 의기동과멀티 CPU 설정 5.2.1 항과동일하게멀티 CPU 설정을실시하십시오. (2) 네트워크파라미터 MNET/10H Ethernet 장수설정 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 다음쪽에계속 7-11
이전쪽에서계속 4 네트워크파라미터 MNET/10H Ethernet 장수설정 화면의아래내용을설정합니다. 네트워크종류 :Ethernet 선두I/O번호 :00A0 네트워크No. :1 그룹No. :0 국번 : 각실습기의국번을설정 (21~25) 모드 : 온라인 5 동작설정버튼을클릭하여, Ethernet 동작설정대화상자를표시합니다. 6 아래내용을설정하고, 종료버튼을클릭하여, Ethernet 동작설정대화상자를닫습니다. 교신데이터코드설정 : 임의 ( 설정에관계없이, 바이너리코드로교신합니다.) 이니셜타이밍설정 : 상시 OPEN 대기 IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.201~ 192.168.1.205) 송신프레임설정 :Ethernet(V2.0) 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을표시합니다. 다음쪽에계속 7-12
이전쪽에서계속 8 아래내용을설정합니다. 프로토콜 :TCP 오픈방식 :Unpassive 고정버퍼교신순서 : 순서없음 ( 무수순 ) 페어링오픈 : 페어로한다 생존확인 : 확인안함 자국포트No. :0401 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을닫습니다. 10 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을닫습니다. 11 버튼을클릭합니다. ( 프로젝트의저장 ) 12 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX3-B 는실습기 No. 예. 실습기 No.1 의경우 EX3-B1 7-13
7.3.2 시퀀스프로그램 시퀀스프로그램을작성합니다. PLC CPU A1~A5 측의 Active 오픈에의해커넥션을확립하고, 데이터를송수신 합니다. 포인트 (1) 무수순으로교신하는경우는데이터길이의지정이바이트단위로되어있으므로주의하십시오. 순서있음 ( 수순 ) 으로써교신을하는경우에는워드단위입니다. (2) 시퀀스프로그램을작성하고 GX Developer로써아래와같이조작하십시오. 1 FD로의저장드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX3-B ( 는실습기No.) 예. 실습기No.1의경우, EX3-B1 2 접속상대지정 (5.2.3항참조 ) 3 PLC CPU로의쓰기 (5.2.4항참조 ) 7-14
(1) 사용디바이스일람 디바이스명 내용 디바이스명 내용 SM400 상시 ON. Y40~Y4F PLC CPU A에서송신된 X20~X2F의정보가저장된다. M20 데이터송신완료후, 1스캔만 ON한다. Y70~Y77 PLC CPU A에서송신된 X0~X7의정보가저장된다. M21 데이터송신이이상완료된경우, 1스캔만 ON한다. Y78 데이터수신이정상완료되면 ON한다. M22 데이터송신시에 ON한다. 또한데이터송신이완료되면 OFF한다. Y79 데이터수신이이상완료되면 ON한다. M30 데이터수신완료후, 1스캔만 ON한다. Y7A 데이터송신이정상완료되면 ON한다. M31 데이터수신이이상완료된경우, 1스캔만 ON한다. Y7B 데이터송신이이상완료되면 ON한다. M48 커넥션No.1이오픈상태일때 ON한다. Y0B7 COM. ERR LED 소등요구. M80 Ethernet 모듈의커넥션No.1이데이터수신중일때 ON한다. D20~D21 BUFSND명령의컨트롤데이터를저장한다. X0~X7 PLC CPU A로송신할데이터. D22 송신데이터길이를저장한다. X8 데이터송신을지시하는스위치. D23 송신데이터 (X0~X7) 를저장한다. X9 표시LED 에러표시의클리어를지시하는스위치. D24 송신데이터 (X20~X2F) 를저장한다. X20~X2F PLC CPU A에송신할데이터. D30~D31 BUFRCV명령의컨트롤데이터를저장한다. X0B0 커넥션No.1이오픈완료되면 (X(n+1)0) ON한다. D32 수신데이터길이가저장된다. X0B9 Ethernet 모듈의이니셜처리가정상완료 (X(n+1)9) 되면 ON한다. D33 수신데이터 (X0~X7) 가저장된다. X0BC (X(n+1)C) COM.ERR LED 점등시에 ON한다. D34 수신데이터 (X20~X2F) 가저장된다. 7-15
(2) 시퀀스프로그램 전용명령의상세내용에대해서는 Q 대응 Ethernet 인터페이스모듈사용자매 뉴얼 ( 기본편 ) 의제 10 장을참조하십시오. 드라이브 / 경로 A: Q-E71 프로젝트이름 EX3-B 7-16
7-17
7.4 GX Developer 에서의 PING 테스트 (CPU 경유 ) GX Developer에서의 PING 테스트를실행합니다. PING 테스트는자국 Ethernet 모듈의이니셜처리가정상완료하고, 같은 Ethernet상의상대기기와바르게접속되어있는지를확인하는테스트입니다. PING 테스트를실행하기전에 PLC A1~A5, PLC B1~B5의전원을투입하고, STOP 상태로하십시오. Q61P -A1 Q02H CPU <PLC CPU A> QX 42 QY Q64 Q64 42P AD DA E71 IP 어드레스 192.168.1.101 PING 테스트를실행 Q61P -A1 Q02H CPU <PLC CPU B> QX 42 QY Q64 Q64 42P AD DA E71 IP 어드레스 192.168.1. 201 조작순서는 6.4 항과같습니다. 7-18
7.5 실습기의조작 실습기를조작하여 Ethernet 경유로 PLC A 와 PLC B 간에데이터가송수신되는지를 확인합니다. 간단히하기위해, PLC A1~A5 측을 PLC A, PLC B1~B5 측을 PLC B 로기재합니다. 1 5.2.4 항을참조하여, PLC A, PLC B 에파라미터와프로그램을씁니다. 2 PLC A, PLC B 모두를 RUN 상태로합니다. OFF ON OFF 3 PLC CPU A I/O 패널의 XA 를 OFF ON OFF 하여커넥션을오픈합니다. XA PLC CPU B 는파라미터의동작설정에서아래의내용이설정되어있는바, 오픈대기상태 (Unpassive 오픈 ) 로되어있습니다. QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD 4 Ethernet 모듈의커넥션이오픈되고, OPEN LED 가점등합니다. X8 OFF ON 5 송신측 PLC CPU 의 X0~X7 을 ON/OFF 합니다. 또한, 디지털스위치 (X20~X2F) 에값을입력합니다. 송신측 PLC CPU I/O 패널의 X8 을 ON 하고데이터를송신합니다. X7 X6 X5 X4 X3 X2 X1 X0 ON OFF 6 송신측의 X0~X7 의상태에부합하여수신측의 Y70~Y77 이점등합니다. 또한, 송신측디지털스위치 (X20~X2F) 의값이수신측의 LED 표시기 (Y40~Y4F) 에표시됩니다. Y77 Y76 Y75 Y74 Y73 Y72 Y71 Y70 X2F X20 Y4F Y40 1 4 0 2 다음쪽에계속 7-19
이전쪽에서계속 X8 ON OFF 7 I/O 패널에서의확인이종료되며, 송신측 I/O 패널의 X8 을 OFF 하고, 데이터송신을종료합니다. XB OFF ON OFF 다시데이터를송신할때에는, 5 부터실행하십시오. 8 PLC A I/O 패널의 XB 를 OFF ON OFF 하고, 커넥션을클로즈합니다. QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD 9 커넥션이클로즈되고, 각 Ethernet 모듈의 OPEN LED 가소등합니다. 7-20
제 8 장과제 4( 라우터를경유하는 PLC CPU-PLC CPU 간고정버퍼교신 ( 무수순 )) 본과제에서는라우터를경유하여데이터교신을하는실습을합니다. 데이터교신의내용은제7장의과제3의고정버퍼 ( 무수순 ) 에의한교신을라우터를경유하는것으로바꾸어실행합니다. 8.1 실습시스템구성 다음은과제 4 에서실습한시스템구성입니다. Ethernet 상에는 10 장의 PLC CPU 가접속되어있으나, 과제 4 에서는실습기 No. 가 동일한 PLC CPU 사이에서만교신합니다. (1) 모듈구성 (2) 실습내용 *1 사용할라우터의설명서에따라서라우터를설정하십시오. 과제 3 과실습내용이동일한바, 7.1 항 (2) 을참조하십시오. 8-1
8.2 Ethernet 모듈의설정 (PLC A1~A5) PLC A1~A5 측의 Ethernet 모듈에대해설정합니다. 8.2.1 GX Developer 로써파라미터를설정한다 Ethernet 모듈의파라미터를 GX Developer 로써설정합니다. 설정내용은 8.1 항의내용과같게설정합니다. (1) GX Developer 의기동과멀티 CPU 설정 5.2.1 항과동일하게멀티 CPU 설정을실행하십시오. (2) 네트워크파라미터 MNET/10H Ethernet 장수설정 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 다음쪽에계속 8-2
이전쪽에서계속 4 네트워크파라미터 MNET/10H Ethernet 장수설정 화면의다음내용을설정합니다. 네트워크종류 :Ethernet 선두I/O번호 :00A0 네트워크No. :1 그룹No. :0 국번 : 각실습기의국번을설정 (11~15) 모드 : 온라인 5 동작설정버튼을클릭하여, Ethernet 동작설정대화상자를표시합니다. 6 다음의내용을설정하고, 종료버튼을클릭하여, Ethernet 동작설정대화상자를닫습니다. 교신데이터코드설정 : 임의 ( 설정에관계없이바이너리코드로교신합니다.) 이니셜타이밍설정 : 상시 OPEN 대기 IP 어드레스 : 각실습기의 IP 어드레스를설정 (192.168.1.101~ 192.168.1.105) 송신프레임설정 :Ethernet(V2.0) 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을표시합니다. 다음쪽에계속 8-3
이전쪽에서계속 8 다음의내용을설정합니다. 프로토콜 :TCP 오픈방식 :Active 고정버퍼교신순서 : 순서없음 ( 무수순 ) 페어링오픈 : 페어로한다생존확인 : 확인안함자국포트No. :0401 교신상대IP 어드레스 : 각실습기의 IP 어드레스를설정 (172.16.1.101~ 172.16.1.105) 교신상대포트No. :0401 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을닫습니다. 10 라우터중계파라미터버튼을클릭하여, Ethernet 루틴정보설정화면을표시합니다. 11 다음의내용을설정하고, 종료버튼을클릭하여, Ethernet 루틴정보설정화면을닫습니다. 라우터중계기능 : 사용서브네트워크마스크패턴 :255.255.255.0 ( 본교재에서는클래스C의디폴트를사용합니다.) 디폴트라우터 IP 어드레스 :192.168.1.254 다음쪽에계속 8-4
이전쪽에서계속 12 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을닫습니다. 13 버튼을클릭합니다. ( 프로젝트저장 ) 14 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX4-A 은실습기 No. 예. 실습기 No.1 의경우 EX4-A1 8.2.2 시퀀스프로그램 7.2.2 항과동일한시퀀스프로그램을사용하십시오. 포인트 시퀀스프로그램을작성하고 GX Developer로써아래와같이조작하십시오. 1 FD로의저장드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX4-A ( 은실습기No.) 예. 실습기No.1의경우, EX4-A1 2 접속상대지정 (5.2.3항참조 ) 3 PLC CPU로의쓰기 (5.2.4항참조 ) 8-5
8.3 Ethernet 모듈의설정 (PLC B1~B5) PLC B1~B5 측의 Ethernet 모듈에대해설정합니다. 8.3.1 GX Developer 로써파라미터를설정한다 Ethernet 모듈의파라미터를 GX Developer 로써설정합니다. 설정내용은 8.1 항의내용과같게설정합니다. (1) GX Developer 의기동과멀티 CPU 설정 5.2.1 항과동일하게멀티 CPU 설정을실행하십시오. (2) 네트워크파라미터 MNET/10H Ethernet 장수설정 1 프로젝트데이터일람에서 네트워크파라미터 를더블클릭합니다. 2 네트워크파라미터선택대화상자가표시되면, MELSECNET/Ethernet 버튼을클릭합니다. 3 네트워크파라미터 MNET/10H Ethernet 장수설정화면이표시됩니다. 다음쪽에서계속 8-6
이전쪽에서계속 4 네트워크파라미터 MNET/10H Ethernet 장수설정 화면의다음내용을설정합니다. 네트워크종류 :Ethernet 선두I/O번호 :00A0 네트워크No. :2 그룹No. :0 국번 : 각실습기의국번을설정 (11~15) 모드 : 온라인 5 동작설정버튼을클릭하여, Ethernet 동작설정대화상자를표시합니다. 6 다음의내용을설정하고, 종료버튼을클릭하여, Ethernet 동작설정대화상자를닫습니다. 교신데이터코드설정 : 임의 ( 설정에관계없이바이너리코드로교신합니다.) 이니셜타이밍설정 : 상시 OPEN 대기 IP 어드레스 : 각실습기의 IP 어드레스를설정 (172.16.1.101~ 172.16.1.105) 송신프레임설정 :Ethernet(V2.0) 7 오픈설정버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을표시합니다. 다음쪽에서계속 8-7
이전쪽에서계속 8 다음의내용을설정합니다. 프로토콜 :TCP 오픈방식 :Unpassive 고정버퍼교신순서 : 순서없음 ( 무수순 ) 페어링오픈 : 페어로한다 생존확인 : 확인안함 자국포트No. :0401 9 종료버튼을클릭하여, 네트워크파라미터 Ethernet 오픈설정화면을닫습니다. 10 라우터중계파라미터버튼을클릭하여, Ethernet 루틴정보설정화면을표시합니다. 본루틴정보설정은 8.4 항에기재한 PING 테스트용입니다. 본장의데이터교신만실행하는경우에는, 본루틴정보를설정할필요가없습니다. 11 다음의내용을설정하고, 종료버튼을클릭하여, Ethernet 루틴정보설정화면을닫습니다. 라우터중계기능 : 사용서브네트워크마스크패턴 :255.255.0.0 ( 본교재에서는클래스B의폴트를사용합니다.) 디폴트라우터 IP 어드레스 :172.16.1.254 12 종료버튼을클릭하여, 네트워크파라미터 MNET/10H Ethernet 장수설정화면을닫습니다. 다음쪽에계속 8-8
이전쪽에서계속 13 버튼을클릭합니다. ( 프로젝트저장 ) 14 드라이브 / 경로, 프로젝트이름을설정하고, 저장버튼을클릭합니다. 드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX4-B 은실습기 No. 예. 실습기 No.1 의경우 EX4-B1 8.3.2 시퀀스프로그램 7.3.2 항과동일한시퀀스프로그램을사용하십시오. 포인트 시퀀스프로그램을작성하고 GX Developer로써아래와같이조작하십시오. 1 FD로의저장드라이브 / 경로명 :A: Q-E71 프로젝트이름 :EX4-B ( 은실습기No.) 예. 실습기No.1의경우, EX4-B1 2 접속상대지정 (5.2.3항참조 ) 3 PLC CPU로의쓰기 (5.2.4항참조 ) 8-9
8.4 PC 에서의 PING 테스트 MX Component를실습한 PC에서 PLC B측에대하여, PING 테스트를실행합니다. PING 테스트는 PLC B측 Ethernet 모듈의이니셜처리가정상완료되고, PC와 PLC B측이바르게접속되어있는지를확인하는테스트입니다. PING 테스트를실행하기전에 PLC A1~A5, PLC B1~B5의전원을투입하고 STOP 상태로하십시오. PC 측의조작순서예는 6.4 항의비고를참조하십시오. 8.5 실습기의조작 7.5 항과같습니다. 8-10
부록 부 1 Visual Basic R Version6 부 1.1 Visual Basic R 의기동 기동 1 [ 시작 ]-[ 프로그램 ]-[Microsoft Visual Studio 6.0]-[Microsoft Visual Basic 6.0] 을클릭합니다. 애플리케이션의읽기 1 [ 파일 (F)]-[ 프로젝트를열기 (0)] 를선택합니다. 2 A 드라이브에텍스트FD를넣고, 드라이브 (V) 를 [a:] 로선택합니다. 3 프로젝트파일명을선택하고, [ 열기 ] 버튼을클릭합니다. 프로젝트에포함되어있는모든파일이읽혀집니다. 부 - 1
Visual Basic R 화면 2 툴박스 1 툴바 3 폼창 4 프로젝트창 6 코드창 5 속성창 1 툴 ( 도구 ) 바자주사용하는커맨드는여기에서선택할수있습니다. 2 툴상자폼상에배치할컨트롤을선택하기위한창입니다. 3 폼 ( 형식 ) 창 ( 윈도우 ) 애플리케이션 ( 응용 ) 의기본이되는창입니다. 폼상에컨트롤을배치하고자하는인터페이스를작성합니다. 4 프로젝트창프로젝트 ( 응용프로그램 ) 를구성하는파일의일람이표시됩니다. 5 속성창컨트롤에형식이나색등의속성을설정하기위한창입니다. 6 코드창폼상에배치한오브젝트를더블클릭하면창이표시되며, 여기에 Basic 코드 ( 프로그램 ) 를기술합니다. 부 - 2
폼창의표시 프로젝트창에서폼모듈파일을선택하고, [ 폼 ] 버튼을클릭합니다. 코드창의표시 폼에서컨트롤을더블클릭합니다. 또는프로젝트창에서폼모듈파일을선택하고, [ 코드 ] 버튼을클릭합니다. 속성창의표시 속성창의안쪽을클릭합니다. 또는폼창을활성화하고, [ 표시 (V)] [ 속성창 (S)]( 툴바의 ( 속성 창 )) 을선택합니다. 실행 [ 실행 (R)] [ 시작 (S)]( 툴바의 ( 시작 )) 을선택합니다. 애플리케이션의종료 [ 실행 (R)] [ 종료 (E)]( 툴바의 ( 종료 )) 를선택합니다. 또는애플리케이션의타이틀바아이콘에서 [ 열기 (C)] 를선택합니다. 종료 [ 파일 (F)] [ 종료 (X)] 를선택합니다. 부 - 3
부 1.2 개략커맨드 For...Next 스테이트먼트 기능 서식 지정한횟수에한해일련의스테이트먼트 ( 구문 ) 를반복하는플로 ( 흐름 ) 제어스테이트먼트입니다. For counter = start To end[step step] [statements] [Exit For] [statements] Next[counter] For...Next 스테이트먼트의지정항목은다음과같습니다. 지정항목내용 counter 루프카운터에사용할수치변수를지정합니다. 사용자정의형요소는지정할수없습니다. start 인수 counter 의초기값을지정합니다. end 인수 counter 의최종값을지정합니다. step 루프를반복할때마다인수 counter 에가산될값을지정합니다. 인수 step 을생략하면, 루프를반복할때마다인수 counter 에는 1 이가산됩니다. statements 루프내에서실행될일련의스테이트먼트로써, For 와 Next 사이에기술합니다. 여기에기술한스테이트먼트는 For...Next 에서지정한횟수만큼실행됩니다. 해설인수 step 에는양수, 음수를지정할수있습니다. 인수 step 에서지정한값에의해루프는다음과같이제어됩니다. 설정값 양수또는 0 음수 실행조건 counter<=end counter>=end 프로그램의실행이루프로옮겨져서실행되고, 루프내의일련의스테이트먼트가모두실행되면, 인수 step 의값이인수 counter 에가산됩니다. 이시점에서종료조건이충족되지않은경우에는루프내의스테이트먼트가다시실행되고, 이외에는루프에서벗어난 Next 스테이트먼트의다음의스테이트먼트로제어가넘겨집니다. Exit For 스테이트먼트는제어구조 For Each...Next 또는 For...Next 안에서만사용할수있으며, 지정한횟수이외의조건에서 For...Next 를종료시킬수있습니다. Exit For 스테이트먼트는 For Each...Next 또는 For...Next 루프내의임의의위치에몇번이라도지정할수있습니다. Exit For 는조건평가 ( 예를들어 If...Then 등 ) 와마찬가지로사용되는경우가많으며, Next 직후의스테이트먼트로제어를넘깁니다. For...Next 루프는네스팅 ( 입자 ) 구조로할수있습니다. 즉, For...Next 루프의내부에별도의 For...Next 루프를넣을수있습니다. 루프를네스팅 ( 입자 ) 시킬때에는각각의인수 counter 에별도의변수명을지정하십시오. 다음은바르게작성한스테이트먼트의예입니다. 부 - 4
For I = 1 To 10 For J = 1 To 10 For K = 1 To 10... Next K Next J Next I 주의 Next 스테이트먼트의인수 counter 를생략하면, 인수 counter 가지정되어있는것처럼실행을계속합니다. Next 스테이트먼트가대응하는 For 스테이트먼트보다앞에있으면에러가발생합니다. 부 - 5
Hex 함수 기능지정한값을 16 진수의문자열로표시합니다. 서식 Hex(number) 인수 number 에는임의의수식또는문자열식을지정합니다. 해설인수 number 가정수가아닌경우, 변환하기전에한번가까운정수로바꿉니다. number 값 반환값 Null Null값 Empty 0 그밖의수치 16진수를표시하는최대 8자리의문자열 적절한범위의값앞에 &H 를부가하면, 값을직접 16 진수로기술할수있습니다. 예를들어, 10 진수의 16 을 &H10 과같이 16 진수로표기할수있습니다. 부 - 6
If...Then...Else 스테이트먼트 기능식의값을기준으로조건을부가하여실행하는플로 ( 흐름 ) 제어스테이트먼트입니다. 서식 If condition Then statements[else elsestatements] 또는다음에표시한블록형식의구문을사용할수도있습니다. If condition Then [statements] [ElseIf condition-n Then [elseifstatements]]... [Else [elsestatements]] End If If...Then...Else 스테이트먼트의지정항목은다음과같습니다. 지정항목내용 condition 다음의 2종류의식중에서지정합니다. 참 (True) 인지거짓 (False) 인지를평가하는수식또는문자열식. 인수 condition 값이 Null인경우, 인수 condition은거짓 (False) 으로간주됩니다. TypeOf objectname Is objecttype 형식의식. 인수objectname은임의의오브젝트의참조용이며, 인수objecttype은임의의유효한오브젝트형입니다. 본식은인수objectname이인수objecttype으로지정된오브젝트형이라면참 (True) 을, 이외일때는거짓 (False) 을반환합니다. statements 인수 condition이참 (True) 일때실행됩니다. 콜론 (:) 으로구분된일련의스테이트먼트를지정합니다. condition-n 인수 condition과동일. elseifstatements 인수 condition-n이참 (True) 일때실행되며, 일련의스테이트먼트를지정합니다. elsestatements Else 이전에정의되어있는조건 ( 인수 condition 또는인수 condition-n) 의어느것도참 (True) 이아닌경우에실행되며, 일련의스테이트먼트를지정합니다. 해설 1 행의 If...Then...Else 스테이트먼트 ( 제 1 의구문 ) 는짧고간단한조건을판단할때에사용합니다. 블록형식의 If...Then...Else 스테이트먼트 ( 제 2 의구문 ) 는 1 행의구문에비하여보다구조화되고유연하게기술할수있습니다. 또한, 코드를읽기가수월하고보수성이향상되어디버그도쉽게할수있습니다. 부 - 7
주의 제 1 의구문에서도 1 개의조건에대해여러개의스테이트먼트를기술할수있습니다만, 이경우는다음과같이콜론으로구분하여 1 행으로기술할필요가있습니다. If A>10 Then A=A+1:B=B+A:C=C+B 블록형식의 If( 제 2 의구문 ) 가실행되면, 처음으로인수 condition 이평가됩니다. 인수 condition 이참 (True) 이면, Then 으로계속스테이트먼트가실행됩니다. 인수 condition 이거짓 (False) 이면, 대신하여 ElseIf 로지정한조건 (condition-n) 이평가됩니다. 어느하나의조건이참 (True) 이면, 대응하는 Then 으로계속스테이트먼트가실행됩니다. ElseIf 로지정된조건식이모두거짓 (False) 일때 ( 또는 ElseIf 절이없을때 ) 는, Else 로계속스테이트먼트가실행됩니다. Then 또는 Else 로계속되어진스테이트먼트의실행이종료되면, End If 의다음스테이트먼트에서프로그램이계속실행됩니다. Else 절과 ElseIf 절은모두필요에따라정의합니다. 또한, 블록형식의 If 에서는 ElseIf 절이몇개가지정되어도관계없습니다. 단, Else 절이후에는 ElseIf 절을지정할수없습니다. 또한, 블록형식의 If 는네스팅 ( 입자 ) 구조로작성할수있습니다. 부 - 8
부 1.3 용어 폼 애플리케이션의인터페이스의기본이되는창입니다. 애플리케이션은적어도 1 개의폼으로구성됩니다. 컨트롤 폼의가운데에배치시키는다양한부품입니다 ( 커맨드버튼이나텍스트상자 등 ). 오브젝트 폼이나컨트롤등사용자가조작을하는대상이되는것을총칭하여오브젝트 라고합니다. 속성오브젝트의속성입니다. 속성에값을설정함으로써오브젝트의크기, 색, 화면상의표시위치등외관의특징이나크기를변경할수있는지의여부를정의할수있습니다. 이벤트마우스를클릭하거나, 키를누르는등의동작입니다. 오브젝트의종류에따라인식할수있는이벤트는다릅니다. 애플리케이션에는이벤트별로대응하는처리를 Basic코드로써기술합니다. 이벤트는주로사용자가오브젝트를조작함으로써발생합니다만, 이외에도프로그램자체에서발생하거나, 시스템에서발생하는것도있습니다. 메소드 오브젝트를제어하기위한키워드입니다. 오브젝트명, 메소드의형식으로기술합니다. 부 - 9
부 1.4 툴상자일람 폼에컨트롤을배치할때는, 툴상자상의버튼을사용합니다. 포인터 컨트롤 그리기상자 기능폼과배치되어있는컨트롤을이동시키고크기를변경한다. 포인터는컨트롤이아니다. 비트맵, 아이콘, Microsoft Windows의파일등을표시한다. 텍스트를표시하거나그리기상자의가운데에그밖의컨트롤을배치할수있다. 라벨텍스트를표시한다. 이러한텍스트는사용자가직접입력하거나변경할수없다. 텍스트상자텍스트를입력하거나표시한다. 프레임외관이나기능별로컨트롤을프레임내에배치하고그룹으로나눈다. 커맨드버튼사용자가선택한커맨드나조작을실행한다. 체크상자 옵션버튼 온 ( 체크 ) 과오프 ( 미체크 ) 를설정한다. 동시에여러개의체크상자를온할수있다. 복수의항목에서 1개를선택하기위한버튼. 여러개의옵션버튼을 1개의그룹으로하여사용한다. 리스트상자리스트를표시하여, 이중에항목을사용자가선택할수있도록한다. 콤보상자텍스트상자와리스트상자를조합하여사용한다. 수평및수직 스크롤바 볼륨의설정등범위내에서연속으로변화하는값을표시하거나설정할때에 사용한다. 타이머일정한시간간격별로이벤트가발생하도록한다. 드라이브리스트상자유효한디스크드라이브의리스트를표시하고, 사용자가선택할수있도록한다. 디렉토리 리스트상자 디렉토리경로를표시하고, 사용자가선택할수있도록한다. 파일리스트상자디렉토리내의파일명을표시하고, 사용자가선택할수있도록한다. 모양폼내에서직사각형, 타원, 원을그릴때사용한다. 선폼내에서선을그릴때사용한다. 이미지 비트맵, 아이콘, Windows 의파일등을표시한다. 클릭하면, 커맨드버튼과동일하게 동작한다. 데이터기존의데이터베이스에접속하고, 이정보를폼상에표시한다. OLE 작성할애플리케이션에서 OLE 오브젝트를이용할수있도록한다. 부 - 10
표준툴상자 ( 도구모음 ) 에준비되어있지않은컨트롤을 ActiveX 컨트롤라고합니다. 사용자컨트롤은 [ 프로젝트 ] 메뉴의 [ 구성요소 ] 커맨드를사용하여컨트롤을추가 / 삭제할수있습니다. 컨트롤의추가 1 [ 프로젝트 ]-[ 구성요소 ] 를선택합니다. 2 추가할컨트롤의체크상자를온으로하고 [ 확인 ] 를선택합니다. 비고 MX Component 를사용하는경우에는 MITSUBISHI Act~ 를추가합니다. 부 - 11
부 1.5 툴바일람 자주사용하는커맨드를간단하게호출하기위한버튼이준비되어있습니다. 버튼명칭기능 표준 EXE ActiveX EXE ActiveX DLL 현재열려있는프로젝트그룹에추가할수있는프로젝트의종류가 서브메뉴에표시된다. 아이콘은최후에추가된프로젝트종류로바뀐다. ActiveX 컨트롤 폼모듈 MDI 폼모듈 표준모듈 클래스모듈 사용자컨트롤 작업중인프로젝트에추가할수있는항목일람이서브메뉴에표시 된다. 아이콘은최후에추가된오브젝트로바뀐다. 속성페이지 사용자도큐먼트 메뉴에디터 [ 메뉴에디터 ] 대화상자를표시한다. 프로젝트열기 프로젝트를로드하면, 현재열려있는프로젝트는닫히고, 로드한 프로젝트가열린다. 프로젝트저장현재의프로젝트와모든컴포넌트가저장된다. 잘라내기선택한컨트롤또는문자열을삭제하고, 클립보드에전송한다. 복사선택한컨트롤또는문자열을클립보드에복사한다. 붙여넣기클립보드의내용을현재의커서위치에삽입한다. 찾기 [ 찾기 ] 대화상자에서지정한범위내에서지정된문자열을찾는다. 실행취소최후에실행된편집조작을취소한다. 다시실행 [ 실행취소 ] 조작후그밖의조작을실행하지않은경우에, 최후에 편집한문자열을복원한다. 시작디자인시에작성중인애플리케이션을실행한다. 중단프로그램의실행이중지되고중지모드로전환된다. 부 - 12
버튼명칭기능 종료프로그램의실행이중지되고, 디자인시에복구된다. 프로젝트익스플로러프로젝트창을표시한다. 속성창속성창을표시한다. 폼레이아웃창폼레이아웃창을표시한다. 오브젝트브라우저오브젝트브라우저를표시한다. 툴상자툴상자를표시한다. 데이터뷰창데이터뷰창을표시한다. Visual Component Manager Visual Component Manager 를표시한다. 부 - 13
부 1.6 속성일람 속성 기능 Action OLE클라이언트가실행하는조작. ActiveContol 포커스가있는컨트롤. ActiveForm 포커스가있는폼. Align 그리기상자의표시방법. Alignment Caption 속성의배치. Appearance 컨트롤의외관표시를플랫으로할것인지의여부. AppIsRunning OLE 컨테이너중의오브젝트의작성소스애플리케이션을기동할것인지의여부. Archive 파일리스트상자에아카이브속성의파일을표시할것인지의여부. AutoActivate OLE 컨테이너에서오브젝트를활성화하기위한방법설정. AutoRedraw 그래픽다시그리기를자동으로실행할것인지의여부. AutoShowChildren MDI 子폼로드시에표시할것인지의여부. AutoSize 컨트롤의크기를내용에맞추어자동변경할것인지의여부. AutoVerbMenu OLE 컨테이너를마우스의오른쪽클릭시에팝업메뉴를표시할것인지의여부. BackColor 오브젝트의배경색. BackStyle 라벨이나모양의배경. BoderColor 컨트롤의경계색. BoderStyle 컨트롤의경계선의스타일. BorderWidth 컨트롤의경계선의폭. Calendar 프로젝트에서사용하고있는달력의종류설정. Cancel 커맨드버튼을취소버튼으로할것인지의여부. Caption 폼의제목, 컨트롤로써표시하는텍스트. Checked 메뉴커맨드에체크마크를부가할것인지의여부. Class 임베드된 OLE 오브젝트의클래스명. ClipControls 그래픽그리기시에오브젝트전체를다시그릴것인지의여부. Columns 리스트상자의스크롤방향. ControlBox 실행시, 폼에컨트롤메뉴상자를표시할것인지의여부. Count 로드되어있는폼, 폼상의컨트롤의수. CurrentX 표시시작점의 X좌표. CurrentY 표시시작점의 Y좌표. Data 데이터가저장된메모리나 GDI 오브젝트의핸들. DataBindingBehavior 오브젝트를데이터소스와바인드하는방법을지정. DataChanged 현재컨트롤내에있는데이터는커렌트코드내의데이터와다르게할지의여부. DataField 연결되어있는데이터베이스의필드명설정. DataFormat 연결되어있는 ADO 데이터컨트롤에서, 이 control에표시할데이터형식의설정. DataMember 연결되어있는 ADO 데이터컨트롤이참조할데이터세트의데이터멤버명을설정. DataSource 연결할데이터컨트롤명을디자인시에설정. DataSourceBehavior 데이터소스로써기능할것인지의여부. DataText OLE 오브젝트의문자열. 부 - 14
속성 Default 디폴트가되는커맨드버튼. DisplayType 오브젝트의표시형태설정. 기능 DownPicture 컨트롤을클릭하여아래로눌려진상태일때에표시시킬그림설정. DragIcon 드래그앤드롭조작시에포인터가되는아이콘. DragMode 드래그앤드롭조작시의모드. DrawMode 그래픽의외관. DrawStyle 그래픽메소드에서사용하는선의종류. DrawWidth 그래픽메소드에서사용하는선의폭. Drive 드라이브리스트상자에서실행할때에선택되어있는드라이브의확보와설정. Enabled 오브젝트가이벤트를인식할것인지의여부. EXEName 실행가능파일의루트명. FileName 파일리스트상자에서선택되어있는파일의파일명. FileNumber OLE 오브젝트의저장, 로드시의파일번호. FillColor 도형내부채우기 FillStyle 도형내부를채우기한패턴. FontBold 폰트 ( 글꼴 ) 의볼드지정. FontCount 이용가능한폰트의개수를확보. FontItalic 이탤릭체의폰트지정. FontName 폰트지정. Fonts 폰트명확보. FontSize 폰트크기설정. FontStrikeThru 폰트의취소선지정. FontTransparent 폰트의배경을투과하여표시. FontUnderline 폰트의아랫선지정. ForeColor 폰트의색. Format 서버애플리케이션의데이터설정, 확보시의데이터형식. HasDC 디스플레이문맥을컨트롤로할당할것인지의여부. hdc 디바이스문맥의핸들. Height 오브젝트의높이. HelpContextID 도움말에대응하는문맥번호. HelpFile 애플리케이션의도움말파일의이름. Hidden 파일리스트상자에숨겨진속성의파일을표시할것인지의여부. HideSelection 컨트롤이포커스가잘못되었을때, 선택되어있는텍스트를강조하여표시할것인지의여부. HostName 클라이언트애플리케이션의이름. hwnd 오브젝트의핸들. Icon 폼을아이콘화하는경우의아이콘. Image 계속표시속성을갖고있는비트맵에대응하는핸들. IMEMode 컨트롤이포커스를갖고있는경우에지정되는 IME 모드. Index 컨트롤배열내의컨트롤을특정하게하는번호. 부 - 15
속성 기능 Instancing ActiveX 클래스모듈의인스턴스동작을설정. IntegralHeight 모든항목이리스트상에표시될수있도록리스트의높이를자동적으로변경할것인지의여부. Interval 타이머컨트롤의타이머이벤트가발생하는시간간격. ItemData 콤보상자나리스트상자의각항목의번호. Key 컬렉션내의고유의멤버를인식하는문자열. KeyPreview 폼과컨트롤의키보드이벤트의실행순서. LargeChange 스크롤바를클릭하는경우의스크롤량. LBound 컨트롤배열의인덱스번호의최소값. Left 오브젝트의왼쪽끝과컨테이너왼쪽끝의거리. LinkItem DDE 통신에서데스티네이션컨트롤로넘어가는데이터. LinkMode DDE 통신의링크타입. LinkTimeout DDE 메시지에대한컨트롤의대기시간. LinkTopic DDE 통신으로수신된데이터. List 리스트항목. ListCount 리스트항목수. ListIndex 선택되어있는리스트항목의인덱스번호. Locked 텍스트또는행을변경할수없도록록 ( 잠금 ) 할것인지의여부. lpoleobject OLE 오브젝트의어드레스. MaskColor 컨트롤의그리기에서마스크 ( 투명 ) 되는색설정. Max Value 속성의최대값. MaxButton 폼에최대화버튼을표시할것인지의여부. MaxLength 텍스트상자의텍스트속성의길이. MDIChild 폼을 MDI 폼의하위폼으로할것인지의여부. Min Value 속성의최소값. MinButton 폼에최소화버튼을표시할것인지의여부. MiscFlags 이용하는확장기능의설정. MouseIcon MousePointer 속성을 99 로설정한경우에사용하는사용자정의아이콘의설정. MousePointer 마우스포인터의종류. Moveable 폼을이동할수있게할것인지의여부. MultiLine 텍스트상자에서복수행입력할수있게할것인지의여부. MultiSelect 리스트상자에서복수의항목을선택할수있게할것인지의여부. Name 프로그램에서참조하는오브젝트의이름. Negotiate 활성오브젝트의툴바를표시하는경우에, 컨트롤을표시할것인지의여부. NegotiateMenus 폼메뉴바에폼상의오브젝트에서메뉴를취급할것인지의여부. NegotiatePosition 최상위레벨의메뉴컨트롤을메뉴바에표시할것인지의여부. NegotiateToolbars 활성오브젝트의툴바를, MDI 폼상에표시할것인지의여부. NewIndex 리스트상자에최후에부가된항목의인덱스번호. Normal 파일리스트상자에기본속성의파일을표시할것인지의여부. Object 오브젝트또는오브젝트의속성또는메소드의확보. 부 - 16
속성 기능 ObjectAcceptFormats 오브젝트에수납할수있는데이터형식의일람. ObjectAcceptFormatsCoun 수납할수있는데이터형식일람에포함된요소의수. t ObjectGetFormats 오브젝트가제공할수있는데이터형식일람. ObjectGetFormatsCount 제공할수있는데이터형식일람에에포함된요소의수. ObjectVerbFlags OLE 동작에대응하는메뉴의상태. ObjectVerbs 오브젝트가지원하는일련의 OLE 동작. ObjectVerbsCount 오브젝트가지원하는 OLE 동작의수. OLEDragMode OLE 드래그앤드롭조작의처리를프로그램이수행할것인지의여부. OLEDropAllowed OLE 컨테이너가드롭타겟이될지의여부. OLEDropMode control이드롭조작을처리하는방법. OLEType OLE 컨테이너중의오브젝트의상태. OLETypeAllowed OLE 컨테이너에들어갈수있는오브젝트의형식. Page 인쇄시현재의항번호. Palette 컨트롤에서사용하는팔레트가저장된비트맵이미지의설정. PaletteMode 오브젝트에배치된컨트롤에서사용하는팔레트모드의설정. Parent 컨트롤이나하위폼의기본에해당하는폼. PasswordChar 텍스트상자에서경로를워드로입력할때의표시문자열. Paste확인 클립보드의내용을 OLE클라이언트컨트롤에붙여넣기할수있게할것인지의여부. Path 현재전개되어있는디렉토리의절대경로. Pattern 파일리스트상자에표시할파일명의패턴. Persistale 오브젝트가인스턴스사이에서데이터를저장, 복원할수있게할것인지의여부. Picture 컨트롤내에표시할비트맵또는아이콘. Public 컨트롤을다른애플리케이션과공유할수있게할것인지의여부. ReadOnly 파일리스트상자에읽기전용의속성파일을표시할것인지의여부. RightToLeft 텍스트의표시방향을표시하는풀값. ScaleHeight 오브젝트의수직방향의길이. ScaleLeft 오브젝트의왼쪽끝의수평좌표. ScaleMode 오브젝트의좌표계의단위. ScaleTop 오브젝트의위쪽끝의수직좌표. ScaleWindth 오브젝트의수평방향의길이. ScrollBars 수평및수직스크롤바의설정. SelCount 리스트상자컨트롤에서선택되어있는항목의수. Selected 리스트상자내의항목이선택상태로되어있는지의여부. SelLength 선택되어있는텍스트의문자수. SelStart 선택되어있는텍스트의시작점. SelText 선택되어있는텍스트의문자열. Shape 모양컨트롤의유형. Shortcut 메뉴의단축키. ShowInTaskbar 폼오브젝트를태스크바에표시시킬것인지의여부. 부 - 17
속성 기능 SizeMode 오브젝트가입력되었을때의 OLE 컨테이너의크기나이미지를표시하는방법의설정. SmallChange 스크롤바의스크롤화살표를클릭하는경우의스크롤량. Sorted 리스트상자내의항목을자동적으로소트 ( 정렬 ) 할것인지의여부. SourceDoc 파일을기준으로 OLE 오브젝트를작성할때의파일명. SourceItem 파일을기준으로 OLE 오브젝트를작성할때의데이터. StartUpPosition 폼의초기표시위치의설정. Stretch 이미지컨트롤의크기에맞도록그림의크기를변경할수있게할것인지의여부. Style 콤보상자의종류. System 파일리스트상자에시스템속성의파일을표시할것인지의여부. TabIndex Tab 키로컨트롤의포커스를이동할때의순서. TabStop Tab 키를사용하여포커스를이동할때, 이오브젝트에포커스가옮겨질것인지의여부. Tag 프로그램에서참조하기위한데이터를저장할문자열. Text 텍스트상자, 콤보상자, 클립상자에표시할텍스트. ToolTipText 실행시에 control상에마우스가위치할때표시할텍스트의설정. Top 오브젝트의위쪽끝과컨테이너의위쪽끝간의거리. TopIndex 리스트상자에서가장위쪽끝에표시할항목. TwipsPerPixelX 오브젝트의수평방향의픽셀당 twip수. TwipsPerPixelY 오브젝트의수직방향의픽셀당 twip수. UBound 컨트롤배열내의컨트롤인덱스번호의최대값. UpdateOptions 서버와의링크종류. UseMaskColor MaskColor 속성으로설정한색을마스크색으로하여사용할것인지의여부. UseMnemonic Caption 속성의문자열에앰퍼샌드를사용하여액세스키를정의할것인지의여부. Value 체크상자, 옵션버튼이선택되어있는위치ㆍ스크롤바의현재위치. Verb OLE 오브젝트가활성화되어있을때에실행하는조작. Visible 오브젝트를화면에표시할것인지의여부. WhatsThisButton 폼의타이틀바에 [?] 버튼을표시할것인지의여부. WhatsThisHelp 문맥도움말과메인도움말창중에어느것을사용할것인지의여부. WhatsThisHelpID 오브젝트에대응하는도움말항목의문맥번호설정. Width 오브젝트의폭. WindowList 메뉴를사용하여 MDI 하위창의관리를할것인지의여부. WindowState 폼창의표시상태. WordWrap 라벨의폭을 Caption 속성에대응하여넓혀지게할것인지의여부. X1, X2, Y1, Y2 선컨트롤의시작점 (X1, Y1), 종료점 (X2, Y2) 의좌표. 부 - 18
부 1.7 메소드일람 메소드 기능 AddItem 리스트상자, 클립등에항목을추가. Arrange MDI 폼상의창, 아이콘을정렬. Circle 원, 타원, 원호그리기. Clear 리스트상자의내용클리어. Close 오브젝트를닫고오브젝트를제공하고있는애플리케이션과의접속을종료. Cls 텍스트, 그래픽의클리어. Copy OLE 컨테이너의오브젝트를클립보드에복사. CreatEmbed 매립오브젝트를작성. CreateLink 파일의내용에서링크오브젝트를작성. Delete 지정된오브젝트를삭제하고할당된메모리를해제. DoVerb OLE 오브젝트가실행될 OLE 동작을설정. Drag 컨트롤의드래그동작을지정. Enddoc 인쇄디바이스나출력을스풀링으로처리. FetchVerbs 오브젝트가지원하는 OLE 동작의일람갱신. GetData 클립보드에로드되어있는그림을반환. GetFormat 클립보드내의데이터의형식을반환. GetText 클립보드에서텍스트문자열을반환. Hide 폼을숨기기로한다. Item 정수또는키문자열로지정한 Collection 오브젝트의멤버를반환. Line 오브젝트에선또는사각형을그린다. LinkExecute DDE통신의소스애플리케이션으로커맨드문자열을전송. LinkP확인e DDE통신의소스애플리케이션으로컨트롤의내용을전송. LinkRequest DDE통신의소스애플리케이션으로컨트롤내용의갱신을요구. LinkSend DDE통신의데스티네이션애플리케이션으로그리기컨트롤의내용을전송. Move 폼이나컨트롤의이동. NewPage 현재의페이지를종료하고, 다음페이지로이동. OLEDrag OLE 드래그앤드롭조작의시작. PaintPicture 폼, 그리기상자, Printer 오브젝트상의임의의위치에그래픽그리기. Paste 클립보드에서 OLE 컨테이너에데이터를첨부. PasteSpecialDlg 형식을선택하여붙여넣기 대화상자의표시. Point 폼이나그리기상의지정된점의색확보. PopupMenu 현재의마우스의위치또는지정된좌표에단축키메뉴를표시. Print 현재설정되어있는폰트와색으로오브젝트에문자열을출력. PrintForm 폼상의비트단위의이미지를프린터에전송. PSet 지정한색으로오브젝트에점그리기. 부 - 19
메소드 기능 ReadFromFile SaveToFile 메소드로작성한데이터파일에서오브젝트읽기. Refresh 폼이나컨트롤을강제적으로갱신. Remove 컬렉션에서항목삭제. RemoveItem 리스트상자, 콤보상자에서항목을삭제하고, 클립에서행을삭제. SaveToFile 데이터파일에오브젝트를저장. SaveToOle1File 오브젝트를 OLE Version 1.0 파일의형식으로저장. Scale 컨트롤의좌표계를정의. ScaleX/ScaleY ScaleMode 속성으로설정되어있는단위에서다른단위로변환. SetData 그리기를클립보드에전송. SetFocus 지정된컨트롤또는폼으로포커스를옮김. SetText 텍스트문자열을클립보드에전송. Show 폼을표시. ShowWhatsThis 도움말파일에서선택된항목을문맥도움말을사용하여표시. TextHeight 텍스트문자열을현재의폰트로출력하는경우의높이를반환. TextWidth 텍스트문자열을현재의폰트로출력하는경우의폭을반환. Update 오브젝트를제공한애플리케이션에서최신의데이터를수신하고, OLE 컨테이너에이데이터를그래픽데이터로써표시. WhatsThisMode 마우스포인터를도움말포인터로변경하고, 문맥도움말을표시할수있는상태로한다. ZOrder 지정한폼, 컨트롤과동일한계층내에서 Z 오더를변경. 부 - 20
부 1.8 함수일람 함 수 기능 Abs 수식의절대값을반환. Array 배열데이터를갖고있는베리언트형의값을반환. Asc 지정한문자열내에있는선두문자의문자코드를반환. Atn 지정한값의아크탄젠트를배정밀도의부동소수점형으로반환. CallByName 지정한오브젝트의메소드실행또는속성값의확보, 설정. CBool 수치또는문자열을루프형으로변환. CByte 수치또는문자열을바이트형으로변환. CDate 수치또는문자열을날짜형으로변환. CCur 수치또는문자열을통화형으로변환. CDbl 수치또는문자열을배정밀도의부동소수점형으로변환. Choose 인수리스트에서값을선택하여반환. Chr, Chr$ 지정한 ASCII코드에대응하는문자열을반환. CInt 수치또는문자열을정수형으로변환. Clng 수치또는문자열을 long( 긴 ) 타입의정수형으로변환. Command, Command$ VisualBasic의기동시에지정된커맨드의문자열을반환. Cos 지정한각도의코사인값을반환. CreateObject OLE 오토메이션오브젝트의작성. CSng 수치또는문자열을단정밀도의부동소수점형으로변환. CStr 수치또는문자열을문자열형으로변환. CurDir, CurDir$ 지정한드라이브의현재의경로를반환. CVar 수치또는문자열을베리언트형으로변환. CVDate 지정한식을 VarType7( 날짜 ) 의베리언트형으로변환. Date, Date$ 현재의날짜를표시하는문자열을반환. DateAdd 지정된시간간격을가산한날짜의문자열을반환. DateDiff 2개의지정한날짜의시간간격을표시하는문자열을반환. DatePart 날짜의지정한부분을포함하는문자열을반환. DateSerial 인수로지정한년, 월, 일에대응하는문자열을반환. DateValue 문자열로지정된날짜를표시하는시리얼값을반환. Day 날짜의시리얼값에서일 ( 日 ) 을반환. DDB 배율법등의지정한방법을사용하여특정한기간의자산의감가상각비를반환. Dir, Dir$ 지정한파일패턴이나속성에대응하는파일명을반환. DoEvents 발생한이벤트가오퍼레이팅시스템에의해처리되도록프로그램에서점유된제어를오퍼레이팅시스템으로넘긴다. Environ, Environ$ OS 의환경변수에할당된문자열을반환. EOF 파일의현재위치가파일의끝에도달하고있는지를조사한다. Error, Error$ 지정한에러번호에대응하는에러메시지를반환. 부 - 21
함 수 기능 Exp 지수함수. FileAttr 파일의모드또는 OS의파일핸들의정보를반환. FileDateTime 파일의작성, 갱신일시를표시하는문자열을반환. FileLen 파일의길이를반환. Filter 지정된필터조건을기준으로한문자열배열의서브셋을포함하는제로베이스의배열을 반환. Fix 값의소수부를버리고, 정수부만을반환. Format, Format$ 서식에따라서수치, 날짜, 시간, 문자열을반환. FormatCurrency 시스템의 [ 컨트롤패널 ] 로정의되어있는서식을사용하여통화형식의문자열로변환. FormatDateTime 날짜형식또는시각형식의문자열을반환. FormatNumber 수치형식의문자열을반환. FormatPercent 100으로환산한퍼센트형식의식으로퍼센트기호를부가하여반환. FreeFile 다음에사용가능한파일번호를반환. FV 정액의지불을정기적으로실행하고, 이율이일정하다고가정하고투자의미래가치를반환. GetAllsettings Windows의레지스트리에있는애플리케이션의목록에서키설정값의일람을확보. GetAttr 파일, 디렉토리, 볼륨라벨의속성을반환. GetObject OLE 오토메이션오브젝트의확보. GetSetting Windows의레지스트리에있는애플리케이션의항목에서키설정값을확보. Hex, Hex$ 수치를 16진수로표시한문자열을반환. Hour 날짜시각의시리얼값에서시 (0~23) 를표시하는정수값을반환. IIf 식의평가결과에따라, 2개의인수중에서 1개를반환. IMEStatus IME의현재의상태를확보. Input, Input$ 시퀀셜파일에서지정한길이의문자열을읽고그값을반환. InputB, InputB$ 시퀀셜파일에서지정한길이의문자열을읽고그값을리턴 ( 반환 ). InputBox, InputBox$ 대화상자에프롬프트를표시하고, 텍스트상자의내용을반환. InStr 보관된문자열에서지정된문자열을찾은문자의위치를반환. InStrB 보관된문자열에서지정된문자열을찾은바이트의위치를반환. InstrRev 보관된문자열의역방향으로지정된문자열을찾은문자의위치를반환. Int 값의소수부를버리고, 이보다작은정수값을반환. IPmt 투자기간내의지정한기간에지불할금리를반환. IRR 일련의정기적인캐시플로 ( 흐름 ) 에대한내부이익률을반환. IsArray 베리언트형인수가배열인지를리턴 ( 반환 ). IsDate 베리언트형인수를날짜형으로변환할수있게할것인지의여부를반환. IsEmpty 베리언트형인수가 Empty값인지를반환. IsError 베리언트형인수가에러값인지를반환. IsMissing 지정된인수가소실되지않았는지를반환. IsNull 베리언트형값이 Null인지를반환. IsNumeric 베리언트형인수를수치로변환할수있게할것인지의여부를반환. 부 - 22
함 수 기능 IsObject 식이실제로오브젝트를참조하고있는지를반환. Join 배열에포함된각요소의내부문자열을결합하고작성된문자열을반환. LBound 배열첨자의최소값을반환. LCase, LCase$ 알파벳대문자를소문자로변환. Left, Left$ 문자열의왼쪽끝에서지정한문자수만큼의문자를발췌. LeftB, LeftB$ 문자열의왼쪽끝에서지정한바이트수만큼의문자를발췌. Len 문자열의문자수, 변수의바이트수를반환. LenB 문자열의바이트수, 변수의바이트수를반환. LoadPicture 그림을로드. LoadResData 리소스파일에서로드가능한형식의데이터를로드하고바이트형배열을반환. LoadResPicture 리소스파일에서비트맵, 아이콘또는커서를로드. LoadResString 리소스파일에서문자열을로드. Loc 파일의현재의위치를반환. LOF 파일의길이를바이트단위로반환. Log 자연대수. LTrim, LTrim$ 문자열에서선두의스페이스를삭제. Mid, Mid$ 문자열에서지정한문자수만큼의문자열을반환. MidB, MidB$ 문자열중에서지정한바이트수만큼의문자를반환. Minute 날짜시각의시리얼값에서분 (0~59) 을표시하는정수값을반환. MIRR 캐시플로 ( 흐름 ) 를기준으로하여수정된내부이익률을반환. Month 날짜시각의시리얼값에서월 (1~12) 을표시하는정수값을반환. MonthName 지정된월을표시하는문자열을반환. MsgBox 메시지상자를표시. Now 현재의날짜시각을표시하는시리얼값을반환. NPer 인수를기준으로하여투자에필요한기간을반환. NPV 인수를기준으로하여투자한미래의가치를현재의가치로환산하여반환. Oct, Oct$ 8진수로표시한문자열을반환. Partition 값이분할된복수의범위중에서, 어떤범위에포함되는지를표시하는문자열을반환. Pmt 인수를기준으로하여투자에필요한정기지불액을반환. PPmt 인수를기준으로하여지정한기간에지불되는원금을반환. PV 인수를기준으로하여투자의현재가치를반환. QBColr 기존의 QuickBasic에서사용하던색번호에대응하는 RGB코드를표시하는값을반환. Rate 인수를기준으로하여투자기간을통하여얻는이율을반환. Replase 지정된문자열의일부를별도의문자열로지정된횟수만큼변환한문자열을반환. RGB 색의 RGB값을반환. Right, Right$ 문자열의오른쪽끝에서지정한문자수만큼의문자를발췌. RightB, RightB$ 문자열의오른쪽끝에서지정한바이트수만큼의문자를발췌. 부 - 23
함수기능 Rnd 난수를발생한다. Round 지정된소수점이후를버리고난수치를반환. RTrim, RTrim$ 문자열의오른쪽끝의스페이스를삭제. Second 날짜시각의시리얼값에서초를반환. Seek 파일의현재위치를반환. Sgn 값의부호를반환. Shell 지정한프로그램을기동. Sin 지정한각도의사인값을반환. SLN 인수를기준으로하여정액법에의한자산의 1 기당감가상각비를반환. Space, Space$ 지정한개수의스페이스를반환. Spc Print#, Print 메소드중에서사용하고, 지정한개수의스페이스를반환. Split 각요소별로분리한문자열에서 1 차원배열을작성하여반환. Sqr 평방근을반환. Str, Str$ 수치를 10 진문자열로변환. StrComp 2 개의문자열을비교. StrConv 지정한문자열로변환. String, String$ 지정한문자코드를표시하는문자또는문자열의선두문자를, 지정한문자수만나열한문자열을반환. StrReverse 지정된문자열의문자를거꾸로나열한문자열을반환. Switch 식의리스트를평가하여리스트중에서참이된최초의조건식에대응하는값을반환. SYD 인수를기준으로하여연수합계법으로계산한지정한기간동안의감가상각을반환. Tab Print, Print 메소드중에서사용하고, 다음의문자의출력위치를지정. Tan 지정한각도의탄젠트값을반환. Time, Time$ 현재의시각을표시하는문자열을반환. Timer 오전 0 시에서경과한초수를반환. TimeSerial 지정한시간, 분, 초에대응하는시리얼값을반환. TimeValue 지정된시각의시리얼값을반환. Trim, Trim$ 문자열의선두와오른쪽끝의스페이스를삭제. TypeName 변수에관한정보를제공하는문자열형문자열을반환. UBound 배열번호의최대값을반환. UCase, UCase$ 알파벳의소문자를대문자로변환. Val 문자열을수치로변환. VarType 인수에서표시하는베리언트형데이터의타입을반환. Weekday 날짜의시리얼값에서요일을표시하는정수값을반환. WeekdayName 지정된요일을표시하는문자열을반환. Year 날짜의시리얼값에서년을표시하는정수값을반환. 부 - 24
부 2 MX Component 부 2.1 MX Component 로할수있는것 MX Component를사용하면, Visual Basic R, Visual C++ R, VBScript, VBA로작성한애플리케이션으로써다양한통신경로로써 PLC CPU에액세스할수있습니다. 본교재에서는 Visual Basic R 으로써애플리케이션을작성하고, Ethernet을경유하여 PLC CPU에액세스하도록합니다. (1) PLC 에대한통신경로를폭넓게지원 PLC 로의통신경로를폭넓게지원하고있으므로, 사용자에부합하는시스템구 축이가능합니다. 부 - 25
(2) 사용자개발효율의대폭적인향상 MX Component는위저드형식의통신설정유틸리티를준비하고있습니다. 사용자는화면상에서대화형식의설정을통해통신하고자하는 PLC CPU에액세스하기위한통신설정을실현할수있습니다. 또한, 한번통신설정을실시하면통신설정유틸리티에서기억한 PLC CPU의논리국번을지정하는것만으로액세스할수있습니다. (3) 통신설정의내용저장, 읽기가가능 MX Component는통신설정유틸리티에서설정한통신설정내용을파일에저장하고읽는기능을갖고있습니다. 개발용 DOS/V PC에서실제로사용하는 DOS/V PC로설정데이터가간단하게이행됩니다. 주 ) 개발용 DOS/V PC 및실제로사용하는 DOS/V PC에는 MX Component가인스톨되어있을필요가있습니다. (4) 디바이스모니터기능 PLC 모니터유틸리티를이용함으로써, 지정한디바이스의상태를감시하고, 데이터를변경할수있습니다. (5) 특수기능모듈의버퍼메모리에액세스가능 PLC CPU 의디바이스뿐만아니라, 특수기능모듈의버퍼메모리에액세스할수 있습니다. 부 - 26
(6) PLC CPU 의시계데이터읽기 / 쓰기가가능 DOS/V PC 와접속된 PLC CPU 의시계데이터를읽기, 쓰기할수있습니다. (7) 멀티스레드통신이가능 복수의스레드에서동시에같은통신경로에대한액세스가가능합니다. (8) GX Simulator 를사용하여오프라인에서의디버그가가능 GX Developer 와 GX Simulator 를사용함으로써, PLC 를접속하지않고 1 대의 DOS/V PC 상에서디버그할수있습니다. 포인트 GX Simulator 를사용하는경우는 GX Developer 와 GX Simulator 가별도로필요합니다. 부 - 27
(9) 다양한프로그램언어를지원 Visual Basic R, Visual C++ R 은물론 MX Component 는 VBScript 및 VBA 를지원 하고있습니다. (a) VBScript 에의한모니터링페이지작성가능 1 HTML 형식으로모니터링페이지작성가능 텍스트에디터를사용하여그래픽한모니터용홈페이지 (HTML 형식 ) 를 작성할수있습니다. Visual Basic R, Visual C++ R 등을별도로구입할필요가없습니다. Internet Explorer 에서모니터가능 MX Component Version 2 Web 브라우저 Internet Explorer 5.0 이후 PLC 모니터용 HTML MELSECNET/H 등 2 ASP기능에의한인터넷ㆍ인트라넷을경유하는모니터가능 VBScript의 ASP기능을이용하고, 공장 (MX Component에서모니터링을하는쪽 ) 의 Web 페이지를공개함으로써, Internet Explorer에서공장의 URL을지정하는것만으로, 인터넷 / 인트라넷을경유하여원격지나출장지에서도 PLC의디바이스상태, 이상발생시의리모트조작을실행할수있습니다. < 공장용 > MX Component Version 2 PLC 액세스용 ASP 인터넷인트라넷 Web 서버 Internet Infomation Server 4.0 Internet Infomation Server 5.0 Personal Web Server 4.0 MELSECNET/H 등 < 사무실용 > Web 브라우저 Internet Explorer 5.0 이후 부 - 28
(b) VBA에의한데이터수집, 모니터링기능 VBA(*1) 로프로그램을실행함으로써, Excel 2000 및 Access 2000의기능을이용하고, 리얼타임으로그래프를표시하고애플리케이션을작성할수있습니다. PLC의디바이스데이터를로깅하고, 리얼타임으로디바이스데이터를수집ㆍ저장할수있습니다. <Excel 2000> <Access 2000> *1 Microsoft R 사의모든애플리케이션의공통매크로언어입니다. (10)QCPU(Q 모드 ) 의멀티 CPU 시스템에대응 통신설정유틸리티또는 ACT 컨트롤의속성을설정함으로써, 멀티 CPU 시스템 에액세스할수있습니다. (11)PC CPU 모듈상에서동작가능 PC CPU 모듈에서 Q 시리즈버스통신으로동일한베이스상의 QCPU(Q모드 ) 에액세스할수있습니다. 또한, MELSECNET/H 통신용컨트롤및 CC-Link 통신용컨트롤을사용함으로써, PC CPU 모듈이관리하고있는 MELSECNET/H모듈및 CC-Link모듈을경유하는다른국에액세스할수있습니다. QCPU ( Q모드 ) QCPU(Q모드 ) 등 PC CPU 모듈 MELSECNET/H CC-Link QCPU(Q 모드 ) 등 부 - 29
부 2.2 함수일람 MX Component의함수에대해설명합니다. (1)~(4) 에본교재에서사용하고있는함수의상세내용을기재하였습니다. 그밖의함수의상세내용은 MX Component Version2 프로그래밍매뉴얼을참조하십시오. 함수명 기능 Open 통신회선의오픈. (1) 참조 Close 통신회선의클로즈. (2) 참조 ReadDeviceBlock 디바이스의일괄읽기. WriteDeviceBlock 디바이스의일괄쓰기. ReadDeviceRandom 디바이스의랜덤읽기. (3) 참조 WriteDeviceRandom 디바이스의랜덤쓰기. (4) 참조 SetDevice 디바이스 1점을설정. GetDevice 디바이스 1점의데이터확보. ReadBuffer 버퍼메모리의읽기. WriteBuffer 버퍼메모리의쓰기. GetClockData PLC CPU의시계데이터읽기. SetClockData PLC CPU의시계데이터쓰기. GetCpuType PLC CPU 형명읽기. SetCpuStatus PLC CPU 의리모트 RUN/STOP/PAUSE. EntryDeviceStatus 디바이스의상태감시등록. FreeDeviceStatus 디바이스의상태감시등록해제. OnDeviceStatus 이벤트통지. 부 - 30
(1) Open( 통신회선의오픈 ) (a) 기능통신회선을오픈합니다. (b) 서식 Visual Basic R, Visual C++ R, VBA:lRet = object.open() Long lret 반환값 Output VBScript:varRet = object.open() VARIANT varret 반환값 ( 내용은 LONG형 ) Output (c) 설명 Open 메소드용속성의설정값을기준으로회선의접속을실행합니다. (d) 반환값정상종료 :0을반환. 이상종료 :0 이외를반환 ( 부2.3을참조 ) 포인트 (1) Open 완료후에 Open 메소드용속성을변경하여도, 통신상대는변경되지않습니다. 통신설정을변경한경우는한번통신회선을클로즈한 ( 닫은 ) 다음에, 통신상대설정을실행하고, 다시통신회선을오픈하십시오. (2) Open 할때에는속성 ActCpuType 에통신을실행한 CPU 와다른 CPU 타입을입력한경우에도, Open 이정상적으로종료할수있습니다. 이러한경우, 접속범위, 사용가능메소드및디바이스범위가좁아지는등의현상이발생합니다. Open 할때에는속성 ActCpuType 에올바른 CPU 타입을설정하십시오. (2) Close( 통신회선의클로즈 ) (a) 사용가능 ACT 컨트롤모든 ACT 컨트롤에서사용가능합니다. (b) 기능통신회선을클로즈합니다. (c) 서식 Visual Basic R, Visual C++ R, VBA:lRet = object.close() Long lret 반환값 Output VBScript:varRet = object.close() VARIANT varret 반환값 ( 내용은 LONG형 ) Output (d) 설명 Open함수로접속한회선을클로즈합니다. (e) 반환값정상종료 :0을반환. 이상종료 :0 이외를반환 ( 부2.3을참조 ) 부 - 31
(3) ReadDeviceRandom( 디바이스의랜덤읽기 ) (a) 사용가능 ACT 컨트롤 모든 ACT 컨트롤에서사용가능합니다. (b) 기능 디바이스의랜덤읽기를실행합니다. (c) 서식 Visual Basic R, VBA:lRet = object.readdevicerandom(szdevicelist, lsize, ldata(0)) Long lret 반환값 Output String szdevicelist 디바이스명 Input Long lsize 읽은점수 Input Long ldata(n) 읽은디바이스값 Output Visual C++ R :lret = object.readdevicerandom(szdevicelist, lsize, *lpldata) Long lret 반환값 Output CString szdevicelist 디바이스명 Input Long lsize 읽은점수 Input Long * lpldata 읽은디바이스값 Output VBScript :varret = object.readdevicerandom(vardevicelist, varsize, lpvardata) VARIANT varret 반환값 ( 내용은 LONG형 ) Output VARIANT vardevicelist 디바이스명 ( 내용은문자열형 ) Input VARIANT varsize 읽은점수 ( 내용은 LONG형 ) Input VARIANT lpvardata 읽은디바이스값 ( 내용은 LONG배열형 ) Output (d) 설명 ㆍszDeviceList(varDeviceList) 에서지정한디바이스군을 lsize(varsize) 분의디바이스값만읽습니다. ㆍ읽은디바이스값은 ldata(lpldata 또는 lpvardata) 에저장됩니다. ㆍ디바이스리스트에지정하는문자열은행바꾸기기호로구분하여주십 시오. 최종디바이스뒤에는행바꾸기기호가필요하지않습니다. ( 예 ) Visual Basic R, VBA, VBScript : D0 & vblf & D1 & vblf & D2 Visual C++ R :D0 nd1 nd2 ㆍlData(lplData 또는 lpvardata) 는 lsize(varsize) 이상의배열을확보하 십시오. 부 - 32
(e) 디바이스지정방법 디바이스의지정방법에대해설명합니다. ( 예 1) 아래와같이지정한경우 ( 점수는 3 점 ) Visual Basic R, VBA, VBScript 사용시 :M0 & vblf & D0 & vblf & K8M0 Visual C++ R 사용시 :M0 nd0 nk8m0 상위 2 바이트 하위 2 바이트 *1 M0 *1 D0 M16~M31 *2 M0~M15 *2 ( 예 2) FXCPU 의 CN200 이후를포함하는디바이스를지정한경우 ( 점수는합계 3 점 ) *3 Visual Basic R, VBA, VBScript 사용시 :D0 & vblf & CN200 & vblf & D1 Visual C++ R 사용시 :D0 ncn200 nd1 상위 2 바이트 하위 2 바이트 *1 D0 CN200 의 H CN200 의 L *1 D1 ( 예 3) FD 를포함하는디바이스를지정한경우 ( 점수는합계 3 점 ) Visual Basic R, VBA, VBScript 사용시 :D0 & vblf & FD0 & vblf & D1 Visual C++ R 사용시 :D0 nfd0 nd1 상위 2 바이트 하위 2 바이트 *1 D0 *1 FD 의 LL *1 D1 *1: 사용하지않습니다 (0 이저장됩니다.) *2: 디바이스의번호순으로하위비트부터저장됩니다. *3:FXCPU 의 CN200 이후는랜덤읽기시에 1 점에 2 워드분을읽습니다. (f) 반환값 정상종료 :0 을반환. 이상종료 :0 이외를반환 ( 부 2.3 을참조 ) 포인트 (1) lsize(varsize) 로지정할수있는최대읽기점수는 0x7FFFFFFF 점까지입니다. (2) ldata(lpldata 또는 lpvardata) 는 lsize(varsize) 에지정한점수만큼의메모리영역을준비하십시오. 메모리영역이없는경우는애플리케이션에러등중대한현상이발생할가능성이있습니다. 부 - 33
(4) WriteDeviceRandom( 디바이스의랜덤쓰기 ) (a) 사용가능 ACT 컨트롤 모든 ACT 컨트롤에서사용가능합니다. (b) 기능 디바이스의랜덤쓰기를실행합니다. (c) 서식 Visual Basic R, VBA:lRet = object.writedevicerandom(szdevicelist, lsize, ldata(0)) Long lret 반환값 Output String szdevicelist 디바이스명 Input Long lsize 쓰기점수 Input Long ldata(n) 쓰기디바이스값 Input Visual C++ R :lret = object.writedevicerandom(szdevicelist, lsize, *lpldata) Long lret 반환값 Output CString szdevicelist 디바이스명 Input Long lsize 쓰기점수 Input Long * lpldata 쓰기디바이스값 Intput VBScript :varret = object.writedevicerandom(vardevicelist, varsize, vardata) VARIANT varret 반환값 ( 내용은 LONG형 ) Output VARIANT vardevicelist 디바이스명 ( 내용은문자열형 ) Input VARIANT varsize 쓰기점수 ( 내용은 LONG형 ) Input VARIANT vardata 쓰기디바이스값 ( 내용은 LONG배열형 ) Intput (d) 설명 ㆍszDeviceList(varDeviceList) 에서지정한디바이스군을 lsize(varsize) 분의디바이스값만씁니다. ㆍ쓰여진디바이스값을 ldata(lpldata 또는 vardata) 에저장합니다. ㆍ디바이스리스트에지정하는문자열은행바꾸기기호로구분하여주십 시오. 최종디바이스의뒤에는행바꾸기기호가필요없습니다. ( 예 ) Visual Basic R, VBA, VBScript : D0 & vblf & D1 & vblf & D2 Visual C++ R :D0 nd1 nd2 ㆍlData(lplData 또는 vardata) 는 lsize(varsize) 이상의배열을확보하십 시오. 부 - 34
(e) 디바이스지정방법 (f) 반환값 디바이스의지정방법에대해설명합니다. ( 예 1) 아래와같이지정한경우 ( 점수는 3 점 ) Visual Basic R, VBA, VBScript 사용시 :M0 & vblf & D0 & vblf & K8M0 Visual C++ R 사용시 :M0 nd0 nk8m0 상위 2 바이트 하위 2 바이트 *1 M0 *1 D0 M16~M31 *2 M0~M15 *2 ( 예 2) FXCPU 의 CN200 이후를포함하는디바이스를지정한경우 ( 점수는합계 3 점 ) *3 Visual Basic R, VBA, VBScript 사용시 :D0 & vblf & CN200 & vblf & D1 Visual C++ R 사용시 :D0 ncn200 nd1 상위 2 바이트 하위 2 바이트 *1 D0 CN200 의 H CN200 의 L *1 D1 ( 예 3) FD 를포함하는디바이스를지정한경우 ( 점수는합계 3 점 ) Visual Basic R, VBA, VBScript 사용시 :D0 & vblf & FD0 & vblf & D1 Visual C++ R 사용시 :D0 nfd0 nd1 상위 2 바이트 하위 2 바이트 *1 D0 *1 FD 의 LL *1 D1 *1: 사용하지않습니다 (0 이저장됩니다.) *2: 디바이스의번호순으로하위비트부터저장됩니다. *3:FXCPU 의 CN200 이후는랜덤읽기시에 1 점당 2 워드분을읽습니다. 정상종료 :0 을반환. 이상종료 :0 이외를반환 ( 부 2.3 을참조 ) 포인트 (1) lsize(varsize) 에지정할수있는최대쓰기점수는 0x7FFFFFFF 점까지입니다. (2) ldata(lpldata 또는 vardata) 는 lsize(varsize) 에지정한점수만큼의메모리영역을준비하십시오. 메모리영역이없는경우는애플리케이션에러등중대한현상이발생할가능성이있습니다. 부 - 35
부 2.3 에러코드일람 MX Component 를사용할때에 ACT 컨트롤이반환한에러코드및 PLC CPU ㆍ인텔리 전트기능모듈ㆍ네트워크보드가반환한에러코드에대해설명합니다. (1) ACT 컨트롤이반환한에러코드 다음은 ACT 컨트롤이반환한에러코드일람입니다. 에러코드에러내용처리방법 0x00000000 정상종료 0x01010002 0x01010005 0x01010010 0x01010013 0x01010018 0x01010020 RUN 중금지에러 RUN 중에실행하면안되는조작을하였다. 섬체크에러패킷의섬체크내용이이상하다. PLC No. 에러지정한국번에서는통신할수없다. 다른데이터에러무엇인가의원인으로통신할수없다. - STOP 상태로하여실행한다. *1 시스템의노이즈를확인한다. 통신설정유틸리티로써설정한국번을체크한다. ActStationNumber 에설정된국번을확인한다. 시스템구성이지원되지않는구성인지확인한다. CPU 타입이바르게설정되어있는지를확인한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 폐사의서비스센터에문의한다. 리모트요구에러통신중인경로와다른별도의경로를통해리모트별도의경로로실행중인리모트조작을해제한다. 조작이실행중이다. 링크에러링크교신이실행되지않는다. 통신상대또는관리국 ( 마스터국 ), 루틴으로통과하는국에대하여리셋조작을실행하지않았는지를확인한다. 네트워크파라미터의설정이바르게되어있는지를확인한다. 0x01800001 노커맨드에러해당메소드가지원되지않는다. 0x01800002 메모리로그에러프로그램을종료하고, DOS/V PC 를다시기동한다. 0x01800003 메모리확보에러 0x01800004 DLL 로드에러 0x01800005 리소스확보에러 프로그램을종료하고, DOS/V PC 를다시기동한다. 다른프로그램을종료하고, 빈메모리를확보한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 다른프로그램을종료하고, 빈메모리를확보한다. MX Component 를다시인스톨한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 다른프로그램을종료하고, 빈메모리를확보한다. 0x01801002 다중회선오픈에러프로그램을종료하고, DOS/V PC 를다시기동한다. 0x01801003 오픈미실행프로그램을종료하고, DOS/V PC 를다시기동한다. 0x01801005 지정포트에러 0x01801006 지정모듈에러 프로그램을종료하고, DOS/V PC 를다시기동한다. MX Component 를다시인스톨한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. MX Component 를다시인스톨한다. *1: 네트워크보드를경유하는경우, 타임아웃에러의가능성이있습니다. 케이블상태를확인하십시오. 부 - 36
에러코드 에러내용 처리방법 0x01801007 지정 CPU 에러 ActCpuType에설정한 CPU 타입을확인한다. 시스템구성이지원되지않는구성인지를확인한다. 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. ActPacketType에설정한패킷타입을확인한다. 0x01801008 대상국액세스에러 대상국을검토한다. 0x0180100C 레지스트리찾기실패 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x0180100D GetProcAddress 실패 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x0180100E DLL 미로드에러 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x0180100F 0x01802001 0x01802002 0x01802004 0x01802005 0x01802006 0x01802007 0x0180200B 다른 Object 실행중배타제어중에메소드를실행할수없다. 일정한시간을두고다시실행한다. 디바이스에러메소드에지정한디바이스문자열이부정확하다. 디바이스명을검토한다. 디바이스번호에러 메소드에지정한디바이스문자열의번호가부정확디바이스번호를검토한다. 하다. 모듈측의섬체크설정내용을확인한다. 컨트롤의섬체크용속성을확인한다. 섬체크에러케이블을확인한다. 수신한데이터의섬체크값이이상하다. 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 메소드에지정한점수를확인한다. PLC CPU, 모듈의설정및케이블상태등의시스템크기 ( 사이즈 ) 에러을검토한다. 메소드에지정한점수가부정확하다. 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 블록No. 에러메소드에지정한디바이스문자열의블록지정번메소드에지정한디바이스문자열의블록지정호를검토한다. 번호가부정확하다. PLC CPU, 모듈의설정및케이블상태등의시스템 수신데이터에러을검토한다. 수신한데이터가이상하다. 케이블을확인한다. 프로그램을종료하고, DOS/V PC를다시기동한다. 속성의 CPU 타입에올바른 CPU 타입을설정한다. PLC 타입불일치통신설정유틸리티로써올바른 CPU 타입을설정한속성에설정되어있는 CPU 타입및통신설정유틸다. 리티로설정한 CPU 타입이통신상대 CPU와다르 PLC CPU, 모듈의설정및케이블상태등의시스템다. 을검토한다. 부 - 37
에러코드에러내용처리방법 0x01802016 0x0180201C 0x0180201D 0x01802020 0x01802021 0x01802038 국번지정에러메소드가지정한국번에대한조작을지원하지않국번을검토한다. 는다. 쓰기시계데이터에러쓰기지정한시계데이터에오류가있으므로, 정상쓰기시계데이터를검토한다. 적으로쓸수없다. 시계데이터 RUN 중쓰기에러시계데이터의쓰기에실패하였다. PLC CPU를 STOP 상태로한다. PLC CPU가 RUN 중이므로, 시계데이터를쓸수없다. 선두 I/O 번호에러메소드에지정한선두 I/O 번호가부정확한값이다. 메소드에지정할선두 I/O 번호의값을확인한다. GPP 기능으로 PLC 의파라미터 (IO 할당 ) 를확인한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 선두어드레스에러메소드에지정한버퍼어드레스의값을확인한다. 메소드에지정한버퍼어드레스가부정확한값이프로그램을종료하고, DOS/V PC를다시기동한다. 다. 시계데이터읽기 / 쓰기에러시계소자가없는 PLC CPU에대해시계데이터읽시계데이터읽기 / 쓰기를실행하지않는다. 기 / 쓰기메소드를실행하였다. 0x01808001 2 중오픈에러프로그램을종료하고, DOS/V PC 를다시기동한다. 0x01808002 0x01808003 0x01808005 0x01808007 0x01808008 채널번호지정에러속성의포트번호에올바른값을설정한다. 속성을설정한포트번호및통신설정유틸리티에통신설정유틸리티에서통신설정내용을다시설서설정한포트번호가부정확한값이다. 정한다. 드라이버미기동네트워크보드의드라이버가기동되지않는다. 드라이버를기동한다. MUTEX 생성에러프로그램을종료하고, DOS/V PC를다시기동한다. 배타제어를수행하기위한 MUTEX의작성에실패하 MX Component를다시인스톨한다. 였다. 소켓오브젝트생성에러 Socket 오브젝트의생성에실패하였다. 포트접속에러커넥션의확립에실패하였다. 교신상대가응답이없다. 동일한포트번호를사용한애플리케이션을기동하지않았는지를확인한다. 속성의포트번호의값을변경하고리트라이 ( 재시도 ) 한다. 통신설정유틸리티로써포트번호의값을변경하고리트라이 ( 재시도 ) 한다. Ethernet 보드및프로토콜설정내용을 OS 의컨트롤패널로써실행한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 속성의 IP 어드레스및포트번호의값을검토한다. 통신설정유틸리티로써포트번호의값을검토한다. PLC CPU, 모듈의설정및케이블상태등의시스템을검토한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 부 - 38
에러코드에러내용처리방법 0x01808009 0x0180800A 0x0180800B 0x0180800C 0x0180800E 0x0180800D COM 포트핸들에러 COM 포트의핸들을확보할수없다. COM 포트오브젝트를복사할수없다. SOCKET 오브젝트를복사할수없다. 버퍼크기설정에러 COM 포트의버퍼크기의설정에실패하였다. DCB 값확보에러 COM 포트의 DCB 값의확보에실패하였다. DCB 설정에러 COM 포트의 DCB 값의설정에실패하였다. 공유메모리오픈에러공유메모리의오픈처리에실패하였다. 타임아웃값설정에러 COM 포트의타임아웃값의설정에실패하였다. COM 포트를사용하고있는애플리케이션이없는지를확인한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. COM 포트를사용하고있는애플리케이션이없는지를확인한다. COM 포트의설정내용을 OS 의컨트롤패널로써실행한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. COM 포트를사용하고있는애플리케이션이없는지를확인한다. COM 포트의설정내용을 OS 의컨트롤패널로써실행한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. COM 포트를사용하고있는애플리케이션이없는지를확인한다. COM 포트의설정내용을 OS 의컨트롤패널로써실행한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. GX Simulator 가기동하고있는지를확인한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 속성의타임아웃값을검토한다. 통신설정유틸리티로써타임아웃값을검토한다. COM 포트를사용하고있는애플리케이션이없는지를확인한다. COM 포트의설정내용을 OS 의컨트롤패널로써실행한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 0x01808101 2 중클로즈에러프로그램을종료하고, DOS/V PC 를다시기동한다. 0x01808102 0x01808103 0x01808201 0x01808202 0x01808203 0x01808301 핸들클로즈에러 COM 포트의핸들의클로즈에실패하였다. 드라이버클로즈에러드라이버핸들의클로즈에실패하였다. 송신에러데이터송신에실패하였다. 송신데이터크기에러데이터송신에실패하였다. 큐클리어에러 COM 포트의큐클리어에실패하였다. 수신에러데이터수신에실패하였다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. PLC CPU, 모듈의설정및케이블상태등의시스템을검토한다. COM 포트의설정내용을 OS 의컨트롤패널로써실행한다. Ethernet 보드및프로토콜의설정내용을컨트롤패널로써실행한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 한번 Close 하고, 다시 Open 한다. PLC CPU, 모듈의설정및케이블상태등의시스템을검토한다. 속성의타임아웃값을검토한다. 통신설정유틸리티로써타임아웃값을검토한다. 프로그램을종료하고, DOS/V PC 를다시기동한다. 부 - 39
에러코드 에러내용 처리방법 수신버퍼크기부족 0x01808304 수신데이터가시스템에서준비한수신버퍼크기프로그램을종료하고, DOS/V PC를다시기동한다. 보다크다. 0x01808401 0x01808403 컨트롤에러 COM 포트의통신제어변경에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. 신호선지정에러 COM 포트의통신제어변경에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. 오픈을실행한다. 0x01808404 오픈미실행프로그램을종료하고, DOS/V PC를다시기동한다. 통신파라미터에러속성의데이터비트및스톱비트의값을검토한다. 0x01808405 속성의데이터비트및스톱비트의조합이부정확통신설정유틸리티로써다시설정한다. 하다. 보드레이트값지정에러속성의보드레이트값을검토한다. 0x01808406 속성의보드레이트가부정확하다. 통신설정유틸리티로써다시설정한다. 데이터길이에러속성의데이터비트의값을검토한다. 0x01808407 속성의데이터비트의값이부정확하다. 통신설정유틸리티로써다시설정한다. 패리티지정에러속성의패리티의값을검토한다. 0x01808408 속성의패리티의값이부정확하다. 통신설정유틸리티로써다시설정한다. 스톱비트지정에러속성의스톱비트의값을검토한다. 0x01808409 속성의스톱비트의값이부정확하다. 통신설정유틸리티로써다시설정한다. 통신제어설정에러속성의컨트롤의값을검토한다. 0x0180840A 속성의컨트롤의값이부정확하다. 통신설정유틸리티로써다시설정한다. 속성의타임아웃값을검토한다. 통신설정유틸리티로써다시설정한다. 타임아웃에러 PLC CPU, 모듈의설정및케이블상태등의시스템 0x0180840B 타임아웃시간을경과하였으나, 데이터를수신할을검토한다. 수없었다. 한번 Close하고, 다시 Open 한다. 프로그램을종료하고, DOS/V PC를다시기동한다. 0x0180840C 커넥트에러프로그램을종료하고, DOS/V PC를다시기동한다. 0x0180840D 2중커넥트에러프로그램을종료하고, DOS/V PC를다시기동한다. 0x0180840E 0x0180840F 0x01808410 어태치 ( 첨부 ) 실패소켓오브젝트의어태치에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. 신호선상태확보실패 COM 포트의신호선상태의확보에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. PLC CPU, 모듈설정및케이블상태등시스템을 CD신호선 OFF 검토한다. 통신상대 CD신호가 OFF 상태이다. 프로그램을종료하고, DOS/V PC를다시기동한다. 0x01808411 패스워드불일치에러속성의리모트패스워드를확인한다. USB드라이버로드에러프로그램을종료하고, DOS/V PC를다시기동한다. 0x01808501 USB드라이버의로드에실패하였다. MX Component를다시인스톨한다. USB드라이버커넥트에러프로그램을종료하고, DOS/V PC를다시기동한다. 0x01808502 USB드라이버의커넥트에실패하였다. MX Component를다시인스톨한다. 부 - 40
에러코드 에러내용 처리방법 PLC CPU, 모듈의설정및케이블상태등의시스템을검토한다. USB드라이버송신에러 0x01808503 USB 설정내용을 OS의컨트롤패널 ( 디바이스매니데이터의송신에실패하였다. 저 ) 로써실행한다. 프로그램을종료하고, DOS/V PC를다시기동한다. PLC CPU, 모듈의설정및케이블상태등의시스템 을검토한다. USB드라이버수신에러 0x01808504 USB 설정내용을 OS의컨트롤패널 ( 디바이스매니데이터의수신에실패하였다. 저 ) 로써실행한다. 프로그램을종료하고, DOS/V PC를다시기동한다. USB 설정내용을 OS의컨트롤패널 ( 디바이스매니 USB드라이버초기화에러 0x01808506 저 ) 로써실행한다. USB드라이버의초기화에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. 케이블을한번뽑은후, 다시접속한다. USB 기타에러 0x01808507 프로그램을종료하고, DOS/V PC를다시기동한다. 데이터송수신에관한에러가발생하였다. MX Component를다시인스톨한다. ActCpuType에설정한 CPU 타입을확인한다. 시스템구성이지원되지않는구성이아닌지를확인 노커맨드에러 0x04000001 한다. 지정한 CPU 타입으로는처리할수없다. 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. MX Component의인스톨파일이삭제또는이동되어 내부서버 DLL 로드에러있지않은지를확인한다. 0x04000004 내부서버의기동에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x10000002 MX Component의통신용 DLL의기동에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x10000003 Open에실패하였다 (DiskDrive) 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x10000004 2중 Open 에러 프로그램을종료하고, DOS/V PC를다시기동한다. 일정한시간을두고다시실행한다. 다른애플리케이션또는다른스레드가응답실행 COM 및 ActiveX의멀티스레드규칙에따라프로그 0x1000000C 중이므로실행에실패하였다. 램을실행한다. 프로그램을종료하고, DOS/V PC를다시기동한다. 0x10000011 메모리확보에러 프로그램을종료하고, DOS/V PC를다시기동한다. MX Component를다시인스톨한다. 0x10000012 오픈미실행 프로그램을종료하고, DOS/V PC를다시기동한다. 0x10000017 지정크기 ( 디바이스수 ) 가부정확하다. 메소드에지정한점수를확인한다. 프로그램을종료하고, DOS/V PC를다시기동한다. 0x10000018 등록된디바이스가아니다. 프로그램을종료하고, DOS/V PC를다시기동한다. 프로그램을종료하고, DOS/V PC를다시기동한다. 0x1000001E 레지스트리찾기에실패하였다. 다른프로그램을종료하고, 빈메모리를확보한다. MX Component를다시인스톨한다. 지정디바이스의내용을검토한다. 0x10000032 지정디바이스에러 프로그램을종료하고, DOS/V PC를다시기동한다. 다른프로그램을종료하고, 빈메모리를확보한다. 부 - 41
에러코드 에러내용 처리방법 지정디바이스의내용을검토한다. 0x10000033 지정디바이스범위에러 프로그램을종료하고, DOS/V PC를다시기동한다. 다른프로그램을종료하고, 빈메모리를확보한다. 0x10000040 서버기동에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. 0xF0000001 0xF0000002 0xF0000003 0xF0000004 0xF0000005 0xF0000006 0xF0000007 0xF1000001 0xF1000002 0xF1000003 0xF1000004 0x1000005 0xF1000006 라이센스없음에러라이센스키 FD로써 DOS/V PC에라이센스를부가한 DOS/VPC에라이센스가부가되어있지않다. 다. 설정데이터읽기에러올바른논리국번을지정한다. 논리국번의설정데이터읽기에실패하였다. 통신설정유틸리티로써논리국번을설정한다. 오픈완료에러통신대상 CPU를변경할경우는 Close 후에 Open 오픈상태에서 Open 메소드를실행하였다. 메소드를실행한다. 미오픈에러 Open 메소드를실행한후에해당메소드를실행한 Open 메소드를실행하지않고있다. 다. 초기화에러프로그램을종료하고, DOS/V PC를다시기동한다. MX Component 내부저장오브젝트의초기화에실패 MX Component를다시인스톨한다. 하였다. 메모리확보에러프로그램을종료하고, DOS/V PC를다시기동한다. MX Component 내부메모리의확보에실패하였다. 다른프로그램을종료하고, 빈메모리를확보한다. 기능미지원에러해당메소드가지원되지않는다. 메소드가지원되지않는다. 메소드에지정한문자열을확인한다. PLC CPU에서확보한 ASCII 문자열을초과한다. 문자코드변환에러 PLC CPU, 모듈의설정및케이블상태등의시스템문자코드의변환 (UNICODE ASCII코드또는을검토한다. ASCII코드 UNICODE) 에실패하였다. 프로그램을종료하고, DOS/V PC를다시기동한다. GetCpuType 메소드를리트라이 ( 재시도 ) 한다. 선두 I/O번호에러메소드로지정한선두 I/O번호의수치를확인한다. 지정한선두 I/O번호가부정확한값이다. GPP 기능에서 PLC의파라미터 (IO할당) 을확인한다. 일치하는선두 I/O번호가존재하지않는다. 버퍼어드레스에러지정한버퍼어드레스가부정확한값이다. 메소드에지정한버퍼어드레스의값을확인한다. 버퍼어드레스가범위외이다. 다시 Open 처리를실행한다. 버퍼읽기크기에러 PLC CPU, 모듈의설정및케이블상태등의시스템버퍼읽기를실행한결과, 지정한크기를확보할을검토한다. 수없었다. 리트라이 ( 재시도 ) 한다. 프로그램을종료한다. 크기에러읽기 / 쓰기메소드로지정한크기가초과한다. 메소드에지정한크기를확인한다. 읽기 / 쓰기선두+크기가디바이스또는버퍼의영역을초과하고있다. 오퍼레이션에러 리모트조작으로지정한오퍼레이션이이상한값이메소드에지정한오퍼레이션값을확인한다. 다. 부 - 42
에러코드 에러내용 처리방법 메소드에지정한시계데이터를확인한다. 시계데이터에러 0xF1000007 PLC CPU의시계데이터에올바른시계데이터를설시계데이터가이상하다. 정한다. 감시디바이스등록수초과 EntryDeviceStatus 메소드에등록된디바이스점수 EntryDeviceStatus 메소드에등록할디바이스점수 0xF1000008 가 0점이하다. 를 1점이상, 20점이하로한다. EntryDeviceStatus 메소드에등록된디바이스점수 가 20점보다많다. 0xF1000009 감시디바이스데이터등록완료에러 FreeDeviceStatus 메소드에서등록해제를실행한후에다시 EntryDeviceStatus 메소드를실행한다. 디바이스상태감시처리의기동에실패하였다. EntryDeviceStatus() 메소드에서디바이스상태감 0xF1000010 디바이스상태감시처리의종료에실패하였다. 시처리의기동 / 종료를다시실행한다. VARIANT 인수로지정한데이터타입을검토한다. F1000011 VARIANT 인수의데이터타입이잘못되어있다. ㆍ배열변수의크기가충분한지를확인한다. ㆍ각메소드에지정된데이터타입이설정되어있는지를확인한다. 0xF1000012 0xFF000001 디바이스상태감시간격시간의범위가 1초에서디바이스상태감시시간을 1~3600을지정한다. 1시간 (1~3600) 이외의값이다. MX Component 체험판에러 MX Component 체험판을언인스톨하고, 제품판을인 MX Component 체험판의기한이끝났다. 스톨하거나다시체험판을인스톨한다. 부 - 43
(2) PLC CPU, 인텔리전트기능모듈, 네트워크보드가반환하는에러코드 PLC CPU, 인텔리전트기능모듈및네트워크보드가반환하는에러코드에 대해설명합니다. 포인트 (a) 에러코드일람 에서와같은에러코드가반환되지않는경우가있습니다. 먼저, (b) 에러코드확인시의주의사항 의내용을확인한후에, (a) 에러코드일람 을참조하십시오. (a) 에러코드일람 PLC CPU, 인텔리전트기능모듈및네트워크보드가에러를검출한경우는 다음표에기재한에러코드가반환됩니다. 상위 2 바이트가에러검출모듈을나타내며, 하위 2 바이트가에러검출 모듈로부터반환되는에러코드를나타냅니다. 에러의상세내용에대해서는에러코드에대응하는 PLC CPU, 인텔리전트 기능모듈또는네트워크보드의매뉴얼을참조하십시오. 에러코드 0x01010000~0x0101FFFF *1 0x01020000~0x0102FFFF *1 0x01030000~0x0103FFFF *1 0x01040000~0x0104FFFF *1 0x01050000~0x0105FFFF *1 0x01060000~0x0106FFFF *1 QCPU(A 모드 ), ACPU, 모션컨트롤러 CPU QnACPU C24 QC24(N) E71 QE71 에러검출모듈 0x01070000~0x0107FFFF *1 MELSECNET/H 보드, MELSECNET/10 보드, MELSECNET(Ⅱ) 보드, CC-Link 보드, CPU 보드, AF 보드 0x01090000~0x0109FFFF *1 FXCPU 0x010A0000~0x010AFFFF *1 QCPU(Q 모드 ) 0x010B0000~0x010BFFFF *1 0x010C0000~0x010CFFFF *1 0x010D0000~0x010DFFFF *1 (b) 에러코드확인시의주의사항 Q 시리즈대응 C24 Q 시리즈대응 E71 PC CPU 모듈 *1: 포인트를참조하십시오. PLC CPU, 인텔리전트기능모듈및네트워크보드가반환하는에러코드 확인시의주의사항에대해설명합니다. 1 속성설정잘못 사용하고있는시스템구성과설정한속성값이일치하지않는경우, 상 위 2 바이트가올바른에러검출모듈을표시하지않습니다. 예를들면, QCPU(Q 모드 ) 에대하여 ActCpuType 에 ACPU 의속성값이설정 되어있는경우에상위 2 바이트는 ACPU 가에러검출모듈이되는경우 가있습니다. 이와같은경우에는시스템구성과설정한모든속성값을확인한후에, 다시통신하십시오. 또한, ActMulti, ActMLMulti 컨트롤을사용하고있는경우는, 통신설정 유틸리티의설정내용을확인하십시오. 부 - 44
2 AJ71E71, AJ71QE71 사용시 E71 및 QE71 통신시에발생한에러코드에서, 하위 2바이트의에러코드가 E71 및 QE71의매뉴얼에기재되어있지않는경우, E71 및 QE71 모듈전면의딥스위치 (SW2) 와속성 ActPacketType에설정된값이일치하고있는지를확인하십시오. 딥스위치가바르게설정되어있지않으면, 패킷형식 (ASCII/ 바이너리 ) 에오류가발생하게되므로, 모듈에서반환된에러코드를바르게인식할수없게됩니다. 3 다른국액세스시다른국액세스시에는사용하고있는경유모듈 (MELSECNET/H, MELSECNET/10, MELSECNET(Ⅱ), CC-Link, 계산기링크, Ethernet 모듈 ) 의에러코드가, 하위 2바이트에들어있는경우가있습니다. 이와같은경우, 에러검출모듈을표시하는상위 2바이트가에러가발생한모듈과일치하지않는경우가있으므로, 시스템구성을확인한후에, 사용하고있는 CPU, 경유네트워크모듈및네트워크보드의매뉴얼에부합하는지확인하십시오. 부 - 45
부 3 GX Developer 와 PLC CPU 의 Ethernet 경유접속 GX Developer를직접 Ethernet 모듈에접속 (Ethernet 접속이라고합니다.) 하고, Ethernet 모듈을경유하여 GX Developer에서 PLC CPU로액세스할때의 GX Developer 의접속조작에대해설명합니다. 본항에서는과제1을 Ethernet 경유접속으로변경할경우를예로하여기재합니다. 포인트 (1) Ethernet 에접속하기전에, 접속상대인 Ethernet 모듈장착국의 PLC CPU 에 Ethernet 파라미터를등록 ( 쓰기 ) 해놓을필요가있습니다. 5.2.1 항 ~5.2.4 항을참조하여 PLC CPU 에파라미터를쓰십시오 (RS-232 접속 ) (2) 다른국에액세스 (*1) 할때에는, 교신요구국 (PLC A1 국 ), 교신중계국, 교신요구상대국 ( 액세스국 ) 의 PLC CPU 에 MELSECNET/H ㆍ MELSECNET/10 중계교신기능용파라미터를설정해놓을필요입니다. Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 응용편 ) 을참조하여, 관련되는 PLC CPU 에필요한파라미터를설정하십시오. *1 상기그림의경우, PLC A1 국을경유하여다른 Ethernet 상의 PLC CPU 또는 MELSECNET/H 상의 PLC CPU 에액세스하는것을표시합니다. 1 GX Developer 와 Ethernet 모듈을 Ethernet 에접속합니다. 2 [ 온라인 ] [ 연결대상지정 ] 메뉴를클릭합니다. 3 PC측I/F의 Ethernet 을선택하고다음의내용을설정합니다. 네트워크No. :1 국번 : 각 PC의국번 (1~5) 프로토콜 :TCP 다음쪽에서계속 부 - 46
이전쪽에서계속 4 PLC측 I/F의 Ethernet 모듈 을선택하고다음내용을설정합니다. 모듈유형 :QJ71E71 네트워크No. :1 국번 : 각실습기의국번 (11~15) IP어드레스 / 호스트이름 : 각실습기의 IP어드레스를설정 (192.168.1.101~ 192.168.1.105) 루틴파라미터전송방식 : 자동전송방식 ( 자동응답방식 ) 5 다른국지정의 타국 ( 단일네트워크 ) 을선택합니다. 6 연결테스트버튼을클릭하고통신테스트를실행합니다. 7 PLC CPU 와의접속이성공하면, 왼쪽화면이표시됩니다. 확인버튼을클릭하여화면을엽니다. 8 확인버튼을클릭합니다. Ethernet 경유로접속됩니다. PLC CPU 로의액세스가가능합니다. 부 - 47
부 4 트러블슈팅 Ethernet 모듈과상대기기간의교신에서발생하는에러내용및트러블슈팅에대해서설명합니다. Ethernet 모듈측의이상의유무및이상내용을확인합니다. 다음과같은방법으로이상의유무, 이상내용을확인한후에, 대응하는처리내용에따라문제를해소하십시오. (1) Ethernet 모듈전면의표시 LED 에의한확인 ( 부 4.1 항참조 ) 표시 LED 의점등상태에따라 Ethernet 모듈측에현재이상이발생하고 있는지의여부를확인할수있습니다. (2) GX Developer에의한확인 GX Developer에의해 Ethernet 모듈측의각종상태및현재발생하고있는이상내용에대응하는에러코드를확인하고테스트를실행할수있습니다. (a) Ethernet 진단 ( 전용화면을사용 ) 1 각종설정상태모니터 ( 부4.2항참조 ) 2 Ping 테스트 (6.4항참조 ) 3 진단테스트 4 COM ERR 소등 ( 부4.1.2항, 부4.2.1항참조 ) (b) 시스템모니터 ( 전용화면을사용, 부4.2.2항참조 ) 1 모듈상세내용정보 모듈상태, 에러코드등 2 H/W 정보 LED 점등상태, 스위치상태등 (c) 버퍼메모리일괄모니터 Ethernet 모듈의버퍼메모리를모니터함으로써, 에러코드를확인할수있습니다. (3) 에러코드에의한이상내용확인상기전용화면또는버퍼메모리의모니터에서확인한에러코드와다음의매뉴얼에의해이상내용을확인할수있습니다. Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 포인트 Ethernet 모듈의에러코드및교신기능별트러블슈팅플로 ( 흐름 ) 에대해서는다음의매뉴얼을참조하십시오. Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 비고 여러회사의기기와접속하여회선이상등이발생한경우, 사용자가회선 애널라이저등을사용하여이상이발생한장소의회선을끊도록하여주십시오. 부 - 48
부 4.1 LED 에의한이상의확인방법 Ethernet 모듈전면에있는 LED 로써확인할수있는이상에대해설명합니다. 부 4.1.1 이상표시의확인 다음의내용에대해 Ethernet 모듈전면에있는 LED 로써확인할수있습니다. <Ethernet 모듈 LED> QJ71E71-100 RUN INIT OPEN SD ERR. COM.ERR 100M RD LED 명칭확인상황원인 / 처리 1 [RUN] 2 [ERR.] 3 [COM.ERR] 4 [SD] Ethernet 모듈전원투입후에소등 (*1) Ethernet 모듈전원투입후에점등 (*1) Ethernet 모듈전원투입후에점등데이터송신시에 [SD] LED가점멸하지않는다 1 WDT 에러ㆍEthernet 모듈의자기진단기능에의해, WDT( 약300ms) 에러가될때 WDT 에러검출신호 (X1F) 가 ON한다. 2 Ethernet 모듈장착불량ㆍ전원모듈의전원용량 (DC5V) 이부족하지않는지를확인한다. ㆍ전원을 OFF하고모듈을다시장착한다. 1 모듈의파라미터설정에러ㆍGX Developer를사용하여 Ethernet 모듈용파라미터설정값을확인 / 수정한다. 2 PLC CPU 에러 PLC CPU의 [RUN] LED가소등 / 점멸또는 [ERR.] LED가점등하고있는경우는, PLC CPU에서발생하고있는에러내용을확인한후에, 에러의발생요인을제거한다. Ethernet 모듈이 Q 모드의 PLC CPU에장착되어있는지를확인한다. 3 Ethernet 모듈의이상 (H/W 이상 ) 1 다음처리의이상검출시에저장된에러코드에따라, 에러내용을확인한후에, 에러의발생요인을제거한다. ㆍ이니셜처리ㆍ오픈처리ㆍ고정버퍼송신처리ㆍ데이터교신처리ㆍ전자메일의송신 / 수신처리ㆍ그밖의처리 ( 에러로그영역에에러코드가저장되는처리 ) 1 [ERR.] 또는 [COM.ERR] LED 점등ㆍ [ERR.], [COM.ERR] 의점등요인을제거한다. 2 케이블의접속불량ㆍ케이블의접속을확인한다 (*2) 3 프로그램의재검토ㆍ송신용시퀀스프로그램을검토한다. ( 다음쪽에계속 ) 부 - 49
( 이전쪽에서계속 ) LED 명칭확인상황원인 / 처리 5 [RD] [RD] LED 가소등한상 태로데이터를수신할 수없다 1 [ERR.] 또는 [COM.ERR] LED 점등ㆍ [ERR.], [COM.ERR] 의점등요인을제거한다. 2 케이블의접속불량ㆍ케이블의접속을확인한다 (*2) 3 자국 IP어드레스설정에러ㆍ케이블의접속에문제가없는경우는 GX Developer로써자국 IP어드레스, 라우터설정및서브네트워크마스크설정의각설정값을검토한다. 4 자국 IP어드레스설정에러ㆍ케이블의접속에문제가없는경우는 GX Developer로써자국 IP어드레스, 라우터설정및서브네트워크마스크설정의각설정값을검토한다. 5 프로그램의검토ㆍ상대기기측의송신용프로그램을검토한다. *1 하드웨어테스트 (H/W 테스트 ) 를실행하고, Ethernet 모듈이정상적으로동작하는지의여부를확인하십시오. 하드웨어테스트의상세내용은 4.7.2항을참조하십시오. *2 PING 테스트 ( 이니셜처리의완료확인 ) 를실행하고, 케이블접속및 Ethernet 회선에문제가없는지의여부를확인하십시오. PING 테스트의상세내용은 6.4항을참조하십시오. 포인트 [INIT], [OPEN], [ERR.], [COM.ERR] 의각 LED 의 LED 점등상태는버퍼메모리의모듈상태용영역 ( 어드레스 :C8H) 에저장되어있습니다. 부 - 50
부 4.1.2 COM.ERR LED 의소등, 에러정보의읽기 ᆞ 클리어방법 시퀀스프로그램에의한 [COM.ERR] LED 의소등, 에러정보의읽기 / 클리어 방법에대해서설명합니다. (1) 입출력신호에의한 [COM.ERR] LED의소등방법상대기기와의교신이상의발생시에, Ethernet 모듈전면의 [COM.ERR] LED가점등합니다 ( 입출력신호X1C:ON) (a) 소등요구신호 (Y17) 를 ON함으로써, [COM.ERR] LED가소등합니다. [COM.ERR]LED 소등요구신호 (Y17) [COM.ERR]LED 점등중신호 (X1C) (LED 점등 )( LED 소등 ) ( LED 점등 ) 에러발생 에러발생 에러발생 에러발생 (b) 소등요구신호 (Y17) 가 ON한동안, 상시소등요구처리가실행됩니다. (c) 소등요구신호 (Y17) 의 0N 시에는, 버퍼메모리의에러로그영역의에러정보는클리어 ( 삭제 ) 되지않습니다. (2) GX Developer의 Ethernet 진단 화면에서의 [COM.ERR] LED의소등방법 ( 부4.2.1항참조 ) (a) COM.ERR 소등버튼을클릭함으로써, [COM.ERR] LED가소등합니다. (b) 버퍼메모리의에러로그영역의에러정보는클리어 ( 삭제 ) 되지않습니다. (3) 전용명령에의한에러정보의읽기 / 클리어방법다음의전용명령을사용함으로써, 임의의타이밍에에러정보의읽기 / 클리어를실행할수있습니다. (a) 전용명령 ERRRD 이니셜이상코드정보또는오픈이상코드정보를읽을수있습니다. (b) 전용명령 ERRCLR [COM.ERR] LED의소등및이니셜이상코드ㆍ오픈이상코드를클리어하거나에러로그를클리어할수있습니다. * 전용명령에대해서는다음의매뉴얼을참조하십시오. Q 대응 Ethernet 인터페이스모듈사용자매뉴얼 ( 기본편 ) 부 - 51
부 4.2 GX Developer 에의한이상의확인방법 GX Developer의기능에의해 Ethernet 모듈의각종설정상태를확인할수있습니다. 확인방법은다음과같습니다. (1) Ethernet 진단 ( 부4.2.1항참조 ) Ethernet 진단기능에의해, Ethernet 모듈의모듈상태, 파라미터설정, 교신상태, 에러이력등을확인할수있습니다. (2) 시스템모니터 ( 부4.2.2항참조 ) 시스템모니터에서 Ethernet 모듈의모듈상태를확인할수있습니다. (a) 모듈상세내용정보기능버전, 에러코드를확인할수있습니다. (b) H/W 정보 LED 점등상태, 커넥션상태, Ethernet 모듈의파라미터상태를확인할수있습니다. (3) 버퍼메모리일괄모니터 Ethernet 모듈의버퍼메모리를모니터합니다. 부 - 52
부 4.2.1 Ethernet 진단 목적 GX Developer의 Ethernet 진단기능에의해, Ethernet 모듈의모듈상태, 파라미터설정, 교신상태, 에러이력등을확인할수있습니다. 조작순서 GX Developer [ 진단 ] Ethernet 진단 Ethernet 진단화면 1 2 3 4 5 6 8 7 항목설명 No. 항목 내용 설정범위 1 대상모듈지정 모니터할 Ethernet 모듈을지정한다. * MELSECNET/H 모듈의장수는포함되지않는다. 1장째 ~4장째 2 IP어드레스표시전환 IP어드레스표시를 10진 /16진으로전환한다. 10진 /16진 3 각종정보모니터의선택 Ethernet 모듈의각종정보를모니터할수있다. 4 PING 테스트 상대기기간에대해서 PING 테스트를실행한다.(6.4항참조 ) 5 진단테스트 네트워크에대해서진단테스트를실행한다. 6 COM ERR 소등 7 모니터시작 버튼을클릭하면 [COM ERR] LED가소등한다. ( 부4.1.2항참조 ) 클릭하면, Ethernet 진단을실행한다. 모니터중에는내용이갱신된다. 8 모니터정지 클릭하면, Ethernet 진단을정지한다. 모니터정지중에는내용을저장한다. 부 - 53
부 4.2.2 시스템모니터 시스템모니터에서 Ethernet 모듈의모듈상태를확인할수있습니다. (1) 진단기능의모듈상세내용정보화면에서모듈상태, 에러코드를확인하는경우 기동순서 GX Developer 진단 시스템모니터 모듈상세정보 표시내용 ㆍ모듈다음의정보를표시합니다. 형명 : 장착모듈형명선두I/ONo. : 대상모듈의선두입출력신호번호장착위치 : 모듈이장착되어있는슬롯위치제품정보 : 제품정보 * 제품정보의끝에는모듈의기능버전을표시합니다. ( 예 ) 끝이 B 일때는기능버전B의모듈이라는것을의미합니다. ㆍ모듈액세스 WDT 에러신호 (X1F) 가 OFF일때액세스가능함을나타냅니다. ㆍI/O 어드레스조회상태사용자가파라미터상에설정한모듈과, 장착되어있는모듈이일치하고있는지의여부를나타냅니다. ㆍ리모트패스워드설정상태리모트패스워드의설정상태를나타냅니다. ㆍ최신에러코드새로발생한에러의에러코드를나타냅니다. ㆍ에러표시버퍼메모리의에러로그영역 ( 어드레스 :E5H, EEH, 16CH) 에저장되어있는에러코드를나타냅니다. 부 - 54
(2) 진단기능의 H/W 정보화면에서 LED 점등상태, 운전모드번호를확인하는경우 기동순서 GX Developer 진단 시스템모니터 모듈상세정보 H/W 정보 표시내용 버퍼메모리의다음영역에저장되어있는 Ethernet 모듈의정보를표시합 니다. No. 표시내용 해당버퍼메모리 어드레스 1 H/W LED 정보좌측 (*1) LED 점등상태저장영역 C8H(200) 2 H/W LED 정보우측 커넥션상태저장영역 5000H(20480) 1 H/W 스위치정보 네트워크No. 자국네트워크No. ㆍ국번저장영역 76H(118) 2 그룹No. 자국그룹No. 저장영역 77H(119) 3 국번 자국네트워크No. ㆍ국번저장영역 76H(118) 4 모드번호 스위치상태 ( 운전모드설정 ) 저장영역 CAH(202) 5 교신상태 (*2) 교신상태저장영역 CBH(203) *1 b15 ~ b5 b4 b3 b2 b1 b0 *2 b15 ~ b9 b8 b7 b6 b5 b4 b3 b2 b1 b0-1/ 0 1/0-1/0 1/0-1/0-1/0 1/0 - - 1/0 1/0-1 : 점등 0 : 소등 ERR.LED COM.ERR LED INIT.LED OPEN LED 이니셜타이밍 0: 오픈대기로안함 1: 항상 OPEN 오픈대기 RUN 중쓰기허가 / 금지 0: 금지 1: 허가 송신프레임 0:Ethernet 1:IEEE802.3 교신데이터코드 0 : 바이너리 1 : ASCII 이니셜, 오픈, 방법 0 : 파라미터설정없음 1 : 파라미터설정있음 부 - 55