ANAVI光酷毙了是一款最适合树莓Pi Zero (W/WH)板的扩展板,但也可以与任何其他具有40针头的树莓Pi板工作,可以控制12V RGB LED带和传感器。该项目的众筹刚刚在CrowdSupply上成功完成,获得了82个承诺,但你仍然可以以25美元以上的价格预订电路板或套件。
开发人员Leon ANAVI不久前给了我一个初学者工具包,这个周末我有时间测试了电路板的基本功能。
该传感器基于BH1750环境光强传感器。
该板需要12V电源,底部只配有一个40针母头连接到您选择的树莓派板。
我决定用树莓派2板,因为我已经安装了树莓8 (Jessie),我已经用它ANAVI红外酷毙了.安装非常容易,无需焊接:
- 将单板插入40针RPi头
- 将RGB LED带线插入蓝色端子,用精密螺丝驱动拧紧
- 可选地在相应的I2C/PIR传感器头中添加任何您希望使用的I2C传感器或PIR传感器
- 将RGB LED带放置在一个“战略”位置
我有点晚了,但我把它包在圣诞老人的帽子上了。
我们现在可以切换到软件安装,我遵循Github的说明.我们需要树莓派,考虑到树莓派基金会已经发布了用于RPi的Debian 9自从我上次玩这个板,我首先选择从Debian 8升级到Debian 9,但发现这花了很长时间,我下载并安装了Raspbian拉伸Lite而是把我的SD卡擦干净,重新开始。
请注意,Raspbian现在默认禁用SSH,所以对于不使用串行连接的无头设置,你需要通过将一个名为' SSH '的文件放置到SD卡的启动分区来启用SSH。(例如/ boot / ssh)。我这样做了,我可以连接以太网后通过ssh连接。
现在我们已经通过SSH/Terminal/HDMI连接到树莓派板,可以将系统升级到最新版本,安装所需的软件包:
1
2
3.
|
sudo
恰当的
更新
sudo
恰当的
升级
--
修复
-
失踪
sudo
恰当的
安装
-
y
git
i2c
-
工具
vim
git
-
核心
python
-
dev
python
-
零售物价指数
.
gpio
pigpio
|
包列表与wiki上的略有不同,因为默认情况下,Raspbian Lite缺少pigpio等需要手动安装的包。一旦完成,让我们运行raspi-config:
1
|
sudo
raspi
-
配置
|
我们现在可以加载pigpio守护进程,并打开红灯:
1
2
|
sudo
pigpiod
猪
p
9
255
|
关掉红灯,打开蓝灯:
1
2
|
猪
p
9
0
猪
p
10
255
|
关掉蓝色灯,打开绿色灯:
1
2
|
猪
p
10
0
猪
p
11
255
|
对我来说一切正常,所以我们可以确认硬件工作正常。但你可能想编写自己的程序来控制LED带,并帮助你里昂编写了一个演示程序随机更新灯的颜色。
该程序需要WiringPi,所以让我们检索代码并构建它:
1
2
3.
4
|
cd
~
git
克隆
git
:
/ / git.drogon.net/wiringPi
cd
wiringPi
.
/
构建
|
我们现在可以得到用C语言编写的样例应用程序,以PWM控制带:
1
2
3.
4
5
|
cd
~
git
克隆
https
:
/ / github.com/AnaviTechnology/anavi-examples.git
cd
~
/
anavi
-
例子
/
anavi
-
光
-
酷毙了
/
光
-
演示
使
.
/
演示
|
观看一个2分钟的演示板,上面显示了基本命令和演示程序。
演示只控制RGB LED条,但没有传感器。首先,让我们看看能否找到光传感器:
1
2
3.
4
5
6
7
8
9
10
|
sudo
i2cdetect
-
y
1
0
1
2
3.
4
5
6
7
8
9
一个
b
c
d
e
f
00
:
--
--
--
--
--
--
--
--
--
--
--
--
--
10
:
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
20.
:
--
--
--
23
--
--
--
--
--
--
--
--
--
--
--
--
30.
:
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
40
:
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
50
:
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
60
:
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
70
:
--
--
--
--
--
--
--
--
|
找到I2C地址0x23。现在我们可以构建同样用C语言编写的示例应用程序:
1
2
|
cd
~
/
anavi
-
例子
/
传感器
/
BH1750
/
c
/
使
|
室内灯光关闭后的结果:
1
2
3.
|
.
/
BH1750
BH1750
传感器
模块
光
:
50
勒克斯
|
房间灯亮时的效果:
1
2
3.
|
.
/
BH1750
BH1750
传感器
模块
光
:
117
勒克斯
|
用手覆盖传感器的结果:
1
2
3.
|
.
/
BH1750
BH1750
传感器
模块
光
:
0
勒克斯
|
获得亮度值的函数的源代码非常简短,易于理解:
1
2
3.
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# include < wiringPi.h >
# include < wiringPiI2C.h >
# include“BH1750.h”
int
getLux
(
int
fd
)
{
wiringPiI2CWrite
(
fd
,
0 x10
)
;
延迟
(
LUXDELAY
)
;
int
词
=
wiringPiI2CReadReg16
(
fd
,
0 x00
)
;
如果
(
-
1
==
词
)
{
返回
-
1
;
}
int
勒克斯
=
(
(
词
&
0 xff00
)
>>
8
)
|
(
(
词
&
0 x00ff
)
<<
8
)
;
返回
勒克斯
;
}
|
因此,例如,它将是简单的修改RGB LED演示代码,只有当lux值小于给定值时才启动LED带。这就是这个入门指南的全部内容,在我的情况下,仅仅按照Github上的说明进行就相当顺利。
如果你想走得更远,里昂补充道家支持助理使用Hassbian分布,并正在编写集成指令宜家GRÖNÖ台灯ANAVI Light pHat(拉伸进球)。
Jean-Luc于2010年开始兼www.yabo188.vip职创办CNX软件,2011年辞去软件工程经理的工作,开始全职撰写每日新闻和评论。