深圳市z6尊龙app智控技術有限公司

商務:13641442131
技術支持:14704719971
郵箱:kinseal@jyml.net
地址:深圳市寶安區福海街道新和同富裕工業區海威景頌倉貿中心A棟3樓
   當前位置:首頁 >新聞動態 > 行業新聞 > 觸摸屏如何與與PLC通訊,其原理是怎樣的?
觸摸屏如何與與PLC通訊,其原理是怎樣的?

  z6尊龙app在以PLC為核心的實際控製項目中,絕大多數情況都離不開觸摸屏或上位機的配合,因為z6尊龙app使用PLC做控製,主要的是處理一些模擬量,這些模擬量就是z6尊龙app要監控的,設備上的壓力,溫度,流量等這些數值,然後通過這些檢測到的數值,再根據一些條件控製設備上的電動閥,風機,水泵等。但這些數值z6尊龙app直接從PLC上是看不到的,想要看到這些數值,就要使用觸摸屏或工控機(其實就是電腦)。

  首先需要說明一點,這篇文章隻是闡述觸摸屏的大致的工作原理和流程,不是一步一步教你怎麽使用觸摸屏,我認為在使用和操作觸摸屏以前,明白它的原理和工作流程更重要。

  如下麵的圖1,當z6尊龙app把觸摸屏和PLC連接起來以後,在觸摸屏上就能看到z6尊龙app想看的數據了。除了數據還能通過觸摸屏控製現場設備上的各種被控對象。比如z6尊龙app在觸摸屏上組態一個開關,隻要觸摸屏上點擊一下這個開關,就可以讓現場設備上的一個電機啟動。

