环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產(chǎn)品分類

當(dāng)前位置: 首頁(yè) > 工業(yè)電氣產(chǎn)品 > 端子與連接器 > 線路板連接器

類型分類:
科普知識(shí)
數(shù)據(jù)分類:
線路板連接器

適用于每個(gè)LabVIEW開(kāi)發(fā)者的巧妙調(diào)試技巧

發(fā)布日期:2022-04-27 點(diǎn)擊率:117 品牌:誒比_AB

成為L(zhǎng)abVIEW漏洞修復(fù)高手

如果您經(jīng)常使用NI LabVIEW軟件,當(dāng)軟件不能按照預(yù)期的情況運(yùn)行時(shí),您可能會(huì)有一個(gè)自己的調(diào)試技巧和技術(shù)工具箱。 這些技巧和技術(shù)有些是常用的,而剩下的可能是您自己摸索出來(lái)的。


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

我們與JKI的LabVIEW程序架構(gòu)師(Certified LabVIEW Architects, CLA)以及LabVIEW社區(qū)的朋友進(jìn)行了交流,向他們學(xué)習(xí)一些快速識(shí)別、隔離和修復(fù)漏洞的“絕密”技巧。我們了解到以下幾個(gè)巧妙的調(diào)試技巧。

利用探針

探針是LabVIEW調(diào)試的第一個(gè)也是最簡(jiǎn)單的工具,但它們卻是非常強(qiáng)大的工具。您可極其輕松地將探針置于線路上,在查找問(wèn)題過(guò)程中不斷獲取信息。 以下是探針的幾個(gè)功能:

保存連線值功能

LabVIEW開(kāi)發(fā)環(huán)境中的保存連線值功能經(jīng)常會(huì)被忽略。 當(dāng)您啟用某個(gè)VI的連線值保存功能時(shí),LabVIEW將自動(dòng)存儲(chǔ)該VI框圖上每根連線的最后一個(gè)值。 然后,將光標(biāo)懸停在任一連線上,即使該VI未運(yùn)行,探針工具也將出現(xiàn)提示信,顯示該連線最后一個(gè)值。


圖2.保存連線值按鈕就在“燈泡”圖標(biāo)旁邊

自定義探針,無(wú)需編寫(xiě)任何代碼

運(yùn)用LabVIEW自定義探針,您無(wú)需編寫(xiě)任何代碼就可創(chuàng)建強(qiáng)大、復(fù)雜的調(diào)試工具。 例如,您可在“自定義探針”>>“控件”>> “波形圖”中創(chuàng)建顯示任意數(shù)字連線的先前值的“歷史探針”。 這可幫助您發(fā)現(xiàn)您正在探究的數(shù)據(jù)的模式或趨勢(shì),而無(wú)需編寫(xiě)特殊的探針代碼。


圖3. 使用波形圖探針顯示簡(jiǎn)單數(shù)字連線的歷史值

從LabVIEW工具網(wǎng)絡(luò)獲取自定義探針

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

如果您正在使用LabVIEW 2011,您還可通過(guò)單擊LabVIEW入門(mén)指南窗口的“查找LabVIEW附加工具...”從LabVIEW工具網(wǎng)絡(luò)上獲取ViBox。


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

調(diào)用時(shí)掛起

許多LabVIEW程序架構(gòu)師甚至不知道LabVIEW具備該項(xiàng)功能。“調(diào)用時(shí)掛起”功能可將執(zhí)行掛起,使您可以進(jìn)行以下任一或所有操作:

在VI運(yùn)行之前隨意更改VI的控件值。
VI返回調(diào)用程序時(shí)隨意更改顯示件的值。
重復(fù)運(yùn)行VI,而無(wú)需將執(zhí)行返回至調(diào)用程序。
完全跳過(guò)VI執(zhí)行,返回至調(diào)用VI。


圖 5. 在子VI節(jié)點(diǎn)設(shè)置窗口中,選擇“調(diào)用時(shí)掛起”功能

對(duì)于調(diào)用時(shí)掛起功能,NI做了簡(jiǎn)要說(shuō)明,見(jiàn)此處。 然而,熟悉該功能的最佳方法還是親自動(dòng)手實(shí)踐。

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

為FIRST(崇尚發(fā)揚(yáng)科學(xué)技術(shù))機(jī)器人競(jìng)賽團(tuán)隊(duì)推薦了一項(xiàng)技術(shù),這項(xiàng)技術(shù)對(duì)于專業(yè)的LabVIEW開(kāi)發(fā)人員也非常有用

