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

QQ登錄

只需一步,快速開(kāi)始

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

基于LabVIEW的科學(xué)計(jì)算器的設(shè)計(jì)

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

本文是基于LabVIEW虛擬儀器系統(tǒng)開(kāi)發(fā)與實(shí)踐等原理、技術(shù)而設(shè)計(jì)出的科學(xué)計(jì)算器,是利用虛擬儀器技術(shù)而完成的。可以用來(lái)模擬真實(shí)計(jì)算器而進(jìn)行簡(jiǎn)單的加減乘除四則運(yùn)算、平方、開(kāi)根號(hào)和倒數(shù)運(yùn)算,以及進(jìn)行三角函數(shù)的數(shù)值轉(zhuǎn)換。本次設(shè)計(jì)運(yùn)用條件結(jié)構(gòu)、順序結(jié)構(gòu)以及層疊式順序結(jié)構(gòu)等實(shí)現(xiàn)具體的計(jì)算器功能,利用子VI進(jìn)行相關(guān)數(shù)值的轉(zhuǎn)換。LabVIEW 是美國(guó)國(guó)家儀器公司推出的一種基于 G 語(yǔ)言的虛擬儀器軟件開(kāi)發(fā)工具。本文首先介紹了LabVIEW科學(xué)計(jì)算器設(shè)計(jì)的理論支撐,然后使用LabVIEW設(shè)計(jì)了詳細(xì)程序框圖和程序的前面板,并對(duì)設(shè)計(jì)過(guò)程中所遇問(wèn)題進(jìn)行總結(jié),最后對(duì)科學(xué)計(jì)算器進(jìn)一步的設(shè)計(jì)優(yōu)化進(jìn)行了展望。

在確定計(jì)算器功能類(lèi)型和數(shù)量的基礎(chǔ)上,查閱相關(guān)資料對(duì)方案進(jìn)行論證,完成總體設(shè)計(jì)。繪制出系統(tǒng)總圖和計(jì)算器界面總框圖。計(jì)算器設(shè)計(jì)流程圖如圖2所示。

2 計(jì)算器設(shè)計(jì)流程圖


  • 總體設(shè)計(jì)

在LabVIEW開(kāi)發(fā)環(huán)境下,創(chuàng)建可執(zhí)行文件必須在“項(xiàng)目”下進(jìn)行。本程序的項(xiàng)目瀏覽器窗口如圖3所示。

3項(xiàng)目瀏覽器

在項(xiàng)目瀏覽器中,我們可以看到,項(xiàng)目調(diào)用了很多子VI,主界面主VI控制著整個(gè)程序的邏輯結(jié)構(gòu)和運(yùn)算過(guò)程,主要是對(duì)用戶界面上的操作輸入和運(yùn)行結(jié)果的顯示。其他的子VI可以被一些模塊調(diào)用,即主VI調(diào)用子VI。本項(xiàng)目主要使用了七個(gè)子VI,如圖4所示。

4 色彩繽紛的子程序圖標(biāo)

本設(shè)計(jì)的程序框圖主要運(yùn)用了條件結(jié)構(gòu)和事件結(jié)構(gòu),結(jié)合模塊化的子VI,可構(gòu)成我們所需要的功能。多事件結(jié)構(gòu)的程序框圖如圖5所示。

5多事件結(jié)構(gòu)的結(jié)構(gòu)框圖

三、程序的基本設(shè)計(jì)

)“計(jì)算器程序的前面版

本次設(shè)計(jì)的計(jì)算器共設(shè)計(jì)40個(gè)鍵碼,分別為:0~9 十個(gè)數(shù)字、小數(shù)點(diǎn)、正負(fù)號(hào)、加、減、乘、除、等號(hào)、倒數(shù)、開(kāi)方、平方、 π、sin、cos、tan、角度轉(zhuǎn)換和清零,還有一個(gè)數(shù)據(jù)顯示和一個(gè)時(shí)間顯示。具體設(shè)計(jì)如圖6所示。

6 前面板

)“計(jì)算器”程序的程序框圖

本程序框圖通過(guò)一個(gè)while循環(huán)套用一個(gè)事件結(jié)構(gòu)和一個(gè)條件結(jié)構(gòu),以及一個(gè)調(diào)用節(jié)點(diǎn)完成對(duì)函數(shù)的調(diào)用,進(jìn)而完成對(duì)計(jì)算器的兩個(gè)輸入數(shù)據(jù)的加、減、乘、除運(yùn)算和一些特殊運(yùn)算。整體程序框圖如圖7所示。

7 整體程序框圖



  • VI與模塊

一)簡(jiǎn)單VI的程序框圖

