<   LabVIEW模擬試題   >

免費免註冊,彰化一整天線上測驗:http://exam.bestdaylong.com/multiple3645.htm

( )1. 假設現在開發 1 組 SubVI 僅輸出單一值,且需於原始 VI (calling VI) 中使用此 subVI。若 要強制資料流去控制 subVI 的執行作業,則下列的最佳方式為?(1)修改 SubVI 具備虛值 (Dummy) 輸入,以透過原始 VI 使用之 (2)修改 SubVI 具備 Error 叢集,以透過原始 VI 使用之 (3)修改 SubVI 具備全域變數 (Global variable),以透過原始 VI 使用之 (4)於 Sequence 架構中使用 subVI
( )2. 何種組合可正確完成下列敘述?______________ 代表該迴圈即將所執行的總次數;而 _______________ 將回傳該迴圈已執行的次數減 1。(1)count terminal, ; conditional terminal, (2)conditional terminal, ; iteration terminal, (3)count terminal, ; iteration terminal (4)conditional terminal, ; count terminal,
( )3. 在 VI 納入此 Stacked Sequence 架構並執行之後,Result F2 指示元將顯示何值?
(1)25 (2)40 (3)65 (4)0
( )4. 此圖表將顯示單一條件陳述式 (Case statement) 的所有條件。在執行此 VI 之後,Result 指示元將顯示何值?
(1)36 (2)5 (3)7 (4)12
( )5. 在執行下列程式碼之後,該新字串的結果為何?
(1)Helloto you! (2)Hello to you! (3)Hello Wto you! (4)Hello to you!!
( )6. 在執行此程式碼之後,Result 指示元將顯示何值?
(1)SubVI 的執行時間將以毫秒 (Millisecond,ms) 計 (2)零 (3)從 1970 年 1 月 1 日以來的秒數 (4)Sequence 架構的執行時間將以毫秒 (Millisecond,ms) 計
( )7. 若有 2 組平行執行的迴圈,是否可用接線於迴圈之間傳輸資料?(1)無 (2)是 (3)否 (4)無
( )8. 強制點 (Coercion dot) 代表:(1)資料值已超出範圍,因此將強制 (Coerced) 資料值 (2)資料形態一致 (3)將針對資料執行多型態作業 (Polymorphic operation) (4)建立資料緩衝區以利轉換資料
( )9. 現在有 VI 人機介面上的 1 組控制元,需於 Run-Time 期間修改其中之一的屬性。下列哪 種應為最佳方式?(1)建立隱藏式的屬性節點,並選擇所要修改的屬性 (2)建立控制元參考,將參考傳送至屬性節點,再選擇所要修改的屬性 (3)建立已連線的共用變數 (Shared variable),再選擇所要修改的屬性 (4)建立局部變數,再選擇所要修改的屬性
( )10. 何項程式碼片段 (Snippet) 將寫入最少量的資料至磁碟?(1) (2) (3) (4)
( )11. 建立陣列最有效率方式為:(1)初始化陣列之後,接著取代 While Loop 中的要素 (2)使用 For Loop 搭配 Auto-indexing 功能 (3)使用 While Loop 搭配 Auto-indexing 功能 (4)於 While Loop 中放置陣列建置 (Build array) 函式
( )12. 建立 Functional Global Variable 時,何項不重要?(1)使用 Shift Registers 儲存資訊 (2)將 VI 的執行設定變更為 Reentrant (3)將 VI 設定為原始 VI (calling VI) 中的行內 (Inline) (4)將 While Loop 設定單次循環之後即停止
( )13. 對 Boolean 應進行何種機器動作,才能於 Windows 對話框中模仿按鈕?(1)放開時才切換 (2)鎖定直到放開 (3). 放開時才鎖定 (4)切換直到放開
( )14. 何項圖表將先行變更色彩?
(1)Plot 0 先變色。因屬性是從零開始的數字順序執行 (2)2 組圖表將同步變色。因屬性是以多執行緒 (Multithreading) 執行 (3)無法判別。因為 LabVIEW 是以資料流的格式執行作業 (4)Plot 1 先變色。因其屬性是由上到下「Top-down」執行
( )15. 下列何種圖表 (Chart) 的更新模式,可透過垂直線區分新舊資料並進行比較?此圖的顯 示方式亦近似於心電圖 Electro-cardiogram (EKG)(1)Sweep Chart (2)Step Chart (3)Strip Chart (4)Scope Chart
( )16. 何項敘述可確實說明下列迴圈執行的輸出結果?
(1)將顯示 Random Number 函式的最後 3 項數值 (2)將顯示所有量測作業的執行平均 (3)將顯示最後 4 項量測作業的平均 (4)其它答案皆非
( )17. 下列程式圖代表何種常見的 VI 架構?
(1)Multiple Case Structure VI (2)General VI (3)State Machine VI (4)Parallel Loop VI
( )18. 下列程式圖所顯示的 VI 中,啟動自動錯誤處理 (Automatic error handling) 的功能。若檔 案「C:\data.txt」不存在,是否將蹦現錯誤對話框?(1)會,但僅出現一次,且與迴圈週期無關 (2)否 (3)會,每當 Open/Create/Replace File 函式回傳錯誤時,都會蹦現錯誤對話框 (4)會,每當迴圈完成 1 次週期,都會蹦現錯誤對話框
( )19. 下列有關此程式碼執行的敘述,何者正確?
(1)此迴圈將循環 50 次 (2)此迴圈將循環 49 次 (3)For Loop 若連接「50」至計數終端,則將執行相同的作業 (4)此迴圈將循環 51 次
( )20. 叢集 (Cluster) 的功能為:(1)於程式圖上區別不同的資料形態 (2)於人機介面上,依資料形態而區隔資料物件 (3)將混合的資料類型聚集為合邏輯的架構 (4)透過圖表於人機介面中呈現資料
( )21. 使用「State Machine VI」架構的缺點之一為何?(1)若同時有 2 項狀態發生變化,將僅處理第一項狀態變化,並遺失第二項狀態 (2)若將一般架構變更為 State Machine 時,程式區將大幅擴增 (3)狀態機器 (State Machine) 無法擷取資料,或使用 DAQ 功能 (4)State Machine 僅可依序轉換 (Traverse) 狀態
( )22. 下列何種情況下,應使用「Probe」工具而非「Highlight Execution」?(1)觀看資料流 (2)即時觀看接線 (Wire) 數值 (3)於程序進行期間深入觀看 subVI (4)要減緩 VI 速度,並於接線 (Wire) 中顯示資料值
( )23. 此 Dequeue Element 函式將等待多久以接收資料?
(1)無限期等待 (2)不會等待且立刻回傳 (3)1 millisecond (預設無接線) (4)1 second (預設無接線)
( )24. 下圖 Array Size 的輸出為:
(1){2, 3} 的 1D Array (2){3, 2} 的 1D Array (3)2 (4)以上皆非
( )25. 下列何種情況將產生事件 (Event),並由 LabVIEW Event Structure 所擷取?(1)使用「VI Server」更新人機介面的控制元 (2)用滑鼠更改人機介面控制元的數值 (3)使用屬性節點 (Property node) 更新人機介面的控制元 (4)透過控制參考 (Control reference),以程式設計方式更新人機介面的控制元
( )26. 檔案「C:\data.txt」並不存在,但 VI 並未回報錯誤。則何項程式碼片段 (Snippet) 將回 報錯誤並停止?
(1) (2) (3) (4)
( )27. 必頇以程式設計的方式,更新數字控制元中的值。何項為最佳策略?(1)使用局部變數 (Local variable) (2)將所期望的數值設為預設值 (3)使用 Data Value Reference (4)使用功能性全域變數 (Functional Global Variable)
( )28. 下列何項設定,將可針對人機介面的控制元,指派其特定按鍵或按鍵組合?(1)Distribute Objects (2)Key Focus (3)Key Navigation (4)Radix
( )29. 若要客制化控制元,則可從 Type Def. Status 下拉式功能表中點選 Control,再將控制元 儲存為 .ctl 檔案。接著在人機介面視窗中,即可使用客制化控制元的範例。若開啟 .ctl 檔案並修改控制元,那人機介面視窗中的控制元是否發生變化?(1)是 (2)否 (3)無 (4)無
( )30. 何種組合可正確完成下列敘述?不同於 _____ Property Nodes,_____ Property Nodes 需要 _____ 作為輸入,以能正確運作(1)Explicit; Implicit; Control References (2)Implicit; Explicit; Control References (3)Explicit; Implicit; Data Value References (4)Implicit; Explicit; Data Value References
( )31. 下列何項可讓使用者於 Waveform Graph 中具備多組圖表?(1)(透過陣列…)跟(將各個波形…)兩個答案都對 (2)針對各組圖表,整合 X 與 Y 資料的 2 組 1D 陣列。接著建立這些叢集的陣列,並將 之連至 Waveform Graph 指示元 (3)透過陣列中的獨立列 (或欄) 中的各個圖表,於陣列中建立資料的 N 維度 (Ndimensional) 陣列,再將陣列接至 Waveform Graph 指示元 (4)將各個波形的元素整合至叢集中,並建立這些叢集的陣列,再將陣列接至 Waveform Graph 指示元
( )32. 下列何項最能完整說明 LabVIEW Project (.lvproj) 檔案?(1)屬於特定資料夾,內含應用相關的所有檔案 (2)包含人機介面與程式圖的檔案,可建構程式設計的步驟 (3)編譯完成的程式碼,常見於應用的最後佈署作業 (4)可將專案的所有相關檔案拖曳進來,而建構捷徑並有利管理
( )33. 若 Show Context Help 視窗中的某項輸入名稱,是於 SubVI 中以粗體字顯示,則下列敘 述何者為真?(1)該項輸入為必要輸入 (2)除非接線至該項輸入,否則將造成破裂的執行箭頭 (3)輸入值必為純數 (Scalar) (4)此項輸入為建議使用,非必要輸入
( )34. Control References 的功能為何?(1)可從控制元接線至函式與 subVI (2)以程式設計的方式,為 VI 新增控制元與指示元 (3)可於 SubVI 中存取人機介面物件的屬性 (4)以別名 (Alias name) 控制多個 DAQ 輸入
( )35. 下列何項最能說明 Notify 事件 (如 Boolean 控制元的數值變更)?(1)事件發生且 LabVIEW 已處理該事件 (2)事件並未發生,但發生特定的 Event 逾時 (Timeout) (3)事件發生且 LabVIEW 並未處理該事件 (4)事件發生且由使用者捨棄該事件
( )36. 與局部變數相較 (Local variable),下列全域變數 (Global variable) 優點的敘述何項為真?(1)僅全域變數 (Global variable) 可傳送陣列資料,局部變數 (Local variable) 不行 (2)全域變數 (Global variable) 將依循資料流的模式,因此不會造成競態條件(Race condition) (3)全域變數 (Global variable) 本身不需標籤 (Label) 亦可作業 (4)在同步執行的 2 組獨立 VI 之間,全域變數 (Global variable) 亦可傳送資料
( )37. 在執行此程式碼之後,Numeric 指示元將顯示何值?
(1)8 (2)While Loop 將無限循環 (3)0 (4)4
( )38. 下列斷點 (Breakpoint) 將可造成:
(1)讓該 VI 以單一步驟穿過指示元 (2)取消該 VI (3)暫停該 VI (4)讓該 VI 以單一步驟穿過 Addition
( )39. 針對長時間執行應用的時序控制邏輯,以下何項為最佳的時序函式 (VI)?
(1) (2) (3) (4)
( )40. 在執行此程式碼之後,Result 將顯示何值?
(1). {-25, 25} 的 1-D 陣列 (2){{-25, -50, -50}, {50, 25, 25}} 的 2-D 陣列 (3){75, -50, 25} 的 1-D 陣列 (4){-25, 25, 50} 的 1-D 陣列