Ben建議在VI中添加前面板控件或顯示控件,但并不與連線板連接。 這些控件和顯示件與“調(diào)試”輸入或輸出工作方式類似,您可在測(cè)試時(shí)對(duì)其進(jìn)行手動(dòng)控制。 這可使您更容易在應(yīng)用中生成偶然或極端事件,而無(wú)需繁多的支持或仿真代碼的寫(xiě)入。

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

參閱LVMastery.com上的介紹,進(jìn)一步了解Ben建議的調(diào)試子VI。

執(zhí)行跟蹤

如果其他方法都失敗的情況下,有時(shí)您所能做的只有逐步跟蹤代碼。 遇到此類問(wèn)題時(shí),您可通過(guò)幾種方法在LabVIEW內(nèi)進(jìn)行執(zhí)行跟蹤。

最明顯的方法是使用LabVIEW中內(nèi)置的“高亮顯示執(zhí)行”功能,也稱為“燈泡”。 如果說(shuō)探針是LabVIEW調(diào)試的首要工具,燈泡則位列第二。 但是,如果碰到復(fù)雜或是時(shí)間相關(guān)的漏洞,您則可選擇其他更有效的工具。


圖6. 執(zhí)行跟蹤功能比燈泡功能更多

跟蹤磁盤(pán)或內(nèi)存

啟動(dòng)執(zhí)行跟蹤的一個(gè)簡(jiǎn)單方法是在其中一個(gè)子VI中記錄一個(gè)連線值。 您可編寫(xiě)一個(gè)簡(jiǎn)單的VI,將該值記錄到文件中,或甚至可創(chuàng)建一個(gè)自定義探針來(lái)顯示連線的歷史值。 通常通過(guò)這樣一個(gè)簡(jiǎn)單的跟蹤您就可收集足夠的信息來(lái)幫助您找到漏洞的原因。

NI LabVIEW桌面執(zhí)行跟蹤工具包

如果要調(diào)試一個(gè)大型的高度并行應(yīng)用程序,則包含NI開(kāi)發(fā)者套件 2011的LabVIEW桌面執(zhí)行跟蹤工具包就是您進(jìn)行LabVIEW代碼分析的“利器”。 它可提供關(guān)于正在運(yùn)行的應(yīng)用程序的各種信息,包括詳細(xì)的內(nèi)存分配和再分配、事件生成、由代碼定義的自定義信息。 Austin LabVIEW程序架構(gòu)師論壇的創(chuàng)建人之一Fabiola De la Cueva指出該工具包可用于調(diào)試已崩潰的應(yīng)用程序,因?yàn)樗仟?dú)立于LabVIEW之外運(yùn)行的。


圖7. 手動(dòng)執(zhí)行追蹤具有風(fēng)險(xiǎn)(圖片采自O(shè)liver Widder)

專業(yè)的LabVIEW開(kāi)發(fā)人員很慶幸,因?yàn)長(zhǎng)abVIEW桌面執(zhí)行跟蹤工具包已包含在NI開(kāi)發(fā)者套件2011之中,不會(huì)產(chǎn)生額外的費(fèi)用。

單元測(cè)試

測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(TDD) 是一種軟件工程技術(shù),可幫助您從頭創(chuàng)建更好的代碼,同時(shí)它也是幫助您調(diào)試現(xiàn)有代碼的一個(gè)有效工具。

在TDD中,當(dāng)您發(fā)現(xiàn)應(yīng)用程序存在漏洞時(shí),調(diào)試流程的第一個(gè)步驟就是創(chuàng)建一個(gè)可重現(xiàn)漏洞并導(dǎo)致測(cè)試失敗的單元測(cè)試。只有到那時(shí)候,您才確實(shí)可以開(kāi)始嘗試修復(fù)問(wèn)題。 如果單元測(cè)試通過(guò),則表明您已清除了該漏洞。


圖8. 你在哪里測(cè)試代碼?

這種漏洞修復(fù)方法需要費(fèi)點(diǎn)時(shí)間,但是相比其他較不精確的方法,它具有以下幾個(gè)優(yōu)點(diǎn):

單元測(cè)試具有可追溯性,可完整顯示漏洞的發(fā)生過(guò)程以及您如何將漏洞隔離
您或其他開(kāi)發(fā)者可隨時(shí)輕松驗(yàn)證或重新驗(yàn)證您的修復(fù),而無(wú)需記住激活漏洞的詳細(xì)信息。
單元測(cè)試可在您的項(xiàng)目中與其他測(cè)試一起自動(dòng)執(zhí)行,因此漏洞如果再次出現(xiàn),您可以立即知曉。

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

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產(chǎn)品

