사용자 삽입 이미지

MELSEC Q 시리즈 PLC의 E71 모듈을 통한 고속의 데이터 송수신을 지원하는 동운 HMI의 통신 드라이버는 이더넷 통신을 지원하는 QJ71E71-100, QJ71E71-B5, QJ71E71-B2등의 인터페이스 모듈을 통해서 QCPU, QnACPU, ACPU에 MC프로토콜의 3E 프레임 기반으로 접속 할 수 있습니다.

위의 그림에서 보이는 시현 환경은 Q06HCPU와 QJ71E71-100 인터페이스 모듈을 사용하는 환경입니다.


사용자 삽입 이미지

위의 그림은 MELSEC PLC를 TCP 인터페이스로 접속하기 위한 설정 예제로 동운 HMI에서는 "mctcp"라는 이름의 드라이버를 제공하고 있습니다. <driver> 항목에 "mctcp" 드라이버 이름을 입력하고 <name>에 해당 PLC를 지칭하는 아이디를 입력합니다. <name>에 입력한 PLC 아이디는 추후 정의한 태그 정의에서 어떤 PLC에 속한 태그인지를 지칭할 때 사용합니다. 동운 HMI에서는 여러 PLC를 등록할 수 있으므로 PLC를 추가 등록하려면 <da_module>내부에 <plc> 그룹을 추가로 기술하면 됩니다.

PLC 접속을 위한 PLC의 IP주소를 <addr> 항목에 입력하고 <port>항목에 PLC에서 지정한 TCP 포트 번호를 입력합니다. <devid>항목은 생략할 수 있으나 MELSEC PLC를 다중으로 연결하거나 다양한 PLC연결 환경에서 접속하는 경우에는 다음과 같은 설정을 추가할 수 있습니다.

  • <rack> : 네트워크 번호
  • <slot> : PLC 번호
  • <ionum> : 모듈 I/O 번호
  • <devid> : 모듈 국번호

사용자 삽입 이미지

위의 그림은 GX Developer에서 이더넷 인터페이스에 대한 설정을 진행하는 화면으로 네트워크 파라미터를 선택하고 MELSECNET/Ethernet를 클릭해서 필요한 설정을 진행합니다. PC측과 통신 설정이 일치하도록 지정해야 합니다.

사용자 삽입 이미지
장착한 모듈의 네트워크 종류를 Ethernet으로 설정하고 기타 설정을 진행한 다음 하단의 [동작 설정] 및 [오픈 설정]으로 PLC의 IP주소 및 포트 등을 설정합니다.

사용자 삽입 이미지사용자 삽입 이미지
동작 설정에서는 "바이너리 코드 교신", "IP 어드레스", 송신 프레임으로 Ethernet등을 설정하고 오픈 설정에서는 TCP 프로토콜로 "Unpassive"와 서비스 포트등을 설정하는데 포트 번호가 단순 10진수가 아니라 16진수로 기술해야 함을 주의해야 합니다. 1770h는 10진수로 6000입니다. 태그 정의는 타 기종의 PLC의 태그 정의와 유사하게 진행합니다.

사용자 삽입 이미지

태그 정의는 <tags>...</tags>그룹으로 묶어서 위의 그림과 같이 정의할 수 있습니다. <name>항목에 입력한 태그 아이디는 각종 컨트롤과 태그를 연결하는 매개가 되므로 나름의 원칙을 가지고 태그를 인식하기에 어렵지 않도록 정의합니다. 태그가 어떤 PLC에 속하는지는 <plc>항목을 통해서 지정합니다. <plc>항목에 기술한 "modsim"은 앞서 <da_module><plc>로 정의했던 PLC 항목입니다. <addr>로 PLC주소를 입력하는데 MELSEC PLC에 사용할 수 있는 태그들은 "D7"과 같이 디바이스 종류 한자리 또는 두자리와 숫자 주소로 기술합니다. 숫자 주소는 0부터 시작하는데 장치 종류 별로 10진수로 주소를 기술하는 것이 있고 10진수로 기술하는 것이 있으므로 주의해서 사용해야 합니다. MELSEC PLC에서 사용할 수 있는 장치 및 주소 표현 방법과 장치의 종류는 아래와 같습니다. PLC 모델 및 환경 단위로 사용할 수 있는 장치의 종류와 주소 범위가 달라질 수 있으므로 확인해서 사용할 필요가 있습니다.

