C#與西門子PLC通訊--仿真軟件S7-PLCSIM Advanced V3.0的使用


本測試在虛擬機中進行

1,工具:VS2019、S7-PLCSIM Advanced V3、博圖V15

 

 

 

 一台虛擬機中安裝了VS2019和S7-PLCSIM Advanced V3,另一個虛擬機安裝了博圖V15.

2,配置

虛擬機配置:網絡建議采用NAT模式,不容易造成IP沖突。

 

 

 

 

博圖設置

PLC型號為1515-2PN,兩個以太網卡的地址分別為

192.168.0.210,C#通過此地址和PLCSIM通訊

192.168.91.210,博圖通過此地址和PLCSIM通訊

如下圖

 

 

 

 

 

 

設置項目支持仿真,方法如下:

1,右鍵項目-屬性

2,塊編譯時支持仿真勾上。

 

 

 

 

 

 

 S7-PLCSIM配置

 

 

程序編寫

 

 

 

 

 

 

C#程序

using S7.Net;
using System;

namespace s71200
{
    class Program
    {
        static void Main(string[] args)
        {
            //Console.WriteLine("Hello World!");
            Plc plc = new Plc(CpuType.S71500,"192.168.0.210" + "",0,0);
            //連接plc,可能會拋異常,用try-catch提示
            try
            {
                //1,連接到PLC
                plc.Open();
                if (plc.IsConnected)
                {
                    Console.WriteLine("PLC連接成功");
                }
                //從plc讀取數據
                bool b = Convert.ToBoolean(plc.Read("M0.0"));
                Console.WriteLine("讀取M0.0的值為{0}",b);
                bool c = Convert.ToBoolean(plc.Read("M2.0"));                           
                Console.WriteLine("讀取M2.0的值為{0}",c);
                
                //寫數據到PLC
                plc.WriteBit(DataType.Memory,0,0,0,true);
                //重新讀一下M0.0有無變化。
                b= Convert.ToBoolean(plc.Read("M0.0"));
                Console.WriteLine("讀取M0.0的值為{0}",b);
                c = Convert.ToBoolean(plc.Read("M2.0"));
                Console.WriteLine("讀取M2.0的值為{0}",c);
                //關閉到plc的連接
                plc.Close();
            }
            catch
            {
                Console.WriteLine("PLC連接失敗,請檢查連接參數");
            }           
       }
    }
}

這個程序執行時,會把M0.0置1上面的PLC起保停程序會導通,則M2.0會變成1,現在讓程序跑一下

可以看到通訊正常,對PLC的讀寫是OK的。

 

 

 

 總結,本文寫的比較亂,如果有疑問的話,歡迎在指正,謝謝。

 

更新:在同一台電腦測試配置如下

 

測試的時候一直連接不上,把另一個網卡禁用后才可以,只用這個虛擬的以太網卡。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM