版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 設(shè)計(jì)題目﹕水罐監(jiān)控系統(tǒng)</p><p><b> 前 言</b></p><p> 可編程控制器(PLC)是微機(jī)技術(shù)與繼電器常規(guī)控制技術(shù)相結(jié)合的產(chǎn)物,是在順序控制和微機(jī)控制器的基礎(chǔ)上發(fā)展起來(lái)的新興工業(yè)控制器,是一種以微處理器為核心用作數(shù)字控制的專業(yè)工業(yè)控制機(jī)。</p><p> 目前在許多的水廠,為滿足日益這
2、增加的供水要求,通常安裝了多臺(tái)濾罐,對(duì)這些濾罐需要采用一種管理多臺(tái)濾罐協(xié)調(diào)運(yùn)行的控制系統(tǒng),并增強(qiáng)對(duì)濾罐運(yùn)行狀態(tài)的監(jiān)視,即監(jiān)控系統(tǒng)來(lái)提高濾罐的運(yùn)行效率和穩(wěn)定性,實(shí)行智能化管理和控制。濾罐監(jiān)控系統(tǒng)的主要功能是調(diào)度和管理各臺(tái)濾罐,指定濾罐的正洗、反洗的自動(dòng)及手動(dòng)狀況,避免濾罐群之間的相互干擾,正確地執(zhí)行反洗功能,使得濾罐群有條不紊地運(yùn)作,使原來(lái)人工記時(shí)操作的方法得以改進(jìn),從而勞動(dòng)效率提高,智能化增強(qiáng)。</p><p>
3、 濾罐監(jiān)控系統(tǒng)的開(kāi)發(fā)應(yīng)用是一項(xiàng)新技術(shù),它融入了PLC功能強(qiáng)、易維護(hù)、成本低的特點(diǎn)和VB程序在Windows環(huán)境下的強(qiáng)大人機(jī)界面功能。通過(guò)可視化工具,用戶可以靈活方便地使用系統(tǒng)提供的功能,該系統(tǒng)可以實(shí)現(xiàn)多通道同時(shí)采集,多窗口同時(shí)動(dòng)態(tài)顯示,且具有故障處理,報(bào)警等功能,從而實(shí)現(xiàn)高效率的工作。</p><p> 濾罐監(jiān)控系統(tǒng)屬于應(yīng)用軟件,本軟件針對(duì)濾罐所擁有的硬件環(huán)境而編寫。當(dāng)然由于本人的閱歷還淺薄,知識(shí)結(jié)構(gòu)還不
4、夠牢固,這套系統(tǒng)還有許多需要改進(jìn)的地方,誠(chéng)懇希望大家批評(píng)指正。在設(shè)計(jì)過(guò)程中,受到時(shí)獻(xiàn)江老師孜孜不倦的指導(dǎo)和莫大的幫助,在此謹(jǐn)致以衷心的感謝。</p><p> 第1章 濾罐監(jiān)控系統(tǒng)的基本結(jié)構(gòu)和原理</p><p> 1.1 濾罐監(jiān)控系統(tǒng)的組成及其實(shí)現(xiàn)手段</p><p> 在濾罐監(jiān)控中,一般是以3臺(tái)以上,32臺(tái)以下為一組。本系統(tǒng)為12臺(tái)濾罐為群控組,
5、其組成圖見(jiàn)圖1:</p><p> 系統(tǒng)在硬件配置上充分考慮到運(yùn)行環(huán)境的特點(diǎn)和系統(tǒng)運(yùn)行的可靠性,在上位機(jī)采用一臺(tái)IBM-586進(jìn)行群控,各濾罐采用目前使用較廣的PLC控制,PLC采用西門子公司生產(chǎn)的S7-200。上位機(jī)安裝在主控室,隨時(shí)向管理人員提供濾罐的運(yùn)行狀態(tài),PLC及其他控制設(shè)備安裝在配電室濾罐控制柜內(nèi)。PC與PLC之間由于距離較遠(yuǎn),采用RS-485進(jìn)行串行通信。</p><p>
6、<b> 1.2 上位機(jī)</b></p><p> 在此系統(tǒng)中,上位機(jī)主要完成以下幾項(xiàng)任務(wù):</p><p> 1) 實(shí)時(shí)從PLC中采集各濾罐的運(yùn)行狀態(tài)參數(shù),如濾罐的正、反洗狀態(tài),當(dāng)前哪些濾罐在正洗及正洗時(shí)間,哪個(gè)濾罐在反洗及反洗時(shí)間、反洗順序、內(nèi)選信號(hào)等。</p><p> 2) 根據(jù)從PLC采集來(lái)的各PLC的參數(shù),在顯示界面上實(shí)時(shí)顯
7、示各臺(tái)濾罐的運(yùn)行狀態(tài)。</p><p> 3) 實(shí)時(shí)采集外呼信號(hào),強(qiáng)制改變?yōu)V罐的運(yùn)行狀態(tài),對(duì)外呼信號(hào)予以響應(yīng)。</p><p> 4)發(fā)生故障時(shí)進(jìn)行故障報(bào)警,使維修人員及時(shí)得到消息,盡快加以修復(fù)。</p><p> 1.3 濾罐控制用PLC的主要任務(wù)</p><p> 1)實(shí)時(shí)采集濾罐的內(nèi)選信號(hào);</p><p&g
8、t; 2) 接采上位機(jī)發(fā)來(lái)的控制指令;</p><p> 3) 開(kāi)辟運(yùn)行狀態(tài)數(shù)據(jù)緩沖區(qū),并實(shí)時(shí)存儲(chǔ)濾罐運(yùn)行狀態(tài)供上位機(jī)查詢; </p><p> 4) 根據(jù)采集的正、反洗,呼叫信號(hào)和上位機(jī)的控制指令,實(shí)現(xiàn)自動(dòng)正、反洗,手動(dòng)反洗等功能;</p><p> 5) 向下位的濾罐控制裝置和輔助裝置發(fā)出信號(hào),控制濾罐正、反洗及顯示濾罐當(dāng)前運(yùn)行狀態(tài)。</p>
9、<p> 第2章 德國(guó)西門子S7-200PLC</p><p> 2.1 S7-200產(chǎn)品</p><p> 企業(yè)生產(chǎn)、發(fā)展要求設(shè)備自動(dòng)化程度高,并以提高產(chǎn)品質(zhì)量,追求高效率和降低成本為目標(biāo),而設(shè)備操作方便,設(shè)備維護(hù)簡(jiǎn)單、長(zhǎng)期穩(wěn)定無(wú)故障是極其重要的關(guān)鍵。PLC自一九六九年誕生以來(lái),在廣泛應(yīng)用同時(shí)本身也隨微電子技術(shù)的迅速發(fā)展不斷進(jìn)步。SIMATIC S7家族可編程控制器
10、是西門子公司于1995年年底推出的新一代產(chǎn)品,在性能、體積、重量、指令系統(tǒng)、運(yùn)行速度等方面,較過(guò)去的PLC有了全面的提高和充實(shí)。</p><p> 2.2 S7-200性能特點(diǎn)</p><p> S7-200可編程控制器軟硬件設(shè)計(jì)先進(jìn),使用高品質(zhì)材料和更豐富的性能,硬件體積小、重量輕、安裝方便、維護(hù)容易,采用固定式結(jié)構(gòu)結(jié)合模塊式擴(kuò)展的結(jié)構(gòu)方式,具有很好的經(jīng)濟(jì)性和更強(qiáng)的適用性。<
11、/p><p> S7-200分為二種規(guī)格:CPU214和CPU212,主要技術(shù)性能如下:</p><p> ·八種基本單元和多種擴(kuò)展單元(開(kāi)關(guān)量、模擬量)</p><p> ·最大I/O分別可擴(kuò)展到CPU212:30點(diǎn)和模擬量8路;CPU214:64點(diǎn)和模擬量16路</p><p> ·工作電源范圍寬:直流2
12、0.4∽28.8VDC,交流:85∽264VAC(47∽63HZ)</p><p><b> ·工作環(huán)境適應(yīng)性強(qiáng)</b></p><p> ·掃描速度:CPU212為1.3ms/1K和CPU214為0.8ms/1K</p><p> ·充足容量的用戶程序存儲(chǔ)器和多功能的數(shù)據(jù)存儲(chǔ)器</p><
13、;p> ·豐富的指令系統(tǒng):基本指令、標(biāo)準(zhǔn)指令、運(yùn)算指令、專用指令、特殊指令</p><p> ·內(nèi)部標(biāo)志位(也稱中間繼電器或內(nèi)部線圈)、計(jì)時(shí)器、技數(shù)器數(shù)量多并可設(shè)定稱停電記憶保持</p><p> ·四則運(yùn)算和比較功能</p><p> ·數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)傳送</p><p><b&g
14、t; ·8級(jí)子程序調(diào)用</b></p><p> ·高速處理功能:包括高速計(jì)數(shù)、中斷功能</p><p><b> ·內(nèi)部自診斷功能</b></p><p> ·超級(jí)大電容用于掉電時(shí)保存數(shù)據(jù)</p><p> ·禁止修改、寫入和讀出的3級(jí)口令保護(hù)&l
15、t;/p><p> ·快速布爾邏輯(繼電器邏輯),通用的梯形圖邏輯和語(yǔ)句表編程</p><p> ·編程可使用手持式編程器或裝有STEP7micro編程軟件的編程器或IBM PC兼容機(jī)</p><p> ·高功能的自由口通信</p><p> ·可水平安裝或垂直安裝;采用板式安裝或?qū)к壥桨惭b二種方法
16、</p><p> ·豐富的外圍設(shè)備,可連接顯示器或操作面板等</p><p> 除此之外,CPU241還具有以下更豐富的功能:</p><p><b> ·日歷時(shí)鐘</b></p><p> ·更強(qiáng)的高速處理功能:更多的高速計(jì)數(shù)輸入或中斷輸入并也可接兩相編碼器,脈沖輸出</p
17、><p> ·可選用程序存儲(chǔ)卡使用戶程序復(fù)制、傳遞方便</p><p> ·可選用鋰電池卡,使用壽命長(zhǎng)達(dá)10年</p><p> 2.3 總技術(shù)規(guī)格</p><p><b> 2.4 工作原理</b></p><p> S7-200內(nèi)部由微處理器、用戶程序存儲(chǔ)器、數(shù)據(jù)
18、存儲(chǔ)器等和電源、I/O接口電路組成。微處理器采用循環(huán)掃描方式。完成一次掃描稱為一個(gè)掃描周期,如圖2所示:</p><p><b> 圖2</b></p><p> 第3章OMRON系列PLC的通信協(xié)議</p><p> 3.1 OMRON系列PLC的通信系統(tǒng)概況</p><p><b> 3.1.1
19、組成</b></p><p> OMRON系列提供下列通信系統(tǒng)</p><p><b> 下位連接系統(tǒng) </b></p><p> 下位連接系統(tǒng)又稱遠(yuǎn)程I/O系統(tǒng)。它是以一臺(tái)可編程控制器為主,通過(guò)遠(yuǎn)程I/O鏈路把遠(yuǎn)程I/O單元、遠(yuǎn)程終端及I/O鏈接單元互連在一起構(gòu)成的系統(tǒng)。它屬于PLC控制網(wǎng)絡(luò)。</p><
20、p> 同位連接系統(tǒng) 把數(shù)臺(tái)可編程控制器通過(guò)PC-Link單元互連在一起構(gòu)成同位連接系統(tǒng)。因?yàn)閺耐ㄐ沤嵌瓤?,每臺(tái)PLC地位相同,沒(méi)有主從之分,所以稱同位連接系統(tǒng)。由于PLC之間通過(guò)PC-Link單元互連,所以同位連接系統(tǒng)又稱PC-Link系統(tǒng)。它屬于PLC控制網(wǎng)絡(luò)。</p><p><b> 上位連接系統(tǒng) </b></p><p> 以IBM微型機(jī)位上位機(jī),
21、通過(guò)Host-Link單元把它與其它作為下位機(jī)的PLC互連起來(lái)構(gòu)成的系統(tǒng)稱為上位機(jī)連接系統(tǒng)。這個(gè)系統(tǒng)包括上位機(jī),所以稱為上位機(jī)連接系統(tǒng),而且這個(gè)系統(tǒng)是依靠Host-Link單元互連起來(lái)的,所以也稱為Host-Link系統(tǒng)。上位連接系統(tǒng)屬于一種簡(jiǎn)單的PLC通信網(wǎng)絡(luò)。</p><p> 3.1.2 RS-232C的特點(diǎn):</p><p> RS-232C串行通信接口是目前最常用的一種串行
22、接口,即V.24接口,是由EIARS-232C標(biāo)準(zhǔn)所確定的。RS-232C接口用來(lái)連接兩個(gè)設(shè)備。其中一個(gè)設(shè)備的發(fā)送線與另一設(shè)備的接收線相連(全雙工)。為了控制所連接的設(shè)備,使用了軟件握手(即在傳輸?shù)臄?shù)據(jù)中插入控制符)。硬件握手可以通過(guò)使用其它RS-232線的狀態(tài)和控制功能來(lái)建立。</p><p> 3.1.3 RS-485通信的特點(diǎn)</p><p> RS-485的通信協(xié)議是工業(yè)界使
23、用最為廣泛的雙向、平衡傳輸線標(biāo)準(zhǔn)。它支持多點(diǎn)連接,允許創(chuàng)建多達(dá)32個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò),并且傳輸距離可以達(dá)到1200m或者在網(wǎng)絡(luò)中增加另外32個(gè)模塊。RS-485標(biāo)準(zhǔn)支持雙工通信。即只需兩根線就可以同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收。</p><p> 3.1.4 異步通信的特點(diǎn)</p><p> 字符幀的傳輸格式使發(fā)送方在字符之間可按應(yīng)用要求插入長(zhǎng)度不同的時(shí)間間隔,即每個(gè)字符的發(fā)送是隨機(jī)的。<
24、/p><p> 每個(gè)字符傳輸開(kāi)始總是以一個(gè)起始位為準(zhǔn),然后接收方與發(fā)送方保持同步。由于一個(gè)字符幀的位數(shù)最多只有12位,因此雙方之間的時(shí)鐘頻率即便有偏差,也不致因積累造成錯(cuò)位。等到下一字符的起始位到來(lái),有時(shí)雙方的同步得以校準(zhǔn)。通常異步通信的誤差是很小的</p><p> 3.1.5 自由口通信</p><p> PLC的串行口可由梯形圖或語(yǔ)句表編程來(lái)控制,通信口
25、的這種操作模式稱為自由口通信方式,在這種方式下,用戶可用程序設(shè)置波特率、字符長(zhǎng)度、奇偶校驗(yàn)等通信參數(shù)和通信協(xié)議。利用接收和發(fā)送中斷可簡(jiǎn)化程序?qū)νㄐ诺目刂?,在最?jiǎn)單的情況下,可僅用發(fā)送功能把信息傳送到打印機(jī)和顯示器等裝置。 此外,通信口還可以連接到條形碼讀入器等裝置。在任一場(chǎng)合,當(dāng)處于自由口方式時(shí),必須把與給定裝置相一致的通信協(xié)議寫入PLC。自由口通信只有PLC在RUN模式才能實(shí)現(xiàn)。當(dāng)PLC處于自由口方式時(shí),不能夠用編程器進(jìn)行通信。對(duì)自由
26、口方式由幾個(gè)專用的存儲(chǔ)器位:SMB30被用于定義自由口通信的波特率等參數(shù),接收到每個(gè)字符被裝入SMB2,如果檢測(cè)到奇偶錯(cuò),則SM3.0被置位,當(dāng)發(fā)送結(jié)束時(shí)SM4.5被置位。</p><p> 利用專用存儲(chǔ)器位SM0.7可控制進(jìn)入自由口方式,它對(duì)應(yīng)于模式開(kāi)關(guān)的當(dāng)前位置。當(dāng)SM0.7為0,模式開(kāi)關(guān)在TERM位置;當(dāng)SM0.7為1,則模式開(kāi)關(guān)在RUN位置。把程序編為只有在RUN方式下允許自由口通信,則可以在開(kāi)關(guān)打到T
27、ERM位置使用編程器對(duì)PLC進(jìn)行監(jiān)視或控制。</p><p> 利用XMT指令可實(shí)現(xiàn)發(fā)送,XMT可發(fā)送緩沖區(qū)一個(gè)或多個(gè)字符(最多255)。如果發(fā)送結(jié)束事件指定的(連接)每個(gè)中斷程序,則在緩沖區(qū)的最后一個(gè)字符發(fā)完后產(chǎn)生中斷。也可不用中斷進(jìn)行發(fā)送(例如:發(fā)送信息到打印機(jī))。為了支持靈活的協(xié)議,接收是在中斷控制下完成的,每接收一個(gè)字符產(chǎn)生一次中斷,接收到的字符放入SMB2。奇偶校驗(yàn)標(biāo)志(如果允許)在接收字符事件所指定
28、的中斷程序運(yùn)行前方入SM3.0。</p><p> 注意:PC/PPI電纜可用于RS-485轉(zhuǎn)換器,如把這種電纜用于自由口方式通信,應(yīng)在接收完成后至少等待2個(gè)字節(jié)的傳送時(shí)間后再執(zhí)行發(fā)送。</p><p> 3.2 上位連接系統(tǒng)</p><p> 3.2.1 上位連接系統(tǒng)的分類與組成</p><p> 上位連接系統(tǒng)是以一臺(tái)微型
29、計(jì)算機(jī)作上位機(jī),數(shù)臺(tái)可編程控制器作下位機(jī),通過(guò)Host-Link單元及串行總線互連而成的監(jiān)督控制系統(tǒng)。因?yàn)橄到y(tǒng)中有上位機(jī),而且數(shù)據(jù)通信都發(fā)生在上、下位機(jī)之間,所以稱為上位機(jī)連接系統(tǒng)。由于上、下位機(jī)都使用Host-Link單元互相鏈接起來(lái),所以上位連接系統(tǒng)也被稱為“Host-Link系統(tǒng)”。在OMRON的PLC網(wǎng)絡(luò)系列中還把它稱為SYSMAC WAY。這是一種主從式總線型工業(yè)局域網(wǎng)。</p><p><b&g
30、t; 上位連接系統(tǒng)的分類</b></p><p> 上位連接系統(tǒng)按通信信道是光纜還是電纜(若是電纜采用RS-232C總線)進(jìn)行分類。共分為三類,即光纜上位連接系統(tǒng)、RS-232C總線上位連接系統(tǒng)及RS-422總線上位連接系統(tǒng)。</p><p> 如果按結(jié)構(gòu)分,可以分為菊花鏈結(jié)構(gòu),適配器結(jié)構(gòu)及多級(jí)樹(shù)狀結(jié)構(gòu)。</p><p> RS-422總線上位連
31、接系統(tǒng)圖4.18表示了RS-422總線上位連接系統(tǒng),它采用是適配器結(jié)構(gòu),也可以采用菊花鏈結(jié)構(gòu),形式與圖4.17顯示。RS-422總線的主干線電纜總長(zhǎng)不得超過(guò)500m,下引分支電纜不得超過(guò)10m。一臺(tái)上位機(jī)最多可連接32個(gè)上位鏈接單元。 </p><p> 在為RS-422總線上位連接系統(tǒng)選擇上位連接單元時(shí),應(yīng)選帶有RS-422總線接口的。選擇適配器時(shí)應(yīng)選三個(gè)端口均為RS-422接口的適配器。</p>
32、;<p> RS-232C總線上位連接系統(tǒng)</p><p> RS-232C總線最遠(yuǎn)通信距離為15m,因此不宜構(gòu)成較大的上位連接系統(tǒng),一般為1:1結(jié)構(gòu),點(diǎn)對(duì)點(diǎn)通信,即一臺(tái)上位機(jī)經(jīng)Host Link單元直接與一臺(tái)PLC相連。</p><p> 3.2.2 通信參數(shù)的設(shè)置</p><p> 要使上位機(jī)與上位連接單元之間正確交換數(shù)據(jù),應(yīng)當(dāng)確保:①波
33、特率一致。②數(shù)據(jù)格式一致。但這還不夠。因?yàn)樯衔贿B接單元中以按OMRPN的專用新協(xié)議配置好了通信程序,而在上位機(jī)中卻沒(méi)有這樣的通信程序。因此還應(yīng)確保:③在上位機(jī)中嚴(yán)格按照OMROM的專用協(xié)議編寫通信程序,這樣PLC才能理解上位機(jī)發(fā)來(lái)的命令幀,而上位機(jī)也才能理解PLC發(fā)回的響應(yīng)幀。響應(yīng)正在PLC的上位鏈接單元中自動(dòng)生成,在PLC中無(wú)需用戶在編寫通信程序。④ 用戶在上位機(jī)中編寫通信程序時(shí)應(yīng)當(dāng)只使用PLC上位鏈接單元設(shè)置的命令級(jí)中的命令,否則,
34、PLC的上位鏈接單元拒絕接收,通信將出錯(cuò)。</p><p> 3.2.3 上位連接系統(tǒng)的通信原理及通信協(xié)議</p><p> 1. 上位連接系統(tǒng)的通信原理 </p><p> 上位連接系統(tǒng)是一種主從式總線型工業(yè)局域網(wǎng)。它以上位機(jī)作為該工業(yè)局域網(wǎng)通信的主站,其它所有連入該網(wǎng)的PLC皆為從站。主站采用輪詢的方式,按一定順序,逐個(gè)與各從站通信,所有數(shù)據(jù)交換都只在
35、主站與從站之間進(jìn)行,從站之間沒(méi)有數(shù)據(jù)交換。如果兩從站之間必須交換數(shù)據(jù),也只能經(jīng)過(guò)主站中轉(zhuǎn)。</p><p> 當(dāng)上位采用輪詢方式,分配總線使用權(quán),建立起主站預(yù)謀依從站的關(guān)系后,采用有應(yīng)答方式進(jìn)行通信。向從站發(fā)送數(shù)據(jù),或者從從站中讀取數(shù)據(jù)都是主站主動(dòng)以命令幀形式發(fā)出。對(duì)于主站發(fā)來(lái)的命令幀,從站用響應(yīng)幀應(yīng)答。當(dāng)命令幀很長(zhǎng)時(shí)要分成幾幀發(fā)送,圖4.22表示了主站與某一從站交換命令幀與響應(yīng)幀的過(guò)程。</p>
36、<p> 在命令幀或響應(yīng)幀中包含著需要通信的數(shù)據(jù),只要能順利實(shí)現(xiàn)命令幀與響應(yīng)幀的應(yīng)答,就能使要交換的數(shù)據(jù)順利到達(dá)對(duì)方。</p><p> 2. 上位連接系統(tǒng)的通信協(xié)議(OMRON) </p><p> OMROM專用協(xié)議是3層協(xié)議,即物理層、數(shù)據(jù)鏈路層及應(yīng)用層。因?yàn)榫帉懲ㄐ懦绦蚴腔趹?yīng)用層進(jìn)行的,因此用戶只關(guān)心命令幀及響應(yīng)幀格式,只要用戶編寫的通信程序發(fā)出的命令幀格式完全
37、符合OMRON專用協(xié)議,PLC就一定能理解。對(duì)PLC發(fā)出的響應(yīng)幀,用戶必須按其格式進(jìn)行拆裝、識(shí)別,才能正確分離出交換數(shù)據(jù)及有用狀態(tài)信息。基于上述原因,下面集中介紹命令幀與響應(yīng)幀格式及主要命令幀與響應(yīng)幀。</p><p> ?、劈c(diǎn)對(duì)點(diǎn)( 1:1)通信系統(tǒng)的命令幀與響應(yīng)幀格式</p><p> 命令幀長(zhǎng)度小于一幀的格式如圖4.23(a)所示,命令幀長(zhǎng)度大于一幀的格式如圖4.23(b)所示,響
38、應(yīng)幀長(zhǎng)度小于一幀的格式如圖4.23(c)所示,響應(yīng)幀長(zhǎng)度大于一幀的格式如圖4.23(d)所示。由于點(diǎn)對(duì)點(diǎn)(1:1)通信只有一臺(tái)上位機(jī)與一臺(tái)可編程控制器,信道專用,在幀格式中不需要設(shè)備號(hào)(站號(hào))。另外信道專用,可靠性相對(duì)較高,因此在幀格式中也沒(méi)有設(shè)幀一級(jí)的校驗(yàn)段,這樣提高通信效率。這兩條也是(1:1)的命令幀格式與(1:N)的命令幀格式的主要差別。</p><p> ?。?)多點(diǎn)(1:N)通信系統(tǒng)</p>
39、;<p> 在多點(diǎn)(1:N)通信系統(tǒng),命令幀、響應(yīng)幀小于一幀的格式如圖4.24(a)所示,命令幀、響應(yīng)幀大于一幀的格式如圖4.24(b)所示。對(duì)于多點(diǎn)通信,信道功用,這是一種主從式總線。主站依靠對(duì)各從站的尋址來(lái)建立通信,因此在命令幀中必須要有主站所尋找目標(biāo)的地址(設(shè)備號(hào)),而在響應(yīng)幀中也必須帶上同一設(shè)備號(hào),以告訴主站已與哪個(gè)從站建立了通信。另外在幀中設(shè)置了FCS校驗(yàn)段,這正是針對(duì)多點(diǎn)鏈路可靠性相對(duì)較低而設(shè)置的。通過(guò)差錯(cuò)校
40、驗(yàn)以提高信道的可靠性。</p><p> 3.2.4 FCS校驗(yàn)碼的產(chǎn)生規(guī)則與校驗(yàn)規(guī)則</p><p> OMRON可編程控制器幀一級(jí)校驗(yàn)碼為異或碼,其產(chǎn)生規(guī)則如下:發(fā)送方把所有待發(fā)送的ASCII碼字符(包括第8位的奇偶校驗(yàn)位),按位作異或運(yùn)算,被校驗(yàn)段所有字符從頭到尾進(jìn)行異或,把結(jié)果作為FCS校驗(yàn)碼發(fā)出。其校驗(yàn)規(guī)則為:接收方把接收到的所有ASCII字符與接收到的校驗(yàn)碼按位作異或運(yùn)算
41、,從頭直到FCS,若異或結(jié)果為0,則表明傳送正確沒(méi)有差錯(cuò),否則,表明傳送發(fā)生錯(cuò)誤,下面舉例說(shuō)明。</p><p> 例:求命令幀@10RH00310001FCS*↘的校驗(yàn)碼。</p><p><b> 被校驗(yàn)數(shù)</b></p><p> 設(shè)(1=00110001)表示1的ASCII碼。奇校驗(yàn)。</p><p>&l
42、t;b> 發(fā)送方:</b></p><p> (@=01000000) (1=00110001)=01110001</p><p> 01110001 (0=10110000)=11000001</p><p> 11000001 (R=01010010)=10010011</p>
43、<p> 10010011 (H=11001000)=01011011</p><p> 01011011 (0=10110000)=11101011 </p><p> 11101011 (0=10110000)=01011011</p><p> 01011011 (3=
44、10110011)=11101000</p><p> 11101000 (1=00110001)=11011001</p><p> 11011001 (0=10110000)=01101001</p><p> 01101001 (0=10110000)=11011001</p><
45、p> 11011001 (0=10110000)=01101001</p><p> 01101001 (1=00110001)= 01011000</p><p><b> FCS校驗(yàn)碼</b></p><p><b> 接收方:</b></p><p
46、> 若接收到的字符串與發(fā)送的完全一樣,即@10RH00310001,則它的異或碼也應(yīng)當(dāng)為01011000,接收到發(fā)送方發(fā)來(lái)的FCS=01011000,它們?cè)僮饕淮萎惢蜻\(yùn)算即01011000 1011000=00000000。接受方按校驗(yàn)規(guī)則求得結(jié)果為0,表明傳送正確。</p><p><b> 響應(yīng)碼的含義</b></p><p> 可編程控制器受
47、到上位機(jī)發(fā)來(lái)的命令幀后,經(jīng)上位鏈接單元處理后返回一個(gè)響應(yīng)幀,在響應(yīng)幀中含有響應(yīng)碼。若PLC正確執(zhí)行了上位機(jī)下達(dá)的命令,則響應(yīng)碼為00;若發(fā)生了錯(cuò)誤,響應(yīng)碼為非0。</p><p><b> 報(bào)頭及命令級(jí)</b></p><p> 報(bào)頭由兩個(gè)英文字母組成,它表示通信命令,共有43條命令。命令分為1機(jī)、2機(jī)、3機(jī)。其中1級(jí)命令37條,2級(jí)命令4條,3級(jí)命令2條。PLC
48、由三種運(yùn)行方式,即運(yùn)行方式、監(jiān)控方式及編程方式。</p><p> 第四章 監(jiān)控系統(tǒng)軟件的設(shè)計(jì)</p><p><b> 4.1 上位機(jī)軟件</b></p><p> 4.1.1上位機(jī)軟件概述</p><p> 上位機(jī)采用VB語(yǔ)言進(jìn)行編程,程序按照功能分為初始化程序,狀態(tài)采集程序,狀態(tài)控制子程序,狀態(tài)顯示子程序,
49、故障處理子程序。 </p><p> 在濾罐監(jiān)控系統(tǒng)群控子程序中,系統(tǒng)采用統(tǒng)一調(diào)配。所有的外呼信號(hào)指令由PC機(jī)根據(jù)當(dāng)時(shí)濾罐群的運(yùn)行情況,再分配到濾罐群中的各臺(tái)濾罐的PLC中去。程序根據(jù)外呼信號(hào)調(diào)節(jié)控制方式,適應(yīng)最常見(jiàn)的條件,從而保證濾罐群正確,高效地運(yùn)行。</p><p> 在顯示子程序中,設(shè)置了界面實(shí)時(shí)顯示濾罐的運(yùn)行狀態(tài)及外呼信號(hào)的分布情況,為了動(dòng)態(tài)地顯示出各臺(tái)濾罐的啟動(dòng)、運(yùn)行、停止
50、等動(dòng)作。在主窗口上制作出模擬管道,閥門及濾罐的畫面,根據(jù)從PLC上采集的狀態(tài)參數(shù),在界面上顯示相應(yīng)的位置和運(yùn)動(dòng)方向,從而形成濾罐運(yùn)行的動(dòng)畫效果。在模擬的水管閥門上添加模擬電動(dòng)機(jī)的正反轉(zhuǎn)。當(dāng)實(shí)際閥門開(kāi)關(guān)時(shí),模擬的閥門也作相應(yīng)的開(kāi)關(guān)閥動(dòng)作。對(duì)于內(nèi)外呼信號(hào)在主界面底端顯示。</p><p> 在故障處理子程序中,設(shè)置各聯(lián)鎖、互鎖的基本條件。</p><p><b> PLC軟件的設(shè)
51、計(jì)</b></p><p> PLC的梯形圖按照其功能模塊有:呼叫信號(hào)模塊,濾罐運(yùn)行顯示模塊,正洗程序模塊,反洗程序模塊,水管閥開(kāi)關(guān)互鎖、聯(lián)鎖模塊和故障處理模塊。</p><p> 4.1.2 VB6.0可視化編程軟件及其通信控件MSCOMM</p><p> S7-200系列PLC本機(jī)帶有一個(gè)或兩個(gè)(S7-216)485物理接口,此485口具
52、有3種通訊協(xié)議:PPI;自由通訊協(xié)議;PROFIBUS協(xié)議(僅215有)。 </p><p> PPI協(xié)議主要是用來(lái)編程、PPI組網(wǎng)、HMI接口等。 </p><p> 而自由協(xié)議則可以由用戶定義通訊協(xié)議,將CPU與任意通訊協(xié)議公開(kāi)的設(shè)備聯(lián)網(wǎng),如上位計(jì)算機(jī)、打印機(jī)、變頻器等。 </p><p> 所謂自由協(xié)議,用戶可以通過(guò)設(shè)置特殊寄存器 SMB30的參數(shù)改變4
53、85口的波特率、數(shù)據(jù)格式(數(shù)據(jù)位數(shù)、停止位、校驗(yàn)),以適應(yīng)不同的通訊協(xié)議。 </p><p> 214具有1個(gè)RS-485通訊口,可以與1個(gè)不同外設(shè)連接。 </p><p><b> 編程步驟: </b></p><p> 1.首先設(shè)置通訊口,既設(shè)置SMB30; </p><p> 2.根據(jù)外設(shè)的協(xié)議決定通訊協(xié)議
54、; </p><p> 3.與通訊有關(guān)的指令及中斷 </p><p> 指令簡(jiǎn)單,例如 XMT 99,0 既可以完成最多255個(gè)字節(jié)(字節(jié)數(shù)由VB99內(nèi)設(shè)置的數(shù)決定)的發(fā)送;而接收則要由中斷程序完成,每收到一個(gè)字節(jié)的數(shù)據(jù)則產(chǎn)生一次中斷,接受到的數(shù)據(jù)保存在接收緩存器(SMB2)內(nèi),中斷服務(wù)程序內(nèi)您必須立即處理此數(shù)據(jù),因?yàn)橄乱粋€(gè)接收的字節(jié)也要放在 SMB2 中,也就是說(shuō)接收緩存器的大小只有
55、一個(gè)字節(jié)。 </p><p> 自己開(kāi)發(fā)通信軟件的必要性: </p><p> ----- 過(guò)去,通信軟件對(duì)于一般的應(yīng)用軟件開(kāi)發(fā)人員來(lái)說(shuō)是比較困 難 的。而現(xiàn)在這件事已經(jīng)變得容易多了。本文介紹如何利用VB6.0和MSCOMM控件開(kāi)發(fā)通信軟件。 </p><p> ---- 要想自己開(kāi)發(fā)通信軟件,除了要掌握VB6.0的基本編程語(yǔ)言以 外,還需知道一些微機(jī)通信的基
56、本原理。如有關(guān)串行端口器的基本知識(shí)等。 </p><p> 三 MSCOMM控件的屬性及事件 </p><p> ---- VB6.0所帶的通信控件MSCOMM易學(xué)易用。它只有30個(gè)屬性和事件??梢詮腣B6.0的聯(lián)機(jī)幫助中找到它的全部資料。本文簡(jiǎn)述它的主要屬性及事件,并加已歸類整理。以下用MSCOMM1表示在窗體上設(shè)置的一個(gè)MSCOMM控件的名稱 </p><p&g
57、t; ---- ( 一) 通 信 參 數(shù) 設(shè) 置 </p><p> ---- (1) CommPort 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.CommPort [=Value] </p><p> ---- 作 用: 設(shè) 置 或 返 回 聯(lián) 接 MODEM 的 串 口 的 編 號(hào)。 </p><p> -
58、--- 值: 用1,2, ... 表 示 串 口 COM1,COM2 .... </p><p> ---- (2) Settings 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.Settings [=Value] </p><p> ---- 作 用: 設(shè) 置 或 返 回 通 信 參 數(shù)。 </p><p> -
59、--- 值: String 型。 例 入 用 "9600,N,8,1" 表 示 傳 輸 速 率 為19200 bps, 沒(méi) 有 奇 偶 校 驗(yàn) 位,8 位 數(shù) 據(jù) 位,1 位 停 止 位。 </p><p> ---- (3) Handshaking 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.Handshaking [=Value] </
60、p><p> ---- 作 用 與 值: 設(shè) 置 或 返 回 硬 件 握 手 協(xié) 議。 指 的 是PC 機(jī)MODEM 之 間 為 了 控 制 流 速 而 約 定 的 內(nèi) 部 協(xié) 議。 </p><p> ---- 0 沒(méi) 有 握 手 協(xié) 議。 不 考 慮 流 量 控 制。 </p><p> ---- 1 XON/XOFF。 即 在 數(shù) 據(jù) 流 中 嵌 如 控 制
61、 苻 來(lái) 進(jìn) 行 流 控。 </p><p> ---- 2 RTS/CTS 。 既 由 信 號(hào) 線RTS/CTS 自 動(dòng) 進(jìn) 行 流 量 控 制。 </p><p> ---- 3 兩 者 皆 可。 </p><p> ---- 注: 實(shí) 踐 中 我 們 發(fā) 現(xiàn) 選 用 2( 即RTS/CTS) 是 很 方 便 的。 </p><p>
62、; ---- ( 二) 打 開(kāi)/ 關(guān) 閉 端 口 </p><p> ---- (4) PortOpen 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.PortOpen [=Value] </p><p> ---- 作 用: 打 開(kāi) 或 關(guān) 閉 端 口。 </p><p> ---- 值: Boolean 型。
63、設(shè) 為 True/False 可 以 打 開(kāi)/ 關(guān) 閉 端 口。 </p><p> ---- ( 三) 發(fā) 送 數(shù) 據(jù) </p><p> ---- (5) OutBufferSize 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.OutBufferSize [=Value] </p><p> ---- 作 用:
64、 設(shè) 置 或 返 回 傳 輸 緩 沖 區(qū) 大 小。 </p><p> ---- 值: Integer 型。 傳 輸 緩 沖 區(qū) 的 字 節(jié) 數(shù)。 例 如 可 選 1024 。 </p><p> ---- (6) OutPut 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.OutPut [=Variant] </p><
65、p> ---- 作 用: 向 傳 輸 緩 沖 區(qū) 寫 數(shù) 據(jù) 流。 </p><p> ---- 值: Variant 型 變 量。 </p><p> ---- 注: 傳 輸 文 本 數(shù) 據(jù) 時(shí), 應(yīng) 將 String 型 數(shù) 據(jù) 放 入 Variant 變 量, 傳 輸 二 進(jìn) 制 數(shù) 據(jù)( 即 按 字 節(jié)) 時(shí), 應(yīng) 將 Byte 型 數(shù) 組 數(shù) 據(jù) 放 入 Varian
66、t 變 量 </p><p> ---- ( 四) 接 收 數(shù) 據(jù) </p><p> ---- (7) InBufferSize 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.InBufferSize [=Value] </p><p> ---- 作 用: 設(shè) 置 或 返 回 接 收 緩 沖 區(qū) 大 小。 <
67、;/p><p> ---- 值: Integer 型。 接 收 緩 沖 區(qū) 的 字 節(jié) 數(shù)。 例 如 可 選 1024 。 </p><p> ---- (8) InputMode 屬 性 </p><p> ---- 語(yǔ) 法: MSCOMM1.InputMode [=Value] </p><p> ---- 作 用: 設(shè) 置 或 返
68、回 接 收 數(shù) 據(jù) 的 數(shù) 據(jù) 類 型。 </p><p> ---- 值: 0 用Input 屬 性 接 收 文 本 型 數(shù) 據(jù)。 </p><p> ---- 1 用Input 屬 性 接 收 二 進(jìn) 制 數(shù) 據(jù)。 </p><p> ---- (9) InBufferCount 屬 性 </p><p> ---- 語(yǔ) 法: M
69、SCOMM1.InBufferCount [=Value] </p><p> ---- 作 用: 返 回 接 收 緩 沖 區(qū) 中 已 傳 到 但 還 未 取 走 的 字 符 個(gè) 數(shù)。 </p><p> ---- 值: Integer 型。 </p><p> ---- (10) Input 屬 性 </p><p> ---- 語(yǔ)
70、 法: MSCOMM1.Input [=Variant] </p><p> ---- 作 用: 將 接 收 緩 沖 區(qū) 中 收 到 的 數(shù) 據(jù) 讀 入 變 量。 </p><p> ---- 值: Variant 型 變 量。 </p><p> ---- 注: 當(dāng)InputMode 屬 性 值 為 0( 文 本 模 式) 時(shí), 變 量 中 含 String
71、 型 數(shù) 據(jù)。 </p><p> ---- 當(dāng)InputMode 屬 性 值 為 1( 二 進(jìn) 制 模 式) 時(shí), 變 量 中 含 Byte 型 數(shù) 組 數(shù) 據(jù)。 </p><p> ---- ( 五) 狀 態(tài) 控 制 </p><p> ---- (11) DTREnabled 屬 性 </p><p> ---- (12) RT
72、SEnabled 屬 性 </p><p> ---- (13) DSRHolding 屬 性 </p><p> ---- (14) CTSHolding 屬 性 </p><p> ---- (15) CDHolding 屬 性 </p><p> ---- 以 上 五 個(gè) 屬 性 即 如 二 所 述, 均 取 值 TRUE/FA
73、LSE, 用 于 讀 取 或 控 制 pc 機(jī) 與 modem 之 間 的 交 互 狀 態(tài)。 需 運(yùn) 用 好。 例 如, 應(yīng) 在 讀 取 到 DSRHolding 屬 性 值 為TRUE 時(shí) 再 向 MODEM 發(fā) 出 命 令。 應(yīng) 當(dāng) 在 載 波 檢 測(cè) 到 以 后(CDHolding 屬 性 為 TRUE) 時(shí) 再 向MODEM 發(fā) 送 數(shù) 據(jù)。 </p><p> ---- ( 六) 事 件 </p
74、><p> ---- MSCOMM 控 件 把 實(shí) 際 上 是 十 七 個(gè) 事 件 歸 并 為 一 個(gè) 事 件 OnComm, 用 屬 性 CommEvent 的 十 七 個(gè) 值 來(lái) 區(qū) 分 不 同 的 觸 發(fā) 時(shí) 機(jī)。 主 要 有 以 下 幾 個(gè): </p><p> ---- (1)CommEvent=1 時(shí): 傳 輸 緩 沖 區(qū) 中 的 字 符 個(gè) 數(shù) 已 少 于 Sthreshol
75、d( 可 設(shè) 置 的 屬 性 值) 個(gè). </p><p> ---- (2)CommEvent=2 時(shí): 接 收 緩 沖 區(qū) 中 收 到 hreshold( 可 設(shè) 置 的 屬 性 值) 個(gè) 個(gè) 字 符. 利 用 此 事 件 可 編 寫 接 收 數(shù) 據(jù) 的 過(guò) 程。 </p><p> ---- (3)CommEvent=3 時(shí): CTS 線 發(fā) 生 變 化 . </p>
76、<p> ---- (4)CommEvent=4 時(shí): DSR 線 發(fā) 生 變 化 . </p><p> ---- (5)CommEvent=5 時(shí): CD 線 發(fā) 生 變 化 . </p><p> ---- (6)CommEvent=6 時(shí): 檢 測(cè) 到 振 鈴 信 號(hào) . </p><p> ---- 另 外 十 個(gè) 情 況 是 可 能
77、 發(fā) 生 的 各 種 通 信 錯(cuò) 誤 時(shí) 觸 發(fā)。 可 參 看 有 關(guān) 資 料. </p><p> 四 通 信 軟 件 參 數(shù) 設(shè) 置 </p><p> ---- 在 自 己 編 寫 的 通 信 軟 件 中, 應(yīng) 包 含 進(jìn) 行 通 信 參 數(shù) 設(shè) 置 的 功 能。 主 要 就 是 可 以 設(shè) 置 端 口 號(hào), 波 特 率, 數(shù) 據(jù) 位, 停 止 位, 奇 偶 校 驗(yàn) 位 及 設(shè)
78、置 硬 件 握 手 協(xié) 議。 </p><p> ---- 可 在 一 個(gè) 窗 體 上 用 下 拉 列 表 框, 選 擇 鈕 等 由 用 戶 來(lái) 選 擇“保 存” 時(shí), 利 用VB6.0 的 Settings 函 數(shù) 將 這 些 參 數(shù) 存 儲(chǔ) 在WINDOWS 98 的 系 統(tǒng) 注 冊(cè) 表 中。 每 次 運(yùn) 行 該 軟 件 時(shí), 先 用 GetSettings 函 數(shù) 調(diào) 出 這 些 參 數(shù), 并 對(duì)Comm
79、port,Settings,Handshaking 等 屬 性 賦 值, 來(lái) 進(jìn) 行 通 信 參 數(shù) 設(shè) 置。 </p><p> 五 打 開(kāi) 通 信 端 口 </p><p> ---- 在 編 寫 的 通 信 軟 件 的 主 窗 體 上, 可 以 安 排 一 個(gè) 打 開(kāi)/ 關(guān) 閉 端 口 的 菜 單 項(xiàng) 或 圖 形 按 鈕。 在 打 開(kāi) 端 口 時(shí), 可 向PLC 發(fā) 出 命 令
80、, 進(jìn) 行 PLC 參 數(shù) 設(shè) 置。 可 以 象 下 面 這 樣 來(lái) 編 程: </p><p> ---- 也 可 以 安 排 一 些 可 變 換 顏 色 的 指 示 燈 來(lái) 代 表 端 口 打 開(kāi) 狀 態(tài),CD 線 狀 態(tài) 等, 這 樣 更 形 象 生 動(dòng)。 </p><p> ---- 為 了 使 程 序 功 能 更 強(qiáng) 一 些, 可 以 增 加< 電 話 號(hào) 碼 簿 管
81、理>, 可 以 增 加, 修 改, 刪 除, 查 詢 電 話 號(hào) 碼。 這 與 一 般 的 數(shù) 據(jù) 庫(kù) 應(yīng) 用 程 序 是 一 樣 的。 </p><p> 七 發(fā) 送 文 件 </p><p> ----- 發(fā) 送 文 件 開(kāi) 始 以 前, 可 打 開(kāi) 一 個(gè) 顯 示 發(fā) 送 信 息 的 窗 口。 可 在 此 窗 口 上 顯 示 要 發(fā) 送 的 文 件 名, 總 長(zhǎng) 度, 已
82、發(fā) 送 長(zhǎng) 度 等 信 息。 </p><p> ---- 設(shè) 置 以 下 全 局 變 量, 存 放 標(biāo) 志 字 符 串, 發(fā) 送 及 接 收 程 序 中 均 使 用。 </p><p> S_FILENAME = "FILENAME" + Chr(5) + Chr(13) + Chr(10) </p><p> S_FILELEN = &
83、quot;FILELEN " + Chr(5) + Chr(13) + Chr(10) </p><p> S_FILESTAR = "FILESTAR" + Chr(5) + Chr(13) + Chr(10) </p><p> ---- 以上介紹了我們是如何使VB6.0及MSCOMM 控件來(lái)開(kāi)發(fā)自己的 的通信軟件的。掌握了以上基本技術(shù),就可以稍加改
84、變來(lái)開(kāi)發(fā)自己的 各種專用通信軟件。例如發(fā)送數(shù)據(jù)庫(kù)的一條記錄,并使接收方把接收 到的數(shù)據(jù)也放在數(shù)據(jù)庫(kù)中。也可以進(jìn)行數(shù)據(jù)加密/解密傳輸?shù)???傊?學(xué)習(xí)怎樣使用VB6.0及MSCOMM控件來(lái)開(kāi)發(fā)自己的通信軟件是十分有用的。 </p><p> 4.2 上位機(jī)與PLC的串行通信</p><p> 4.2.1通信系統(tǒng)的結(jié)構(gòu)</p><p> 在本系統(tǒng)中,上位機(jī)的作用是對(duì)
85、群控濾罐進(jìn)行監(jiān)視和控制。如讀寫PLC的操作狀態(tài),讀寫I/O繼電器和內(nèi)部輔助繼電器,讀寫定時(shí)器,計(jì)數(shù)器當(dāng)前值等。對(duì)指定的輸出點(diǎn)或輔助繼電器強(qiáng)制ON/OFF。各濾罐的PLC之間不需要通信,因此本系統(tǒng)采用主從式通信結(jié)構(gòu),上位機(jī)中的RS-232異步通信接口經(jīng)遠(yuǎn)程通信轉(zhuǎn)換模塊轉(zhuǎn)換成RS-485接口后再與PLC通信口連接,為區(qū)分多臺(tái)PLC進(jìn)行統(tǒng)一編址。VB與PLC通信執(zhí)行采用自由口通信協(xié)議與OMRON協(xié)議相同。</p><p&g
86、t; 4.2.2 通信模式</p><p> 采用主從式系統(tǒng)的Request/Respone存取控制方法,主動(dòng)權(quán)在上位機(jī)。如果上位機(jī)要從PLC讀取信息,則從指令形式向PLC詢問(wèn),盡管所有的PLC都可以收到信號(hào),但只有指定站號(hào)的PLC才響應(yīng)主機(jī)指令。PLC根據(jù)指令將數(shù)據(jù)發(fā)送到上位機(jī),上位機(jī)接收完數(shù)據(jù)檢驗(yàn)正確后予以肯地回答(ACK)。通信協(xié)議圖解如圖2所示。</p><p> 4.2.
87、3 1#-12#PLC程序設(shè)計(jì)及說(shuō)明</p><p><b> 概述:</b></p><p> 本系統(tǒng)包括12個(gè)過(guò)濾罐,每個(gè)過(guò)濾罐配一個(gè)子PLC(SiemensS7200)控制箱。各個(gè)子PLC與計(jì)算機(jī)之間構(gòu)成RS485網(wǎng)絡(luò),由計(jì)算機(jī)控制各個(gè)罐的反沖洗順序及反沖洗開(kāi)始時(shí)間。各個(gè)PLC只完成過(guò)濾、反沖洗計(jì)時(shí)及每個(gè)過(guò)濾罐閥門的開(kāi)關(guān)控制等工作。</p>
88、<p> 各個(gè)罐之間沒(méi)有信息交換,子PLC與計(jì)算機(jī)通訊采用S7200的自由口通訊協(xié)議,每個(gè)子PLC需自編程序回答計(jì)算機(jī)的通訊詢問(wèn)數(shù)據(jù),因此子PLC程不僅為簡(jiǎn)單的控制程序,且包括通訊程序。</p><p> 4.2.4 PLC(S7200)I/O地址分配表</p><p> 4.2.5 公用PLC主要內(nèi)部變量定義表</p><p> 4.2.6
89、 自動(dòng)控制反沖洗原理及編程實(shí)現(xiàn)</p><p> 手動(dòng)控制原理很簡(jiǎn)單,其原理從梯形圖中很容易看出,這就不詳細(xì)敘述了,這里主要對(duì)自動(dòng)控制反沖洗過(guò)程及編程實(shí)現(xiàn)作一介紹。</p><p> 但系統(tǒng)排水閥處于關(guān)位和進(jìn)水閥處于開(kāi)位,系統(tǒng)為過(guò)濾狀態(tài),計(jì)時(shí)器T101和計(jì)數(shù)器C0構(gòu)成級(jí)聯(lián)計(jì)時(shí)器進(jìn)行過(guò)濾時(shí)間計(jì)時(shí)工作,T101為0.1秒遞增計(jì)時(shí)器,其設(shè)定值為1800,即為30分鐘,當(dāng)計(jì)數(shù)器當(dāng)前值遞增為1
90、800時(shí),依靠串在T101輸入端的長(zhǎng)閉觸點(diǎn)T101斷開(kāi),從而使其復(fù)位,同時(shí)其觸點(diǎn)產(chǎn)生一個(gè)計(jì)數(shù)脈沖,使C0計(jì)數(shù)器遞增1,CO為遞增計(jì)數(shù)器,其設(shè)定值為120,當(dāng)C2遞增至設(shè)定值時(shí),C2并不自動(dòng)復(fù)位,本系統(tǒng)利用反沖洗時(shí)排水閥開(kāi)到位信號(hào)(I0.3)復(fù)位C2,所以要使過(guò)濾時(shí)間計(jì)時(shí)準(zhǔn)確,必須保證每次反沖洗時(shí)排水閥必須開(kāi)到位,包括手動(dòng)反沖洗,否則可能出現(xiàn)計(jì)時(shí)不準(zhǔn)確現(xiàn)象。過(guò)濾時(shí)間計(jì)算公式為:</p><p> T過(guò)濾=30*C
91、0+T101/10/60(分鐘)</p><p> 當(dāng)C0=120和T101=0時(shí),系統(tǒng)過(guò)濾時(shí)間為:T過(guò)濾=120*30=3600(分鐘)=60小時(shí),即過(guò)濾時(shí)間到,計(jì)算機(jī)讀C0和T101的當(dāng)前值,若T過(guò)濾=3600,則表示該罐過(guò)濾時(shí)間到,應(yīng)該進(jìn)行反沖洗。當(dāng)計(jì)算機(jī)經(jīng)判斷認(rèn)為無(wú)其它罐正在反沖洗時(shí),下發(fā)Q1.6允許反沖洗脈沖,子PLC根據(jù)Q1.6啟動(dòng)反沖洗程序。</p><p> 系統(tǒng)關(guān)閉進(jìn)
92、水閥,然后開(kāi)啟排水,進(jìn)入反沖洗流程,同時(shí)置Q6.5為“1”,給上位機(jī)發(fā)怔在反沖洗標(biāo)志,當(dāng)反沖洗12分鐘后(由T103計(jì)時(shí)器機(jī)量),關(guān)閉開(kāi)水閥,然后開(kāi)啟進(jìn)水閥,完成反沖洗過(guò)程,進(jìn)入過(guò)濾流程,給上位機(jī)發(fā)Q6.5為“0”表示反沖洗結(jié)束。 </p><p> 整個(gè)自控程序流程框圖如下表示:</p><p> 4 .2. 7 S7200 PLC 自由口通信編程原理及實(shí)現(xiàn)</p>
93、<p> S7200PLC采用用戶自定義的自由口通信協(xié)議與外界通過(guò)串行口交換信息,由SMB2(自由口接收字符緩沖器)中斷方式接收數(shù)據(jù),用戶編程取出該字符存于緩沖區(qū)(VB200-VB209),經(jīng)分析后,程序?qū)⒎祷財(cái)?shù)據(jù)重寫入發(fā)送緩沖區(qū)(VB200-VB210),由XMT命令從端口送出。自由口通信方式由SMB30(自由口通信控制寄存器)設(shè)置。</p><p> 7 0
94、 </p><p> 其中 pp┄00=無(wú)校驗(yàn) d┄數(shù)據(jù)長(zhǎng)度 bbb┄波特 mm┄通信協(xié)議選擇</p><p> 01=奇校驗(yàn) 0=8位 001=19200bps 00=PPI或系統(tǒng)協(xié)議</p><p> 11=偶校驗(yàn) 1=7位 010=9600bps 01=自由口協(xié)議</p><
95、p> 本系統(tǒng)設(shè)置為:9600bps,無(wú)校驗(yàn),每個(gè)字符8位,1個(gè)停止位,所以SMB30為:9</p><p> 接收緩沖區(qū)的數(shù)據(jù)結(jié)構(gòu)為:</p><p> VB200 =功能號(hào),“R”-讀或“W”-寫 </p><p> VB201-VB202=站號(hào)</p><p> VB203 =類號(hào),“I”、“Q
96、”、“C”等</p><p> VB204-VB206=控點(diǎn)地址</p><p> VB207 =位,對(duì)于“I”或“Q”,為對(duì)應(yīng)該字節(jié)中的“位”</p><p> VB208 =0X0D</p><p> VB209 =0X0A 結(jié)束標(biāo)志</p><p> 發(fā)送緩沖區(qū)的結(jié)構(gòu)為:&
97、lt;/p><p> VB200 =發(fā)送長(zhǎng)度 </p><p> VB201 =功能號(hào),“R”-讀或“W”-寫 </p><p> VB202-VB203=站號(hào)</p><p> VB204 =類號(hào),“I”、“Q”、“C”等</p><p> VB205-VB207=返
98、回?cái)?shù)據(jù) </p><p> VB208 =位,對(duì)于“I”或“Q”,為對(duì)應(yīng)該字節(jié)中的“位”</p><p> VB209 =0X0D</p><p> VB210 =0X0A 結(jié)束標(biāo)志</p><p><b> 通信框圖如下所示:</b></p><p>
99、<b> ▇中斷接收字符程序</b></p><p><b> ▇通信主程序流程圖</b></p><p> 注:對(duì)每個(gè)站的PLC程序,SBR(12)和SBR(13)子程序的VB202 VB203的常數(shù)應(yīng)改寫成相應(yīng)的站號(hào)值</p><p><b> 如3#站</b></p>&l
100、t;p> VB202 |==B| KH30</p><p> VB203 |==B| KH33</p><p> 通訊線接線圖 S7200 PLC</p><p><b> 1#</b></p><p><b> n#</b>
101、;</p><p> PC工控機(jī) S7200HE PLC</p><p> RS232C COM1 RS232C-1口</p><p><b> 390Ω </b></p><p><b> 220Ω</b></p><p> PC工控機(jī)標(biāo)
102、準(zhǔn)9針→針轉(zhuǎn)換電纜</p><p><b> PC 工控機(jī)</b></p><p><b> RS232C</b></p><p> COM2 </p><p><b> 參考文獻(xiàn)</b></p><p> 1.
103、邱公偉。 可編程控制器網(wǎng)絡(luò)通信及應(yīng)用,清華大學(xué)出版社,2000</p><p> 2. 徐世許。 可編程控制器原理、應(yīng)用、網(wǎng)絡(luò),中國(guó)科學(xué)技術(shù)大學(xué)出版社,2000</p><p> 3.李罡、丁莉。 Visual Basic6.0 中文版編程實(shí)例詳解,電子工業(yè)出版社,1999</p><p> 4.門檻創(chuàng)作室編著。 Visual Basic6.0 實(shí)例教程,電子
104、工業(yè)出版社,1999</p><p> 5.高安邦。 設(shè)備電氣控制,哈爾濱理工大學(xué)出版社,1995</p><p> 6.高安邦。 可編程控制器(PLC)應(yīng)用指南與實(shí)踐,哈爾濱理工大學(xué)出版社,2000</p><p> 7.方承遠(yuǎn)。 工廠電氣控制技術(shù),機(jī)械工業(yè)出版社,1996</p><p> 8.微計(jì)算機(jī)信息 1998年第14 卷第
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 儀表課程設(shè)計(jì)---油田污水回注泵站監(jiān)控系統(tǒng)設(shè)計(jì)—儲(chǔ)水罐控制
- 安防監(jiān)控系統(tǒng)課程設(shè)計(jì)
- 小車遠(yuǎn)程監(jiān)控系統(tǒng)-課程設(shè)計(jì)
- 課程設(shè)計(jì)---模擬溫度采集監(jiān)控系統(tǒng)
- 課程設(shè)計(jì)--油庫(kù)安全監(jiān)控系統(tǒng)硬件設(shè)計(jì)
- 課程設(shè)計(jì)--機(jī)庫(kù)環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)
- 電視監(jiān)控課程設(shè)計(jì)
- 冷水機(jī)組監(jiān)控系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)小區(qū)監(jiān)控系統(tǒng)課程設(shè)計(jì)
- 軟件工程課程設(shè)計(jì)——遠(yuǎn)程監(jiān)控系統(tǒng)
- 安防監(jiān)控系統(tǒng)課程設(shè)計(jì)實(shí)習(xí)報(bào)告
- 板卡與模塊硬件監(jiān)控系統(tǒng)課程設(shè)計(jì)
- 監(jiān)控系統(tǒng)程序設(shè)計(jì)技術(shù)課程設(shè)計(jì)
- 煤礦安全監(jiān)測(cè)監(jiān)控系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)
- 板卡與模塊硬件監(jiān)控系統(tǒng)課程設(shè)計(jì)
- 機(jī)房監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)課程設(shè)計(jì)
- 課程設(shè)計(jì)--工業(yè)機(jī)械手監(jiān)控系統(tǒng)設(shè)計(jì)
- 加熱反應(yīng)爐監(jiān)控系統(tǒng)課程設(shè)計(jì)
- 安全監(jiān)測(cè)監(jiān)控課程設(shè)計(jì)
- 監(jiān)控組態(tài)課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論