javascript - 如何使用 websockets、js 和树莓派打开灯
问题描述
所以我设置了一个node-js,如果我按下仪表板上的一个按钮,灯就会亮起来。但是,我怎么能用 JavaScript 和 web-sockets 做到这一点?
1:有可能吗?
2:怎么做
3:有效吗?
所以这些是我想回答的问题,我也想打开一盏灯。我在 bash 上设置了带有别名的灯,但我只是不知道如何通过单击 html 站点上的按钮来打开灯?有没有可能
所以,我已经尽我所能解释了,网站不会让我发帖。所以这只是一个“总结”。我想使用 javascript 打开我的 RPi 上 GPIO 的灯,并将 websockets 连接到 node-js。
解决方案
所以你想设计一个系统来通过连接的物联网设备远程开灯,为了创建这样的系统,你需要一些东西:
后端服务器(python 服务器、PHP 或 NodeJS),用于促进客户端和 Raspberry Pi 之间的连接。有提供此类功能的云服务,例如亚马逊的 AWS IoT 核心。
带有用户界面仪表板的客户端应用程序,可以是 Web 应用程序(HTML、CSS、Javascript)或移动应用程序(Flutter、React Native、Android Java/Kotlin、iOS Swift/Objective-C)。
Raspberry Pi 中始终运行的 Python 脚本,用于侦听来自服务器的任何可能指令,并触发其各自的 I/O 以打开电路。
整个过程涉及多种技术,因此我无法在一个答案中解释所有内容。
所以简短的回答是肯定的,它可以完成,它会起作用,但它的效果取决于你使用的技术类型和架构。
推荐阅读
- html - div 元素在不适合文本时不会拉伸(使用最小高度)
- c++ - 无法使用 SDL2 显示纹理
- ruby-on-rails - UsersController#create 中的 NoMethodError ——你的意思是超级吗?
- powershell - 具有预定义属性的对象实例化
- python - 我正在尝试运行一个包含名为 class 的列的 df.query,并且收到语法或错误,说明 class 是保留关键字
- environment-variables - GitHub Action 相互构建环境变量
- azure - 如何解决 APIM 到 APIM 通信期间的 403/500 错误(托管在单独的虚拟网络中)
- git - 用于拒绝推送 Github 分支名称和提交消息的自定义 WebHook
- c - 如何在 VS Code 中设置日语?
- angular - 使用 rexponseType Blob 时,实际错误不是来自支持的,Angular 11 中只显示 OK