æ‡‰ç”¨é ˜åŸŸï¼š é™¢æ ¡
使用的產(chÇŽn)å“:美國National Instruments çš„LabVIEW 6.1軟件和PXI-1000ã€PXI-1001ã€PXI-1002 ã€PXI-8330 ã€PXI-6070E ã€PXI-6071E ã€SCXI-1520 ã€SCXI-1531 ã€SCB-100ã€SCXI-1314 ç‰ç¡¬ä»¶è¨å‚™ã€‚
挑戰(zhà n)ï¼šå¿«é€Ÿå»ºç«‹èƒ½å¤ é€²è¡ŒåŸŽå¸‚è»Œé“車輛轉(zhuÇŽn)呿ž¶é›¶éƒ¨ä»¶ç‰¹æ€§æ¸¬å®šå’Œå‹•åŠ›å¸æ€§èƒ½æ¸¬å®šçš„高性能測試平臺。
應用方案: 使用美國National Instruments å…¬å¸çš„PXI 測試è¨å‚™å’ŒLabVIEW6.1 軟件建立基于虛擬儀器技術的轉(zhuÇŽn)呿ž¶æ¸¬è©¦å¹³è‡ºï¼›åŒæ™‚,開發(fÄ)å‡ºç›¸æ‡‰çš„åŽæœŸåˆ†æžè™•ç†è»Ÿä»¶ã€‚
介紹
在城市軌é“車輛轉(zhuÇŽn)呿ž¶æ¸¬è©¦ä¸ï¼Œéœ€è¦æ¸¬é‡å¤§é‡çš„æ‡‰è®Šã€é›»å£“å’ŒåŠ é€Ÿåº¦ç‰ä¿¡è™Ÿï¼Œé€™ä¸åƒ…è¦æ±‚數(shù)據(jù)的高速實時采集而且也è¦è¨å‚™å…·æœ‰å¾ˆé«˜çš„ç©©(wÄ›n)定性和å¯é 性。使用美國National Instruments 高效å¯é çš„PXI 總線è¨å‚™å’ŒLabVIEW 快速圖形開發(fÄ)ç’°(huán)境,快速建立起的多功能轉(zhuÇŽn)呿ž¶æ¸¬è©¦å¹³è‡ºã€‚å¯¦è¸æ‡‰ç”¨è‰æ˜Žï¼Œå®Œå…¨é”到了系統(tÇ’ng)è¨è¨ˆæ™‚çš„å„é …è¦æ±‚。
基于PXI 總線的系統(tǒng)架構
系統(tÇ’ng)çµæ§‹å¦‚圖1 所示,這是一個由信號采集與調(dià o)ç†æ¨¡å¡Šï¼ˆSCXI-1531〠SCXI-1520ã€SCB-100 )ã€PXI 數(shù)據(jù)采集å¡ï¼ˆPXI-6070Eã€PXI-6071E)和PXI 接å£å¡ï¼ˆPXI-8330,采用MXI-3 技術)組æˆçš„æ•¸(shù)據(jù)實時采集系統(tÇ’ng)。在這個系統(tÇ’ng)ä¸ï¼Œç”±äºŽé‡‡ç”¨äº†PXIå’ŒMXI-3總線技
è¡“ï¼Œå› æ¤èƒ½å¤ 充分ä¿è‰å¯¦æ™‚數(shù)據(jù)é‡‡æ¨£æ™‚çš„å¸¶å¯¬è¦æ±‚。
[align=center]

