使用分布式I/O構(gòu)建實(shí)時(shí)系統(tǒng)
概覽
本文引用地址:http://m.butianyuan.cn/article/193732.htm這篇文章討論了使用分布式I/O進(jìn)行實(shí)時(shí)部署系統(tǒng)的設(shè)計(jì)。美國(guó)國(guó)家儀器公司推出了NI 9144擴(kuò)展機(jī)箱,用于確定性以太網(wǎng)中的NI CompactRIO和可編程自動(dòng)化控制器(PAC)系統(tǒng)。該C系列模塊的8槽機(jī)箱,與LabVIEW實(shí)時(shí)模塊的強(qiáng)大功能相結(jié)合,為確定性分布式I/O提供了便捷的解決方案。此外,您可以使用LabVIEW FPGA模塊對(duì)NI 9144進(jìn)行編程,建立能夠完成自定義定時(shí)和在線處理的智能分布式設(shè)備。
目錄
介紹
當(dāng)你需要在實(shí)時(shí)控制系統(tǒng)中設(shè)計(jì)分布式I/O時(shí),你將怎么辦?首要問(wèn)題就是如何在添加I/O的同時(shí),不犧牲現(xiàn)有實(shí)時(shí)系統(tǒng)的確定性。在沒(méi)有實(shí)時(shí)通信協(xié)議的情況下,你可能需要借助于數(shù)字I/O模塊的共享時(shí)鐘或硬件觸發(fā)器對(duì)多個(gè)實(shí)時(shí)控制器進(jìn)行同步。但隨著添加的控制器越來(lái)越多,同步的復(fù)雜度使工作變得很費(fèi)時(shí)而且很難處理,特別是需要分布式I/O時(shí)。
圖1 添加確定性分布式I/O的復(fù)雜解決方案
理想的解決方案包含使用高速、確定性的通信協(xié)議,在分布式I/O節(jié)點(diǎn)間傳遞數(shù)據(jù),同時(shí)使用相同或相容的NI軟硬件平臺(tái)。
NI 9144擴(kuò)展機(jī)箱
NI 9144擴(kuò)展機(jī)箱為用戶的NI CompactRIO或PAC系統(tǒng)添加了確定性的以太網(wǎng)I/O。這個(gè)用于C系列模塊的8槽堅(jiān)固機(jī)箱,利用開(kāi)放的實(shí)時(shí)以太網(wǎng)協(xié)議EtherCAT進(jìn)行確定性的通信。NI提供了多種實(shí)時(shí)嵌入式控制器,例如CompactRIO、PXI以及工業(yè)控制器,您已經(jīng)用來(lái)作為分布式系統(tǒng)的主控制器。此外,可以按菊花鏈的方式從主控制器中連接多個(gè)NI 9144從機(jī)箱,從而擴(kuò)展實(shí)時(shí)應(yīng)用。
圖2. 使用分布式I/O的NI實(shí)時(shí)系統(tǒng)
NI 9144是工業(yè)級(jí)的機(jī)箱,設(shè)計(jì)擁有極高的堅(jiān)固程度、可靠性和-40到70°C的工作范圍。為了自定義測(cè)量和控制系統(tǒng),用戶可以在30余種模擬和數(shù)字C系列模塊間進(jìn)行選擇。而且,在添加實(shí)時(shí)擴(kuò)展I/O時(shí),軟件配置和LabVIEW編程也被設(shè)計(jì)成易于使用的形式。
圖3. 用于C系列模塊的NI 9144擴(kuò)展機(jī)箱
相關(guān)鏈接
NI 9144擴(kuò)展機(jī)箱內(nèi)部原理
C系列I/O模塊的靈活性
由于NI 9144機(jī)箱是模塊化的擴(kuò)展系統(tǒng),用戶有著插入額外I/O模塊來(lái)集成更多測(cè)量類型和通道的靈活性。同時(shí),還可以附加另外的擴(kuò)展機(jī)箱,以在系統(tǒng)中加入更多的模塊插槽。每個(gè)機(jī)箱中所有的I/O模塊都可以自動(dòng)同步,而且網(wǎng)絡(luò)中的擴(kuò)展機(jī)箱也可以彼此同步。
每個(gè)C系列模塊包含了內(nèi)建的信號(hào)調(diào)理和信號(hào)隔離功能,對(duì)超越電壓范圍的信號(hào)及工業(yè)信號(hào)類型,諸如熱電偶、電阻、電壓、電流、應(yīng)力和加速度等進(jìn)行處理。與NI 9144機(jī)箱一樣,所有的C系列模塊都是經(jīng)過(guò)UL測(cè)試的,可以工作在工業(yè)溫度和沖擊的環(huán)境下。同時(shí),C系列I/O模塊在其它NI硬件平臺(tái)下是可以重用的,如嵌入式CompactRIO、USB CompactDAQ和Wi-Fi數(shù)據(jù)采集設(shè)備等。
美國(guó)國(guó)家儀器公司提供了使用LabVIEW FPGA的基礎(chǔ)I/O功能,對(duì)每個(gè)I/O模塊的輸入/輸出電路進(jìn)行直接硬件訪問(wèn),這為您提供了進(jìn)行板載信號(hào)處理的功能,例如濾波、快速傅立葉變換(FFT)、PWM、波形發(fā)生等等。此外,對(duì)于單點(diǎn)模擬與數(shù)字I/O,您可以方便地使用LabVIEW實(shí)時(shí)模塊中的NI掃描模式,對(duì)超過(guò)40個(gè)C系列模塊進(jìn)行編程。要獲取完整的兼容模塊列表,請(qǐng)查看C系列模塊兼容性圖表。NI 9144模塊位于確定性分布式I/O分類下。
圖4. 包含了特定傳感器連接頭、內(nèi)建式信號(hào)調(diào)理及A/D轉(zhuǎn)換器的C系列模塊
相關(guān)鏈接:
C系列家族產(chǎn)品視頻
C系列模塊兼容性圖表
LabVIEW實(shí)時(shí)模塊的方便擴(kuò)展性
使用LabVIEW軟件,用戶可以輕易地將確定性擴(kuò)展I/O集成到圖形化編程環(huán)境中。NI 9144的“箱外”經(jīng)驗(yàn)包含了在NI主控器上安裝NI工業(yè)級(jí)通信的EtherCAT驅(qū)動(dòng),這樣LabVIEW就可以自動(dòng)識(shí)別所有連接的從設(shè)備及設(shè)備模塊。LabVIEW實(shí)時(shí)模塊還提供了I/O變量,使用戶可以使用簡(jiǎn)單的拖放即可快速訪問(wèn)物理的I/O值。使用I/O強(qiáng)制和在線測(cè)試面板,用戶可以使用I/O變量來(lái)監(jiān)測(cè)系統(tǒng)性能并進(jìn)行高級(jí)的故障排除。需要了解I/O變量背后的LabVIEW技術(shù),請(qǐng)?jiān)L問(wèn)下面的鏈接。
圖5. 將NI 9144 I/O變量拖到LabVIEW VI中
相關(guān)鏈接
CompactRIO掃描模式介紹
確定性分布式I/O入門
LabVIEW FPGA帶來(lái)的高性能
除了NI 9144的默認(rèn)“箱外”經(jīng)驗(yàn)可以帶來(lái)最佳的使用方便性,每個(gè)NI 9144還包含了嵌入式Xilinx現(xiàn)場(chǎng)可編程門陣列(FPGA),您可以使用圖形化LabVIEW FPGA工具進(jìn)行自定義。由于使用了可重配置的邏輯門電路在硬件中執(zhí)行代碼,因此FPGA十分快捷、可靠,是在應(yīng)用中執(zhí)行任何實(shí)時(shí)控制、采集和定時(shí)功能的理想選擇。此外,為在多個(gè)分布式NI 9144模塊之間,提供了FPGA代碼同步的虛擬單點(diǎn)定時(shí)信號(hào)做同步,其抖動(dòng)小于100 ns。使用在NI 9144中嵌入的FPGA硬件,用戶能夠?qū)崿F(xiàn)定制觸發(fā)、在線處理以及用于模擬和數(shù)字I/O的控制。要獲取更多關(guān)于使用LabVIEW FPGA的信息,請(qǐng)?jiān)L問(wèn)以下鏈接。
圖6:LabVIEW FPGA為NI 9144 FPGA芯片提供了簡(jiǎn)便的圖形化編程工具。
評(píng)論