0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于树莓派3B实现智能闹钟的设计方案

科技观察员 来源:Andrea S 作者:Andrea S 2022-04-13 17:10 次阅读

背景

我需要一个为放置在床头柜而设计的紧凑型闹钟,包含时间、日期、天气、新闻,以及唤醒我的轻松声音。

介绍

这是一个闹钟,但我觉得我不是唯一一个想要这样一件漂亮而简单的物品放在床头柜上的人。

它具有有用的功能,例如柔和的唤醒(小蓝牙扬声器发出啁啾的鸟声),改变白天和黑夜,天气,新闻的信息和亮度。WiFi 在睡眠期间关闭。一切都非常好用并且功能可定制!

它主要基于漂亮的MagicMirror项目,但在这种情况下,我用了一个小屏幕以展现出我们需要的信息,而不是将所有东西都隐藏在镜子后面。

如果您对 MagicMirror 有一点了解,就会知道要安装不同的模块,以提供不同类型的功能。对于我的项目,我使用了:

时钟(默认)

MMM-AlarmClock(我们想要一个闹钟,对吧?)

CurrentWeather(默认模块)

WeatherForecast(也是默认值)

新闻源(默认)

MMM-Online-State(检查天气 WiFi 是打开还是关闭)

MMM-Tado(如果你有智能恒温器,你可以显示环境信息)

MMM-ModuleScheduler(可选,用于切换显示的模块)

然后我认为cron是在白天编写一些事件的简单而正确的工具。我将在下面显示我的crontab 。

现在让我们看看我的屏幕

白天版本:

pYYBAGJWkumAfIaFAAKg_hksupg663.png

夜间版本:

poYBAGJWkuWAfWS8AAEkbV6Fz2k404.png

看到区别了吗?如果我凌晨 3 点起床,我不需要太多信息:时钟就足够了!并且 WiFi 打开/关闭的指示也可以(例如,我将打开标志设置为黄色,将关闭标志设置为蓝色)。所以,如果你喜欢它那就去做吧!

硬件设置

设置非常简单:

1)首先,如果您有机箱,请将带有 microSD 卡的 Raspberry Pi(版本 2、3 或 4 都可以)插入其中(确保相关引脚/连接器仍然可以访问到连接屏幕);

2)然后只需将屏幕(无论您想使用哪个)连接到Raspberry Pi;我会推荐一个小的(如列表中的 3.5“),但您也可以使用官方的Raspberry Pi Touch Display或另一个;触摸功能将很有用(但不是 100% 必须)来关闭警报钟;

3)然后,如果您使用的是蓝牙音箱,直接从树莓派 USB 为其供电/充电可能很实用,因此只需将其连接到任何 USB 端口即可;

4) 最后接上电源插头。完毕!

软件安装

现在是时候进行软件安装了:

1)我假设您在(小容量,例如 8GB)microSD 卡上安装了标准的Raspberry Pi OS ,带有桌面。

2) MagicMirror 安装:所谓的“手动安装”就是复制粘贴几条命令一样简单,所以我推荐它。

3) MagicMirror(附加的,第 3 方)模块。以下每个模块都有单独的安装,快速简单(再次简单复制和粘贴),只需按照链接获取说明:首先MMM-AlarmClock ,我们将使用它在早上播放音乐或大自然的声音;MMM-Online-State ,我发现这对于确保夜间关闭 WiFi 很有用;可选,如果您有 Tado 恒温器,MMM-Tado ,显示当前和设置的温度、湿度等;Netatmo 的等效模块也可用:MMM-Netatmo 。我最近决定尝试MMM-ModuleScheduler并且再也没有回来!在白天/晚上的不同时间安排不同模块的显示很容易。

4)我们将使用的其他模块是默认模块,因此不需要进一步安装。

配置

有一个主要的配置文件需要编辑,另外您可能想要或需要调整一些其他文件,以优化可视化并获得可能的最佳结果。

让我们从 MagicMirror配置文件开始:您会在 MagicMirror/config 文件夹中找到一个示例文件。我还提供了我的配置文件,您可以将其用作起点。在下面找到它。

如果您想进行昼夜配置,我建议您像我一样创建一个 config_day.js 和 config_night.js。然后我们将使用cron命令切换它们(这里是晚上 11 点和早上 6 点):

》 crontab -e

# For more information see the manual pages of crontab(5) and cron(8)

