加入收藏 在線留言 聯系我們
        關注微信
        手機掃一掃 立刻聯系商家
        全國服務熱線13185520415

        洛陽市SIEMENS一級分銷商西門子(中國)有限公司授權總代理

        更新時間
        2024-11-24 08:00:00
        價格
        請來電詢價
        西門子PLC
        西門子伺服電機
        西門子觸摸屏
        西門子電纜
        西門子變頻器
        西門子模塊
        聯系電話
        13510737515
        聯系手機
        13185520415
        聯系人
        董海波
        立即詢價

        詳細介紹
         startByteAdr是在數據塊內以字節為單位的起始地址,可以傳入0。bitAdr 為需要操作的位的偏移地址(以startByteAdr為基準),value 為寫入的值。dataType為枚舉類型,我們操作的是數據塊,傳入DataBlock。
        public void WriteBit(DataType dataType, int db, int startByteAdr, int bitAdr, bool value);
        public enum DataType
        {
            Counter = 28,
            Timer = 29,
            Input = 129,
            Output = 130,
            Memory = 131,
            DataBlock = 132
        }
      1. 1

      2. 2

      3. 3

      4. 4

      5. 5

      6. 6

      7. 7

      8. 8

      9. 9

      10. 10

      11. 按字節讀:count代表讀的字節數量。在進行按字節讀寫時,對于8位的單字節變量來說沒有任何問題。但是對于多字節比如在PLC中16位I的INT類型,需要注意大小端問題。在西門子PLC中以大端模式存儲數據,但是在Intel的X86架構的PC上,卻是以小端模式。所以,在從PLC讀取一個INT類型的變量,需要將讀取回來的字節數組高低字節調換,后面C#程序中會有詳細的實現代碼。public byte[] ReadBytes(DataType dataType, int db, int startByteAdr, int count);
      12. 1

      13. 按字節寫:value代表將要傳輸的數據轉換成的字節數組,如果要操作一個INT變量,需要提前將高低字節調換,后面C#程序中會有詳細的實現代碼。public void WriteBytes(DataType dataType, int db, int startByteAdr, byte[] value);
      14. 1

      15. (二)PLC設置

        實現外部程序可以訪問操作DB塊,需要對PLC部分做一些設置。首先對于要讀取或者訪問的DB塊,要將優化的塊訪問取消,默認為勾選的,選中塊右擊選擇屬性。

        圖片

        同時還要在硬件組態中,設置防護與安全中的連接機制。將“允許來自遠程對象的PUT/GET訪問”勾選。如下圖:
        圖片

        (三)C#程序

        在C#上位機軟件中,對通訊類庫的函數做一個簡單的包裝,以方便我們使用。首先新建一個類S7,在項目中需要引用S7.NET,并在該類中包含命名空間。using S7.Net;
      16. 1

      17. 相關產品

        聯系方式

        • 電  話:13510737515
        • 聯系人:董海波
        • 手  機:13185520415
        • 微  信:13185520415