基于PLC控制的自動售貨機設計_第1頁
基于PLC控制的自動售貨機設計_第2頁
基于PLC控制的自動售貨機設計_第3頁
基于PLC控制的自動售貨機設計_第4頁
基于PLC控制的自動售貨機設計_第5頁
已閱讀5頁,還剩18頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、自動售貨機的系統設計題目:PLC控制自動售貨機專業:機電一體化班級: 10級(1)班姓 名:曾繁宇學 號: 201030325137指導老師:黃禮萬摘要: 本文介紹了自動售貨機的基本原理以及工作流程,然后以一次交易過程為例,把交易過程分為幾個程序塊,然后分別對程序塊進行編程。具體說明了可編程序控制器在自動售貨機中的作用。程序涉及到了自動售貨機工作的絕大部分過程。利用PLC控制的自動售貨機提高了系統的穩定性,保證自動售貨機能夠長期穩定運行。關鍵詞自動售貨機;可編程序控制器;目錄·緒論.1·1自動售貨機的介紹.4·1.1自動售貨機功能分析.4·1.1.1自動

2、售貨機的基本功能.5 1.2 PLC的基本結構及原理 . . 5·1.3 PLC的選型原則5·2PLC系統設計. .7·2.1可編程序控制系統設計的基本原則7·控制系統設計原則7·控制系統設計的基本內容.7·控制系統設計的一般步驟.8·程序設計的步驟. 8·3自動售貨機PLC程序設計.10·3.1仿真實驗中售貨機的分析.10·3.2設計任務的確定.10·3.3程序設計部分.11·程序設計說明.11·LC程序設計.11·3.4仿真界面與PLC20·

3、3.5數據連接24·定義I/O設備.24·設計26·運行29·4結束語.29·參考文獻.30緒論從自動售貨機的發展趨勢來看,它的出現是由于勞動密集型的產業構造向技術密集型社會轉變的產物。大量生產、大量消費以及消費模式和銷售環境的變化,要求出現新的流通渠道;而相對的超市、百貨購物中心等新的流通渠道的產生,人工費用也不斷上升;再加上場地的局限性以及購物的便利性等這些因素的制約,無人自動售貨機作為一種必須的機器便應運而生了。從廣義來講投入硬幣、紙幣、信用卡等后便可以銷售商品的機械,從狹義來講就是自動銷售商品的機械。從供給的條件看,自動售貨機可以充分補

4、充人力資源的不足,適應消費環境和消費模式的變化,24小時無人售貨的系統可以更省力,運營時需要的資本少、面積小,有吸引人們購買好奇心的自身性能,可以很好地解決人工費用上升的問題等各項優點。現在,自動售貨機產業正在走向信息化并進一步實現合理化。例如實行聯機方式,通過電話線路將自動售貨機內的庫存信息及時地傳送各營業點的電腦中,從而確保了商品的發送、補充以及商品選定的順利進行。并且,為防止地球暖化,自動售貨機的開發致力于能源的節省,節能型清涼飲料自動售貨機成為該行業的主流。在夏季電力消費高峰時,這種機型的自動售貨機即使在關掉冷卻器的狀況下也能保持低溫,與以往的自動售貨機相比,它能夠節約1015的電力。

5、進入21世紀時,自動售貨機也將進一步向節省資源和能源以及高功能化的方向發展。因經濟復蘇緩慢,社會對擴大就業與工作場所提供茶點飲料的福利事業更為關注。自動售貨機不僅保障了愜意的工休時間,也是最廉價、提高職工工作效率最有效的手段。特別是在24小時無休工作狀態中的辦公場所,使用獨具魅力的迷你型飲料沖飲機,解決了不間斷提供咖啡飲品服務的問題,這種服務加速了自動售貨機與咖啡飲品服務的融合。1999年的全美自動售貨機協會和全美咖啡服務協會的合并使人們更直觀地看到了這種融合現象。         圖1 自動售貨機工作流程圖須經過

6、反復調試、修改,直到滿足要求為止。必要時還需設計控制臺編制控制系統的技術文件。 控制系統設計的一般步驟(1)根據生產的工藝過程分析控制要求。(2)根據控制要求確定所需的用戶輸入、輸出設備,據此確定PLC的I/O點數。(3)選擇PLC系統。(4)分配PLC餓I/O點,設計I/O連接圖。(5)進行PLC程序設計,同時可進行控制太的設計和現場施工。2.1.4程序設計的步驟(1)對于較復雜的控制系統,需繪制系統控制流程土,用以清楚地表明動作的順序和條件。(2)設計梯形圖。這程序設計的關鍵一步,也是比較困難的一步。(3)根據梯形圖編制程序清單。(4)用編程器將程序輸入到PLC的用戶存儲器中,并檢查輸入的

