자바스크립트 - Connection/ConnectionCollection 객체 따라하기

Script

자바스크립트 - Connection/ConnectionCollection 객체 따라하기

자바스크립트 따라하기- Connection/ConnectionCollection 객체

X-SCADA 스크립트에서 Connection, ConnectionCollection 객체를 사용할 수 있다


1. C onnection/ConnectionCollection 샘플 만들어보기
(객체를 생성할 때는 도구를 클릭하고 마우스 커서를 D esign 영역으로 옮겼을 때 커서가 십자 표시로 되면 생성할 위치에 클릭한 상태로 드래그하면 된다)

2e9fc04053aedbe6e51869e2d30da8b4_1609222143_4128.png

 1) 장치 탐색기에서 장치를 하나 생성한다
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_4914.png

 2) 생성한 장치에 시리얼 연결 과 네트워크 연결 을 하나 씩 추가한다
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_5331.png

 3) 페이지 스크립트를 아래와 같이 편집한다
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_5888.png

 4) 레이블 객체를 하나 생성하고 텍스트를 설정한다
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_6503.png

 5) 레이블의 스크립트 속성을 아래와 같이 설정한다
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_6936.png

 6) 실행이나 F5 를 눌러 뷰어를 연다
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_7394.png

레이블 객체를 누르고 F12 키를 눌러 결과를 확인할 수 있다.
2e9fc04053aedbe6e51869e2d30da8b4_1609222143_7911.png

2. 스크립트 코드 해석

 

 1) page_1 페이지

  ① showInfo 메소드


function showInfo()

{

    var device = $XI("device_1");

    var conns = device.connections;

 

    console.log(conns.getByName("network_1"));

    console.log(conns.getAt(0));

 

    var conn = conns.getAt(0);

 

    console.log(conn.name);

    console.log(conn.scanTime);

    console.log(conn.timeout);

    console.log(conn.enabled);

    console.log(conn.trialCount);

    console.log(conn.type);

    console.log(conn.remoteAddress);

    console.log(conn.remotePort);

    console.log(conn.localAddress);

 

    console.log(conns.getByName("serial_1"));

    console.log(conns.getAt(1));

   

    conn = conns.getAt(1);

 

    console.log(conn.portName);

    console.log(conn.bauRate);

    console.log(conn.parity);

    console.log(conn.dataBits);

    console.log(conn.stopBits);

    console.log(conn.handshake);

    console.log(conn.dtrEnable);

    console.log(conn.rtsEnable);

    console.log(conn.station);

    console.log(conn.switchingDelay);

}


(1) var device = $XI("device_1");
이름이device_1 인 장치를 가져온다
 페이지 콘솔 창 결과 : -


(2) var conns = device.connections;
장치의연결 목록 객체를 가져온다
 페이지 콘솔 창 결과 : -



(3) console.log(conns.getByName("network_1"));
연결목록 중 이름이 network_1 인 연결을 가져와 출력한다
 페이지 콘솔 창 결과 : 2020 12 28 21:19:51.050 Object {type, remoteAddress,
remotePort, localAddress, scanTime, timeout, enabled, trialCount, desc, name,
hasAttribute(), getAttribute(), setAttribute(), removeAttribute()}

(4) console.log(conns.getAt(0))
연결목록의 첫 번째에 위치한 연결을 출력한다
 페이지 콘솔 창 결과 : 2020 12 28 21:19:51.050 Object {type, remoteAddress,
remotePort, localAddress, scanTime, timeout, enabled, trialCount, desc, name,
hasAttribute(), getAttribute(), setAttribute(), removeAttribute()}

(5) var conn = conns.getAt(0)
연결목록의 첫 번째에 위치한 연결을 가져온다​

 페이지 콘솔 창 결과 : -

(6) console.log(conn.name)
가져온 연결의 이름을 출력한다
 페이지 콘솔 창 결과 : network_1

