BrickPi安装和入门

简介

如果你熟悉LEGO MINDSTORMS那么你可能知道他的炫酷玩法,现在你也可以做一个类似的具有教学意义的平台。进入BrickPi官网(可能需要翻墙才能访问)。


BrickPi裸板

BrickPi是RasbperryPi的一个插件,可以让您控制乐高Mindstorm部分。BrickPi要叠加在树莓派之上,并要连接LEGO MINDSTORMS电机和传感器。


BrickPi和树莓派合并

BrickPi允许您使用任意语言控制Mindstorms的电机和传感器,可选语言包括C语言,Python和Scratch。

本教程中涉及内容

在本教程中,我们将介绍如何开始使用BrickPi。我们将向您展示如何将BrickPi连接到树莓派,搭建积木,连接电机/传感器器,并写了一个简单的Python脚本来控制电机/传感器。

所需配件

  • 树莓派
  • SD卡
  • 某种显示器
  • HDMI连接线
  • 适配器电源 – 9VDC-12VDC
  • DC插孔适配器 – 母口
  • 9V快速连接器
  • 键盘和鼠标
  • LEGO MINDSTORMS伺服电机
  • 乐高Mindstroms触摸传感器

推荐阅读

配置SD卡

重要提示:BrickPi推荐使用官方提供的Raspbian版本,里面已经安装好所有的驱动程序,省去了繁杂的配置过程。下载地址:http://sourceforge.net/projects/dexterindustriesraspbianflavor/

所需下载

  • 下载官方的Raspbian版本
  • 下载Win32DiskImager
  • 7-Zip解压缩工具

写入SD存储卡步骤

  1. 将SD卡插入电脑
  2. 安装Win32DiskImager
  3. 解压Raspbian文件
  4. 以管理员身份运行Win32DiskImager
  5. 选择解压开的镜像文件
  6. 选择SD卡的盘符
  7. 点击”Write(写入)”


不要忘记以管理员身份运行!

BrickPi装配

您需要将BrickPi搭建起来,并将树莓派和乐高配件链接好。

搭建

1)打开BrickPi硬件从盒中取出的并撕掉保护纸


2)用6mm螺丝从下往上将2个小螺杆固定到底部的塑料板上。


3)用最短的5mm螺丝把树莓派固定到底部支架。


4)用4颗8mm螺丝将四根最长的六角铜柱分别拧如四角孔洞。


5)将BrickPi插头插到树莓派对应的GPIO插针上。


6)(可选)现在你可以将BrickPi上的各个电机和传感器接口做上标记以便识别。我推荐S1、S2等表示传感器端口,MA、MB等用于马达端口。


7)最后利用最后的4颗螺丝将上层盖板安装好。


8)插入SD卡。


拼装乐高积木

使用乐高积木连接到顶部和底部,以确保BrickPi和树莓派固定到你的乐高作品。


乐高积木栓插到面板中的孔洞


乐高积木搭建

任何的LEGO MINDSTORMS传感器可以连接到标有”S”开头的的端口上。需要记住,你插入的传感器到的端口号。


传感器端口位置

电机可以连接到标有”M”开头的端口。


电机端口位置

在这个例子中,连接一个触摸传感器S1和一个伺服电机端口MA。


连接外围设备

参考树莓派教程,我们需要连接键盘,鼠标和显示器。插上键盘和鼠标插入USB端口,使用HDMI线连接显示器。


BrickPi供电

官方推荐了几种不同供电方式,我们可以根据自己的情况选择不同的方案。


BrickPi官方的供电指南

电池相对是昂贵的,为了得到无限的运行时间和提供更高的输出功率带动更多的电机,我们需要动手对电源适配器做点改动。

1)将电源线切开,如图所示。


2)将红色线接正极(+),黑线接负极( – )接入螺丝端子DC插口。


3)将连接器插入BrickPi。


4)将9V或12V电源适配器插入DC插孔适配器的另一端。

5)注意:请确保您的显示器连接到树莓Pi和开启!

6)插上电源,启动系统。

警告:大功率稳压器(TO-220封装)会发热!插拔电源时要小心。


7)接入树莓派启动界面!


配置树莓派

树莓派启动之后,你应该看到官方的默认桌面。系统的默认用户名和密码是:

用户名:pi
密码: raspberry


如果你想配置树莓派,打开一个终端:


然后输入以下命令:

sudo raspi-config

您将看到与树莓派配置屏幕。推荐扩展文件系统。其他选项请参考树莓派的相关资料。


编程

打开一个终端,我们将对电机和传感器编写一个测试文件。打开Leadpad(Raspbian的默认文本编辑器)。

leafpad motor_sensor.py

将一下代码输入到文本编辑器:

#######################################################

from BrickPi import *

BrickPiSetup()

BrickPi.SensorType[PORT_1] = TYPE_SENSOR_TOUCH

BrickPi.MotorEnable[PORT_A] = 1

BrickPiSetupSensors()

while True:

    result = BrickPiUpdateValues()

    if not result:
        if BrickPi.Sensor[PORT_1]:
            BrickPi.MotorSpeed[PORT_A] = 200
        else:
            BrickPi.MotorSpeed[PORT_A] = 0
    time.sleep(0.01)

########################################################

 


保存并退出Leafpad。在控制台,输入以下命令:

sudo python motor_sensor.py

现在,只要您按乐高触摸传感器,伺服电机就会转动!


按Ctrl + C结束程序。

更多资源

BrickPi对LEGO MINDSTORMS套件做了很大扩展。要了解更多有关BrickPi资源,查看他们的网站:http://www.dexterindustries.com/BrickPi/

官方也提供了很多有趣的项目实例:http://www.dexterindustries.com/BrickPi/projects/

资源

  • BrickPi官方系统下载地址:http://sourceforge.net/projects/dexterindustriesraspbianflavor/i
  • 奇果派的博客:http://www.7gp.cn