日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

發(fā)燒友研習社 ? 來源:djl ? 2019-10-25 11:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

雖然 LabVIEW軟件長期以來一直幫助工程師和科學家們快速開發(fā)功能測量和控制應(yīng)用,但不是所有的新用戶都會遵循LabVIEW編程的最佳方法。 LabVIEW圖形化編程比較獨特,因為只需看一眼用戶的應(yīng)用程序,就馬上可以發(fā)現(xiàn)用戶是否遵循編碼的最佳方法。有些用戶會犯這些錯誤是因為他們沒有真正理解LabVIEW框圖數(shù)據(jù)流背后的原理,而有些用戶則是不知道哪些特性可提高LabVIEW編程質(zhì)量。

本文介紹了經(jīng)驗欠缺的LabVIEW程序員最經(jīng)常犯的一些編程錯誤,同時也提供了采用正確LabVIEW編程方法的建議。

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

圖 1. LabVIEW新手典型“杰作”

1過度使用平鋪式順序結(jié)構(gòu)

許多LabVIEW新手并不完全了解“數(shù)據(jù)流”執(zhí)行背后的概念,而這些概念卻是LabVIEW編程的基礎(chǔ)。其中一個現(xiàn)象是用戶往往在程序框圖中過度使用平鋪式順序結(jié)構(gòu)。用戶經(jīng)常依賴平鋪式順序結(jié)構(gòu)來實現(xiàn)程序框圖的代碼串行執(zhí)行,而不是使用數(shù)據(jù)流和節(jié)點之間的連線。

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

圖 2. 用戶往往過度依賴平鋪式順序結(jié)構(gòu),而沒有充分理解數(shù)據(jù)流編程概念

數(shù)據(jù)流編程是指只有在所需的數(shù)據(jù)輸入全部到達時,框圖上的節(jié)點(子VI、本原、結(jié)構(gòu)等)才開始執(zhí)行。 這對于使用LabVIEW的程序員來說非常有用,因為獨立的進程本身就可以實現(xiàn)并行運行,而命令式語言卻需要額外的設(shè)置才能實行并行執(zhí)行。隨著計算機CPU的不斷增多,LabVIEW可自動分解并行流程,提高代碼性能,而無需用戶編寫任何額外代碼。而強行使用平鋪式順序結(jié)構(gòu)來執(zhí)行程序框圖不僅會限制并行運行,還會喪失這一優(yōu)勢。限制程序框圖中不必要的結(jié)構(gòu)有助于提高整體可讀性和保持更簡潔的框圖。

錯誤連線可以有效地實現(xiàn)程序框圖上的數(shù)據(jù)流,而不需要依靠平鋪式順序結(jié)構(gòu),此外錯誤連線還有助于實現(xiàn)錯誤處理策略。

何時應(yīng)該使用平鋪式順序結(jié)構(gòu)?
通過平鋪式順序結(jié)構(gòu)來執(zhí)行程序框圖有助于代碼性能的基準測試。通過使用框架內(nèi)具有時間計數(shù)器的順序結(jié)構(gòu),您可以決定兩個時間計數(shù)器之間代碼執(zhí)行所花費的時間。這是一般數(shù)據(jù)流執(zhí)行所無法實現(xiàn)的。

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

圖 3. 平鋪式順序結(jié)構(gòu)和時間計數(shù)器VI有助于代碼的基準測試

關(guān)于數(shù)據(jù)流編程的更多信息,請訪問在線自學培訓(ni.com/self-paced-training)LabVIEW核心課程1的“數(shù)據(jù)流”。購買LabVIEW或具有標準服務(wù)項目(ni.com/ SSP)會員資格的用戶可以免費參加在線自學培訓。

2錯誤使用局部變量

LabVIEW編程中另一個常見的錯誤是過度使用局部變量。局部變量是共享內(nèi)存中的一個區(qū)域,用于在計算機程序不同部分之間傳遞數(shù)據(jù)。局域變量通常用于文本編程語言,具有非常強大的功能,但如果出現(xiàn)競爭條件,就會產(chǎn)生問題。

