项目简介
本项目是一款基于Python和Raspberry Pi的智能闹钟系统,借助Line Bot实现远程控制。系统融合了MAX7219 LED矩阵显示模块、蓝牙音响和GPIO按钮,为用户带来全新的闹钟体验。用户可通过Line Bot设置闹钟时间、选择铃声并远程控制开关,还能享受模拟日光的渐亮式LED面板带来的舒适起床感受。
项目的主要特性和功能
- 远程控制:利用Line Bot远程设置闹钟时间、关闭闹钟。
- 渐亮式LED显示:采用MAX7219 LED矩阵显示模块,模拟日光渐亮效果,助用户自然醒来。
- 自定义铃声:支持蓝牙音响播放自定义铃声,摆脱传统闹钟声音限制。
- 按钮控制:通过GPIO按钮实现本地控制,方便手动关闭闹钟。
- 实时时间显示:LED矩阵显示模块实时展示当前时间,提供直观时间信息。
安装使用步骤
硬件准备
- Raspberry Pi 3:作为系统核心控制单元。
- MAX7219 LED矩阵显示模块:用于显示时间和模拟日光效果。
- 蓝牙音响:用于播放自定义闹钟铃声。
- GPIO按钮:用于本地控制闹钟开关。
- 杜邦线、1.5V电池及电池座:用于连接各硬件组件。
软件安装
- 安装Python环境:
bash sudo apt-get update sudo apt-get install python3 python3-pip
- 安装必要的Python库:
bash sudo pip3 install RPi.GPIO luma.led_matrix python-vlc line-bot-sdk
- 配置MAX7219 LED矩阵显示模块:
- 连接硬件并安装SPI接口。
- 下载并安装
luma.led_matrix
库。bash sudo usermod -a -G spi,gpio pi sudo apt-get install python-dev python-pip libfreetype6-dev libjpeg-dev sudo -H pip install --upgrade luma.led_matrix
- 配置蓝牙音响:
- 确保Raspberry Pi已连接蓝牙音响。
- 安装VLC媒体播放器。
bash sudo apt-get install vlc
- 配置Line Bot:
- 创建Line Bot账号并获取
channel_secret
和channel_access_token
。 - 安装
ngrok
用于本地测试。bash wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip --no-check-certificate unzip ngrok-stable-linux-arm.zip ./ngrok http 8000
代码配置
- 修改Line Bot配置:
- 在
main_line.py
中填入channel_secret
和channel_access_token
。 - 设置闹钟铃声:
- 将铃声文件放入
/home/pi/Music
目录下。 - 在代码中指定铃声文件路径。
运行程序
- 启动Line Bot服务:
bash python3 main_line.py
- 测试功能:
- 通过Line Bot发送指令,测试远程控制功能。
- 按下GPIO按钮,测试本地控制功能。
- 观察LED矩阵显示模块,确认时间显示和渐亮效果正常。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】