考卷名稱:LabVIEW模擬試題
字體大小:A  A  A 
  考試題目
(1)1.下列有關此程式碼執行的敘述,何者正確?
      (1)
(1) 此迴圈將循環 51 次
(2) 此迴圈將循環 50 次
(3) 此迴圈將循環 49 次
(4) For Loop 若連接「50」至計數終端,則將執行相同的作業
詳解:While Loop 與 For Loop 中的循環端點 (Iteration terminal),均從零開始計數。所以首次循環將回傳「0」,第二次循環將回傳「1」;依此類推。此處是設定「當循環端點的輸出為大於或等於 50 時」,While Loop 隨即停止。圖中可看出循環端點的輸出數值至少為「50」,所以必為 51次循環之後
(1)2.下列何種情況將產生事件 (Event),並由 LabVIEW Event Structure 所擷取?      (2)
(1) 用滑鼠更改人機介面控制元的數值
(2) 使用屬性節點 (Property node) 更新人機介面的控制元
(3) 透過控制參考 (Control reference),以程式設計方式更新人機介面的控制元
(4) 使用「VI Server」更新人機介面的控制元
詳解:所有可能的答案均指向 Value Change 事件。而 Value Change事件最常由使用者透過人機介面所產生
(1)3.在執行此程式碼之後,Result 指示元將顯示何值?
      (3)
(1) SubVI 的執行時間將以毫秒 (Millisecond,ms) 計
(2)
(3) 從 1970 年 1 月 1 日以來的秒數
(4) Sequence 架構的執行時間將以毫秒 (Millisecond,ms) 計
詳解:當呼叫 Tick Count (ms) 函式時,將回傳 millisecond 計時器的數值。若呼叫 2 次並比較,將發現呼叫之間往往會產生時間差 (以毫秒 ms 為單位)。在此程式碼片段 (Snippet) 中,隨即將於 TickCount (ms) 函式的 2 次呼叫之間,另外呼叫 subVI。因此 A 為正確答案
(1)4.現在有 VI 人機介面上的 1 組控制元,需於 Run-Time 期間修改其中之一的屬性。下列哪 種應為最佳方式?      (4)
(1) 建立隱藏式的屬性節點,並選擇所要修改的屬性
(2) 建立控制元參考,將參考傳送至屬性節點,再選擇所要修改的屬性
(3) 建立已連線的共用變數 (Shared variable),再選擇所要修改的屬性
(4) 建立局部變數,再選擇所要修改的屬性
詳解:Property Nodes 是為了能「透過程式設計而修改人機介面的物件」所設計。變數 (Variable)並不會修改人機介面的物件,因此 B、C 均不對。由於此處並不是使用 subVI,答案 A 較答案 B 正確。因為隱式 Property Node 即可運作,而不像顯式 Property Node 需要額外輸入
(3)5.建立陣列最有效率方式為:      (5)
(1) 於 While Loop 中放置陣列建置 (Build array) 函式
(2) 初始化陣列之後,接著取代 While Loop 中的要素
(3) 使用 For Loop 搭配 Auto-indexing 功能
(4) 使用 While Loop 搭配 Auto-indexing 功能
詳解:與 While Loop 相較,For Loop 更能有效建立陣列;因為 For Loop 將執行已預先決定的循環次數。因此,在執行 For Loop 之前,LabVIEW 可先針對陣列而分配記憶體
(3)6.針對長時間執行應用的時序控制邏輯,以下何項為最佳的時序函式 (VI)?
      (6)
