第4部分:实时控制制造过程
链接到博客系列的第1部分–https://blogs.sap.com/2018/06/19/iot-prototype-with-business-rules-and-workflow-blog-series-14/
链接到博客系列的第2.1部分–https://blogs.sap.com/2018/06/28/iot-prototype-with-business-rules-and-workflow-blog-series-24/
链接到博客系列的第2.2部分-https://blogs.sap.com/2018/07/04/iot-prototype-with-business-rules-and-workflow-blog-series-2.24/
链接到博客系列的第3部分–https://blogs.sap.com/2018/07/04/iot-prototype-with-business-rules-and-workflow-blog-series-34/
前两个场景让我们了解了数据是如何从SCP上物联网平台的传感器。最后一个场景详细说明了如何将数据从物联网平台发送到执行器。我们在这个博客系列中开发的所有物联网场景都接收到来自传感器的数据,并自动采取行动或向用户的收件箱发送消息。但是这个场景将接收来自传感器的数据(传感器是一个设备、模块、,大数据分析系统,或子系统,其目的是检测其环境中的事件或变化,并将信息发送给其他电子设备(通常是计算机处理器),并向执行器发送动作(执行器是负责移动和控制机构或系统的机器部件,例如在制造过程中打开阀门。
场景中考虑的制造过程:
此场景中考虑的制造过程负责检查机器生产的金属板的厚度。金属板的厚度由企业设定为一个值,如果厚度与该值不同,则必须自动停止制造过程。我同意这对于真实场景来说太简单了,但将此场景作为一个原型来实现,可以让我们清楚地了解如何将数据从物联网平台发送到设备。
我们可以对原型进行小的修改,并将其适应稍微复杂的场景,其中金属板可以转移到一个特定的位置不同的传送带取决于板材的厚度。根据用户设置的业务规则,数据可以发送到相应的执行器,根据从传感器接收到的厚度值将板材转移到不同的传送带上。
完成场景的步骤
步骤1-设备管理:在物联网驾驶舱中设置消息类型、设备类型和设备。=>这一步已经在所有三个场景的博客系列的第一部分中完成了。
下面的两个步骤将在这个博客中介绍。
第2步-业务规则:创建业务规则服务和设置规则。
第3步-物联网应用程序:创建Java应用程序来集成所有这些服务和发送传感器的Python代码来自设备的数据。
确保在试用帐户下的SAP Cloud Platform Neo环境中启用以下服务。
物联网
业务规则
第2步:业务规则
让我们配置此场景的业务规则。
转到业务规则编辑器– https://bpmruleseditor-s000xxxxxxtrial.dispatcher.hanatril.ondemand.com/index.html
创建一个项目来保存场景的业务规则服务。
创建两个数据对象
输入:一个属性-厚度
输出:一个属性-动作
创建一个规则。
厚度规则-此规则构造为决策表。根据规则接收到的厚度,不同的操作命令作为输出发送。
创建规则集
厚度规则集–将规则添加到规则集。
创建规则服务
厚度规则服务–此规则服务将数据对象"Input"作为输入并返回"output"作为结果。
确保规则服务已分配给规则集。激活在上述步骤中创建的所有对象。别忘了部署规则服务。
将从物联网应用程序调用规则服务,以获得从传感器接收到的厚度的正确操作。
您可以使用Postman测试业务规则服务,如博客系列的第2.1部分所示。
第3步:物联网应用程序
将数据从物联网的MMS接收到服务器的步骤设备
由于我们使用HTTP在设备和物联网平台之间进行通信,数据不能直接从物联网推送到设备中。分两步完成:
a.使用推送服务将物联网应用的数据推送至彩信。彩信将这些信息存储在数据存储中。这些消息是用特定的设备ID推送的。
b.推送消息必须由设备通过提供GET请求来主动检索。
如果您使用WebSocket进行通信,这可以通过一个步骤实现。有关更多详细信息,请参阅此链接-https://help.sap.com/viewer/7436c3125dd5491f939689f18954b1e9/Cloud/en-US/9da1c18f6ab947c58052f4d07498a654.html
步骤a,上面提到的是物联网应用程序(Java)中的代码,步骤b是在设备(Python)中编码的
用Raspberry Pi编写的Python代码片段
Raspberry Pi设置
为了模拟这个场景,我用一个按钮设置了Raspberry Pi–点击该按钮,厚度信息被发送到SCP,大数据难吗,爱淘客,一个主动蜂鸣器和一个LED作为执行器。如果业务规则的输出发送一个动作到执行器,LED亮起,高返利页游,蜂鸣器在我的Raspberry Pi中发出警报。
厚度传感器使用下面的代码将值发送到SCP。它还包括从彩信中提取数据的代码,以防需要根据发送的厚度值执行操作。
请注意,您需要从物联网驾驶舱中获取以下值,以便将传感器值从设备发送到SCP。
SCP帐户ID、主机名、设备ID、消息类型ID,设备的授权令牌。
物联网应用
这是集成步骤1和步骤2的"胶水"应用。应用程序执行以下步骤。
a.从设备读取厚度值传感器[使用我们在步骤1中注册设备时获得的设备ID。