종류디바이스코드표현디바이스종류
특수 릴레이SM10진수비트
특수 레지스터SD10진수워드
입력 릴레이X16진수비트
출력 릴레이Y16진수비트
내부 릴레이M10진수비트
래치 릴레이L10진수비트
어넌시에이터F10진수비트
에지 릴레이V10진수비트
링크 릴레이B16진수비트
데이터 레지스터D10진수워드
링크 레지스터W16진수워드
Timer - 접점TS10진수비트
Timer - CoilTC10진수비트
Timer -현재값TN10진수워드
적산 Timer - 접점S10진수비트
적산 Timer - CoilC10진수비트
적산 Timer -현재값SN10진수워드
Counter - 접점CS10진수비트
Counter - 코일CC10진수비트
Counter - 현재값CN10진수워드
링크 특수SB16진수비트
링크 특수SW16진수워드
스텝 릴레이S10진수비트
직접 입력DX16진수비트
직접 출력DY16진수비트
File RegisterR10진수워드
File RegisterZR16진수워드

PLC 데이터 타입과 무관하게 <type>은 실제 PLC 데이터 주소에 해당하는 영역을 어떤 자료 형태로 다룰 것인지를 지정하는 것으로 동운 HMI에서 다음과 같은 데이터 타입을 지원하고 있습니다. 되도록 PLC측의 비트 디바이스는 HMI측에서는 bool로 사용하고 나머지 데이터타입은 워드 디바이스를 사용하는 것이 혼란을 예방하는 길입니다.

  • "bool" : Boolean, 디지털 신호를 저장할 때 사용
  • "Int16" : 부호있는 2 byte 정수
  • "Int32" : 부호있는 4 byte 정수
  • "UInt16" : 부호없는 2 byte 정수
  • "UInt32" : 부호는 4 byte 정수
  • "float" : 실수(4 byte)
  • "String" : 문자열
  • 태그값을 데이터베이스에 저장하고 싶다면 저장 주기를 <archive> 항목에 초 단위로 기술하면 됩니다.<archive> 항목을 기술하지 않으면 데이터베이스에 태그 값을 저장하지 않습니다. 태그 값을 읽기 전용으로("r") 사용할지 아니면 쓰기도 가능하게 할 것인지("rw")는 <io> 항목에 기술합니다. 생략하면 읽기 전용으로 간주합니다. PLC 장치 값과 HMI 처리 값 간의 자동 스케일을 적용하려면 <rawmin><rawmax>항목을 통해서 장치값으로 범위를 지정하고 <eumin><eumax>항목으로 HMI 처리 값의 범위를 지정하면 됩니다. 네가지 범위를 기술하지 않거나 정상적인 범위 지정이 아니면 자동 스케일을 적용하지 않습니다. 예제의 "A003"태그에는 자동 경보가 설정되어 있습니다. 아날로그 값이 일정 범위를 넘어서면 알람을 발생시키고 조작자로 하여금 경보를 통해서 적절한 조치를 취하거나 인지(Ack)처리 할 수 있도록 하는 것으로 동운 HMI에서는 다음과같은 알람을 제공하고 있습니다.

  • "setAlm" : 디지털 태그값("bool" 타입)이 0이 아닐때 경보 발생
  • "resetAlm" : 디지털 태그값("bool" 타입)이 0일때 경보 발생
  • "euminAlm" : 아날로그 태그값이 "eumin" 설정 보다 작을 때 경보 발생
  • "eumaxAlm" : 아날로그 태그값이 "eumax" 설정 보다 클 때 경보 발생
  • "loAlm" : 아날로그 태그값이 지정한 값 보다 작을 때 경보 발생
  • "loloAlm" : 아날로그 태그값이 지정한 값 보다 작을 때 경보 발생
  • "hiAlm" : 아날로그 태그값이 지정한 값 보다 클 때 경보 발생
  • "hihiAlm" : 아날로그 태그값이 지정한 값 보다 클 때 경보 발생
  • 경보 설정은 예제처럼 <setAlm>처럼 태그로 묶어서 내부에 경보 수준(알람 레벨) 또는 지정값과 경보 수준을 입력하면 됩니다. setAlm, resetAlm, euminAlm, eumaxAlm 경보는 경보 수준만 입력하면 되지만 나머지 경보는 "1000|alert"와 같이 비교 값과 경보 수준을 "|"문자로 구분해서 입력합니다. 동운 HMI에서 지원하는 경보 수준은 "none", "caution", "alert", "critical" 로 구분해서 지정할 수 있습니다.


    2016/10/07 14:33 2016/10/07 14:33

    댓글을 달아 주세요