Hi6 Robot Controller Manual - Robot Language HRScr
Korean
Korean
  • Hi6 로봇제어기 기능설명서 - 로봇언어 HRScript
  • 1. 개요
    • 1.1 HRScript의 소개
  • 2. 기본 문법
    • 2.1 명령문
    • 2.2 식별자
    • 2.3 명령문의 종류
      • 2.3.1 프로시져
      • 2.3.2 대입문
      • 2.3.3 주석문
      • 2.3.4 레이블
    • 2.4 첫 번째 프로그램 - Hello, World !
    • 2.5 자료형 (type)
      • 2.5.1 문자열 자료형
      • 2.5.2 숫자 자료형
      • 2.5.3 bool 자료형
      • 2.5.4 배열과 객체형
    • 2.6 변수
    • 2.7 2진수와 16진수
    • 2.8 연산자와 수식
    • 2.9 함수
      • 2.9.1 수학 함수
      • 2.9.2 문자열 함수
      • 2.9.3 날짜, 시간 함수
      • 2.9.4 생성자 함수
      • 2.9.5 기타 함수
    • 2.10 import문
  • 3. 제어문과 서브프로그램
    • 3.1 주소 (Address)
    • 3.2 정지, 대기문
      • 3.2.1 stop문
      • 3.2.2 end문
      • 3.2.3 delay문
      • 3.2.4 wait문
    • 3.3 분기문
      • 3.3.1 goto 문
      • 3.3.2 gosub~retsub 문
    • 3.4 조건문
      • 3.4.1 단문 if문
      • 3.4.2 복문 if~endif 문
      • 3.4.3 복문 if~else~endif 문
      • 3.4.4. 복문 if~elseif~else~endif문
      • 3.4.5. switch~case~break~end_switch문
    • 3.5. 내포된 (nested) 제어문
    • 3.6 반복문
      • 3.6.1 for~next문
      • 3.6.2 break문, continue문
    • 3.7 call문, jump문과 서브프로그램
      • 3.7.1 call문
      • 3.7.2 매개변수와 param문, return문
      • 3.7.3 def문
      • 3.7.4 jump문
    • 3.8 지역변수와 전역변수
      • 3.8.1 지역변수
      • 3.8.2 전역변수
      • 3.8.3 우선순위
  • 4. 배열과 객체
    • 4.1 배열
      • 4.1.1 배열
      • 4.1.2 다차원 배열
      • 4.1.3 배열 생성자 함수
      • 4.1.4 배열 원소 추가 append_arr
      • 4.1.5 배열에 다른 배열을 추가 extend_arr
    • 4.2 객체 (object)
    • 4.3 배열과 객체의 복사 대입(assignment)
    • 4.4 참조 전달(call-by-reference)과 값 전달(call-by-value)
  • 5. 로봇언어로 로봇 움직이기
    • 5.1 포즈 (pose)
    • 5.2 시프트 (shift)
    • 5.3 포즈식 (pose expression)
    • 5.4 move문
    • 5.5 mkucs함수 - 사용자좌표계
    • 5.6 selucrd문
    • 5.7 contpath문
    • 5.8 coldet문
    • 5.9 colsense문
    • 5.10 softxyz문
    • 5.11 softxyz_lim문
    • 5.12 softjoint문
    • 5.13 softjoint_lim문
    • 5.14 외부 제어
    • 5.15 convcrd문
    • 5.16 pose_trans문
    • 5.17 pose_inv문
    • 5.18 axisctrl문
    • 5.19 smov문
    • 5.20 shift문
    • 5.21 shift_lim문
  • 6. 외부장치와 통신하기
    • 6.1 fb객체 : 디지털 I/O
      • 6.1.1 입출력 변수
      • 6.1.2 예제
      • 6.1.3 fn객체
      • 6.1.4 pulse문
    • 6.2 http_cli 모듈 : HTTP 클라이언트
      • 6.2.1 생성자
      • 6.2.2 멤버변수
      • 6.2.3 멤버 프로시져
        • get
        • put
        • post
        • delete
      • 6.2.4 HTTP client 통신 코드
      • 6.2.5 HTTP client 통신 예제
    • 6.3 티치펜던트 console bar로 입출력하기
      • 6.3.1 print문
      • 6.3.2 input문
    • 6.4 modbus 모듈:모드버스 마스터
    • 6.5 Sci 모듈:시리얼 통신
      • 6.5.1 생성자
      • 6.5.2 멤버 프로시져
        • send
        • recv
        • open
        • close
        • clr_rbuf
      • 6.5.3 시리얼 통신 예제
  • 7. enet 모듈 : 이더넷 TCP/UDP 통신
    • 7.1 peer-to-peer, client 예제
      • 7.1.1 peer-to-peer, client 예제 - 문자열 송수신
      • 7.1.2 peer-to-peer, client 예제 - 바이너리 송수신
    • 7.2 TCP server 예제
      • 7.2.1 ethernet TCP server - 문자열 송수신
      • 7.2.2 ethernet TCP server - 바이너리 송수신
    • 7.3 ENet 객체
      • 7.3.1 ENet 생성자
      • 7.3.2 ENet 멤버변수
      • 7.3.3 ENet 멤버 함수
        • accept
        • close
        • connect
        • listen
        • open
        • recv
        • recv_bbuf
        • send
        • send_bbuf
        • set_send_trail_null
        • state
    • 7.4 BBuf 객체
      • 7.4.1 BBuf 생성자
      • 7.4.2 지원 형식 (format)
      • 7.4.3 BBuf 멤버 함수
        • append
        • clear
        • nbyte
        • read_num
        • read_nums
  • 8. 앨리어스 (alias)
  • 9. 파일
    • 9.1 파일시스템
      • 9.1.1 mkdir문
      • 9.1.2 copyfile문
      • 9.1.3 delfile문
    • 9.2 load/save
      • 9.1.1 load_job문
      • 9.1.2 load_csv문
      • 9.1.3 save_csv문
  • 10. 기타
    • 10.1 기타 프로시져
      • 10.1.1 gather문
      • 10.1.2 tonl문
      • 10.1.3 seltool문
      • 10.1.4 triggout문
      • 10.1.5 intr_def문
      • 10.1.6 typeof문
      • 10.1.7 gasp_check문
      • 10.1.8 optime문
      • 10.1.9 count_up문
      • 10.1.10 count_dn문
      • 10.1.11 cycle_end문
      • 10.1.12 speed_out문
      • 10.1.13 task문
      • 10.1.14 toolchng문
      • 10.1.15 json_parse문
    • 10.2 기타 함수
      • 10.2.1 rducs 함수
      • 10.2.2 segment 함수
      • 10.2.3 intersection 함수
      • 10.2.4 rand 함수
      • 10.2.5 sig2int 함수
    • 10.3 시스템 변수
      • _acc_rate 변수
      • _dec_rate 변수
      • _intr.no 변수
      • _intr.target 변수
      • _spd_rate 변수
      • _task.enable 변수
      • _tool 변수
      • _vel_rpm_cmd 변수
      • _weaving 변수
