4.10 BasScript 스크립트 프로그램 클래스
개요
BasScript 는 모션, 로직, 프로그램 제어, 통신, 비전 및 Modbus 명령어를 포함하여 구조화된 방식으로 호스트 측에서 BAS 명령어 시퀀스를 구성하는 데 사용됩니다.
핵심 기능
- 모션 명령어 빌드(
MoveJoint,MoveLine,MoveCircle등) - 로직 명령어 빌드(
IF,WHILE,SWITCH,GOTO등) - 할당 작성, 대기, 일시 중지 및 중단 지침
- 프로그램 호출 및 관리 지침 작성
- 소켓 통신 지침 작성
- Modbus 레지스터 read/write 명령어 빌드
- 비전 지침 빌드
- 추가 매개변수 구성(가속, RTCP, 프레임 오프셋 등)
- 높은 수준의 점프 지침 지원(
JUMP시리즈)
사용 사례
- 복잡한 로봇 프로그램을 자동으로 생성
- 로봇 프로그램 편집 및 수정
- 공통 프로그램 모듈 및 명령어 시퀀스 재사용
- 호스트와 로봇 프로그램 간의 원활한 통합 구현
- 맞춤형 로봇 모션 궤적 구축
- 비전, 통신, Modbus 기능을 로봇 프로그램에 통합
클래스 생성자
| 메서드 이름 | BasScript(string name ) |
|---|---|
| 설명 | 로봇에서 사용할 BAS 명령 시퀀스 클래스를 구성합니다. |
| 요청 매개변수 | name : 문자열 스크립트 프로그램 이름 |
| 호환 로봇 소프트웨어 버전 | 협업(Copper): v7.5.2.0+ 산업용(Bronze): 지원되지 않음 |
| 메모 | 이 클래스의 모든 메서드에는 이 클래스와 동일한 호환 버전 요구사항이 있습니다. |
서브클래스 구조
BasScript 클래스에는 다양한 명령 범주를 구성하기 위한 다음 하위 클래스가 포함되어 있습니다.
- ExtraParam: 복잡한 로봇 제어 명령을 구축하기 위한 추가 매개변수 클래스
- BasMotion: 모션 명령 하위 클래스, 모든 로봇 모션 관련 메서드 포함
- BasLogical: 논리 명령 하위 클래스, 모든 논리 제어 관련 메서드 포함
- BasStructure: 구조 명령 하위 클래스, 모든 구조 제어 관련 메서드 포함
- BasSocket: 소켓 통신 하위 클래스, 모든 소켓 통신 관련 메서드 포함
- BasModbus: Modbus 통신 하위 클래스, 모든 Modbus 통신 관련 방법 포함
- BasVision: 비전 지침 하위 클래스, 모든 비전 관련 메서드 포함
4.10.1 ExtraParam 클래스
| 메서드 이름 | ExtraParam() |
|---|---|
| 설명 | 복잡한 로봇 제어 명령을 구축하기 위한 추가 매개변수 클래스 |
| 요청 매개변수 | 없음 |
| 반환 값 | ExtraParam 객체 |
4.10.1.1 가속도 설정
| 메서드 이름 | ExtraParam.Acceleration(double value ) |
|---|---|
| 설명 | 가속도를 설정하며, 범위는 1~120%입니다. |
| 요청 매개변수 | value : double 가속도 값, 단위: %(부동소수점) |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
4.10.1.2 RTCP 매개변수 설정
| 메서드 이름 | ExtraParam.RTCP() |
|---|---|
| 설명 | RTCP 매개변수 설정, MoveL 및 MoveC 명령어만 지원 |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
4.10.1.3 프레임 오프셋 설정
| 메서드 이름 | ExtraParam.Offset(int index ) |
|---|---|
| 설명 | 프레임 오프셋을 설정합니다. |
| 요청 매개변수 | index : int 오프셋 인덱스(정수) |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
4.10.1.4 시간 기반 실행 설정/Assign
| 메서드 이름 | ExtraParam.TB(double second , string type , string name ) |
|---|---|
| 설명 | 시간 기반 실행 또는 할당을 설정합니다. 범위는 0.01-30초이며, 0.01 미만의 값은 성공적으로 저장되지 않습니다. |
| 요청 매개변수 | second : double 초, 단위: sec(부동소수점) type : 문자열 실행 유형(문자열) name : 문자열 이름(실행용, 문자열) |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
| 메서드 이름 | ExtraParam.TB(double second , string type , int index , int status ) |
|---|---|
| 설명 | 시간 기반 실행 또는 할당을 설정합니다. 범위는 0.01-30초이며, 0.01 미만의 값은 성공적으로 저장되지 않습니다. |
| 요청 매개변수 | second : double 초, 단위: sec(부동 소수점) type : 문자열 IO 유형(문자열) index : int 인덱스(할당용, 정수) status : int 상태(할당용, 정수) |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
4.10.1.5 건너뛰기 설정
| 메서드 이름 | ExtraParam.SKIP(int index ) |
|---|---|
| 설명 | 점프를 설정합니다. SKIP CONDITION 명령에 의해 설정된 점프 조건이 충족되면 SKIP 명령이 포함된 현재 라인에서 대상 명령 라인 또는 대상 프로그램으로 직접 점프합니다. |
| 요청 매개변수 | index : int 대상 라벨의 인덱스(정수) |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
4.10.1.6 출발 및 접근 거리 설정
| 메서드 이름 | ExtraParam.Approach(double departureDist , double approachingDist ) |
|---|---|
| 설명 | Gate형 모션의 출발 및 접근 거리를 설정하며 JUMP 명령에만 사용됩니다. |
| 요청 매개변수 | departureDist : double 출발 거리, 단위: mm(부동 소수점) approachingDist : double 접근 거리, 단위: mm(부동 소수점) |
| 반환 값 | StatusCode: 파라미터 설정 실행 결과 |
4.10.2 BasMotion 모션 명령어 하위 클래스
BasMotion 하위 클래스에는 모션 명령 시퀀스를 구축하는 데 사용되는 모든 로봇 모션 관련 메서드가 포함되어 있습니다.
4.10.2.1 MoveJoint 모션-포인트 명령
| 메서드 이름 | BasScript.BasMotion.MoveJoint(MovePoseType poseType , int poseIndex , SpeedType speedType , double speedValue , SmoothType smoothType , double smoothDistance = 0, ExtraParam extraParam = null) |
|---|---|
| 설명 | Joint 모션 명령은 지정된 이동 속도와 방법으로 작업 공간의 지정된 위치로 로봇을 이동하며 로봇 프로그램 작성의 MoveJoint 명령에 해당합니다. |
| 요청 매개변수 | poseType : MovePoseType 포즈 유형 poseIndex : int 포즈 인덱스 speedType : SpeedType 속도 유형 speedValue : double 속도 값, 단위: % smoothType : SmoothType 부드러운 유형 smoothDistance : double Smooth 거리, 단위: mm, 값 범위: 0~1000 extraParam : ExtraParam 추가 매개변수 |
| 반환 값 | StatusCode: 모션 명령 실행 결과 |
4.10.2.2 MoveLine 선형 모션-포인트 명령어
| 메서드 이름 | BasScript.BasMotion.MoveLine(MovePoseType poseType , int poseIndex , SpeedType speedType , double speedValue , SmoothType smoothType , double smoothDistance = 0, ExtraParam extraParam = null) |
|---|---|
| 설명 | 선형 동작 명령은 지정된 이동 속도와 방법으로 작업 공간의 지정된 위치로 로봇을 선형으로 이동시키는 것으로, 로봇 프로그램 작성의 MoveLine 명령에 해당합니다. |
| 요청 매개변수 | poseType : MovePoseType 포즈 유형 poseIndex : int 포즈 인덱스 speedType : SpeedType 속도 유형 speedValue : double 속도 값, 단위: mm/s smoothType : SmoothType Smooth 유형 smoothDistance : double Smooth 거리, 단위: mm, 값 범위: 0~1000 extraParam : ExtraParam 추가 매개변수 |
| 반환 값 | StatusCode: 모션 명령 실행 결과 |
4.10.2.3 MoveCircle 호 모션 투 포인트 명령어
| 메서드 이름 | BasScript.BasMotion.MoveCircle(MovePoseType poseType1 , int poseIndex1 , MovePoseType poseType2 , int poseIndex2 , SpeedType speedType , double speedValue , SmoothType smoothType , double smoothDistance = 0, ExtraParam extraParam = null) |
|---|---|
| 설명 | 원호 모션 명령은 로봇을 지정된 이동 속도와 방법으로 작업 공간의 지정된 위치로 호 형태로 이동시키는 로봇 프로그램 작성의 MoveCircle 명령에 해당합니다. |
| 요청 매개변수 | poseType1 : MovePoseType 첫 번째 포즈 유형 poseIndex1 : int 첫 번째 포즈 인덱스 poseType2 : MovePoseType 두 번째 포즈 유형 poseIndex2 : int 두 번째 포즈 인덱스 speedType : SpeedType 속도 유형 speedValue : double 속도 값, 단위: mm/s smoothType : SmoothType Smooth 유형 smoothDistance : double Smooth 거리, 단위: mm, 값 범위: 0~1000 extraParam : ExtraParam 추가 매개변수 |
| 반환 값 | StatusCode: 모션 명령 실행 결과 |
4.10.2.4 점대점 동작 명령어 점프
| 메서드 이름 | BasScript.BasMotion.Jump(MovePoseType poseType , int poseIndex , double speedValue , double speedRatio , SpeedType limZType , double limZValue , SmoothType smoothType , double smoothDistance = 0, ExtraParam extraParam = null) |
|---|---|
| 설명 | 게이트형 모션 명령어는 게이트형 모션을 수행하도록 로봇을 지정합니다(먼저 수직으로 위로 이동한 다음 수평으로 이동하고 마지막으로 수직으로 아래로 이동). 로봇 프로그램 작성의 JUMP 명령어에 해당합니다. |
| 요청 매개변수 | poseType : MovePoseType 대상 포즈 저장 유형 poseIndex : int 대상 위치 인덱스 speedValue : double 동작 속도 값, 단위: mm/s speedRatio : double 동작 속도 비율, 단위: % limZType : SpeedType Z축 제한 유형 limZValue : double Z축 제한 값 smoothType : SmoothType Smooth 유형 smoothDistance : double Smooth 거리, 단위: mm, 값 범위: 0~1000 extraParam : ExtraParam 추가 매개변수 |
| 반환 값 | StatusCode: 모션 명령 실행 결과 |
4.10.2.5 Jump3 3점 점프 명령어
| 메서드 이름 | BasScript.BasMotion.Jump3(MovePoseType poseType , int poseIndex , double speedValue , double speedRatio , SmoothType smoothType , double smoothDistance = 0, ExtraParam extraParam = null) |
|---|---|
| 설명 | 게이트형 동작 명령은 로봇이 출발, 접근, 목표 위치 등 게이트형 동작을 수행하도록 지정하며, 로봇 프로그램 작성 시 JUMP3 명령에 해당합니다. |
| 요청 매개변수 | poseType : MovePoseType 대상 포즈 저장 유형 poseIndex : int 3 대상 위치 인덱스 speedValue : double 동작 속도 값, 단위: mm/s speedRatio : double 동작 속도 비율, 단위: % smoothType : SmoothType 부드러운 유형 smoothDistance : double Smooth 거리, 단위: mm, 값 범위: 0~1000 extraParam : ExtraParam 추가 매개변수 |
| 반환 값 | StatusCode: 모션 명령 실행 결과 |
4.10.2.6 Jump3CP 3점 점프 CP 명령어
| 메서드 이름 | BasScript.BasMotion.Jump3CP(MovePoseType poseType , int poseIndex , double speedValue , SmoothType smoothType , double smoothDistance = 0, ExtraParam extraParam = null) |
|---|---|
| 설명 | 게이트형 모션 명령은 로봇이 출발, 접근 및 목표 위치를 포함하여 게이트형 모션을 수행하도록 지정하며 로봇 프로그램 작성 시 JUMP3CP 명령에 해당합니다. |
| 요청 매개변수 | poseType : MovePoseType 대상 포즈 저장 유형 poseIndex : int 3 대상 위치 인덱스 speedValue : double 동작 속도 값, 단위: mm/s smoothType : SmoothType Smooth 유형 smoothDistance : double Smooth distance, 단위: mm, 값 범위: 0~1000 extraParam : ExtraParam 추가 매개변수 |
| 반환 값 | StatusCode: 모션 명령 실행 결과 |
4.10.3 BasLogical 논리 명령어 하위 클래스
BasLogical 하위 클래스에는 논리 제어 명령 시퀀스를 구축하는 데 사용되는 모든 논리 제어 관련 메서드가 포함되어 있습니다.
4.10.3.1 IF 조건부 명령어
| 메서드 이름 | BasScript.BasLogical.IF(param1, index, param2, value, operatorType) |
|---|---|
| 설명 | 스크립트에 논리적 IF 문을 추가합니다. |
| 요청 매개변수 | param1 : 첫 번째 매개변수, 유형 RegisterType 또는 IOType index : 인덱스(정수) param2 : 두 번째 매개변수, 유형 RegisterType, IOType 또는 OtherType value : 값, 유형 인덱스, 숫자, 문자열 또는 IOStatus operatorType : 부울 연산자, 기본값은 같음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.2 ELSE_IF 조건부 분기 명령어
| 메서드 이름 | BasScript.BasLogical.ELSE_IF(param1, index, param2, value, operatorType) |
|---|---|
| 설명 | 스크립트에 논리적 ELSE IF 문을 추가합니다. |
| 요청 매개변수 | param1 : 첫 번째 매개변수, 유형 RegisterType 또는 IOType index : 인덱스(정수) param2 : 두 번째 매개변수, 유형 RegisterType, IOType 또는 OtherType value : 값, 유형 인덱스, 숫자, 문자열 또는 IOStatus operatorType : 부울 연산자, 기본값은 같음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.3 ELSE 명령
| 메서드 이름 | BasScript.BasLogical.ELSE() |
|---|---|
| 설명 | 스크립트에 논리적 ELSE 문을 추가합니다. |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.4 END_IF 조건부 명령어 종료
| 메서드 이름 | BasScript.BasLogical.END_IF() |
|---|---|
| 설명 | 논리적 IF 문을 종료합니다. |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.5 WHILE 루프 명령어
| 메서드 이름 | BasScript.BasLogical.WHILE(param1, index, param2, value, operatorType) |
|---|---|
| 설명 | 스크립트에 논리적 WHILE 문을 추가합니다. |
| 요청 매개변수 | param1 : 첫 번째 매개변수, 유형 RegisterType 또는 IOType index : 인덱스(정수) param2 : 두 번째 매개변수, 유형 RegisterType, IOType 또는 OtherType value : 값, 유형 인덱스, 숫자, 문자열 또는 IOStatus operatorType : 부울 연산자, 기본값은 같음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.6 END_WHILE 루프 종료 명령
| 메서드 이름 | BasScript.BasLogical.END_WHILE() |
|---|---|
| 설명 | 논리적인 While 문을 종료합니다. |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.7 SWITCH 다중 지점 선택 지침
| 메서드 이름 | BasScript.BasLogical.SWITCH(param, index) |
|---|---|
| 설명 | 스크립트에 논리적 SWITCH 문을 추가합니다. |
| 요청 매개변수 | param : 매개변수, 유형 RegisterType 또는 IOType index : 매개변수의 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.8 CASE 분기 지시사항
| 메서드 이름 | BasScript.BasLogical.CASE(param, value) |
|---|---|
| 설명 | 스크립트에 논리적 CASE 문을 추가합니다. |
| 요청 매개변수 | param : 매개변수, 유형 RegisterType, IOType 또는 OtherType value : 값, 유형 인덱스, 숫자, 문자열 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.9 DEFAULT 분기 지침
| 메서드 이름 | BasScript.BasLogical.DEFAULT() |
|---|---|
| 설명 | 스크립트에 논리적 DEFAULT 문을 추가합니다. |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.10 END_SWITCH 다중 지점 선택 종료 명령
| 메서드 이름 | BasScript.BasLogical.END_SWITCH() |
|---|---|
| 설명 | 논리적 SWITCH 문을 종료합니다. |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.11 SKIP_CONDITION 조건 건너뛰기 명령
| 메서드 이름 | BasScript.BasLogical.SKIP_CONDITION(param1, index, param2, value, operatorType) |
|---|---|
| 설명 | 스크립트에 논리적 SKIP CONDITION 문을 추가합니다. |
| 요청 매개변수 | param1 : 첫 번째 매개변수, 유형 RegisterType 또는 IOType index : 매개변수 1의 인덱스 param2 : 두 번째 매개변수, 유형 RegisterType, IOType 또는 OtherType value : 값, 유형 인덱스, 숫자, 문자열 또는 IOStatus operatorType : 부울 연산자, 기본값은 같음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.12 GOTO 점프 지시
| 메서드 이름 | BasScript.BasLogical.GOTO(index) |
|---|---|
| 설명 | GOTO 점프문 |
| 요청 매개변수 | index : 대상 라벨의 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.13 라벨 지시사항
| 메서드 이름 | BasScript.BasLogical.LABEL(index) |
|---|---|
| 설명 | LABEL 문 |
| 요청 매개변수 | index : 라벨 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.14 BREAK 루프 중단 명령
| 메서드 이름 | BasScript.BasLogical.BREAK() |
|---|---|
| 설명 | BREAK 문 |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.3.15 CONTINUE 루프 건너뛰기 명령어
| 메서드 이름 | BasScript.BasLogical.CONTINUE() |
|---|---|
| 설명 | CONTINUE 문 |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4 BasStructure 구조 명령어 서브클래스
BasStructure 하위 클래스에는 구조 제어 명령 시퀀스를 구축하는 데 사용되는 모든 구조 제어 관련 메서드가 포함되어 있습니다.
4.10.4.1 WAIT 대기 조건 명령어
| 메서드 이름 | BasScript.BasStructure.WAIT(RegisterType param1 , int index , ValueType param2 , object value , BooleanOperator operatorType = BooleanOperator.EQ) |
|---|---|
| 설명 | 대기 조건 명령, 조건이 만족될 때만 WAIT 명령을 실행하고, 프로그램은 계속 하향 실행될 수 있습니다. 그렇지 않으면 조건이 만족될 때까지 대기합니다. 이는 로봇 프로그램 작성 중 WAIT COND 문에 해당합니다. |
| 요청 매개변수 | param1 : RegisterType 첫 번째 매개변수(레지스터 또는 IO 신호) index : int 매개변수 1의 인덱스 param2 : ValueType 두 번째 매개변수(레지스터, IO 신호 또는 기타 유형) value : 개체 매개변수 2의 인덱스 또는 값 operatorType : BooleanOperator 논리 연산자, 기본값은 같음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.2 WAIT_TIME 대기 시간 지시
| 메서드 이름 | BasScript.BasStructure.WAIT_TIME(ValueType param , double value ) |
|---|---|
| 설명 | 대기 시간 명령, WAIT TIME 명령 실행, 로봇은 지정된 시간 동안 기다린 후 후속 명령을 계속 실행합니다. 로봇 프로그램 작성 중 WAIT TIME 문에 해당합니다. |
| 요청 매개변수 | param : ValueType 매개변수 유형(R 레지스터 또는 값) value : double 시간 값, 단위: 초 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.3 PAUSE 지시사항
| 메서드 이름 | BasScript.BasStructure.PAUSE() |
|---|---|
| 설명 | PAUSE 문 |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.4 ABORT 명령
| 메서드 이름 | BasScript.BasStructure.ABORT() |
|---|---|
| 설명 | ABORT 문 |
| 요청 매개변수 | 없음 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.5 CALL 동기 프로그램 호출 명령어
| 메서드 이름 | BasScript.BasStructure.CALL(name) |
|---|---|
| 설명 | CALL 동기 프로그램 호출 |
| 요청 매개변수 | name : 프로그램 이름 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.6 RUN 비동기 프로그램 호출 명령어
| 메서드 이름 | BasScript.BasStructure.RUN(name) |
|---|---|
| 설명 | RUN 비동기 프로그램 호출 |
| 요청 매개변수 | name : 프로그램 이름 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.7 LOAD 로드 프로그램 명령어
| 메서드 이름 | BasScript.BasStructure.LOAD(param, value) |
|---|---|
| 설명 | LOAD 로드 프로그램 |
| 요청 매개변수 | param : 매개변수, R 레지스터, SR 레지스터, 숫자 또는 문자열 value : 매개변수, 숫자 또는 문자열의 값 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.8 UNLOAD 언로드 프로그램 명령어
| 메서드 이름 | BasScript.BasStructure.UNLOAD(param, value) |
|---|---|
| 설명 | UNLOAD 언로드 프로그램 |
| 요청 매개변수 | param : 매개변수, R 레지스터, SR 레지스터, 숫자 또는 문자열 value : 매개변수, 숫자 또는 문자열의 값 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.4.9 EXEC 프로그램 실행 명령
| 메서드 이름 | BasScript.BasStructure.EXEC(param, value) |
|---|---|
| 설명 | EXEC 실행 프로그램 |
| 요청 매개변수 | param : 매개변수, R 레지스터, SR 레지스터, 숫자 또는 문자열 value : 매개변수, 숫자 또는 문자열의 값 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.5 BasSocket 소켓 통신 하위 클래스
BasSocket 하위 클래스에는 소켓 통신 명령 시퀀스를 구축하는 데 사용되는 모든 소켓 통신 관련 메서드가 포함되어 있습니다.
4.10.5.1 OPEN 오픈 소켓 연결 지침
| 메서드 이름 | BasScript.BasSocket.OPEN(int index ) |
|---|---|
| 설명 | Socket Open 명령을 사용하여 Server를 생성하고 Client 연결을 기다립니다. 로봇 프로그램 작성 시 SOCKET OPEN에 해당합니다. |
| 요청 매개변수 | index : int SK 레지스터 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.5.2 CLOSE 소켓 연결 종료 명령
| 메서드 이름 | BasScript.BasSocket.CLOSE(int index ) |
|---|---|
| 설명 | 지정된 소켓 연결을 닫습니다. 로봇 프로그램 작성 시 SOCKET CLOSE에 해당합니다. |
| 요청 매개변수 | index : int SK 레지스터 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.5.3 CONNECT 소켓 연결 지침
| 메서드 이름 | BasScript.BasSocket.CONNECT(int index ) |
|---|---|
| 설명 | Socket Connect 명령을 사용하여 지정된 소켓 서버에 연결하며, 로봇 프로그램 작성 시 SOCKET CONNECT에 해당합니다. |
| 요청 매개변수 | index : int SK 레지스터 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.5.4 SEND 소켓 데이터 전송 명령
| 메서드 이름 | BasScript.BasSocket.SEND(int index , StrType msgType , object value ) |
|---|---|
| 설명 | 소켓 보내기 명령을 사용하여 지정된 소켓 연결로 데이터를 보냅니다. 로봇 프로그램 작성의 SOCKET SEND에 해당합니다. |
| 요청 매개변수 | index : int SK 레지스터 인덱스 msgType : StrType 메시지 유형 value : 객체 메시지 내용 또는 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.5.5 RECV 수신 소켓 데이터 명령어
| 메서드 이름 | BasScript.BasSocket.RECV(int index , int msgLength , StrType msgType , object value ) |
|---|---|
| 설명 | 소켓 Recv 명령을 사용하여 지정된 소켓 연결에서 문자를 읽고, 최대 길이를 지정할 수 있으며, 로봇 프로그램 작성의 SOCKET RECV에 해당합니다. |
| 요청 매개변수 | index : int SK 레지스터 인덱스 msgLength : int 메시지 최대 길이 msgType : StrType 메시지 유형 value : 객체 메시지 내용 또는 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.6 BasModbus Modbus 통신 하위 클래스
BasModbus 하위 클래스에는 Modbus 레지스터 read/write 명령어 시퀀스를 구축하는 데 사용되는 모든 Modbus 통신 관련 메서드가 포함되어 있습니다.
4.10.6.1 READ_MH Modbus 보유 레지스터 읽기 명령
| 메서드 이름 | BasScript.BasModbus.READ_MH(int index , int id , int address , int length , int rIndex ) |
|---|---|
| 설명 | Modbus 보유 레지스터 명령 읽기, 로봇 프로그램 작성의 READ_MH에 해당 |
| 요청 매개변수 | index : int 채널 인덱스 id : int Modbus ID address : int 레지스터 시작 주소 length : int 레지스터 길이, 즉 읽을 레지스터 수 rIndex : int 결과를 쓸 R 레지스터 시작 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.6.2 READ_MI Modbus 입력 레지스터 읽기 명령
| 메서드 이름 | BasScript.BasModbus.READ_MI(int index , int id , int address , int length , int rIndex ) |
|---|---|
| 설명 | Modbus 입력 레지스터 읽기 명령은 로봇 프로그램 작성의 READ_MI에 해당합니다. |
| 요청 매개변수 | index : int 채널 인덱스 id : int Modbus ID address : int 레지스터 시작 주소 length : int 레지스터 길이, 즉 읽을 레지스터 수 rIndex : int 결과를 쓸 R 레지스터 시작 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.6.3 WRITE_MH Modbus 홀딩 레지스터 쓰기 명령어
| 메서드 이름 | BasScript.BasModbus.WRITE_MH(int index , int id , int address , int length , ValueType valueType , int value ) |
|---|---|
| 설명 | Modbus 보유 레지스터 쓰기 명령은 로봇 프로그램 작성의 WRITE_MH에 해당합니다. |
| 요청 매개변수 | index : int 채널 인덱스 id : int Modbus ID address : int 레지스터 시작 주소 length : int 레지스터 길이, 즉 쓸 레지스터 수 valueType : ValueType 값 유형 value : int 값 또는 R 레지스터 시작 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.7 BasVision Vision 명령어 하위 클래스
BasVision 하위 클래스에는 비전 프로그램 명령 시퀀스를 구축하는 데 사용되는 모든 비전 관련 메서드가 포함되어 있습니다.
4.10.7.1 FIND 비전 프로그램 찾기 프로그램 안내
| 메서드 이름 | BasScript.BasVision.FIND(string name ) |
|---|---|
| 설명 | 비전파인드 프로그램을 실행하며, 로봇 프로그램 작성시 VISION FIND에 해당합니다. |
| 요청 매개변수 | name : 문자열 비전 프로그램 이름 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.7.2 GET_OFFSET 비전 프로그램 오프셋 명령 가져오기
| 메서드 이름 | BasScript.BasVision.GET_OFFSET(string name , int index , int labelIndex ) |
|---|---|
| 설명 | 비전 프로그램 실행 후 오프셋을 가져옵니다. 로봇 프로그램 작성 시 VISION GET OFFSET에 해당합니다. |
| 요청 매개변수 | name : 문자열 비전 프로그램 이름 index : int 비전 레지스터 인덱스 labelIndex : int 라벨 인덱스 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.7.3 GET_QUANTITY 비전 프로그램 결과 지시사항 가져오기
| 메서드 이름 | BasScript.BasVision.GET_QUANTITY(string name , int index ) |
|---|---|
| 설명 | 비전 프로그램 실행 후 결과 수량을 가져옵니다. 로봇 프로그램 작성의 VISION GET QUANTITY에 해당합니다. |
| 요청 매개변수 | name : 문자열 비전 프로그램 이름 index : int R 결과를 저장할 인덱스를 등록합니다. |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.8 AssignValue 할당 지침(전체 매개변수)
| 메서드 이름 | BasScript.AssignValue(AssignType param1 , int index , AssignType param2 , object value , int optIndex = 0, int optValue = 0) |
|---|---|
| 설명 | 레지스터, IO 신호 등에 값을 할당하는 데 사용되는 할당 명령은 로봇 프로그램 작성의 ASSIGN 문에 해당합니다. |
| 요청 매개변수 | param1 : AssignType 첫 번째 매개변수(레지스터 또는 IO 신호) index : int 매개변수 1의 인덱스 param2 : AssignType 두 번째 매개변수(레지스터, IO 신호 또는 기타 유형) value : 개체 매개변수 2의 인덱스 또는 값 optIndex : int param1이 PR_ELEMENT일 때 매개변수 1에 대한 추가 인덱스, 기본값 0 optValue : int param2가 PR_ELEMENT일 때 매개변수 2에 대한 추가 인덱스 또는 값이 IOStatus.PULSE일 때 펄스 값, 기본값 0 |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.9 AssignValue 할당 지침(단순화된 매개변수)
| 메서드 이름 | BasScript.AssignValue(AssignType param , int index , object value ) |
|---|---|
| 설명 | 레지스터, IO 신호 등에 값을 할당하는 데 사용되는 할당 명령(간단화된 매개변수)은 로봇 프로그램 작성의 ASSIGN 문에 해당합니다. |
| 요청 매개변수 | param : AssignType 매개변수 유형(레지스터 또는 IO 신호) index : int 매개변수 인덱스 value : 개체 값(IOStatus, double 또는 문자열) |
| 반환 값 | StatusCode: 작업 실행 결과 |
4.10.10 SetParam 매개변수 설정 명령
| 메서드 이름 | BasScript.SetParam(ParamType type , ValueType valueType , object value ) |
|---|---|
| 설명 | 로봇의 각종 파라메타를 설정하는데 사용되는 파라메타 설정 명령은 로봇 프로그램 작성시 SET PARAM 에 해당합니다. |
| 요청 매개변수 | type : ParamType 매개변수 유형 valueType : ValueType 값 유형 value : 객체 값 |
| 반환 값 | StatusCode: 작업 실행 결과 |