找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 10701|回復(fù): 7
收起左側(cè)

基于LabVIEW的鬧鐘設(shè)計(jì)

  [復(fù)制鏈接]
ID:352458 發(fā)表于 2020-1-5 00:57 | 顯示全部樓層 |閱讀模式

熟悉LabVIEW開發(fā)環(huán)境,掌握基于 LabVIEW的虛擬儀器原理、 設(shè)計(jì)方法和實(shí)現(xiàn)技巧,運(yùn)用專業(yè)中的基本理論和實(shí)踐知識(shí),采用 LabVIEW開發(fā)工具,實(shí)現(xiàn)LabVIEW 實(shí)現(xiàn)鬧鐘程序的設(shè)計(jì)和仿真。此次設(shè)計(jì)是基于 LabVIEW 的軟件仿真設(shè)計(jì),仿真一個(gè)鬧鐘使它具有定點(diǎn)報(bào)時(shí)的功能, 硬件需求是一臺(tái)安裝該軟件的電腦,軟件設(shè)計(jì)需要實(shí)現(xiàn)它的所有功能包括以下:
  1.可以顯示系統(tǒng)時(shí)間,通過和系統(tǒng)連接獲得。
  2.可以顯示鬧鐘定時(shí)的時(shí)間,該時(shí)間可以手動(dòng)設(shè)置,定時(shí)后的時(shí)間可以修改,整點(diǎn)報(bào)時(shí)。
  3.當(dāng)設(shè)定時(shí)間和系統(tǒng)時(shí)間相等時(shí),觸發(fā)鬧鈴鈴聲,還可以手動(dòng)停止鬧鈴或者自動(dòng)停止。

二、總體框圖

圖1 總體設(shè)計(jì)框圖

三、設(shè)計(jì)思路

利用虛擬儀器技術(shù)LabVIEW設(shè)計(jì)的鬧鐘,可以用來模擬真實(shí)鬧鐘而進(jìn)行工作。使用虛擬儀器技術(shù),工程師可以利用圖形化開發(fā)軟件LabVIEW方便、高效的創(chuàng)建自定義的解決方案,以滿足靈活多變的需求趨勢(shì)。該設(shè)計(jì)的鬧鐘是利用虛擬儀器LabVIEW技術(shù)而完成的,通過獲取系統(tǒng)時(shí)間,使LabVIEW前面板顯示時(shí)鐘,并實(shí)時(shí)更新。其中,時(shí)鐘、月、日、小時(shí)、分鐘、秒。另外,前面板上有模擬的時(shí)鐘面板,其中有3個(gè)不同顏色的指針,分別為時(shí)針、分針和秒針。還有定時(shí)功能,可以設(shè)置定時(shí)時(shí)間和定時(shí)播放的鈴音。

3.1總體設(shè)計(jì)思路

通過獲取電腦的系統(tǒng)時(shí)間,并分離出數(shù)字,再通過腦中的指針實(shí)時(shí)顯示和更新;通過預(yù)設(shè)時(shí)間和鈴聲,可以實(shí)現(xiàn)鬧鐘的定時(shí)功能。鬧鐘從電腦系統(tǒng)獲取時(shí)間,然后時(shí)間和日期通過字符串?dāng)?shù)字顯示,其中時(shí)間通過量表面板顯示。通過設(shè)置定時(shí)時(shí)間和量表時(shí)間比較來決定鬧鐘提醒時(shí)間。具體的鬧鐘鈴聲有預(yù)設(shè)的鈴聲決定。

3.2總體結(jié)構(gòu)層次

主VI調(diào)用相應(yīng)的其他子VI,進(jìn)行相應(yīng)的運(yùn)算,最后把結(jié)果顯示在頁面上。VI的層次結(jié)構(gòu)如圖2所示,其中的VI主要有:定時(shí)VI,時(shí)間VI,播放聲音VI,時(shí)鐘全局變量VI和主VI。

圖2  VI層次結(jié)構(gòu)


四、設(shè)計(jì)和實(shí)現(xiàn)

主要功能分子VI實(shí)現(xiàn),方便程序的編寫、調(diào)試和調(diào)用。

4.1模塊化的設(shè)計(jì)和實(shí)現(xiàn)

4.1.1.量表時(shí)間的實(shí)現(xiàn)的VI

獲取系統(tǒng)24進(jìn)制時(shí)間轉(zhuǎn)換成量表12進(jìn)制時(shí)間,并轉(zhuǎn)換成與定時(shí)時(shí)間比較的實(shí)時(shí)時(shí)間。表時(shí)間的程序如圖3所示。

圖3 量表時(shí)間

4.1.2預(yù)設(shè)時(shí)間VI

把預(yù)設(shè)定時(shí)時(shí)間24進(jìn)制的轉(zhuǎn)換成12進(jìn)制的時(shí)間,和預(yù)設(shè)的鈴聲音樂一起送至?xí)r間全局變量。另外設(shè)置定時(shí)時(shí)間恢復(fù)默認(rèn)值。定時(shí)時(shí)間或預(yù)設(shè)時(shí)間如圖4所示。

圖4 預(yù)設(shè)時(shí)間

4.1.3聲音的讀取子VI

聲音的讀取模塊如圖5所示。由確認(rèn)按鈕確認(rèn)鬧鐘的定時(shí)鈴聲的響起和停止,而具體的鈴聲由路徑提供鈴聲文件的位置所決定。

圖5聲音的讀取

4.1.4主界面

