通常,Lego机器人会使用的Mindstorms“砖”控制器-这似乎很昂贵,并且如果您有Raspberry Pi来发出命令,则似乎多余。 Mindstorms控制器是处理器和电动机控制器,可以在不连接PC的情况下运行,但是缺少以太网和现代计算机的许多功能。
是否有任何替代平台可以让我控制和接收乐高创作中的数据吗?
仅供参考,这是用于简单的错误警报机器。设备将监视Jenkins测试框架的状态,并根据失败的单元测试用例的数量执行操作。树莓派将轮询包含一些易于解析的XML的网页。如果错误数> 0,那么我们想让Raspberry Pi开始驱动机器。
#1 楼
标准的Lego Mindstorms传感器是模拟(即0-5V之间的电压)或数字(I²C或RS-485)(源)。模拟传感器:
我认为Raspberry Pi在GPIO的ADC(模拟到数字转换器)的GPIO引脚上没有断开,所以我们不能与模拟传感器接口(无需额外的微控制器)。
数字传感器:
Raspberry Pi在I²C的GPIO中确实有两个引脚,这意味着如果将GND,+ V,SDA和SCL连接到传感器,您应该可以使用I²C库与他们交谈。这里有一个驱动程序-如果您按照说明进行操作,则应该能够像这样轻松地发送和接收I²C信号(与TI TMP102通话):
raspberrypi bootc # echo tmp102 0x48 > /sys/class/i2c-adapter/i2c-0/new_device
raspberrypi bootc # sensors
tmp102-i2c-0-48
Adapter: bcm2708_i2c.0
temp1: +21.6°C (high = +160.0°C, hyst = +150.0°C)
示例:
本页上有几篇有关如何连接传感器和电动机的文章,例如将Mindstorm砖控制器连接到外部微控制器:
#2 楼
BrickPi +可以帮助您将LEGO传感器和电机连接到Raspberry Pi并取代MINDSTORMS Brick。http://www.dexterindustries.com/brickpi/
#3 楼
Mindstorms是控制更多LEGO的唯一完全LEGO方式。当前的NXT 2.0相当昂贵,但是您可以以1/3之类的价格购买较旧的RCX套件(仅是示例)网络上NXT 2.0的价格。
否则,您将不得不寻找可能可以与LEGO相连的其他电动机/传感器套件。这些并不是很容易找到,而且可能非常昂贵。如果您沿着这条路走,那么可能最好找一个对他们了解更多的人。
如果您打算从ebay上购买一个较旧的LEGO产品,我建议浏览brickpicker.com以获得市场快照。 (我在一两个月前发现了它。在eBay上可以找到有关乐高玩具当前市场价值的信息的好地方。)
评论
对于那个很抱歉。我应该建议您以某种方式将RPi包含在您的答案中,因为这是一个有关RPi的站点,而问题是关于RPi的。如果您编辑问题,我可以删除我的反对意见。顺便说一下,www1.cbsd.org / sites / teachers / hs / MHAYDEN / Science%20Fair /…在该PDF中搜索“ Larsson”,几年前,您将在Intel International Science Fair上找到我的项目摘要。这是一个乐高头脑风暴,学会了在井字游戏中获胜。
–安德鲁·拉尔森(Andrew Larsson)
2012年6月27日17:48
不用担心,我也没有采取完美的态度。我知道RPi,但答案不一定与它直接相关-我们有大量针对Linux /发行版的问题,我敢肯定您可以在Pi上运行RCX。
– ACarter
2012年6月27日19:57
@Andrew wel,我删除了我的评论,所以我们可以重新开始。听起来真的很有趣。我制作了一个可以播放井字游戏的python脚本,但是制作它使它学会了如何播放它,这听起来很棒。
– ACarter
2012年6月28日上午10:08
它使用了Donald Michie的MENACE机器的修改/优化实现。机器人由C ++程序控制,该程序将电动机/传感器的命令/数据/从电动机/传感器向NXT推/拉。计算是在计算机上执行的,但是我有一个在NXT本身上运行的程序版本。但是,它将很快耗尽内存,并且标准固件不支持阵列,因此我不得不用修改后的阵列替换它。我想我可能会使用我的RPi制作该程序的新版本。会很有趣的!
–安德鲁·拉尔森(Andrew Larsson)
2012年6月28日在16:44
自从获得NXT以来,我一直想知道如何在计算机上使用高级语言来控制它。有诸如leJOS之类的东西,但是您使用了什么?
– ACarter
2012年6月28日在16:47
评论
嗨,raspberrypi.stackexchange.com/users/390/salim-fadhley和raspberrypi.stackexchange.com/users/286/salim-fadhley都是您的帐户吗?在两者上都编辑您的个人资料(如果可能的话),要求合并。我已经对社区团队成员执行了ping操作。我想用我拥有的较旧的乐高Mindstorms电机(简单的直流齿轮电机)来做到这一点。将+ 5v放在一侧,他们将转向另一侧,将+ 5v放在另一侧,他们将转向另一侧。但是,RPI的电流太大,无法直接驱动,因此我仍然需要一些接口电路。