子VI相當(dāng)于普通編程語(yǔ)言中的子程序,也就是被其他的VI調(diào)用的 VI。下圖幾個(gè)框圖顯示了加減計(jì)算、乘除計(jì)算、括號(hào)、抽離上一元素、和刪除多余的零等一些子VI的程序框圖。

8“加減計(jì)算的程序框圖

9“乘除計(jì)算的程序框圖

10“括號(hào)的程序框圖

11“抽離上一元素的程序框圖

12“刪除多余的零的程序框圖

13“清零的程序框圖


特殊計(jì)算VI的程序框圖

特殊計(jì)算子VI就是對(duì)一些除加減乘除除外的特殊符號(hào)的運(yùn)算,包括角度求值、平方求值、階乘等。其中正切和余弦函數(shù)的程序框圖如圖14、圖15所示。

14 “正切”的程序框圖

15 余弦”的程序框圖

時(shí)間顯示和背景控件

主界面調(diào)用一些控件和函數(shù)進(jìn)行運(yùn)算操作,利用分模塊編寫(xiě)子VI的方式調(diào)用。有利于調(diào)試、修改和調(diào)用。時(shí)間控件給前面版添加了顯示時(shí)間的功能。背景模塊給前面板添加了背景轉(zhuǎn)換的功能,數(shù)據(jù)顯示控件和背景模塊的程序框圖如圖16、圖17所示。

16 時(shí)間顯示模塊的程序框圖

17前面板背景控件的程序框圖

弧度,角度,梯度的相互轉(zhuǎn)換

17 “弧度,角度,梯度的轉(zhuǎn)換”的程序框圖

  • 驗(yàn)證“計(jì)算機(jī)”程序

(一)加減乘除驗(yàn)證

           

(二)一些特殊功能驗(yàn)證

           



  • 總結(jié)
  • 結(jié)論

通過(guò)設(shè)計(jì),制作出基于LabVIEW虛擬儀器系統(tǒng)開(kāi)發(fā)與實(shí)踐等原理、技術(shù)而設(shè)計(jì)出的簡(jiǎn)易計(jì)算器,是利用虛擬儀器技術(shù)而完成的,可以用來(lái)模擬真實(shí)計(jì)算器而進(jìn)行簡(jiǎn)單的四則運(yùn)算、平方、開(kāi)根號(hào)和倒數(shù)運(yùn)算 ,還可以進(jìn)行清零和關(guān)閉計(jì)算器操作。經(jīng)過(guò)對(duì)結(jié)果的演示,本設(shè)計(jì)能夠達(dá)到設(shè)計(jì)之初所計(jì)劃的所有功能。不僅對(duì)于簡(jiǎn)單的運(yùn)算能夠順利的完成,而且具體的操作和功能與最常用的計(jì)算器基本一致。

  • 展望

該設(shè)計(jì)還是有很多功能可以加入的。比如可以加入簡(jiǎn)易/科學(xué)計(jì)算器的轉(zhuǎn)換按鈕,這樣可以方便更多場(chǎng)合的應(yīng)用,還可以加入進(jìn)制轉(zhuǎn)換的功能,方便電子信息類(lèi)的學(xué)生進(jìn)行邏輯分析。為了完善此次設(shè)計(jì),接下來(lái)的時(shí)間,我將繼續(xù)熟悉函數(shù)選板中各個(gè)函數(shù)作用及控件選板中各個(gè)控件的作用,以使自己在接下來(lái)設(shè)計(jì) LabVIEW 程序框圖時(shí)更加得心應(yīng)手。

51hei.png


全部資料51hei下載地址:

最終版.zip (14.8 MB, 下載次數(shù): 244)

上傳計(jì)算器.docx (1.71 MB, 下載次數(shù): 125)



評(píng)分

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

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:736844 發(fā)表于 2020-4-24 11:32 | 顯示全部樓層
學(xué)習(xí)一下!支持!
回復(fù)

使用道具 舉報(bào)

ID:587894 發(fā)表于 2020-6-7 17:49 | 顯示全部樓層
學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

ID:787543 發(fā)表于 2020-6-23 11:58 | 顯示全部樓層
支持!
回復(fù)

使用道具 舉報(bào)

ID:904342 發(fā)表于 2021-4-14 20:19 | 顯示全部樓層
還有很多功能不能實(shí)現(xiàn),比如正數(shù)乘以負(fù)數(shù)、負(fù)數(shù)乘以負(fù)數(shù)、正數(shù)除以負(fù)數(shù)、負(fù)數(shù)除以負(fù)數(shù)、三角函數(shù)不能通過(guò)弧度計(jì)算、階乘運(yùn)算等,希望作者可以改進(jìn)一下。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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