鬧鐘主界面由圖6所示,主界面主VI控制著整個(gè)程序的邏輯結(jié)構(gòu)和運(yùn)算過程。主要是對(duì)用戶界面上的操作輸入和運(yùn)行結(jié)果的顯示,其中,從主界面程序框圖如圖7所示,主VI通過調(diào)用相關(guān)的子VI來完成相關(guān)的操作。

圖6 主界面

圖7 系統(tǒng)主框圖

4.2.關(guān)鍵技術(shù)

運(yùn)用LabVIEW設(shè)計(jì)鬧鐘,有獨(dú)特的技術(shù)特色。

4.2.1模塊化編程

模塊化編程方便于調(diào)試,修改和調(diào)用。一個(gè)模塊都可以作為一個(gè)子模塊被 其他模塊調(diào)用,即主VI調(diào)用子VI,任何一個(gè)VI都可以設(shè)置成子VI或主VI被其他的VI調(diào)用。

4.2.2全局變量

全局變量如圖8所示,它用于在多個(gè)VI直接訪問和傳遞數(shù)據(jù),非常便于不同程序間的數(shù)據(jù)傳輸。

把定時(shí)設(shè)置成全局變量,一是方便預(yù)設(shè)時(shí)間子VI,另一方面方便與預(yù)設(shè)時(shí)間數(shù)據(jù)傳輸給下一個(gè)子VI。也就是說,時(shí)間全局變量既可以作為輸出數(shù)據(jù)接收數(shù)據(jù),接收到數(shù)據(jù)后又可以設(shè)置成輸入變量,把數(shù)據(jù)傳輸給下一個(gè)子VI。

圖8 全局變量

4.2.3量表的設(shè)計(jì)

如圖9所示,從LabVIEW元件庫調(diào)出來的量表本來只有一個(gè)時(shí)針,通過添加十幀屬性,添加到3個(gè)指針分別代表時(shí)、分、秒。但量表的輸入要通過輸出簇才能輸入數(shù)據(jù)。

圖9 量表的設(shè)計(jì)

4.3程序調(diào)試

本鬧鐘的定時(shí)鈴聲格式要wav格式的文件,若是別的格式定時(shí)前要轉(zhuǎn)換成wav格式,又由于主程序分成很多子VI,所以程序的編寫,調(diào)試調(diào)用和增加功能都特別方便。

4.4結(jié)束語

  該鬧鐘的功能拓展非常方便。鬧鐘鐘功能很簡單,實(shí)現(xiàn)起來也很簡單,但要做得美觀、簡潔卻不那么容易。 比如讓其顯示更多生動(dòng)的字體,              在一個(gè)小窗口里實(shí)現(xiàn)更多的動(dòng)畫。但這個(gè)鬧鐘的缺陷是只能在計(jì)算機(jī)上運(yùn)行,無法在一般的手機(jī)或別的設(shè)備上運(yùn)行,且鬧鈴聲只能來源于wav格式的文件。

五、運(yùn)行結(jié)果

5.1 點(diǎn)擊運(yùn)行按鍵。從系統(tǒng)獲取時(shí)間。

圖10 時(shí)間獲取


5.2 點(diǎn)擊定時(shí)按鈕,手動(dòng)定時(shí)設(shè)置。選擇鈴聲路徑。

圖11 定時(shí)設(shè)置

5.3 點(diǎn)擊定時(shí)完成,鬧鐘設(shè)置完畢。

5.4 鬧鐘響起。


51hei.png


全部資料51hei下載地址:

定時(shí)時(shí)鐘.zip (497.5 KB, 下載次數(shù): 215)

定時(shí)時(shí)鐘.doc (593 KB, 下載次數(shù): 108)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:373684 發(fā)表于 2020-1-5 10:27 | 顯示全部樓層
還不錯(cuò)的文章啊,,,說的好詳細(xì)。收藏了
回復(fù)

使用道具 舉報(bào)

ID:373831 發(fā)表于 2020-5-20 21:16 | 顯示全部樓層
想問一下量表時(shí)間實(shí)現(xiàn)那一塊為什么的到的時(shí)和秒的數(shù)值要除以5
回復(fù)

使用道具 舉報(bào)

ID:881055 發(fā)表于 2021-3-29 13:49 | 顯示全部樓層
很好的文章
回復(fù)

使用道具 舉報(bào)

ID:943093 發(fā)表于 2021-6-23 21:24 | 顯示全部樓層
你好,有幾個(gè)關(guān)于您分享的基于labview的鬧鐘設(shè)計(jì)的問題想要問您。 1.前面板運(yùn)行怎么能取消透明,變成正常的顏色? 2.在量表那塊 條件結(jié)構(gòu)里為什么是3,4和6,3? 還有許多問題 期待您的回復(fù)解答!
回復(fù)

使用道具 舉報(bào)

ID:943093 發(fā)表于 2021-6-23 21:24 | 顯示全部樓層
你好,有幾個(gè)關(guān)于您分享的基于labview的鬧鐘設(shè)計(jì)的問題想要問您。
1.前面板運(yùn)行怎么能取消透明,變成正常的顏色?
2.在量表那塊 條件結(jié)構(gòu)里為什么是3,4和6,3?
還有許多問題 期待您的回復(fù)解答!
回復(fù)

使用道具 舉報(bào)

ID:987731 發(fā)表于 2021-12-3 21:48 | 顯示全部樓層
請(qǐng)問這只能實(shí)現(xiàn)鬧鐘響兩次停止嗎
回復(fù)

使用道具 舉報(bào)

ID:1125996 發(fā)表于 2024-6-22 18:22 | 顯示全部樓層
已收藏,感謝分享
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表