版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 自動售貨機控制系統(tǒng)的設計與仿真畢業(yè)設計說明書自動售貨機控制系統(tǒng)的設計與仿真 摘 要隨著社會的進步,科學的發(fā)展,生活水平的提高,單一傳統(tǒng)的生活方式已經不能滿足現(xiàn)代居民對高品質生活的追求,在這種現(xiàn)象下,許多自動化設備應時代應潮流而生。自動售貨機作為自動化設備中的最常見的設備之一,由于其眾多的優(yōu)點,已經在世界各地得到了普遍的發(fā)展并且還在不斷地發(fā)展。自動售貨機掀起了繼百貨商店和超市之后的又一零售狂潮,這種智能售貨系統(tǒng)在車站、教學樓、辦公樓等公共場所有著廣闊的發(fā)展前景。本文在對自動售貨機的背景歷史和發(fā)展趨勢進行了研究介紹之后,對課題中的自動售貨機系統(tǒng)進行了整體的設計及規(guī)劃。該自動售貨機控制系統(tǒng)是基于E
2、DA技術來實現(xiàn)的,同時,利用Altera公司的Quartus14.0作為其軟件開發(fā)平臺,利用VHDL編程語言輸入的方式完成了軟件設計。本設計方案對整個控制系統(tǒng)進行了層次化的編寫。把整個系統(tǒng)劃分為6個子模塊,分別是找零計算模塊、確認取消控制模塊、找零控制模塊、總錢數加和模塊、顯示模塊、鎖定模塊,并且對每一個子模塊進行了詳細的軟件設計。在頂層文件中通過調用各個子模塊來完成vhdl程序的設計。最后在對每一個子模塊完成了功能仿真測試驗證,同時也對整個系統(tǒng)進行頂層設計和仿真測試,測試結果表明了整個控制系統(tǒng)的合理性以及正確性。整個控制系統(tǒng)設計簡單合理,操作簡單,滿足售貨機的基本要求,具有一定的實用意義。關
3、鍵詞:自動售貨機、VHDL、EDA、QuartusAbstractAbstract: With the progress of the society, the development of the scientific, and the improvement of living standards, single traditional way of life has not meet modern residents' pursuit of high quality life, under this kind of phenomenon, a number of automati
4、on equipment should come into being. Vending machine as one of the most common equipment in the automation equipment, has been develop all over the world and develop constantly because it has many advantages .Vending machines set off after department stores and supermarkets in another retail frenzy,
5、 this intelligent vending system has broad prospects for development in the station, school buildings, office buildings and other public places.Based on the background of the vending machine, the article designs and plans the project of vending machine system after introducing the history and develo
6、pment trend.The vending machine control system is based on the EDA technology to realize, at the same time, it used Quarter 14.0 of the Altera corporation as the software development platform, taking advantage of VHDL programming language input completed the software design. The design scheme is hie
7、rarchical write for the whole hierarchical control system.The whole system is divided into six sub modules, change calculation module, confirming cancellation control module, the change control module, total amount module, display module, locking module, and each child module software design is desi
8、gn in detail.On the top floor file by calling each module to complete the VHDL program design.Finally, The design scheme completed the function simulation test to verify for each child modules, and conducts Top-level design and simulation test for the whole system, the test results show the rational
9、ity and validity of the whole control system. The design of the whole control system is simple and reasonable, the operation is simple, it meets the basic requirement of the vending machine and has certain practical significance.keywords :The vending machine、 EDA、VHDL、Quqrtus1 緒論1.1課題研究背景早在20世紀30年代,
10、出售香煙的自動售貨機就在美國被研制出來了,此后,各類自動售貨機也相繼被研究出來。到了20世紀的70年代,自動售貨機在歐美地區(qū)和日本的發(fā)展已經相當的普遍。早在1998的數據統(tǒng)計中,日本就已經有了550萬臺各式各樣各種功能的自動售貨機,而美國所擁有的自動售貨機的數量更是高達700萬臺,也就是說在上個世紀末在日本平均23個人就擁有一臺自動售貨機,而美國則是平均35個人就擁有一臺。自動售貨機的優(yōu)點之一就是無需人工看守,這點在當今世界人工勞動力成本普遍急劇上升的年代成為了各商家最看重的一點,它可以24小時不斷的進行自動售貨操作,在為商家降低成本的同時大大的增加了收益。同時,其操作方便簡單、占地面積小、全
11、自動化等優(yōu)點使其迅速在全世界各地普及開來。日本作為使用自動售貨機最普遍的國家,其國內的罐裝飲料有大約70%是通過自動售貨機來出售的,銷售額為世界第一;在西班牙,全國零售業(yè)的銷售額一半以上是由自動售貨機來完成的,并且每年的速度都在不斷增長。從這些數據可以看出自動售貨機所涉及的行業(yè)在零售行業(yè)中占據著不可替代的重要作用。1.2課題研究的目的與意義隨著社會的不斷發(fā)展與進步,城鎮(zhèn)居民的收入日漸增多,生活條件也越來越好,城鎮(zhèn)居民的消費方式和消費心理也正慢慢發(fā)生改變。快捷自動化的生活方式正是快節(jié)奏生活下人們所追求的一種高品質的生活方式。而自動售貨機作為商業(yè)自動化的一種常見設備,無論是在國內還是國外,都深受消
12、費者的喜愛,時代的發(fā)展為自動售貨機提供了良好的發(fā)展條件。然而,我國的自動售貨機行業(yè)的發(fā)展卻遠遠及不上歐美和日本等國家,究其原因一個方面是因為我國的自動售貨機行業(yè)發(fā)展比較晚,另外一方面是因為我國要普遍發(fā)展自動售貨機也有著技術的瓶頸。自動售貨機是一種內部集成度高、技術復雜的高科技設備,而現(xiàn)在我國多數企業(yè)都缺乏自主研發(fā)自主創(chuàng)新的精神,使得自動售貨機的很多關鍵零件都要從國外進口,因此想要在國內發(fā)展這一行業(yè),解決相關技術問題自主開發(fā)自動售貨機是最重要的。我國引進自動售貨機已有差不多二十年的時間,然而至今在國內運營和自主研發(fā)制造自動售貨機的企業(yè)少之又少,國外的自動售貨機還毫無疑問的占據著我國絕大部分的的市
13、場。這種現(xiàn)象嚴重阻礙了我國發(fā)展自動售貨機行業(yè)。因此,加快腳步和加大力度去自主研制自動售貨機是很有必要的,同時,更要時時關注最先進的科學技術,盡可能的把這些高科運用到自動售貨機行業(yè)中去,只有這樣才能讓該行業(yè)在我國得到更好更快的的發(fā)展。1.3 國內外研究現(xiàn)狀及趨勢目前,自動售貨機已經在發(fā)達國家得到了廣泛的運用,而我國由于行業(yè)起步較晚的原因使得各方面技術還不夠成熟,還需要加大力度去積極發(fā)展這一行業(yè)。在2012六月份,我國各式各類的自動售貨機的總量只有三萬臺,而在2013六月份,該數量已經上升至五萬臺,增長幅度高達差不多50%,當然由自動售貨機帶來的營業(yè)額也是非常龐大的。隨著科技的不斷發(fā)展,如今的自動
14、售貨機也越來越先進,其中設備的科技含量也日漸增高。自動售貨機的發(fā)展歷程如圖所示:目前我國生產自動售貨機主要有以下幾家比較知名的廠家:上海艾絲明自動售貨機有限公司,主要生產咖啡機;天津歌德公司,主要生產咖啡機;大連富士冰山公司,主要生產飲料機。除此之外還有青島澳柯瑪自動商用設備有限公司、天津奧萊特自動售貨機有限公司等公司生產的自動售貨機也是比較常見的。自動售貨機的發(fā)展趨勢是由于社會的產業(yè)結構發(fā)生變化的產物。由于社會的消費方式、銷售環(huán)境等的變化,自動售貨機的售貨方式作為一種新的流通渠道,自然而然自動售貨機也就應時代發(fā)展而生了。自動售貨機從一開始的功能單一結構單一發(fā)展到現(xiàn)在的功能多元化個性化,該行業(yè)
15、也成為信息化的一種表現(xiàn)。而且自動售貨機的發(fā)展為了適應社會的發(fā)展也將會更加合理化人性化,它已不僅僅是一臺用來銷售商品的機器,隨著科技的發(fā)展,通信的發(fā)展,互聯(lián)網的發(fā)展,它也必將向著相互連通的信息生態(tài)圈的方向發(fā)展,必將發(fā)展成為一種集商品銷售、信息流通等于一體的高科技的終端設備。1.4 課題研究的主要內容本文主要研究利用自動售貨機來完成商品處理、貨幣找零、出貨操作、led顯示等功能。完成的工作主要包括以下幾個方面:1. 對自動售貨機的歷史及發(fā)展前景做了簡單的陳述。2. 對課題中用的比較多的EDA技術以及VHDL語言、Quarter軟件開發(fā)平臺的相關知識做了簡單的介紹。3. 在對自動售貨機的整個控制系統(tǒng)
16、進行了一定的研究和分析之后,提出了整體設計方案。4. 對各個子模塊功能的利用vhdl語言程序的輸入的方式進行了詳細的分析設計,并且對每一個子模塊進行了仿真測試,對其相對應的功能進行了驗證。最后對整個系統(tǒng)進行頂層設計,同時也對整個系統(tǒng)進行了仿真,對整個自動售貨機的功能進行了驗證。2 相關技術簡介2.1 EDA技術電子設計自動化技術就是常見的EDA技術的簡稱,這種技術在現(xiàn)代電子設計中有著非常重要的作用。EDA技術以強大的計算機為依賴,在相應的軟件開發(fā)平臺上,利用硬件描述語言(HDL)來完成系統(tǒng)的各項功能的邏輯描述。EDA技術有著豐富的內容,與電子技術很多領域有著密不可分的聯(lián)系,所以其發(fā)展同計算機輔
17、助工程、電子設計技術以及集成電路的大規(guī)模設計技術等都是同步發(fā)展的。就近30多年來其發(fā)展可分為以下階段:l 上世紀70年代可編程邏輯器件開始問世,集成電路得到廣泛應用,CAD技術也開始發(fā)展,EDA技術也就是在這個時候開始出現(xiàn)。l 上世紀80年代進入商用的復雜可編程邏輯器件、FPGA器件的出現(xiàn)、CAD技術廣泛的應用、各類硬件描述語言的相繼出現(xiàn),這些解決EDA技術要廣泛運用過程中所遇到的各種問題,為其規(guī)范應用奠定了基礎。l 上世紀90年代,CAD、CAE等技術已經被廣泛應用在電子領域方面。同時,通信技術的發(fā)展、計算機技術的發(fā)展使得EDA技術有了更大的發(fā)展空間。發(fā)展至現(xiàn)在的EDA技術,CPLD和FPG
18、A等可編程邏輯器件是被應用得最多的,這些器件是利用硬件編程語言來進行軟件設計以完成功能設計,這樣的設計方式簡單方便,有著非常大的靈活性??删幊踢壿嬈骷涂删幊陶Z言的發(fā)展改變了傳統(tǒng)的電子設計的設計方法和設計理念,同時也讓EDA技術有了更快的發(fā)展。EDA技術在現(xiàn)代社會的發(fā)展及應用范圍是非常廣泛的,不僅在農業(yè)、醫(yī)學、軍事等領域被應用,在通信、化學、交通、航天等領域更是有著不可替代的重要作用。(EDA技術與VHDL P1)2.2 VHDLVHDL的全稱是Very High Speed Circuit Language,與另一種VerilogHDL語言是現(xiàn)在電子設計自動化中用的最多的兩種硬件描述語言,現(xiàn)
19、在用的比較多的EDA工具基本都支持這兩種語言,在電子領域中已經成為了通用的硬件描述語言。VHDL是一種無關設計平臺、無關具體的硬件電路的語言。跟一般的高級語言類似,不過卻有著一般高級語言沒有的具有硬件特性的語句,能很好的描述數字電路的功能和結構。VHDL的結構特點是設計一項工程或實體,一個元件、一個系統(tǒng)或者一個電路模塊都可以設計成為一個實體,被設計好的實體可以很方便的被調用,這是VHDL很大的一個特點。與其他的硬件描述語言相比,VHDL有以下特點:l 設計好的模塊可以任意無數次的被調用,很好的做到了資源共享和重復利用這一點,大大減少了設計人員的工作量和工作時間。l 語言的設計描述與器件無關,設
20、計人員在進行電路的設計的時候,可以把精力放在優(yōu)化電路上而不用先去考慮器件的選擇,VHDL可以采用不同的器件來實現(xiàn)已經描述好的電路設計。l 語言功能強大,設計方法靈活,支持各式各樣的設計方法,無論是自頂向下還是自底向上的設計方式在VHDL中都可以靈活的被運用。同時,模塊化設計,層次化設計等設計方法也是被支持的。l 具有很強的移植能力,對于同一個VHDL程序,它可以在不同的工作平臺、綜合器、模擬器之間相互移植。一個完整的VHDL程序代碼結構包括4個模塊,庫和程序包的模塊、實體模塊、結構體模塊、配置結構模塊。其結構圖如圖所示:2.3 Quartus軟件Quartus是由Altera公司開發(fā)的一種ED
21、A工具,是經過A+plus、然后到MAX+plus,再到MAX+plus發(fā)展而來的。Quartus支持多種輸入方式,例如原理圖輸入,硬件編程語言輸入等,在使用Quartus軟件時,它會將設計人員設計好的硬件編程語言或者原理圖等自動轉換目標文件,最后將目標文件下載到器件中。通過DSP Builder工具,Quartus能很好的跟Matlab、Simulink等結合起來,從而能夠方便快捷的實現(xiàn)不同的DSP系統(tǒng)的設計。因為有著簡單直接的入口和很強的設計能力,以及使用靈活、方便快捷的優(yōu)點,所以很受廣大設計者的青睞。Quartus軟件有以下特點:l 支持多平臺的設計輸入,結合其處理和驗證功能使其成為一個
22、全集化的開發(fā)平臺,讓開發(fā)周期變短。l 是一個與結構無關的開發(fā)工具,Quartus通過把Cyclone、APEX、Mercury等設計環(huán)境轉化為所需要的格式,真真正正的成為唯一一個與結構無關的開發(fā)工具。l 具有很具有全面的可設計開發(fā)資源,是一個集系統(tǒng)設計、軟件開發(fā)、邏輯設計于一體的綜合性開發(fā)平臺。Quartus的編程設計流程圖所示:2.4 Modelsim仿真工具Modelsim提供了可以與其他EDA工具(如Quartus)的接口工具。Modelsim支持Verilog、vhdl或者二者相結合的混合。針對不同的使用環(huán)境,Modeislm分為不同的版本,常見的版本有:Modelsim AE、Mod
23、elsim ASE、Modelsim SE等。在本文的設計的版本是Modelsim ASE10.1版本。VHDL的仿真流程如圖所示,首先在VHDl仿真器中對已設計好的VHDL源代碼進行編譯,等到代碼被編譯正確后就會被轉換為中間格式,中間數據的結果將會保存在仿真數據庫中,一般來說,VHDL源代碼在編譯好的仿真庫就是WORK庫。設計者通過編寫TestBeach文件來干預仿真的過程,在本文的設計中,計時通過編寫不同的TestBeach文件來對不同的模塊代碼進行仿真測試。3 系統(tǒng)總體方案3.1 設計要求l 本文設計的售貨機系統(tǒng)中只有一種,價格為13元;l 可以投入三種不同的貨幣來購買商品,分別是1元、
24、5元、10元;l 每次只允許購買一個商品,若想要購買多個商品,則需要重復執(zhí)行購買操作;l 售貨機的顯示器會實時更新顯示總共投入的貨幣的總額;l 當投入貨幣后,如果不想購買商品了則可以通過按取消鍵來退還投入的貨幣,否則就按確定鍵來獲取商品;l 設置兩個指示燈,分別是購買指示燈和取消指示燈,當顧客按下確定鍵后購買指示燈亮起;若顧客按下取消鍵,則取消指示燈亮起;3.2 總體設計通過分析系統(tǒng)的設計要求以及考慮到系統(tǒng)本身,本文對整個總動售貨機系統(tǒng)采用自頂向下的設計方法,自頂向下的設計方法如圖所示,采用自頂向下的設計方法的優(yōu)點是很明顯的。由于系統(tǒng)設計從頂層開始,所以在進行設計時就清楚實現(xiàn)整個系統(tǒng)的性能狀況
25、。隨著設計向下一級進行,系統(tǒng)的性能就能進一步得到細化和表達,并且可以根據個人需要隨時修改和調整,縮短了設計周期。對整個系統(tǒng)的頂層文件進行如下端口設計:l 輸入端口:clk,輸入時鐘信號;rst,復位信號;C1,投入一張1元貨幣;C5,投入一張5元貨幣;C10,投入一張10元貨幣;ok_in,確認信號;cancel_in,取消信號。l 輸出端口:led_buy,確認購買指示燈;led_cancel,取消購買指示燈;en_deliver,出貨信號;led1,投入貨幣總數的個位數(單位是元);led10,投入貨幣總數的十位數(單位是元)。l 內部可讀輸出端口:RC1,1元退幣控制信號;RC5,5元退
26、幣控制信號;RC10,10元退幣控制信號。端口原理圖如圖所示:在確定了整個系統(tǒng)的輸入輸出端口后,給出自動售貨機的系統(tǒng)內部的工作原理:當系統(tǒng)接收到復位信號后,其他所有的控制信號和標識信號都清空為零,系統(tǒng)處于等待指令的狀態(tài)。當系統(tǒng)接收到相關信號輸入時,系統(tǒng)開始工作。顧客確定購買商品時,開始投入貨幣,當投入貨幣為1元、5元、10元時,將分別產生一個時鐘寬度的信號C1、C5、C10。所投入的貨幣總額會實時計算并通過顯示器顯示出來。當顧客確定購買商品并按下確認鍵的時候,自動售貨機會產生一個時鐘信號ok_in,而且由led_buy控制的代表確認購買的指示燈會閃爍。如果投入貨幣的總額大于商品價格時,則送出商
27、品并計算出余額操作退出余額,此時出貨指示燈閃爍。如果投入的貨幣不足以支付商品價格,自動售貨機會退還所有貨幣。當顧客投入貨幣又不想購買商品時,就可以通過按下取消鍵來取消購買,這時系統(tǒng)會產生一個時鐘信號cancel_in,同時通過找零控制模塊來執(zhí)行相應操作退還貨幣。如果確認鍵或者取消鍵被按下后,自動售貨機會產生一個lock_out_entry內部信號,當發(fā)出信號后,所有的操作都是無效的。當完成所有的操作后,將產生一個clear清除信號,此時所有的信號都會被清除,自動售貨機開始等待下一次操作。整個系統(tǒng)的投幣購物流程如圖所示:將整個系統(tǒng)劃分成六個模塊,分別是購買余額計算模塊、找零控制模塊、確認取消模塊
28、、總額加和模塊、鎖定模塊和顯示模塊。各模塊的功能:余額計算模塊:當顧客確認購買商品并按下了售貨機的確認鍵后,找零模塊就開始計算出應該退還的余額。找零控制模塊:在顧客確定購買商品后執(zhí)行找零操作,或者是在顧客取消購買后執(zhí)行退還原款操作。確認取消模塊:顧客在選擇購買商品或者取消購買商品后,將輸入的確認信號或者取消信號分別轉換成單時鐘周期的控制信號,并且控制相對應的信號燈的亮和不亮??傤~加和模塊:不斷的更新并計算售貨機收到的總貨幣數量。鎖定模塊:可以按下確認鍵或者取消鍵,當其中任意一個鍵被按下后,整個自動售貨機系統(tǒng)的按鍵的輸入都是無效的。顯示模塊:通過控制兩個顯示器(led1和led10)來顯示所投入
29、貨幣的總額。整個自動售貨機的內部工作過程的總體框圖如圖所示:對每一個子模塊進行VHDL設計,然后對其進行編譯,再編譯沒有錯誤后,通過編寫TestBeach文件來對其進行仿真測試來驗證每一個模塊的功能是否正確。在頂層文件的vhdl程序設計中,通過特定的例化語句將已經設計好的6個子模塊進行例化,然后直接對各個模塊進行調用,整個頂層程序的設計就是通過調用底層的6個模塊來實現(xiàn)的,完成頂層設計后再對整個系統(tǒng)進行仿真測試。4 軟件設計及仿真測試4.1確認取消模塊 (ok_cancel模塊)4.1.1設計思想及工作原理 在確認取消模塊中,顧客可以在投幣之后選擇繼續(xù)購買商品或者取消購買商品,若確定購買則會產生
30、一個確認信號,而該模塊可以把該信號轉換成單時鐘的控制信號,同時確定購買led_buy顯示燈會亮;同樣,若顧客按下取消健,則該模塊會將輸入的取消信號轉換單時鐘周期的控制信號,同時確定購買cancel_buy顯示燈會變亮。確認取消模塊有以下輸入端口:l 輸入端口:clk,輸入時鐘信號;rst,復位信號;clear,清除信號;lock_out_entry,鎖定信號;ok_in,確認信號;cancel_in,取消信號。l 輸出端口:ok,內部時鐘確認控制信號;cancel,內部時鐘取消控制信號;led_buy,確認購買指示燈控制信號;led_cancel,取消購買指示燈控制信號。電路原理圖如圖所示:該
31、模塊的工作過程如下:首先系統(tǒng)復位,等待確認購買信號或者取消購買信號的輸入,當收到信號后,系統(tǒng)會根據接收到的信號立即生成一個相對應的內部控制信號ok信號或者cancel信號。同時,指示燈會根據接收到的控制信號led_buy或者led_cancel來顯示燈的亮和滅。此過程中,當系統(tǒng)第一次接收到確認購買信號或者取消信號后,將會岸上產生一個鎖定信號lock_out_entry,當接收到此信號后,整個系統(tǒng)的所有操作都會無效,直到系統(tǒng)執(zhí)行完畢,模塊接收到清零信號后,所有信號都會被清空歸零。由Quqrtus軟件內部生成的RTL電路圖如圖所示:4.1.2仿真測試對確認取消模塊進行仿真測試后,得到如圖所示的仿真
32、波形圖:對所得到的仿真波形圖進行分析:在15ns前,系統(tǒng)復位;在30ns的時候,系統(tǒng)接收到一個確認購買的信號,此時會生成ok信號,即一個時鐘的內部控制信號,同一時間,會發(fā)出一個控制信號led_buy,以此來控制購買指示燈亮。在時間為31ns時,可以看到系統(tǒng)發(fā)出了一個鎖定信號lock_out_entry,當系統(tǒng)接收到該信號后,其他所有的按鍵操作都將被視為無效,所以在40ns時輸入的cancel信號不會被響應;在60ns時操作執(zhí)行完畢,系統(tǒng)接收到一個clear的控制信號,此時鎖定信號歸零,同時led_buy控制信號歸零。4.2找零控制模塊 (refund模塊)4.2.1設計思想及工作原理找零控制模
33、塊有以下輸入端口:l 輸入端口:clk,輸入時鐘信號;rst,復位信號;clear,清除信號;ok,接收到確認信號;cancel,接收到取消信號;sum1,表示接收到的投入1元貨幣的信號;sum_5,接收到的投入5元貨幣的信號;sum10,表示接收到的投入10元貨幣的信號;sum,投入貨幣總和信號;Rsum1,退出1元貨幣的數量;Rsum5,退出5元貨幣的數量;Rsum10,退出10元貨幣的數量;l 輸出端口:en_deliver,給貨控制信號;RC1,退幣1元的信號;RC5,退幣5元的信號;RC10,退幣10元的信號。電路原理圖如圖所示:當系統(tǒng)接收到確認取消模塊發(fā)來的確認購買信號時,則該模塊
34、開始執(zhí)行找零過程,同時發(fā)出給貨控制信號en_deliver,當找零操作完成后系統(tǒng)發(fā)出清零信號;當系統(tǒng)接收到其他模塊發(fā)出的取消購買信號后,則該模塊開始執(zhí)行退幣操作,模塊會根據投入的貨幣發(fā)出不同的退幣控制信號,從而完成所有貨幣的退還,操作完成后系統(tǒng)發(fā)出清零信號。由Quqrtus軟件內部生成的RTL電路圖如圖所示:4.2.2仿真測試對找零控制模塊的仿真有2種情況:1、 確認購買操作;系統(tǒng)執(zhí)行取消購買操作,得到如圖所示的仿真波形圖:分析上圖中的波形圖可以看出:在5ns前,系統(tǒng)復位;在10ns時,系統(tǒng)接收到確認購買信號ok,同時接收到信號sum,表示系統(tǒng)收到投入貨幣為15元,在同一時刻發(fā)出給貨信號en_
35、deliver;在11ns的時候,就收到了其他模塊發(fā)來的退幣信號Rsum_10,可以看出當投入貨幣依次是15、14、13元時,退幣金額分別為2、1、0元;當給貨信號完畢后,該模塊立即產生退幣信號,系統(tǒng)開始執(zhí)行找零操作,操作完成后系統(tǒng)清零。2、 取消購買操作;對系統(tǒng)執(zhí)行取消購買操作,得到如圖所示的仿真波形圖:對該波形圖進行分析可以看出:在5ns前,系統(tǒng)處于復位狀態(tài);在10ns的時候,系統(tǒng)接收到其他模塊發(fā)出的投幣信號,分別投入了一張5元貨幣和一張10元貨幣,同時,接收到別的模塊發(fā)出的信號sum;在30ns時,系統(tǒng)接收到確認取消模塊發(fā)出的取消信號,則該模塊開始執(zhí)行退幣過程,退幣控制信號RC50、RC
36、100分別發(fā)出一個高電平信號,每個退幣控制信號代表退出行對應的一種貨幣;在操作完成后系統(tǒng)發(fā)出清零信號。4.3總額加和模塊 (sum_cash模塊)4.3.1設計思想及工作原理總額加和模塊有以下輸入端口:l 輸入端口:clk,輸入時鐘信號;rst,復位信號;clear,清除信號;C1,投入一元貨幣信號;C5,投入五元貨幣信號;C10,投入十元貨幣信號;RC1,退幣1元的信號;RC5,退幣5元的信號;RC10,退幣10元的信號;lock_out_entry,鎖定信號。l 輸出端口:sum_1,表示發(fā)出1元貨幣的信號;sum_5,發(fā)出5元貨幣的信號;sum_10,發(fā)出10元貨幣的信號;sum,投入貨
37、幣總和信號;電路原理圖如圖所示:當系統(tǒng)輸入不同的投幣信號時,則sum1,sum5,sum10就會記錄相對應的貨幣的數量,而sum則記錄了投入貨幣的總額。當貨幣投入完畢后,顧客會選擇確認購買商品或者取消購買,系統(tǒng)會根據接收到的不同的信號來執(zhí)行相應的操作,當找零模塊執(zhí)行完找零操作或者退幣操作后總數加和模塊就會收到系統(tǒng)的清零信號,所有的內部信號和表示都會被清除。由Quqrtus軟件內部生成的RTL電路圖如圖所示:4.3.2仿真測試對總額加和模塊進行仿真測試得到如圖所示的波形圖:對圖中波形進行分析可以發(fā)現(xiàn),在5ns之前,系統(tǒng)在復位狀態(tài);在時間為20ns的時候,系統(tǒng)接收到C1、C5、C10發(fā)出的3個投幣
38、信號,30ns時又收到1個1元投幣信號,對應的sum1、sum5、sum10記錄了相對應不貨幣的數量,sum則記錄了投入貨幣的總額;在時間為40ns時,lock_out_entry信號變?yōu)楦唠娖?,此時其他按鍵都會無效;當系統(tǒng)開始接收到退幣信號后,相應的sum1、sum5、sum10也會發(fā)生變化,找零結束后系統(tǒng)發(fā)出清零信號,系統(tǒng)內的表示和內部信號都被清除。4.4余額計算模塊 (calculator模塊)4.4.1設計思想及工作原理余額計算模塊有以下輸入端口:l 輸入端口:rst,復位信號;clear,清除信號;ok,確認購買信號;輸出端口:sum1,投入1元貨幣的信號;sum5,投入5元貨幣的信
39、號;sum10,投入10元貨幣的信號;sum,投入貨幣總和信號。l 雙向端口R:sum1,退還1元貨幣的信號;Rsum5,退還5元貨幣的信號;Rsum10,退還10元貨幣的信號。電路原理圖如圖所示:余額計算模塊在收到其他模塊發(fā)出的確認購買信號后,就會開始執(zhí)行操作。根據所投入的貨幣總額,可以分為3種情況:投入貨幣小于商品價格,該情況下售貨機會退還所有貨幣;投入貨幣剛好等于商品價格,該情況下退還余額為零;投入貨幣大于商品價格,該情況則根據商品的價格和顧客投入總額的差額來計算應找余額。由Quqrtus軟件內部生成的RTL電路圖如圖所示:4.4.2仿真測試對余額計算模塊的仿真有3種情況:1、投入貨幣小
40、于商品價格;2、投入貨幣等于商品價格;3、投入貨幣大于商品價格;對于第1種情況,得到如圖所示的仿真波形:對于上面的波形圖,可以看出在時間為5ns前,系統(tǒng)復位;在10ns的時候,系統(tǒng)接收到投入一張10元貨幣的信號和一張1元貨幣,接著在20ns的時候,系統(tǒng)接收到控制確認購買的信號ok,經過計算最后得到投入的貨幣總額11元小于商品的設定價格13元,所以系統(tǒng)將發(fā)出退款信號,Rsum10和Rsum1均被賦值為1,表示要退還10元貨幣和一元貨幣,當系統(tǒng)的找零控制模塊接收到此信號后會執(zhí)行相應操作;在時間40ns時,發(fā)出清零信號。對于第2種情況,得到如圖所示的仿真波形:對于上面的波形圖,可以看出在時間為5ns
41、前,系統(tǒng)復位;在10ns的時候,系統(tǒng)接收到投入一張10元貨幣和3張一元貨幣的信號,接著在20ns的時候,系統(tǒng)接收到控制確認購買的信號ok,經過計算最后得到投入的貨幣總額13元剛好等于商品的設定價格13元,所以系統(tǒng)將發(fā)出退款信號,Rsum10、Rsum5、Rsum1均被賦值為0,表示要退還貨幣均為0,當系統(tǒng)的找零控制模塊接收到此信號后會執(zhí)行相應操作;在時間40ns時,發(fā)出清零信號,清除系統(tǒng)內部信號。對于第3種情況,得到如圖所示的仿真波形:對于上面的波形圖,可以看出在時間為5ns前,系統(tǒng)復位;在10ns的時候,系統(tǒng)接收到投入2張貨幣的信號,接著在20ns的時候,系統(tǒng)接收到控制確認購買的信號ok,經
42、過計算最后得到投入的貨幣總額20元大于價格13元,所以系統(tǒng)將發(fā)出退款信號,Rsum10、Rsum5、Rsum1分別被賦值為2、1、0,表示要退還貨幣均為2張1元,1張5元,當系統(tǒng)的找零控制模塊接收到此信號后會執(zhí)行相應操作;在時間40ns時,發(fā)出清零信號,清除系統(tǒng)內部信號。4.5鎖定模塊(lock模塊) 4.5.1設計思想及工作原理鎖定模塊有以下輸入輸出端口:l 輸入端口:rst,復位信號;clear,清除信號;ok,確認購買信號;cancel,取消購買信號。l 輸出端口:lock_out_entry,鎖定信號。端口原理圖如圖所示:當該模塊接收到確認取消模塊發(fā)出的無論是確認信號還是取消信號,都會
43、發(fā)出一個鎖定信號,從而鎖定整個系統(tǒng)的其他任何操作。由Quqrtus軟件內部生成的RTL電路圖如圖所示:4.5.2仿真測試對鎖定模塊進行仿真測試,得到如圖所示波形:對該波形圖進行分析:在5ns前,系統(tǒng)復位;在20ns時,系統(tǒng)接收到確認取消模塊發(fā)出的cancel控制信號,此時該模塊會立即產生lock_out_entry信號,即按鍵鎖定信號;在40ns時,系統(tǒng)操作結束,發(fā)出清零信號。4.6顯示模塊 4.6.1設計思想及工作原理l 輸入端口:din,表示收到貨幣總額信號。l 輸出端口:led1,顯示貨幣的個位數;led10,顯示貨幣的十位數。顯示模塊會實時顯示售貨機收到的貨幣總額,并且通過led1來顯
44、示投入貨幣的個位數,led2來顯示投入貨幣的十位數。在該模塊中,調用了一個數碼管顯示的元件disp7。Lock模塊的端口原理圖如圖所示:由Quqrtus軟件內部生成的TRL電路圖如圖所示:4.6.2七段數碼管顯示器設計在元件disp7程序設計中,有一個輸入端口din,一個輸出端口led。disp7程序的端口原理圖如圖所示:該元件設計的主要目的是具體定義了從09中每一個數值所對應的字符串賦值。由Quqrtus軟件內部生成的RTL電路圖如圖所示:4.6.3仿真測試顯示模塊仿真波形圖如圖所示:對該波形圖進行分析:當顯示模塊接收到用來控制貨幣總額的信號din時,兩個led顯示器會馬上將貨幣總額顯示出來
45、。圖中可以看出,投入貨幣總額為15元,則led1應顯示為5,led2應顯示為1,根據vhdl程序的設計,led信號用字符串“"1111001”來顯示1,用字符串“0010010”來顯示數字5,圖中的波形圖說明了顯示器顯示是正確的。4.7頂層設計與分析頂層的設計就是對整個自動售貨機系統(tǒng)進行設計,為了在整個系統(tǒng)中達到連接底層元件從而形成更高層次的電路設計,在頂層文件的vhdl程序設計中使用了例化語句。在程序中利用component語句對準備調用的元件做了聲明,并利用net1net11十一個信號作為系統(tǒng)的內部連線。顯然,元件例化的實質就是引用一種連接關系,將之前已經設計好的設計實體定義為一個元件,然后把元件與當前的設計實體的端口通過特定的語句連接起來,從而為當前的設計實體引進新的低一級的設計層次。元件例化是vhdl設計實體完成自上而下層次化設計的一種途徑。4.7.1設計思想及
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年華師大新版八年級數學下冊月考試卷
- 團隊建設的核心打造高效能、高技能的工程團隊
- 2024-2025學年江西省贛州市崇義縣數學三年級第一學期期末檢測試題含解析
- 2024年租賃合同:出租人授權承租人使用物業(yè)
- 創(chuàng)新設計助力社交媒體平臺的用戶體驗升級
- 商業(yè)世界中的家庭教育親子互動策略
- 企業(yè)會議室辦公家私合理布局與個性化需求匹配
- 培養(yǎng)創(chuàng)新能力的教育方法與案例分析
- 辦公自動化中的禮儀規(guī)范與操作習慣
- 2025中國鐵塔陜西分公司校園招聘32人高頻重點提升(共500題)附帶答案詳解
- 新譯林版五年級上冊各單元教學反思(文本版本)(共5則)
- 吞咽困難與認知功能的關系探討
- 醫(yī)共體信息系統(tǒng)(HIS)需求說明
- CBL胸腔穿刺教學設計
- 軟件工程填空題(18套試題與答案)
- 數據庫課程設計-教材購銷管理系統(tǒng)
- 動機式訪談法:改變從激發(fā)內心開始
- 旁站記錄新表(腳手架拆除)
- Web前端框架應用之微商城項目教學介紹課件
- 如何降低住院病人壓瘡的發(fā)生率PDCA-任亮亮
- 教育學 (202220232)學習通超星課后章節(jié)答案期末考試題庫2023年
評論
0/150
提交評論