设为首页收藏本站
查看: 932|回复: 9

用树莓派和显示器制作一面“魔镜”-- 含源码!

[复制链接]
字体大小: 正常 放大
累计签到:64 天
连续签到:8 天

企业名称
兔米周科技

饲养员

Rank: 9Rank: 9Rank: 9

积分
51164

最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老测评达人

发表于 2016-6-9 19:18:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转3D打印

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子说明

这篇文章介绍的是用树莓派、显示器、双面镜制作的一面镜子。这面镜子中包含了一个黑色背景的网页,可以显示天气预报、日期、时间以及一句随机生成的问候语。完成这个DIY制作无需修改硬件底层,只需一点点木工技能和修改一些代码。
1864986021137481.jpg

所需要的材料

  1. 一台显示器
  2. 一块和显示器大小相同的双面镜
  3. 一些2*4米的细木条
  4. 树莓派机器必要组件(电源、HDMI线、usb无线网卡、键盘)
  5. 木工工具(锯子、磨砂机、螺丝刀)
  6. 螺丝、液态钉子
  7. 选一个合适的显示器
复制代码


镜子的大小完全由显示器的类型和大小决定,所以我希望得到一个尽量大的显示器,最好还有一个可以移动的手臂,便于固定在箱子中。除此之外,还要确保你拿到的显示器能输出至中心显示器上而不是其他的显示器上。基于各种条件的限制,我最终选择了BENQ GL2760H 27英寸的显示器。

1864986021137482.jpg
选一面镜子

镜子是最为关键的一个部分,需要双面镜,有点像水晶和塑料。它比一般的镜子要好操作,可以切成任意你想要的形状,所以如果买不到和显示器一样大的镜子,也可以买一块稍微大点的镜子。
1864986021137483.jpg

裁剪掉显示器的边框(也可不裁掉)

为了能更好的切合箱子的大小,我去掉了显示器周围的塑料外壳。去壳时一定要细心,显示器的塑料外壳很薄,不要损坏了中间的金属部分。

1864986021137484.jpg 1864986021137485.jpg

制作箱子

这部分是最为有趣的部分,我选择了4块4*2的木板,裁剪成适合显示器大小的长度。将4块木块摆放成长方形盒子状,先用夹子固定住,然后再用螺丝固定。
1864986021137486.jpg

木板盒子的上下两面各打了几个空,以给中间的树莓派输送流动的空气,因为每个人都不希望自己的树莓派在封闭的环境中变成“树莓干”。

还需要注意的是,最下面有一个空要比较大一点,大到可以穿过一个电源插头,因为之后需要接通显示器和树莓派的电源。

制作支架

起初,我想做一个45

安装Chromium

  1. wget <a href="http://ftp.us.debian.org/debian/pool/main/libg/libgcrypt11/libgcrypt11_1.5.0-5+deb7u3_armhf.deb" target="_blank">http://ftp.us.debian.org/debian/pool/main/libg/libgcrypt11/libgcrypt11_1.5.0-5+deb7u3_armhf.deb</a>
  2. wget <a href="http://launchpadlibrarian.net/218525709/chromium-browser_45.0.2454.85-0ubuntu0.14.04.1.1097_armhf.deb" target="_blank">http://launchpadlibrarian.net/218525709/chromium-browser_45.0.2454.85-0ubuntu0.14.04.1.1097_armhf.deb</a>
  3. wget <a href="http://launchpadlibrarian.net/218525711/chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.14.04.1.1097_armhf.deb" target="_blank">http://launchpadlibrarian.net/218525711/chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.14.04.1.1097_armhf.deb</a>

  4. sudo dpkg -i libgcrypt11_1.5.0-5+deb7u3_armhf.deb
  5. sudo dpkg -i chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.14.04.1.1097_armhf.deb
  6. sudo dpkg -i chromium-browser_45.0.2454.85-0ubuntu0.14.04.1.1097_armhf.deb
复制代码

Chromium 开机自启

现在已经安装了chromium,我们可以修改它的配置令其开机自动运行,并全屏显示:

修改autostart设置:

  1. sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
复制代码

在这一行中添加 # 注释禁用屏保:

  1. @xscreensaver -no-splash
复制代码

在配置中增加:

  1. @xset s off @xset -dpms @xset s noblank /usr/bin/chromium --noerrdialogs --kiosk --incognito "http://localhost"
复制代码

保存并退出,现在我们已经禁用了屏保、禁用电源管理设置,chromium浏览器在本地打开了kiosk模式。

配置WIFI连接

有很多设置树莓派无线的教程,这里我们用终端编辑无线配置文件wpa_supplicant:

  1. sudo nano /etc/Network/interfaces
复制代码

修改网络配置:

  1. network={ ssid="无线SSID名称" psk="无线密码" }
复制代码

建议不使用过时不安全的WEP加密。

使用下面的两个命令重启WIFI连接,使配置修改生效:

  1. ifdown wlan0
  2. ifup wlan0