# m h dom mon dow command

01 23 * * * cp /home/pi/MagicMirror/config/config_night.js /home/pi/MagicMirror/config/config.js

00 06 * * * cp /home/pi/MagicMirror/config/config_day.js /home/pi/MagicMirror/config/config.js

或者,您可以使用MMM-ModuleScheduler ,它允许在不同时间显示或隐藏不同的模块,非常棒!您将使用下面的 ModuleScheduler 找到我的配置文件。

最后,您可能想要或需要检查配置页面顶部链接的 Raspberry 特定配置。特别是启用自动启动和鼠标指针自动隐藏。

屏幕亮度

这是一个比较重要的条件,因为我们知道在我们试图入睡时明亮的屏幕会带来多大的干扰。另一方面,我们想要在日光条件下清晰可读的屏幕。对于某些显示器,您可以控制背光照明,这适用于我拥有的 PiTFT 屏幕。我制作了一个小脚本来使用cron命令(再次)改变亮度:

const raspi = require(‘raspi’);

const pwm = require(‘raspi-pwm’);

var myArgs = process.argv.slice(2);

var lumi = myArgs[0]/1000.0

raspi.init(() =》 {

const led = new pwm.PWM(‘GPIO18’);

led.write(lumi); // 1-1000 duty Cycle, aka brightness

});

这将由以下命令执行:

》 sudo crontab -e

# For more information see the manual pages of crontab(5) and cron(8)

# m h dom mon dow command

@reboot /bin/sh -c ‘echo ”0“ 》 /sys/class/backlight/soc\:backlight/brightness’

@reboot /usr/bin/node /home/pi/screen_lumi.js 500

00 23 * * * /usr/bin/node /home/pi/screen_lumi.js 1

00 07 * * * /usr/bin/node /home/pi/screen_lumi.js 100

00 08 * * * /usr/bin/node /home/pi/screen_lumi.js 1000

00 19 * * * /usr/bin/node /home/pi/screen_lumi.js 800

该screen_lumi.js脚本必须以 root 权限运行,因此屏幕亮度将由root crontab处理。

Wi-Fi开关(主要是涉及到辐射)

我相信这个功能会让你睡得更好。我不想让 Wi-Fi 设备每晚在距离我头部几厘米的地方持续发射无线信号。所以我介绍了 Wi-Fi 开关,这要感谢cron再次运行的rfkill命令:

》 crontab -e

# For more information see the manual pages of crontab(5) and cron(8)

# m h dom mon dow command

@reboot /usr/sbin/rfkill unblock wlan

00 23 * * * /usr/sbin/rfkill block wlan

00 7 * * * /usr/sbin/rfkill unblock wlan

这将在夜间关闭 Wi-Fi,并在早上再次打开(当您应该起床时!)。同样的命令也可以关闭蓝牙,但我发现有些蓝牙音箱可能不喜欢它,并且难以及时重新连接以进行早晨闹钟。此外,蓝牙的辐射功率比 Wi-Fi 低很多,而且不是连续传输。最后说明:在测试“ block wlan ”命令时,请确保您没有通过 Wi-Fi配置闹钟!

扬声器

在我的项目中,我使用了蓝牙扬声器(从 Raspberry Pi USB 端口供电/充电)。这可以在 Raspbian UI 中轻松配置:首先您需要从蓝牙菜单中找到并配对扬声器,然后您可以从音频菜单中选择扬声器作为音频输出设备(请参见下面的步骤)。当然,您也可以简单地插入一个 3.5” 插孔扬声器(但在我的情况下,Raspberry Pi PWM 时钟正忙于调暗屏幕背光!)。

pYYBAGJWktyAIb9-AAJeyybv3QQ476.png

唤醒声音

快速检查一下我们希望如何醒来:在下面的示例中,闹钟将在每周日早上 7 点播放我喜欢的 mp3 文件 3 分钟。确保您选择柔和悦耳的声音,就像森林中的啁啾鸟!这是我的首选(免费下载):森林中的鸟类。

{

module: ‘MMM-AlarmClock’,

position: ‘top_left’,

config: {

alarms: [

{time: “7:00”,

days: [1,2,3,4,5],

title: “Wake-up!”,

message: “It is 7.00am!”,

sound: “birds-in-the-forest.mp3”},

],

format: ‘dddd @ H:mm’,

touch: ‘true’,

volume: 0.50,

timer: 180 * 1000

}

},

