基于labview的plc與上位機通訊系統(tǒng)設計畢業(yè)論文_第1頁
已閱讀1頁,還剩70頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  摘要</b></p><p>  論文以松下FP1系列PLC為研究對象,對其MEWTOCOL-COM協(xié)議,有關遠程測控系統(tǒng)開發(fā),以及PLC指令的機器代碼進行系統(tǒng)研究,并在此基礎上開發(fā)B/S 模式的Web遠程測控系統(tǒng)。</p><p>  論文首先介紹了PLC的運用領域和發(fā)展前景;其次對MEWTOCOL-COM協(xié)議進行了系統(tǒng)的研究分析,以實

2、驗統(tǒng)計的方式,得出了PLC基本指令的機器代碼表;接著基于LABVIEW10.0,開發(fā)了PLC與上位機的人機界面,簡單實現(xiàn)了上位機對PLC端口,寄存器,定時器以及布爾命令的讀寫功能。接下來又介紹了通訊原理和通訊模式,描述了LABVIEW10.0中的通訊函數(shù),然后以16盞流水燈為例子,先在向PLC輸入梯形圖,然后在通訊系統(tǒng)上對PLC的進行監(jiān)控,以16盞布爾燈顯示其運行過程。接著比較分析了Date Socket 通訊,TCP通訊和Web通訊的

3、優(yōu)缺點,并解釋了最終通訊方案選擇的原因。最后基于Web通訊技術實現(xiàn)了PLC與上位機的遠程通訊。</p><p>  本文技術對進一步研發(fā)PLC與上位機通訊系統(tǒng)提供了一定的借鑒作用,尤其機代碼的測定在后續(xù)進一步開發(fā)通訊界面提供了新的方向。</p><p>  關鍵字:松下PLC 上位機 串口通訊 指令機代碼 LABVIEW10.0 Web服務器</p><p&g

4、t;  Design a Communication System Between PLC and Computer</p><p><b>  ABSTRCT</b></p><p>  The paper see the PLC of FP1 series made by Panasonic as the research object, studying fo

5、r the MEWTOCOL-COM protocol, the development of remote monitoring and control system, as well as the machine code represented the PLC command ,and finally build a remote measurement and control system based on the Web in

6、 the model of B/S.</p><p>  Firstly, the application fields and development prospects are introduced in this paper. Secondly, the MEWTOCOL-COM protocol is studied in a systematic way. Meanwhile, the machine

7、code table of the PLC basic command was found in statistical methods by conducting serious experiments. Thirdly, a PC interface lining to PLC was constructed based on LABVIEW10.0,and it can implement some function simply

8、 ,such as read or write the PLC ports ,registers, timers, or the Boolean command and so on. Then the </p><p>  The technology studied in this thesis provides some reference function for the development of co

9、mmunications system between PLC and host PC.</p><p>  Keywords:Panasonic PLC Host PC Serial Communication Machine Code LABVIEW10.0 Web Server</p><p><b>  目錄</b></p><p

10、><b>  摘要I</b></p><p>  ABSTRCTII</p><p><b>  目錄III</b></p><p><b>  第一章 緒論1</b></p><p><b>  1.1 引言1</b></p>

11、;<p>  1.1.1PLC概述1</p><p>  1.1.2 PLC在控制領域的發(fā)展前景2</p><p>  1.2 PLC與上位機通訊概述3</p><p>  1.3 通訊系統(tǒng)設計方案3</p><p>  1.3.1通訊系統(tǒng)的可行性分析3</p><p>  1.3.2 軟件

12、系統(tǒng)的需求分析4</p><p>  1.3.3 軟件系統(tǒng)的總體設計4</p><p>  第二章 PLC的通訊協(xié)議8</p><p><b>  2.1 引言8</b></p><p>  2.2 Labview與上位機通訊8</p><p>  2.2.1 通訊概述8</p&

13、gt;<p>  2.2.3PLC與上位機的串口通訊原理9</p><p>  2.3PLC 與上位機的硬件連接11</p><p>  2.4松下FP系列的通訊協(xié)議11</p><p>  2.4.1 MEWTOCOL-COM的說明11</p><p>  2.4.2與通訊界面有關通訊指令說明14</p&g

14、t;<p>  第三章 labview與PLC的串口通信21</p><p>  3.1 labview 實現(xiàn)串口通信關鍵控件介紹21</p><p>  3.2 與PLC的通訊的程序設計24</p><p>  3.2.1. 通訊原理圖24</p><p>  3.2.2 設計系統(tǒng)的通訊模型25</p>

15、<p>  3.2.3 典型模塊通訊28</p><p>  3.3 Labview 實時監(jiān)控PLC實例:流水燈監(jiān)控31</p><p>  3.3.1 流水燈梯形圖設計31</p><p>  3.3.2 labview的監(jiān)控的程序設計35</p><p>  3.3.3 系統(tǒng)的監(jiān)控運行調試37</p>

16、<p>  3.5 本章小結38</p><p>  第四章網(wǎng)絡遠程虛擬儀器開發(fā)39</p><p>  4.1 通信模式39</p><p>  4.1.1 C/S(Client/Server)模式39</p><p>  4.1.2 B/S (Browser/ Server)模式40</p><

17、p>  4.1.3 C/S 和B/S 的比較選擇40</p><p>  4.2 開發(fā)遠程虛擬儀器的技術42</p><p>  4.2.1 Date Socket 技術42</p><p>  4.2.2 TCP技術44</p><p>  4.2.3 Web技術46</p><p>  4.

18、3基于Web技術的網(wǎng)絡化開發(fā)46</p><p>  4.3.1配置LabVIEW Web服務器47</p><p>  4.3.2配置Web發(fā)布工具HTML文件48</p><p>  第五章 總結與展望50</p><p><b>  5.1 總結50</b></p><p><

19、;b>  5.2 展望51</b></p><p><b>  參考文獻52</b></p><p><b>  附錄53</b></p><p><b>  致謝63</b></p><p><b>  第一章 緒論</b>&l

20、t;/p><p><b>  1.1 引言</b></p><p>  可編程邏輯控制器(PLC)是以微處理器為核心的一種T業(yè)控制裝置,它綜合了計算機技術、自動控制技術和網(wǎng)絡通信技術,逐漸成為當代工業(yè)控制領域的支柱產(chǎn)品。隨著現(xiàn)代工業(yè)生產(chǎn)自動化水平的日益提高和微電子技術的飛速發(fā)展,PLC已成為功能完備的自動化系統(tǒng),并且在相關行業(yè)得到了廣泛的應用。</p>&