7、程序是否正確。(5)對程序進行調試和修改,直到滿足要求為止。(6)待控制臺及現場施工完成后,就可以進行聯機調試。若未滿足要求,再從新修改程序或檢查接線,直到滿足為止。(7)編寫技術文件。(8)交付使用。 控制系統設計步驟流程圖如圖4所示。圖4 PLC控制系統設計步驟3 自動售貨機PLC程序設計3.1 仿真實驗系統中售貨機的分析由于售貨機的全部功能時在上位機上模擬的 ,所以售貨機的部分硬件是由計算機軟件來模擬替代的。如錢幣識別系統可以用按壓某個“仿真對象”輸出一個脈沖直接給PLC發布命令,而傳動系統也是由計算機來直接模擬的,這些并不會影響實際程序的操作,完全能模擬現實中自動售貨機的運行。(1)

8、試驗狀態假設 由于是在計算機上模擬運行,試驗中有一些區別于實際情況的假設,本試驗中假設: 自動售貨機只售8種商品。 自動售貨機可識別10元、5元、1元、5角、1角硬幣。 自動售貨機可退幣10元、5元、1元、5角、1角硬幣。 自動售貨機有液晶顯示功能。 實驗中售貨機忽略了各種故障以及缺貨等因素。(2) 一次交易過程分析 為了方便分析,我們以一次交易過程為例。 初始狀態。由電子標簽顯示各商品價格,顯示屏顯示友好界面,此時不能購買任何商品。 投幣狀態。按下投幣按鈕,顯示投幣框,按下所投幣值顯示屏顯示投入、消費、余額數值,當所投幣值超過商品價格時,相應價格選擇按鈕發生變化,提示可以購買。 購買狀態。按

9、下可以購買的選擇按鈕,所選的商品出現在出貨框中,同時顯示屏上的金額數字根據消費情況相應變化。取走商品后出貨框消失。 退幣按鈕。按下退幣按鈕,顯示退幣框,同時顯示出應退幣值及數量。按下確認鈕,則恢復初始狀態。到此為止,自動售貨機的一個完整工作過程結束。3.2 設計任務的確定 在清楚自動售貨機運行工作過程的基礎上,制定出設計方案,確定任務的目標,以設計出合理的仿真系統。 首先,應該做上位機與下位機的任務分工:上位機主要用來完成仿真界面的制作過程,而下位機則主要用來完成PLC程序的編寫。其次,要分別對上位機和下位機進行資料的查找與收集。例如在進行仿真界面的設計時可以去觀看一下真正售貨機的外觀,必要時

10、可以借助一些宣傳圖片來設計自動售貨機的外型;在進行PLC程序的編寫時需要先分配PLC的I/O點,確定上、下位機的接口。然后,分別對上、下位機分別進行設計工作。最后,進行上位機設計結果與下位機設計結果的配合工作,經調試后完成整個系統的設計另外,上位機與下位機的設計工作是密切配合的。它們無論在通信中使用的變量,還是在仿真中控制的對象都應該是一致的。總體上講,仿真界面是被控對象,利用PLC來控制這個仿真的自動售貨機,仿真的自動售貨機接受PLC的控制指令并完成相應的動作;另一方面,仿真界面中的仿真自動售貨機的運行,都是由組態界面所提供的命令語言來完成的。這是整個仿真系統內部各大部件之間的內在關系。我主

11、要是對自動售貨機中的下位機,也就是主要是對PLC在其中的程序進行設計。仿真程序只做了解,雖然只做了解,但是也將在下面有所介紹。清楚了仿真實驗的整體設計思路,下面就可以開始著手設計了。3.3 程序設計部分 這部分內容是整個系統設計的主體部分。所要完成的任務是仿真系統的上位機與下位機的程序設計,即在上述功能分析的基礎上,有針對性地進行設計。 程序設計說明下位機程序的編制則是利用松下PLC專用編程軟件FPWIN-GR完成的。在設計的過程中,就像上面所敘述的那樣,并非孤立地分別進行上位機和下位機的設計工作,而是互相配合的。因此在以下的詳細設計過程中,并沒有將上位機的設計與下位機的設計整體分開來寫,而是

