




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、重慶大學(xué)碩士學(xué)位論文基于LabVIEW的多任務(wù)測控系統(tǒng)及數(shù)據(jù)庫的應(yīng)用研究姓名:趙志強申請學(xué)位級別:碩士專業(yè):電氣工程指導(dǎo)教師:陳曾漢20060401摘要LabVIEW是一個圖形化的開發(fā)環(huán)境但就目前國內(nèi)的現(xiàn)狀來看 僅僅利用它來進行數(shù)據(jù)的采集以工業(yè)PC為硬件平臺 在這種背景下 主要是圍繞著提高LabVIEW的實時性展開分析了影響Windows系統(tǒng)和LabVIEW軟件平臺實時性能的主要原因并介紹了一種Windows 實時化的軟件RTX實時性和多任務(wù)性是設(shè)計的實時測控系統(tǒng)兩個重要特點 針對平臺的多任務(wù)調(diào)度的特點 分析系統(tǒng)的軟硬件設(shè)計 完成了數(shù)據(jù)采集 顯示和管理等功能 系統(tǒng)地分析了LabVIEW的幾種網(wǎng)
2、絡(luò)通信協(xié)議的機制和原理并在此基礎(chǔ)上實現(xiàn)了一個小型的局域網(wǎng)分布式控制系統(tǒng)利用LabVIEW的網(wǎng)絡(luò)通信功能與數(shù)據(jù)庫接口功能將采集到的原始數(shù)據(jù)存儲到數(shù)據(jù)庫中研究表明通過實際運行證明驗證了方案的可行性 LabVIEW分布式系統(tǒng) ABSTRACTAs the G language graphical development tool for implementing Virtual Instrumentation(VI, LabVIEW has been developed by National Instruments company. It has a broad range of applicat
3、ion and powerful function. But for the present, most of its applications are used to build Virtual Instrumentation based on a PC. And only some parts of it functions are used, such as data acquisition, handling, and presentation. The users ignore that LabVIEW has a surpassing ability to construct a
4、powerful control system. At present, PC-based real-time measurement and control system is one of the important developing directions of real-time systems. This thesis expands my research, and an IPC real-time measurement and control system based on LabVIEW, which is centered on improving real-time p
5、erformance and solving the multitask problem.This thesis firstly analyses the usage of programming language and introduces a software RTX which can expand Windows system into real-time system.Then, the task and schedule of real-time system are discussed. The real time and multitask are the two impor
6、tant features of the computer measurement and control system. Scheduling the real-time multitask is the key to ensure that the system runs normally .As a solution of multitask scheduling, a scheme of two level-task-queue is provided, the task scheduling kernel is also developed. LabVIEW is successfu
7、lly applied to a practical industrial real-time measurement and control system. The hardware building and software coding are implemented. The tasks are divided into real-time tasks and normal tasks in the system. All works are well done, including the data acquisition, handling, saving, outputting,
8、 displaying and management.Some network communication mechanisms of LabVIEW, including TCP/IP functions, UDP technology are analysed. G programs based on TCP/IP protocol are developed. Build on a small distributed monitor system through the LAN network on the basis of the IPC real-time system is dis
9、cussed.Lastly, this thesis researches the real-time databases. The network communication functions discussed above and the database interface tools are used to build up a database management system which belongs to an IPC real-time system. So, the raw data is acquired into the database, and the dada
10、 can be polled, analyzed and distributed.Research results show that it is possible to apply LabVIEW to an industrial measurement and control systemcontrol system based on the scheme is guaranteed. By running test, the system has been authenticated to meet demands of the real-time performance and sta
11、bility, and the scheme is feasible.Keywords: LabVIEW,Software of measurement and automation, Real-time control, Distributed Control System, Database.1 緒論1.1 引言隨著微電子技術(shù)的長足發(fā)展今年來商業(yè)和軍事等領(lǐng)域都有非常 廣泛的用途實時系統(tǒng)通常是比較復(fù)雜 的實時系統(tǒng)并非是指“快速”的系統(tǒng)實際應(yīng)用中把對外部事件能在限定時間內(nèi)做出反應(yīng)的系統(tǒng)統(tǒng)稱為實時系統(tǒng)視具體應(yīng)用而定由于實時系統(tǒng)很多應(yīng)用于一些關(guān)鍵性的場合對傳統(tǒng)的分時系統(tǒng)來說 合理的響應(yīng)速度實時的數(shù)
12、據(jù)吞吐放到首先 必須確保的位置根據(jù)實時需求對任務(wù)的優(yōu)先響 應(yīng)取代了分時系統(tǒng)對每個任務(wù)的公平恰當(dāng)?shù)捻憫?yīng)速度非實時系統(tǒng)獲得的結(jié)果很少和在什么時候得到結(jié)果有關(guān)系 從外界實時采集數(shù)據(jù)或進行事件處理等 推理和計算還要保證在確定的時間內(nèi)產(chǎn)生這些結(jié)果的及時性保證實時任務(wù)的準時執(zhí)行 若順序執(zhí)行甚至造成災(zāi)難性后果 實時系統(tǒng)又可分為硬實時系統(tǒng)和軟實時系統(tǒng)硬實時系統(tǒng) 在不滿足響應(yīng)時限而 軟實時系統(tǒng)在不滿足響應(yīng)時限時實時 系統(tǒng)有兩個基本屬性 還與實時系統(tǒng)的軟件密切相關(guān) 其中實時操作系統(tǒng)(Real Time Operating System作用因為所有計算機體系結(jié)構(gòu)而且此領(lǐng)域還有一個附加的復(fù)雜性系統(tǒng)的正確性不僅僅依賴于
13、計算的邏輯結(jié)果而且依賴于結(jié)果產(chǎn)生的時間 它經(jīng)常要處理很多并發(fā)事件的輸入數(shù)據(jù)流因此 更復(fù)雜的和不同的考慮因素實時性和多任務(wù)性 “時間”是最寶貴的資源計算機推理和計算的正確不僅依賴于邏輯的正確而且依賴于結(jié)果產(chǎn)生的時間同時分別執(zhí)行對不同信號的處理和對不同設(shè)備工業(yè)PC是指對工業(yè)生產(chǎn)過程及其機電設(shè)備計算機基本系統(tǒng)由系統(tǒng)總線人機接口板與CRT過程I/O系統(tǒng)由輸入信號 調(diào)理板和A/D轉(zhuǎn)換器 變成數(shù)字量輸入計算機濾波保護重慶大學(xué)電氣工程學(xué)院IPC實驗室已經(jīng)開發(fā)了一套基于DOS的IPC實時測控系統(tǒng) 直流電動機和步進電動機的控制 4毫秒加工并把結(jié)果 迅速輸出到被控對象的任務(wù)隔離和轉(zhuǎn)換的數(shù)據(jù)采集裝置完成驅(qū)動被控對象
14、按控制性能指標要求動作的執(zhí)行機構(gòu)完成數(shù)據(jù)加工操作 1.3 計算機控制系統(tǒng)的軟件結(jié)構(gòu)除了硬件結(jié)構(gòu)和配置外實時軟件產(chǎn)品的出現(xiàn)和增加 實時軟件主要以實時核為基礎(chǔ)C和C 例如應(yīng)用廣泛的RTX等實時核實際上是一些完成實時調(diào)度功能函數(shù)集合為實時軟件設(shè)計提供了宿主系統(tǒng)工程師可以在PC機上然后下載到目標系統(tǒng)實際運行應(yīng)用軟件一般都在用戶層上發(fā)展 在用戶層上增加新內(nèi)容首先第二計算機的運行環(huán)境是實時控制系統(tǒng)的激活成分程序必須具有及時處理隨機事件的能力所有運行程序是與外部設(shè)備聯(lián)機的運 行過程WINDOWS環(huán)境下 RTOS等都是應(yīng)用廣泛的實時核BASIC等基本庫中的一些可調(diào)用函數(shù)進行任務(wù)間的通信等特殊功能用戶可以免去設(shè)
15、置中斷 用普通編程技術(shù)得到實時多任務(wù)應(yīng)用程序 產(chǎn)生的程序是框圖的形式現(xiàn)場工程技術(shù)人員及測試技術(shù)人員來說 LabVIEW廣泛應(yīng)用于包括汽車制造半導(dǎo)體工程控制 測試應(yīng)用于研究與分析應(yīng)用于過程控制和工廠自動化應(yīng)用于生產(chǎn)檢測應(yīng)用于機器監(jiān)控應(yīng)用于嵌入式領(lǐng)域1.6 論文主要完成的工作本論文采用LabVIEW與IPC相結(jié)合的方式來構(gòu)成一個多任務(wù)實時測控系統(tǒng)并取得了較為理想的效果研究了任務(wù)分配和調(diào)度 數(shù)據(jù)采集任務(wù)它是以固定的時間間隔運行的 每個采樣周期中剩余的時間留給其他任務(wù)使用其優(yōu)先級同數(shù)據(jù)采集任務(wù)的優(yōu)先級相同該任務(wù)用來作系統(tǒng)的同步計時其優(yōu)先級最高報警任務(wù)并不經(jīng)常發(fā)生所 以其優(yōu)先級也設(shè)為高然后介紹了LabV
16、IEW下網(wǎng)絡(luò)通信基本知識最后初步探討了如何建立IPC測控系統(tǒng)的數(shù)據(jù)庫管理系統(tǒng)2 編程語言與工具2.1 需求語言特性編程語言是實現(xiàn)計算機程序的媒體但是它們需要滿足時間限必須 有一些方式來使得程序員能夠指定絕對的時間間隔實時計算機與設(shè)備(例如傳感器或執(zhí)行器進行交互的周期大小的變化很大實時系統(tǒng)必須高度可靠軟件比硬件更加 復(fù)雜一個好的實時語言一定能讓程序員機動地分配處理器和其他資源并且要控制所有資源的分配 對給定的實時程序 一個實時系統(tǒng)理所當(dāng)然的要有一個精確的時鐘這需要穩(wěn) 定的石英時鐘和容錯同步方法它轉(zhuǎn)化為對能夠精確指定延時的需要模塊化是非常必要的控制一般復(fù)雜系統(tǒng)的程序都會有幾萬行由每個程序員 生成的
17、代碼必須獨立測試 維護是另一重要問題這有兩個原 因其次 編寫 2.2 LabVIEW語言簡介虛擬儀器是充分利用現(xiàn)有計算機資源虛擬儀器不但功能多樣 操作簡易虛擬儀器由硬件和軟件兩部分組成通常是個人計算機信號調(diào)理器轉(zhuǎn)換器(ADC模擬轉(zhuǎn)換器(DAC電子計算機及其配置的電子測量儀器硬件模塊組成了虛擬儀器測試硬件平臺的基礎(chǔ)虛擬儀器的概念是1986年由美國國家儀器公司(以下簡NI公司首先提出的強調(diào)軟件在虛擬儀器中的極為重要的位置 虛擬儀器的突出成就不僅是可以利用PC機組建成為靈活的虛擬儀器組建不同規(guī)模的自測試系統(tǒng) 將虛擬儀器調(diào)配并組建成為中小型甚至大型的自動調(diào)試系統(tǒng)它可以取代測量技術(shù)傳統(tǒng)領(lǐng)域的各類儀器 因
18、而特別適應(yīng)于當(dāng)代科學(xué)技術(shù)迅速發(fā)展和科學(xué)研究不斷深化所提出的更高更新的測量課題和測量需求LabVIEW是實驗室虛擬儀器集成環(huán)境(laboratory Virtual Instrument Engineering Workbench的簡稱,是美國NI公司推出的一種基于G語言(Graphics Language LabVIEW是一個業(yè)界領(lǐng)先的工業(yè)標準軟件工具由于LabVIEW具有編程語言的靈活性因此我們可以 建立各種應(yīng)用程序VI有一個人機對話的用戶界面前面板(Front Panel和類似于源代碼功能的程序圖(Diagram控件(Controls模擬了儀器的輸入裝置并把數(shù)據(jù)提供給VI的程序圖LabVI
19、EW在程序圖中相應(yīng)地放置了一個端口(Terminals,這個從屬于控件或指示器的端口不能隨意刪除,只有刪除它對應(yīng)的控件或指示器時它才隨之一起被刪除它是一種高度交互式的開發(fā)環(huán)境用來快速設(shè)計原型和應(yīng)用程序的漸進式開發(fā) 而且現(xiàn)在所以LabVIEW 也是一個硬件設(shè)計工具數(shù)據(jù)流已存在了很長一段時間而且已被深入地理解它是一個比流行的基于文本語言的控制流更為豐富的計 算模型因此 這使得它難以建立并行程序甚至一個初學(xué)者都可以設(shè)計一個高度并行的應(yīng)用程序因為編輯器構(gòu)造了解析樹更快的檢測和改正錯誤可以通過直接操作來快速創(chuàng)建詳細的用戶界面而無需編寫任何額外的代碼在LabVIEW中那些必須在有意義的測試之前完成的應(yīng)用程
20、序部分更少了無需擔(dān)心存儲分配的細節(jié)即可安排和操作字符串和數(shù)組許多方面的證據(jù)表明相對于傳統(tǒng)編程工具效率提高了4到10倍從臺式機器到嵌入式處理器Time開發(fā)軟件NI最新升級版的LabVIEW Real-Time (RT實時模塊軟件將LabVIEW的應(yīng)用范圍擴展到了實時測量和控制領(lǐng)域工程師可先在主機上利用 LabVIEW開發(fā)出應(yīng)用程序工程師根據(jù)他們的應(yīng)用要求來選擇實時運載硬件就可將其輕松地集成到附加I/O接口中或?qū)⑵溥B接到不同的LabVIEW實時目標硬件上確定性地運行(在一段可預(yù)測的時間內(nèi)可靠性提高能嵌入在其他設(shè)備中NI LabVIEW Real包括可靠性和時間確定性可以在Windows系統(tǒng)上進行開
21、發(fā)即用的計算機組件和實時操作系統(tǒng)基礎(chǔ)上實時操作系統(tǒng)和桌面操作系統(tǒng)存在以下三點不同鼠標和鍵盤與此相反視頻游 戲和工程工具等桌面OS需要能對來自鼠標和鍵盤的用戶輸入作出及時的反應(yīng)所有LabVIEW Real它是按搶先式和時間片循環(huán)式(round優(yōu)化了確定性性能 高優(yōu)先級線程搶先于低優(yōu)先級線程執(zhí)行如 果高優(yōu)先級線程需要處理器時間當(dāng)同等優(yōu)先級被執(zhí)行時 在一個線程用完可用的時間片開始執(zhí)行隊列中的下一個線程 并盡可能減小時間抖動每種目標硬件平臺都是由現(xiàn)成即用計算機組件構(gòu)成非揮發(fā)性內(nèi)存和I/O總線接口驅(qū)動軟件以及特定版本的LabVIEW run如果需要PIC可以通過用于ETS目標平臺或RTX目標平臺的Lab
22、VIEW RealTime把標準的臺式PC轉(zhuǎn)變?yōu)镽eal 用于ETS目標平臺的LabVIEW Real在這種情況下為專用RTOS開發(fā)的應(yīng)用程序可在另一臺主機上開發(fā)用于RTX目標平臺的LabVIEW Real可以在運行Venturcom RTX RTOS 的任何PC上使用經(jīng)擴展的實時操作系統(tǒng)被下載臺式PC的微處理上使用這種雙內(nèi)核架構(gòu)可以為實時任務(wù)分配更高的優(yōu)先級由于實時和windows應(yīng)用程序共享相同的硬件資源(例如占用數(shù)據(jù)總線用于傳送來自CD ROM的大量數(shù)據(jù)因此這需要有效地限制運行在windows環(huán)境下程序的功能2.4 RTX軟件微軟公司的Windows XP操作系統(tǒng)的大眾接受程度和市場占有
23、率日益擴大 Windows XP平臺更強的性能和更低的價格 豐富的Win32應(yīng)用程序接口更多的公司傾向于將Windows XP應(yīng)用到設(shè)備的所有級別上 因為Windows XP就是為這些環(huán)境而設(shè)計的譬如制造車間測試設(shè)備和通信器材Windows XP不能滿足這個實時需要否則的話Windows XP(同時適用于Windows XP Embedded在實時應(yīng)用方面的缺點如下優(yōu)先級倒置盡管更快的處理器顯著的增加了處理能力和平均響應(yīng)時間但是非確定性系統(tǒng)是不能變成確定系統(tǒng)的新的硬件平臺并不能改變Windows XP的實時特性另一臺運行實時系統(tǒng)不是 一種通用的這個實時環(huán)境應(yīng)該能夠執(zhí)行實時任務(wù)時實行實時任務(wù)時吸
24、收實時性系統(tǒng)的復(fù)雜性以完成其功能同時定制的硬件抽象層(hardware abstraction layer 這樣DDK和HAL模型來實現(xiàn)那么實時擴展擁有自己的線程和調(diào)度也就十分必要了例如事件 又無法使線程按優(yōu)先級順序等待對象響應(yīng)實時擴展應(yīng)該實現(xiàn)自己的同步對象IPCI/O端口 最重要的是與Win32在源代碼級別上兼容RTX Runtime 引擎在LabVIEW RT模塊軟件中扮演著重要的角色 可將Windows XP NT 和NTe 擴展到關(guān)鍵時間控制領(lǐng)域的解決方案XPe使這些基于Windows的操作系統(tǒng)成為實時操作系統(tǒng)(RTOS,基于這樣的實時操作系統(tǒng) Ardence公司的硬實時產(chǎn)品RTX 它
25、是專門為PC架構(gòu)(Intel Pentium系列及其相應(yīng)的操作系統(tǒng)的Windows平臺設(shè)計的RTSS作為Windows XP的內(nèi)核設(shè)備驅(qū)動與HAL擴展(見圖2.1通過一套被稱作RtWinAPI的實時API(RtWinAPI 同時也被Windows CE 和Phar Lap ETS支持這套庫提供了對這些對象的訪問方法RtWinAPI可以被標準Win32環(huán)境和RTSS環(huán)境調(diào)用但是卻可以允許應(yīng)用程序在更加友好的Win32編程環(huán)境中開發(fā)而不是DDK環(huán)境Windows XP服務(wù)控制管理器直接將RTX進程和動態(tài)鏈接庫(DLL的可執(zhí)行映像裝入內(nèi)核的不分頁內(nèi)存中RTX修改HAL有以下3個目的實現(xiàn)高速時鐘和定時
26、器RT-HAL將其降到了100納秒并且提供了同步(與計時器的時鐘它可以提升優(yōu)先級以防止優(yōu)先級倒置序號從0到127等待時間最長的線程最先運行或者它自動釋放處理器進入等待狀態(tài)快速計時器支持在所有的PC平臺上如重慶大學(xué)碩士學(xué)位論文 2 編程語言與工具果沒有任何RTSS應(yīng)用程序在執(zhí)行 動態(tài)鏈接庫提到Win32就不得不提到DLL庫GetProcAddress函數(shù)所有在RTSS的DLL中的靜態(tài)和全局變量都被鏈接到其上任何RTSS進程所共享 RTX應(yīng)用程序可以像其他任何Windows 應(yīng)用程序一樣被Microsoft Visual Studio編譯和鏈接3 實時多任務(wù)測控系統(tǒng)3.1實時多任務(wù)系統(tǒng)的基本概念實
27、時系統(tǒng)所要響應(yīng)和處理外部事件有三種形式 上訴兩種情況的組合這種程序的執(zhí)行有兩種方式 一種是并發(fā)執(zhí)行分解為多個任務(wù) 但是經(jīng)常進行任務(wù)的切換 還需要進行很多同步和互斥控制因此 但是act表示某個代碼段的一個執(zhí)行那么時間原則有不同的時間頻度或階段異步原則互相之間沒有臨時性的關(guān)系優(yōu)先性原則要求有不同的優(yōu)先性清晰度和可維護性原則可把dact (A和dact (B分解為獨立的任務(wù)一種是啟動時間限制 對于隨機任務(wù) 即要求任務(wù)在規(guī)定的時間內(nèi)完成就是當(dāng)系統(tǒng)有多個就緒任務(wù)時它牽涉到調(diào)度的策略和調(diào)度的機制問題并把調(diào)度策略參數(shù)化實時調(diào)度算法而靜態(tài)算法則在系統(tǒng)啟動前完成所有的調(diào)度決策實時操作系統(tǒng)的任務(wù)相當(dāng)于一般操作系統(tǒng)
28、中的進程雖然經(jīng)過40多年的演變和提煉 比較能夠反映其實質(zhì)的定義那么進程就是一次放映活動是系統(tǒng)進行資源分配和調(diào)度的一個獨立單位為幫助理解這一概念1動態(tài)性進程是程序的一次執(zhí)行過程 由調(diào)度而執(zhí)行2并發(fā)性引入進程的目的是為了使程序能夠與其他程序并發(fā)執(zhí)行 也是系統(tǒng)進行資源分配和調(diào)度的獨立單位不可預(yù)知的速度向前推進并使之能夠正確運行從結(jié)構(gòu)上看根據(jù)外部驅(qū)動源的不同1周期任務(wù)這類任務(wù)的觸發(fā)大都來自時間驅(qū)動給每個周期任務(wù)設(shè)定各自的啟動周期模擬量由于事件是隨機的 1根據(jù)任務(wù)調(diào)度算法分配CPU按照任務(wù)的優(yōu)先級是否可以動態(tài)地改變1靜態(tài)調(diào)度為了 增加靈活性 以便使自己或其它任務(wù)的優(yōu)先級別暫時提高 系統(tǒng)開銷小可以根據(jù)任務(wù)
29、的某些特性在系統(tǒng)工作過程中調(diào)整其優(yōu)先級別系統(tǒng)開銷較大調(diào)度算法可以分為其運行權(quán)力可以被優(yōu)先級別高的任務(wù)剝奪任務(wù)在運行過程中 但是它實現(xiàn)起來簡單應(yīng) 用仍然較廣按照多任務(wù)實時操作的基本原則來編寫任務(wù)程序 那么不僅搶先調(diào)度方式和非搶先調(diào)度方式的差別不明顯采用靜態(tài)調(diào)度采用搶先調(diào)度方式 以改善實時性在單CPU系統(tǒng)中在這種情況下:并發(fā)是指宏觀上一段時間內(nèi)有多道程序在同時運行最小的定時單位“滴答”(tickIPC可以通過定時/計數(shù)器芯片產(chǎn)生某一頻率的周期信號每個時鐘中斷稱為一個時鐘“滴答”(tick任務(wù)調(diào)度是以“滴答”的精度為基準進行的操作系統(tǒng)通過OS 時鐘 設(shè)某系統(tǒng)的“滴答”為10ms(基于時鐘的任務(wù)切換精
30、度在10ms的數(shù)量級設(shè)某任務(wù)的運行周期為1000ms 則該任務(wù)的周期閾值設(shè)為100該值減1應(yīng)當(dāng)被喚醒而進入就緒狀態(tài)則該任務(wù)的周期閾值設(shè)為25例如即每24ms就要運行一次開關(guān)量采集程序則該任務(wù)的周期閾值設(shè)為24即可多任務(wù)實時操作系統(tǒng)保存其運行現(xiàn)場信息并依據(jù)一定的調(diào)度算法重新選擇一個任務(wù)使之投入運行必須搞清楚實時WINDOWS 系統(tǒng)雖然Windows NT不是一個真正的實時操作系統(tǒng) 在設(shè)計和編寫多線程程序時線程數(shù)量不宜過多同一時間有多個線程在執(zhí)行不同外部設(shè)備在硬件上有不同的處理速度應(yīng)采用不同的線程表示而一個進程可以由多個線程組成可以同時執(zhí)行每個進程具有自己的堆??臻g數(shù)據(jù)和其他系統(tǒng)資源 一個進程可能
31、包括多個線程每個線程有一組用于調(diào)度處理的上下文結(jié)構(gòu)所有線程共享其進程的虛擬地址空間 在WIN98中 可占先的當(dāng)前執(zhí)行的線程在其時間片耗盡時掛起保留 懸掛線程的上下文Windows計時器是一種輸入設(shè)備 它不只用于監(jiān)視程序有時程序盡快將控制返回給Windows會效率更高那么它可以將作業(yè)分 成小快計時器的另一個應(yīng)用是程序不能夠知道何時下一個消息到來回到Windows前的MS-DOS編程 這些中斷每54.915毫秒產(chǎn)生一次一些為MS-DOS編寫的程序自己捕獲這個硬件中斷以實現(xiàn)時鐘和計數(shù)器相反這 樣應(yīng)用程序就不必進行處理計時器與潛在的PC計時器一樣具有55毫秒的分辨率計時器的分辨率為10毫秒在Windo
32、ws NT下每秒大約100次接受WM_TIMER消息雖然Windows是可靠的操作系統(tǒng) 因為擔(dān)心操作系統(tǒng)會“崩潰”NI公司的數(shù)據(jù)采集卡和LabVIEW都是在Windows平臺上運行的在它的控制算法中不能解決硬實時控制數(shù)據(jù)采集系統(tǒng)在執(zhí)行回路控制時典型延時或抖動是幾百毫秒 例如溫度控制器通常只執(zhí)行每秒幾次的取樣和控制溫度顯然 往往要求控制回路的周期時間穩(wěn)定在幾十毫秒或者幾毫秒 采用LabVIEW進行處理每隔幾分鐘左右周期時間會突然增加到30ms 既然Windows和LabVIEW都不能解決硬實時控制的確定周期時間例如UNIX操作系統(tǒng)的實時軟件而且編程人員還要重新學(xué)習(xí)難以掌握的命令集和在工作站上編程
33、還有在PC和Windows平臺上發(fā)展的實時專用硬件和控制器如VME這些控制器只 有固定的或很有限的編程能力 由于缺乏公認的標準和缺少靈活性 為解決硬實時的測控問題 在普通數(shù)據(jù)采集卡上開發(fā)出RT 系列硬件多線程技術(shù)是高級程序設(shè)計的核心技術(shù)之一使得操作系統(tǒng)可以同時處理多個任務(wù) 第一個優(yōu)點是LabVIEW可以把線程完全抽象出來撤銷以及同步等操作當(dāng)線程被創(chuàng)建時 只有沒有可運行的高優(yōu)先級時 一個線程有三種狀態(tài) 對于處于激活狀態(tài)的線程 處于激活狀態(tài)的線程在其運行期間可能會轉(zhuǎn)化為阻塞狀態(tài)那么這個線程就會被轉(zhuǎn)移 到等待隊列中各個任務(wù)的實時性要求可能不同 應(yīng)該保證實時性要求較高的任務(wù)首先執(zhí)行高優(yōu)先級任務(wù)也可 以
34、搶占CPU資源例如 當(dāng)某一時刻二者同時處于就緒隊列在 LabVIEW平臺上通過VI屬性設(shè)置對話框中的Execute屬性頁可以設(shè)置VI優(yōu)先級Normal priority(正常優(yōu)先級Above normal priority(較高優(yōu)先級High priority(高優(yōu)先級Time-critical priority(highest(非常高優(yōu)先級Subroutine priority(子程序優(yōu)先級其中Subroutine priority優(yōu)先級最高例如那么執(zhí)行時然后是Time-critical優(yōu)先級的兩個VI依此類推它就會被掛起(移出就緒任務(wù)隊列以便較低優(yōu)先級的VI執(zhí)行再把它激活(插入就緒任務(wù)隊列
35、插在較低優(yōu)先級的前面繼續(xù)執(zhí)行 如果為線程指定了不恰當(dāng)?shù)膬?yōu)先級 執(zhí)行系統(tǒng)選擇(見圖3.2優(yōu)先級的設(shè)置執(zhí)行系統(tǒng) 的選擇數(shù)十個甚至上百個VI不可能都用優(yōu)先級來區(qū)別它們它們的執(zhí)行時間可能差不多有三個相同優(yōu)先級的VI VI350如果VI3排在最前 面直到VI3執(zhí)行完為了改變這種不合理情況每種執(zhí)行系統(tǒng)對于CPU的使用具有相同的權(quán)限VI2放在一個執(zhí)行系統(tǒng)VI1 LabVIEW中有六個子系統(tǒng)(Subsystems來處理LabVIEW的各種行為標準(Standard子系統(tǒng) 數(shù)據(jù)采集(DAQ子系統(tǒng)LabVIEW最初設(shè)計是使用這些子系統(tǒng)來完成與子系統(tǒng)名稱相關(guān)的任務(wù)任務(wù)可以在任何一個子系統(tǒng)中運行可以在VI Prope
36、rties對話框中Execution頁面下的Preferred Execution System一欄中指定系統(tǒng)的優(yōu)先級其默認子系統(tǒng)是“Same as Caller”那么僅屬于這個子系統(tǒng)的線程才會運行 每個執(zhí)行系統(tǒng)擁有并維護著自己的就緒任務(wù)隊列如果執(zhí)行系統(tǒng)隊列中的某個VI需要更新前面板上的控件狀態(tài)也就是說用戶界面事件還是由User interface執(zhí)行系統(tǒng)負責(zé)完成每一個LabVIEW子系統(tǒng)都有一個線程池(Pool of threads和一個與之相關(guān)聯(lián)的任務(wù)隊列運行隊列中存儲了子系統(tǒng)中分配給線程的任務(wù)優(yōu)先權(quán)列表用戶可以在一個子系統(tǒng)中最多創(chuàng)建40個線程子系統(tǒng)的線程在一個循環(huán)列表中運行只有那些被分配
37、給該子系統(tǒng)的線程才會運行LabVIEW不能直接調(diào)度線程運行包括一個主運行隊列該列表按照優(yōu)先級排隊 VIs具有與之相關(guān)聯(lián)的優(yōu)先級運行隊列更新仍然需要運行的元素減或字符串處理等函數(shù)任意改變VI的優(yōu)先級會導(dǎo)致LabVIEW性能的下降編程者不需要直接對線程進行操作而實際上LabVIEW并不會使用所有的這些線程那么程序 使用內(nèi)存的效率就會很低而且最 終導(dǎo)致性能的下降無論使用什么線程模型多線程的存在會增加應(yīng)用程序的不穩(wěn)定性就會引起整個進 程的崩潰數(shù)據(jù)采集 選擇系統(tǒng)開發(fā)方案和實時操作系統(tǒng)時 實時響應(yīng)時間等實時測控系統(tǒng)的控制循環(huán)時間較短LabVIEW RT系統(tǒng)通過在普通LabVIEW開發(fā)環(huán)境中增加的RT模塊而
38、在目標環(huán)境中運行實時操作系統(tǒng)可以通過TCP/IP 等通訊協(xié)議完成數(shù)據(jù)傳遞和人機交互RT開發(fā)系統(tǒng)是運行在Windows操作系統(tǒng)下的應(yīng)用程序 將程序下載到RT系列硬件中運行 行在RT系列硬件所攜帶的處理器上在這種情況下實時操作系統(tǒng)擴展包括實時內(nèi)核和共享相同處理器的非實時內(nèi)核 可以在同一臺機器上運行主機應(yīng)用程序和實時系統(tǒng)可為實時 任務(wù)分配更高的優(yōu)先級由于實時和Windows應(yīng)用程序共享相同的硬件資源 (例如占用數(shù)據(jù)總線用于傳送來自CD ROM的大量數(shù)據(jù)因此盡量避免出現(xiàn)這種資源競爭情況每種目標硬件平臺都是由現(xiàn)成的計算機組件組成非揮發(fā)性內(nèi)存和I/O總線接口驅(qū)動軟件以及特定版本的LabVIEW run-t
39、ime引擎但是根據(jù)所選平臺的不同實時Compact FieldPoint和FieldPoint系統(tǒng)如圖3.3所示 嵌入式控制器和插入式I/O模塊通過把專用實時操作系統(tǒng)和應(yīng)用程序軟件下載到專用微處理器上這些系統(tǒng)具有堅固的硬件結(jié)構(gòu)能和其它網(wǎng)絡(luò)節(jié)點共享最近的I/O值和內(nèi)存標記RT系列插入式板卡作為實時模塊包括兩個部分處理器板卡和多功能數(shù)據(jù)采集板卡它們永久地結(jié)合在一起該板卡上包含與計算機主板相同的基本組件一個嵌入式微處理器只是沒有硬盤 實時板卡上的數(shù)據(jù)采集卡與一般的NI采集卡沒什么區(qū)別即硬件平臺和軟件系統(tǒng) RT實時板卡(可供選擇使用軟件包括LabVIEW RT和自己開發(fā)的多任務(wù)測控系統(tǒng)存儲的信號(統(tǒng)稱
40、數(shù)字信號Data Acquisition 從而獲得大量數(shù)據(jù)以便進行分析和處理 數(shù)據(jù)采集系統(tǒng)主要包括以下幾個部分 模數(shù)轉(zhuǎn)換模塊以及其它模塊數(shù)模轉(zhuǎn)換等數(shù)據(jù)采集卡的選擇是非常重要的 A/D轉(zhuǎn)換芯片的類型采樣率 我們可以選擇使用兩類板卡如果對實時性要求較低的數(shù)據(jù)采集可以采用非NI的板卡其中最簡單的方式莫過于直接利用NI公司生產(chǎn)的數(shù)據(jù)采集板卡安裝相應(yīng)的驅(qū)動程序 莖乞一三Measurement & Automation Explorer,來對NI 公司產(chǎn)品的相關(guān)硬件進行管理這個軟件可以完成NI 公司數(shù)據(jù)采集卡的檢測LabVIEW 中的數(shù)據(jù)采集實際上包含了模擬輸入在典型的測試系統(tǒng)中圖3.4 NI 采
41、集卡的模擬量的采集Fig 3.4 Simple Analog data acquisition based on NI cardNI 的板卡可以直接在LabVIEW 中利用其功能節(jié)點進行編程可以通過以下三種方式編寫驅(qū)動程序 調(diào)用動態(tài)鏈接庫的方式端口讀寫的實現(xiàn)方式比較簡單但步驟繁瑣當(dāng)使用LabVIEW中的CIN節(jié)點來調(diào)用由C語言開發(fā)的采集卡驅(qū)動程序時但使用這種方法的缺點之一是CIN模塊不具備系統(tǒng)兼容性不包含CIN模塊的VI程序可不做任何改變即可在不同的系統(tǒng)中運行但最重要的是CIN模塊不和其它進程分享CPU時間數(shù)據(jù)流到達CIN模塊時等待CIN模塊運行完成后才會繼續(xù)運行只能在數(shù)據(jù)全部采集結(jié)束后再一起
42、顯示所采集的全部數(shù)據(jù)不但要動態(tài)顯示所采集數(shù)據(jù) 故不能采用這種方式 在DOS下與以往DOS下硬件訪問程序不同的是而是通過Windows操作系統(tǒng)提供的設(shè)備驅(qū)動程序來進行數(shù)據(jù)傳遞而不是直接對端口進行操作 通過了解這些函數(shù)的使用在標準的LabVIEW環(huán)境下訪問是通過Windows實現(xiàn)的LabVIEW RT的編程與標準LabVIEW的編程基本相同使用我們自己開發(fā)的板卡就出現(xiàn)問題了原因是而不是使用的RTX下訪問端口的技術(shù)只能在標準LabVIEW 下編程因此 見圖3.6見圖3.8以RACK-360工業(yè)PC機為硬件平臺 開關(guān)量輸入/開關(guān)量輸出模板和定時器/計數(shù)器模板和實驗箱16個模擬量一個直流電動機控制子系統(tǒng)
43、以及作為輸出顯示的16個LED和一個LCD 圖3.6 工業(yè)PC測控系統(tǒng)硬件框圖Fig3.6 Hardware diagram for the IPC system采用一塊我們自行設(shè)計的WJ-KG48開關(guān)量板卡(48通道控制指示燈采用我們自行設(shè)計的WJ-16AD-2DA模擬量板卡(16路模擬量輸入完成對16路模擬量的采集和溫度測控子系統(tǒng)的溫度采集 工控機的ISA總線上主要有A/D其中A/D 主要完成電壓和電流的模擬量信號和溫度信號的采集并分出兩路開關(guān)量作為步進電動機的控制信號一是根據(jù)A/D部分采集的溫度信號調(diào)整步進電動機的轉(zhuǎn)向以及轉(zhuǎn)動的步數(shù)CPU為P4 2.4G 實時板卡采用NI PCI-783
44、1R板卡該板卡包含了可以使用 LabVIEW FPGA模塊并且可重新配置的FPGA 完全控制所有信號和操作的同步和定時如輸入PWM 其主要性能參數(shù)如下 25 ns 分辨率的可配置觸發(fā)1百萬門可重新配置I/O(RIOFPGA 高達8路獨立的模擬輸入16位分辨率高達8路獨立的模擬輸出16位分辨率 圖3.7 實時板卡PCI-7831R Fig 3.7 RT Board PCI-7831R 圖3.8 PC 機硬件部分Fig3.8 The hardware of PC96條可配置的數(shù)字線輸出與多達2個NI cRIO-9151 R 系列擴展機箱連接PCI 總線數(shù)采卡A/D 確定性單端控制, 強健性臨界測試
45、D/A分別完成模擬信號的采集以及直流電動機的閉環(huán)控制 任務(wù)包括每2ms對所有的開關(guān)量采集一次并做出調(diào)整所以對實時性的要求不是太嚴格16點制表便于以后對歷史數(shù)據(jù)的查找來對系統(tǒng)進行調(diào)節(jié)以保持其轉(zhuǎn)速和溫度在一個適當(dāng)?shù)姆秶鷥?nèi)動態(tài)顯示對系統(tǒng)資源的消耗較大 我們按一定的原則編制每一個任務(wù)程序 即每一個任務(wù)程序在執(zhí)行完后才交還CPU的使用權(quán) 所有任務(wù)均要求占用CPU不同的任務(wù)要求占用不同的外設(shè)資源(例如對各板卡的占用 各任務(wù)之間存在橫向聯(lián)系多任務(wù)實時操作系統(tǒng), 即MROS (Multi-task Real-time Operating System 的主要功能就是協(xié)調(diào)以上各種關(guān)系各個任務(wù)程序“掛”在上面對各
46、量的監(jiān)測和控制但任務(wù)的內(nèi)容是固定的監(jiān)測對象固定沒有必要采用標準的MROS甚至可能降低系統(tǒng)資源的利用率和系統(tǒng)的實時性 如何使各任務(wù)能夠不失時機地占用CPU這項工作由所謂“多任務(wù)實時調(diào)度程序”(以下簡稱任務(wù)調(diào)度來完成圖3.9說明任務(wù)調(diào)度核心是如何調(diào)度任務(wù)占用CPU 的一旦分得了CPU 即可立即執(zhí)行當(dāng)一個任務(wù)獲得了必要的資源在單CPU 系統(tǒng)中 在一個CPU 足夠多的系統(tǒng)中此時任務(wù)所處的狀態(tài)稱為阻塞狀態(tài)他們等待被時鐘喚醒完成模擬量采集后各定時制表任務(wù)完成后 狀態(tài)標志為描述任務(wù)的狀態(tài)任務(wù)完成后狀態(tài)標志是任務(wù)調(diào)度能“感知”任務(wù)存在的唯一標志它只是面對狀態(tài)隊列 1任務(wù)調(diào)度轉(zhuǎn)換IPC測控系統(tǒng)需要周期性地對若干
47、量進行重復(fù)檢測設(shè)定不 同定時和周期閾值例如每1s采集模擬量0點 任務(wù)調(diào)度任務(wù)調(diào)度掌握著CPU的分配大權(quán)并負責(zé)收回CPU的使用權(quán)但任何任務(wù)均無權(quán)分配CPU形成狀態(tài)隊列 檢查是否已有任務(wù)處于就緒態(tài)某一任務(wù)程序執(zhí)行完后實時時鐘以喚醒定時任務(wù)或周期 任務(wù)s 實時時鐘顯然應(yīng)具有最高優(yōu)先權(quán)它不由任務(wù)調(diào)度來調(diào)度 1鐘在0點分別把制表任務(wù)推入就緒隊列250ms模擬量采集 多任務(wù)實時系統(tǒng)的設(shè)計原則在單CPU系統(tǒng)中串行地占用CPU宏觀上在同一時段內(nèi)多個程序的同時執(zhí)行臺的執(zhí)行系統(tǒng)就根據(jù)就緒任務(wù)隊列決定哪個任務(wù)獲得CPU 而被執(zhí)行平臺的執(zhí)行系統(tǒng)無法控制即任務(wù)調(diào)度核心和起任務(wù)控制作用的模塊,來控制平臺的就緒任務(wù)隊列 就
48、使得系統(tǒng)成為一個開放式體系以及對任務(wù)的執(zhí)行頻率進行控制 根據(jù)優(yōu)先級的設(shè)置和執(zhí)行系統(tǒng)的選擇事件驅(qū)動平臺級調(diào)度策略和用戶級調(diào)度策略 依據(jù)任務(wù)完成其功能的輕重緩急 優(yōu)先級的設(shè)置和執(zhí)行系統(tǒng)的選擇 溫度和電動機轉(zhuǎn)速信號采集滴答 主要工作是則把相應(yīng)任務(wù)置為就緒狀態(tài)滴答主要工作 優(yōu)先級較低當(dāng)更高優(yōu)先級的任務(wù)來臨 等占先的任務(wù)掛起 在實際運行過程中第二個 任務(wù)將繼續(xù)執(zhí)行而且其實際執(zhí)行時間遠小于 其等待時間同樣任務(wù)也是順序執(zhí)行的就會被掛起 在運行過程中 本系統(tǒng)選擇了五個執(zhí)行子系統(tǒng)使用了四個 不同的優(yōu)先級為time-critical 但是優(yōu)先級不同 表3.1 優(yōu)先級和執(zhí)行系統(tǒng)的配置 考慮到系統(tǒng)的實時性要求整點制表
49、任務(wù)選擇Above normal優(yōu)先級這里使用了三個優(yōu)先級可能會導(dǎo)致動態(tài)顯示較長時間處于等待狀態(tài) 也沒有設(shè)定過多的優(yōu)先級也沒有設(shè)定的必要程序之間的數(shù)據(jù)傳輸可以使用全局變量任務(wù)調(diào)度核心(以滴答為基礎(chǔ)的調(diào)度這種策略是優(yōu)先級最高的實時控制和CPU計時任務(wù)各周期任務(wù)周期閾值減1并判斷是否為0各定時任務(wù)的定 時值與系統(tǒng)時間比較控制的幾個任務(wù)是實時周 期性任務(wù)數(shù)據(jù)將會丟 失為了控制某些循環(huán) 處理任務(wù)的執(zhí)行頻率比如本系統(tǒng)中的數(shù)據(jù)采集任務(wù)設(shè)置了時間間隔之后執(zhí)行完一次采集采集任務(wù)就會被 掛起執(zhí)行下一次采集就可以 節(jié)省出CPU執(zhí)行時間供其他任務(wù)使用 如果設(shè)置的固定時間間隔小于任務(wù)的執(zhí)行時間 該任務(wù)就不會被掛起在設(shè)
50、置等待時間 之前 事件驅(qū)動調(diào)度事件驅(qū)動任務(wù)的特征是不會經(jīng)常運行報警任務(wù)優(yōu)先級最高可以靈活控制任務(wù)的激活和掛起Generate Occurrence在本系統(tǒng)中的報警任務(wù)如果到達報警條件 執(zhí)行報警功能 同時也描述了使用NI板卡的設(shè)計方法IPC常常需要處理一類最基本的輸入/輸出信號開關(guān)信號開關(guān)的閉合和斷開 儀器儀表的BCD碼閥門的打開和關(guān)閉 的邏輯“1”和“0”來表達此類板卡 是構(gòu)成系統(tǒng)的基本單元之一開關(guān)量輸入/輸出板卡通常由三部分組成I/O電氣接口我們采用自行設(shè)計的WJ-KG48型開關(guān)量模板1板卡上的8255_1的PA接收16路 開關(guān)量信號的輸入PB輸出16路開關(guān)信號 3板卡上的8255_1的PC
51、08255_2 的PC控制定時/計數(shù)器板卡上的8254的GATE引腳和控制步進電動機脈沖分配器的模式采集結(jié)果除了在計算機屏幕上顯示外見圖3.12.圖3.12開關(guān)量采集程序Fig3.12 The I/O part模擬量的采集和溫度控制在工業(yè)測控系統(tǒng)中電壓 計算機只能處理數(shù)字量系統(tǒng)中的執(zhí)行機構(gòu)往往需要模擬信號各種D/A芯片就是用來完成此類轉(zhuǎn)換的在工業(yè)測控系統(tǒng)中模擬量輸入/輸 出板卡是工業(yè)測控系統(tǒng)的重要組成部分F薩盂盂iF、;旮馘 二虹也磊剝卜鹵警?!掘梁缥寤ザ﨎趟一。一回=回在一般電站中本系統(tǒng)通過A/D 來測量冷卻裝置的溫度以達到控制水溫的目的不會像電壓值和電流值等變化那么快在本系統(tǒng)中作為16路模
52、擬量信號的輸入編寫程序的方式也是端口訪問3.14如測定脈沖間隔時間線位移用作倍 頻器產(chǎn)生PWM信號等等在工業(yè)測控系統(tǒng)中電動機的應(yīng)用是非常廣泛的 其控制技術(shù)也是日趨完善 經(jīng)濟 因而只介紹比較簡單的電動機控制方法故不做討論測速采用紅外檢測裝置被紅外探測器 接收并轉(zhuǎn)換為電脈沖信號再經(jīng)計算得到直流電動機的轉(zhuǎn)速利用定時器產(chǎn)生的脈沖對電動機控制但占空比不同轉(zhuǎn)速越高 本系統(tǒng)中它在系統(tǒng)中起著舉足輕重的作用用8254_1每片8254有3個16位的計數(shù)器8254_2的T0用T0用該板卡上的8254_1的T0對步進回送脈沖計數(shù)T1對直流電動機的速度脈沖計數(shù)從而達到控制直流電機轉(zhuǎn)速的目的圖3.15直流電動機程序圖Fi
53、g3.15The DC motor part任務(wù)調(diào)度核心該調(diào)度核心作為并行的子任務(wù)之一就對其控制的任務(wù)狀態(tài)作一次判斷和設(shè)定采用了LabVIEW函數(shù)庫中的事件(occurrence函數(shù)來控制任務(wù)的激活和掛起顯示和界面系統(tǒng)程序要把數(shù)據(jù)運算的結(jié)果送到工控機的顯示終端所有采集到的數(shù)據(jù)采集數(shù)據(jù)的動態(tài)顯示設(shè)置為每一秒鐘刷新一次 這樣做不但占用大量的系統(tǒng)資源無法讀取不停閃爍的數(shù)據(jù)使用戶能夠一目了然 圖3.16任務(wù)調(diào)度核心Fig3.16 The task scheduling 圖3.17界面Fig3.17 display整點制表和報警系統(tǒng)分別在0點自動記錄的運行數(shù)據(jù)為所有采集到的數(shù)據(jù)和設(shè)置的控制參數(shù)設(shè)定系統(tǒng)的最值和最大變化值 啟動報警程序以上報警信號產(chǎn)生的同時以備故障分析時查看以便日后查詢 即前面提到的零點 報警任務(wù)和手動功能也可以啟動數(shù)據(jù)記錄程序都是對一些電壓和電流信號的采集不再需要對采集卡編寫驅(qū)動
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年關(guān)于格式合同的法律規(guī)制與挑戰(zhàn)
- 2025混凝土拌合站租賃合同范本
- 2025年橋梁工程試題
- 2025年腸梗阻理論試題
- 幼兒園語言教育與活動設(shè)計 課件 第6、7章 幼兒園語言教育活動實施的價值取向與反思;幼兒園語言教育活動中的教師與幼兒
- 高三高考數(shù)學(xué)知識點總結(jié)
- 保險-72名億萬富翁死亡的背后
- 縱隔疝的臨床護理
- 火災(zāi)應(yīng)急流程制作指南
- 某咨詢-北京世博偉業(yè)房地產(chǎn)0806一階段人力資源診斷報告
- 公共文化服務(wù)保障法解讀課件
- 第五章-語言規(guī)劃與語言調(diào)查課件
- 2023年海南省財金集團有限公司招聘筆試模擬試題及答案解析
- 托馬斯潘恩課件
- 顱腦損傷患者護理查房課件
- 口腔疾病與全身系統(tǒng)性疾病的關(guān)系課件
- 年產(chǎn)16萬噸焦油焦油車間蒸餾工段工藝初步設(shè)計 畢業(yè)設(shè)計
- 霍亂弧菌實驗室檢測PPT
- 五年級下學(xué)期信息技術(shù)3Done三維制作蘿卜課件
- DB51∕T 2858-2021 農(nóng)業(yè)科技成果效益計算方法及規(guī)程
- 監(jiān)控系統(tǒng)投標書(施工組織設(shè)計)
評論
0/150
提交評論