圖1 系統(tÇ’ng)çµæ§‹åœ–[/align]
PXI 和MXI-3 技術
PXI 是1997 å¹´NI å…¬å¸ç™¼(fÄ)å¸ƒçš„ä¸€ç¨®å…¨æ–°çš„é–‹æ”¾æ€§ã€æ¨¡å¡ŠåŒ–儀器總線è¦(guÄ«)范,是PCI åœ¨å„€å™¨é ˜åŸŸçš„æ“´å±•ï¼ˆPCI eXtensions for Instrumentation) 。它將CompactPCI è¦(guÄ«)范定義的PCI總線技術發(fÄ)展æˆé©åˆäºŽè©¦é©—ã€æ¸¬é‡èˆ‡æ•¸(shù)據(jù)é‡‡é›†å ´åˆæ‡‰ç”¨çš„æ©Ÿæ¢°ã€é›»æ°£å’Œè»Ÿä»¶è¦(guÄ«)范,從而形æˆäº†æ–°çš„è™›æ“¬å„€å™¨é«”ç³»çµæ§‹ã€‚制訂PXI è¦(guÄ«)范的目的是為了將臺å¼PC çš„æ€§èƒ½åƒ¹æ ¼æ¯”å„ª(yÅu)勢與PCI總線é¢å‘å„€å™¨é ˜åŸŸçš„å¿…è¦æ“´å±•完美地çµåˆèµ·ä¾†ï¼Œå½¢æˆä¸€ç¨®ä¸»æµçš„虛擬儀器測試平臺。MXI-3 技術是一種PCIç¸½ç·šä¹‹é–“çš„è»Ÿç¡¬ä»¶é€æ˜Žçš„高性能連接技術,ä¸åƒ…å¯ä»¥é€²è¡ŒPXI/CompactPCI 機箱之間的連接而且å¯ä»¥è®“主控計算機通éŽé€æ˜Žçš„軟硬件連接實ç¾(xià n)å°PXI 系統(tÇ’ng)的直接控制。MXI-3 技術也æä¾›äº†æœ€é«˜å¯é”1.5Gb/s 的串行數(shù)據(jù)連接。該轉(zhuÇŽn)呿ž¶æ¸¬è©¦å¹³è‡ºé‡‡ç”¨å…·æœ‰PXI å’ŒMXI-3 技術的NIå…¬å¸ç”¢(chÇŽn)å“建立測試系統(tÇ’ng),與使用傳統(tÇ’ng)的測試技術相比,ä¸åƒ…å…·æœ‰æ›´é«˜çš„æ€§åƒ¹æ¯”ï¼Œè€Œä¸”ä½¿ç”¨ä¹Ÿæ›´åŠ ç°¡ä¾¿ã€éˆæ´»ï¼Œç‰¹åˆ¥æ˜¯å…¶ä¿¡è™Ÿèª¿(dià o)ç†æ¨¡å¡Šå…·æœ‰å®Œå…¨çš„程åºå¯æŽ§æ€§ï¼Œé€™äº›ç‰¹é»žéƒ½ç‚ºå¿«é€Ÿçµ„å»ºæˆæœ¬ä½Žå»‰ã€åŠŸèƒ½å¼·å¤§çš„æ¸¬è©¦å¹³è‡ºæä¾›äº†å‰ææ¢ä»¶ã€‚
系統(tÇ’ng)的軟件è¨è¨ˆ
“軟件就是儀器â€ï¼Œè»Ÿä»¶è¨è¨ˆå·²ç¶“(jÄ«ng)æˆç‚ºäº†åŸºäºŽè™›æ“¬å„€å™¨æŠ€è¡“的測試系統(tÇ’ng)的關éµç’°(huán)節(jié)。尤其是å°äºŽé‡‡ç”¨äº†NI å…¬å¸çš„PXI 測試è¨å‚™çš„æ¸¬è©¦ç³»çµ±(tÇ’ng),硬件的使用難度已大大é™ä½Žï¼Œåœ¨å…¶ä¸Šæ‰€è€—費的時間已越來越
å°‘ï¼Œå› æ¤èƒ½æŠŠæ›´å¤šçš„精力投入到軟件的系統(tÇ’ng)開發(fÄ)上。
在本系統(tÇ’ng)開發(fÄ)ä¸ï¼Œæˆ‘們采用LabVIEW 作為編程語言。LabVIEW 圖形化編程語言具有簡單易用ã€åŠŸèƒ½å¼·å¤§ç‰å„ª(yÅu)點,它能與NI å…¬å¸çš„硬件è¨å‚™é”到無縫çµåˆï¼Œæ˜¯é¦–é¸çš„開發(fÄ)工具。
本系統(tÇ’ng)分為實時測試å系統(tÇ’ng)(圖2)和數(shù)據(jù)處ç†èˆ‡å›žæ”¾å系統(tÇ’ng)(圖3)。實時測試å系統(tÇ’ng)實ç¾(xià n)å¤šé€šé“æ¸¬è©¦ä¿¡è™Ÿçš„實時采集ã€å˜å„²å’Œç›£(jiÄn)視。數(shù)據(jù)處ç†èˆ‡å›žæ”¾å系統(tÇ’ng)實ç¾(xià n)數(shù)據(jù)的事åŽå›žæ”¾å’Œåˆ†æžè™•ç†ã€‚
[align=center]