觸摸屏和PLC通訊的原理.png

  那觸摸屏和PLC通訊的原理是什麽樣的呢?看下麵的圖2,這是一個真實的觸摸屏的正麵和背麵,正麵不用說了,就是顯示麵。

  主要看一下背麵,有3個接口:

  1、電源接口:給觸摸屏供電的,電壓多數都是DC24V。觸摸屏的參數標簽上都有標明。

  2、組態下載接口:就是z6尊龙app通過觸摸屏廠家提供的組態軟件,在電腦上把z6尊龙app想要的畫麵和功能都設計完成後,通過此接口下載到觸摸屏上。各個觸摸屏廠家都有各自的軟件,是不通用的,但沒關係,原理都是一樣的,隻要學會一種,其他的隻要熟悉一下軟件界麵就可以了。

  3、通訊接口:這個接口就是和PLC通訊用的,接口的形式主要分為RS232 ,RS485 ,以太網這3種(不明白什麽是232和485的可以看看我前麵的文章,有專門介紹),這裏需要注意的是,這個接口的形式必須和PLC的接口形式是一樣的。圖2中的觸摸屏品牌是昆侖通泰的,它的這個接口是RS485的,所以當和PLC連接時,PLC的接口也必須是RS485的。

  看完了觸摸屏的外部,接下來z6尊龙app看一下觸摸屏的內部,看下麵的圖3,是我自己製作的觸摸屏內部的一個內部示意圖,可能不太全麵嚴謹,但重要的部分已經畫出來了,隻要你能理解就OK了。

  觸摸屏的內部大致可以分為:

      通訊接口單元,驅動單元,內存變量單元,顯示單元。除了顯示單元,其他3個單元在觸摸屏的內部z6尊龙app是看不見的。

  1、通訊接口單元:這個單元主要負責把驅動單元打包好的數據包,發送到觸摸屏背麵的通訊接口,再由通訊接口發送給PLC,這些過程z6尊龙app是不用幹預的,觸摸屏會自己完成。z6尊龙app要做的就是,選擇一個驅動單元裏的驅動,說白了就是告訴觸摸屏它要發送哪個驅動數據包。

  2、驅動單元:這一單元裏存放了許多和PLC連接的通訊文件,一個文件對應一種通訊協議(對通訊協議不懂的也看我以前文章),z6尊龙app把這些文件叫做驅動。也就是說一個驅動對應一種通訊協議,比如說西門子S7-200PLC使用PPI通訊協議,那麽觸摸屏廠家就會編寫一個能和西門子S7-200PLC PPI通訊協議,通訊的文件,然後放在驅動單元。

  舉例,比如當z6尊龙app的觸摸屏想要和西門子200的PLC連接時,z6尊龙app就在觸摸屏裏選擇PPI驅動。想要和西門子300的PLC連接,選擇MPI(MPI是西門子300PLC的通訊協議)驅動就可以了。這些驅動文件都是觸摸屏廠家提前寫好的,z6尊龙app隻能選擇不能更改。可見觸摸屏裏麵的驅動越多,z6尊龙app可以選擇的PLC品牌或通訊協議的範圍就越廣。現在成熟的觸摸屏廠家內置的驅動,基本都能覆蓋市麵上常用的PLC和通訊協議。

  所以當z6尊龙app手上有一款觸摸屏,想要選擇一個PLC做通訊時,一定要看看你的觸摸屏裏有沒有,可以和這個PLC通訊的驅動。

  3、內存變量單元:這一單元也是觸摸屏廠家內置的,它實際上就是一塊存儲區,它裏麵可以存放各種各樣的數據,存放的數據類型大致可以分為數值型,開關型,字符型,特殊型。

  比如z6尊龙app想要在觸摸屏上顯示一個鍋爐的水溫,那麽z6尊龙app就在觸摸屏的內存變量單元,新建一個變量,這個變量的名字叫"鍋爐水溫"(名字隨便取),數據類型選擇數值型。那麽觸摸屏就會自動在內存單元,分配一小塊區域給"鍋爐水溫"這個變量。當觸摸屏和PLC通訊時,就會把從PLC讀到水溫數據存放到這一小塊區域,也就是"鍋爐水溫"這個變量。當z6尊龙app需要顯示多個數據時,隻要新建多個變量就可以了。看到這裏你可能還是有點不太理解,沒關係,等一會我按照下麵的圖4係統的說一下你就明白了。

  4、顯示單元:這個單元就好理解了,隻要是z6尊龙app在觸摸屏畫麵上能看到的東西都是在顯示單元。就依上麵的"鍋爐水溫"為例,z6尊龙app想要顯示鍋爐的水的溫度,隻要在觸摸屏的顯示單元上,畫一個顯示框的部件(這個部件每個觸摸屏都有,直接拖到畫麵就行),然後把這個部件和上麵新建的"鍋爐水溫"這個變量連接起來就行了。

  上麵分別把各個單元講完了,最難理解就是驅動單元和內存變量單元。大家可能還不太明白,下麵我就按照圖4,係統的再說一下你就能理解了。

  圖4要實現的功能是,觸摸屏和西門子S7-200PLC連接,1,在觸摸屏上可以顯示PLC裏的一個壓力數值,。2,可以通過觸摸屏上的一個開關部件,控製PLC裏的一個開關量。

  第一步,z6尊龙app先在觸摸屏裏選擇驅動,因為是和西門子S7-200PLC連接,所以z6尊龙app在驅動單元裏就要選擇"西門子S7-200 PPI通訊驅動"。驅動選擇完成後,觸摸屏就會把所選擇的驅動和通訊接口單元,還有內存變量單元自動連接起來。z6尊龙app再來看一下這個驅動的內部(圖4中桔色的部分),裏麵有許多地址V0.0 VB10 VW10等,這些地址是和PLC裏的地址一一對應的,裏麵的數據和狀態也是和PLC裏相同的。比如PLC裏的VD10裏的數據是123.5的話,那麽觸摸屏驅動裏的VD10裏的數據也是123.5。這樣觸摸屏裏就有數據了,但是這些數據現在還是不能顯示出來,因為這些數據還沒有傳到顯示單元。要怎麽做才行呢?

  第二步,z6尊龙app在內存變量單元,新建一個變量叫"儲罐壓力",這個變量z6尊龙app把它和驅動單元裏的VD10連接起來,這樣"儲罐壓力"這個變量裏就會有數據123.5了。但現在數據還是不能顯示出來,因為還沒有傳到顯示單元。

  最後一步,z6尊龙app在顯示單元,放置一個具有顯示功能的顯示部件,然後把這個顯示部件和內存變量單元中的"儲罐壓力"這個變量,連接起來就可以。這樣z6尊龙app就能看到123.5這個數據了。看起來挺複雜,其實這中間z6尊龙app要做的就是,通過一個新建的變量,把這幾個單元連接起來就行了,其他的事情都是觸摸屏自動完成的。

  理解了觸摸屏數值顯示的工作流程,開關量的也就簡單了,在顯示單元放一個開關部件,然後新建一個變量,把這個變量和驅動單元還有顯示單元連接起來就行了。至於觸摸屏是怎麽把這些數據傳給PLC的,那就不用管了,這些事通訊接口單元會幫你完成。

  圖5就是整體的連接示意圖,這是最基本的組合方式,通過這種PLC+觸摸屏的組合方式,實現了真正的人機對話,PLC內部的數據z6尊龙app可以一目了然,通過在觸摸屏上增加幾個開關部件,就可以減少實際開關的使用,從而降低實際開關觸點接觸不良,對控製係統造成的影響,也提高了係統的穩定性。

微信截圖_20201023104203.png