国产一区国产二区国产三区-国产一区精品-国产一区免费观看-国产一区免费在线观看-亚洲天堂免费-亚洲天堂免费观看

您好,歡迎光臨電子應用網![登錄] [免費注冊] 返回首頁 | | 網站地圖 | 反饋 | 收藏
在應用中實踐
在實踐中成長
  • 應用
  • 專題
  • 產品
  • 新聞
  • 展會
  • 活動
  • 招聘
當前位置:中國電子應用網 > 技術應用 > 正文

LabVIEW新手5大錯誤

2013年09月05日17:23:26 本網站 我要評論(2)字號:T | T | T
關鍵字:應用 LabVIEW 計算機 

 

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

 

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

 

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

 

過度使用平鋪式順序結構 

許多LabVIEW新手并不完全了解“數據流”執行背后的概念,而這些概念卻是LabVIEW編程的基礎。其中一個現象是用戶往往在程序框圖中過度使用平鋪式順序結構。用戶經常依賴平鋪式順序結構來實現程序框圖的代碼串行執行,而不是使用數據流和節點之間的連線。

 

圖 2. 用戶往往過度依賴平鋪式順序結構,而沒有充分理解數據流編程概念

 

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

 

錯誤連線可以有效地實現程序框圖上的數據流,而不需要依靠平鋪式順序結構,此外錯誤連線還有助于實現錯誤處理策略。

 

何時應該使用平鋪式順序結構?

通過平鋪式順序結構來執行程序框圖有助于代碼性能的基準測試。通過使用框架內具有時間計數器的順序結構,您可以決定兩個時間計數器之間代碼執行所花費的時間。這是一般數據流執行所無法實現的。

 

圖 3. 平鋪式順序結構和時間計數器VI有助于代碼的基準測試

 

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

 

錯誤使用局部變量

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

 

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

 

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

 

關于在LabVIEW程序內正確移動數據的更多信息,請訪問在線自學培訓(ni.com/self-paced-training)LabVIEW核心課程1的“局域變量”和LabVIEW核心課程2的“通知、隊列和事件”。

 

忽略代碼模塊化

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

 

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

 

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

 

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

 

關于代碼模塊化的更多信息,請訪問在線自學培訓LabVIEW核心課程1的“理解模塊化”。

 

創建龐大繁瑣的程序框圖

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

 

幾乎所有的程序員都會發現常見的框架中,軟件架構是非常有用的。實際上LabVIEW中的許多架構,如生產者/消費者和狀態機,與其他編程語言非常相似。

 

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

 

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

 

關于LabVIEW架構的更多信息,請訪問在線自學培訓(ni.com/self-paced-training) for LabVIEW核心課程2的“設計模式”。

 

不重視文檔記錄

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

 

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

 

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

 

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

 

關于文檔記述的更多信息,請訪問在線自學培訓LabVIEW核心課程1的“對代碼進行文檔記錄”。

 

LabVIEW旨在幫助工程師和科學家更成功地應對全球較嚴峻的挑戰。LabVIEW社區擁有龐大的工程師和科學家會員,為其提供了一個有效的平臺來與他人分享知識。如果您愿意分享自己所犯過的新手錯誤,請發布到bit.ly/lvrookiemistakes。