(1)
(2)
(3)
(4)
詳解:A 與 B 均回傳毫秒 ms 為單位的值。因為題目指定「執行期間延長」的應用,所選用的函式應能計數較大的數字,不至於太快數完又歸零重來。而答案 B 僅是為程式碼新增了同步化延遲。如此並無法達到有效率的長時間執行。最好是比較現有時間與參考時間,了解耗用的時間是否正確。所以答案 C 較佳
(4)7.下列程式圖所顯示的 VI 中,啟動自動錯誤處理 (Automatic error handling) 的功能。若檔 案「C:\data.txt」不存在,是否將蹦現錯誤對話框?      (7)
(1) 會,每當 Open/Create/Replace File 函式回傳錯誤時,都會蹦現錯誤對話框
(2) 會,每當迴圈完成 1 次週期,都會蹦現錯誤對話框
(3) 會,但僅出現一次,且與迴圈週期無關
(4)
詳解:即使啟動了自動錯誤處理功能,但錯誤叢集均將接至所有函式的輸出。如此一來,雖然發生錯誤,亦可避免 LabVIEW 中斷執行並對使用者顯示對話框。只要函式的輸出並未銜接錯誤叢集,LabVIEW 將顯示對話框並暫停執行
(34)8.若 Show Context Help 視窗中的某項輸入名稱,是於 SubVI 中以粗體字顯示,則下列敘 述何者為真?      (8)
(1) 輸入值必為純數 (Scalar)
(2) 此項輸入為建議使用,非必要輸入
(3) 該項輸入為必要輸入
(4) 除非接線至該項輸入,否則將造成破裂的執行箭頭
詳解:在 Context Help 視窗中的粗體自輸出,即代表 Required 輸入。由於 Required 輸入既有的特性,使要該輸入並未接線,VI 將提供破裂的 Run 箭頭
(1)9.下圖 Array Size 的輸出為:
      (9)
(1) {2, 3} 的 1D Array
(2) {3, 2} 的 1D Array
(3) 2
(4) 以上皆非
詳解:若屬於多重維度的陣列,則 Array Size 函式將輸出 1D 陣列,內含各個維度的大小。陣列次序為列 (Row) 優先,再來是欄 (Column)。所以正確答案 A 為 2 列 3 欄
(1)10.何項程式碼片段 (Snippet) 將寫入最少量的資料至磁碟?      (10)
(1)
(2)
(3)
(4)
詳解:單一 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 均將寫入多個位元組的資料
(2)11.下列何項設定,將可針對人機介面的控制元,指派其特定按鍵或按鍵組合?      (11)
(1) Key Focus
(2) Key Navigation
(3) Radix
(4) Distribute Objects
詳解:Key Navigation 為控制元的屬性,可讓工程師指定控制元的鍵盤動作。Key Focus 則是決定「目前是否選擇了控制元」的屬性。「Radix」為整數控制元的顯示元件,可讓使用者選擇Decimal、Binary、Octal、Hexadecimal 顯示。Distribute Objects 則是人機介面的管理工具
(1)12.在執行下列程式碼之後,該新字串的結果為何?
      (12)
(1) Hello to you!
(2) Hello Wto you!
(3) Hello to you!!
(4) Helloto you!
詳解:根據已知的字串輸入,Replace Substring 函式將以「子字串輸入所供應的字串」,取代「偏移 (Offset) 特定位置所開始的原始字串」
(2)13.Control References 的功能為何?      (13)
(1) 以程式設計的方式,為 VI 新增控制元與指示元
(2) 可於 SubVI 中存取人機介面物件的屬性
(3) 以別名 (Alias name) 控制多個 DAQ 輸入
(4) 可從控制元接線至函式與 subVI
詳解:透過控制參考即可建立其他 VI 的連結捷徑,讓 subVI 存取主要 VI 的物件屬性與方法
(3)14.在執行此程式碼之後,Numeric 指示元將顯示何值?
      (14)
(1) 0
(2) 4
(3) 8
(4) While Loop 將無限循環
詳解:反饋 (Feedback) 節點的功能,極近似於移位暫存區 (Shift register)。在此程式碼片段中,反饋節點的初始值為 4。在循環 1 次之後,節點中所儲存的值又再加 4,而得出 8
(3)15.假設現在開發 1 組 SubVI 僅輸出單一值,且需於原始 VI (calling VI) 中使用此 subVI。若 要強制資料流去控制 subVI 的執行作業,則下列的最佳方式為?      (15)
(1) 於 Sequence 架構中使用 subVI
(2) 修改 SubVI 具備虛值 (Dummy) 輸入,以透過原始 VI 使用之
(3) 修改 SubVI 具備 Error 叢集,以透過原始 VI 使用之
(4) 修改 SubVI 具備全域變數 (Global variable),以透過原始 VI 使用之
詳解:初始化 subVI 中的錯誤叢集,即可適當處理錯誤,亦可為強制資料流的最佳方式
(3)16.檔案「C:\data.txt」並不存在,但 VI 並未回報錯誤。則何項程式碼片段 (Snippet) 將回 報錯誤並停止?
      (16)