21、lt;p><b>  PLC概述</b></p><p>  PLC采用可編程的存儲器,用來在其內部存儲程序,執(zhí)行邏輯運算、順序控制、定時、計數(shù)和算術運算等功能的面向用戶的指令,并通過數(shù)字式或模擬式的輸入和輸出,控制各種類型的機械或生產(chǎn)過程。PLC及其相關外部設備,都應按照易于與工業(yè)控制系統(tǒng)聯(lián)成一個整體、易于擴展其功能的原則而設計。從該定義可以看出,PLC可完成程序存儲和指令執(zhí)行,進行

22、信息的處理,從而實現(xiàn)從輸入信號到輸出信號的變換。</p><p>  PLC的主要使用特點:①功能性強。C具有邏輯運算、計數(shù)、順序控制、計時、A/D和D/A轉換、數(shù)值運算、數(shù)據(jù)處理等功能。它可對開關量進行控制,也可對模擬量進行控制,既可控制一臺生產(chǎn)設備,也可控制一條生產(chǎn)線。PLC還具有通訊功能,可與上位計算機構成分布式控制系統(tǒng),實現(xiàn)遙控功能。②通用性強由于PLC產(chǎn)品的系列化和模塊化,PLC配備有品種齊全的各種硬件

23、裝置供用戶選用。當控制對象的硬件配置確定以后,可通過修改用戶程序,方便快速地適應應用條件的變化。③可靠性高。工業(yè)生產(chǎn)對電氣控制設備可靠性的要求非常高,其應當具有很強的抗干擾能力,能夠在惡劣的環(huán)境下長期連續(xù)可靠地工作,平均無故障時間長,故障修復時間短。而PLC是專為工業(yè)控制設計的,能夠適應工業(yè)現(xiàn)場的惡劣環(huán)境。在PLC的設計和制造過程中,采取了一系列提高可靠性的措施,使PLC的平均無故障時間可達數(shù)萬小時,有些優(yōu)質品牌的產(chǎn)品更高達幾十萬小時。

24、④編程簡單。⑤控制系統(tǒng)的設計、安裝、調試、維修方便[1]。</p><p>  1.1.2 PLC在控制領域的發(fā)展前景</p><p>  應用領域:(1)環(huán)過程控制 閉環(huán)過程控制是指對溫度、壓力、流量等連續(xù)變化的模擬量的閉環(huán)控制。PLC通過模擬量I/O模塊實現(xiàn)模擬量與數(shù)字量之間的A/D、D/A轉換,并對模擬量進行閉環(huán)PID控制,可用PID子程序來實現(xiàn),也可使用專用的PID模塊。PLC的

25、模擬量控制功能已經(jīng)廣泛應用于塑料擠壓成型機、加熱爐、熱處理爐、鍋爐等設備。還廣泛地應用于輕工、機械、冶金、電力等行業(yè)。 </p><p>  (2)運動控制 PLC可用于對直線運動或圓周運動的控制。早期直接用開關量I/O模塊連接位置傳感器與執(zhí)行機構,現(xiàn)在一般使用專用的運動控制模塊。世界上各主要PLC廠家生產(chǎn)的PLC幾乎都有運動控制功能。PLC的運動控制功能廣泛地用于各種機械。</p><

26、p>  (3)關量的邏輯控制 PLC最基本最廣泛的應用領域是開關量的邏輯控制。PLC取代繼電器控制系統(tǒng),實現(xiàn)邏輯控制。例如,機床電氣控制;運輸帶、包裝機械的控制;注塑機的控制;化工系統(tǒng)中各種泵和電磁閥的控制;冶金企業(yè)的高爐上料系統(tǒng)的控制;汽車配裝線、家電的生產(chǎn)線控制等各方面。</p><p> ?。?)能設備控制 智能設備作為工業(yè)過程自動生產(chǎn)線中的重要設備,已成為未來工業(yè)生產(chǎn)自動化的3大支柱之一?,F(xiàn)在

27、許多智能設備制造公司,選用PLC作為智能設備控制器來控制各種機械動作。隨著PLC體積進一步縮小,功能進一步增強,PLC在智能設備控制中的應用將更加普遍。</p><p><b>  發(fā)展趨勢:</b></p><p>  (1)向高速度、大存儲容量方向發(fā)展(CPU處理速度nS級;內存2M字節(jié));(2)向多品種方向發(fā)展和提高可靠性(超大型和超小型);(3)產(chǎn)品更加規(guī)范化

28、、標準化(硬件、軟件兼容的PLC);(4)產(chǎn)品更加規(guī)范化、標準化(硬件、軟件兼容的PLC); (5)加強聯(lián)網(wǎng)和通信的能力;(6) 可放置在一個溫度,電噪聲,電磁干擾,機械振動,和濕度變化范圍很大的惡劣環(huán)境中[2]。</p><p>  1.2 PLC與上位機通訊概述</p><p>  PLC作為新一代工業(yè)控制器 ,以其高性能價格比在工業(yè)測控系統(tǒng)中獲得了廣泛應用. 隨著微電子及控制技術的不

29、斷發(fā)展 , PLC已逐漸成為一種智能型、 綜合型控制器 ,由PLC構成的集散控制是現(xiàn)代工業(yè)控制的一個重要組成部分 [2],隨著計算機技術是快速發(fā)展,PLC在自動控制方面發(fā)揮的重要作用也日益增強,兩者是結合是自動控制發(fā)展的必然。通訊接口是PLC與上位機連接的橋梁,通過連接可以把PLC的現(xiàn)場執(zhí)行功能和計算機是快速運算功能很好融為一體,以實現(xiàn)自動化控制,甚至是遠程控制。目前不同廠家生產(chǎn)的PLC都提供了通訊接口,并提供了完善是通訊協(xié)議,如西門子

30、S7 200的PPI ,MPI ,以及自由通訊協(xié)議等,本文主要研究松下FP1系列PLC與上位機通訊。</p><p>  1.3 通訊系統(tǒng)設計方案</p><p>  1.3.1通訊系統(tǒng)的可行性分析</p><p><b> ?、儆布矫?</b></p><p>  目前的PLC都有一個或者幾個通訊通訊接口以供用戶或

31、者與其他設備連接使用,松下的PLC FP1系列中有一個RS-422串口,主要用于松下開發(fā)的FPWIN GR2 軟件相連,或者與手持式編程器相連。通過這個串口,我們可以實現(xiàn)與上位機的連接,通過RS-422轉RS-232/USB即可。在硬件方面需要配置的就是串口轉換器就可實現(xiàn)PLC與上位機的通訊,當然使用的串口轉化器要有配套的串口安裝程序,如果是自己開發(fā)的硬件則需要自己寫串口程序,這不是本文的研究重點。本設計使用的是從市場購買的RS-232

32、轉USB串口(實驗室提供的PLC已提過了RS-422轉RS-232),在硬件方面的問題已經(jīng)得到解決。</p><p><b>  ②軟件方面</b></p><p>  通訊系統(tǒng)的開發(fā),目前有能開發(fā)軟件的應用軟件很多,例如常用的VB,組態(tài)王以及本文使用的Labview,其中Labview是圖形化編程,便于理解,操作性強,功能強大,在串口通訊方面提供了幾個關鍵的通訊模塊

