树莓派(Raspberry)是一个运行在linux 平台上的卡片电脑。支持多种语言编程。比较流行的语言是Python.
Snap7 是一款开源 32/64位多平台通讯套件,专为连接西门子PLC开发。支持最新的西门子CPUs 1200/1500和老产品S7-200,LOGO 0BA7/0BA8,以及西门子驱动等。
中移物联网开放平台提供免费的物联网Onenet 接入,支持多种通讯协议。
通常我们通过OPC SERVER 和PLC进行通讯,读写信息到SCADA系统中。这需要服务器和上位机作为支持。
目前市场上也有一些网关,可以插上SIM卡,将PLC上传到云端。通过云端对PLC的数据进行远程监控和操作。
一种经济的做法,是在树莓派上装Snap7作为客户端,通过程序去读写PLC中的数据。
Snap7 支持多种系统平台和多种编程语言,在树莓派上,用安装Python库后,利用python 语言,进行编写程序和调用库。
客户端读取到PLC数据后,通过http 协议将Json 格式将数据上传到onenet 物联平台。实现对PLC的简单监控和控制。
实验下来,onenet 平台的更新频率为3s,对实时性要求不高的场合,可以通过这种方式,实现PLC上云。
树莓派直接读取PLC内存的数据,每次读取都需要进行一次请求连接,频率设置到100ms 的时候,偶尔会出现连接不成功的情况。