我是靠谱客的博主 风趣康乃馨,最近开发中收集的这篇文章主要介绍基于Linux系统实现西门子PLC的数据采集,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

-Begin-

前言

.NET很早可以跨平台了,从早期的Mono到.Net Core,再到现在的.NET 5,以及下个月即将发布的.NET 6,.NET也是在一直稳步发展。

今天跟大家分享一下,基于Linux系统实现西门子PLC的数据采集。

准备

  • VS版本升级到最新,至少在v16.8以上。

  • 基于.Net 5或.Net Core的通信库。

  • Linux环境,这里用的是CentOS的虚拟机,这个虚拟机我也分享给大家,公众号里回复关键词:CentOS7虚拟机。

开发

1、使用VS2019创建一个.NET 5框架的项目。

图片

2、引入通信库,确保通信库是基于.Net 5开发的。

图片

3、编写几行简单的代码。

 class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Let's Begin!");

            if (siemens.Connect("192.168.1.200", xktComm.Common.CPU_Type.S71200, 0, 0))
            {
                Console.WriteLine("Connect Success");

                while (true)
                {
                    var val = siemens.Read("DB1.DBD0", xktComm.Common.VarType.Real);

                    Console.WriteLine(val.ToString());     

                    Thread.Sleep(1000);
                }
            }
            else
            {
                Console.WriteLine("Connect Fail");
            }
            Console.ReadLine();
        }

        private static xktComm.PLC.Siemens.SiemensS7 siemens = new xktComm.PLC.Siemens.SiemensS7();

    }

4、本地运行测试,确保执行结果无误。

图片

部署

CentOS系统默认是没有.NET 5环境的,所以需要提前安装一下.NET 5环境。

安装 .NET 5 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库。打开终端并运行以下命令:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

安装 SDK:NET SDK 使你可以通过 .NET 开发应用。如果安装 .NET SDK,则无需安装相应的运行时。若要安装 .NET SDK,请运行以下命令:

sudo yum install dotnet-sdk-5.0

安装运行时:在终端中,运行以下命令:

sudo yum install dotnet-runtime-5.0

检查安装结果:在终端中,运行以下命令:

dotnet --info

图片

发布

1、回到VS2019中,解决方案,右击,选择发布。

图片

2、发布页面选择选项——文件夹。

图片

3、下一步中继续选择——文件夹。

图片

4、文件夹位置使用默认,点击完成。

图片

5、完成后点击可移植,在弹出的界面中,根据情况设置。

图片

6、最后点击一下发布按钮即可。

图片

7、查看发布结果,根据发布路径查看是否发布完成。

图片

运行

1、将发布的文件夹拷贝到Linux系统中即可,由于是虚拟机,如果安装了VMware Tools,是可以直接复制的,如果是其他的系统,可能需要通过远程工具或者Xshell来实现。

2、进入Publish文件夹,右击打开命令行Open in Terminal,输入dotnet Net5CrossPlateDemo.dll,执行。

3、执行结果如下,大功告成。

图片

-END-

最后

以上就是风趣康乃馨为你收集整理的基于Linux系统实现西门子PLC的数据采集的全部内容,希望文章能够帮你解决基于Linux系统实现西门子PLC的数据采集所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部