请选择 进入手机版 | 继续访问电脑版

『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 436|回复: 9

[进阶教程] 用RFID(NFC)卡片做一个点唱机

[复制链接]

12

主题

114

帖子

944

积分

论坛技术达人

积分
944
金钱
805
HASS币
160
发表于 2020-11-13 20:15:50 | 显示全部楼层 |阅读模式
本帖最后由 foggy_fox 于 2020-11-13 20:15 编辑

        自打用我的古董树莓派diy了网络音响,用起来还是蛮不错的,但是使用需要ha的app来控制,接入siri语音控制只能控制启停,切歌和更换歌单对于老人来说还是相对比较麻烦,家里老人爱听京剧,所以用最简单的方式让大人小孩都能用成了当务之急。
        实体按键的方式最容易接受,且越简单越好,歌单的选择采用RFID卡,卡上面写明是哪个艺术家名字或者专辑名称,只需要刷卡就可以控制播放的歌曲,这样老人小孩都会用。
21.老少皆宜的智能音响系统声音调整-0003.png

21.老少皆宜的智能音响系统声音调整-0004.png
        技术路线:
1.选择NFC卡+PN532读卡器,好处是官方的APP支持NFC卡片的读取和写入,可以直接触发扫码(tag_scanned)自动化,价格稍贵
2.选择125kHz的RFID卡+RDM6300读卡器,与NFC相比不能用官方app读写,卡片id是唯一的,价格便宜
        综合考虑使用场景,选择方案2,因为使用场景是面向非折腾人群,功能满足了就可以了,RDM6300为8元,RFID卡5毛一张~主控是我之前做的让米家温湿度计接入HA的蓝牙网关,固件为tasmota,直接在上面加功能就可以了,省了一个8266。

        自动化部分:
1.卡片扫码触发的歌曲切换自动化:
    思路就是在volumio里面提前建好歌单,将RFID的ID号码与歌单一 一对应,tasmota上传的扫码消息以MQTT形式上传,HA通过MQTT触发自动化,解析出ID号码,然后通过ID号码找到歌单名称,调用播放器服务的选择音源功能。
- alias: handle tag scan
   id: handle_tag_scan
   mode: single
   #Hide warnings when triggered while in delay
   max_exceeded: silent
   variables:
       media_player:
       volumio: media_player.volumio_2
   tags:
       "0800C9833B79":
           source: "robbie"
       "0800CA2A6F87":
           source: "fires"
       "0800DC0004D0":
           source: "儿歌"
       "0800DA7BD47D":
           source: "京剧"
   trigger:
       platform: mqtt
       topic: tele/tasmota_661D0C/RESULT
       condition:
           - "{{ trigger.payload_json['SSerialReceived'] in tags }}"
   action:
       - service: media_player.select_source
          data:
              entity_id: "{{ media_player.volumio }}"
              source: "{{ tags[trigger.payload_json['SSerialReceived']].source}}"
      - delay: 2


2.按键部分
     这部分比较简单,根据button的状态直接调用下一首,上一首和暂停/开始服务
- alias: handle_media_button
   id: handle_media_button
   variables:
       media_player:
            volumio: media_player.volumio_2
  control_action:
       "SINGLE":
             control: media_player.media_next_track
       "DOUBLE":
             control: media_player.media_previous_track
       "HOLD":
             control: media_player.media_play_pause
   trigger:
       platform: mqtt
            topic: stat/tasmota_661D0C/BUTTON1T
   condition:
       - "{{ trigger.payload_json['TRIG'] in control_action }}"
   action:
       - service: "{{ control_action[trigger.payload_json['TRIG']].control }}"
            data:
                 entity_id: "{{ media_player.volumio }}"
       - delay: 2
视频:



21.老少皆宜的智能音响系统声音调整-0005.png
21.老少皆宜的智能音响系统声音调整-0002.png

评分

参与人数 2金钱 +40 HASS币 +40 收起 理由
Roger + 20 + 20 墙都不扶,就服楼主!
+ 20 + 20 纳尼,还有这种操作?

查看全部评分

回复

使用道具 举报

5

主题

247

帖子

1413

积分

金牌会员

Rank: 6Rank: 6

积分
1413
金钱
1166
HASS币
0
发表于 2020-11-13 22:49:57 | 显示全部楼层
good 好玩
回复

使用道具 举报

14

主题

415

帖子

2318

积分

金牌会员

Rank: 6Rank: 6

积分
2318
金钱
1903
HASS币
0
发表于 2020-11-14 05:35:57 | 显示全部楼层
树莓派diy了网络音响有教程吗
回复

使用道具 举报

2

主题

205

帖子

691

积分

高级会员

Rank: 4

积分
691
金钱
486
HASS币
0
QQ
发表于 2020-11-14 10:36:09 | 显示全部楼层
好厉害的样子哦
回复

使用道具 举报

0

主题

10

帖子

66

积分

注册会员

Rank: 2

积分
66
金钱
56
HASS币
0
发表于 2020-11-14 10:51:13 | 显示全部楼层
思路极有创意呀!
回复

使用道具 举报

17

主题

442

帖子

7207

积分

元老级技术达人

云淡风轻近午天

积分
7207
金钱
6765
HASS币
0

教程狂人

发表于 2020-11-14 11:18:20 | 显示全部楼层
好玩,不过你搞个点唱机就更实用
回复

使用道具 举报

12

主题

114

帖子

944

积分

论坛技术达人

积分
944
金钱
805
HASS币
160
 楼主| 发表于 2020-11-14 21:45:21 | 显示全部楼层
nuaawmy 发表于 2020-11-14 05:35
树莓派diy了网络音响有教程吗

之前发过帖子:https://bbs.hassbian.com/thread-10447-1-1.html

视频教程:https://www.bilibili.com/video/BV1ha4y1a7dk/   
回复

使用道具 举报

6

主题

324

帖子

1104

积分

金牌会员

Rank: 6Rank: 6

积分
1104
金钱
780
HASS币
0
发表于 2020-11-15 16:43:29 | 显示全部楼层
这又回到了以前放磁带的感觉啊
回复

使用道具 举报

12

主题

114

帖子

944

积分

论坛技术达人

积分
944
金钱
805
HASS币
160
 楼主| 发表于 2020-11-16 22:51:56 | 显示全部楼层
淘子 发表于 2020-11-15 16:43
这又回到了以前放磁带的感觉啊

我把14年前的walkman拿出来了。我的磁带还有很多,听着别有一番风味,看看怎么能改造改造智能walkman
回复

使用道具 举报

2

主题

21

帖子

56

积分

注册会员

Rank: 2

积分
56
金钱
35
HASS币
0
发表于 2020-11-18 19:34:01 | 显示全部楼层
不错啊!!厉害了。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2020-11-28 21:40 , Processed in 0.191556 second(s), 38 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表