Intel 物联网产品之路:交通项目案例研究
使用 Intel® IoT 商业开发工具包监控半挂车内部状态
获取新的 Intel® 物联网开发人员套件,这是一套完整的软硬件解决方案,使开发人员能够利用 Intel® Galileo 和 Intel® Edison 板创建激动人心的新解决方案。请访问 Intel® 物联网开发人员中心。
免责声明:本设备未经联邦通信委员会(FCC)规则要求的授权。在获得授权之前,本设备不得,也不得被提供销售或租赁,或被销售或租赁。
引言
本项目旨在基于 Intel® 物联网商业开发人员套件及其内置的基本传感器构建一个功能性的概念验证,然后发展为使用商业网关、工业传感器、McAfee Security 和基于 Wind River 的平台进行可扩展产品部署的工业解决方案。基础项目属于交通运输领域,旨在监测拖运易腐物品的半挂车内部状态,并在温度超过驾驶员设定的阈值时向驾驶员发出警报。
概念验证将基于 Intel Galileo 板,使用一个带有各种传感器的基础扩展板。现阶段选择的传感器包含在标准的 Grove Seeed– Starter Kit Plus* 中。
在本文档的结尾,您将看到从基本概念验证到工业解决方案的转变,该解决方案强调了一种快速简便的方式来了解 Wind River 操作系统和配套硬件如何快速整合。使用预编译的操作系统和 RPM 可以消除不必要的下载、定制操作系统以及识别项目生命周期所需的库。
创建用例
为演示 Intel® 物联网商业开发人员套件和 Intel® 物联网商业网关的能力,我们组建了一个团队,作为用例的一部分。团队决定采用交通运输用例,重点关注在运输过程中保持易腐物品的新鲜度。
该项目的构思是基于市场上可能出现类似项目并被建造的可能性。虽然基础项目设计了基本功能,但可以展示添加各种功能,并将项目(未来)扩展到具有 Web 连接、云功能、远程监控和其他热门组件。
遵循项目重点领域,团队列出了概念验证和产品的潜在功能。提出了多种想法,包括后门状态、拖车温度、门和温度警报、查看数据的在线应用程序以及车内信息监控。
为了开始概念验证阶段,我们指定使用了 Intel® 物联网商业开发人员套件,其中包括一个 Grove Seeed 传感器套件。作为一项挑战,此阶段仅限于套件中提供的传感器。所有功能都必须基于开发人员套件的实际使用来实现。
使用商业开发人员套件的概念验证
我们团队将项目分解为 3 个关键领域
1. 期望的用户界面
- 开发团队开始着手实际生产 UI 的布局和设计
2. 托管 UI 的接口
- 开始着手我们将用作最终解决方案的方案。
- 我们意识到在集成工业解决方案时需要进行更改。
3. 概念验证传感器解决方案
- 使用 Grove 传感器创建一个可行的解决方案,并利用 UPM/MRAA 库进行快速开发。
- 这使我们能够为 UI 和接口团队创建一个模拟传感器环境以供开发
通过分离项目,我们可以更快地完成概念验证(POC)阶段,并充分利用最关键的技能。用户界面很重要,需要花费最多时间进行设计和实施。它尽早开始,以确保在截止日期前完成。
第二个关键领域非常有益,因为它让我们预见了最终功能性 POC 的潜在构建方式,然后在早期 POC 过程中根据未来进行了决策。总的来说,由于我们知道门传感器很简单,所以我们能够简化传感器选择。这使得我们能够更专注于在小型和商业规模上正确利用温度传感器。
通过使用 Grove 传感器套件,我们能够快速创建一个 POC,其中包含一个功能性传感器环境供 UI 团队使用。这使得布局和设计元素能够快速实现,并为最终的功能性用例提供了未来的框架。
用例基于以下场景构建
- 按按钮启动用例(模拟开门)
- 设置阈值环境温度 +5 度
- 车内亮起实心红色 LED 指示灯
- LCD:当前温度和门状态:打开
图 5 显示门状态
2. 触摸温度传感器以升高室温
3. >+5 度
- 蜂鸣器响起
- 红色 LED 持续闪烁
- LCD 变为红色:实际温度:xx,门状态:打开
4. 触摸传感器
- 确认 = 关闭蜂鸣器
5. 按按钮关闭门
- 红色 LED 继续闪烁,直到温度降至阈值以下
- LCD 警报:温度:xx 门状态:关闭
- 当温度降至阈值以下时,闪烁的红色 LED 熄灭,亮起实心绿色 LED,LCD 变为绿色
- LCD:温度:xx,门状态:关闭
模拟:通过监测温度变化并向驾驶员发出警报,减少易腐货物潜在的温度损失
下表概述了计划使用的传感器
目标商业解决方案
在基于 Intel 物联网商业开发人员套件的 POC 正常运行时,有必要确定如何进入商业解决方案。有许多商业网关可供选择,每种网关的设计略有不同,适用于各种行业。我们的主要关注点是 IO 选项,即我们如何连接传感器以提供数据流。
在本项目的商业产品部分,我们选择了 Intel® 物联网商业网关作为网关设备。该设备的处理能力和 IO 功能被认为足以满足所提出的商业用途。
有线 Modbus 温度传感器对于建立可靠连接以每秒读取一次温度读数是必要的。所有设备通信均通过直接接线或以太网进行。标准的 MRAA/UPM 库在整个过程中得到维护,没有任何修改。
网关充当存储数据的 Web 服务器,并调用温度传感器以保持数据新鲜。为了实现这一点,curl 调用通过 C 语言和 libmodbus 库编写的程序直接更新 Web 服务器,从温度传感器获取数据。
将代码传输到网关
通常,过渡到商业网关需要重新编写代码,以使其与系统上可用的任何服务兼容。在本例中,概念验证的编码全部使用 Python*、HTML 和 Javascript* 完成,这使得将其迁移到商业端变得很简单。由于可以使用相同的 MRAA/UPM 库,代码运行没有问题。
将 Grove 传感器映射到工业传感器 - 使用 MRAA/UPM 库快速启动项目
将应用程序移植到商业产品解决方案的步骤
- 目标期望的工业硬件
- 确定硬件是否需要其他库或应用程序支持
- 如果需要,集成库/软件
- 创建 WR 层以进行软件部署
- 一旦商业产品硬件正常工作,将其集成到现有解决方案中,并移除先前解决方案的代码
- 利用概念验证期间创建的现有层来安装解决方案依赖项。
- 根据需要为新硬件进行更改
- 利用概念验证期间创建的现有层来安装解决方案依赖项。
- 将新旧层合并到 WR 运行时中
最终产品在 Intel® 网关上 - 应用程序安装、测试
设置指南
将 Intel® Galileo 添加到网关的网络
在允许的短时间内,我们使用了 Galileo Gen 2 作为传感器集线器(控制器),但这并非理想方案,建议使用工业级控制器代替。这可以通过两个设备上的以太网端口和一根网线来实现。由于网关上的以太网接口(eth0)配置为 WAN 访问,因此需要一些额外的配置步骤。为两个设备分配静态 IP 地址可行,但由于网关上安装了 DHCP,我们可以省去 Galileo 上的额外步骤,并使用自动配置。
- 在网关上执行以下操作
- ifconfig eth0 10.0.0.1 netmask 255.255.255.0 up
- 添加到 /etc/dhcp/dhcpd.conf
subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.100 10.0.0.120; option routers 10.0.0.1; }
- 运行 dhcpd 以启动 DHCP 服务器
- 在 Galileo 上,您可能需要先关闭接口,然后重新启动
- ifconfig enp0s20f6 down
- ifconfig enp0s20f6 up
- 通过 ping 测试。
上述配置步骤不是持久的,在网关重启后将需要再次执行。为了使更改永久生效,请执行以下附加更改。
- 在网关上执行以下操作
- 修改 WAN 接口 /etc/config/network
config interface ‘wan’ option ifname ‘eth0’ option proto ‘static’ option ipaddr ’10.0.0.1’ option netmask ‘255.255.255.0’
- 通过 systemctl enable dhcpd.service 启用 eth0 上的 dhcpd 自动启动
请注意,将 WAN 接口设置为静态模式意味着在不还原这些更改的情况下,无法再使用 eth0 端口将网关连接到外部网络。此外,WiFi 网络和 eth0 之间的端口转发和路由将默认启用。
本项目在 2015 年 Intel 开发者论坛上展出。请在 Bill Pearson 的博客 上阅读 IDF 的重要公告。此外,还可以了解更多关于 灵活的可扩展解决方案 的信息。如果您想了解更多关于 Intel 物联网商业开发人员套件的信息,请在此处找到:开发人员套件。
立即开始创新!Intel® 物联网开发者计划提供知识、工具、套件以及专家社区,助您快速轻松地将您的创新想法转化为物联网解决方案。
用 Intel® Edison 和 Intel® Galileo 平台上的 Intel® 物联网开发人员套件,畅想并创造。这些套件是多功能、高性能优化且完全集成的端到端物联网解决方案,支持多种编程环境、工具、安全、云连接和硬件。
如需更多资源并了解新的 Intel® 物联网开发者套件 v1.0 如何帮助您简化物联网项目
- 下载 Intel® 物联网开发者套件
- 访问 Intel® 物联网开发者中心
- 参加我们的 Roadshows,获取创建您自己的物联网项目的实践培训