⑴ plc觸摸屏程序的編寫有幾種方法各是什麼
介紹一種在PIC單片機與觸摸屏之間採用Modbus協議實現非同步串列通信的方法。簡單介紹了Modbus通信協議,給出了硬體電路連接圖、程序流程圖以及用PIC單片機C語言編寫的部分通信程序。實際使用證明該方法數據傳輸穩定可靠,並提供了良好的人機交互環境。
關鍵詞:觸摸屏 PIC單片機 Modbus協議 通信
工控中經常需要觀察系統的運行狀態或者修改運行參數。觸摸屏能夠直觀、生動地顯示運行參數和運行狀態,而且通過觸摸屏畫面可以直接修改系統運行參數,人機交互性好。單片機廣泛應用於工控領域中,與觸摸屏配合,可組成良好的人機交互環境。觸摸屏和單片機通信,需要根據觸摸屏採用的通信協議為單片機編寫相應的通信程序。Modbus協議是美國Modicon公司推出的一種有效支持控制器之間以及控制器經由網路(例如乙太網)和其它設備之間進行通信的協議。本文以PIC16F877單片機和人機電子有限公司的eView MT510T型觸摸屏為例,介紹其通信程序的開發過程。
1 系統結構
實現觸摸屏與單片機的通訊,主要是解決通訊協議的問題。本文使用開放的Modbus通訊協議,以觸摸屏作主站,單片機作從站。eView觸摸屏本身支持Modbus通訊協議,如果單片機也支持Modbus協議,就可以進行通信了。觸摸屏與單片機之間採用的RS-232C兼容介面直接連接,傳輸速率設置為9600kb/s。圖1為該系統的電路圖。
將PIC16F877單片機RC6、RC7口設置為非同步串列通信模式,經過MAX232晶元將TTL電平轉換為RS232電平,再與eView觸摸屏PLC[RS-232]介面相連,即完成了硬體連接。eView觸摸屏PLC[RS-232]介面的管腳2為TXD,管腳3為RXD。
2 Modbus通信協議介紹
Modbus通信協議是一種串列的主從通信協議,網路里僅有一台設置可作為主機(稱Master),其它設備作為從機(稱Slaver),主機不需編號,從機必須編號。協議定義了主機查詢及從機應答的信息幀格式。通信時,主機首先向從機發出請求信息,符合相應地址碼的從機接收通訊命令,並除去地址碼,讀取信息,如果沒有出錯,則執行相應的任務,然後把執行結果返給主機。若從機接收到的校驗碼與本機計算的不同,則說明數據在通信過程中出現錯誤,從機把這次請求視為無效,功能代碼將被修改以用於指出回應消息是錯誤的,同時數據段包含了描述此錯誤信息的代碼。當主機收到這一信息時,會重新發送請求信息。校驗方式分為LCR(傳送數據為ACSII時)校驗或CRC(傳送數據為二進制時)校驗,這里採用CRC校驗方式。
信息傳輸為非同步方式,並以位元組為單位。主從站之間通訊的字格式如表1所示。
表1 通訊的字格式
字格式(串列數據) 10位二進制
起始位 1位
數據位 8位
奇偶校驗位 無
停止位 1位
Modbus協議可支持ASCII碼或二進制格式的數據傳輸。ACSII碼方式下每一個位元組數據分兩個位元組傳送,二進制方式下用一個位元組傳送,為了減少數據傳輸量,一般選二進制數據方式。各個區允許發送的位元組均為16進制的0~9,A~F。二進制信息幀標准結構為:
初始結構 ≥4位元組的時間
地址碼 1位元組
功能碼 1位元組
數據區 N位元組
錯誤校驗 16位CRC碼
結束結構 ≥4位元組的時間
二進制模式中,信息開始至少需要3.5個字元的靜止時間,依據使用的波特率,很容易計算這個靜止時間。發送完最後一個字元後,也有一個至少3.5個字元的靜止時間,然後才能發送一個新的信息。網路上的設備連續監測網路上的信息,包括靜止時間。
3 單片機與觸摸屏地址的對應關系
eView觸摸屏只支持Bit和Word地址類型,而實際的單片機或其它控制器還有Byte、Double Word等表示方法,因此在進行通信時,需要把單片機和觸摸屏的數據進行變換。觸摸屏畫面元件讀取地址的設備類型有LW、0x、1x、3x、4x、RWI、RW等選項。其中,LW表示該元件讀取的是觸摸屏內部的地址,如其它元件的地址;0x表示讀取的是控制器的輸出信號;1x表示讀取的控制器的輸入信號;3x和4x指控制器的寄存器地址類型,其中4x是可讀可寫的,3x是只讀的;RWI、RW都是觸摸屏的內部地址,起輔助作用。使用這些讀取地址的設備類型,觸摸屏即可顯示或設定控制器寄存器或I/O口的數值。以「數值輸入」元件為例,通過「小鍵盤」輸入數據即可設置單片機寄存器或I/O口的數值。如果啟動了「觸發地址」,那麼當被觸控時,輸入的數據就被存放到了指定的單片機地址中。
4 通信程序的開發
觸摸屏與單片機的通信程序採用PIC單片機C語言編寫。編譯工具選擇Hitech公司的PICC編譯器。程序共分三大模塊,即初始化模塊、數據接收模塊以及數據處理及發送模塊。主程序流程圖如圖2所示。
PIC16F877單片機USART功能模塊帶有一個八位的波特率發生器BRG,BRG支持USART的同步和非同步工作方式。用SPBRG寄存器控制一個獨立的八位定時器的周期。在非同步方式下,發送狀態/控制寄存器TXSTA的BRGH位(即D2)被用來控制波特率。對串列口進行的初始化如下:
GIE=1; %全局中斷允許;
SPBRG=25; %設置波特率為9600;
TXSTA=0x04; %選擇非同步高速方式;
RCSTA=0x80; %允許同步串列口工作;
RTISC6=1;
TRISC7=1; %將C口的RC6和RC7設置為非同步串列通信模式;
PFIE=1; %外圍介面中斷允許;
RCIE=1; %USART接收中斷允許;
TXIE=1; %USART發送中斷允許;
數據接收模塊由一個中斷函數組成。該中斷函數將觸摸屏發來的Modbus數據幀存儲在一個自定義的數組中,當一幀數據接收完時,置接收結束標志位為1,轉入數據處理及發送模塊。串列通信接收器的核心是接收移位寄存器RSR,當接收到停止時,如果RCREG緩沖器為空,RSR就把接收到的數據送入RCREG。傳送完成後,接收中斷標志位RCIF被置1。實際的中斷是否被CPU響應,可以通過設置外圍介面中斷允許寄存器PIE1的中斷允許位RCIE來控制。
數據處理及發送模塊執行Modbus協議功能碼對應的運用。eView觸摸屏與單片機以Modbus協議通信,用到的Modbus功能碼如表2所示。
表2 通信程序用到的功能碼
功能碼 eView地址名稱 含 義 作 用
01 0x 讀開關量輸出 讀取一路或多路開關量輸出狀態
03 4x 讀保持寄存器 讀取一個或多個保持寄存器的數據
05 0x
1x 寫開關量輸出 強置一路繼電器的「分/合」輸出
16 3x
4x 預置多寄存器 把具體的數據裝入一組連貫的保持寄存器
以Modbus功能碼03為例來說明觸摸屏及單片機的實際通信數據格式。如單片機地址編號為01H,觸摸屏需要查看單片機中地址為0031H的寄存器的值,發送命令格式如表3所示。
表3 觸摸屏發送數據結構
數據段名稱 數據值
地址 01
功能碼 03
讀取地址高位 00
讀取地址低位 31
讀取數據個數高位 00
讀取數據個數低位 01
CRC校驗碼高位 D5
CRC校驗碼低位 C5
假設單片機中地址為0031H的寄存器中斷為05H,則單片機的回復命令如表4所示。
表4 單片機應答數據結構
數據段名稱 數據值
地址 01
功能碼 03
讀取位元組數 02
寄存器數據高位 00
寄存器數據低位 05
CRC校驗碼高位 78
CRC校驗碼低位 47
當波特率達到38400kb/s時,通信仍然穩定可靠。本系統具有連接電路簡單、組態靈活、通信可靠性高等特點,並已成功應用於物料篩選控制系統項目中。由於Modbus通信協議的開放性的特點,國外進口控制器串列通信大者支持該協議,因此本文所實現的採用Modbus協議的串列通信具有廣泛的應用價值。
QQ94504093
⑵ 觸摸屏程序和plc程序有什麼不一樣
觸摸屏程序編的是圖形,PLC程序是梯形圖語言。
PLC程序又叫可編程序控制器,是用來控制電氣設備傳動的智能儀器,它需要工程人員利用編程語言編寫程序,以實現各種控制方式。
觸摸屏程序可與PLC可編程序控制器直接連接,實現對可編程序控制器直接編寫程序,以及通過可編程序控制器編程對所採集的變數實事監視和控制。
(2)編寫觸摸屏程序有什麼感受擴展閱讀
PLC編程是一種數字運算操作的電子系統,專為在工業環境下應用而設計。它採用可編程序的存儲器,用來在其內部存儲執行邏輯運算、順序控制、定時、計數和算術運算等操作的指令,並通過數字式、模擬式的輸入和輸出,控制各種類型的機械或生產過程。
可編程序控制器及其有關設備,都應按易於使工業控制系統形成一個整體,易於擴充其功能的原則設計。
⑶ 觸摸屏PLC程序怎樣寫
觸摸屏編程軟體EBPRO的概述.mp4,免費下載
鏈接:https://pan..com/s/1QJZqKodE_xR4H3wcKNX3Uw
觸摸屏(Touch Panel)又稱為「觸控屏」、「觸控面板」,是一種可接收觸頭等輸入訊號的感應式液晶顯示裝置,當接觸了屏幕上的圖形按鈕時,屏幕上的觸覺反饋系統可根據預先編程的程式驅動各種連結裝置,可用以取代機械式的按鈕面板,並藉由液晶顯示畫面製造出生動的影音效果。
⑷ 信捷觸摸屏程序寫為mcgs程序怎麼寫,有哪些要注意的
這個功能可太多了,數學運算、畫面切換、串口通信、數據存取、屬性修改、許可權設置、許可權管理、配方管理、配方設置等等,說不完了
編寫就在腳本里編寫就行了,可以在啟動腳本,退出腳本,循環腳本,按鈕屬性腳本,事件腳本,等等地方編寫
⑸ 觸摸屏如何編程
問題一:關於 怎麼編程觸摸屏 一般觸摸屏是配套PLC使用的。PLC實現控制功能,觸摸屏實現輸入以及監視、顯示等功能。當然觸摸屏的功能很多,但是最常用的就是這個。
不論PLC還是觸摸屏,都是需要編寫程序的。每種觸摸屏都有對應的編程軟體,具體怎麼編寫不是一句兩句說的清,可以看手冊。
問題二:觸摸屏的操作如何來實現PLC程序控制的 觸摸屏實際叫做人機界面,是一種可以與控制設備通訊的人機控制方法。可以想像成按鈕指示燈儀表的 *** 。想要了解觸摸屏的工作原理就必須要懂得通訊,我們知道一個按鈕要控制一個接觸器就必須要有電信號的傳輸,也就是開關量。而觸摸屏控制一個接觸器則必須通過一個控制器來控制接觸器,比如PLC.首先觸摸屏必須了解所要控制的設備,也就是必須有控制器的通訊協議,例如MODBUS,PROFIBUS,CAN等,正常情況下是觸摸屏擁有該PLC的通訊協議就相當於,我(觸摸屏)對你(PLC)說你閉合M0.0,你(PLC)就可以正確的識別該命令解釋,並執行!
流程是必須在PC機(也就是電腦)上安裝該觸摸屏的組態軟體(各個品牌的屏所對應的組態軟體也不相同),打開軟體組態,開始組態,也就是耿制畫面,並定義連接的地址(這個地址是PLC內部元器件的地址,如西門子的I,Q,V,T,C,三菱的X,Y,M,等等做畫面之前最好詳細的列出PLC需要觸摸屏控制的點),當然前提是必須定義與之通訊的通訊協議,也就是定義PLC的類型。(所以選購觸摸屏之前一定要參考樣本,知道其是否支持你想使用的PLC控制器)組態完成後下載到觸摸屏(各廠家的屏所用的方式不同,有的是USB下載有的是232有的是485),下載完成後用連接線將觸摸屏連接到PLC就可以控制PLC動作了!
全部手工打的!希望對你有益!
問題三:如何使用觸摸屏編程軟體 ykhmi v3.2 [v3.2.613]
1、修復多功能鍵外形
2、增加最新產品及報價
3、修復西門子驅動問題
4、修復畫面重疊問題
5、S500A增加雙串口
6、常規更新
[v3.1.608]
1、增加系統參數掉電保存
2、增加滑鼠隱藏
[v3.1.399]
1、修復數位報警MODBUS地址過長
2、在線模擬器增加手動選擇串口的功能
3、常規更新
[v3.1.397]
1、修復西門子驅動通訊慢的問題
[v3.1.396]
1、修復儀表控制項不能設置參數問題
2、增加位報警表頭寬度
[v3.1.393]
1、更新固件
2、常規更新
[v3.1.388]
1、增加蜂鳴器受控位參數
2、增加LW、LB掉電保存參數
3、常規更新
[v3.1.387]
1、新增在線與離線模擬器
2、新增西門子VD等元件
3、新增Modbus 4x_D等元件
[v3.1.378]
1、修復罐體圖控制項不刷新
2、更新固件
[v3.1.375]
1、修復4.3A流動塊相關問題
2、更新固件程序(V3.9)
[v3.1.372]
1、增加下載次數顯示(單位:次)
2、增加使用時間顯示(單位:小時)
[v3.1.371]
1、解決部分Win8/10雙擊無響應BUG
2、常規更新
版本號:v3.1.367
1、解決部分Win8.1/Win10系統無法使用滾動條bug
2、常規更新
[v3.1.366]
1、解決部分Win8.1運行慢的bug
2、解決繪圖超出邊界bug
3、更新固件程序(V3.7)
[v3.1.362]
1、解決直線、曲線在Win8 64位無法使用的問題
2 、解決殺毒軟體誤報,已過金山360白名單
3、更新固件程序
[v3.1.358]
1、增加罐體圖形控制項
2、增加數字簽名,可支持Win8/8.1 x64位驅動
3、增加菜單項――修復工程
4、增加人機保護使用時間(小時)
5、增加人機保護使用次數(開機次)
6、增加串口參數的接線圖參考
7、更新固件程序
問題四:PLC與觸摸屏連接後,觸摸屏的程序是怎樣編寫的? 觸摸屏要讀取PLC的數據,可以在通訊嘩置與PLC相關的驅動。配置完成後,直接下載到觸摸屏中就可以通訊了。
問題五:plc觸摸屏一體機怎麼編程 要是西門子的,那直接編觸摸屏的程序,畫面什麼的,裡面的輸入輸出點要和PLC的輸入輸出對應。
之後把觸摸屏和PLC通訊線連上。
這樣就實現觸摸屏控觸PLC了。也可以像組態畫面似的,起到監控作用。
問題六:有PLC,和PLC程序,有觸摸屏,但是沒有觸摸屏程序,怎麼重寫觸摸屏? 100分 可以試一下!穿透功能。不知道用過沒有
由於不知道PKC的品牌和型號。大致說下吧
如果PLC有兩個通訊介面最好了,一個接PC另一個接觸摸屏。PC上打開PLC的編程軟體進入在線模式,改變數據寄存器的數值,在觸摸屏上看下哪個改變了,下面的事你知道怎麼辦了吧(特別注意下數據寄存器的前後關系)
PLC只有一個介面的話!將PLC與觸摸屏相連、觸摸屏的編程口與PC連接(信捷觸摸屏通訊口和編程口是不一樣的) 在PC 上打開編程軟體點在線看下可不可以連的上
穿透功能
問題七:維綸觸摸屏怎樣編程 首要要下載觸摸屏對應的平台軟體,變成在裡面有個宏指令可以進行編程,用的語言是VB
問題八:給機械設備編程(PLC和觸摸屏)的步驟和方法 這個無所謂哪個先後的。不過一般來說先編寫PLC程序好些。因為你的PLC程序里不僅包括了觸摸屏,還有外部開關等信號。而且觸摸屏編程比PLC簡單得多。
問題九:PLC加觸摸屏編程費用怎麼報 通常你按照正常的工作量和該編程是否單獨一個還是批量的設備。
1、如果單獨的一個設備用,那麼,你按照一個工程師當地的日薪水平,那麼當完成這個設計後,你需要多少時間,進行一下計算,接著計算一下調試所需時間,日後維護估計的可能時間。
即:行業正常工作時間薪酬+調試時間+維護時間
2、如果是批量生產設備的使用,那麼就應該預計對方半年內的銷售量,那麼收費組成:
行業正常工作時間薪酬+調試時間+維護時間+預算每台提成費用(此費用約前三項的3-5%)
我想這樣比較合理,並且有據可循。
問題十:信捷TOUCHWIN觸摸屏編程線怎麼製作 你到信捷官網去看看,