33、,使用時只需要把控件拖到面板上,用線進行連接即可。總之Labview 為系統(tǒng)設計提供了方便的編程環(huán)境,詳情見第三章。</p><p><b> ?、弁ㄓ崊f(xié)議</b></p><p>  每種PLC都提供了一種或者多種通訊協(xié)議,松下PLC FP1 系列遵循的MEWTOCOL-COM協(xié)議,該協(xié)議可以進行程序交換,由上位機主動通訊,PLC根據(jù)命令相應地做出響應,通過響應的信

34、息可以提取想要的數(shù)據(jù)信息,這是整個系統(tǒng)的根基,這個協(xié)議是系統(tǒng)筋脈,系統(tǒng)的一切開發(fā)都得遵循這個協(xié)議。</p><p>  1.3.2 軟件系統(tǒng)的需求分析</p><p>  開發(fā)軟件的最初一步就是需求分析。根據(jù)老師提供的題目,以及自身對該題目的分析研究,作者站在是用戶的角度對軟件系統(tǒng)的需求功能進行了概況如下:</p><p>  通訊系統(tǒng)要能控制反映PLC的輸入輸出端

35、口狀態(tài)值。</p><p>  通訊系統(tǒng)要能實現(xiàn)程序的下載,即離開松下PLC提供的軟件能夠通過界面實現(xiàn)程序的下載控制。</p><p>  通訊系統(tǒng)能實現(xiàn)一些基本的寄存器是操作,以及命令的發(fā)送,數(shù)據(jù) 的提取。</p><p>  有錯誤提醒功能,并生成錯誤報告。</p><p>  能夠實現(xiàn)遠程網(wǎng)絡監(jiān)控。</p><p&g

36、t;  1.3.3 軟件系統(tǒng)的總體設計</p><p><b>  1) 通訊方式選擇</b></p><p>  由于不同廠家生產(chǎn)的PLC品牌不同,通訊實現(xiàn)是方式也不僅相同,總計起來可以歸為兩大類,一種是專用通訊方式,另外一種是自由通訊。其中專用通訊是由生產(chǎn)廠家生產(chǎn)開發(fā)的軟硬件,其功能強可靠性高,一般用于大型控制或者要求高的場合,成本高。自由通訊是開放式的,用戶可以

37、根據(jù)自己的需求,依照一定的通訊協(xié)議,可以自行開發(fā)軟件,其經(jīng)濟性較好,且可以基本滿足客戶的一般控制需求,故自由通訊方式受到廣大消費者是歡迎。本設計用于一般場合,故選擇自由通訊方式。</p><p>  2) 通訊軟件設計方式選擇</p><p>  方法一:基于VB軟件是開發(fā)。應用VC++開發(fā)串行通信通常采用以下幾種方法m1:①利用windowsAPI通信函數(shù);②利用VC的端口操作函數(shù).in

38、p,.inpw,.inpd,一outp,一outpw,outpd等直接對串口進行操作;③使if]MicrosoftVisualc++的通信控件(MSComm)。[3] MSComm在串口編程時相對方便,程序不必花費時間去了解較為復雜的API數(shù),就能通過串行端口傳輸和接收數(shù)據(jù)。</p><p>  方法二:基于labview軟件的開發(fā)。LABVIEW 是美國NI (National Instrument)公司的軟件

39、產(chǎn)品,是虛擬儀器編程語言的典型代表。虛擬儀器(Virtual Instrument,VI)是儀器儀表歷史發(fā)展上的一次重大變革,是對傳統(tǒng)儀器的重大突破,代表著儀器儀表發(fā)展的最新方向和潮流。與傳統(tǒng)儀器相比,虛擬儀器的靈活性、性價比高、用戶化設計等特點,使它在工業(yè)和院校領域得到廣泛的應用。LABVIEW 編程高效、靈活、面向對象,其強大的圖形編程能力及可視化編程環(huán)境得到很多軟件開發(fā)人員的青睞[4]。</p><p>&

40、lt;b>  3) 網(wǎng)絡通訊選擇</b></p><p>  在網(wǎng)絡不斷發(fā)展成熟的今天,實現(xiàn)網(wǎng)絡化的遠程控制是現(xiàn)代工業(yè)發(fā)展的必然方向,本論文本著解決實際問題的理念,以及方便后來者的進一步開發(fā)研究提供參考,設計系統(tǒng)的時候把網(wǎng)絡通信的問題考慮進去。</p><p>  Labview的網(wǎng)絡通訊有4種方式:①無須具體協(xié)議的遠程桌面連接(UDP);②使用DataSocket技術進

41、行網(wǎng)絡通信;③現(xiàn)成實時發(fā)布測控程序的網(wǎng)頁,異地使用瀏覽器(如Internet Explorer,Netscape Communicator等)進行監(jiān)控(Web);④使用TCP、DDP等傳輸控制協(xié)議編程進行網(wǎng)絡通信。</p><p>  各通訊比較如下表。 </p><p>  通過表1-1LabVIEW的網(wǎng)絡通信功能及其特性分析可知表中的5種通訊方式都可以實現(xiàn)網(wǎng)絡遠程通訊,但功能和效果不

42、一樣,TCP是使用TCP/IP協(xié)議進行通訊,網(wǎng)絡傳輸數(shù)率高,但卻一對一對方式,節(jié)省了網(wǎng)絡傳輸時間,卻要開發(fā)兩個界面,對開發(fā)者要求較高。DateSocket技術可以達到很高的數(shù)據(jù)傳輸速率,實時性能相當好,同時實時性能也能到達要求,這是網(wǎng)絡通信需要所不具有的,但由于訪問權限的限制,客戶端的控制功能太弱。相比使用Labview 的Web服務器上的遠程面板,是無需另外編程的,以B/S 模式運行,允許多個客戶端同時訪問,并且可以申請控制權,但數(shù)據(jù)

43、傳輸速率低。本文基于一般通訊要求,故選擇了Web 服務器上的遠程面板。</p><p>  表1-1LabVIEW的網(wǎng)絡通信功能及其特性</p><p>  4)通訊系統(tǒng)總體設計運行框圖</p><p>  圖 1.1 總體設計圖</p><p>  方案說明:邏輯上來講,上面是功能的簡單的,但實際運用當中,會有很多子程序服務于這個主程序,因

44、此造成的結果就是程序很大塊,不方便修改維護。為了開發(fā)方便,本文使用了兩個程序面板,一個面板是主面板,用于監(jiān)控以及遙控,另一方面就是對另外一個面板的調用;子面板用于PLC指令代碼的輸入顯示,即鍵盤面板,通過這個界面可以向PLC發(fā)送梯形圖代碼,在PLC中形成梯形圖。</p><p>  第二章 PLC的通訊協(xié)議</p><p><b>  2.1 引言</b></p