對于其他編程語言來說,通過變量傳遞數(shù)據(jù)是必需的,而LabVIEW則提供了一種數(shù)據(jù)流方法,可將數(shù)據(jù)從程序的一個部分移動到另一個部分。LabVIEW固有的并行性機制決定著用戶不能過度使用變量,因為同一時間內(nèi)通常會有多個不同的位置的程序訪問共享內(nèi)存。如果過度使用變量,則會出現(xiàn)某個讀/寫操作贏了“競爭”,而其他操作則輸了“競爭”,丟失數(shù)據(jù)的操作會被忽視,因此在LabVIEW中過度使用變量可能會最終導(dǎo)致數(shù)據(jù)丟失。


可以通過多種方法安全地將數(shù)據(jù)從LabVIEW程序的一個部分傳遞到另一個部分,包括連線、隊列、事件、通知、功能全局變量等等。每個機制都是針對特定情況設(shè)計的,但都具有消除競爭條件的功能。

3忽略代碼模塊化

通常情況下,新LabVIEW用戶創(chuàng)建的是“即寫即忘”應(yīng)用程序去完成簡單的任務(wù),而沒有考慮到以后是否會用到這些代碼。隨著編程工作越來越多,他們會發(fā)現(xiàn)自己一遍又一遍地重寫同一段代碼。而如果在編程同時創(chuàng)建一個可復(fù)用于其他應(yīng)用的模塊化子VI,就可以節(jié)省大量的開發(fā)時間。

如果您知道代碼的特定部分將會重用于同一應(yīng)用程序,或感覺該部分代碼可能會用于未來的應(yīng)用程序,那么您應(yīng)該花一點時間將該部分代碼變成一個子VI。如果要使某部分代碼成為一個子VI,您需要做的主要是添加一個文檔、使用“接線端”、禁用某些VI屬性。創(chuàng)建子VI的最簡單方法之一是高亮標記程序框圖中的某部分代碼,然后從菜單欄中選擇“編輯>>創(chuàng)建子VI”。這樣這部分代碼就會放到一個單獨的VI,然后使用“接線端”。您仍然需要為圖標添加說明,并將文檔記述添加到程序框圖和VI屬性中,然后取消某些VI設(shè)置,但“編輯>>創(chuàng)建子VI”可幫助您很好地了解代碼的模塊化功能。

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

圖 4. 采用正確的LabVIEW代碼模塊化操作可以幫助您節(jié)省大量開發(fā)時間

代碼模塊化時必須取消的一項設(shè)置是“允許調(diào)試”。 可在“VI屬性(文件>>VI屬性)”下的“執(zhí)行”目錄中找到此選項。代碼完全正常運行無需再使用高亮執(zhí)行等調(diào)試功能時,在執(zhí)行設(shè)置中取消“允許調(diào)試”,然后再次運行VI。這樣做的好處是由于在編譯過程中進行了優(yōu)化,應(yīng)用程序的運行速度可能加快,而且由于啟動調(diào)試的代碼被關(guān)閉,VI所占的磁盤物理空間也相應(yīng)減少了。

4創(chuàng)建龐大繁瑣的程序框圖

許多新LabVIEW用戶都會把程序框圖編寫得非常繁瑣龐大。對于一些復(fù)雜的應(yīng)用程序,我們難免需要編寫較大的程序框圖,但龐大的程序框圖從一定程度上也可以表明該程序缺乏編程架構(gòu)。如果沒有一個基本的架構(gòu),要長期維護該程序是非常困難的,而且如果以后要添加新功能也會非常困難。正如只有一個好的框架才能建造一棟結(jié)構(gòu)合理的房子,一個好的編程架構(gòu)可以為您構(gòu)建應(yīng)用程序提供了一個安全可靠的框架。

幾乎所有的程序員都會發(fā)現(xiàn)常見的框架中,軟件架構(gòu)是非常有用的。實際上LabVIEW中的許多架構(gòu),如生產(chǎn)者/消費者和狀態(tài)機,與其他編程語言非常相似。

