熟女人妻水多爽中文字幕,国产精品鲁鲁鲁,隔壁的少妇2做爰韩国电影,亚洲最大中文字幕无码网站

技術頻道

娓娓工業
您現在的位置: 中國傳動網 > 技術頻道 > 應用方案 > 適用于每個LabVIEW開發者的巧妙調試技巧

適用于每個LabVIEW開發者的巧妙調試技巧

時間:2013-09-09 11:51:30來源:NI

導語:?我們與JKI的LabVIEW程序架構師 ( Certified LabVIEW Architects, CLA ) 以及LabVIEW社區的朋友進行了交流,向他們學習一些快速識別、隔離和修復漏洞的“絕密”技巧。我們了解到以下幾個巧妙的調試技巧。

成為LabVIEW漏洞修復高手

如果您經常使用NI LabVIEW軟件,當軟件不能按照預期的情況運行時,您可能會有一個自己的調試技巧和技術工具箱。 這些技巧和技術有些是常用的,而剩下的可能是您自己摸索出來的。

圖1.巧妙的調試方法能夠清除漏洞。 (Brian Searle攝)

圖1.巧妙的調試方法能夠清除漏洞。 (Brian Searle攝)

我們與JKI的LabVIEW程序架構師 ( Certified LabVIEW Architects, CLA ) 以及LabVIEW社區的朋友進行了交流,向他們學習一些快速識別、隔離和修復漏洞的“絕密”技巧。我們了解到以下幾個巧妙的調試技巧。

利用探針

探針是LabVIEW調試的第一個也是最簡單的工具,但它們卻是非常強大的工具。您可極

其輕松地將探針置于線路上,在查找問題過程中不斷獲取信息。 以下是探針的幾個功能:

保存連線值功能

LabVIEW開發環境中的保存連線值功能經常會被忽略。 當您啟用某個VI的連線值保存功能時,LabVIEW將自動存儲該VI框圖上每根連線的最后一個值。 然后,將光標懸停在任一連線上,即使該VI未運行,探針工具也將出現提示信,顯示該連線最后一個值。

圖2.保存連線值按鈕就在“燈泡”圖標旁邊。

自定義探針,無需編寫任何代碼

運用LabVIEW自定義探針,您無需編寫任何代碼就可創建強大、復雜的調試工具。 例如,您可在“自定義探針”>>“控件”>> “波形圖”中創建顯示任意數字連線的先前值的“歷史探針”。 這可幫助您發現您正在探究的數據的模式或趨勢,而無需編寫特殊的探針代碼。

圖3. 使用波形圖探針顯示簡單數字連線的歷史值。

圖3. 使用波形圖探針顯示簡單數字連線的歷史值。

從LabVIEW工具網絡獲取自定義探針

借用他人創建的探針來擴展您的工具箱。 SAPHIR在LabVIEW工具網絡上提供了一系列免費的自定義LabVIEW探針。 您只需下載安裝VI軟件包管理器 (VIPM)社區版(也是免費的)、搜索ViBox,再通過幾次單擊就可安裝探針。

如果您正在使用LabVIEW 2011,您還可通過單擊LabVIEW入門指南窗口的“查找LabVIEW附加工具...”從LabVIEW工具網絡上獲取ViBox。

圖4.使用VIPM安裝SAPHIR自定義探針。

調用時掛起

許多LabVIEW程序架構師甚至不知道LabVIEW具備該項功能。“調用時掛起”功能可將執行掛起,使您可以進行以下任一或所有操作:

在VI運行之前隨意更改VI的控件值。

VI返回調用程序時隨意更改顯示件的值。

重復運行VI,而無需將執行返回至調用程序。

完全跳過VI執行,返回至調用VI。

圖 5. 在子VI節點設置窗口中,選擇“調用時掛起”功能。

圖 5. 在子VI節點設置窗口中,選擇“調用時掛起”功能。

對于調用時掛起功能,NI做了簡要說明,見此處。 然而,熟悉該功能的最佳方法還是親自動手實踐。

未連線的前面板控件和顯示件

為FIRST(崇尚發揚科學技術)機器人競賽團隊推薦了一項技術,這項技術對于專業的LabVIEW開發人員也非常有用

Ben建議在VI中添加前面板控件或顯示控件,但并不與連線板連接。 這些控件和顯示件與“調試”輸入或輸出工作方式類似,您可在測試時對其進行手動控制。 這可使您更容易在應用中生成偶然或極端事件,而無需繁多的支持或仿真代碼的寫入。

