找回密码
 立即注册

QQ登录

只需一步,快速开始

本帖最后由 lou 于 2020-4-27 11:27 编辑

Geek专栏:Web端连接智能硬件的方案




今天Geek专栏为大家带来
乐聚机器人王松博士的
“Web端连接智能硬件的方案”

Web 适合与服务器通信,但不适合与设备通信,目前可以通过 webBLE,WebSerial 和WebSocket 等方式与外围设备进行连接。

Web Bluetooth

网页通过 WebBluetooth API 向浏览器申请蓝牙控制的权限

参考示例


优缺点

  • 浏览器兼容性问题,只支持 Chrome 45+ 的版本
  • 设备蓝牙兼容性问题
  • 需要向浏览器申请权限请求用户同意

Web Serial API

网页通过向浏览器申请串口的权限,进而和支持串口的设备进行通信

草案地址


优缺点

  • 该协议目前处于草案阶段,暂不稳定
  • 需要做一个 USB Dongle,协议会比较复杂
  • USB 驱动也可能有兼容性的问题
  • 浏览器兼容问题

Scratch Link

介绍

Scratch Link 是 MIT 开发团队 LLK 提出的方案,帮助 Scratch 3.0 web 端与蓝牙外围设备进行连接。Scratch Link 是一个桌面应用,可以运行在 Windows 和 MacOS 平台,起代理的作用,在内部运行了一个 websocket 服务,与网页进行通信,再通过蓝牙服务与外围设备进行通信。

项目地址

https://github.com/LLK/scratch-link

优缺点

  • 依赖桌面应用进行代理
  • 轻量、开源,支持 Win/MacOS 系统
  • 暂时只支持乐高 Mindstorm 机器人、Micro:bit 等蓝牙设备
  • 蓝牙兼容性问题

Codelab Adapter

介绍

CodeLab Adapter 是由 CodeLab 构建的基础项目(v2是最新版本),可以用于连接 Scratch 3.0 和其他设备,无论是软件还是硬件,无论是 AI、开源硬件、现实世界的物体、还是虚拟世界的动画角色,在 CodeLabAdapter 的驱动下,皆可彼此互动。
软件的核心架构与Scratch Link 类似,是代理软件 CodeLab Adapter 内部是 WebSocket Server 用于与 Scratch3.0 网页通信,然后通过 ZeroMQ 与各个设备之间连接通信,比如机器人、无人机等
架构参考https://codelab-adapter-docs.codelab.club/dev_guide/Architecture/

项目地址

    (https://github.com/CodeLabClub/codelab_adapter_extensions),设备兼容性可由接入的设备商自行解决。


优缺点

  • 依赖桌面应用进行代理
  • 接入灵活,可以兼容任意的设备
  • 代理软件部署在如树莓派的设备上,可以兼容移动端,比如 iPad 设备

机器人案例

  • 在 Scratch3 中玩转机器人: Python、Deep Learning、Posenet and Robot!
  • 当遇到 Scratch3-Codelab,Pando 觉醒了!

分享至 : QQ空间
收藏

0 个回复

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