12、相互交替,同時盡量清晰地敘述,在相應的設計部分中注明是上位機的設計還是下位機的設計。3.3.2 PLC程序設計可以把一次交易過程分為幾個程序塊:運行初期電子標簽價格的內部傳遞;投幣過程;價格比較過程;選擇商品過程;退幣過程。(1) 運行初期電子標簽價格的內部傳遞程序的設計仿真系統運行初期,要由PLC向仿真畫面相應對象傳遞已經存儲好的價格,還要給投入顯示、消費顯示及余額顯示存儲器清零,同時也要給存儲退幣幣值的存儲器清零。程序編制過程中,要用到運行初期閉合繼電器R9013、16位數據傳送指令FO,同時在上位機ForceControl中,必須定義相應的變量,來實現與PLC程序的對接。所定義的變量如表

13、1所示。表1 初始狀態變量表根據表1 編制PLC程序如圖5所示。圖5 運行初期電子標簽價格的內部傳遞程序 在梯形圖程序圖5中,系統初始化時,通過運行初期閉合繼電器R9013在第一次掃描時將數值傳遞給上位機。給WR1-WR11及SV0-SV4賦初值,賦值功能通過高級指令FO實現。至于為什么要加入WR13、WR15、WR17、WR19及WR20,在以后的程序中將介紹它們的作用。(2).投幣過程在投幣的過程中,每投下一枚硬幣,投入顯示將增加相應的幣值,余額也增加同樣幣制。先建立變量表,在編寫程序。變量表如表2所示。對應的梯形圖程序如圖7所示。 F60 CMP , WR3 , WR9R900A Y5

14、R900B . . . . . .圖8 價格比較過程梯形圖(4)選擇商品過程 當投入的幣值可以購買某種商品時,按下相應的“選擇”按紐即可在出貨框中出現該種商品,同時消費顯示欄中顯示出已經消費掉的金額,余額也將扣除已消費的幣值,接著余額繼續與價格相比較,判斷是否能繼續購買。出現在出貨口的商品在沒有取走前,一直保持顯示狀態,用鼠標點擊該商品代表已經取走,出貨口中的商品隱藏。建立的變量表如表4所示。對應的梯形圖程序如圖9所示。表4 選擇商品過程變量表 在梯形圖9中,一是要使商品出現在出貨框中,二是要實現內部貨幣的運算。以第一步為例,按下選擇01商品鍵,相當于給R205加一個信號(只接受一次脈沖,所以

15、用DF微分指令),當YO接通(01商品燈亮)時,則系統顯示可以購買01商品。由于取01商品R230是常閉觸點,故Y8輸出,代表在出貨框中出現01商品,購買成功。當按下取01商品按鈕時,R230斷開,不能輸出Y8,代表01商品被取走。內部幣值的計算和是否取走商品無關,只要按下選擇按鈕,并且可以購買此商品就要從余額中扣除相應的金額,顯示消費的幣值。加法由F20指令實現,減法由F25實現。R205 Y0 R230 Y8 DF Y8 R205 Y0 DF 11 F25- , WR 4 , WR 3 F20+ , WR 4 , WR 2 R206 Y1 R231 Y9 DF Y9 R206 Y1 DF

16、11 F25- , WR 5 , WR 3 F20+ , WR 5 , WR 2R207 Y2 R232 YA DF YA R207 Y2 DF 11 F25- , WR 6 , WR 3 F20+ , WR 6 , WR 2 R208 Y3 R233 YB DF YB R208 Y3 DF 11 F25- , WR 7 , WR 3 F20+ , WR 7 , WR 2R209 Y4 R234 YC DF YC R209 Y4 DF 11 F25- , WR 8 , WR 3 F20+ , WR 8 , WR 2 R20A Y5 R235 YD DF YD R20A Y5 DF 11 F25

17、- , WR 9 , WR 3 F20+ , WR 9 , WR 2R20B Y6 R236 YE DF YE R20B Y6 DF 11 F25- , WR 10 , WR 3 F20+ , WR 10 , WR 2 R20C Y7 R237 YF DF YF R20C Y7 DF 11 F25- , WR 11 , WR 3 F20+ , WR 11 , WR 2圖9 選擇商品梯形圖 (5)退幣過程 在退幣過程中,最主要的是完成退幣的運算過程,根據結果輸出相應的錢幣,退幣結束時還要使用到的某些寄存器重新賦零。所建立的變量如表5所示。對應的梯形圖程序如圖10所示。 表5退幣過程變量表整個退幣

18、過程在按下按鈕(即R20F接通時)時執行,同樣也用到一個微分指令,在接收到信號時產生一次開關脈沖,進而執行一次其下面的指令。F32是除法指令,第一次將余額的幣值除以1000,商存儲于SV0中,作為退幣10元的輸出值。余數則存儲于特殊數據寄存器DT9015中,下次將不能被1000(10元)整除的余數除以100(5元),商且存儲于SV1中,余數繼續下傳,直至被1角除過,由于所投幣值最小是1角,并且商品價格也確定在整角,所以最終能被1角整除。在程序的初始化時曾給WR13、WR15、WR17、WR19和WR20賦零,WR13、WR15、WR17、WR19和WR20是程序的中間量,為的只是程序在使用過程

