关注  | 分享:

树莓派做的截图器

Mr.D 2018-08-17

生活科技

这个教程将展示如何使用树莓派和按钮触发网络摄像头,并且截图保存。Bash脚本在启动时运行,它会启动一个GPIO端口的Python脚本。按下按钮时,将运行“fswebcam”命令。

项目详情

项目创意灵感
第1步:材料
- Raspberry Pi 2模型B.
- 网络摄像头(确保你的相机是UVC协议的)
- 按钮
- 面包板
- 电缆
设计特色创新
第2步:接线
- 将按钮连接到GPIO引脚:GPIO15(引脚12)和GND(引脚6)。
- 将网络摄像头连接到USB端口。
要确保您的相机已被识别,请列出以下设备:
$ cd / dev /
$ LS
您的相机应列为/ video *
系统原理功能
第3步:使用Python创建程序
在Python 3中打开一个窗口:菜单>编程> Python 3>文件>新窗口
复制以下代码并另存为/home/pi/camerascript.py

import subprocess
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)

GPIO.setup(12, GPIO.IN, pull_up_down=GPIO.PUD_UP)

i=0

try:

while True:

input_state = GPIO.input(12)

if input_state == 0:

subprocess.call("fswebcam -d /dev/video0 -r 1024x768 -S0 "+str(i)+"pic.jpg",shell=True) print('PIC CAPTURED')

i=i+1

time.sleep(0.2)

except KeyboardInterrupt:

GPIO.cleanup()
完成情况概述
第4步:Bash脚本
打开终端运行:
$nano bashscript.sh
Add the following lines to /home/pi/bashscript.sh

#!/bin/bash
echo Launching camera
sudo python camerascript.py


第5步:使您的脚本可执行并在启动时运行
首先,让你的bash脚本可执行:
$chmod ugo +x /home/pi/bashcript.sh

其次,键入$ nano~ / .bashrc,并在文件末尾添加以下行以使脚本在启动时运行:
#run startup script

echo .bash running

bash bashscript.sh

Third, autologin as pi user:

$sudo nano /etc/inittab

修改这行: 1:2345:respawn:/sbin/getty --noclear 38400 tty1
添加这行: 1:2345:respawn:/bin/login -f pi tty1 /dev/tty1 2>&1
最后,重启树莓派

$sudo reboot


第6步:结果
如视频中展示的,按下按钮,会在/ home / pi /中创建了新的jpeg文件
祝你玩的开心!

项目采用平台:

同学讨论

苏ICP备2021055573号-1 © 2023 云行学堂(江苏)科技有限公司