圖2 實時測試å系統(tÇ’ng)

圖3 數(shù)據(jù)采集與回放å系統(tÇ’ng)[/align]
在轉(zhuÇŽn)呿ž¶å‹•åŠ›å¸æ€§èƒ½æ¸¬è©¦éŽç¨‹ä¸ï¼Œéœ€è¦æ¸¬è©¦çš„åƒæ•¸(shù)å¤šé”æ•¸(shù)åå€‹ï¼Œå› æ¤ï¼Œæ¸¬è©¦ä¿¡æ¯ç®¡ç†å°±æˆç‚ºå¯¦æ™‚æ¸¬è©¦å¿…é ˆé¢è‡¨çš„任務。測試信æ¯ä¸»è¦åŒ…括硬件é…置信æ¯å’Œæ•¸(shù)據(jù)處ç†ä¿¡æ¯ï¼Œå‰è€…主è¦ç”¨äºŽç¡¬ä»¶çš„物ç†è¨ç½®å¦‚電橋的激勵電壓,åŽè€…用于數(shù)據(jù)顯示之å‰çš„變æ›è™•ç†å¦‚åŠ é€Ÿåº¦å‚³æ„Ÿå™¨çš„éˆæ•度系數(shù)。在本系統(tÇ’ng)開發(fÄ)éŽç¨‹ä¸é‡‡ç”¨äº†é¢å‘?qÅ«)Î¿è ¹å¤¹g和“ 多層â€é«”ç³»çµæ§‹ä¾†è§£æ±ºå¾©é›œçš„ä¿¡æ¯ç®¡ç†ç‰å•題。
如圖4 所示,系統(tÇ’ng)縱å‘分為用戶界é¢å±¤ã€æ¥(yè)å‹™é‚輯層和數(shù)據(jù)æœå‹™å±¤ã€‚用戶界é¢å±¤å¯¦ç¾(xià n)數(shù)據(jù)é¡¯ç¤ºä»¥åŠæŽ¥æ”¶ç”¨æˆ¶çš„è¼¸å…¥ä¿¡æ¯å¹¶é€²è¡Œå¿…è¦çš„æ ¡é©—。æ¥(yè)å‹™é‚è¼¯å±¤è² è²¬æ•¸(shù)據(jù)ä¿¡æ¯çš„轉(zhuÇŽn)æ›å’ŒæŽ§åˆ¶ã€‚數(shù)據(jù)æœå‹™å±¤æä¾›èˆ‡ç¡¬ä»¶é€²è¡Œäº¤äº’çš„è®€å¯«åŠŸèƒ½ï¼ŒåŒ…æ‹¬ç¡¬ä»¶åƒæ•¸(shù)çš„è¨ç½®ã€æ•¸(shù)據(jù)文件的ä¿å˜å’Œè®€å–。這種“多層â€çµæ§‹æœ‰åˆ©äºŽç³»çµ±(tÇ’ng)çš„ç¶è·å’ŒåŠŸèƒ½çš„æ“´å±•ã€‚
[align=center]