(1)
(2)
(3)
(4)
詳解:答案 A 與 B 均回報錯誤,但不會停止。答案 D 會停止,但不會回報錯誤。僅 C 正確
(2)17.若有 2 組平行執行的迴圈,是否可用接線於迴圈之間傳輸資料?      (17)
(1)
(2)
(3)
(4)
詳解:For loop 即平行執行,之間不應存在資料相關性。根據資料流的規則,若 2 組迴圈完成接線作業之後,第二組迴圈將對第一組迴圈產生依賴性。因此,若於迴圈之間使用接線,就不再是平行特性
(2)18.必頇以程式設計的方式,更新數字控制元中的值。何項為最佳策略?      (18)
(1) 使用功能性全域變數 (Functional Global Variable)
(2) 使用局部變數 (Local variable)
(3) 將所期望的數值設為預設值
(4) 使用 Data Value Reference
詳解:由於功能性全域變數 (Functional Global Variable) 並無法直接操作人機介面的控制元,因此不會動作。此情況亦沒有套用 Data Value References。將期望數值設定為預設值,亦非以程式設計方式而更新控制元。所以答案 B 是唯一合理解答
(1)19.與局部變數相較 (Local variable),下列全域變數 (Global variable) 優點的敘述何項為真?      (19)
(1) 在同步執行的 2 組獨立 VI 之間,全域變數 (Global variable) 亦可傳送資料
(2) 僅全域變數 (Global variable) 可傳送陣列資料,局部變數 (Local variable) 不行
(3) 全域變數 (Global variable) 將依循資料流的模式,因此不會造成競態條件(Race condition)
(4) 全域變數 (Global variable) 本身不需標籤 (Label) 亦可作業
詳解:全域變數的主要優點,即是可於多組 VI 之間傳送資料
(1)20.何項圖表將先行變更色彩?
      (20)
(1) Plot 1 先變色。因其屬性是由上到下「Top-down」執行
(2) Plot 0 先變色。因屬性是從零開始的數字順序執行
(3) 2 組圖表將同步變色。因屬性是以多執行緒 (Multithreading) 執行
(4) 無法判別。因為 LabVIEW 是以資料流的格式執行作業
詳解:Property Nodes 均由上至下執行。圖 1 為優先選擇並修改過,因此將先變更其顏色
(4)21.下列何項可讓使用者於 Waveform Graph 中具備多組圖表?      (21)
(1) 針對各組圖表,整合 X 與 Y 資料的 2 組 1D 陣列。接著建立這些叢集的陣列,並將 之連至 Waveform Graph 指示元
(2) 透過陣列中的獨立列 (或欄) 中的各個圖表,於陣列中建立資料的 N 維度 (Ndimensional) 陣列,再將陣列接至 Waveform Graph 指示元
(3) 將各個波形的元素整合至叢集中,並建立這些叢集的陣列,再將陣列接至 Waveform Graph 指示元
(4) (透過陣列…)跟(將各個波形…)兩個答案都對
詳解:Waveform Graphs 可容納多維度陣列,或具備波形資料的叢集 1D 陣列。如答案 A 所表示,Waveform Graphs 將不接受 1D 陣列中交錯的 X 與 Y 資料
(3)22.下列何項最能說明 Notify 事件 (如 Boolean 控制元的數值變更)?      (22)
(1) 事件發生且 LabVIEW 並未處理該事件
(2) 事件發生且由使用者捨棄該事件
(3) 事件發生且 LabVIEW 已處理該事件
(4) 事件並未發生,但發生特定的 Event 逾時 (Timeout)
詳解:要求事件僅需通知 LabVIEW「已發生/已處理的事件」。篩選事件可讓使用者透過程式設計,決定是否捨棄事件
(2)23.若要客制化控制元,則可從 Type Def. Status 下拉式功能表中點選 Control,再將控制元 儲存為 .ctl 檔案。接著在人機介面視窗中,即可使用客制化控制元的範例。若開啟 .ctl 檔案並修改控制元,那人機介面視窗中的控制元是否發生變化?      (23)
(1)
(2)
(3)
(4)
詳解:由於 .ctl 檔案儲存為 Control,而非 Type Def. 或 Strict Type Def.;因此檔案發生的變化並不會更新控制元的實體
(3)24.此 Dequeue Element 函式將等待多久以接收資料?
      (24)
