3D打印树莓派4B外壳—内置UPS和统计显示信息三(oled屏显)

70 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第22天,点击查看活动详情

在 OLED 显示屏上显示 UPS 统计数据

脚本信息:github.com/suitbaby/ra…

进入系统,打开终端,运行命令下载Adafruit的Python库用于OLED显示器

cd ~
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
cd Adafruit_Python_SSD1306.git
sudo python3 setup.py install

下载raspi-ups-stats

cd ~
git clone https://github.com/suitbaby/raspi-ups-stats.git

下载字体文件:www.dafont.com/pixel-opera…,将PixelOperator.ttf上传到raspi-ups-stats目录

image-20220309164155447

进入raspi-ups-stats目录运行stats.py,oled屏就会显示信息了。

python3 stats.py

image-20220309164744232

设置开机自动启动

创建目录/opt/stats/

mkdir /opt/stats/

raspi-ups-stats目录下的PixelOperator.ttfstats.py文件复制到/opt/stats/目录

image-20220309164459226

切换到raspi-ups-stats目录,运行以下命令,将脚本文件复制到/etc/systemd/system/目录下

sudo cp stats.service /etc/systemd/system/

运行命令重新加载

sudo systemctl daemon-reload
sudo systemctl enable --now stats

最后重新启动即可

reboot

安装注意事项

  • UPS Plus模块必须在树莓派4B的下方

  • 安装顺序:UPS Plus,树莓派,oled屏幕,风扇,冰塔。

  • 使用杜邦线连接风扇、冰塔时,需要注意GPIO的位置

    • 如屏幕引脚对着我,==杜邦线的顺序从左→右==为黑白灰棕,插入树莓派的位置为:

      ==第2排从右→左==:第一个:灰;第二个:黑;第三个:白;第五个:棕。

  • 冰塔的支架是螺丝从下往上拧还是从上往下拧。

    • 从下往上这种情况相当麻烦,需要先将树莓派和UPS Plus模块之间的后两个螺丝拧到冰塔上。
    • 从上往下这种使用M2X8或者M2X10的往下拧就行,不过单通铜柱需要方向向下,所以UPS Plus模块下方的铜柱需要改成双通铜柱。

脚本注意事项

  1. 如果出现执行python3 XXXX报错时看看是不是缺少相关的库,安装即可。

  2. 系统启动时oled屏不显示信息,只有在运行stats.py时oled才会刷新信息和跳动,则使用

    systemctl status stats
    

    查看stats自启动服务状态,如果是**(code=exited, status=203/EXEC)**,则需要在stats.service中进行修改:

    ExecStart=/usr/bin/python3 /opt/stats/stats.py
    
  3. 运行python3 stats.py时输出/bin/sh: 1: vcgencmd: not found可忽略,安装vcgencmd解决。

报错解决

报错 ModuleNotFoundError: No module named 'ina219'

执行以下命令安装pi-ina219

sudo pip install pi-ina219

报错:ModuleNotFoundError: No module named 'PIL'

执行以下命令安装:

pip install Image

报错:ModuleNotFoundError: No module named 'RPi'

执行以下命令安装:

pip install RPi.GPIO