45、><p>  在工業(yè)過程控制中,采用電磁繼電器構成的繼電器控制系統(tǒng)已暴露出許多弊端,如沒有運算、處理、通信等功能,所以它不能完成復雜的控制方式,與工業(yè)現(xiàn)場的集中管理、分散控制的現(xiàn)代管理體系要求不相適應。目前,PLC己被廣泛的應用于工業(yè)生產(chǎn)的各個領域。因為PLC具有運行速度快、性能價格比高、通過編程能完成復雜的控制邏輯、通常自帶RS一232或RS一422或RS一485等通信口,不僅能實現(xiàn)點到點通信,而且還能夠組建網(wǎng)絡。

46、PLC的廣泛應用和PLC網(wǎng)絡化功能的日益完善大大加速了PLC的網(wǎng)絡化發(fā)展[5]另外,在過程控制中,由于工業(yè)現(xiàn)場非常分散,由于FO點數(shù)眾多,各種儀表的工作環(huán)境非常惡劣,采用數(shù)據(jù)采集卡和LabVIEW開發(fā)平臺來完成現(xiàn)場的數(shù)據(jù)采集和控制顯然不可取??紤]到過程控制中的過程參數(shù)變化不是很快,而PLC恰恰可以克服數(shù)據(jù)采集卡在過程控制中的不足,并且具有較高的性能比,因而采取以PLC為下位機,以裝有Labview軟件的工控機為上位機開發(fā)平臺,通過RS一

47、232或RS一485串口與PLC通訊,實現(xiàn)對工業(yè)現(xiàn)場的監(jiān)控與現(xiàn)場數(shù)據(jù)的分析。這樣可以利用Labview軟件強大的數(shù)據(jù)處理功能和良好的人機交互環(huán)境通過簡單的</p><p>  2.2 Labview與上位機通訊</p><p>  2.2.1 通訊概述</p><p>  硬件之間要實現(xiàn)通訊必須要有硬件連接和通訊協(xié)議。 所謂通信協(xié)議是指通信雙方的一種約定。約定包括對

48、數(shù)據(jù)格式、同步方式、傳送速度、傳送步驟、檢糾錯方式以及控制字符定義等問題做出統(tǒng)一規(guī)定,通信雙方必須共同遵守。因此,也叫做通信控制規(guī)程,或稱傳輸控制規(guī)程,它屬于ISO'S OSI七層參考模型中的數(shù)據(jù)鏈路層。</p><p>  通訊方式有兩種:并行通訊和串行通訊。通常根據(jù)信息傳輸?shù)木嚯x決定采用哪種傳輸方式,例如,在IBM-PC與外部設備(打印機)通訊時,如果距離小于30m,則采用并行通訊,當大于30m時,則

49、要采用串行通訊方式[7]。</p><p>  PLC與上位機的串口通訊原理</p><p>  使用一條數(shù)據(jù)線,將數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個固定的時間長度。其只需要少數(shù)幾條線就可以在系統(tǒng)間交換信息,特別使用于計算機與計算機、計算機與外設之間的遠距離通信,這種通訊方式叫串行通信。原理圖如下</p><p>  圖2-1串行通訊原理圖</p>

50、;<p>  串行通信中,數(shù)據(jù)通常是在兩個站之間傳送,按照數(shù)據(jù)在通信線路上的傳送方向可分為3種基本的傳送方式:單工、半雙工和全雙工。</p><p>  圖2-2 三種通訊方式</p><p>  單工通信使用一根導線,信號的傳送方和接收方有明確的方向性。也就是說,通信只在一個方向上進行。</p><p>  若使用同一根傳輸線既作為接收線路又作為發(fā)送

51、線路,雖然數(shù)據(jù)可以在兩個方向上傳送,但通信雙方不能同時收發(fā)數(shù)據(jù),這樣的傳送方式稱為半雙工。采用半雙工方式時,通信系統(tǒng)每一端的發(fā)送器和接收器,通過收發(fā)開關分時轉接到通信線上,進行方向的切換。</p><p>  串行通信可分為兩種類型,一種是同步通信,另一種是異步通信。采用同步通信時,將所有字符組成一個組,這樣,字符可以一個接一個地傳輸,但是,在每組信息的開始要加上同步字符,在沒有信息要傳輸時,填上空字符,因為同步

52、傳輸不允許有空隙。采用異步通信時,兩個字符之間的傳輸間隔是任意的,所以,每個字符的前后都要用一些數(shù)據(jù)位來作為分隔位。比較起來,在傳輸率相同時,同步通信方式下的信息有效率要比異步方式高,因為同步方式的非數(shù)據(jù)信息比例比較小。但是,從另一方面看,同步方式要求進行信息傳輸?shù)碾p方必須用同一個時鐘進行協(xié)調,正是這個時鐘確定了同步串行傳輸過程中每一個信息位的位置。這樣一來,如果采用同步方式,那么,在傳輸數(shù)據(jù)的同時,還必須傳輸時鐘信號。而在異步方式下,

53、接收方的時鐘頻率和發(fā)送方的時鐘頻率不必完全一樣,而只要比較相近,即不超過一定的允許范圍就行了。在數(shù)據(jù)傳輸中,較為廣泛采用的是異步通信,異步通信中,在異步通行中有兩個比較重要的指標:字符幀格式和波特率。異步通信的標準數(shù)據(jù)格式如圖。</p><p>  圖2-3 異步通信格式</p><p>  從圖所列格式可以看出,異步通信的特點是一個字符一個字符地傳輸,并且每個字符的傳送總是以起始位開始,

54、以停止位結束,字符之間沒有固定的時間間隔要求。每一次有一個起始位,緊接著是5~8個的數(shù)據(jù)位,再后為校驗位,可以是奇檢驗,也可以是偶校驗,也可不設置,最后是1比特,或1比特半,或2比特的停止位,停止位后面是不定長度的空閑位。停止位和空閑位都規(guī)定為高電平,這樣就保證起始位開始處一定有一個下降沿,以此標識開始傳送數(shù)據(jù)。</p><p>  PLC 與上位機的硬件連接</p><p>  松下FP

55、1系列提供的外部通訊接口是RS422,而一般計算機使用的RS232或者USB。為實現(xiàn)PLC 與上位機的連接,需要對接口進行轉換,先由RS422轉為RS485,然后由RS485 轉為RS232。RS 232 在外部設備用運用廣泛,但隨著便攜式電腦的出現(xiàn),RS 232 顯然順應電腦微型化的發(fā)展趨勢,目前USB 發(fā)展成熟,運用廣泛,本文使用的串口是USB ,實現(xiàn)PLC與上位機的通訊連接。</p><p>  圖2-4