圖4 è»Ÿä»¶é«”ç³»çµæ§‹[/align]
應該說, NI å…¬å¸çš„NIDeveloperZone 為編程人員æä¾›äº†è¨±å¤šçš„ç·¨ç¨‹æ€æƒ³ï¼Œçµ¦äºˆäº†å¾ˆå¤šç·¨ç¨‹éˆæ„Ÿã€‚LabVIEW 語言,其本身沒有明確支æŒçš„é¢å‘?qÅ«)Î¿è ¹å¤¹g, 但å¯ä»¥ç”¨DataLogFileRefnum 控件作為å°è±¡å¼•用ç‰ä¾†é–“接實ç¾(xià n)é¢å‘?qÅ«)Î¿è ¹å¤¹g。å°è±¡ä½¿ç”¨æ–¹æ³•如圖5 所示,首先創(chuà ng)建å°è±¡ï¼Œç„¶åŽèª¿(dià o)用并執(zhÃ)行它的方法,使用完畢åŽå°‡å…¶é‡‹æ”¾ï¼Œåœ¨æ¤éŽç¨‹ä¸ï¼Œéœ€è¦å‚³éžç”±å‰µ(chuà ng)建å°è±¡VI 輸出的å°è±¡å¼•用,以ä¿è‰å°è±¡æ–¹æ³•VI çš„é †åˆ©åŸ·(zhÃ)行。
[align=center]

