-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
+關注
關注
87文章
11292瀏覽量
209326 -
數據采集
+關注
關注
38文章
6053瀏覽量
113620 -
西門子PLC
+關注
關注
13文章
141瀏覽量
16924
發布評論請先 登錄
相關推薦
評論