复制代码

如果遇到一些不起眼的报错,不要担心,我也碰到了,你可以通过测试来确定修改是否生效。

  1. ifconfig
复制代码

如果你的无线网卡wlan0已经分配到了一个IP地址,那么你可以断开树莓派的网线,然后安装好镜子的后盖了。这里我用四枚钉子把背板固定了一下:
1864986021137487.jpg

设置WEB页面

接下来我决定使用PHP micro-framework搭配jQuery和MomentJs。

搭建WEB服务

接下来需要搭建一台WEb服务器,由于我们用的是Lumen,所以我们需要搭建PHP环境:

  1. sudo apt-get update sudo apt-get install nginx php5-fpm php5-cli php5-mcrypt git
复制代码

安装的过程会花费一些时间,安装完成以后你需要修改nginx的配置文件,让nginx知道MirrorMirror的路径:

  1. sudo nano /etc/nginx/sites-available/mirror.conf
复制代码

粘贴以下配置:

“` server { listen 80; server_name localhost; root /home/pi/projects/MirrorMirror/public;

  1. index index.html index.htm index.php;
  2. charset utf-8;
  3. location / {
  4.     try_files $uri $uri/ /index.php?$query_string;
  5. }
  6. location = /favicon.ico { access_log off; log_not_found off; }
  7. location = /robots.txt  { access_log off; log_not_found off; }
  8. access_log off;
  9. error_log  /var/log/nginx/myapp-error.log error;
  10. sendfile off;
  11. client_max_body_size 100m;
  12. location ~ \.php$ {
  13.     fastcgi_split_path_info ^(.+\.php)(/.+)$;
  14.     fastcgi_pass unix:/var/run/php5-fpm.sock;
  15.     fastcgi_index index.php;
  16.     include fastcgi_params;
  17.     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  18.     fastcgi_intercept_errors off;
  19.     fastcgi_buffer_size 16k;
  20.     fastcgi_buffers 4 16k;
  21. }
  22. location ~ /\.ht {
  23.     deny all;
  24. } } ```
复制代码
游客,如果您要查看本帖隐藏内容请回复

*原文地址: dylanjpierce ,FB小编0xroot编译,文章有修改,转载请注明来自Freebuf黑客与极客(FreeBuf.COM)

评分

参与人数 1兔子糖 +4 +4 收起 理由
兔子神 + 4 + 4 准备入手树莓派

查看全部评分

科技享受生活,艺术妆点生活!3D打印兔米周科技欢迎您~~

欢迎加入我们!QQ群1:456344941 群2:481977465 群3:468856349

累计签到:64 天
连续签到:8 天

企业名称
兔米周科技

饲养员

Rank: 9Rank: 9Rank: 9

积分
51164

最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老测评达人

 楼主| 发表于 2016-6-9 19:48:37 | 显示全部楼层
楼主加油,我们都看好你哦。
科技享受生活,艺术妆点生活!3D打印兔米周科技欢迎您~~

欢迎加入我们!QQ群1:456344941 群2:481977465 群3:468856349

尚未签到

兔兔仙

Rank: 4

积分
679
QQ
发表于 2016-6-18 11:04:45 | 显示全部楼层
正好需要
回复

使用道具 举报

尚未签到

兔兔神

Rank: 3Rank: 3

积分
203
发表于 2016-8-8 08:49:43 | 显示全部楼层
楼主加油,我们都看好你哦。

尚未签到

兔兔神

Rank: 3Rank: 3

积分
203
发表于 2016-8-8 08:51:02 | 显示全部楼层
淡定,淡定,淡定……

尚未签到

大白兔

Rank: 2

积分
78
QQ
发表于 2016-8-15 14:04:02 | 显示全部楼层
楼主,看好你哦,,,

尚未签到

大白兔

Rank: 2

积分
78
QQ
发表于 2016-8-15 14:04:23 | 显示全部楼层
楼主,看好你哦,,,激动人心,无法言表!

尚未签到

小白兔

Rank: 1

积分
9
发表于 2018-4-9 21:06:17 | 显示全部楼层
收藏了 想试试自己做一个

尚未签到

大白兔

Rank: 2

积分
63
发表于 2018-4-29 16:41:56 | 显示全部楼层
小马扎坐好

点评

谢谢支持  详情 回复 发表于 2018-4-29 17:28
累计签到:64 天
连续签到:8 天

企业名称
兔米周科技

饲养员

Rank: 9Rank: 9Rank: 9

积分
51164

最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老测评达人

 楼主| 发表于 2018-4-29 17:28:48 | 显示全部楼层

谢谢支持
科技享受生活,艺术妆点生活!3D打印兔米周科技欢迎您~~

欢迎加入我们!QQ群1:456344941 群2:481977465 群3:468856349

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为兴趣而生,兔米周---更懂你。 登录兔米周 立即注册
快速回复 返回顶部 返回列表