lou 发表于 2020-4-30 15:39:24

基于树莓派的 LED 数字温度计

本帖最后由 lou 于 2020-4-30 15:41 编辑

基于树莓派的 LED 数字温度计



本期带大家制作一个数字温度计,可以作为一款很个性的挂件装饰你的房间哦!只需要树莓派Zero W、LED 灯带、OLED 显示屏和定制的 PCB、胶合板或亚克力板这些组件就可以了,使用 Raspbian 操作系统。
特色:
1、循环显示城市列表,并在 OLED 显示屏和 LED 灯带上显示温度。当然你可以使用侧面的按钮手动选择要显示的城市。2、由 LDR 控制,几分钟内就会默认非活动状态,将自动关闭 LED 灯带和 OLED 显示器,如果检测到明显的光线变化,它将自动重新点亮。
材料清单

[*]树莓派 ZeroW × 1
[*]SD 卡 × 1
[*]1.5 英寸 OLED 模块 × 1
[*]5V 2.4A 电源 × 1
[*]WS2812B LED 灯条 5 米(30个/米) × 1
[*]定制 PCB ×1
[*]4mm 胶合板 × 1
[*]6mm 胶合板 × 1
[*]3mm 白色亚克力板 × 1
[*]螺钉 × 若干
[*]螺栓 × 若干
[*]垫圈 × 若干
[*]支架 × 若干
[*]烙铁 × 1
[*]焊锡 × 1
[*]热熔胶 × 1
[*]木材胶 × 1

天气数据

从OpenWeatherMap.org 上获取免费的天气数据,这里提供许多国家和地区的大城市的天气数据。使用方法如下。1、在 OpenWeatherMap.org 上创建一个免费帐户:https://openweathermap.org/2、复制你的 apikey 供以后使用。3、下载、解压缩并打开 city.list.json.gz 文件,搜索你要显示的城市,然后复制城市 ID 供以后使用。城市温度显示代码请在项目文件库中下载。https://make.quwj.com/project/195
设置与编程

首先将 OLED显示器连接到树莓派,并安装适用于OLED 显示器的库。此步骤确保树莓派已连接至互联网。1、在接口选项下的 raspi-config 中启用 I2C 和 SPI 功能。退出并重新启动。2、运行并更新:
sudo apt-get update
3、运行以下命令以安装必要的库:
sudo apt-get install python-dev

sudo apt-get install python-smbus

sudo apt-get install python-serial

sudo apt-get install python-imaging
4、运行以下命令并打开配置文件:
sudo nano /etc/modules
确保以下两行位于配置文件中,然后退出并重新启动:
i2c-bcm2708

i2c-dev
5、现在运行此命令以复制到我的 GitHub 存储库:
git clone https:/ /github.com/Anders644PI/1.5inch-OLED-with-RPi.git
6、进入新文件夹,解压缩 RPi_GPIO-0_6_5.zip:
unzip RPi_GPIO-0_6_5.zip
运行此命令以安装库:
cd RPi_GPIO-0_6_5

sudo python setup.py install
7、通过键入以下内容来返回主文件夹:
cd /home/pi/1.5inch-OLED-with-RPi/用同样的方法处理spidev-3_2.zip。
8、解压 wiringPi.zip:
unzip wiringPi

cd wiringPi
并运行以下命令:
chmod 777 build

./build
使用以下命令检查安装:
gpio -v

9、返回主文件夹,然后解压缩 bcm2835-1_45.zip
unzip bcm2835-1_45.zip

cd bcm2835-1_45
10、然后运行此命令并安装库:
./configure

make

sudo make check

sudo make install
11、再次返回到/home/pi/1.5inch-OLED-with-RPi/,然后运行命令来测试 OLED:
cd /Demo_Code/Python/

sudo python main.py
最后,编写代码即可,你可以参考我的代码,请在 GitHub 上获取:https://github.com/Anders644PI/1.5inch-OLED-with-RPi
配置天气 API

cd LED_Thermometer_Code_and_OLED_driver

nano Official_Digital_LED_Thermometer_v1-0.py
最后,如图所示,向下滚动并从 openweathermap.org 中将 api-key 改为你的 api 密钥。另外,将城市 ID 和城市名称更改为你所需要的城市。
定制 PCB 板


如图所示,当我弄清楚需要的电子元件后,就开始在网上定制 PCB 板。所有的文件在 GitHub 上均提供了。
切割外壳

1、使用 4mm 胶合板和 6mm 胶合板激光切割出外壳。使用 3mm 的白色亚克力板激光切割 LED 的漫射器模型。2、将电子设备和 LED 灯带连接到激光切割好的胶合板上。然后组装外壳。3、3D 打印按钮和开关,以便配套使用。所有 3D 打印文件请在我的 GitHub 中下载。你可能需要将 SVG 文件缩小到75%。https://github.com/Anders644PI/1.5inch-OLED-with-RPi
完成

目前为止,整个项目就完成了,非常的简单。
页: [1]
查看完整版本: 基于树莓派的 LED 数字温度计