了解LabVIEW的架構(gòu)可以縮短開發(fā)時間和提高應(yīng)用程序的可擴展性。 LabVIEW 2012包含了模板和項目范例,使理解架構(gòu)變得更加容易。模板解釋了不同的架構(gòu)及應(yīng)用。項目范例則是基于模板的更大型應(yīng)用程序,演示了如何使用模板來應(yīng)對實際的挑戰(zhàn)。您可以將硬件加入到范例項目中,或者需要時可將項目范例作為一個整體應(yīng)用程序,同時項目范例具有開放性且文檔記述也很完整,所以您可針對具體應(yīng)用進行自定義。

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

圖 5. LabVIEW 2012中的模板和項目范例使得理解軟件架構(gòu)變得非常輕松。

5不重視文檔記錄

優(yōu)秀的代碼文檔可以有效地幫助他人理解自己寫的程序。遺憾的是,許多程序員通常在開發(fā)周期末期功能開發(fā)結(jié)束之后才開始進行文檔撰寫。這使得用于對代碼進行文檔記錄的時間變得非常少。正確的做法應(yīng)該是在開發(fā)過程中就需抽出時間來開始進行文檔記錄。文檔對于編程人員自身也非常有用,尤其是當他們過段時間回來看代碼卻不記得當初他們?yōu)槭裁催x擇某些代碼時。程序員經(jīng)常會一邊喝著咖啡,一邊熬夜編程,這往往會出現(xiàn)“短暫失憶”。而文檔則可以幫助程序員進行回憶。

一般情況下,相對于基于文本的程序,LabVIEW的圖形化特性使得程序閱讀更為容易,但是有效的文檔記錄可以減少“解碼”程序所需的時間。添加文檔注釋到程序框圖的最簡單方式是使用自由標簽。您可以在框圖的空白位置雙擊左鍵,并輸入文字,添加注釋。然后,使用箭頭標記來指向自由標簽引用的特定代碼。如果需要添加圖片,則可將它們復(fù)制到剪貼板,然后粘貼到程序框圖中。物理系統(tǒng)圖片和數(shù)學公式均有助于清晰說明程序框圖內(nèi)的代碼上下文。

關(guān)于LabVIEW新手遇到的5大誤區(qū)的介紹和分析

圖 6.架構(gòu)正確且文檔記錄充分的代碼不僅可幫助其他人理解您的代碼,也可幫助您更好地理解自己的代碼

