亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial Internet of Things >> 物联网技术

适用于资源受限微控制器的高效网络服务器技术

前段时间我们发表了一篇题为“嵌入 Web 服务器的全新视角”的文章,我们建议使用 WebSockets 而不是 HTTP 及其传统的 GET 和 POST 命令。一位评论者批评这篇文章不适合广泛的基于小型微控制器的嵌入式系统。

正确使用的 WebSocket 协议比传统的 Web 服务器使用更少的资源。事实上,如果您计划启用嵌入式 Web 服务器的 TLS,我们相信 WebSockets 是唯一可行的选择。您可能已经在您的设备中使用了嵌入式 Web 服务器,但在标准 Web 服务器上为资源受限的设备启用 TLS 通常以灾难告终。要了解为什么 TLS 会为标准 Web 服务器技术带来这样的问题,请参阅我们的教程何时不在设备中嵌入 Web 服务器。

用于微控制器的现代 Web 应用程序参考设计

我们最近将我们的嵌入式 HTTP 和 WebSocket 服务器提交给了 GitHub。嵌入式 HTTP 和 WebSocket 服务器,称为 Minnow 服务器,专为资源有限的微型微控制器而设计。

更重要的是,我们还包含了一个参考示例,展示了如何构建用于设备管理的现代实时 Web 用户界面。 Web 应用程序是所谓的单页应用程序 (SPA),它专门使用 WebSocket 协议进行设备管理。 HTTP 协议仅用于加载 SPA。换句话说,HTTP 最初是由浏览器在从设备按需加载应用程序时使用的。

参考示例包括 LED 和恒温器的实时更新,并展示了如何通过 WebSockets 进行固件上传。完整的 SPA 仅需要 41 KB 的闪存存储空间。此外,WebSocket 服务器只需要很少的 RAM 来进行通信。

以下屏幕截图显示了 SPA 固件上传页面。该页面是展示如何从新的 WebSocket 协议中受益的几个示例页面之一。固件上传页面展示了如何创建拖放 JavaScript 上传逻辑以及如何通过 WebSocket 连接将上传的文件发送到服务器。通过 WebSocket 连接发送的所有消息都作为 JSON 文本消息发送,上传除外,它作为二进制数据发送。现代 JavaScript 可以轻松管理二进制数据,WebSocket 协议支持二进制和文本框架。

开始使用 Minnow 服务器

前往 GitHub,下载 Minnow Server,然后开始为您自己的微控制器设计编写自己的 SPA。参考示例的设计使其可以轻松地重用于您自己的嵌入式设备管理应用程序。此应用程序中的 CSS 和 HTML5 构建块专为重复使用而设计。此外,示例中包含的 WebSocket 通信 JavaScript 库设计为通用的,可以轻松地在其他应用程序中重用。

注意:

Minnow Server 是为小型微控制器设计的,但由于参考示例主要是为教育目的而设计的,因此我们将即用型构建环境限制为 Windows 和 Linux。您可以将应用程序移植到嵌入式系统,但仅使用参考示例中的设计思想更有意义。您当然可以“按原样”使用通用部分。

尽管 Minnow Server 可以设置为管理多个连接,但参考示例设置为一次管理一个连接。尝试连接一个新的浏览器窗口而另一个浏览器窗口正在使用唯一的 WebSocket 连接将不起作用。

如果您缺乏所需的 HTML/CSS/JavaScript 经验,请考虑与前端 Web 开发人员合作。考虑如何创建 SPA 的最佳方法是将开发过程与创建旨在与使用 TCP 的设备进行通信的桌面应用程序或电话应用程序进行比较。通常,不同的开发人员负责桌面应用程序和设备的固件,这也是设计 SPA 的最佳方式。固件和前端开发人员需要就浏览器和服务器之间的通信 API 达成一致,反之亦然。换句话说,他们需要指定通过 WebSocket 连接发送的消息类型。


威尔弗雷德·尼尔森 ,Real Time Logic 的创始人兼 CTO,在设计嵌入式软件方面拥有 28 年的经验。在互联嵌入式系统愿景的支持下,他设计了梭子鱼应用服务器,针对嵌入式微处理器的小尺寸、实时需求进行定制。


物联网技术

  1. 用于射频可穿戴应用的透气电子纺织品
  2. 2021 年制造业趋势
  3. ST 采样嵌入式相变存储器,用于汽车微控制器
  4. 医疗保险公司采用物联网的三个步骤
  5. 工作场所非常适合可穿戴设备
  6. LoRaWAN 将暂时取代物联网的 5G 网络
  7. SQL 技术;出于某种原因的基准
  8. 5 个注定被技术颠覆的行业
  9. 使用物联网技术进行资产管理的 3 个最佳理由
  10. 能源行业的物联网技术:重大变革
  11. 使用 IIoT 技术进行能耗监测
  12. 爱立信:制造业的 5G