56、 PLC 與上位機硬件連接原理圖</p><p>  2.4松下FP系列的通訊協(xié)議</p><p>  2.4.1 MEWTOCOL-COM的說明</p><p><b>  1)協(xié)議特點</b></p><p>  松下PLC FP系列通訊協(xié)議主要為MEWTOCOL-COM,該協(xié)議的主要特點:</p>&

57、lt;p>  1. 用于程序處理和交互式操作。 2. 數(shù)據(jù)傳輸采用 ASCII 碼的形式。</p><p>  3. 首先由計算機發(fā)送指令。 4. 由 PLC對指令自動進行相應響應[8]。</p><p><b>  2)協(xié)議格式</b></p><p>  MEWTOCOL-COM的指令格式如下</p><p&g

58、t;  應答信息(正常時):</p><p>  應答信息(發(fā)送錯誤時):</p><p><b>  圖2-5指令格式</b></p><p> ?、俑袷秸f明?!?”為起始符號,標記每一幀報文的開始?!?CR ”為結束符號,標記每一幀報文的結束. “AD”為每一站PLC的地址,用兩位十六進制數(shù)表示,如 01 則代表第一臺PLC. “#”, “

59、 $ ”, “!”標記該幀報文為何種類型,其分別對應為:指令信息,應答信息(正常),應答信息(錯誤)。 “BCC”為校驗碼,為兩位十六進制數(shù),其初值為“ 0 ”,然后從起始符開始與該幀報文中每一字節(jié)按位進行異或運算得到的[9]。</p><p>  其中指令代碼和錯誤代碼分別見附錄一,附錄二。</p><p><b> ?、谟|點代碼</b></p>&l

60、t;p><b>  表 2-1觸點說明</b></p><p>  注:上述觸點當中,F(xiàn)P1系列有些型號是沒有L的,使用的時候要注意查看手冊,例如本設計使用的FP1 C24是沒有L的,不能使用TML的指令,其具體使用情況應按說明進行,以免發(fā)生錯誤。</p><p><b> ?、蹟?shù)據(jù)說明</b></p><p>  

61、表 2-3 數(shù)據(jù)說明</p><p> ?、?校驗碼 BCC(H)(L)的說明</p><p>  校驗碼是將指令中的各個 ASCII 字符的 16 進制(00~FF)進行異或求和后生成的. 該校驗碼也以兩個ASCII 碼表示。</p><p>  例)% 01 # RC S X 0000 1D <CR></p><p>  BC

62、C (H)= “1”</p><p>  BCC (H)= “D”</p><p>  圖2.6 BCC 碼</p><p>  注:如果BBC碼處用 ** 代替,則表示忽略校驗碼。</p><p>  2.4.2與通訊界面有關通訊指令說明</p><p>  MEWTOCOL-COM 中共有24條通訊指令,鑒于界面開

63、發(fā)和運用涉及的程度,從其中抽出幾條使用頻繁,能基本滿足通訊要求的指令組成了一個通訊系統(tǒng)的開發(fā)界面,其界面如下圖所示:</p><p>  圖2.7 通訊系統(tǒng)前面板</p><p>  1)讀取單觸點狀態(tài)(指令代碼: RCS)</p><p>  說明: 字符"$"表示正常的應答,“!”說明發(fā)生錯誤,從返回的錯誤代碼中可以參看具體錯誤原因,詳情可

64、以參看附錄二 錯誤代碼。</p><p><b>  觸點數(shù)據(jù)</b></p><p><b>  表2-4數(shù)據(jù)說明</b></p><p>  說明:在讀單點數(shù)據(jù)的時候,如果返回的是數(shù)據(jù)是“1”則表明該觸點屬于ON狀態(tài),反之,是“0”則表示OFF或者斷開。</p><p>  2) 寫入單觸點狀態(tài)

65、(指令代碼: WCS )</p><p><b>  應答</b></p><p><b>  讀取正常</b></p><p>  圖 2-9 WCS 代碼說明</p><p><b>  錯誤反應不贅述。</b></p><p>  觸點數(shù)據(jù)如表2-

66、4所示。</p><p>  3) 讀取多觸點狀態(tài)(指令代碼: RCP )</p><p>  圖2-10 RCP 指令代碼</p><p>  說明:RCP指令最多只能讀8個觸點的狀態(tài)信息,該指令的格式要求每一個觸點后接一個編號,依次累積到8個觸點,最后組成命令幀發(fā)送出去。</p><p><b>  應答</b>&l

67、t;/p><p><b>  讀取正常</b></p><p>  圖2-11 RCP 讀取正常</p><p><b>  錯誤反應不贅述</b></p><p>  4)按字單元讀取觸點(指令代碼:RCC)</p><p><b>  應答</b>&l

68、t;/p><p><b>  讀取正常</b></p><p>  圖2-12 RCC 指令說明</p><p><b>  說明: </b></p><p>  觸點代碼與單觸點讀取相同。 </p><p><b>  觸點數(shù)據(jù)順序</b></p&g

69、t;<p>  圖2-13 觸點數(shù)據(jù) 1</p><p><b>  觸點數(shù)據(jù) </b></p><p>  圖2-14 觸點數(shù)據(jù)2</p><p>  注:①寫入數(shù)據(jù)寄存器值(指令代碼:WD).讀取數(shù)據(jù)寄存器值(指令代碼:RD)中起始數(shù)據(jù)編碼和結束數(shù)據(jù)編碼都是5 字符。</p><p> ?、诜祷氐臄?shù)據(jù)為

70、16進制數(shù)。例如第3位 的數(shù)據(jù)為1,則值為:00 08 ,返回的數(shù)據(jù)顯示為:08(低位) 00(高位)。</p><p> ?、燮溥\算規(guī)則是2的對應位次方的累加。例如第1和第3位是1,其他位是0,則數(shù)值為2^1+2^3 =2+8=A(hex);則返回的數(shù)據(jù)為0A 00 。</p><p>  5) 讀取可編程控制器(PLC)狀態(tài) (指令代碼:RT)</p><p>

71、  圖2-15 RT指令</p><p><b>  應答 </b></p><p><b>  讀取正常</b></p><p>  圖2-16 RT 讀取正常</p><p>  說明 : 型號代碼</p><p><b>  表2-5型號代碼</b&

72、gt;</p><p><b>  操作模式:</b></p><p><b>  圖2-17操作模式</b></p><p><b>  錯誤標記</b></p><p>  圖2-18 錯誤標志</p><p><b>  程序容量:<

73、;/b></p><p><b>  表2-5程序容量</b></p><p><b>  說明:</b></p><p>  1)起始步和結束步是從00000—02719,用BBC碼表示;</p><p>  程序步實際是機代碼,即各個命令在PLC中存儲代碼。</p><