19、中能穩定執行,避免出現退幣錯誤。為什么要除以1000呢?這主要是考慮到PLC的主要特點是執行過程穩定可靠,但執行速度較慢。在計算時盡量將數值作為整數計算,因為是在計算機上模擬,可以把一部分功能交由計算機來實現,這里把1角當作10、5角當作50、1元當作100、5元當作500、10元當作1000,可以避免把這些數據當作有小數點的實數計算,這同前面的加1角等于10(K10)是相同的道理。至于交由計算機的任務將在以后敘述。退幣過程結束后,PLC要將寄存器中的數值置回原定的初值0,完成一次交易,防止下一次交易時出錯。梯形圖3-6用來完成對數據的初始化。 程序中分別將投入顯示、消費顯示、余額顯示、10元

20、存儲、5元存儲、1元存儲、5角存儲和1角存儲清零,還將中間量WR13、WR15、WR17、WR19和WR20清零。完成了以上5個過程,自動售貨機的PLC控制程序基本完成,程序可以控制售貨機實現各種要求的功能。 圖 10 退幣過程梯形圖3.4 仿真界面與PLC的配合定義在這一段中,將仔細分析仿真界面各部分是如何與PLC連接的。分析過程是按照一次交易的實際情況來進行的,即由初始狀態、投幣狀態、購買狀態、退幣狀態到交易結束。(1)初始狀態 通過分析得知,當電子標簽顯示各商品的價格、顯示屏顯示友好界面時,不能購買任何商品。因此先讓變量poiwindows=0(系統默認)。電子標簽中的字符J.01(以0

21、1商品為例)對應的變量JG01.PV與PLC程序中的地址WR4相匹配,WR4中存儲的數據為250,即讓字符顯示2.50元。對應的梯形圖如圖11所示(2)投幣狀態 當投幣時,按下“投幣”提示字,出現投幣框。如何定義“投幣”呢?雙擊漢字“投幣”,來到“動畫連接”畫面,選擇“觸敏動作”,在“動作描述”框中做如下定義:按下鼠標時,poiwinJB=1,poiwinJB這個變量是控制投幣框的,當poiwinJB=1時,出現錢幣和提示框;poiwinJB=0R0 F0 MV , K 0 , WR 1 F0 MV , K 0 , WR 2 F0 MV , K 0 , WR 3 F0 MV , K 0 , W

22、R 13 F0 MV , K 0 , WR 15 F0 MV , K 0 , WR 17 F0 MV , K 0 , WR 19 F0 MV , K 0 , WR 20 F0 MV , K 0 , SV 0 F0 MV , K 0 , SV 1 F0 MV , K 0 , SV 2 F0 MV , K 0 , SV 3 F0 MV , K 0 , SV 4 圖11 數據初始化梯形圖時,錢幣和提示框隱藏。下面分別定義提示框和錢幣以及“確認”按鈕,雙擊提示框,來到“動畫連接”畫面,定義poiwinJB=1時顯示,各硬幣也用同樣的方法定義,“確認”按鈕也同樣定義,這樣就使在按下漢字“投幣”時,變量p

23、oiwinJB=1,從而出現投幣框,以及硬幣等。我們只是定義了投幣框的顯示狀態,用鼠標點擊代替了實際過程中的餓錢幣投入動作,最重要的任務是投幣運算,下面介紹錢幣的定義定義I/O設備數據庫是從I/O驅動程序中獲取過程數據的,而數據庫同時可以與多個I/O驅動程序進行通信,一個I/O驅動程序也可以連接一個或多個設備。下面創建I/O設備。(1)在Draw導航器中雙擊“實時數據庫”項使其展開,在展開項目中選擇“PLC”項雙擊使其展開后,選擇項目雙擊并定義。(2)單擊“完成”按鈕返回,在“松下電工”項目下增加一項“PLC001”,如果要對I/O設備“PLC001”的配置進行修改,雙擊項目“PLC001”,