Powered by GitBook
On this page
  • 설명
  • 문법
  • 파라미터
  • 사용 예

Was this helpful?

Edit on GitHub
  1. 5. 로봇언어로 로봇 움직이기

5.10 softxyz문

센서리스 힘제어 기능으로 사용자가 설정한 환경에서 로봇이 외력에 대해 직교좌표로 유연하게 움직이는 기능입니다.

정확한 기능 사용을 위해 로봇에 부착된 툴 or 부가 중량 정보를 올바르고 정확하게 설정해야 합니다.


설명

  • 센서를 사용하지 않고 외력에 대해 직교좌표 기준으로 로봇이 밀리는 기능

문법

softxyz on, crd=<기준좌표계>
softxyz off  

파라미터

  • on : 기능 시작, off : 기능 종료

  • crd : 로봇이 밀리는 기준 좌표계 (베이스, 로봇, 툴, 사용자 좌표계)

softxyz on, crd="base"   #베이스 좌표계
softxyz on, crd="robot"  #로봇 좌표계
softxyz on, crd="tool"   #툴 좌표계
softxyz on, crd="user_1" #1번 사용자 좌표계 
softxyz off  

사용 예

예제1) Z방향으로 조립하기 위해 X, Y, Ry 방향으로 밀릴 수 있도록 한 경우

  • 좌표계 : 로봇좌표계 기준 (crd="robot")

  • 이동 위치(xnr) 제한 설정 : X, Y방향으로 [-50,+50] 범위(mm), Ry방향 [-3,+3] 범위(deg)

  • 속도(vel) 제한 설정 : X, Y방향으로 최대 5mm/sec, Ry방향으로 3deg/sec 밀리도록 설정

  • 문턱값(thr) 제한 설정 : X방향 3N, Y방향 3N 그리고 Ry방향 1Nm

S1   move P,spd=100mm/sec,accu=0,tool=0
     delay 2.0 # softxyz on 하기 전에 delay 설정 필수  
     softxyz_lim xnr, x=50, y=50, ry=3
     softxyz_lim vel, x=5, y=5, ry=3
     softxyz_lim thr, x=3, y=3, ry=1
     softxyz on, crd="robot"
S2   move P,spd=250mm/sec,accu=0,tool=0
     softxyz off 
     end 

예제2) 사출물 핸들링

  • 좌표계 : 로봇좌표계 기준 (crd="robot")

  • 위치(pos) 제한 설정 : +Y방향으로 최대 300mm까지, -Y방향으로 최대 200mm 까지 이동

  • 속도(vel) 제한 설정 : Y방향으로 최대 150mm/sec 속도로 밀리도록 설정

S1   move P,spd=100mm/sec,accu=0,tool=0
     delay 2.0 # softxyz on 하기 전에 delay 설정 필수  
     softxyz_lim pos, _y=300, y_=200
     softxyz_lim vel, y=150
     softxyz on, crd="robot"
S2   wait ... 
     softxyz off 
     end 

  • softxyz on으로 기능을 사용하기 전에 limit 명령문을 사용하여 pos, xnr, vel, thr 명령어로 최대 밀림거리, 속도 및 직교좌표 문턱값 등을 설정 해야 합니다.

  • 외력에 대한 로봇 민감도를 향상시키기 위해 softxyz on 명령어 전에 반드시 delay 명령어로 로봇을 1~2초 가량 정지시켜 놓는 것이 좋습니다.

Previous5.9 colsense문Next5.11 softxyz_lim문

Last updated 1 year ago

Was this helpful?