《练摊神器》之DF拍立得相机

2020-06-061.1万
精华项目
AI 快速预览详细 收起
DF拍立得相机是一个基于树莓派4B的DIY项目,集按钮控制、拍摄、冲洗于一体。项目包括树莓派4B、摄像头模块、热敏打印机等硬件,并通过Python代码实现开机自动运行程序。用户只需按下按钮即可采集照片并打印出来。适用于地摊、小店等场景,轻松留住精彩瞬间。
《练摊神器》之DF拍立得相机图3

   5月31日,中央电视台《新闻30分》、《新闻直播间》聚焦“地摊儿”;6月1日至2日,国务院总理李克强亲临山东烟台、青岛考察。在烟台市,李克强总理在某摊位前称赞地摊经济、小店经济是就业岗位的重要来源,是人间的烟火,和“高大上”一样,是中国的生机。

    6月的桑拿天“”地摊“”成为朋友圈最火的消夏话题;心动不如行动,快带上你的“练摊神器”,和造作一夏大军们一起,去创造属于自己的精彩瞬间吧!


一、项目简介
练摊神器~DF拍立得相机:
集按钮控制、拍摄、冲洗于一体,拍摄后直接打印照片。
开机指示灯,按键控制,摄像头取景,Python代码,热敏打印机出片,留住精彩瞬间。

项目具体功能:

        1.树莓派开机自动运行DFcamera2.0.py程序

        2.程序运行后蓝色指示灯亮,开始工作。

        3.按钮1(5号端口),按下采集照片,并打印出来。

        4.按钮2(6号端口),关闭蓝色灯,退出程序。

《练摊神器》之DF拍立得相机图1

材料清单

1.Raspberry Pi 4 Model B *1 (电源需自备) https://www.dfrobot.com.cn/goods-2617.html

2.树莓派4B/3B+ IO扩展板 *1  https://www.dfrobot.com.cn/goods-2041.html

3.数字食人鱼蓝色LED发光模块(可用其他颜色代替) *1  https://www.dfrobot.com.cn/goods-80.html
4.碰撞传感器(手感超赞) *2   https://www.dfrobot.com.cn/goods-639.html

5.树莓派摄像头模块 500万像素 *1  https://www.dfrobot.com.cn/goods-1023.html

6.嵌入式热敏打印机(套件自带电源和数据线) *1 https://www.dfrobot.com.cn/goods-1795.html

7.红色纸盒(买DF产品、免费赠送)

硬件全家福



二、硬件调试

1.安装摄像头



2.安装扩展板
从此处需注意,扩展板底部针脚不要把摄像头的数据线压断。
3.安装碰撞传感器,端口为5、6号口;
此处可参考颜色,DF的产品就是这么简单高效。

4.连接LED模块 端口为12号口
5.USB端口安装热敏打印机
打印进的更详细安装教程可参考我的其他帖子
6.整体效果(电源线还没连接),确认没问题;分别连接打印接和树莓派的电源,开机调试代码

三、软件测试
VNC连接树莓派,调试程序;
该操作隐藏的一个坑:
注意调试的普通PC尽量不要安装打印机,否则调试时,会把PC端的打印机自动默认打印机;
推荐使用安装驱动方式调用热敏打印机!
打印机驱动安装教程,请参考下面帖子
https://mc.dfrobot.com.cn/thread-305550-1-1.html
《练摊神器》之DF拍立得相机图2
系统:树莓派2020-02-13-raspbian-buster-full
软件:Python 2.7.6和3.43
代码:简单、易懂
[mw_shl_code=cpp,false]# -*- coding: utf-8 -*-
from RPi import GPIO
import time
import os
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(5, GPIO.IN)
GPIO.setup(6, GPIO.IN)
GPIO.setup(12,GPIO.OUT)
GPIO.output(12,GPIO.HIGH)
try:
    while True:
        if (GPIO.input(5)==GPIO.LOW):
            print('拍照開始!')
            os.system("raspistill -n -t 200 -w 512 -h 384 -o - | lp")
            time.sleep(0.3)
        if (GPIO.input(6)==GPIO.LOW):
            print('拍照結束,再見!')
            time.sleep(0.3)
            GPIO.output(12,GPIO.LOW)
            break
        else :
            print('請按快門拍照!')
            time.sleep(0.3)
except Exception :
    print('erorr')
GPIO.output(12,GPIO.HIGH)
GPIO.cleanup()
[/mw_shl_code]
上传代码测试



树莓派设置自动启动
终端输入命令
sudo su
sudo nano /etc/rc.local
打开文件后在exit 0的前一行添加以下指令
sudo python /home/pi/DFcamera2.0.py &
关机,重启,测试程序

四、组装
DF的小红盒切刻出外壳

放入树莓派,侧面掏出按钮1和按钮2
固定蓝色LED灯
固定摄像头
固定打印机
关闭盒盖,固定侧面控制按钮
组装完成
五、整体测试


六、小结

本作品基本实现了按钮控制,相机拍摄、打印的功能;
如果后期资金充足,可扩展部分如下:
1.树莓派配个屏幕,增加取景框功能
2.增加语音模块,提供语音提示
3.升级彩色打印机,升级为自拍影棚
4.升级代码,然相机可以拍摄出更多模式的照片
5.无限可能期待您的加入。。。。。。。。

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(7)
pATAq
pATAq
前天的直播内容:

@MR Guo

1. Printing implementation 选择
bitImageColumn 否则打印图片会乱码
2. 打印二维码 size 根据情况设置,
过大会乱码,过小会扫码失败
还有你是什么型号的热敏打印机,不同的打印机支持的功能不同,另外使用USB接口和UART接口使用上也有些不同
Forgotten
Forgotten
顶上搞个取景框,显示拍照区域就更好了
gray6666
gray6666
作者
回复Forgotten
攒钱买个屏幕
gray6666
gray6666
作者
Python,espson 不知何故我这里运行报错。
下周我测试,黑白模式。
pATAq
pATAq回复Mr Guo
你卡哪了?打印机初始化、图像打印乱码、图像不超过255px?
Mr Guo
Mr Guo回复pATAq
这个库咋用,求大佬指教,同样没跨过去
共6条回复,已加载2条,点击查看更多共6条回复,已加载全部
rzyzzxw
rzyzzxw
真好
pATAq
pATAq
感谢分享!有个问题,关于打印质量的
1 我测试数个模式之后,发现用pythonescpos 打印出来的要比用 zj58驱动打印出来的图像质量要好,不知道你这里如何
2 调整摄像头 特效为黑白模式打印出来的效果会不会有区别?
gray6666
gray6666
作者
感谢留言
hnyzcj
hnyzcj
不错
- 没有更多了 -