圖5 å°è±¡å‰µ(chuà ng)建與調(dià o)用[/align]
é¢å‘?qÅ«)ο蟮膱D形化編程有以下優(yÅu)點:
1. 更安全地使用數(shù)據(jù)。一般地,è¦åœ¨ä¸åŒVI 下使用åŒä¸€æ•¸(shù)據(jù)需è¦ä½¿ç”¨å…¨å±€è®Šé‡ï¼Œä½†â€œèµ¤è£¸è£¸â€çš„å…¨å±€è®Šé‡æ—¢ä¸åˆ©äºŽæ•¸(shù)據(jù)的并發(fÄ)控制,也ä¸åˆ©äºŽç³»çµ±(tÇ’ng)çš„ç¶è·èˆ‡æ“´å±•,ç¨ä¸å°å¿ƒå°‡å°Žè‡´ç¨‹åºçš„é‹è¡ŒéŒ¯èª¤ã€‚而使用é¢å‘?qÅ«)Î¿è ¹å¤¹g,由于數(shù)據(jù)是被å°è£çš„ï¼Œå¿…é ˆä½¿ç”¨å°è±¡çš„æ–¹æ³•來調(dià o)用內(nèi)部數(shù)據(jù)ã€‚å› æ¤ï¼Œå¯ä»¥åœ¨å°è±¡çš„æ–¹æ³•ä¸ï¼Œå»ºç«‹æ•¸(shù)據(jù)ä¿è·å’Œå±è”½ï¼Œå¯¦ç¾(xià n)數(shù)據(jù)的并發(fÄ)控制,使系統(tÇ’ng)æ›´åŠ å®‰å…¨ï¼›åŒæ™‚也有利于系統(tÇ’ng)çš„ç¶è·èˆ‡æ“´å±•。
2. 實ç¾(xià n)“拉進å¼â€çš„程åºçµæ§‹ã€‚æ¯å€‹æ•¸(shù)據(jù)傳é€éƒ½æœ‰å…©å€‹åƒèˆ‡è€…,供應者(supplier)產(chÇŽn)生并發(fÄ)逿•¸(shù)據(jù), 而使用者( consumer) å‰‡æŽ¥æ”¶å’Œè™•ç†æ•¸(shù)據(jù)ã€‚æ ¹æ“š(jù)誰發(fÄ)起數(shù)據(jù)的傳é€ï¼Œ å¯åˆ†ä½œå…©å€‹é¡žåž‹ã€‚在“ 推出å¼â€ï¼ˆpush)類型ä¸ï¼Œä¾›æ‡‰è€…發(fÄ)起數(shù)據(jù)傳é€ã€‚而在“拉進å¼â€ï¼ˆpull)類型ä¸ï¼Œç™¼(fÄ)起人是使用者。在LabVIEW ä¸ä¾›æ‡‰è€…和使用者å¯ä»¥æ˜¯æŽ§ä»¶ä¹Ÿå¯ä»¥æ˜¯åVI,其ä¸åVI 更多一些。å°äºŽæŸå€‹åVI ä¾†èªªï¼Œè‹¥åªæœ‰å°‘é‡è¼¸å…¥?yún)?shù)å¯ä»¥ç›´æŽ¥é€£å…¥å³å¯ï¼Œä½†å°äºŽå¤§é‡è¼¸å…¥?yún)?shù)時或者就ä¸çŸ¥å°‡ç”¨åˆ°ä»€ä¹ˆåƒæ•¸(shù)ä¿¡æ¯æ™‚,這時使用傳éžå°è±¡å¼•用就顯得方便多了。在程åºä¸ï¼Œæˆ‘們創(chuà ng)å»ºäº†ä¸€å€‹ä¿¡æ¯æœå‹™å°è±¡ï¼Œé›†ä¸å˜å„²å’Œç®¡ç†å„種é…置信æ¯å’Œåƒæ•¸(shù)ä¿¡æ¯ï¼Œåœ¨æ¯å€‹åVI ä¸ï¼Œæˆ‘å€‘å°‡é€™å€‹ä¿¡æ¯æœå‹™å°è±¡çš„引用傳éžé€²ä¾†ï¼Œè€ŒåŽï¼ŒåVI æ ¹æ“š(jù)自身的需è¦èª¿(dià o)ç”¨ä¿¡æ¯æœå‹™å°è±¡çš„æ–¹æ³•ç²å¾—所需è¦çš„æ•¸(shù)據(jù)。“拉進å¼â€ç¨‹åºçµæ§‹çš„優(yÅu)點:有利于使LabVIEW åœ–å½¢åŒ–ç¨‹åºæ›´åŠ ç°¡æ½”ã€é«˜æ•ˆï¼›æœ‰åˆ©äºŽç³»çµ±(tÇ’ng)çš„ç¶è·èˆ‡æ“´å±•;有利于建立統(tÇ’ng)ä¸€çš„ç¨‹åºæŽ¥å£ã€‚
3. 坿‡‰ç”¨ç¾(xià n)å·²æˆç†Ÿçš„å„種è¨è¨ˆæ¨¡å¼ä¾†å¯¦ç¾(xià n)高級功能。在é¢å‘?qÅ«)Î¿è ¹å¤¹g䏿œ‰è¨±å¤šæˆç†Ÿçš„è¨è¨ˆæ¨¡å¼å¯ä»¥å¯¦ç¾(xià n)程åºçš„快速開發(fÄ), 把其應用到LabVIEW ä¸ä¸åƒ…減少了開發(fÄ)時間,而且å¯ä»¥å¯¦ç¾(xià n)一些高級功能。比如,應用å°è±¡æŒä¹…技術,在實時測試å系統(tÇ’ng)ä¸ï¼Œä½¿æ¸¬è©¦çš„全部信æ¯å¾—以集ä¸ä¿å˜ï¼Œè€Œåœ¨äº‹åŽè™•ç†èˆ‡å›žæ”¾å系統(tÇ’ng)ä¸ï¼Œå°‡æ¸¬è©¦ä¿¡æ¯å°è±¡å¾žå·²ä¿å˜çš„ä¿¡æ¯ä¸æ¢å¾©å›žä¾†ï¼Œç‚ºæ•¸(shù)據(jù)分æžå’Œè™•ç†æä¾›ä¿¡æ¯æœå‹™ã€‚
在LabVIEW ä¸ç¶œåˆæ‡‰ç”¨ä»¥ä¸Šå…©ç¨®æŠ€è¡“,得到如圖6 所示簡化的實時測試å系統(tÇ’ng)的框圖程åºã€‚InputCheck åVI 進行用戶輸入信æ¯çš„æ ¡é©—。NewåVI 創(chuà ng)å»ºä¿¡æ¯æœå‹™å°è±¡å¹¶å°å…¶é€²è¡Œåˆå§‹åŒ–。DAQStart åVI è² è²¬ç¡¬ä»¶åƒæ•¸(shù)çš„è¨ç½®ï¼Œå…¶æ‰€éœ€ç¡¬ä»¶é…置信æ¯å¦‚采樣率ç‰åƒæ•¸(shù)皆å¯é€šéŽèª¿(dià o)ç”¨ä¿¡æ¯æœå‹™å°è±¡çš„æ–¹æ³•ç²å¾—。RealDisplay åVI ç®¡ç†æ•¸(shù)據(jù)的轉(zhuÇŽn)æ›å’Œå¯¦æ™‚顯示,它所需è¦çš„å‚³æ„Ÿå™¨éˆæ•度ç‰åƒæ•¸(shù)ä¿¡æ¯ä¹Ÿå¯ä»¥å¾žä¿¡æ¯æœå‹™å°è±¡ä¸å¾—åˆ°ã€‚åœ¨ç¨‹åºæœ€åŽï¼Œ ç”±ClassPersist åVI å°‡ä¿¡æ¯æœå‹™å°è±¡çš„ä¿¡æ¯â€œæŒä¹…化â€åˆ°æ–‡ä»¶ï¼Œä»¥ä¾¿åœ¨æ•¸(shù)據(jù)åŽæœŸè™•ç†æ™‚使用。
ç”±æ¤å¯è¦‹ï¼Œæ‡‰ç”¨é¢å‘?qÅ«)Î¿è ¹å¤¹g和“多層â€çµæ§‹ï¼Œå°äºŽå„ª(yÅu)化程åºçµæ§‹ã€æé«˜ç¨‹åºçš„éˆæ´»æ€§æ˜¯å¾ˆæœ‰å¹«åŠ©çš„ã€‚
數(shù)據(jù)顯示與控制
數(shù)據(jù)的準確實時顯示是實時測試的å¦ä¸€é‡è¦ä»»å‹™ã€‚這里采用“總-分â€çš„顯示ç–略。如圖2ï¼Œâ€œç¸½â€æ˜¯å°‡æ‰€æœ‰é€šé“在下é¢çš„æŽ§ä»¶æ•¸(shù)組ä¸é€²è¡Œåˆ†é¡žé¡¯ç¤ºã€‚â€œåˆ†â€æ˜¯ç•¶é¸ä¸æŸå€‹ç‰¹å®šé€šé“時在上é¢çš„æ³¢å½¢é¡¯ç¤ºæŽ§ä»¶ä¸æç¹ªå‡ºä¾†ã€‚
在框圖程åºç·¨ç¨‹æ™‚,將å„個顯示控件的引用傳éžåˆ°ä¸€å€‹RealDisplay åVI ä¸ï¼ˆå¦‚圖6)通éŽå…¶é€²è¡Œé¡¯ç¤ºçš„é›†ä¸æŽ§åˆ¶ã€‚é€™æ¨£æ—¢å¯¦ç¾(xià n)數(shù)據(jù)的顯示也å¯ä»¥æŽ§åˆ¶é¡¯ç¤ºæŽ§ä»¶çš„屬性,實ç¾(xià n)更好的交互性。在圖2 ä¸ï¼Œæ³¢å½¢é¡¯ç¤ºæŽ§ä»¶çš„PlotLegend 颿¿é¡¯ç¤ºäº†æ³¢å½¢èˆ‡é€šé“çš„å°æ‡‰é—œç³»ï¼Œå®ƒå°±æ˜¯é€šéŽå°æ³¢å½¢æŽ§ä»¶çš„屬性進行控制而實ç¾(xià n)的。
[align=center]

圖6 實施測試å系統(tÇ’ng)的框圖程åº[/align]
çµè«–
應用美國NI å…¬å¸LabVIEWå’ŒPXI ç‰å…ˆé€²çš„虛擬儀器技術快速建立起城市軌é“車輛轉(zhuÇŽn)呿ž¶æ¸¬è©¦å¹³è‡ºï¼Œå°‡é¢å‘?qÅ«)ο蟮木幊碳夹g和“多層â€é«”ç³»çµæ§‹æ‡‰ç”¨åˆ°æ¸¬è©¦ç¨‹åºé–‹ç™¼(fÄ)上,æé«˜äº†ç³»çµ±(tÇ’ng)çš„å¯ç¶è·æ€§å’Œå¯æ“´å±•性。