最终成果:

pYYBAGJWkteAAWrSAAPp2cO0weY121.png
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 树莓派
    +关注

    关注

    116

    文章

    1688

    浏览量

    105449
  • 智能闹钟
    +关注

    关注

    1

    文章

    22

    浏览量

    7784
  • 树莓派3B+
    +关注

    关注

    0

    文章

    3

    浏览量

    753
收藏 人收藏

    评论

    相关推荐

    树莓型号3B+与型号3B比一比

    B+有什么新特点? 看看最新的Pi和旧一代的比较。 在这篇文章中,我们先来看看最新的树莓型号3B +以及一些新的和改进的功能,还有更多的细节尚未公布。 请注意,这篇文章中使用的
    的头像 发表于 04-13 09:48 12.6w次阅读

    请问树莓3B有没有wifi模块的能支持自建AP么?

    帮会员提问,请大家帮帮他树莓3B有没有wifi模块的。能支持自建AP么?树莓3B有没有wif
    发表于 06-09 15:12

    请问树莓3B/3B+和4B如何安装OpenCV?

    树莓3B/3B+和4B安装OpenCV教程
    发表于 11-05 07:17

    树莓3b的工作电流不足会有什么影响

    树莓3b最好的工作电流是多少?树莓3b的工作电流不足会有什么影响?
    发表于 10-11 08:16

    树莓3B的硬件配置有哪些

    1、树莓3B(Raspberry Pi 3 型号 B SBC)硬件配置Broadcom BCM2837 芯片组,运行频率 1.2 GHz
    发表于 01-19 06:55

    树莓3B的硬件资源详细介绍免费下载

    本文档的主要内容详细介绍的是树莓3B的硬件资源详细介绍免费下载。
    发表于 10-26 08:00 66次下载
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>3B</b>的硬件资源详细介绍免费下载

    使用树莓制作HomeKit安防监控

    树莓3B树莓摄像头,制作可以与homekit智能家居媲美的安防监控!
    的头像 发表于 05-30 12:54 3436次阅读
    使用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>制作HomeKit安防监控

    树莓3B的电路原理图免费下载

    本文档的主要内容详细介绍的是树莓3B的电路原理图免费下载。
    发表于 04-22 08:00 121次下载
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>3B</b>的电路原理图免费下载

    树莓3B上运行64位系统的测评详细说明

    今天,我们团队感受了一下在树莓3B 的主板上运行64bit 系统的感觉!那种感觉您如果有幸感受的话,您一定会说:这才是我要的树莓
    发表于 11-21 16:17 12次下载

    OpenHarmony Dev-Board-SIG专场:OpenHarmony树莓3B移植技术分享

    OpenHarmony Dev-Board-SIG专场:OpenHarmony树莓3B移植技术分享
    的头像 发表于 12-28 14:47 2192次阅读
    OpenHarmony Dev-Board-SIG专场:OpenHarmony<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>3B</b>移植技术分享

    OpenHarmony Dev-Board-SIG专场:开发板选型—为什么选择树莓3B

    OpenHarmony Dev-Board-SIG专场:开发板选型—为什么选择树莓3B
    的头像 发表于 12-28 14:51 2160次阅读
    OpenHarmony Dev-Board-SIG专场:开发板选型—为什么选择<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>3B</b>

    rt-smart移植分析:从树莓3b入手

    移植rt-smart到最新的板子上具体需要注意哪些细节,哪些才是移植rt-smart的关键点?本文从树莓3b上移植rt-smart的角度,从头分析rt-sm...
    发表于 01-25 18:48 0次下载
    rt-smart移植分析:从<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>3b</b>入手

    树莓3B/4B散热风扇帽

    电子发烧友网站提供《树莓3B/4B散热风扇帽.zip》资料免费下载
    发表于 07-25 14:31 4次下载
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>3B</b>/4<b class='flag-5'>B</b>散热风扇帽

    基于树莓3B的可乐自动售货机

    方案介绍硬件:树莓 3 B 型;显示 7" 官方触摸屏 Para Raspberry Pi;水泵 RS 385;桥 H L298N;软件和
    发表于 12-08 17:42 5次下载

    基于树莓3B的LoRa网关

    S3B-XH-A    (3)    莫仕 0022284100    (2)    树莓 RASPBERRYPI3-MOD
    发表于 12-15 16:25 1次下载