解答:
001.【2】002.【3】003.【2】004.【1】005.【2】006.【1】007.【3】008.【4】009.【1】010.【3】
011.【2】012.【3】013.【3】014.【4】015.【1】016.【3】017.【3】018.【2】019.【4】020.【3】
021.【1】022.【2】023.【1】024.【1】025.【2】026.【4】027.【1】028.【3】029.【2】030.【2】
031.【1】032.【4】033.【12】034.【3】035.【1】036.【4】037.【1】038.【3】039.【1】040.【1】

詳解:
1.初始化 subVI 中的錯誤叢集,即可適當處理錯誤,亦可為強制資料流的最佳方式
2.計數終端將顯示 For Loop 所要執行的次數。While Loop 的 Conditional Terminal 可能決定迴圈的執行次數,但不會直接顯示循環次數。循環端點將回傳「已發生的循環次數 -1」
3.Sequence local 可於 Stacked Sequence 架構的框架之間儲存資料。此處的 Sequence local 僅寫入至 Frame 0。因此 Frame 1 與 Frame 2 不致發生衝突。Result F2 中的值為 8 乘以 5,即等於40
4.因為銜接條件選擇元 (Case selector) 的輸入,並不符合任何其他條件,因此將執行 Default條件。所以答案為 62,亦即 36
5.根據已知的字串輸入,Replace Substring 函式將以「子字串輸入所供應的字串」,取代「偏移 (Offset) 特定位置所開始的原始字串」
6.當呼叫 Tick Count (ms) 函式時,將回傳 millisecond 計時器的數值。若呼叫 2 次並比較,將發現呼叫之間往往會產生時間差 (以毫秒 ms 為單位)。在此程式碼片段 (Snippet) 中,隨即將於 TickCount (ms) 函式的 2 次呼叫之間,另外呼叫 subVI。因此 A 為正確答案
7.For loop 即平行執行,之間不應存在資料相關性。根據資料流的規則,若 2 組迴圈完成接線作業之後,第二組迴圈將對第一組迴圈產生依賴性。因此,若於迴圈之間使用接線,就不再是平行特性
8.強制點 (Coercion dot) 代表「特定的資料形態已接至端點」,且該端點可接受相容的不同資料形態。如此一來,LabVIEW 可將資料轉換為較大型的 2 種資料形態。而必頇建立記憶體緩衝區,以儲存受強制的資料
9.Property Nodes 是為了能「透過程式設計而修改人機介面的物件」所設計。變數 (Variable)並不會修改人機介面的物件,因此 B、C 均不對。由於此處並不是使用 subVI,答案 A 較答案 B 正確。因為隱式 Property Node 即可運作,而不像顯式 Property Node 需要額外輸入
10.單一 Boolean 值,將使用 LabVIEW 中的 1 個位元組 (Byte) 記憶體。正確答案 A 的 BooleanArray to Number 將轉換 8 組 Boolean 值 (即為 8 個位元組),成為單一的 8 位元整數值 (或稱為 1Byte)。因此寫入的總資料數為 1 byte。答案 B 則是針對各組 Boolean 值寫入 1 byte;答案 C 與 D 均是寫入字串。字串中的各個字元均將使用 1 byte。所以答案 C 與 D 均將寫入多個位元組的資料
11.與 While Loop 相較,For Loop 更能有效建立陣列;因為 For Loop 將執行已預先決定的循環次數。因此,在執行 For Loop 之前,LabVIEW 可先針對陣列而分配記憶體
12.在功能性全域變數的原始 VI (calling VI) 中,不需排列並依序處理之。事實上,若要依序處理,則為可重複呼叫 (Reentrant) 的 subVI,但功能性全域變數不能重複呼叫
13.Windows 對話框按鈕在執行點選作業之前,會等待直到使用者放開按鈕。當使用者按下並放開按鈕,按鈕隨即回傳其預設狀態。此動作近似於 LabVIEW 中的 Latch When Released 機器動作
14.Property Nodes 均由上至下執行。圖 1 為優先選擇並修改過,因此將先變更其顏色
15.Strip chart 是由左至右開始繪圖,且期間會持續捲動。Scope chart 亦由左至右開始繪圖,直到繪圖區域滿了隨即停止。一旦清除之後,再從左側開始繪圖。Sweep chart 的動作近似於 Scopechart;但若繪圖區域滿了之後,Sweep chart 隨即從左側開始覆寫既有資料。但 LabVIEW 中的 Stepchart 不會如此
16.針對之前的多次循環,堆疊式移位暫存器 (Shift register) 可記憶寫入值。頂端節點即是最近一次的循環。在觀察過程式碼片段之後,可發現其平均並顯示了最近 4 次的量測
17.狀態機器包含 1 組 While Loop、1 組 Case 架構、1 組移位暫存器,還有決定傳輸作業的程式碼
18.即使啟動了自動錯誤處理功能,但錯誤叢集均將接至所有函式的輸出。如此一來,雖然發生錯誤,亦可避免 LabVIEW 中斷執行並對使用者顯示對話框。只要函式的輸出並未銜接錯誤叢集,LabVIEW 將顯示對話框並暫停執行
19.While Loop 與 For Loop 中的循環端點 (Iteration terminal),均從零開始計數。所以首次循環將回傳「0」,第二次循環將回傳「1」;依此類推。此處是設定「當循環端點的輸出為大於或等於 50 時」,While Loop 隨即停止。圖中可看出循環端點的輸出數值至少為「50」,所以必為 51次循環之後
20.叢集可將資料蒐集至架構中。如此僅需最少量的接線與端點,而達到清理程式圖的目的。叢集中可能混雜了資料形態
21.若先前的狀態執行期間,已發生了狀態轉換 (如使用者點選人機介面按鈕),則簡易型的狀態機器將不會有緩衝區可維持狀態轉換。因此,若在處理轉換之前發生超過 1 次轉換,則除了最近的 1 次轉換之外,將遺失其他所有轉換
22.在執行期間,工程師可透過 Probe 工具而觀看接線中的資料,且不至於拖慢執行速度。Highlight Execution 則會拖慢執行速度並顯示資料流;Single Stepping 工具則可讓工程師觀察subVI
23.依預設值,Dequeue Element 函式將保持等待,直到可獲得資料。一旦獲得資料或佇列參考毀壞,才會回傳。此功能為 Producer/Consumer 設計形式所必備
24.若屬於多重維度的陣列,則 Array Size 函式將輸出 1D 陣列,內含各個維度的大小。陣列次序為列 (Row) 優先,再來是欄 (Column)。所以正確答案 A 為 2 列 3 欄
25.所有可能的答案均指向 Value Change 事件。而 Value Change事件最常由使用者透過人機介面所產生
26.答案 A 與 B 均回報錯誤,但不會停止。答案 D 會停止,但不會回報錯誤。僅 C 正確
27.由於功能性全域變數 (Functional Global Variable) 並無法直接操作人機介面的控制元,因此不會動作。此情況亦沒有套用 Data Value References。將期望數值設定為預設值,亦非以程式設計方式而更新控制元。所以答案 B 是唯一合理解答
28.Key Navigation 為控制元的屬性,可讓工程師指定控制元的鍵盤動作。Key Focus 則是決定「目前是否選擇了控制元」的屬性。「Radix」為整數控制元的顯示元件,可讓使用者選擇Decimal、Binary、Octal、Hexadecimal 顯示。Distribute Objects 則是人機介面的管理工具
29.由於 .ctl 檔案儲存為 Control,而非 Type Def. 或 Strict Type Def.;因此檔案發生的變化並不會更新控制元的實體
30.隱式 (Implicit) Property Node 均是清楚明瞭的連接其控制元或指示元。不需任何參考接線。顯式 (Explicit) Property Node 則需要參考接線,以決定 Property Node 所應操作的控制元。Data Value Reference 與 Property Node 毫無關連
31.Waveform Graphs 可容納多維度陣列,或具備波形資料的叢集 1D 陣列。如答案 A 所表示,Waveform Graphs 將不接受 1D 陣列中交錯的 X 與 Y 資料
32.LabVIEW Projects 不會像常見資料夾一般儲存檔案,而是管理/整理常見應用的部分檔案
33.在 Context Help 視窗中的粗體自輸出,即代表 Required 輸入。由於 Required 輸入既有的特性,使要該輸入並未接線,VI 將提供破裂的 Run 箭頭
34.透過控制參考即可建立其他 VI 的連結捷徑,讓 subVI 存取主要 VI 的物件屬性與方法
35.要求事件僅需通知 LabVIEW「已發生/已處理的事件」。篩選事件可讓使用者透過程式設計,決定是否捨棄事件
36.全域變數的主要優點,即是可於多組 VI 之間傳送資料
37.反饋 (Feedback) 節點的功能,極近似於移位暫存區 (Shift register)。在此程式碼片段中,反饋節點的初始值為 4。在循環 1 次之後,節點中所儲存的值又再加 4,而得出 8
38.斷點 (Breakpoint) 可讓 VI 暫停執行,並等待工程師選擇要開始單一步進,或解除暫停
39.A 與 B 均回傳毫秒 ms 為單位的值。因為題目指定「執行期間延長」的應用,所選用的函式應能計數較大的數字,不至於太快數完又歸零重來。而答案 B 僅是為程式碼新增了同步化延遲。如此並無法達到有效率的長時間執行。最好是比較現有時間與參考時間,了解耗用的時間是否正確。所以答案 C 較佳
40.當進行陣列運算時,LabVIEW 將強制輸出成為較小的輸入。在此條件下,輸出將為「具備2 組元素」的 1D 陣列。而此 2 組元素為 75-100 與 50-25,亦即 {-25, 25}