线程评级:
RoboDK自定义驱动程序
# 1
你好,

我已经为RoboDK编写了一个自定义驱动程序来连接Arduino。从RoboDK GUI,连接工作,我能够发送命令(从按钮和程序)没有任何问题。

虽然,当我想使用Python API和调用setConnectionParams方法,我得到下面的错误。
代码:
文件"/venv/lib/python3.7/site-packages/robolink/robolink.py",第4017行,setConnectionParams
self.link._check_status ()
文件"/venv/lib/python3.7/site-packages/robolink/robolink.py",第363行,在_check_status中
抛出异常('运行函数时出现问题')
例外:运行函数时出现问题

下面是我的自定义驱动程序的连接函数:
代码:
Def connect(self, host: str, baudrate: int):
如果不是self._connected:
试一试:
自我。_serial = serial。串行(主机,波特率=波特率,超时=0.5)
除了serial.serialutil.SerialException:
self._robodk.update_status (1)
返回

自我。_connected = self._serial.is_open

如果self._connected:
self._robodk.update_status(4) #准备
其他:
self._robodk.update_status(1) #连接问题

# ----- #

print_message(self, message):
打印('SMS:' +消息)
sys.stdout.flush ()

定义update_status(self, status)
如果ROBOTCOM_STATUS中的status:
状态= ROBOTCOM_STATUS[状态]

self.print_message('{地位}' .format(状态=状态)

这似乎发生在设置参数。因此,我有点不知道从哪里开始调试。任何帮助都非常感激。
您能否提供一些设置连接参数的示例代码?

如果您自定义了机器人驱动程序,则可能不需要默认情况下所需的任何参数(如IP、FTP远程路径和FTP凭据)。
# 3
下面是我如何设置连接参数:

代码:
self.rdk_link.setConnectionParams(“/ dev /铜。Usbmodem14201 ', 9600, '/', '匿名',")
self.rdk_link.Connect ()

在驱动程序内部,由于这是一个串行连接,我使用RoboDK中的端口作为波特率。
# 4
阿尔伯特,你不会相信我是怎么解决这个问题的。我改变了机器人的名字(在RoboDK)。现在一切都好了。:)
似乎因为某些原因RoboDK不喜欢我给的名字。
# 5
谢谢你告诉我们。这是一个奇怪的问题。你改什么名字了?




浏览此线程的用户:
1客人(年代)