您還可以在已建應用程序中使用這些調試控件和顯示件,前提是LabVIEW應用程序生成器包含了VI前面板。

參閱LVMastery.com上的介紹,進一步了解Ben建議的調試子VI。

執行跟蹤

如果其他方法都失敗的情況下,有時您所能做的只有逐步跟蹤代碼。 遇到此類問題時,您可通過幾種方法在LabVIEW內進行執行跟蹤。

最明顯的方法是使用LabVIEW中內置的“高亮顯示執行”功能,也稱為“燈泡”。 如果說探針是LabVIEW調試的首要工具,燈泡則位列第二。 但是,如果碰到復雜或是時間相關的漏洞,您則可選擇其他更有效的工具。

圖6. 執行跟蹤功能比燈泡功能更多。

 

圖6. 執行跟蹤功能比燈泡功能更多。

跟蹤磁盤或內存

啟動執行跟蹤的一個簡單方法是在其中一個子VI中記錄一個連線值。 您可編寫一個簡單的VI,將該值記錄到文件中,或甚至可創建一個自定義探針來顯示連線的歷史值。 通常通過這樣一個簡單的跟蹤您就可收集足夠的信息來幫助您找到漏洞的原因。

NI LabVIEW桌面執行跟蹤工具包

如果要調試一個大型的高度并行應用程序,則包含NI開發者套件 2011的LabVIEW桌面執行跟蹤工具包就是您進行LabVIEW代碼分析的“利器”。 它可提供關于正在運行的應用程序的各種信息,包括詳細的內存分配和再分配、事件生成、由代碼定義的自定義信息。 Austin LabVIEW程序架構師論壇的創建人之一Fabiola De la Cueva指出該工具包可用于調試已崩潰的應用程序,因為它是獨立于LabVIEW之外運行的。

圖7.  手動執行追蹤具有風險(圖片采自Oliver Widder)

圖7.  手動執行追蹤具有風險(圖片采自Oliver Widder)

專業的LabVIEW開發人員很慶幸,因為LabVIEW桌面執行跟蹤工具包已包含在NI開發者套件2011之中,不會產生額外的費用。

單元測試

測試驅動開發(TDD) 是一種軟件工程技術,可幫助您從頭創建更好的代碼,同時它也是幫助您調試現有代碼的一個有效工具。

在TDD中,當您發現應用程序存在漏洞時,調試流程的第一個步驟就是創建一個可重現漏洞并導致測試失敗的單元測試。只有到那時候,您才確實可以開始嘗試修復問題。 如果單元測試通過,則表明您已清除了該漏洞。

圖8. 你在哪里測試代碼?

圖8. 你在哪里測試代碼?

這種漏洞修復方法需要費點時間,但是相比其他較不精確的方法,它具有以下幾個優點:

1.單元測試具有可追溯性,可完整顯示漏洞的發生過程以及您如何將漏洞隔離

2.您或其他開發者可隨時輕松驗證或重新驗證您的修復,而無需記住激活漏洞的詳細信息。

3.單元測試可在您的項目中與其他測試一起自動執行,因此漏洞如果再次出現,您可以立即知曉。

針對單元測試有兩個主要的LabVIEW附加工具,TDD方法可以與另一個一同使用。 查看JKI的免費VI測試儀LabVIEW附加工具或參閱Eli Kerry的LabVIEW軟件工程指南,進一步解LabVIEW單元測試框架工具包,它已包含在NI開發者套件之內。

標簽:

點贊

分享到:

上一篇:使用LabVIEW和CompactRIO開發...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業自動化與智能制造的全媒體“互聯網+”創新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業執照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號

主站蜘蛛池模板: 封开县| 枣阳市| 峡江县| 金秀| 沾益县| 宁波市| 永平县| 曲松县| 类乌齐县| 新安县| 大方县| 中江县| 克什克腾旗| 手游| 永城市| 定边县| 大城县| 筠连县| 通辽市| 客服| 古浪县| 霸州市| 青阳县| 都江堰市| 玉树县| 凉城县| 邢台县| 齐河县| 苏州市| 华坪县| 黄浦区| 古浪县| 中阳县| 获嘉县| 北海市| 海盐县| 什邡市| 郑州市| 平乡县| 衡阳县| 汤原县|