74、p>  2)例如 ST X 1,OT Y 2;這兩個命令的步長都是一步,一步用4位16進制字符表示為:01B8 02D0 ,整個發(fā)送命令為:</p><p>  % 01 # WP 00000 00001 01B8 02D0 +BCC + CR</p><p>  把上述命令代碼發(fā)送下去就可以得到對應的梯形圖。</p><p>  3)這些機代碼是作者本人用

75、試驗分析的方法提取的,由于時間的問題,目前只把一些基本指令分析出來,詳情見附錄 4。</p><p>  4)這些代碼的統(tǒng)計可以采用監(jiān)聽的方法獲得。首先用FPGWIN軟件畫好梯形圖,然后打開監(jiān)聽軟件,接著下載程序,此時監(jiān)聽軟件會讀取大量的有規(guī)律的數(shù)據(jù),在 “%EE********+BCC+CR”其中“**”里面的信息就是梯形圖轉換為的16進制機器代碼;另外讀取機代碼的還可以用“RP”讀取程序指令,這種在知道程序步

76、的情況下準確地讀取信息。</p><p>  5)在測試機代碼的時候,</p><p>  第三章 labview與PLC的串口通信</p><p>  LABVlEW是美國國家儀器公司開發(fā)的虛擬儀器開發(fā)平臺軟件,它的功能強大靈活,可以廣泛應用于自動測量系統(tǒng)、工業(yè)過程自動化、實驗室仿真等各個領域.在LabVIEW編程語言中串口通信采用VISA標準編程.VISA是虛擬

77、儀器體系結構Virtual Instrument Software Architecture的簡稱,是儀器驅動發(fā)展的一個工業(yè)標準.VISA的內部結構是一個先進的、面向對像的結構,這一結構使得VISA和在它之前的I/O控制軟件相比,在接口無關性、可擴展性方面都有很大提高.VISA的可擴展性遠遠超出了I/O控制軟件的范疇,而且由于VISA內部結構的靈活性,使得VISA在功能和靈活性上超過了其他的I/O控制庫.VISA標準的推出,統(tǒng)一了儀器工

78、業(yè)的軟件接口標準,使得儀器驅動程序兼容性強并且可適應未來軟硬件的發(fā)展需要[10] 。 </p><p>  3.1 labview 實現(xiàn)串口通信關鍵控件介紹</p><p>  在作者使用的labview10.0 版本中,用于通訊的子VI主要由5個:VISA Configure Serial Port 、VISA Read 、VISA Write 、VISA Bites of Serial

79、 Port VISA Close通過對這幾個功能模塊進行配置和連接,就能開發(fā)出符合要求的labview串口通信軟件,其界面如下</p><p>  圖3-1串口通信函數(shù)</p><p>  1)VISA Configure Serial Port</p><p>  該節(jié)點主要用于串口的初始化,主要參數(shù)如圖所示。</p><p>  圖3-

80、2 VISA串口配置</p><p>  VISA resource name:端口號選擇與計算機連接的串口有關,可以通過“我的電腦”右鍵 選擇“管理”->“設備管理器” –>“端口”查看。</p><p>  baud rate:波特率,默認為9 600bps,最高為115 200 bps。</p><p>  data bits:一幀信息中的有效數(shù)據(jù)

81、的位數(shù),Labview中允許4—8位數(shù)據(jù),默認值為8位。</p><p>  stop bits:一幀信息中的停止位的位數(shù),可選的值為0~2,分別對應1位、1位半或2位,默認值為0。</p><p>  pafity:奇偶校驗設置.可選的值為0—4,可為無校驗、奇或偶校驗、標記或空,默認值為0即無校驗。</p><p>  flow control:該參數(shù)的數(shù)據(jù)類型

82、為簇,用于串行通信中的握手方式。</p><p>  2) VISA Read. VI</p><p>  VISA 資源名在整個通訊過程中是一樣的,故用一根線把上面提到的5個VI連接起來。</p><p>  圖3-3 VISA讀取</p><p>  字節(jié)數(shù)可以自行設定,也可以VISA Bites of Serial Port 測量出來

83、。如果是自行設定,那讀的操作是在緩存達到設定值才開始讀,否則一直是等待;如果通過VISA Bites of Serial Port測定的字節(jié)數(shù)則是不等于零開始讀。</p><p>  3)VISA Write. VI</p><p>  該節(jié)點節(jié)點為串口寫子VI,用于對串口設備進行寫操作。</p><p>  圖3-4 VISA 寫</p><p

84、>  4) VISA Close. VI</p><p>  該節(jié)點為串口關閉子VI,用于關閉串行設備的任務或事件,如圖。</p><p>  圖3-5 VISA 資源名稱</p><p>  說明:在使用端口結束的時候,要在程序的最后用上此控件,該控件的作用是關閉端口,釋放資源,便于其他程序使用。如果不關閉串口,程序會一直占有,無法釋放。</p>

85、<p>  5)VISA Bytes at Serial Port. VI</p><p>  該節(jié)點為串行口字節(jié)數(shù)子VI,用于讀取串口緩存區(qū)中的數(shù)據(jù)字節(jié)如圖。</p><p><b>  圖3-6 串口字節(jié)</b></p><p>  說明:在“reference”的輸入端中,是接入VISA資源名稱,和前面的控件一樣,這是串口通

86、信的主線。從這個函數(shù)可以測出緩存中的字節(jié),在讀函數(shù)時輸入數(shù)值,如果緩存中有數(shù)據(jù),則會按所設定的數(shù)據(jù)位進行讀取,如果緩存的數(shù)少于設定值,則會等待,直到數(shù)據(jù)數(shù)量達到設定值。</p><p>  3.2 與PLC的通訊的程序設計</p><p>  3.2.1. 通訊原理圖</p><p><b>  圖3.7通訊原理圖</b></p>

87、<p>  說明:①在VISA Configure Serial Port中分別對其進行端口名的配置,對波特率,奇偶校驗位,數(shù)據(jù)位,停止位進行設定,且與PLC的內部設定一致,否則數(shù)據(jù)無法傳輸錯誤或者無法傳輸。</p><p> ?、谟绍浖绦蛏a(chǎn)的命令代碼通過一個發(fā)送按鈕把命令發(fā)送出去。</p><p> ?、塾捎诰€路傳輸和程序運行要一定的時間,故需延長才能保障命令的發(fā)送接收成

88、功的率。</p><p> ?、苊罱邮找院?,按命令的格式對其進行分解。如果包含“$”字符說明命令發(fā)送是正確且成功的;相反,如果命令包含“!”說明的命令發(fā)送錯誤,并返回錯誤碼,對錯誤碼進行讀取,并在錯誤數(shù)組常量中檢索,最后顯示錯誤原因和錯誤代碼,以供操作者參考修正。</p><p>  圖3-8 串口通信實現(xiàn)圖</p><p>  3.2.2 設計系統(tǒng)的通訊模型&l