(1) 1 millisecond (預設無接線)
(2) 1 second (預設無接線)
(3) 無限期等待
(4) 不會等待且立刻回傳
詳解:依預設值,Dequeue Element 函式將保持等待,直到可獲得資料。一旦獲得資料或佇列參考毀壞,才會回傳。此功能為 Producer/Consumer 設計形式所必備
(3)25.在 VI 納入此 Stacked Sequence 架構並執行之後,Result F2 指示元將顯示何值?
      (25)
(1) 0
(2) 25
(3) 40
(4) 65
詳解:Sequence local 可於 Stacked Sequence 架構的框架之間儲存資料。此處的 Sequence local 僅寫入至 Frame 0。因此 Frame 1 與 Frame 2 不致發生衝突。Result F2 中的值為 8 乘以 5,即等於40
(3)26.何項敘述可確實說明下列迴圈執行的輸出結果?
      (26)
(1) 將顯示 Random Number 函式的最後 3 項數值
(2) 將顯示所有量測作業的執行平均
(3) 將顯示最後 4 項量測作業的平均
(4) 其它答案皆非
詳解:針對之前的多次循環,堆疊式移位暫存器 (Shift register) 可記憶寫入值。頂端節點即是最近一次的循環。在觀察過程式碼片段之後,可發現其平均並顯示了最近 4 次的量測
(2)27.下列何種情況下,應使用「Probe」工具而非「Highlight Execution」?      (27)
(1) 觀看資料流
(2) 即時觀看接線 (Wire) 數值
(3) 於程序進行期間深入觀看 subVI
(4) 要減緩 VI 速度,並於接線 (Wire) 中顯示資料值
詳解:在執行期間,工程師可透過 Probe 工具而觀看接線中的資料,且不至於拖慢執行速度。Highlight Execution 則會拖慢執行速度並顯示資料流;Single Stepping 工具則可讓工程師觀察subVI
(4)28.此圖表將顯示單一條件陳述式 (Case statement) 的所有條件。在執行此 VI 之後,Result 指示元將顯示何值?
      (28)
(1) 5
(2) 7
(3) 12
(4) 36
詳解:因為銜接條件選擇元 (Case selector) 的輸入,並不符合任何其他條件,因此將執行 Default條件。所以答案為 62,亦即 36
(2)29.下列斷點 (Breakpoint) 將可造成:
      (29)
(1) 取消該 VI
(2) 暫停該 VI
(3) 讓該 VI 以單一步驟穿過 Addition
(4) 讓該 VI 以單一步驟穿過指示元
詳解:斷點 (Breakpoint) 可讓 VI 暫停執行,並等待工程師選擇要開始單一步進,或解除暫停
(2)30.在執行此程式碼之後,Result 將顯示何值?
      (30)
(1) {-25, 25, 50} 的 1-D 陣列
(2) . {-25, 25} 的 1-D 陣列
(3) {{-25, -50, -50}, {50, 25, 25}} 的 2-D 陣列
(4) {75, -50, 25} 的 1-D 陣列
詳解:當進行陣列運算時,LabVIEW 將強制輸出成為較小的輸入。在此條件下,輸出將為「具備2 組元素」的 1D 陣列。而此 2 組元素為 75-100 與 50-25,亦即 {-25, 25}
(4)31.對 Boolean 應進行何種機器動作,才能於 Windows 對話框中模仿按鈕?      (31)
(1) 切換直到放開
(2) 放開時才切換
(3) 鎖定直到放開
(4) . 放開時才鎖定
詳解:Windows 對話框按鈕在執行點選作業之前,會等待直到使用者放開按鈕。當使用者按下並放開按鈕,按鈕隨即回傳其預設狀態。此動作近似於 LabVIEW 中的 Latch When Released 機器動作
(3)32.建立 Functional Global Variable 時,何項不重要?      (32)
(1) 使用 Shift Registers 儲存資訊
(2) 將 VI 的執行設定變更為 Reentrant
(3) 將 VI 設定為原始 VI (calling VI) 中的行內 (Inline)
(4) 將 While Loop 設定單次循環之後即停止
詳解:在功能性全域變數的原始 VI (calling VI) 中,不需排列並依序處理之。事實上,若要依序處理,則為可重複呼叫 (Reentrant) 的 subVI,但功能性全域變數不能重複呼叫
(3)33.下列何種圖表 (Chart) 的更新模式,可透過垂直線區分新舊資料並進行比較?此圖的顯 示方式亦近似於心電圖 Electro-cardiogram (EKG)      (33)
(1) Strip Chart
(2) Scope Chart
(3) Sweep Chart
(4) Step Chart
詳解:Strip chart 是由左至右開始繪圖,且期間會持續捲動。Scope chart 亦由左至右開始繪圖,直到繪圖區域滿了隨即停止。一旦清除之後,再從左側開始繪圖。Sweep chart 的動作近似於 Scopechart;但若繪圖區域滿了之後,Sweep chart 隨即從左側開始覆寫既有資料。但 LabVIEW 中的 Stepchart 不會如此
(3)34.下列程式圖代表何種常見的 VI 架構?
      (34)
