【睿尔曼-RealMan】基于Python API实现UDP状态设置及读取

周正 2024-07-07

【睿尔曼-RealMan】

文章简介

    睿尔曼机械臂提供了1个可持续读取机械臂状态的接口,UDP通信状态反馈接口。

    该接口提供了json协议、API的读取,设置通信开启之后无需再进行设置即可以固定频率读取。

Python程序源码可从以下网盘地址获取(地址永久有效):

链接:https://pan.baidu.com/s/1enSvVr3wPKqKFBfIUkYP2w?pwd=noik

提取码:noik

UDP通信介绍:

UDP中文名用户数据协议,是工作在OSI(开放系统互连,Open Systems Interconnection)模型中传输层的协议。它使用IP作为底层协议,是为应用程序提供一种以最少的协议机制向其他程序发送消息的协议。其主要特点是无连接,不保证可靠传输和面向报文。RFC 768为IETF(互联网工程部,Internet Engineering Task Force)提供的UDP标准。

UDP在机械臂资料中的接口

Python API-设置主动上报

在设置接口中,共可传入5个参数,其中force_coordinate参数依据自身机械臂型号有无安装六维力传感器选择性传入,没有可不传。

示例如下:

from robotic_arm_package.robotic_arm import *

import sys

import socket

# 连接机械臂

robot = Arm(RM65, "192.168.1.18")

# 关闭主动上报接口

#ret = robot.Set_Realtime_Push(enable=True)

robot.Set_Realtime_Push(cycle=5,port=8089,enable=True,ip='192.168.1.100')#这个ip是电脑本地的ipv4设置的ip,端口号不改

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 绑定到本地的特定端口上,例如5000

local_addr = ('192.168.1.100', 8089)

sock.bind(local_addr)

try:

    while True:

        # 接收数据

        data, addr = sock.recvfrom(1024) # Buffer size is 1024 bytes

        print(f"Received message: {data} from {addr}")

        # 处理数据...

except KeyboardInterrupt:

    print("Exiting...")

finally:

    # 清理资源

    sock.close()

# 断开连接

robot.RM_API_UnInit()

robot.Arm_Socket_Close()

 

 

 

 

 

0 条评论

关于作者

周正

这家伙很懒,什么也没写!

选择发帖板块
选择发帖板块