16年入了一个树莓派B+版折腾了一下就放在角落里积灰了,我这天天总睡懒觉的人被冰冷的闹钟吓得激醒是非常痛苦的,某天打扫房间发现了被我打入冷宫的树莓派就顺手拿出来打造成淡入闹钟+晨起天气预报+晚间电台播放。

简介

· 早上7点定时从低音量的青苹果电台(早上电台没有节目,只有音乐)逐步提升音量轻轻的音乐声叫你起床,3分钟后语音播放今天的天气预报,一个小时后结束播放。
· 晚上10点开始低音量播放青苹果电台(现在电台播放情感节目)提醒你准备碎觉了,最后一个小时候结束播放并对你说声晚安!

准备工作

必要材料

1.男/女,聪明大脑一块
2.五指手一双
3.能上网的树莓派一个
4.音响一套

安装树莓派系统

本文采用的是树莓派官方指定系统,小白of圣手党推荐使用好方便照葫芦画瓢是吧。
这里就不教了,网上一搜一大堆的教程。
· 百度经验
· 树莓派入手体验和系统安装
· 树莓派入门之装系统

安装必要程序

Vlc 播放器

1
执行 sudo apt-get install vlc

Mplayer 播放器

1
执行 sudo apt-get install mplayer

Cron 计划任务

1
执行 sudo apt-get install cron

开始部署

获取代码

下载我上传的代码 Github Coding
Morning文件夹上传到树莓派的Home文件夹里

修改文件

申请和风天气KEY 申请地址,申请百度开发者语音转换a/s key 申请地址
修改 Morning/weather.py 文件第31/65行处的“和风天气KEY”替换为你的和风天气KEY

1
2
3
4
5
6
7
8
9
10
11
12
13
14
28 ... 
else:
fp = open(fn, 'w')
url_city = 'https://free-api.heweather.com/v5/citylist?search='+search+'&key=和风天气KEY'
req = urllib2.Request(url_city)
resp = urllib2.urlopen(req)
33 ...
62 ...
else:
return -1
url_weather = 'https://free-api.heweather.com/v5/'+search+'?city='+index+'&key=和风天气KEY'
req = urllib2.Request(url_weather)
resp = urllib2.urlopen(req)
68 ...

修改 Morning/weather.py 文件第82/83行处的“百度开发api_key/百度开发sec_key”替换为你的百度开发api_key/百度开发sec_key

1
2
3
4
81 ...
api_key = "百度语音api_key"
sec_key = "百度语音sec_key"
84 ...

修改 Morning/weather.py 文件第93行的城市代码为你所在的城市的代码。 城市代码列表

1
2
3
4
5
91 ...
def get_wat():
city_id = "CN101280601" #城市代码
city_weather = get_city_weather(city_id)
95 ...

修改其他参数

可以适当修改Morning.sh和Evening.sh文件、更换电台,设置播放时间,音量等里面的注释都写得很清楚了,这里不详细介绍了。
比如
· 修改 Morning/Morning.sh与Evening.sh 文件的“sleep 60m”可以确定播放电台多久
· 修改 Morning/Morning.sh与Evening.sh 文件的 “http://hls.qingting.fm:80/live/4576.m3u8?bitrate=64”可以更换网络电台
· 修改 –equalizer-bands=”8 3 0 -2 -1 0.5 1.5 0.5 3 1.5” 可以设定播放器的均衡器

给予执行权限

1
2
3
chmod 775 /home/Morning/vlc/*
chmod 775 /home/Morning/Morning.sh
chmod 775 /home/Morning/Evening.sh

添加计划任务

注意:请确定树莓派的时区是在中国,树莓派默认的时区不是中国。并确定时间是否正确

1
2
3
4
5
执行:
export EDITOR="/usr/bin/nano" ; crontab -e
输入:
30 07 * * * sudo /home/Morning/Morning.sh
00 22 * * * sudo /home/Morning/Evening.sh

执行时间视需求而定,比如你想早上8点叫你起床,晚上9点播放电台就修改为

1
2
00 08 * * * sudo /home/Morning/Morning.sh
00 21 * * * sudo /home/Morning/Evening.sh

END

好了,等着第二天音响里轻轻响起的音乐开始美好的一天吧,有什么问题可以在下面留言。

文章协议: Attribution-NonCommercial-NoDerivatives
文章地址: https://www.hscbook.com/article/raspberrypi-alarmclock/
除非注明,本博文章均为原创,转载请以链接形式标明本文地址