(1) Multiple Case Structure VI
(2) General VI
(3) State Machine VI
(4) Parallel Loop VI
詳解:狀態機器包含 1 組 While Loop、1 組 Case 架構、1 組移位暫存器,還有決定傳輸作業的程式碼
(1)35.叢集 (Cluster) 的功能為:      (35)
(1) 將混合的資料類型聚集為合邏輯的架構
(2) 透過圖表於人機介面中呈現資料
(3) 於程式圖上區別不同的資料形態
(4) 於人機介面上,依資料形態而區隔資料物件
詳解:叢集可將資料蒐集至架構中。如此僅需最少量的接線與端點,而達到清理程式圖的目的。叢集中可能混雜了資料形態
(3)36.強制點 (Coercion dot) 代表:      (36)
(1) 資料形態一致
(2) 將針對資料執行多型態作業 (Polymorphic operation)
(3) 建立資料緩衝區以利轉換資料
(4) 資料值已超出範圍,因此將強制 (Coerced) 資料值
詳解:強制點 (Coercion dot) 代表「特定的資料形態已接至端點」,且該端點可接受相容的不同資料形態。如此一來,LabVIEW 可將資料轉換為較大型的 2 種資料形態。而必頇建立記憶體緩衝區,以儲存受強制的資料
(4)37.何種組合可正確完成下列敘述?不同於 _____ Property Nodes,_____ Property Nodes 需要 _____ 作為輸入,以能正確運作      (37)
(1) Explicit; Implicit; Data Value References
(2) Implicit; Explicit; Data Value References
(3) Explicit; Implicit; Control References
(4) Implicit; Explicit; Control References
詳解:隱式 (Implicit) Property Node 均是清楚明瞭的連接其控制元或指示元。不需任何參考接線。顯式 (Explicit) Property Node 則需要參考接線,以決定 Property Node 所應操作的控制元。Data Value Reference 與 Property Node 毫無關連
(2)38.使用「State Machine VI」架構的缺點之一為何?      (38)
(1) State Machine 僅可依序轉換 (Traverse) 狀態
(2) 若同時有 2 項狀態發生變化,將僅處理第一項狀態變化,並遺失第二項狀態
(3) 若將一般架構變更為 State Machine 時,程式區將大幅擴增
(4) 狀態機器 (State Machine) 無法擷取資料,或使用 DAQ 功能
詳解:若先前的狀態執行期間,已發生了狀態轉換 (如使用者點選人機介面按鈕),則簡易型的狀態機器將不會有緩衝區可維持狀態轉換。因此,若在處理轉換之前發生超過 1 次轉換,則除了最近的 1 次轉換之外,將遺失其他所有轉換
(3)39.何種組合可正確完成下列敘述?______________ 代表該迴圈即將所執行的總次數;而 _______________ 將回傳該迴圈已執行的次數減 1。      (39)
(1) count terminal, ; conditional terminal,
(2) conditional terminal, ; iteration terminal,
(3) count terminal, ; iteration terminal
(4) conditional terminal, ; count terminal,
詳解:計數終端將顯示 For Loop 所要執行的次數。While Loop 的 Conditional Terminal 可能決定迴圈的執行次數,但不會直接顯示循環次數。循環端點將回傳「已發生的循環次數 -1」
(4)40.下列何項最能完整說明 LabVIEW Project (.lvproj) 檔案?      (40)
(1) 屬於特定資料夾,內含應用相關的所有檔案
(2) 包含人機介面與程式圖的檔案,可建構程式設計的步驟
(3) 編譯完成的程式碼,常見於應用的最後佈署作業
(4) 可將專案的所有相關檔案拖曳進來,而建構捷徑並有利管理
詳解:LabVIEW Projects 不會像常見資料夾一般儲存檔案,而是管理/整理常見應用的部分檔案
 
考卷名稱:LabVIEW模擬試題
字體大小:A  A  A