24、會再次出現PLC001的“I/O設備定義”對話框。若要刪除I/O設備“PLC001”,用鼠標右鍵單擊項目“PLC001”,在彈出的右鍵菜單中選擇“刪除”。 數據連接剛剛創建了一個名為“PLC001”的I/O設備,而且它連接的正是假想的PLC設備。現在的問題是如何將已經創建的多個數據庫點與PLC聯系起來,以使這些點的PV參數值能與I/O設備PLC進行實時數據交換,這個過程就是建立數據連接的過程。由于數據庫可以與多個I/O設備進行數據交換,所以必須指定哪些點與哪些個I/O設備建立數據連接。為方便其見,我們將數據列整理成如表6、表7所示。 表6 數字I/ONAMEDESC %IOLINK 點名 說明

25、 I/O連接 1 CX01 01商品出現 PV=PLC001;序號,寄存器,地址,偏移;2000008-2-0-0-8 2 CX02 02商品出現 PV=PLC001;序號,寄存器,地址,偏移;2000009-2-0-0-9 3 CX03 03商品出現 PV=PLC001;序號,寄存器,地址,偏移;20000010-2-0-0-10 4 CX04 04商品出現 PV=PLC001;序號,寄存器,地址,偏移;20000011-2-0-0-11 5 CX05 05商品出現 PV=PLC001;序號,寄存器,地址,偏移;20000012-2-0-0-12 6 CX06 06商品出現 PV=PLC00

26、1;序號,寄存器,地址,偏移;20000013-2-0-0-13 7 CX07 07商品出現 PV=PLC001;序號,寄存器,地址,偏移;20000014-2-0-0-14 8 CX08 08商品出現 PV=PLC001;序號,寄存器,地址,偏移;20000015-2-0-0-15 9 D01 01商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000000-2-0-0-0 10 D0202商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000001-2-0-0-1 11 D0303商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000002-2-0-0-2 1

27、2 D0404商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000003-2-0-0-3 13 D0505商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000004-2-0-0-4 14 D0606商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000005-2-0-0-5 15 D0707商品燈亮 PV=PLC001;序號,寄存器,地址,偏移;2000006-2-0-0-6 16 D0808商品燈 PV=PLC001;序號,寄存器,地址,偏移;2000007-2-0-0-7 17 Q01 取01商品 PV=PLC001;序號,寄存器,地址,偏移; 30023

28、00-3-0-23-0 18 Q02 取02商品 PV=PLC001;序號,寄存器,地址,偏移; 3002301-3-0-23-1 19 Q03 取03商品 PV=PLC001;序號,寄存器,地址,偏移; 3002302-3-0-23-2 20 Q04 取04商品 PV=PLC001;序號,寄存器,地址,偏移; 3002303-3-0-23-3 21 Q05 取05商品 PV=PLC001;序號,寄存器,地址,偏移; 3002304-3-0-23-4 22 Q06 取06商品 PV=PLC001;序號,寄存器,地址,偏移;3002305-3-0-23-5 23 Q07 取07商品 PV=PLC

29、001;序號,寄存器,地址,偏移;3002306-3-0-23-6 24 Q08 取08商品 PV=PLC001;序號,寄存器,地址,偏移;3002307-3-0-23-7 25 TENTER 退幣處理 PV=PLC001;序號,寄存器,地址,偏移;3002015-3-0-20-15 26 TR$1 投入1角 PV=PLC001;序號,寄存器,地址,偏移;3002000-3-0-20-0 27 TR$10 投入10角 PV=PLC001;序號,寄存器,地址,偏移;3002002-3-0-20-2 28 TR$100 投入100角 PV=PLC001;序號,寄存器,地址,偏移;3002004-3

30、-0-20-4 29 TR$5 投入5角 PV=PLC001;序號,寄存器,地址,偏移; 3002001-3-0-20-1 30 TR$50 投入50角 PV=PLC001;序號,寄存器,地址,偏移;3000003-3-0-20-3 31 TUIBIOK 退幣OKPV=PLC001;序號,寄存器,地址,偏移; 3000000-3-0-20-0 32 XZ01 選擇01商品 PV=PLC001;序號,寄存器,地址,偏移; 3002005-3-0-20-5 33 XZ02 選擇02商品 PV=PLC001;序號,寄存器,地址,偏移; 3002006-3-0-20-6 續表6 34 XZ03 選擇03商品 PV=PLC001;序號,寄存器,地址,偏移; 3002007-3-0-20-7 35 XZ04 選擇04商品 PV=PLC001;序號,寄存器,地址,偏移; 3002008-3-0-20-8 36 XZ05 選擇05商品 PV=PLC001;序號,寄存器,地址,偏移; 3002009-3-0-20-9 37 XZ06 選擇06商品 PV=PLC001;序號,寄存器,地址,偏移; 30020010-3-0-20-10 38 XZ07 選擇07商品 PV=PLC001;序號,寄存器,地址,偏移; 30020

溫馨提示

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

評論

0/150

提交評論