89、t;/p><p><b>  1) 端口初始化</b></p><p>  前面板設計和程序框圖如下圖所示</p><p>  圖3-8端口初始化前后面板</p><p><b>  BCC碼的生成</b></p><p>  BCC碼的的計算是通訊的一個基本元素,起到關鍵作用。

90、在該通訊協(xié)議當中BCC碼是用與校驗通訊數(shù)據(jù)的正確與否,使用頻繁,為減少編程工作量,特地編寫了一個子程序,方便調用。BCC碼的生成原理見第2章說明,在LABVIEW 中的實現(xiàn)如下所示:</p><p>  圖3-9 BCC 碼程序圖</p><p>  說明:①操作者把命令明確以后,生成的字符串進入一個for循環(huán),循環(huán)次數(shù)為n=N-1 一次,其中N為字符串的長度。</p>&l

91、t;p>  ②“%”字符轉換為數(shù)值以后和“字符串”的數(shù)據(jù)一起進入for循環(huán),先進過一個一位截取控件,把“字符串”的第二字符截取轉換為數(shù)值,然后跟%的數(shù)值進行異或,得出一個數(shù)字,進入移位寄存器,供下次循環(huán)使用。</p><p> ?、凵洗窝h(huán)產(chǎn)生的數(shù)據(jù),在第二次循環(huán)中跟第三個字符進行異或得出一個數(shù)值,其他的以此類推。</p><p> ?、苎h(huán)結束后輸出一個數(shù)值,這個數(shù)值與15進行比較

92、,如果大于15,直接轉換為字符輸出;如果小于等于15,如果不經(jīng)過圖3-9的處理就得不出2位BCC碼。</p><p>  整個程序的流程如下所示</p><p>  圖3-10通訊系統(tǒng)原理圖</p><p>  說明:①程序的前面板如圖2-7所示,上圖顯示的是系統(tǒng)的通訊原理圖,其主要模塊包括剛開始運行時的端口初始化,PLC版本信息讀取,然后是“觸點控制”、“定時/計

93、數(shù)器控制”、“寄存器控制”這3打塊是操作者根據(jù)自己的需求選擇其中一項進行操作,點擊“確定”按鈕后,命令會按之前的規(guī)定發(fā)送出去,然后對返回的數(shù)據(jù)進行分離顯示。</p><p> ?、谌绻到y(tǒng)處于“RUN”狀態(tài)時,系統(tǒng)會對PLC進行監(jiān)控,不斷地發(fā)送指令,對端口進行狀態(tài)的讀取,然后顯示在狀態(tài)燈上。</p><p>  3.2.3 典型模塊通訊</p><p><b&

94、gt;  1)觸點控制</b></p><p>  觸點控制主要對X 輸入點讀取數(shù)據(jù),讀Y點進行讀寫,讀寫包括單點讀(寫),多點讀(寫),以及字的讀(寫)。本文從數(shù)據(jù)出發(fā),只對X和Y的單點讀取以及字的讀取。</p><p><b>  命令格式:</b></p><p>  圖3-11 觸點控制</p><p&g

95、t;<b>  程序流程圖如下:</b></p><p>  圖3-12 觸點控制流程圖</p><p>  說明:該程序框圖主要實現(xiàn)對端口Y/R觸點的寫入讀取控制,其中寫入和讀取有單點和字兩種操作,所以一共有2*2*2=8中命令格式,在這里用到了3個選擇框圖,如下圖3-13所示,在進入最后一層框圖的時候,會有對應的命令格式在里面,其中常量已近固定,輸入的變量配合選擇

96、的命令就可以對PLC進行命令操作,例如在前面板“觸點控制”模塊選擇R->讀出數(shù)據(jù)->點控制,則程序模塊會進入RCS讀取但觸點命令模式。</p><p>  Labview 中的程序框圖如下所示:</p><p>  圖3-13觸點控制程序圖</p><p>  向PLC中通過設計的系統(tǒng)寫布爾邏輯命令</p><p><b&g

97、t;  前面板如下所示</b></p><p>  圖3-14 寫指令前面板</p><p><b>  ②操作說明</b></p><p>  在軟鍵盤中點擊各個鍵組成命令,每一步為一個記錄,也可以在左上角的輸入框中鍵盤輸入指令;輸入完畢后點擊“輸出轉換”按鈕,確定無誤后,點擊“下載PLC”按鈕,旁邊的指示燈亮則表明成功,反之查看

98、命令輸入格式是否有誤,在左邊框在修正再從新轉換。</p><p><b>  ③原理說明</b></p><p>  圖 3-15 寫命令程序原理圖</p><p>  說明:從上述輸出的代碼中組成一個字符串,然后把字符串以68個字符為單元截取,因為傳送命令時字符長度有限制,68個代碼組成的命令為:%01# WP +首地址+末地址+CODE+B

99、CC+CR 一共87個字符,可以傳送。</p><p>  ④發(fā)送到PLC后生成的梯形圖如下。</p><p>  圖3-16 命令發(fā)送后PLC生成的梯形圖</p><p>  3.3 Labview 實時監(jiān)控PLC實例:流水燈監(jiān)控</p><p>  前面介紹了Labview 的通訊原理和通訊系統(tǒng)的各種模塊,以及特殊模塊的工作情況,下面作

100、為整個設計系統(tǒng),對PLC進行實時監(jiān)控,演示該本通訊系統(tǒng)的工作性能。</p><p>  我們以PLC的16盞輸出的LED為流水燈,使其從左到右依次點亮,沒個燈亮1S,然后熄滅,熄滅的同時下一盞燈亮,依次類推,到第16盞燈以后循環(huán)到第一盞燈,不斷地運行,直到一個信號使其中斷。</p><p>  3.3.1 流水燈梯形圖設計</p><p><b>  1)

101、流水燈原理</b></p><p>  按照要求流水燈要依次點亮,并保持1秒,根據(jù)定時器的原理,可以用來產(chǎn)生該脈沖信號。其狀態(tài)圖如下所示。</p><p><b>  圖3-17 狀態(tài)圖</b></p><p>  說明:上述狀態(tài)圖可以看出Y0,Y1依次點亮,且當T1運行的時候,T0斷開,則Y0也斷開,要實現(xiàn)這種功能只需把T1常閉串

102、聯(lián)到R0,當T1 得電時,R0短開,R0斷開則T0停止,T0停止輸出,則Y0輸出低電平,依次類推就可以得出Y i 依次點亮的效果了。</p><p>  為了讓16盞燈依次點亮,需要兩個屬于端口,一個觸發(fā)輸入信號,配置為X1,另一個停止運行的輸入信號,配置為X2;此外需要17個定時器和16個輸出端口以及16個內部寄存器。</p><p>  2)3個流水燈的梯形圖分析</p>

