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

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

咱们将学习:web

如何设置Raspberry Pi相机                                                                              编程

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

用Python代码控制GPIO引脚学习

用Python代码控制相机模块测试

材料:网站

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

Raspberry Pi camera moduleorm

Micro:bitblog

USB A to micro USB-B cable

双头鳄鱼夹线3条

软件安装:

更新的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上使用的跳线的阳端,以下图所示:

这样就建立好触发电路。接下来启动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的针。咱们将在下一步中使用该引脚来触发相机拍摄照片并进行存储。

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的文件中,而后中止相机预览。

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

原文参考

https://mp.weixin.qq.com/s?__biz=MzU0MTg0ODIzNA==&mid=2247483907&idx=1&sn=de57f662ad04ea75f64ababe9f5e3c5e&chksm=fb22e5c6cc556cd0bdf07ea24bb1c1f9fd6a9b5e2e24218198b7f66e3eb4eec59fbe8d1bc873#rd

相关文章
相关标签/搜索