在树莓派中玩转Sense HAT
文章目录
上图来自ESA(欧洲空间局)
介绍
从Sense HAT的产品介绍中,我们知道Sense HAT是Raspberry Pi的附加板,直接插到树莓派的针脚阵列上即可使用,十分方便
Sense HAT为Astro Pi而生,它在2015年登上国际空间站,有兴趣的同学可以看这里,目前这个活动吸引了很多孩子的眼球,毕竟你写的代码可能跑在空间站里呢
我上周入手了一块Sense HAT,它长这样:
我们可以看到,它有一块8x8的led阵列,值得一提的是它是RGB的,可以把它视为一个彩色像素屏。此外它还带有一个五个按钮的操纵杆,同时携带以下传感器:
- 陀螺仪传感器
- 加速度传感器
- 磁传感器
- 温度传感器
- 气压传感器
- 湿度传感器
本着自带电池的python精神,当然也是有一个python库来方便你使用这些硬件设备的:Python module to control the Raspberry Pi Sense HAT
是不是有点激动!你再不用吭哧吭哧地逐个购买传感器,然后吭哧吭哧地去连线,还得担心引脚被占用而购买面包板,接好传感器,你又得吭哧吭哧地去网上逐个搜索驱动它们的代码,不出意外的话,许多地代码年久失修跑不起来,又或者系统地更新导致的不兼容…
现在你一次性得到这么多与物理世界沟通的设备,而需要做的不过是把这块板子插入树莓派
上手
首先你当然需要一个可运行的树莓派,如果你是新手,可以参考我之前的文章:树莓派折腾笔记之系统安装与配置
我用的是2016-05-27的版本(最新的版本特别不稳定,我当小白鼠也是当够了)
如果你用的也是我这个版本,那么你的sense-hat不是最新的(默认是2.1.0),你最好去更新以下它(截止到2017-05-20,sense-hat最新的版本是2.2.0)
更新python-sense-hat
直接更新:sudo pip install sense-hat==2.2.0
尽管也能安装成功,不过使用的时候会报错,系统依赖问题,你需要按照下边的做法:
|
|
连接硬件
连接硬件特简单,直接对着针脚插上去就行,如果你连外壳都买了,组装好应该和下边一样:
美美哒
跑起来
我们可以跟着起步教程来做:Getting Started with the Sense HAT,你可以现在网页上看模拟器的表现
首先当然是hello world
啦
|
|
在树莓派中运行上边的代码,led屏幕上将滑过hello world
,很像店面门口电子公告板上闪烁的: 春节快乐
这种公告
不过遗憾的是,并不能显示中文
其他传感器
其他传感器的用法,在Getting Started with the Sense HAT都有范例
你也可以把A Guide to Astro Pi当成学习传感器入口
跑个游戏玩
黑客门对像素游戏的痴迷可以追溯到计算机早期,《黑客:计算机革命的英雄》一书中提到的life就是有趣的像素游戏,我原本想在这个8*8的led阵列上做一个life,后来在trinket.io已经有人做了不少有意思的游戏,于是决定先试玩它们
flappy是我喜欢的一个游戏,恰好看到有人把它移植到sense hat里,就玩了下,很有意思
我把代码放到gist上了,你可以直接从gist上拉取代码:wget https://gist.githubusercontent.com/wwj718/81ba103c1e64c66c5bec3eb94cbfb062/raw/1a0a6547b5c9e059029d09c2df98057e2b5e7816/flappy_hat.py
然后运行它:python flappy_hat.py
哈哈 玩得开心
脑洞
我之前用树莓派和超声波传感器/震动传感器做了flappy(疯狂的小鸟)的体感版本
如今我们有了sense hat要做体感游戏容易多了,它有陀螺仪传感器和加速度传感器 ,而且非常灵敏
等之后闲下来慢慢玩
官方的有趣教程
树莓派官方网站有许多开脑洞的教程:
- Make a Pong clone for your Sense HAT
- Sense Hat Marble Maze
- Interactive Pixel Pet
- minecraft_colour
- Displaying data from the Sense HAT in Minecraft
资料
文章作者 种瓜
上次更新 2017-05-14