對代碼進行文檔記錄不僅只是針對復(fù)用程序庫,而應(yīng)該是針對每一個程序。當一個人需要為其他人講解時,他對該主題將會有更深刻的理解。文檔記錄從本質(zhì)上看就是在迫使程序員進行講解,以幫助他們更好地了解自己的代碼。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 計數(shù)器
    +關(guān)注

    關(guān)注

    32

    文章

    2321

    瀏覽量

    98628
  • 模塊化
    +關(guān)注

    關(guān)注

    0

    文章

    359

    瀏覽量

    22822
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4977

    瀏覽量

    74434
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    光模塊頻繁故障?避開3個使用誤區(qū)就夠了

    很多老板和同行都會遇到光模塊易出故障的問題,頻繁掉線、識別異常、過早損壞,既影響運營又增加成本。其實大部分故障,并非模塊質(zhì)量問題,而是日常使用、插拔、存放不規(guī)范導(dǎo)致的,無論10G、100G還是
    發(fā)表于 04-28 17:37

    Linux新手最常踩的10個命令坑介紹

    從事運維工作十余年,帶過不少新人,發(fā)現(xiàn)有些命令錯誤幾乎是每個Linux使用者都曾經(jīng)遇到過的。這些錯誤輕則導(dǎo)致操作失敗、浪費時間,重則引發(fā)數(shù)據(jù)丟失、服務(wù)中斷、生產(chǎn)事故。本篇文章結(jié)合2026年
    的頭像 發(fā)表于 04-09 10:11 ?231次閱讀

    變頻器應(yīng)用誤區(qū)的探討

    變頻器在應(yīng)用過程中確實存在一些常見的誤區(qū),這些誤區(qū)如果不加以注意和糾正,可能會對變頻器的性能、壽命以及整個系統(tǒng)的穩(wěn)定性產(chǎn)生不良影響。
    的頭像 發(fā)表于 03-13 16:46 ?373次閱讀

    導(dǎo)熱系數(shù)越高越好?關(guān)于導(dǎo)熱硅膠片的三個認知誤區(qū)

    不僅標定初始導(dǎo)熱系數(shù),更將低出油率、高耐老化性、優(yōu)異絕緣性作為核心質(zhì)量控制點,確保材料在全生命周期內(nèi)性能可靠。 誤區(qū)三:材料越厚,填充效果越好;硬度越高,導(dǎo)熱越佳 這是關(guān)于物理特性的常見誤解
    發(fā)表于 03-12 13:49

    運動控制伺服閉環(huán)PID參數(shù)調(diào)整的誤區(qū)

    在運動控制中,伺服閉環(huán)PID參數(shù)調(diào)整往往是決定系統(tǒng)性能的關(guān)鍵。很多工程師在面對系統(tǒng)響應(yīng)慢、震動或超調(diào)時,第一反應(yīng)就是“繼續(xù)調(diào)P、調(diào)I、調(diào)D”。然而,這往往是一個最大的誤區(qū)。 單純地“死磕”PID參數(shù)
    的頭像 發(fā)表于 03-08 12:08 ?1365次閱讀
    運動控制伺服閉環(huán)PID參數(shù)調(diào)整的<b class='flag-5'>誤區(qū)</b>

    新手選購桌面式氣密性檢漏機,抓住3點不踩坑

    ,避開選購陷阱。首先要立足自身檢測需求,拒絕盲目高配。很多新手存在誤區(qū),認為配置越高、功能越全就越好,實則不然。選購前先明確檢測工件的尺寸、密封精度要求以及生產(chǎn)批
    的頭像 發(fā)表于 03-04 16:57 ?382次閱讀
    <b class='flag-5'>新手</b>選購桌面式氣密性檢漏機,抓住3點不踩坑

    關(guān)于MT6901的直線DEMO介紹

    關(guān)于MT6901的直線DEMO介紹
    的頭像 發(fā)表于 01-30 10:54 ?821次閱讀
    <b class='flag-5'>關(guān)于</b>MT6901的直線DEMO<b class='flag-5'>介紹</b>

    從零開始:一份詳細的灌封膠新手入門指南,告別常見操作誤區(qū) | 鉻銳特實業(yè)

    針對新手的灌封膠完整入門指南,從類型選擇、配比攪拌、真空脫泡到灌封固化全流程詳解,幫助你避開常見操作誤區(qū),輕松掌握電子元器件防護技巧。 | 鉻銳特官網(wǎng)
    的頭像 發(fā)表于 12-17 00:31 ?821次閱讀
    從零開始:一份詳細的灌封膠<b class='flag-5'>新手</b>入門指南,告別常見操作<b class='flag-5'>誤區(qū)</b> | 鉻銳特實業(yè)

    關(guān)于NFC鎳鋅鐵氧體片的介紹

    關(guān)于NFC鎳鋅鐵氧體片的介紹
    的頭像 發(fā)表于 12-04 10:52 ?593次閱讀
    <b class='flag-5'>關(guān)于</b>NFC鎳鋅鐵氧體片的<b class='flag-5'>介紹</b>

    分析負載特性時,有哪些常見的錯誤或誤區(qū)?

    分析負載特性時,很多人會因 “想當然套用經(jīng)驗”“忽略實際場景細節(jié)” 或 “混淆概念” 導(dǎo)致判斷偏差,進而讓報警閾值調(diào)整失效(如誤報、漏報)。以下是 6 個最常見的錯誤 / 誤區(qū),附錯誤表現(xiàn)、危害
    的頭像 發(fā)表于 10-10 17:03 ?1145次閱讀

    電路板生產(chǎn)ERP選型常見誤區(qū)分析

    解決方案的品牌,萬達寶憑借對行業(yè)特性的精準把握,逐漸成為眾多企業(yè)的重點關(guān)注對象。本文將結(jié)合市場主流品牌特點,系統(tǒng)分析選型過程中易陷入的典型誤區(qū)。一、萬達寶:制造業(yè)場
    的頭像 發(fā)表于 09-16 10:31 ?724次閱讀
    電路板生產(chǎn)ERP選型常見<b class='flag-5'>誤區(qū)分析</b>

    操作誤區(qū)警示:發(fā)動機氣密性檢測儀新手易犯錯誤-岳信儀器

    發(fā)動機氣密性檢測儀在保障發(fā)動機性能和質(zhì)量方面起著至關(guān)重要的作用。然而,對于新手來說,在操作過程中容易陷入一些誤區(qū),影響檢測結(jié)果的準確性。以下是新手常見的操作誤區(qū)。
    的頭像 發(fā)表于 09-13 14:54 ?713次閱讀
    操作<b class='flag-5'>誤區(qū)</b>警示:發(fā)動機氣密性檢測儀<b class='flag-5'>新手</b>易犯錯誤-岳信儀器

    汽車行業(yè) GDPR 誤區(qū) TOP5,帶您一文厘清!

    因汽車智能化發(fā)展,ADAS 技術(shù)依賴海量視頻數(shù)據(jù)采集,歐盟GDPR作為全球嚴規(guī),對企業(yè)處理歐盟公民數(shù)據(jù)要求嚴格且違規(guī)罰款重!本文對行業(yè)常見的 5 個 GDPR 誤區(qū)進行逐一拆解,助力企業(yè)規(guī)避數(shù)據(jù)違規(guī)風險!
    的頭像 發(fā)表于 08-27 13:36 ?744次閱讀
    汽車行業(yè) GDPR <b class='flag-5'>誤區(qū)</b> TOP<b class='flag-5'>5</b>,帶您一文厘清!

    新手入門:使用CST電磁軟件進行貼片天線設(shè)計的5個基本步驟

    新手入門教程:使用CST進行貼片天線設(shè)計的5個基本步驟。從創(chuàng)建模型到結(jié)果分析,詳細指導(dǎo)您完成2.45GHz微帶貼片天線的完整設(shè)計流程。
    的頭像 發(fā)表于 07-28 16:17 ?1454次閱讀
    <b class='flag-5'>新手</b>入門:使用CST電磁軟件進行貼片天線設(shè)計的<b class='flag-5'>5</b>個基本步驟

    LabVIEW的詳細簡介和應(yīng)用(文末免費分享LabVIEW相關(guān)資料合集)

    LabVIEW是一種程序開發(fā)環(huán)境,由美國國家儀器(NI)公司研制開發(fā),類似于C和BASIC開發(fā)環(huán)境,但是LabVIEW與其他計算機語言的顯著區(qū)別是:其他計算機語言都是采用基于文本的語言產(chǎn)生代碼,而
    的頭像 發(fā)表于 05-22 11:43 ?2892次閱讀
    <b class='flag-5'>LabVIEW</b>的詳細簡介和應(yīng)用(文末免費分享<b class='flag-5'>LabVIEW</b>相關(guān)資料合集)
    达州市| 广安市| 嵊州市| 诸城市| 紫阳县| 诏安县| 盐源县| 望谟县| 台中县| 荔波县| 宁河县| 全南县| 丹东市| 通山县| 任丘市| 宜昌市| 嘉义县| 抚州市| 米泉市| 舟山市| 荥阳市| 平安县| 额济纳旗| 尤溪县| 陇川县| 康保县| 石景山区| 门头沟区| 延川县| 西城区| 丹阳市| 邹平县| 封开县| 吴川市| 婺源县| 灵寿县| 英德市| 东乌| 大庆市| 察雅县| 黑河市|