手机遥控的红包发射器。有了它,你就是今年春节最靓的仔! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
rocwang
V2EX    分享创造

手机遥控的红包发射器。有了它,你就是今年春节最靓的仔!

  •  4
     
  •   rocwang
    rocwang 2021-02-08 12:15:44 +08:00 3573 次点击
    这是一个创建于 1707 天前的主题,其中的信息可能已经有所发展或是发生改变。


    我业余时间用树莓派制作了一个红包发射器,前后断断续续大约花了三个月时间。

    * [视频演示]( https://www.bilibili.com/video/BV1fT4y1N7Ng)
    * [客户端 Demo]( https://kiwiberry.nz/)
    * [客户端源代码]( https://github.com/rocwang/cash-launcher)
    * [服务器源代码]( https://github.com/rocwang/cash-launcher-server)

    ## 客户端





    客户端是一个手机 Web App,用于控制发射器硬件。 这个 App 会连接安装在发射器中的树莓
    派,使用 WebSocket 将手机朝向数据和手指滑动速度实时地发送至服务器。而服务器会用这
    些数据来控制发射器的动作。

    App 有两个页面:

    * 菜单:提供数种纸币和红包以供选择。
    * 发射界面:显示一叠钱。用户上滑即可发射。

    App 使用 Vue 3 以及 vue-router 实现。为了在手机上实现流畅的动画效果,发射 UI 的那一叠钱
    是使用一个 HTML 2D Canvas 库[konva]( https://github.com/konvajs/konva) 实现的。另
    外我还使用了 rxjs 来帮助实现用户操作和设备朝向事件流向 WebSocket 消息的变换。

    ## 服务器

    服务器跑在树莓派中,使用 Node.js 实现,提供 HTTPS + WebSocket 服务,用于将客户端发来
    的控制信息转换为发射器的控制信号,最终旋转发射器和开启其内部的直流电机,将纸币从
    不同角度吐出去。

    服务器使用[ws]( https://www.npmjs.com/package/ws) 库接受客户端的连接。有两个接口:
    `/orientation`和`/velocity`。它将手机朝向和手指滑动速度值转化为脉宽调制信
    号和使能信号,用以控制连接在树莓派上的两个伺服电机和一个直流电机。底层的 GPIO 操作交
    由[rpio]( https://www.npmjs.com/package/rpio) 处理。服务器同样利用了 rxjs 来实现数据
    流的变换。

    服务器还提供了一个`/siri`接口。当其被调用时,发射器上的直流电机会工作半秒钟。视
    频中一开始使用 Siri 来控制发射器就是使用此接口实现的。

    ---

    (不知为何,V2EX 的 Markdown 发帖接口总报 500 错误,所以只能使用 Default 接口。)
    第 1 条附言    2021-02-08 13:24:24 +08:00
    更正:

    客户端 Demo: https://cash.kiwiberry.nz/
    10 条回复    2021-02-09 11:15:37 +08:00
    rocwang
        1
    rocwang  
    OP
       2021-02-08 12:25:43 +08:00
    ThirdFlame
        2
    ThirdFlame  
       2021-02-08 12:48:50 +08:00
    有趣 更想看发射部分的物理实现
    whyou126
        3
    whyou126  
       2021-02-08 12:55:07 +08:00 via Android
    大佬牛逼
    Tink
        4
    Tink  
    PRO
       2021-02-08 13:23:44 +08:00 via Android
    3eWMea0rfV9xG3Jt
        5
    3eWMea0rfV9xG3Jt  
       2021-02-08 13:50:47 +08:00
    帅的一批
    lihanyu
        6
    lihanyu  
       2021-02-08 15:07:46 +08:00   2
    我缺的是发射器吗
    neekeV2
        7
    neekeV2  
       2021-02-08 15:47:23 +08:00
    默默的看了眼我那正在吃灰的树莓派 2B
    rocksolid
        8
    rocksolid  
       2021-02-08 15:50:16 +08:00   1
    我要的是接收器
    Cytion
        9
    Cytion  
       2021-02-08 16:00:57 +08:00 via Android   1
    只能买一箱冥币清明再用了
    gba
        10
    gba  
       2021-02-09 11:15:37 +08:00
    有点萌
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2816 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 13:47 PVG 21:47 LAX 06:47 JFK 09:47
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86