回覆列表
  • 1 # 工控程式設計

    這個問題很簡單哦。

    可以分兩步操作。

    我們這裡拿威綸LW0暫存器與永宏PLC的D0暫存器作演示。

    一步步演示如何實現。

    實現後的效果我們可以提前看下

    介面上有顯示LW0和顯示D0的數值元件。

    下面是實現的過程。

    1.在人機介面上新增PLC硬體。

    如下圖,開啟新版觸控式螢幕程式設計軟體。

    在介面上,選單->常用->系統引數,彈出系統引數設定對應框。

    2.透過宏指令實現資料交換。

    今天還在更新宏教程,所以就用宏指令來實現。

    首先是準備兩個數值顯示元件,用來顯示或設定屏的LW0和PLC的D0。

    然後是準備一個宏,用來獲取與設定LW0和D0,程式碼如下。

    bool bSwitch=false

    macro_command main()

    int nValue=0,nValue1=0

    if(bSwitch==true) then

    GetData(nValue, "FATEK FB/FBs/B1/B1z Series", D, 0, 1)

    GetData(nValue1, "Local HMI", LW, 0, 1)

    SetData(nValue1, "FATEK FB/FBs/B1/B1z Series", D, 0, 1)

    SetData(nValue, "Local HMI", LW, 0, 1)

    else

    GetData(nValue, "FATEK FB/FBs/B1/B1z Series", D, 0, 1)

    GetData(nValue1, "Local HMI", LW, 0, 1)

    SetData(nValue1, "FATEK FB/FBs/B1/B1z Series", D, 0, 1)

    SetData(nValue, "Local HMI", LW, 0, 1)

    end if

    end macro_command

    最後是新增一個位狀態設定元件,來呼叫宏,

    實現觸控式螢幕的LW0的PLC的D0之間進行資料交換,進行通訊。

    執行程式,效果如下。

  • 2 # 工控人

    人機介面上的資料LW如何與plc上的資料暫存器D進行通訊

    我們知道觸控式螢幕與plc進行上位機通訊一般是對plc上的資料D進行讀取和寫入操作,那我們人機介面HMI上的資料LW如何實現與plc的互動呢,可以用以下兩種方式實現,1使用元件“資料傳輸”,2是採用宏指令程式設計完成。

    1資料傳輸,這個元件有視窗和背景兩種模式,視窗模式就是在觸控式螢幕介面上有一個類似按鈕的元件,可以用手動觸發就是點一下按鈕傳輸資料,還可以透過條件進行觸發比如X1閉合;而背景式則自動進行資料傳輸,我們可以設定時間間隔比如0.5s進行一次資料傳送等,來源地址我們選擇為plc的資料暫存器,目標地址我們選擇為觸控式螢幕的LW暫存器。

    2宏指令,宏指令的功能很是強大資料傳輸只是其中的一小部分,我們使用兩個指令函式就是能完成,首先定義的一個整型資料a,使用“GetData”函式把資料從三菱plc上的D0讀取出來儲存到a中,然後再使用“SetData”函式透過a傳輸到人機介面上的LW0地址上。這裡我們選擇週期執行時間間隔選擇為100ms,如果資料傳送要求較高間隔就小一點。編輯完後儲存和編譯就完成了。

    下面我們用兩種方法演示下人機介面上的資料LW如何與plc上的資料暫存器D進行通訊,分別就資料傳輸(視窗)、資料傳輸(背景)和宏指令來操作,影片如下:

  • 中秋節和大豐收的關聯?
  • 19款新X1和3系GT怎樣選?