Python 例程
Lua API
通过向 TCP 的 5180 端口发送 Lua API 来控制任务运行
import socket
client = socket.socket()
client.connect(('127.0.0.1', 5180))
client.send("scene(10087)".encode())
client.close()
SDK
通过下载安装 SDK 来控制任务运行
lebai_sdk
import lebai_sdk
# # 如果出现event loop相关的RuntimeError,尝试添加以下2行
# import nest_asyncio
# nest_asyncio.apply()
lebai_sdk.init()
def main():
# print(lebai_sdk.discover_devices(2)) #发现同一局域网内的机器人
robot_ip = "192.168.x.x" #设定机器人ip地址,需要根据机器人实际ip地址修改
lebai = lebai_sdk.connect(robot_ip, False) #创建实例
lebai.start_sys() #启动手臂
joint_pose = [0,-1.05,1.05,0,1.57,0] #目标位姿关节数据
cartesian_pose = {'x' : -0.383, 'y' : -0.121, 'z' : 0.36, 'rz' : -1.57, 'ry' : 0, 'rx' : 1.57}#目标位姿笛卡尔数据
a = 0.5 #关节加速度 (rad/s2)
v = 0.2 #关节速度 (rad/s)
t = 0 #运动时间 (s)。 当 t > 0 时,参数速度 v 和加速度 a 无效
r = 0 #交融半径 (m)。用于指定路径的平滑效果
lebai.movej(joint_pose,a,v,t,r) #关节运动 https://help.lebai.ltd/sdk/motion.html#%E5%85%B3%E8%8A%82%E8%BF%90%E5%8A%A8
a = 0.3 #空间加速度 (m/s2)
v = 0.1 #空间速度 (m/s)
t = 0 #运动时间 (s)。 当 t > 0 时,参数速度 v 和加速度 a 无效
r = 0 #交融半径 (m)。用于指定路径的平滑效果
lebai.movel(cartesian_pose,a,v,t,r) #直线运动 https://help.lebai.ltd/sdk/motion.html#%E7%9B%B4%E7%BA%BF%E8%BF%90%E5%8A%A8
lebai.wait_move() #等待运动完成
# scene_number = "10000" #需要调用的场景编号
# lebai.start_task(scene_number, None, None, False, 1) #调用场景
lebai.stop_sys() #停止手臂
main()
lebai_sdk_asyncio
import asyncio
import lebai_sdk
lebai_sdk.init()
async def main():
# print(await lebai_sdk.discover_devices(2)) #发现同一局域网内的机器人
robot_ip = "192.168.x.x" #设定机器人ip地址,需要根据机器人实际ip地址修改
lebai = await lebai_sdk.connect(robot_ip, False) #创建实例
await lebai.start_sys() #启动手臂
joint_pose = [0,-1.05,1.05,0,1.57,0] #目标位姿关节数据
cartesian_pose = {'x' : -0.383, 'y' : -0.121, 'z' : 0.36, 'rz' : -1.57, 'ry' : 0, 'rx' : 1.57}#目标位姿笛卡尔数据
a = 0.5 #关节加速度 (rad/s2)
v = 0.2 #关节速度 (rad/s)
t = 0 #运动时间 (s)。 当 t > 0 时,参数速度 v 和加速度 a 无效
r = 0 #交融半径 (m)。用于指定路径的平滑效果
await lebai.movej(joint_pose,a,v,t,r) #关节运动 https://help.lebai.ltd/sdk/motion.html#%E5%85%B3%E8%8A%82%E8%BF%90%E5%8A%A8
a = 0.3 #空间加速度 (m/s2)
v = 0.1 #空间速度 (m/s)
t = 0 #运动时间 (s)。 当 t > 0 时,参数速度 v 和加速度 a 无效
r = 0 #交融半径 (m)。用于指定路径的平滑效果
await lebai.movel(cartesian_pose,a,v,t,r) #直线运动 https://help.lebai.ltd/sdk/motion.html#%E7%9B%B4%E7%BA%BF%E8%BF%90%E5%8A%A8
await lebai.wait_move() #等待运动完成
# scene_number = "10000" #需要调用的场景编号
# await lebai.start_task(scene_number, None, None, False, 1) #调用场景
await lebai.stop_sys() #停止手臂
asyncio.run(main())