更多
主站蜘蛛池模板: 回转炉,外热式回转窑,回转窑炉-淄博圣元窑炉工程有限公司 | 手板-手板模型-手板厂-手板加工-生产厂家,[东莞创域模型] | 云南成考网_云南成人高考报名网| 短信通106短信接口验证码接口群发平台_国际短信接口验证码接口群发平台-速度网络有限公司 | 碳化硅,氮化硅,冰晶石,绢云母,氟化铝,白刚玉,棕刚玉,石墨,铝粉,铁粉,金属硅粉,金属铝粉,氧化铝粉,硅微粉,蓝晶石,红柱石,莫来石,粉煤灰,三聚磷酸钠,六偏磷酸钠,硫酸镁-皓泉新材料 | Boden齿轮油泵-ketai齿轮泵-yuken油研-无锡新立液压有限公司 | 压装机-卧式轴承轮轴数控伺服压装机厂家[铭泽机械] | 闭端端子|弹簧螺式接线头|防水接线头|插线式接线头|端子台|电源线扣+护线套|印刷电路板型端子台|金笔电子代理商-上海拓胜电气有限公司 | 郑州爱婴幼师学校_专业幼师培训_托育师培训_幼儿教育培训学校 | 菲希尔FISCHER测厚仪-铁素体检测仪-上海吉馨实业发展有限公司 | 门禁卡_智能IC卡_滴胶卡制作_硅胶腕带-卡立方rfid定制厂家 | 机制砂选粉机_砂石选粉机厂家-盐城市助成粉磨科技有限公司 | Maneurop/美优乐压缩机,活塞压缩机,型号规格,技术参数,尺寸图片,价格经销商 | 上海瑶恒实业有限公司|消防泵泵|离心泵|官网 | 微型气象仪_气象传感器_防爆气象传感器-天合传感器大全 | YT保温材料_YT无机保温砂浆_外墙保温材料_南阳银通节能建材高新技术开发有限公司 | 石膏基自流平砂浆厂家-高强石膏基保温隔声自流平-轻质抹灰石膏粉砂浆批发-永康市汇利建设有限公司 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 安全阀_弹簧式安全阀_美标安全阀_工业冷冻安全阀厂家-中国·阿司米阀门有限公司 | 制丸机,小型中药制丸机,全自动制丸机价格-甘肃恒跃制药设备有限公司 | 合肥网带炉_安徽箱式炉_钟罩炉-合肥品炙装备科技有限公司 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 亚克力制品定制,上海嘉定有机玻璃加工制作生产厂家—官网 | 磁力去毛刺机_去毛刺磁力抛光机_磁力光饰机_磁力滚抛机_精密金属零件去毛刺机厂家-冠古科技 | 河北凯普威医疗器材有限公司,高档轮椅系列,推车系列,座厕椅系列,协步椅系列,拐扙系列,卫浴系列 | 商标转让-购买商标专业|放心的商标交易网-蜀易标商标网 | 中国品牌门窗网_中国十大门窗品牌_著名门窗品牌 | AR开发公司_AR增强现实_AR工业_AR巡检|上海集英科技 | 三板富 | 专注于新三板的第一垂直服务平台| 金属清洗剂,防锈油,切削液,磨削液-青岛朗力防锈材料有限公司 | 河南卓美创业科技有限公司-河南卓美防雷公司-防雷接地-防雷工程-重庆避雷针-避雷器-防雷检测-避雷带-避雷针-避雷塔、机房防雷、古建筑防雷等-山西防雷公司 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 光栅尺厂家_数显表维修-苏州泽升精密机械 | 茶叶百科网-茶叶知识与茶文化探讨分享平台 | BOE画框屏-触摸一体机-触控查询一体机-触摸屏一体机价格-厂家直销-触发电子 | 湖南成人高考报名-湖南成考网| 硫化罐-电加热蒸汽硫化罐生产厂家-山东鑫泰鑫智能装备有限公司 | 深圳希玛林顺潮眼科医院(官网)│深圳眼科医院│医保定点│香港希玛林顺潮眼科中心连锁品牌 | 联系我们-腾龙公司上分客服微信19116098882 | 新车测评网_网罗汽车评测资讯_汽车评测门户报道 | 无轨电动平车_轨道平车_蓄电池电动平车★尽在新乡百特智能转运设备有限公司 |