4.13 로봇티칭모션
개요
조깅 모듈은 단일 축 스테핑, 연속 조깅, 다축 조정 모션 및 비상 정지를 지원하는 티치 모드에서 로봇에 대한 조그 제어 인터페이스를 제공합니다.
핵심 기능
- 로봇 단축 스텝 티칭 모션 지원
- 로봇 연속 조깅 티칭 동작 지원
- 로봇 다축 연속 티칭 모션 지원
- 비상 정지 로봇 연속 동작 지원
- 스텝 길이 및 회전 스텝 각도 설정 지원
- 다양한 좌표계에서의 조깅 제어 지원
사용 사례
- 로봇 디버깅 및 교육 프로세스
- Position 미세 조정 시나리오
- 호스트 PC 원격 수동 자세 조정
- 로봇 설치 및 교정
- 복잡한 궤적의 정확한 조정
4.13.1 단축 스텝 티칭 모션
| 메서드 이름 | jogging.step_move( aj_num : int, step_length : float = 0, step_angle : float = 0) -> StatusCodeEnum |
|---|---|
| 설명 | 구성된 스텝 크기에 따라 단축 스텝 티칭 동작을 수행합니다. |
| 요청 매개변수 | aj_num : int 값 1-6은 현재 좌표계의 축에 해당합니다. 데카르트 좌표에서 x, y, z, rx, ry, rz는 1–6에 매핑됩니다. 기호는 동작 방향을 나타냅니다. step_length : float 선형 스텝 길이(mm); 현재 단계 크기를 유지하기 위해 생략되었습니다. step_angle : float 회전 단계 각도(도); 현재 회전 단계를 유지하기 위해 생략되었습니다. |
| 반환 값 | StatusCodeEnum: 함수 실행 결과 |
| 호환 로봇 소프트웨어 버전 | 협업(Copper): v7.5.0.0+ 산업용(Bronze): v7.5.0.0+ |
예제 코드
py
#!python
"""
Copyright © 2016 Agilebot Robotics Ltd. All rights reserved.
Instruction: 示教运动功能-步进关节点动运动使用示例 / Teaching motion function - Joint step motion usage example
"""
from Agilebot import Arm, StatusCodeEnum
# [ZH] 初始化Arm类
# [EN] Initialize the Arm class
arm = Arm()
# [ZH] 连接控制器
# [EN] Connect to the controller
ret = arm.connect("10.27.1.254")
if ret == StatusCodeEnum.OK:
print("机器人连接成功 / Robot connected successfully")
else:
print(f"机器人连接失败,错误代码 / Robot connection failed, error code: {ret.errmsg}")
arm.disconnect()
exit(1)
# [ZH] 仅支持手动模式下进行jogging
# [EN] Only manual mode is supported for jogging
# [ZH] 点动关节坐标系下的关节1
# [EN] Jog joint 1 under the joint coordinate system
ret = arm.jogging.step_move(1, 2, 2)
if ret == StatusCodeEnum.OK:
print("点动运动开始成功 / Jogging movement started successfully")
else:
print(f"点动运动开始失败,错误代码 / Jogging movement start failed, error code: {ret.errmsg}")
arm.disconnect()
exit(1)
# [ZH] 断开捷勃特机器人连接
# [EN] Disconnect from the robot
arm.disconnect()
print("机器人断开连接成功 / Robot disconnected successfully")4.13.2 단축 연속 조깅 티칭 모션
| 메서드 이름 | jogging.continuous_move( aj_num : int) -> StatusCodeEnum |
|---|---|
| 설명 | 단축 연속 조깅 티칭 동작을 수행합니다. |
| 요청 매개변수 | aj_num : int 축 인덱스(현재 좌표계의 경우 1~6; 데카르트의 경우 x/y/z/rx/ry/rz는 1~6으로 매핑되며 부호는 방향을 나타냄). |
| 반환 값 | StatusCodeEnum: 함수 실행 결과 |
| 호환 로봇 소프트웨어 버전 | 협업(Copper): v7.5.0.0+ 산업용(Bronze): v7.5.0.0+ |
예제 코드
py
#!python
"""
Copyright © 2016 Agilebot Robotics Ltd. All rights reserved.
Instruction: 示教运动功能-单关节点动运动使用示例 / Example of Teaching motion function - Single-joint motion usage
"""
import time
from Agilebot import Arm, StatusCodeEnum
# [ZH] 初始化Arm类
# [EN] Initialize the Arm class
arm = Arm()
# [ZH] 连接控制器
# [EN] Connect to the controller
ret = arm.connect("10.27.1.254")
if ret == StatusCodeEnum.OK:
print("机器人连接成功 / Robot connected successfully")
else:
print(f"机器人连接失败,错误代码 / Robot connection failed, error code: {ret.errmsg}")
arm.disconnect()
exit(1)
# [ZH] 仅支持手动模式下进行jogging
# [EN] Only manual mode is supported for jogging
# [ZH] 点动关节坐标系下的关节1
# [EN] Jog joint 1 under the joint coordinate system
ret = arm.jogging.continuous_move(1)
if ret == StatusCodeEnum.OK:
print("点动运动开始成功 / Jogging movement started successfully")
else:
print(f"点动运动开始失败,错误代码 / Jogging movement start failed, error code: {ret.errmsg}")
arm.disconnect()
exit(1)
# [ZH] 运动3s
# [EN] Move for 3 seconds
time.sleep(3)
# [ZH] 停止
# [EN] Stop
arm.jogging.stop()
# [ZH] 断开捷勃特机器人连接
# [EN] Disconnect from the robot
arm.disconnect()
print("机器人断开连接成功 / Robot disconnected successfully")4.13.3 다축 연속 티칭 모션
| 메서드 이름 | jogging.multi_move( aj_num : List[int]) -> StatusCodeEnum |
|---|---|
| 설명 | 다축 연속 티칭 동작을 수행합니다. |
| 요청 매개변수 | aj_num : List[int] 축 인덱스 목록(현재 좌표계의 경우 1~6; 데카르트에서는 x/y/z/rx/ry/rz가 1~6으로 매핑되며 기호는 방향을 나타냄). |
| 반환 값 | StatusCodeEnum: 함수 실행 결과 |
| 호환 로봇 소프트웨어 버전 | 협업(Copper): v7.5.0.0+ 산업용(Bronze): v7.5.0.0+ |
예제 코드
py
#!python
"""
Copyright © 2016 Agilebot Robotics Ltd. All rights reserved.
Instruction: 示教运动功能-多关节点动运动使用示例 / / Teaching motion function - Multi-joint motion usage example
"""
import time
from Agilebot import Arm, StatusCodeEnum
# [ZH] 初始化Arm类
# [EN] Initialize the Arm class
arm = Arm()
# [ZH] 连接控制器
# [EN] Connect to the controller
ret = arm.connect("10.27.1.254")
if ret == StatusCodeEnum.OK:
print("机器人连接成功 / Robot connected successfully")
else:
print(f"机器人连接失败,错误代码 / Robot connection failed, error code: {ret.errmsg}")
arm.disconnect()
exit(1)
# [ZH] 仅支持手动模式下进行jogging
# [EN] Only manual mode is supported for jogging
# [ZH] 点动关节坐标系下的关节1,2,3
# [EN] Jog joint 1,2,3 under the joint coordinate system
ret = arm.jogging.multi_move([1, 2, 3])
if ret == StatusCodeEnum.OK:
print("点动运动开始成功 / Jogging movement started successfully")
else:
print(f"点动运动开始失败,错误代码 / Jogging movement start failed, error code: {ret.errmsg}")
arm.disconnect()
exit(1)
# [ZH] 运动3s
# [EN] Move for 3 seconds
time.sleep(3)
# [ZH] 停止
# [EN] Stop
arm.jogging.stop()
# [ZH] 断开捷勃特机器人连接
# [EN] Disconnect from the robot
arm.disconnect()
print("机器人断开连接成功 / Robot disconnected successfully")4.13.4 로봇 연속 이동 중지
| 메서드 이름 | jogging.stop() |
|---|---|
| 설명 | 로봇 조그(JOG) 동작을 종료합니다. |
| 요청 매개변수 | 매개변수 없음 |
| 반환 값 | StatusCodeEnum: 함수 실행 결과 |
| 호환 로봇 소프트웨어 버전 | 협업(Copper): v7.5.0.0+ 산업용(Bronze): v7.5.0.0+ |