树莓派 micropython_用树莓派Raspberry Pi和Micro:bit做一个自拍器

在这个项目中,我们将使用Python来构建一个由Micro:bit触发树莓派Raspberry Pi和相机模块的自拍器。这是开始使用硬件和简单文本编程的好方法。

我们将学习:

如何设置Raspberry Pi相机

如何在Micro:bit和Raspberry Pi上使用输入和输出引脚

用Python代码控制GPIO引脚

用Python代码控制相机模块

材料:

带有SD卡和常规外围设备的Raspberry Pi

wx_article_20181017163150_DzQ02j.jpg

Raspberry Pi camera module

wx_article_20181017163152_iP0tsd.jpg

Micro:bit

wx_article_20181017163152_kD3gTA.jpg

USB A to micro USB-B cable

wx_article_20181017163152_OvICNB.jpg

双头鳄鱼夹线3条

wx_article_20181017163152_fDZ3mV.jpg

软件安装:

更新的Raspbian并安装Mu,具体步骤请参考往期文章。

安装配件Pi camera, 驱动及库文件请从Raspberry Pi官方网站下载。

将Micro:bit和Pi camera module连接到Raspberry Pi主板上

1.将公母对跳线连接到Raspberry Pi上的GPIO引脚4。

2.拿一条鳄鱼夹电缆,将一端连接到您的micro:位标记为0的焊盘,另一端连接到标有GND或地线的引脚。

3.将另一根电缆连接到针脚1,将另一端连接到您的RaspberryPi上使用的跳线的阳端,如下图所示:

wx_article_20181017163152_GmvaMo.jpg

这样就创建好触发电路。接下来启动Raspberry Pi并加载Mu。

1.打开mu,然后单击New打开一个空白的未命名的文件。

2.单击保存,将文件命名为microbit-trigger.py,然后按键盘上的Enter键。

3.您的文件中的第一行应该已经输入,并且显示为:

from microbit import *

该行导入了MicroPython的Python库模块供您使用。

4.接下来,键入以下命令创建一个循环:

while True:

注意:大写字母和小写字母在输入Python代码时非常重要。请注意,True最后有大写T和冒号。在这一行之后写的所有内容都应该缩进四个空格。

5.现在我们需要设置一个条件,以便当连接到micro:bit上的引脚0的电缆被触摸时,它会在LED矩阵上显示一条消息并触发相机。我们在Python中使用这个词来做到这一点:

1. while True:

2. if pin0.is_touched():

3. display.scroll("saycheese!")

4. sleep(500)

5. pin1.write_digital(1)

6. sleep(5000)

pin1.write_digital(0)

6. 每次绕这个循环,计算器询问连接到引脚0的电缆是否被触摸。如果是,那么消息“说奶酪!”应该出现并告诉销1变高或打开。这是连接到Raspberry Pi的针。我们将在下一步中使用该引脚来触发相机拍摄照片并进行存储。

wx_article_20181017163153_9wGNHT.jpg

7. 保存文件,然后点击Flash将代码发送到你的micro:bit。您必须执行此步骤来测试您的触发器是否正常工作。一旦micro:bit背面的黄色灯停止闪烁,按下它旁边的复位按钮,然后触摸地面并插入0个鳄鱼夹电缆。这应该导致文本滚动播放在micro:bit上的LED矩阵。

现在开始编辑Pi camera.

1.点击编程,从主菜单中找到并打开Python3(IDLE)。这是您将为您的相机编写您的Python代码的地方。

2.创建一个新文件并将其保存为microbit-camera.py。

3.首先通过输入以下内容导入此程序中所需的所有库和模块:

from picamera import PiCamera

from gpiozero import Button

from time import sleep

接下来,您需要告诉计算器哪个引脚将用于触发相机拍摄照片。您将microbit连接到GPIO引脚4.在导入下方,键入:

button = Button(4, pull_up = False)

然后写入指令序列,以在触摸微位置电缆的人触发时拍摄照片。首先,从相机显示预览,键入以下内容:

with PiCamera() as camera:

camera.start_preview()

sleep(5)

虽然显示的是预览,您可以抓到到自拍器的位置中。

在下面,键入等待the micro:bit触发的指令:

button.wait_for_press()

camera.capture('selfie.jpg`)

camera.stop_preview()

该程序将等待micro:bit的触发器,然后拍摄照片并将其存储在名为selfie.jpg的文件中,然后停止相机预览。

wx_article_20181017163153_nfEMY3.jpg

保存文件。检查您的micro:bit触发器是否正常工作,然后单击运行和运行模块以启动摄像头代码,一个自拍器就成功了。

wx_article_20181017163153_TklR26.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值