103、<p>  簡潔分析起見,下面分析3個流水燈的梯形圖,完整梯形圖見附錄4</p><p>  圖3-18 3盞流水燈的梯形圖</p><p>  分析:上面的梯形圖在R40的觸發(fā)下可以依次點亮輸出端的LED燈,程序運行到最后的時候,Y3斷開,如果需要從新開始,這里使用了一種特殊的方式,就是想辦法讓R40隔一段時間產(chǎn)生一個脈沖,從而驅動整個程序,只要R40脈沖不斷,就可以周而復始

104、地運行狀態(tài)燈。</p><p>  下面就產(chǎn)生脈沖的R40 進行程序分析,梯形圖如下:</p><p>  圖3-19 產(chǎn)生脈沖信號梯形圖</p><p>  分析說明:輸入端X1 觸發(fā),R39自鎖,R 40輸出“1”,當定時器在R 39接通后0.4秒后,T30接通,T30非斷開,R40輸出“0”;在T 30接通后的TM31 開始計時,圖中的值大于16盞燈完成一個

105、點亮過程的時間,此值要根據(jù)整個程序的一個完成周期來設定,如果小了會產(chǎn)生混亂,可能會出現(xiàn)兩個燈在流動的情況,如設大了,等待的時間過長,因此TM31的時間根據(jù)具體梯形圖一個周期化的時間而定。</p><p>  圖3-20 脈沖產(chǎn)生狀態(tài)圖</p><p>  分析說明:由于T31產(chǎn)生的是一個瞬間脈沖,而軟件的采用頻率是100ms,故在T 31得電的瞬間無法讀取,而實際上是存在的。由此產(chǎn)生的R4

106、0脈沖信號就就是觸發(fā)流水燈循環(huán)的信號,這個循環(huán)代替了手工觸發(fā),便于實驗觀察。</p><p>  3)整個流水燈的梯形圖及狀態(tài)圖</p><p>  把圖3-19的梯形圖放在程序的開頭,然后接上圖3-18的流水燈狀態(tài)產(chǎn)生梯形圖,最終的16盞流水燈的梯形圖見附錄5</p><p>  把程序下載到PLC,運行得出的輸出端口狀態(tài)結果如下所示</p><

107、;p>  圖3-21 輸出端Y的狀態(tài)圖</p><p>  分析說明:16盞狀態(tài)燈在R 40的觸發(fā)下,依次點1亮,然后熄滅,而且銜接得很好,通過元件分析,最后一盞燈滅到R40產(chǎn)生下個觸發(fā)脈沖的間隔差為200ms,銜接緊湊。特別需要這樣的是如果觸發(fā)信號在Y F燈滅前觸發(fā),會出現(xiàn)兩盞燈在流動的現(xiàn)象,甚至產(chǎn)生混亂,故TM 31的時間設定要注意其值要大于程序運行一個周期的時間。</p><p&g

108、t;  3.3.2 labview的監(jiān)控的程序設計</p><p>  上節(jié)是流水燈的PLC程序,下載完后,可以通過機子自帶的LED燈直觀的觀察到流水燈運動順暢,本節(jié)要介紹的是如何設計通訊系統(tǒng),實現(xiàn)狀態(tài)燈的實時監(jiān)控。</p><p>  1)讀取流水燈命令流程圖</p><p>  圖3-22流水燈命令流程圖</p><p>  分析說明:①

109、在讀取多點命令中,由于一次傳輸命令長度的限制,最多只能讀8個端點的狀態(tài)信息。</p><p>  ②讀取低八位的命令碼為:%01#RCP8Y0000Y0001Y0002Y0003Y0004Y0005Y0006Y00077E<CR></p><p> ?、圩x取高8位的命令碼為:%01#RCP8X0008X0009X000AX000BX000CX000DX000EX000F78&l

110、t;CR></p><p>  ④命令發(fā)出要延遲一定時間,否則正確讀取時間,甚至讀不到數(shù)據(jù),這是因為傳輸和函數(shù)處理是要花一定時間的。</p><p> ?、葸@是實時監(jiān)控程序,是很費CPU的,如果不需要,把開關撥到PROG,或者點擊系統(tǒng)面板的PROG按鈕。其中“讀取分析數(shù)據(jù),顯示”這是一個子程序,在提取數(shù)據(jù)中起到關鍵作用,下面要來分析一下其原理。</p><p>

111、;<b>  2)數(shù)據(jù)分析,顯示</b></p><p>  從邏輯上來講,這個子程序需要兩個輸入才能得出輸出數(shù)據(jù),這兩個輸入一個是發(fā)出的命令,這個輸入是確定流水燈的顯示范圍;另外一個就是命令發(fā)出后提取的數(shù)據(jù)信息。這兩個輸入進入子程序后經(jīng)過比較分析,最后輸出結果,其流程圖如下所示。</p><p>  圖3-23 數(shù)據(jù)分析流程圖</p><p>

112、;  分析說明:這個子程序其實是個for循環(huán)結構,輸入的數(shù)據(jù)位8位,故要進行8次循環(huán),提取的數(shù)據(jù)是字符型,故要把字符型轉化為數(shù)值型,然后把數(shù)值型轉化為布爾型,最后把布爾數(shù)據(jù)賦予給布爾顯示燈。</p><p>  3)數(shù)據(jù)分析,顯示子程序在Labview中的設計</p><p>  根據(jù)上面的邏輯分析,在Labview中很容易就可以實現(xiàn),具體設計如下圖所示。</p><p

113、>  圖3-24 數(shù)據(jù)分析子程序</p><p>  分析說明:從上圖可以看出,整個過程出了數(shù)據(jù)提取和轉換外,在流水燈的定位上運用了類似總線的原理,即總線發(fā)出地址,對應的地址選中響應,同時發(fā)出數(shù)據(jù),對應地址的燈獲得狀態(tài)信息。如果地址等沒選中,則處于“假”狀態(tài),不進行任何操作。類似地,高位的地址燈出子程序處理也是這樣,只要把地址對比欄那里該為“8—F”即可。</p><p>  3.3

114、.3 系統(tǒng)的監(jiān)控運行調試</p><p>  前面已近把流水燈的PLC梯形圖設計完成,并把梯形圖下載到PLC存儲起來了,在上節(jié)中通過分析流水燈狀態(tài)信息提取后,在labview中的關鍵處理子函數(shù)也已經(jīng)編輯完成,通過測試,可以使用。</p><p>  通過組合命令,調用主程序的方法,把程序圖組合如下圖3-25所示。在這個程序圖中先對低8位進行操作,后面接的高8位的狀態(tài)操作,這樣設計主要考慮到

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論