網友評論:已有2條評論 點擊查看
登錄 (請登錄發言,并遵守相關規定)
如果您對新聞頻道有任何意見或建議,請到交流平臺反饋。【反饋意見】
關于我們 | 聯系我們 | 本站動態 | 廣告服務 | 歡迎投稿 | 友情鏈接 | 法律聲明
Copyright (c) 2008-2025 www.flexio.com.cn.All rights reserved.
電子應用網 京ICP備12009123號-2 京公網安備110105003345號
亚洲第一页色| 999精品在线| 国产激情视频在线观看| 九九九国产| 日韩免费在线视频| 日本免费乱人伦在线观看 | 青草国产在线观看| 国产成人精品综合久久久| 国产91丝袜在线播放0| 欧美另类videosbestsex久久| 美国一区二区三区| 国产视频一区二区在线播放| 欧美大片a一级毛片视频| 中文字幕97| 成人免费网站久久久| 欧美激情伊人| 日本免费乱理伦片在线观看2018| 精品在线观看一区| 91麻豆精品国产自产在线观看一区 | 亚洲 激情| 中文字幕97| 国产麻豆精品免费视频| 国产欧美精品午夜在线播放| 国产极品白嫩美女在线观看看| 国产欧美精品午夜在线播放| 成人影视在线播放| 91麻豆国产福利精品| 国产不卡在线观看| 中文字幕一区二区三区 精品| 亚州视频一区二区| 久久久久久久网| 国产91精品系列在线观看| 免费的黄色小视频| 精品视频在线观看一区二区三区| 九九久久国产精品| 国产欧美精品| 亚洲 国产精品 日韩| 99久久精品国产高清一区二区| 精品视频在线观看视频免费视频 | 99久久精品国产片| 国产一区二区精品| 亚洲天堂一区二区三区四区| 成人在免费观看视频国产| 日本特黄一级| 毛片高清| 国产不卡在线观看视频| 日韩avdvd| 色综合久久天天综线观看| 精品在线视频播放| 深夜做爰性大片中文| 国产一级生活片| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产麻豆精品| 在线观看成人网| 亚洲精品中文一区不卡| 国产美女在线一区二区三区| 国产亚洲精品成人a在线| 成人影院一区二区三区| 久久精品免视看国产明星 | 日本伦理网站| 黄色福利片| 国产高清视频免费观看| 九九国产| 欧美a级成人淫片免费看| 国产国语在线播放视频| 高清一级淫片a级中文字幕 | 国产视频一区在线| 国产激情视频在线观看| 麻豆午夜视频| 亚洲天堂免费| 亚久久伊人精品青青草原2020| 欧美a免费| 日韩在线观看网站| 国产91视频网| 黄色短视屏| 台湾美女古装一级毛片| 国产网站免费在线观看| 四虎影视久久久免费| 国产激情视频在线观看| 久草免费在线视频| 日韩中文字幕一区| 九九热国产视频| 久草免费在线视频| 国产91精品露脸国语对白| 天堂网中文在线| 国产视频一区二区在线观看| 精品在线观看国产| 成人免费观看视频| 国产精品1024永久免费视频| 夜夜操网| 国产一区精品| 高清一级片| 亚洲女初尝黑人巨高清在线观看| 一级女性全黄久久生活片| 久久福利影视| 日本免费看视频| 高清一级片| 青青久久国产成人免费网站| 欧美激情伊人| 精品久久久久久中文字幕2017| 国产不卡在线看| 成人高清免费| 一级女性全黄久久生活片| 久久成人性色生活片| 一a一级片| 九九九在线视频| 青青久热| 欧美激情一区二区三区视频| 亚洲女人国产香蕉久久精品| 国产激情视频在线观看| 九九九国产| 日日夜夜婷婷| 日本在线不卡视频| 999精品在线| 日韩中文字幕一区二区不卡| 精品久久久久久中文| 天天色成人网| a级黄色毛片免费播放视频| 二级片在线观看| 日韩免费在线| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 成人免费观看的视频黄页| 精品视频在线看 | 国产视频久久久久| 欧美国产日韩在线| 欧美国产日韩久久久| 日本特黄一级| 九九精品影院| 欧美爱爱动态| 久草免费在线观看| 亚洲精品影院久久久久久| 免费毛片播放| 国产激情一区二区三区| 欧美1区| 可以免费看污视频的网站| 欧美a级片视频| 国产a免费观看| 国产精品免费久久| 国产欧美精品| 日日爽天天| 韩国三级一区| 99久久精品国产国产毛片| 一级毛片视频播放| 亚州视频一区二区| 韩国三级一区| 免费国产一级特黄aa大片在线| 亚欧成人乱码一区二区| 青青久热| 精品视频免费在线| 九九热精品免费观看| 美女免费精品高清毛片在线视| 成人免费一级毛片在线播放视频| 国产精品1024永久免费视频| 国产成人精品综合久久久| 91麻豆国产| 精品毛片视频| 黄色短视屏| 成人在免费观看视频国产| 国产视频在线免费观看| 97视频免费在线观看| 四虎影视久久久免费| 天天做日日爱| 久久精品免视看国产明星 | 毛片高清| 成人高清视频在线观看| 久久成人性色生活片| 久久99爰这里有精品国产| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 亚洲精品久久玖玖玖玖| 九九国产| 欧美激情一区二区三区在线播放| 成人影视在线播放| 日韩在线观看免费完整版视频| 韩国毛片免费大片| 日韩中文字幕一区| 欧美1区| 久久精品欧美一区二区| 四虎影视久久久| 日韩中文字幕在线亚洲一区| 欧美a级片视频| 国产韩国精品一区二区三区| 深夜做爰性大片中文| 999精品视频在线| 一级片片| 国产一区二区精品尤物| 成人免费高清视频| 亚洲 国产精品 日韩| 午夜激情视频在线播放| 91麻豆精品国产自产在线| 一级片片| 欧美激情一区二区三区在线| 亚洲精品影院久久久久久| 韩国毛片免费| 国产网站免费在线观看| 久久国产精品永久免费网站| 午夜在线亚洲男人午在线| 美国一区二区三区| 99久久精品国产片| 欧美激情一区二区三区中文字幕| 四虎影视久久久免费|