UaExpert

UaExpert 소프트웨어를사용하여 RoboDK OPC UA 서버와의연결을테스트할수있습니다.

Unified Automation 웹사이트(https://www.unified-automation.com/downloads/opc-ua-clients.html)에서무료버전의 UaExpert 소프트웨어를다운로드할수있습니다.

OPC UA - 영상 8

UaExpert 서버 추가

UaExpert를실행하고 "+" 버튼을클릭하여 RoboDK OPC UA 서버를추가합니다.

OPC UA - 영상 9

사용자지정검색을확장하고 <두 번 클릭하여 서버 추가> 옵션을선택하여 RoboDK OPC UA 서버를추가합니다.

OPC UA - 영상 10

이전 단계에서 구성한 OPC UA 서버의 URL인 opc.tcp://127.0.0.1:48440을 입력합니다.

OPC UA - 영상 11

보안이 "없음"인 OPC UA 서버를연결합니다.

OPC UA - 영상 12

서버가구성되었습니다.

OPC UA - 영상 13

서버에 연결

이제 UaExpert에서 RoboDK OPC UA 서버에연결할수있습니다.

OPC UA - 영상 14

연결이설정되면노드및메소드를볼수있습니다.

OPC UA - 영상 15

서버 노드

RoboDK OPC UA 서버내부에는스테이션에대한몇가지기본정보를교환할수있는몇가지노드가있습니다.

RoboDK

RoboDK 노드는 RoboDK 소프트웨어의실제버전을제공하는노드입니다.

OPC UA - 영상 16

이예제에서는 RoboDK 64비트 v5.5.3.23031 버전이사용되었습니다.

OPC UA - 영상 17

SimulationSpeed

시뮬레이션 속도는 실제 시뮬레이션 속도를 표시하고 사용자가 현재 시뮬레이션 속도를 덮어쓸 수 있는 노드입니다.

OPC UA - 영상 18

노드 값은 시뮬레이션 속도의 슬라이드 바를 참조합니다.

이 노드에서 현재 시뮬레이션을 읽을 수 있으며 시뮬레이션 속도를 덮어쓸 수 있습니다.

OPC UA - 영상 19

스테이션

스테이션노드는사용자가 RoboDK에서스테이션의현재이름을가져올수있는노드입니다.

OPC UA - 영상 20

아래에서볼수있듯이스테이션노드는 RoboDK에서 "스테이션이름"으로참조됩니다.

OPC UA - 영상 21

스테이션 파라미터/스테이션 값

스테이션파라미터와스테이션값은사용자가스테이션내부의모든파라미터를가져오거나설정할수있는쌍으로구성된노드입니다. RoboDK OPC UA 서버는 "StationParameter"의실제값을지속적으로모니터링하고스테이션값노드에서해당 "StationParameter"의값을반환합니다.

OPC UA - 영상 22

Station 파라미터를보려면 RoboDK Station > Station 파라미터를우클릭하세요.

OPC UA - 영상 23

상수매개변수필드에서기본스테이션매개변수와해당값을확인할수있습니다.

OPC UA - 영상 24

스테이션매개변수는 '매개변수' 필드를참조하고스테이션값은 '값' 필드를참조합니다.

OPC UA - 영상 25

그리고 '추가' 버튼을클릭하여자신만의파라미터를만들수있습니다.

OPC UA - 영상 26

새로운스테이션매개변수가추가됩니다.

OPC UA - 영상 27

파라미터이름과파라미터값을입력한다음적용을눌러저장합니다.

OPC UA - 영상 28

자신만의스테이션파라미터를설정할수도있습니다.

OPC UA - 영상 29

시간

노드시간은 RoboDK 스테이션의현재시간을얻을수있는노드입니다.

OPC UA - 영상 30

DataTime 형식의값이반환됩니다.

OPC UA - 영상 31

그리고이노드는지속적으로업데이트됩니다.

OPC UA - 영상 32

방법

RoboDK OPC UA 서버에는사용자가 RoboDK 스테이션의데이터에동적으로액세스할수있는몇가지방법도제공됩니다.

메서드> 호출을마우스오른쪽버튼으로클릭하여메서드를실행할수있습니다.

OPC UA - 영상 33

getItem

getItem은사용자가아이템의포인터를가져올수있는메서드입니다.

OPC UA - 영상 34

InputArguments의경우장치이름은필수이며, 장치이름은스테이션이름, 로봇이름등을이미지화할수있습니다. 그리고 Item ID는해당장치의포인터를반환하는 OutputArguments입니다.

OPC UA - 영상 35

이예제에서는 ABB 로봇의아이템 ID(포인터)가 "ABB_RB1"로지정되었습니다.

OPC UA - 영상 36

아이템이름이유효하지않거나스테이션에존재하지않는경우 0이반환됩니다.

OPC UA - 영상 37

getJoints

getJonits는사용자가아이템 ID를기반으로스테이션에서로봇의조인트값을가져올수있는메서드입니다.

OPC UA - 영상 38

아이템 ID는아이템의포인터값으로, getItem() 메서드에서가져올수있습니다.

OPC UA - 영상 39

이 "ABB_RB1" 아이템이름으로아이템 ID를가져오고 UInt64 값을반환합니다.

OPC UA - 영상 40

조인트값은이전메서드에서가져온항목 ID를전달하면서반환됩니다.

OPC UA - 영상 41

getJointsStr

getJointsStr은사용자가문자열값을기반으로조인트값을가져올수있는메서드입니다.

OPC UA - 영상 42

이메서드에서로봇이름(문자열)을전달할수있습니다.

OPC UA - 영상 43

내스테이션에서 ABB_RB1은내로봇의이름입니다.

OPC UA - 영상 44

로봇이름매개변수에 "ABB_RB1"을전달하고메서드를호출하면문자열형식의조인트값이반환됩니다.

OPC UA - 영상 45

setJointsStr

setJointsStr은사용자가문자열값을기반으로로봇의조인트값을설정할수있는메서드입니다.

OPC UA - 영상 46

로봇이름에는 ABB_RB1이전달되며, 조인트매개변수에는조인트값이포함된문자열을전달하면됩니다.

For example:-0.000000,0.000000,-0.000000,-0.000000,-0.0,-0.000000

OPC UA - 영상 47