工业物联网(IIoT)和工业4.0的政策驱动下,智能工厂已经从概念层面深入到落地层面,但就目前而言仅有极少数的一部分企业能够实现简单化的智能工厂整体基础设施配套,为改变我国制造业整体落后的局面,提升智能高精工艺技术发展和产业整体效能以及实现自主创新发展之路任重而道远,在此背景下,智能工厂的普及应用是全产业聚焦和关心的热点。
智能工厂如何实施?需要哪些技术支撑?现阶段需要考虑解决哪些难题?
工业物联网(IIoT)设备要想实现智能工厂最基本的智能联网通信功能和工业4.0生产制造环境下的可持续性策略它需要考虑:
1. 如何达到快速连接
智能工厂车间所产生的大数据和信息流,可能会让企业自身网络不堪重负。企业更多需要考虑的是硬件布线策略和软件通信如何设计优化来实现改进自动化系统的高效连接功能,使这种设计流程更简单、同时建立流程档案以便管理智能工厂局部多元化连接策略的版本迭代控制以及在相同应用场景中实现场地连接部署的标准化和可复制性。
2. 及时数据处理
在智能工厂里,智能生产设备机器终端与智能传感器以及质量安检控制系统的实时数据同步处理和性能数据分析需要及时的数据转化信号联动和及时交互来提升自动化流线生产效率和保证安全的生产工艺管理。智能工厂对及时数据处理在数据的获取、回传信号指令的过程中有更高的快速响应需求,基于此智能工厂才能实现高效的生产加工流程管控和安全供应链管理。
3. 了解和升级智能流水线设备网
在工业自动化系统的基础上升级传统机械化电动化流水线走向智能化流水线是工厂走向智能化工厂的一个标志,传统工控采用PLC、单片机等电脑一体化统一管理模式在智能工厂下将逐渐暴露诸多弊端,尤其在多负载、高精度、M2M多端交互的生产场景下,传统工控无法满足这些需求,采用多元化拥有独立智能处理和决策的智能模块集群实现多线程、多业务模式下的负载脱离和高精度工艺管理将能有效解决这些弊端,智能传感器、智能传动组件、智能控制器、智能机器人等智能电子器件和智能设备将组建成一套标准化的智能流水线设备网,在智能传动和智能控制技术的机器设备网络中,加入尽可能多的智能、控制功能改善其传统从一个中央处理单元(CPU)来处理所有的加工流线动作。
4. 智能工厂如何实现智能终端集群互联?
智能工厂环境下,智能化流水线设备集群如何物联组网,企业开发者研发打造拥有自主的物联网组网管理系统不是最佳选择路径,高昂的研发成本和耗时长而未知的技术交付周期让企业频频遇难,对接外部物联网平台的方式可以解决工业物联网(IIoT)赋能智能工厂的环境下给企业带来的复杂性挑战。
5. 智能工厂:IIoT生态系统设计技术实现
下面例举实战下的智能工厂的IIoT生态系统的设计和实现方法,该方法基于西门子Simatic IoT2040,它是一种智能工业网关,连接到MODBUS传感器,将数据发布到万物互联(NETPIE)平台上。
(1) 要求
西门子Simatic IoT2040
超声波游侠(SRF485WPR)
电源(Ranger为12V DC,Simatic为24V DC)
Python 3
(2) 超声波游侠
超声波游侠用于通过在击中目标之后发送反射回发射器的声音信号来检测目标物体的距离。超声波传感器用于室内和室外的各种应用。超声波传感器带有10个引脚,用于电源和RS485输出信号,如图1所示。
图1.超声波游侠
(3) 超声波游侠RS485通讯
通过向模块发送数据帧然后监听响应来读取数据。每个超声波游侠都有一个独特的24位地址写在模块的正面,如图2所示。您发送到SRF485WPR的数据帧如图3所示。
图2.超声波游侠地址
图3.数据框表单
中断 -定义为两个连续命令请求之间的时间延迟。
命令 -通过发送此信息,Ultrasonic Ranger会回复它的响应。
地址H,M,L -它是模块的24位地址。
数据 -如果命令不需要,则是您希望发送到模块的数据,零(0x00)。
CheckSum -它是所有先前字节总和的1的恭维(按位否定)(不计算中断)。
(4) 命令
图4.超声波游侠命令列表
(5) 检查总和计算
例如,让我们考虑应该发送到超声波游侠的帧在图5中表示。校验和是针对整个帧计算的,不包括中断,如下所述:
图5.数据格式
该检查总和计算为?(0x51 + 0x01 + 0x89 + 0xAB + 0x00)的低字节。
添加所有项将导致0x51 + 0x01 + 0x89 + 0xAB + 0x00 = 0x0186。
0x0186的按位表示法是0xFE79。
我们使用0x79的低字节
(6) 连接
准备Siemens Simatic IoT2040
Siemens Simatic IoT2040基于Yocto Linux工作,需要安装在SD卡上,并应插入Simatic。Yocto Linux可以从西门子网站下载。下载图像后,将SD卡插入Linux计算机的SD卡插槽,然后按照以下说明操作。
在Linux计算机上,打开终端(ctrl + alt + t)并使用以下命令转到下载Yocto Linux zip文件的位置:cd Downloads。在这种情况下,zip文件位于下载中。
使用以下命令解压缩文件夹:
sudo unzip Example_Image_V2.2.0.zip
通过运行以下命令验证SD卡的位置:
df -h
通过运行以下命令卸载SD卡。将“mmcblk0”替换为计算机显示的SD卡位置:
unmount / dev / mmcblk0
使用以下命令将Yocto Linux映像刻录到SD卡上:
sudo dd bs = 1M if = name_of_image = SD card_location
将映像安装到SD卡上后,将SD卡放入Simatic的SD卡插槽中,如图6所示。
图6. Simatic IoT2040上的SD卡安装
Simatic有两个名为X1P1LAN和X2P1LAN的以太网端口。第一个以太网端口即。X1P1LAN的默认DHCP地址为192.168.200.1。使用Secure Shell(SSH),您可以从Linux计算机与Simatic进行通信。为此,请将以太网电缆的一端连接到计算机,将以太网电缆的另一端连接到Simatic的X1P1LAN端口。通过SSH登录Simatic。
ssh root@192.168.200.1
(7) 在Simatic上安装Pip
为了使用Simatic从Ultrasonic Ranger读取数据,使用Python。默认情况下,Python安装在Yocto Linux上。一些能够串行发送数据帧的Python库需要安装在Simatic上。为此目的,使用pip。Pip是一个用于安装和管理Python库的包管理系统。
要在Simatic上安装pip,应编辑/ etc / opk /opkg.conf文件,并为存储库添加以下行:
src iotdk-all http://iotdk.intel.com/repos/2.0/iotdk/all src iotdk-i586 http://iotdk.intel.com/repos/2.0/iotdk/i586 src iotdk-quark http://iotdk.intel.com/repos/2.0/iotdk/quark src iotdk-x86 http://iotdk.intel.com/repos/2.0/iotdk/x86
接下来,应编辑/ etc / opkg /arch.conf文件并插入以下行:
arch i586 12 arch quark 13 arch x86 14
接下来,更新包数据库:
opkg update
现在我们可以安装一些有用的包:
opkg install ca-certificates python-json python-io python -re python-xmlrpc python-ctypes openssh-sshd curl - insecure -L“ https://bootstrap.pypa.io/get-pip.py ”> get-pip.py python get-pip.py
配置pip后,我们现在可以安装python库:
pip install pyserial pip install microgear pip install serial
创建Python文件
安装了所有必需的库后,我们现在开始编写一个Python代码,用于读取Ultrasonic Ranger中的数据。为此,创建一个名为ranger的Python文件,如下所述:
nano ranger.py
使文件可执行,如下所述:
chmod + x ranger.py
使用以下命令运行该文件:
./ ranger.py
完整的源代码:https://gitlab.com/muthineni/NETPIE-Python
(8) 物联网平台(NETPIE)
NETPIE是基于物联网云平台服务,通过推动从应用程序开发人员或设备制造商手中连接物联网设备的复杂性,以最无缝和透明的方式将物联网设备(“事物”)互连在一起到云端。在NETPIE上,创建应用程序并生成设备密钥。“board”是为此演示创建的应用程序ID,如图7所示:
图7.在NETPIE上创建应用程序ID
创建数据源,如图8所示:
图8.创建数据源
这是结果:
图9.显示Ranger在NETPIE上检测到的目标距离
结论
该方法讨论了使用Siemens Simatic IoT2040作为从SRF485WPR接收数据的网关设备。通过Simatic IoT2040,处理行业中的生产数据变得更加高效,从而开辟了工业物联网(IIoT)应用的道路。