(7) console.log(conn.scanTime);
가져온 연결의 스캔 간격을 출력한다
 페이지 콘솔 창 결과 : 1000​

(8) console.log(conn.timeout)
가져온 연결의 타임아웃을 출력한다
 페이지 콘솔 창 결과 : 1000

(9) console.log(conn.enabled)
가져온 연결의 활성화 여부를 출력한다
 페이지 콘솔 창 결과 : true

(10) console.log(conn.trialCount);
가져온 연결의 시도 횟수를 출력한다
 페이지 콘솔 창 결과 : 0​

(11) console.log(conn.type);
가져온 네트워크 연결의 통신 타입 TCP/UDP) 을 출력한다
 페이지 콘솔 창 결과 : "tcp”​

(12) console.log(conn.remoteAddress);
가져온 연결의 원격지 주소를 출력한다
 페이지 콘솔 창 결과 : “127.0.0.1”

(13) console.l og(conn.remotePort);
가져온 연결의 원격지 포트를 출력한다
 페이지 콘솔 창 결과 : 0

(14) console.log(conn.localAddress)
가져온 연결의 로컬 주소를 출력한다
 페이지 콘솔 창 결과 :​ ""

(15) console.log(conns.getByName("serial_1"));
연결 목록에서 이름이 serial_1 인 연결을 출력한다
 페이지 콘솔 창 결과 : 2020 12 28 21:19:51.092 Object {portName, bauRate, parity,
dataBits, stopBits, handshake, dtrEnable, rtsEnable, station, switchingDelay,
scanTime, timeout, enabled, trialCount, desc, name, hasAttribute(), getAttribute(),
setAttribute(), removeAttribute()}

(16) console.log(conns.getAt(1));
연결 목록의 두 번째에 위치한 연결을 출력한다
 페이지 콘솔 창 결과 : 2020 12 28 21:19:51.092 Object {portName, bauRate, parity,
dataBits, stopBits, handshake, dtrEnable, rtsEnable, station, switchingDelay,
scanTime, timeout, enabled, trialCount, desc, name, hasAttribute(), getAttribut e(),
setAttribute(), removeAttribute()}​

(17) var conn = c onns.getAt(1)
연결 목록의 두 번째에 위치한 연결을 가져온다
 페이지 콘솔 창 결과 : -

(18) console.log(conn.portName)
가져온 시리얼 연결의 포트 이름을 출력한다
 페이지 콘솔 창 결과 : "COM1”

(19) console.log(conn. b auRate
가져온 시리얼 연결의 보드레이트를 출력한다
 페이지 콘솔 창 결과 : 9600​

(20) console.log(conn. p arity
가져온 시리얼 연결의 패리티 비트를 출력한다
 페이지 콘솔 창 결과 : “none” 

(21) console.log(conn. dataBits
가져온 시리얼 연결의 데이터 비트를 출력한다
 페이지 콘솔 창 결과 : 8

(22) console.log(conn. s topBits
가져온 시리얼 연결의 스탑비트를 출력한다
 페이지 콘솔 창 결과 : 1​

(23) console.log(conn. handshake
가져온 시리얼 연결의 핸드셰 이크를 출력한다
 페이지 콘솔 창 결과 : “none” 

(24) console.log(conn. d trEnable
가져온 시리얼 연결의 D TR 핀 사용 여부를 출력한다
 페이지 콘솔 창 결과 : false

(25) console.log(conn. rtsEnable
가져온 시리얼 연결의 RTS 핀 사용 여부를 출력한다
 페이지 콘솔 창 결과 : false​

(26) console.log(conn. station
가져온 시리얼 연결의 국번을 출력한다
 페이지 콘솔 창 결과 : 0

(27) console.log(conn. s witchingDelay
가져온 시리얼 연결의 스위칭 지연시간을 출력한다
 페이지 콘솔 창 결과 : 0​
 

0 Reply Comment
Title