首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python nxt mindstorms连接问题

Python nxt mindstorms连接问题
EN

Stack Overflow用户
提问于 2018-07-31 06:49:27
回答 1查看 764关注 0票数 2

我想通过USB连接到一个使用Python3的乐高Mindstorms NXT机器人,但是当我尝试连接时,我得到了一个BrickNotFoundError。

下面是我尝试运行的脚本:

代码语言:javascript
复制
#!/usr/bin/env python

import nxt.locator
from nxt.motor import *

#nxt.locator.make_config()

def spin_around(b):
    m_left = Motor(b, PORT_B)
    m_left.turn(100, 360)
    m_right = Motor(b, PORT_C)
    m_right.turn(-100, 360)

b = nxt.locator.find_one_brick(debug = True)
#spin_around(b)

在Windows 10中的python 3.6上运行此程序,并使用通过USB电缆连接到计算机的NXT Robot,会产生以下堆栈跟踪:

代码语言:javascript
复制
Host: AB:CD:EF:GH:IJ:KL Name: BRUCE Strict: True
USB: True BT: False Fantom: True FUSB: False FBT: True
Fantom module unavailable, not searching there
Traceback (most recent call last):
  File "C:\Users\George\Downloads\nxt\examples\spin.py", line 14, in <module>
    b = nxt.locator.find_one_brick(debug = True)
  File "C:\Users\George\AppData\Local\Programs\Python\Python36-32\lib\site-packages\nxt\locator.py", line 138, in find_one_brick
    raise BrickNotFoundError
nxt.locator.BrickNotFoundError

我已经下载了pyusb & usblib,并且已经解决了几个关于找不到usb模块的错误。然而,机器人显然是连接到计算机上的,因为官方的乐高NXT软件可以成功地识别和编程机器人。

我不知道下一步该做什么。欢迎对如何解决此错误提出任何建议...

EN

回答 1

Stack Overflow用户

发布于 2018-09-27 01:48:07

您必须导入nxt.usbsock而不是nxt.locator,另外还必须导入nxt。代码如下:

代码语言:javascript
复制
import nxt

import nxt.usbsock
from nxt.motor import *

#nxt.locator.make_config()

def spin_around(b):
    m_left = Motor(b, PORT_B)
    m_left.turn(100, 360)
    m_right = Motor(b, PORT_C)
    m_right.turn(-100, 360)

b = nxt.locator.find_one_brick(debug = True)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51603286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档