roboard x labview 特別節目劇情版

34
繪師: 梁榆 老師 高畫質修飾: RB 魔人 從入門到初階 LabVIEW&RoBoard 無痛上手指南

Upload: roboard

Post on 19-Jun-2015

1.351 views

Category:

Technology


10 download

TRANSCRIPT

Page 1: RoBoard x LabVIEW 特別節目劇情版

繪師: 梁榆 老師

高畫質修飾: RB 魔人

從入門到初階

LabVIEW&RoBoard 無痛上手指南

Page 2: RoBoard x LabVIEW 特別節目劇情版
Page 3: RoBoard x LabVIEW 特別節目劇情版

1

第一幕 來作機器人吧!

本節目由瞻營全(DMP)公司贊助播出,在此由衷感

謝。

碧靈與威爺齊聲說道:「「大家好! 歡迎各位收看由

威爺與碧靈兩位所主持的『RoBoard Lab』特別節

目。」」

「本節目由 DMP 公司贊助播出。」碧靈微笑的說

著。

威爺看著碧靈說著:「這剛剛已經提過了…話說碧

靈啊,您有聽過”電子寵物”這個東西嗎?」

「有啊,我小時候有過一隻愛寶(AIBO)。」碧靈驕

傲的說。

「什麼…真的嗎!?」驚訝的威爺問道。

碧靈:「假的。」

「…………」威爺無言。

「唉,不是啊,你也知道愛寶剛出來的時候瞬間就

被秒殺了餒,而且沒幾年就停產了。」碧靈無奈的

說著。

威爺:「一下熱賣一下停產好像有點怪,不過沒想

到您對這個領域還算相當有概念嘛。」

碧靈驕傲的說:「當然囉,你以為我誰啊?」

威爺:「……那想必大小姐您也一定聽過由郭董代

工的 Pleo。」

碧靈:「就是公司破產的那隻恐龍嘛!」

「………嗚~~導播我接不下去了啦,又是停產又是

破產的。」無奈的威爺看著不在鏡頭內的導播。

「威爺你真的很弱餒,靠別人不如靠自己啊!」碧靈

有點生氣的說。

「什麼意思?」驚訝的威爺問道。

碧靈:「我是說,外面那些電子寵物總是賣的又貴

又不見得符合需求,想加個小套件、擴充軟體總得

耗掉大把銀子,那何不自己挖坑給自己跳…」

「咦?」威爺疑惑的看著碧靈。

碧靈:「我的意思是,那何不自己做一隻呢?」

「這、這談何容易呀?」威爺皺著眉頭。

碧靈不耐煩的說著:「……今天我們兩個特別上這

個節目,喇滴賽這麼久,不就是要為大家介紹如何

使用 RoBoard 這個神奇的產品,為自己量身打造一

台機器人嗎?」

Page 4: RoBoard x LabVIEW 特別節目劇情版

2

威爺:「是呀!」

「……你把自己今天的目的都給忘了。」碧靈敲著

威爺的頭。

威爺:「慚愧!」

「唉……」碧靈嘆著氣。「可那您得說說,這 RoBoard

是個怎麼樣的寶貝呢?」威爺問著碧靈。

碧靈:「它是一台電腦,可以跑 XP。」

「可以跑 XP?」威爺疑惑樣。

碧靈:「是呀。」

威爺:「這又有什麼了不起的呢? 誰家的電腦跑不

動 XP 的。」

「…它才這麼丁點大。」碧靈拿出 RoBoard 展示給

威爺看。

威爺接下 RoBoard 並打量著說:「您說這手機般大

小的玩意兒是電腦? 大小姐您可別誆人啊,我家外

接碟都比這大!」

碧靈:「你不信?」

威爺:「不信,沒圖沒真相。」

「要圖? 在這!」碧靈拿出證據。

威爺驚訝的說:「…這可真是了得啊!」

碧靈:「這還可是 MIT,台灣設計的呢!」

威爺大喊:「台灣之光!」

「重點是,它不單純是一台普通的 PC,其硬體規

格跟介面都是專為機器人設計的!」碧靈解釋。

「而且在裡面存一百部影片也不會變重!」威爺對著

鏡頭說。

無言的碧靈:「…這老哏了。」

「對不起。」威爺抓著頭。

碧靈看著手稿說著:「嗯哼哼,看來字數也差不多

了。所以下一回就要介紹如何運用 LabVIEW 語言

來控制這台機器人的心臟囉!」

威爺:「同時也會介紹使用 RoBoard 時的一些視窗

設定技巧!」

威爺與碧靈齊聲:「「感謝各位收看,下次再會。」」

(本集完)

Page 5: RoBoard x LabVIEW 特別節目劇情版

3

Page 6: RoBoard x LabVIEW 特別節目劇情版

4

第二幕 企鵝歸你,XP 娘歸我

威爺與碧靈齊聲:「「大家好! 歡迎各位收看由威爺

與碧靈兩位所主持的『RoBoard Lab』特別節目 Part

II !。」」

「感謝願意賞光蒞臨的各位觀眾以及贊助本節目

的 DMP 公司。」碧靈鞠躬。

威爺:「台灣的瞻營全(DMP)公司提供專為機器人愛

好者所設計之 RoBoard 小主板,實用、可靠、低功

耗,為使用者帶來前所未有的全新體驗!」

「……全新體驗?」碧靈搔著頭。

「怎麼了嗎? 碧靈。」威爺疑惑的看著碧靈。

碧靈:「市場上那些廠商所謂的全新體驗說好聽是

新玩意、新花招,實際上不過就是陌生的環境與詭

異的操作方式咩!」

「不,這個…」威爺一臉困惑。

「最好的例子不就是那奇怪的 Vista 嗎? 我是絕對

不會接受 Win 7 娘的,誰也別想從我這裡搶走 XP

娘!」碧靈激動樣。

威爺:「這是哪國的百合宣言啊? …不不,碧靈您誤

會了,事實上 RoBoard 對於開發環境的支援是最豐

富親切,從古早的 DOS 到 WIN CE、XP,以及傳

奇的 Linux 都有支援。」

「……」碧靈摀住嘴,像是說錯話的樣子。

「除了可以使用最普遍的 C 語言來操作 RoBoard

之外,在以 DMP 的工程師為祭品進行招喚後,經

典的 VB、JAVA、Python、.NET 等也可以用來撰寫

機器人程式囉!」威爺解釋道。

「這真是太 Nice 了! 感謝 DMP 工程師的犧牲與奉

獻。」碧玲看著鏡頭說著。

(更進一步的詳情請至 RoBoard 的官網查詢

http://www.roboard.com)

威爺:「而在本系列節目中我們將使用 WIN XP 平

台,以及 LabVIEW 圖控程式語言進行機器人的程

式開發工作喔!」

「……LabVIEW 圖控程式語言?」碧靈再度搔著頭。

威爺:「是呀!」

Page 7: RoBoard x LabVIEW 特別節目劇情版

5

「那我們再從牌組抽出一張『DMP 工程師』……」

碧靈拿出一堆名片。

威爺伸出手,阻止了碧靈「大小姐,ちょっと待っ

て一下! 事實上,來自荷蘭的 Ries 先生、來自荷蘭

的 Ries 先生,為我們完成了 RoBoIO 與 LabVIEW

的整合工作。」

碧靈:「感謝來自荷蘭的 Ries 網友。」

威爺:「來自荷蘭的 Ries 網友所調用的模組為

RoBoIO 1.5b 版本,適用於 LabVIEW 8.6.1,有需要

的觀眾可衝浪至 DMP 的 RoBoard 官網下載!」

「1.5b? 8.6.1?」碧靈疑惑樣。

威爺:「希低!」

碧靈:「現在最新的 RoBoIO 已經是 1.8 版了,

LabVIEW 也到了 2011 啦?」

「沒錯,所以我們之後也會指導大家怎麼在

LabVIEW 裡調用 RoBoIO 的 DLL。」威爺指著鏡

頭,對著觀眾說著。

碧靈與威爺齊聲:「那各位觀眾,我們就下次再會

啦!」

Page 8: RoBoard x LabVIEW 特別節目劇情版

6

第三幕 來還原吧!...咦?

威爺與碧靈齊聲:「「大家好! 歡迎各位收看由威爺

與碧靈兩位所主持的『RoBoard Lab』特別節目 Part

III !。」」

「今天我們將現場由攝影棚轉移到實驗室這邊,讓

各位使用者了解從開機到關機,從搖籃到墳墓的整

個程序。」碧靈微笑的說著。

「在這邊要說明的是,RoBoard 的規格與操作規範

以官方公布為準,本節目所提供之內容、程序不提

供任何保證。」威爺露出陰險的笑容。

碧靈:「咦?」

威爺半開玩笑的說:「一般來說,斯斯有兩種,

RoBoard 有三種。其分別為 RB-100、RB-110 與

RB-050。」

「有沒有 RB-050 市面上買不到的八卦?」碧靈看著

威爺。

威爺:「同樣的,地球只有一個,但歐派有兩個,

所以 RB-100 也有兩個子型號,其新型為

RB-100RD。」

碧靈:「在本節目發佈的同時,RB-100RD 尚未發售,

煩請見諒。」

「所以今天在節目中,我們將利用 RB-100RD 這塊

RoBoard 建置機器人開發環境。所以請各位觀眾拿

起您們手上的 RB-100RD,跟著一起操作。」威爺

拿出了不知從哪 A 來的 RB-100RD。

「…………」碧玲看著 RB-100RD。

威爺對著鏡頭解釋道:「RoBoard 跟一般電腦、筆電

不同的地方在於,其使用 microSD 作為主要儲存裝

置,跟傳統的 2.5、3.5 吋硬碟及 SSD 有相當大的不

同。」

碧靈:「我覺得 SSD 並不傳統…」

「由於對 RoBoard 來說,microSD 的讀寫速度算

是主要的效能瓶頸之一,因此強烈建議使用 Class 6

以上並採用國際知名大廠的產品。」威爺指著大螢

幕上的幾家知名大廠的 LOGO。

碧靈:「User 注意! 記憶卡的讀寫性能應以實測為

準!」

「現在我們將一塊全新的 microSD 卡插進去。」

威爺拿出一片 microSD 卡。

碧靈:「嗯哼。」

「這個時候,我們再拿出之前用 Ghost 準備好的

RB-100 系統備份檔。」威爺開啟了 Ghost 程式。

碧靈:「咦?」

「Ghost 是個非常好的軟體,可以將整個硬碟備分

成單一.gho 檔,提供多個電腦進行還原工作。現在

請各位使用者準備好跟我們一起拿出備份檔進行

還原工作。」威爺解釋道。

碧靈:「咦咦?」

「恩,很好,這樣就能省去繁複的安裝工作,快速

建立起開發環境…糟糕。」威爺看著螢幕。

「………當機了!」碧靈冷靜的說著。

「快、快把攝影機關掉!」威爺大喊。

Page 9: RoBoard x LabVIEW 特別節目劇情版

7

(本集完…咦??)

(RB-100 與 RB-100RD 使用的核心不相同,故還

原檔不能混用喔!)

Page 10: RoBoard x LabVIEW 特別節目劇情版

8

第四幕 如何建構開發環境?

威爺與碧靈齊聲:「大家好! 歡迎各位收看由威爺與

碧靈所主持的『RoBoard Lab』特別節目第四集!」

「恩,在節目開始之前呢,節目製作人有幾句話要

轉告給觀眾。」威爺說。

「節目製作人有幾句話要說。」碧靈對著鏡頭說著。

「他說啊,『最近幾集節目會 Delay,都是因為節

目時段被總統選舉廣告買完的關係,絕對不是因為

某人缺乏誠意』醬。」威爺笑著說。

碧靈:「嘿! 那總統大選沒選完,節目不就別播啦!」

威爺語重心長的說:「所以我們可以看得出來,台

灣政治活動對於百姓生活有著很深遠的影響…」

「威爺你別跩文了,說些正經的。」碧靈小聲的說

著。

威爺:「是的是的,相信各位觀眾在上一集節目中,

跟我們一起成功的(?)安裝 XP 作業系統之後,已經

開始在 RoBoard 進行一些簡單的基本操作。」

「…那個(?)……」碧靈似乎想起當機事件。

「因此在本集節目中,我們將對於 RoBoard 的實

際運用上,提出一些技巧和建議。」威爺沒有理會

碧靈說的話。

碧靈:「………」

「碧靈大小姐,有意見?」威爺看著碧靈。

碧靈:「我說啊,RoBoard 不也就是一台迷你的、

袖珍的、宇宙第一無敵小的…普通 PC 嘛! 那還有什

麼技巧咧?」

威爺:「沒錯。事實上,RoBoard 的特點正是讓使

用者能在熟悉的開發環境下,使用那些多樣的 I/O

介面來開發自己的機器人…不過這並非這一集所要

討論的重點。」

「喔?」碧靈疑惑的看著威爺。

威爺:「雖說開發環境相似,但它與一般電腦在應

用情境上,有著很大的不同喔!」

「什、什麼!?」碧靈似乎很驚訝。

「讓我們從一個實務的角度來切入吧,一般電腦上

開發程式多半是直接撰寫、編譯、執行。但由於

RoBoard 的產品定位是安裝在機器人上的嵌入式

電腦,所以其性能……」威爺說著。

「…悲劇?」 碧靈看著威爺。

威爺:「…並不適合直接將 Visual studio、LabVIEW

等程式開發環境直接安裝在上面,而應該在一般電

腦上將程式編譯好後,再將執行檔放入 RoBoard

執行…DMP 工程師大人是這樣說的、沒錯!」

碧靈:「這樣說來 RB-100 跑起來的感覺,跟初期

型 EPC 感覺差不多呢。」

威爺:「或…或許吧。附帶一提,本節目是由 DMP

公司獨家贊助播出。」

「既然照你剛剛說,編譯跟執行要分隔兩地進行,

那檔案不就要常常傳來傳去嗎?」碧靈問著。

「沒錯,這個時候就要用上喜歡到處亂插的(?)萬惡

隨身碟,然後插來插去插來插去插來插去插來插去

插來插去插來插去插來插去插來插去插來插去插

插去插來插去…」威爺像跳針一樣的念著。

Page 11: RoBoard x LabVIEW 特別節目劇情版

9

碧靈:「恩……」

「插來插去插來插去插來插去插來插去插來插去

插來插去插來插去……」威爺繼續跳針。

「夠了! 這樣下去別人會懷疑我們…不,是 DMP

公司的品味的說。」受不了的碧靈阻止威爺。

「沒錯,這實在是很困擾人的問題呢! 而且還會到

處散布傳染病…」威爺說著。

碧靈:「那,這該如何是好~?」

威爺:「放心! 不所不能的 USB 周邊商品提供了具

體解決方案。只需要買一條傳說中的『鼠‧鍵盤共享

&資料共享傳輸線』,就能一次解決滑鼠鍵盤以及檔

案共享的問題!」

「這真是太神奇了少卿,不對,威爺~」碧靈說著。

威爺:「沒錯,只要一個滑鼠、鍵盤就能控制兩台

電腦,不只將 USB 埠使用量從三個減少到一個。

而且還能共用剪貼簿來分享文字跟檔案,具備

USB2.0 的高速傳輸能力與隨插即用能力,攻防無

死角,輕鬆無負擔!」

碧靈:「原本是應該這麼完美的,只可惜……」

「可惜……?」威爺看著碧靈。

「喵的,威爺你陰我…」碧靈生氣的說著。

威爺:「是的,在剛剛我們提到了使用 USB 資料傳

輸線的小技巧。」

「……」碧靈無言了。

威爺:「然而這玩意兒用在 RB100 上面,反應就變

慢了…」

「那可不成啊。」碧靈說。

「唉………」威爺嘆著氣。

「好了,威爺你別再蹲角落畫圈圈了,快起來!」碧

靈安慰著威爺。

威爺:「唉………」

碧靈:「說實在的,如果把 RoBoard 裝在機器人、

自走車上面,還要裝著螢幕才能操作,這…太不方

便了。」

威爺:「是,沒錯! Debug 的簡易性在開發過程當

中是非常重要的,不然一不小心就會看到有一塊

RoBoard 從窗外飛出去。」

「要不是會被當掉,我就……」碧靈小聲的說著。

威爺:「咦,碧靈同胞您剛剛有說什麼嗎?」

碧靈:「恩,所以我們將介紹目前本節目所採用的

方法。」

威爺:「沒錯,也就是所謂的『遠端桌面』!」

「『遠端桌面』? 也沒什麼了不起的,不過就是

Window 內建的基本功能而已嘛。」碧靈看著威爺。

威爺:「碧靈同志您話可別這麼說,透過『遠端桌

面連線』不只可以共享螢幕、滑鼠鍵盤,也能輕易

的實現檔案分享;不需要額外安裝軟體,也不需要

添購多餘的硬體。」

「非常的輕巧實用呢。」碧靈感慨的說著。

威爺:「沒錯。」

Page 12: RoBoard x LabVIEW 特別節目劇情版

10

「那『遠端桌面連線』應當如何設定呢?」碧靈問

著威爺。

威爺:「如果各位觀眾對於其相關設定有所疑問的

話,那我們將在這裡一步一腳印的指引您;首先您

可以看向眼前瀏覽器的右上方,那裡有個搜尋列,

在裡面輸入『遠端桌面連線』就可以了。」

「那如果觀眾用的是 Chrome 怎麼辦呢?」碧靈接

著問。

「如果您用的是 Chrome,那就更方便啦! 在正上

方的網址列填入『遠端桌面連線』即可搜尋到相關

解決方案。」威爺回答著。

「真的是非常簡單好用呢。」碧靈說著。

威爺:「沒錯。Google 搜尋簡單好用,輕巧大方,

是您居家旅行的最佳選擇;有問題,請愛用股溝。

有疑義,請愛用谷歌。對於以上內容如有疑問,請

使用 Google 關鍵字查詢。」

威爺:「是的。」

碧靈:「可是,威爺。既然谷歌這麼好用,那我們

為何不乾脆在節目開始打上 www.Google.com 就

好了呢?」

「這個節目企劃不錯,我想製作人一定會很高興

的。」威爺解釋著。

碧靈:「是。但是事情有這麼簡單嗎? 在實際的過

程中一定會遇到奇怪的問題的吧? 比方說,如果我

們要用搭載 RoBoard 的自走車出去比賽,那……」

威爺:「沒錯,第一個碰到的就是主控電腦必須跟

RoBoard 有網路連結才能實現遠端桌面;由於有線

網路並不是個很好的選擇。因此我們會建議搭載小

型 USB 無線網路卡並搭配內建網卡的筆記型電腦

來操作,這樣就能以無線網路來實現遠端桌面囉!」

「理論上是這樣沒錯,但是如果會場沒有提供無線

網路服務,也就是沒有無線網路基地台(AP)可以用,

那要怎麼辦呢?」碧靈問著威爺。

「這個時候就要 GOOGLE 一下。」威爺開啟瀏覽

器。

「………」碧靈無言。

威爺:「恩,事實上根據威爺股溝後的結果,會建

議採用『電腦對電腦(臨機操作) 網路』(Ad-hoc)

設定,這樣透過無線網卡把兩台電腦『連』起來!」

碧靈:「沒錯,如對操作細節有疑問,請愛用股溝

搜尋,亦可 Call in 本節目詢問。」

威爺:「預錄節目也能現場 Call in,真的是很厲害

呢!」

碧靈:「這都拜網路發達所賜。不過在這裡又碰到

一個問題,我在 RoBoard 裡已經設定讓 XP 在登入

後執行一個程式,可是開機後 RoBoard 都不動……」

「沒錯,由於一般內建的遠端桌面功能要求使用者

必須輸入帳號密碼才能進行連線,所以使用者帳號

不能使用空白密碼…可是這樣開機時就必須輸入密

碼才能登入,不能一開機就直接 Run 囉科科。」威

爺急忙解釋。

碧靈:「……………這確實是很麻煩的問題呢,那該

怎麼辦?」

「恩,在威爺對股溝仔細的檢索後,發現只要將『本

機安全性原則』裡『限制使用空白密碼……』的選

項停用,不用另設密碼也能使用遠端操作喔!」威爺

看著電腦念著。

碧靈:「很多糟糕的事情好像也可以做了……所以各

Page 13: RoBoard x LabVIEW 特別節目劇情版

11

位觀眾要記得風險自負。」

威爺:「恩,那我想節目到此也將進入尾聲了。」

「要結束了嗎? 不過我想觀眾們應該還有很多使

用上的疑問吧?」碧靈看著導演。

威爺:「如果在使用上有疑義,可以仔細看看股溝

上的解答。如果還有疑問可以在本節目上 Call in,

我們會盡可能提供『親切』與詳盡的指導。」

碧靈:「真是有誠意…那麼各位觀眾,我們下次再會

啦!」

(本集完)

Page 14: RoBoard x LabVIEW 特別節目劇情版

12

第五幕 自從有了 Google,

我每次考試都一百分(?)

WWW.GOOGLE.COM

關鍵字:"RoBoard"、LABVIEW DLL

(感謝您的收看,我們下次再會。)

(本集內容要用 RJ45 接頭插這本書才看的到喔!)

Page 15: RoBoard x LabVIEW 特別節目劇情版

13

第六幕 如何在 LabVIEW 上使

用 RoBoIO?

碧靈:「大家好! 歡迎各位收看由威爺與碧靈所主持

的『RoBoard Lab』特別節目第六集!」

「姆!」威爺發出聲音。

「威爺,請把芒果乾放下來。」碧靈散發出有殺氣

的笑容。

威爺:「咕嚕…我、我只是在緬懷遠去的夏日風情罷

了。」

「逝者已矣,再說冬天應該要吃柑橘…」碧靈語調

平平的說著。

「沒錯! 所以今天我們將鏡頭轉到實驗室這邊,為

各位觀眾介紹如何用 LabVIEW 撰寫 RoBoard 的應

用程式。」威爺指著鏡頭。

「………」碧靈無言。

很快的,鏡頭轉到了實驗室。

「如果各位觀眾有定時收看前幾集的節目,那麼手

上應該會有一塊已經安裝好 XP、可以正常操作的

RB-100;我們在節目後續會以此進行示範。」威

爺說著。

碧靈:「威爺你一句話就破綻百出啊,誰教你的?」

「嗯哼、如果各位觀眾有定時收看前幾集的節目,

那麼應該還記得來自荷蘭的 Ries 先生、來自荷蘭

的 Ries 先生,提供 RoBoIO 1.5b 版本的 LabVIEW

模組。」威爺看著鏡頭。

「所以我們今天……」碧靈看著威爺。

威爺:「不過因為 Ries 先生不再對模組提供更新支

援了,所以我們今天將介紹如何在 LabVIEW 中自

行引入 DLL (Dynamic Link Library)來實現對

RoBoard 的控制。」

「………………」碧靈再度沉默。

威爺:「當然啦,第一步是先開啟 LabVIEW 開發環

境,不過我們通常不建議直接將其安裝在

RoBoard。」

「沒錯,因為其頗占資源,在 RoBoard 上進行開

發並不實際,不如先在桌機上…」碧靈說著。

威爺:「唉呀,一時手滑,不小心將 LabVIEW 8.61

給安裝到 RB-100 上了。」

「………小心 DMP 的工程師站在你背後,他非常

火。」碧靈看著後台的工作人員。

威爺:「既然如此,就請觀眾跟我們一起在 RoBoard

上直接操作吧。在 LabVIEW 要載入 DLL,可以直

接在後面板中開啟 Functions >> Connectivity

>> Libraries & Executables >> Call Library

Function Node,並根據我們的需求作進一步的設

定…」

Page 16: RoBoard x LabVIEW 特別節目劇情版

14

..........進廣告..........

碧靈:「大家好,感謝大家繼續收看。在本節目的

後半段,將由我碧靈繼續為各位介紹於 LabVIEW

載入 DLL 的步驟,以及相關設定。」

「至於威爺同學,很遺憾的,他在兩天前轉學去加

拿大了……」碧靈假裝擦拭著眼淚。

碧靈:「接下來我們將以引入”pwm_SetPulse”這

個函式為作為範例。請先至 RoBoard 官網

(http://www.roboard.com/download_ml.htm)

下載『RoBoIO 1.8 binary』這個檔案以供後續使

用。」

「如果各位看官的電腦都一直開著沒關的話,請按

照節目上半段的介紹,使用 Call Library Function

面板,跟著大姊姊一起作,按照下圖完成設定。」

碧靈在電腦上操作著。

「圖中所使用之 DLL 檔,位於方才所下載之壓縮檔

中(RoBoIO-bin-v1.8-winxp\Lib\VC2008)」

「而函式輸入及輸出之設定,可參考標頭檔 pwm.h

之內容(RoBoIO-bin-v1.8-winxp\Include)」

「使用者可以此作為參考,設定輸出入之資料型態;

完成設定後按下『OK』即可。」碧靈對鏡頭微笑。

「在本例中,由於輸出值應為布林(BOOL),因此

應將回傳值判斷是否非零後,再將結果輸出;使用

者若對不同資料型態應如何設定有所疑問,可參考

LabVIEW 範例(Find Examples…)中的『Call

DLL.vi』」

「如觀眾能不厭其煩以以上所舉之範例,依序完成

所需函式之設定,便能實現 RoBoard 應用程式之

撰寫。」

Page 17: RoBoard x LabVIEW 特別節目劇情版

15

(多通道 PWM 輸出實作)

「然設定之繁複、辨識之不易,非可行之法;故應

整經包裹,化繁為簡,分群別類,以饗大眾,為民

謀福,實為未來發展之方向。」碧靈微笑。

碧靈:「那各位觀眾,我們就下次再會啦!」

(本集完)

Page 18: RoBoard x LabVIEW 特別節目劇情版

16

第七幕 如何在 RoBoard 上

快速建立影像處理程序?

威爺及碧靈齊聲:「「大家好! 歡迎各位收看由威爺

與碧靈所主持的『RoBoard Lab』特別節目第七集!」」

「今個呢,我們要向各位觀眾介紹,如何透過

LabVIEW 來實現影像擷取。」碧靈指著投影幕上

的畫面。

威爺:「是。」

「當下台灣家家戶戶都有電腦,人人手裡皆有相機;

不論是要自拍,抑或是保存風景之美,都可說是相

當隨意的啦 !」碧靈微笑。

「輕鬆拍,隨意拍;不論是要保存、欣賞或進行後

製,都沒什麼好顧慮的。」威爺比劃著。

碧靈:「尤其拜消費電子發展之賜,現在想跟遠方

的朋友見個面、打聲招呼,只要接上網路,架個網

路攝影機(Webcam)就可以了,也花不了幾個大洋。」

威爺:「就看有沒有心。」

「可是在咱們還年輕的時候,想拍個照、或是想錄

段影片作生活記錄,那可不容易囉;攝影機又貴又

重,底片沖洗又還要花錢。更別提若想消除臉上幾

個痘疤,得下多少功夫啊 !」碧靈嘆著氣。

威爺:「還年輕……話說碧靈大小姐您今年高壽?」

「竟敢問本姑娘芳齡…汝此舉未免也太過失禮 ?!」

碧靈生氣樣。

威爺:「對不低…話說,數位影像在這幾年確實是有

很大的進展。」

「是呀,不論是電荷耦合元件、大容量儲存裝置、

高速通訊界面都有爆發性的成長,其代價卻日益低

廉…別看現在自拍影片滿天飛,以前電腦想獲得影

像,必須透過影像擷取卡讀入攝影機的類比信號才

成。那像現在把 USB 插上就好了,成本還花不到

過去的 1/10。」碧靈說著。

威爺:「所以電腦視覺的應用,也應該變的更普遍

囉?」

碧靈:「唉……『視覺』說是萬能感測器也當之無愧,

因為其中所含資訊可謂包羅萬象;但也因為電腦還

不具備人腦般的處理能力,所以獲取所需資訊的前

處理步驟堪稱藝術……」

「不過目前應該有許多工具可以應用了吧?」威爺

看著碧靈。

「沒錯,像 OpenCV 就是一個相當知名的電腦視

覺函式庫,不但免費還可作為商業使用;日前大陸

知名的綠壩娘,就是用其來分析一個人的皮膚是不

是露出太多,是的話就關起來。」碧靈說著。

「真的是非常可口跟好用呢 !」威爺差點流下口水。

碧靈:「是的,不論是要作影像處理、Webcam 擷

Page 19: RoBoard x LabVIEW 特別節目劇情版

17

取,物件追蹤、人臉辨識等專題應用也沒問題。泛

用性高、低成本,網路上的資源與指導也非常多,

相關書籍亦有出版,故不在此贅述! 」

「沒錯,都花哪麼多錢買 LabVIEW 怎麼可以不用。」

威爺小聲的說。

「咦? 剛剛威爺你有說什麼嗎?」碧靈看著威爺。

威爺:「沒事…」

碧靈:「其實 OpenCV 要用在 RoBoard 上也是需

要訣竅的,因為 CPU…」

威爺:「STOP!」

「…所以我們現在將為大家介紹,如何在 RoBoard

上透過 LabVIEW 來讀入 Webcam 的影像。」碧靈

指著畫面。

威爺:「嗯嗯。」

碧靈:「雖然本節目由 DMP 獨家贊助播出,不過美

國國家儀器公司(NI)在機器視覺上不論軟硬體皆有

相當多的支援,諸如 Vision Development

Module、NI-IMAQdx、影像擷取卡、智慧型相機

等多種商品一應俱全,滿足使用者在自動化量測系

統上……」

「STOP!」威爺又激動的喊。

碧靈:「…不過早期的 NI Vision 只有支援影像擷取

卡、智慧型相機、IEEE 1394 介面等類型的周邊,

沒有支援 USB 介面的 Webcam。」

「這、這該如何是好!?」威爺緊張樣。

碧靈:「所以有使用者自行開發了相關模組…不過那

都過去了。」

「NI 聽到了廣大使用者的心聲……」威爺擦拭著眼

淚。

碧靈:「NI 聽到了廣大使用者的心聲(大概),提供

了『NI-IMAQ for USB Cameras』這個外掛,至

此,我們便能讀入 Webcam 的影像,並透過 Vision

Development Module 來取得我們所需要的資

訊。」

「上帝說要有光,便有了光。」威爺拍了兩下手。

「…………」碧靈瞪著威爺。

威爺:「對不起!」

碧靈:「因此,理論上來說,我們便能藉助低成本

的網路攝像機,作出具有視覺感測能力的機器人…」

「那實際上呢?」威爺問著。

碧靈:「新版的 LabVIEW 已經不支援『NI-IMAQ for

Page 20: RoBoard x LabVIEW 特別節目劇情版

18

USB Cameras』這個外掛了。」

「新版的 LabVIEW 不支援『NI-IMAQ for USB

Cameras』?」威爺問著。

碧靈:「恩,是的。」

威爺:「那碧靈您剛剛還在觀眾面前費這麼多口舌

騙字數,這豈不明擺著欠…」

「嗯?」碧靈瞪了威爺一眼。

威爺:「對不起。」

碧靈:「事實上,由於 USB 介面被廣泛使用,在新

版本的 NI-IMAQdx(需付費)裡已經能直接支援

USB 介面的影像擷取裝置了!」

「那尼!?」威爺驚訝得大喊。

碧靈:「沒錯!這樣一來大大擴展了對攝影裝置的相

關支援。不但能透過 MAX 直接對 Webcam 的解

析度、取樣率跟白平衡等作細部調整,還能在程式

中直接透過 Property Node 進行設定!!!」

威爺:「什麼? 是那個…那個傳說中的『Property

Node』嗎?!」

碧靈:「能力變化萬千卻又捉摸不定,文獻上的記

載也極少;在這蒼茫紅塵間,視得其廬山真面目的

又有幾人?」

「唉…」威爺嘆著氣。

碧靈:「關於那個男人,實在還有很多未解的謎團

呢…」

威爺:「是…咦咦??」

「所以,各位觀眾如果對於如何運用 Property

Node 調整取樣率與解析度以及藉助 IMAQdx 擷

Page 21: RoBoard x LabVIEW 特別節目劇情版

19

取影像,可參考 LabVIEW 內建範例檔『Grab and

Select Mode.vi』,這樣一定就能對於如何使用有完

整的了解~」碧靈繼續說著。

威爺:「什麼? 竟然這樣打發觀眾啊?」

「………」碧靈無言。

整個攝影棚鴉雀無聲。

碧靈:「總、總之,可以透過 IMAQdx 操作 Webcam,

其實對於實務上來說有著相當顯著、重要的影響!」

「…這話怎麼說?」威爺問著。

碧靈:「早期在使用『NI-IMAQ for USB Cameras』

進行影像擷取的時候,Webcam 的解析度多半都

會預設成 640*480,因此每次 RoBoard 跑起程式

來就悲催了…」

「………」威爺無言。

碧靈說著:「雖說也是有調整設定用的 vi,不過每

次啟動程式還要透過滑鼠點選才能進行調整,實在

是很麻煩呢。」

威爺:「確實如此。」

碧靈:「So,只要透過屬性節點進行設定,機器人

運動時回傳即時影像就用低解析度畫面,定點環境

影像回傳就用高解析度;這樣就能兼顧頻寬、流暢

度跟系統效能了。」

「そうか…」威爺敲手,一副恍然大悟的樣子。

碧靈:「嗯嗯。」

「既然這樣,我想觀眾應該也對於

RoBoard+LabVIEW+Webcame 這套組合的應用

方式,有了相當的了解…是不是、節目也該告一段

落了呢?」威爺問著。

「喔呵呵~威爺你太天真了…」碧靈奸笑。

威爺:「這…碧靈您這話怎說?」

碧靈:「節目進行至此,提了不少關於 RoBoard 應

用上的細節,卻沒有實作幾個項目給大夥看看,這

說不過去吧。」

威爺:「嗯嗯。」

碧靈:「若叫人說是:『狗掀門簾子-光說不練』,這

樣印象就不好了。」

「是沒錯! 但節目已然進入尾聲…」威爺似乎很想

趕快結束掉節目。

「無妨,正巧手上有個項目,能為大家示範

RoBoard 與 LabVIEW 視覺開發模組快速發展的簡

便之處!」碧靈笑著。

威爺:「喔?」

碧靈:「試試『追蹤一個小紅球』如何?」

Page 22: RoBoard x LabVIEW 特別節目劇情版

20

「可以我們的觀眾大多都是專家,這樣不會有班門

弄斧之嫌嗎?」威爺心虛的說著。

碧靈:「反正坊間對於『National Instruments

Vision Assistant』的參考資料也不多嘛!」

「好!那我們就來試試…不過一般人手上應該不會

有這個軟體吧?」威爺開啟軟體。

碧靈:「佈署用的 Run-time 就比 RoBoard 貴了…

那首先就先請觀眾準備好相關軟體跟參考資料;沒

軟體的人可以到這裡下載試用版,沒基礎知識的人

可以先去購買由繆紹綱大師所譯之『數位影像處理』

一書,個人絕讚但不負責任推薦。」

威爺:「附帶一提,本節目依然由 DMP 公司獨家贊

助播出。」

碧靈:「是,現在就請觀眾們跟我們一起開啟軟體

實際操作一遍啦!不要忘記將 Webcam 接上。」

威爺:「進入軟體之後呢,先進行點選右上框的

『Acquire Images』進入本頁面,然後在點選左下

的『Acquire Image(1394…or USB)』取像。」

「這就是這部分的重點啦!如果這邊無法用

Webcam 取像,哪麼日子也就過不下去了…」碧靈

指著鏡頭強調著。

威爺:「咦咦? 是之後也就作不下去了吧? 這部分

需要借助前面所說的新版 IMAQdx 方能進行,不

過影 像開發模組本身就包含該驅動,不需再另外

取得。」

「若成功應該就能看到列表中應該有至少一個攝

影機可用,此時務必先行挑選適當之取樣解析度。」

碧靈跟著一起操作電腦。

「為什麼??」威爺問。

碧靈:「因為如果調到 640*480 以上,它的取樣率

可能會變得像睪丸癌級的蛋蛋哀傷…考慮到之後的

影像處理不要帶來太大負擔,個人比較偏好

160*120,不過實際選項還是得依廠家規格而定。」

威爺:「是。」

碧靈:「之後按下上列的播放鍵就能連續讀入影像,

右邊點的選項則可實際擷取影像,作更進一步的處

理。」

「上方的影像儲列則可存入多個影像,建議在這裡

多拍幾張不同情況下的畫面。」威爺說著。

Page 23: RoBoard x LabVIEW 特別節目劇情版

21

碧靈:「這個時候就要選擇右上方的『Process

Images』進行影像處理程序啦! 這時可以看到左上

方的影像儲列下排有個往下轉的小按鈕,其可選擇

欲處理之圖片。」

威爺:「左下方則是影像處理項目的功能列表,也

是精華所在,理應詳加研究但在此略過不提。」

碧靈:「下方那一排則是影像處理程序序列,照理

說應該只有一個項目…但是由於主持人沒有笨到不

事先演練一遍,所以裡面已經放滿了。」

威爺:「這裡最方便的是,在完成了 N 個程序後,

您仍然可以點選中間的項目觀察每個程序所造成

的影響,同時也可以再編輯、調整。」

「討論了這麼多,應該開始決定要怎麼找到『小紅

球』了唄!」碧靈微笑。

威爺:「沒錯,剛才已經說了這只是個『簡單』示

範,所以不考慮實際環境的複雜性以及程式的強健

性;因此我們將背景單純化使其不具備紅色色調,

從而使顏色易於突顯。」

「哦? 所以第一步『分離背景』就是從顏色下手囉?」

碧靈看著威爺。

威爺:「沒錯,簡單來說就是告訴 RoBoard:『紅色

就是目標物件』。」

碧靈:「既然這樣我們就是應該從三原色中的 R 下

手…」

威爺:「不。考慮到 RGB 影像空間亦受到光線影響,

像是太亮的光線會使紅色像是白色,我們應該使用

將亮度剃除在外的色彩空間…」

「HSL?」碧靈疑惑的說著。

威爺:「沒錯,HSL 將色彩分為色相、飽和度跟亮

度,因此我們可以很容易的從 H 區別出影像中那些

部分是紅色。」

「說來簡單…」碧靈。

威爺:「確實…在這要注意的是 Hue 從 255-0 中間

是連續的,而我們所選用的 251-5 之間的色相,S、

L 的影響幾乎不考慮。」

「這時我們可以看到鮮紅色的部分就是我們所選

取的部分,經過這個部分後影像將由 32 位元彩色

變成二元紅黑影像。」碧靈說著。

威爺:「再來就是透過刪除小物件跟膨脹來移除無

關的雜點了。當然啦! 之前的閥值設定是否妥當在

這裡就會有關鍵性的影響了。」

Page 24: RoBoard x LabVIEW 特別節目劇情版

22

碧靈:「沒錯,該使用哪些程序、使用的順序也會

有極大影響。 」

威爺:「再來就是利用『Particle Analysis』來取得

物件的參數特徵了!」

「YES! 像在此處我們就是利用物件的的質心位置

來決定修正量,從而使物件對準中心以達到追蹤目

的。」碧靈開心的笑著。

威爺:「完成影像處理程序後,再來就是匯出成 VI

作後續開發、整合囉!」

碧靈:「只要利用偏差量修正伺服馬達的角度,就

能實線持續追蹤。」

碧靈:「威爺...不是我在說,你這影片看起來弱爆了,

就像是用手轉的...也沒看到 RoBoard....」

威爺:「對不起!」

「好啦! 歡迎有興趣的觀眾回應索取程式範例,我

們就下次再見啦! 揪咪!」碧靈可愛的揮著手。

(本集完)

Page 25: RoBoard x LabVIEW 特別節目劇情版

23

第八幕 UART 與

Ultrasonic Sensor

威爺與碧靈齊聲:「「大家好!歡迎各位收看由威爺與

碧靈所主持的『RoBoardLab』特別節目第八集。」」

威爺:「非常感謝來自 DMP 公司的協助與贊助!」

碧靈:「那今天我將為大家介紹『非同步串列通訊

介面』(UART)的實作囉!」

「等一下!!!」威爺打斷了碧靈的話。

「怎…怎麼了,威爺?」碧靈有點結巴。

威爺:「大姐您今天第一次上台嗎?節目的規矩您懂

不懂啊?」

「這……」碧靈拉長音。

威爺指著碧靈說著:「大家來看我們的節目,開心、

尋個樂子,順便長些知識(?)。您這樣直接切入主題,

是把觀眾放哪去了?」

「咦…是、是這樣嗎?」碧靈無辜的看著威爺。

威爺:「還不懂啊!?您應該先抓住話柄,然後甩呀甩

呀把它加速到第二宇宙速度,直接脫離主題…如此

這般,明白沒有?」

碧靈:「明白了、明白了。」

威爺:「那就好。」

「唉呀,沒想到今天能有這榮幸,能與威爺您這樣

的大師同台。」碧靈話中帶刺的說著。

「好說好說。」威爺似乎沒聽出碧靈的意思。

碧靈:「小妹碧靈,充其量不過是個新手、同好,

不敢在大師面前班門弄斧,能否請您為本節目開個

場?」

威爺:「由我開場?」

「是呀!」碧靈一副看好戲的樣子。

威爺:「那我可得說些新鮮的、熱門的、大夥關注

的。」

碧靈:「是。」

威爺:「好!就說『Makiyo』。」

「MA…MAK…啊,您說『Make』是吧?」碧靈發

現狀況不對勁,趕緊轉移話題。

「………」全場鴉雀無聲。

威爺:「果然大師一出手,便知有沒有;沒錯!雖然

本節目是由 DMP 獨家贊助播出,但是由知名出版

社歐萊禮(O’REILLY)發行,馥林文化代理的

『Make』國際中文版在台上市囉!」

碧靈:「『Make』雜誌主打 DIY 的概念,每期都有

令人興奮的想法跟實作專題,讓玩家不再只能對

Page 26: RoBoard x LabVIEW 特別節目劇情版

24

NASA 跟 DARPA 的昂貴玩具乾瞪眼…想玩?自己作

唄!」

威爺:「希滴!雖然目前國際中文版內容是以日文版

為主,但是隨著台灣讀者玩家的參與,估計也會有

越來越多的本土作品出現喔!」

「不過我記得本節目不也是……」碧靈看著威爺。

威爺:「某通路第一期特價七折,絕讚發售中!」

碧靈:「……話說回來,威爺,你也只有看過第三期

不是嗎?」

威爺:「對不起。」

「………」再度進入鴉雀無聲的狀態。

碧靈:「這下可好,我們的話柄脫離地球重力不知

飛到哪去了。」

威爺:「找話柄啊…要不打給『NORAD』問問?」

碧靈:「你當它是聖誕老人嗎?」

威爺:「事實上,LabVIEW 對於電腦的介面都有相

當的支援。」

「是…威爺你不覺得,節目這樣轉折實在是太硬了。」

碧靈看著威爺。

威爺:「我們節目向來都是有轉折沒原則的不是?」

「晤晤…話不是這麼說的吧!?」碧靈有點無法反

駁。

威爺:「什麼…唉!大姐您可別又把話柄給抖掉了。」

碧靈:「是是,不管怎麼說,RoBoard 有四個

COMport;而在一般的情況下,可以透過 RoBoIO

中的 COMlib 來操作它。」

威爺:「沒錯,但是今天我們用的可是 LabVIEW 啊!」

碧靈:「那又怎麼樣咧?」

威爺:「LabVIEW 本身即具備豐富的通訊介面支援

能力,COMport 自然也不例外。」

「喔?那你可得示範示範。」碧靈奉承的說著。

威爺:「沒問題,這個實驗很容易的,觀眾也可以

一起作。」

碧靈:「對…觀眾沒辦法作的幹嘛示範啊!?」

威爺:「隔壁棚的『C4 燉肉』作不太出來。」

碧靈:「別胡鬧了!」

威爺:「這真的很容易的…首先先選 COMPort,就

選 COM3 唄,然後將 TX 跟 RX 接起來。」

碧靈:「嗯嗯…」

威爺:「這個時候再開啟 LabVIEW 中的

『FindExamples』,以『RS-232』搜尋

Page 27: RoBoard x LabVIEW 特別節目劇情版

25

『BasicSerialWriteandRead.vi』這個範例…」

碧靈:「嗯嗯…」

威爺:「把 COM3 選好之後在 stringtowrite 內隨

便寫些訊息然後 run 就好啦…」

「唉唉唉,威爺你呼嚨觀眾啊!?」碧靈生氣的說著。

威爺:「什麼叫我呼嚨觀眾啊?就是這麼容易!」

碧靈:「嘿…」

威爺:「嗯?」

碧靈:「嘿……」

威爺:「嗯嗯??」

碧靈:「是不是應該要有一個,實際應用的例子呢?」

威爺:「呃……」

碧靈:「那我們就拿 SRF02 這個超音波距離感測器

作範例吧!」

威爺:「…相當的古老呢。」

碧靈:「沒錯,SRF02 可以透過 UART 跟 I2C 介面

下達命令並接收感測結果;同時也可為每個感測器

設定自己的位址,單一接點就可以同時串接數個感

測器來使用,非常的方便。」

威爺:「喔?」

碧靈:「而且可以設定直接回傳”公分”、”英吋”

等量測結果,不需再另行處理、換算…」

Page 28: RoBoard x LabVIEW 特別節目劇情版

26

威爺:「…使用者可參考 SRF02 指令表,依照需求

對 SRF02 下達指令,即可取得感測結果。」

碧靈:「那麼 LabVIEW 部分的實作又是怎麼進行

呢?」

威爺:「這部分我們可以拿前述的

『BasicSerialWriteandRead.vi』範例程式加以修

改,結果如下:

碧靈:初始化設定部分依照參考資料『Serial data

is fixed at 9600 baud 1 start, 2 stop and no

parity bits.』而設。」

威爺:「那為何寫入部分是『0x0054』呢?」

碧靈:「那是因為 SRF02 位址預設是 0x00,而要

求回傳公分距離的指令是 0x54…因此寫入

『0x0054』則代表命令位址為 00 的 SRF02 傳回

距離資料;考慮到感測器運作必須花點時間,因此

在下達命令,再等待 100ms 後,我們才讀入感測

結果。」

威爺:「那讀回來的資料又要再經過什麼處理呢?」

碧靈:「雖然 SRF02 會直接回傳距離數值,但是對

電腦來說,COMPort 傳回的都是字串…因此我們

要將傳回的結果從字串強制轉換為 U16 的資料型

態,才方便我們直接判讀以及進行訊號處理…要注

意的是,只有 TTL 準位的 COM3 可以直接跟 SRF02

連結喔!」

威爺:「原來如此,感謝您抽空接受訪問。各位觀

眾,我們下次再見囉!」

「咦咦??...」碧靈還沒回過神的樣子。

(本集完)

Page 29: RoBoard x LabVIEW 特別節目劇情版

27

第九幕 ADC

威爺與碧靈齊聲:「「大家好! 歡迎各位收看由威爺

與碧靈所主持的『RoBoard Lab』特別節目第九集。」」

「今天要向大家介紹『類比輸入』(ADC,類比轉數

位)的使用,紅外線距離感測器 GP2D12 跟…嘿嘿

嘿……。」威爺露出陰險的表情。

碧靈:「嘿嘿嘿…?」

威爺:「嘿嘿嘿…。」

「嘿嘿…威爺你欠揍啊!?」碧靈伸出拳頭。

「嘿嘿嘿…其實我在 Cosplay 呂前副總統。」威爺

擺出 POSE。

碧靈:「六大報頭版正在等你的道歉啟事。況且我

看你除了身形體態與前副總略顯神似之外,神韻一

點都不像…」

「宋酋長在您背後,他非常火!」威爺看著碧靈身後

說著。

碧靈:「別鬧了威爺,該進入主題啦! 可別又讓話柄

飛走了。」

「大姐說的是。話說前幾集多半都是在討論

RoBoard 跟 LabVIEW 結合的應用,像是應用 Wi-Fi

遙傳數據、Webcam 擷取影像,以及應用 VISA 來

讀取 COM 等等…。」威爺對著鏡頭說。

碧靈:「是…等會,差點被你矇過去了。我們什麼時

候有講過 Wi-Fi 遙傳數據? 對不對,導播……對嘛!

明明只有使用 Wi-Fi 遠端操作 Windows。」

「是這樣嗎?」威爺搔著頭。

碧靈:「本來就是這樣啊!」

威爺:「那…這…瞧您都把話題給扯遠了,真是的!」

「合着是我錯啦!?」碧靈看著威爺。

「總之,咱們前段日子幹啥都得跟 LabVIEW 扯上

關係,是唄?」威爺也看著碧靈。

碧靈:「是呀!」

「所以今個兒…」威爺拉著長音。

碧靈:「今個兒不同?」

「……還是照例脫不了干係。」威爺嘆了一口氣。

碧靈:「格老子滴!那你喇哩這一圈幹嘛呢? 直接講

白不就得了!」

威爺緊張的說著:「總、總之,整合 ADC 介面在電

腦系統上是比較少見的,這也是 RoBoard 獨到之處。」

碧靈:「如果音源不算的話…確實,常見的介面不過

就 PS/2、USB、RS-232、平行埠或 IEEE1394、e-SATA

等庸俗之輩,沒什麼好神氣的。」

威爺:「網路孔被無視了…然而類比訊號又是無所不

在的,舉凡聲音、溫度、距離、亮度、壓力等;雖

說有些感測器,如前集所用 SRF02 已將距離資料轉

為數位訊號,但許多較簡單、廉價之感測元件還是

只有類比訊號輸出而已。」

「確實,如果機器人玩家的主控制器不具備類比輸

入的機能,實在是綁手綁腳的。所以我都用 PIC 作

Page 30: RoBoard x LabVIEW 特別節目劇情版

28

資料擷取。」碧靈說著。

威爺:「當然啦,如果碧靈您手頭上有個萬把銀兩,

也可弄張 NI 出品的資料擷取卡(DAQ Card)來玩玩,

現在不也能模擬 I2C 了嗎?」

碧靈:「我想本節目要討論的不是百萬造價機器人…

扯遠了,只要用 RoBoard 就可以省掉下層,也可讓

新手省卻摸索新系統的時間、金錢成本。」

「沒錯。」威爺看著鏡頭。

碧靈:「既然 ADC 這麼重要,那威爺你還不趕快教

觀眾怎麼用!」

「碧靈大小姐您不要踩我…其實現在已經能很輕鬆

的透過 LabVIEW 讀取類比輸入了!」威爺說著。

碧靈:「什麼…這是!?」

威爺:「沒錯!只要三個基本 VI 就能實現類比輸入!」

「恩…」碧靈深思著。

威爺:「好,各位觀眾!接下來就要進入『GP2D12

實戰』單元啦!請大家拿起您手上的 GP2D12…」

碧靈:「等一下!…威爺,這不是 LabVIEW 內建的吧?

你還沒說這要去哪下載呢!」

「嗯嗯,包含 ADC 模組的 RoBoIO1.8 套件已在

Robofun 論壇的安東尼小主板提供下載囉!」威爺笑

著。

碧靈:「那個是獨家配佈限定嗎?」

「…附帶一提,目前為止下載的人次勉強用兩手手

指也能數出來。」威爺小聲的念著。

碧靈:「咦咦咦咦!?」

碧靈:「…所以我們該請威爺切腹謝罪,讓我來擔任

介錯吧!」

「啊啊,這個,我們之前提到該進行『GP2D12 實

戰』單元了,沒錯。」威爺轉移話題。

碧靈:「GP2D12 是什麼東西呢?」

威爺:「GP2D12 也是一個距離感測器,不過跟我們

日前提過使用超音波的 SRF02 略有不同,是以紅外

線為作媒介來實現測距的。」

「那 SRF02 是透過 UART 對其下達指令後直接回

傳距離資料,GP2D12 呢?」碧靈追問著。

威爺:「GP2D12 是直接回授一個 0~2.55V 的電壓值,

接法非常簡單,如下圖所示。」

Page 31: RoBoard x LabVIEW 特別節目劇情版

29

碧靈:「那顆『ADC0831』是怎麼回事?」

威爺:「啊,那個是一顆使用串列通訊的類比-數位

轉換 IC;附帶一提,我們在 RoBoard 上所使用的是

使用 SPI 通訊的,所以使用外接 SPI 接口的時候不

能使用 ADC 喔!」

「這麼重要的事情不要隨便帶過啊! 那我們將電壓

值讀入後,要如何得知實際距離呢?」碧靈問著。

「實、實際距離?」威爺有點緊張。

碧靈疑惑的看著威爺。

威爺:「那個、如果您只是要讓小車車在距離牆壁

太近時迴避的話,可以簡單訂個閥值觸發迴避行

為……」

碧靈:「那這樣我們只需要用紅外線近接開關就好

啦!」

「嗯哼,若要實際求得距離,可用回饋回來的電壓

進行換算,其關係圖如下圖所示…」威爺說著。

碧靈:「咦? 在其有效範圍 10-80cm 內,距離與電

壓關係是非線性的呢。」

威爺:「嗯,這樣就不能用單純 y=ax+b 的方式來進

行轉換了…如果是運算能力比較差的控制器,我們

可以運用查表的方式,將電壓與距離的關係建表、

或是再加上內插法,就能求得約略的實際距離。」

「那我想用 RoBoard 的話就能有更好的作法吧?」

碧靈拿起 RoBoard 問著威爺。

「嗯,我們可以先將電壓-距離的數據以迴歸分析求

得關係式,這樣就可以直接代入電壓值求出距離了!」

威爺說著。

碧靈:「迴歸分析? 那應該要如何進行呢?」

威爺:「比較簡單的方式可以用 Excel 來做;記得每

顆感測器的特性都不同,各位觀眾務必要乖乖用手

上的感測器實際操作求得數據,至少要求得 20 筆

以上喔!」

「20 筆!? 那如果以 5 公分為間距不就要量測 300

次以上?」碧靈驚訝的看著威爺。

威爺:「當然啦,如果有單軸滑台跟使用 LabVIEW

內建的迴歸函式來進行自動取樣的話,實驗很快就

Page 32: RoBoard x LabVIEW 特別節目劇情版

30

能完成了呢!」

碧靈:「原來如此…咦?!」

「OK,Well…那我先去吃晚餐,碧靈大小姐您慢慢

測啊。」畫面已經沒有看到威爺了。

碧靈:「啊啊啊啊!!!!可惡啊!!!」

(本集完)

Page 33: RoBoard x LabVIEW 特別節目劇情版

31

終焉~特別節目

『威爺必須死 RoBoIO1.8 lvlib』

「今天,」一位少女在舞台上向鼓譟著的觀眾伸出

雙手,雪白色的曲裾長袍與一頭秀麗長髮在舞台燈

的強力照耀下,消融在炫目的銀光之中。

少女接著說著:「我們很榮幸的在此向各位宣布,

RoBoard 正式的與 LabVIEW 結合在一起。」

「我們向來堅信,任何長遠發展的產品,都必須要

建立在穩固可靠的基石上。」少女振臂一揮,其棕

色眼眸映照出耀人的神采。

「在 RoBoIO 1.8 DLL 的支持下,我們在此推出用

於 LabVIEW 開發平台的 RoBoard library,

『RoBoIO1.8_lvlib』!」少女感動的說著。

此言一出,台下的群眾高舉『碧靈大好!』的牌子,

爆出陣陣呼聲。

「從當下此刻! LabVIEW 強大的資源不再是遙不

可及的幻影;從當下此刻! RoBoard 的輕巧機動與

豐富介面不再只是他人手中的禁臠!」碧靈向台下觀

眾高舉右手,在熱情雀躍的粉絲眼中,宛若未來女

神在他們面前降下神諭。

碧靈:「從當下此刻! 我們將為機器人注入靈魂、我

們將為機器人注入生命;這就是『Robotic Heart』!」

瞬間台下的群眾由鼓譟變成震天動地吶喊,令人窒

息卻又狂熱的氛圍壟罩全場;幾個粉絲抱在一起又

叫又跳;有人緊捂著胸口癱軟在地,臉上卻露出幸

福至極的笑容。

碧靈微笑的看著眼前情景,深知一切皆在掌握之

中。

「怎麼會這樣?」威爺看著眼前的情景不禁顫抖。

手抓著濕軟拰皺的講稿,身上的衣服早已汗濕,威

爺手抓著下巴,不敢相信事情會演變成現在這個局

面。他用手抓了抓頭,思索到底是哪個環節出了

錯。

「今天應該只是簡單的發佈 lvlib 的早期測試版本,

讓 Maker 們回去試用並回饋意見以供後續版本舖

路。應該只是這樣而已啊 ? 可現在這個場面……」

威爺突然覺得自己像是安隆的主管;等到碧靈大小

姐的開場結束之後,就是自己要被送上斷頭台了。

將濃稠的唾液吞下乾涸的咽喉,威爺用手拉了拉衣

領,瞄了後台方向一眼。

「要跑嗎?」威爺自言自語滴咕著。

「…感謝碧靈小姐! 那現在請威爺上台為大家發佈

這項產品。」威爺的腦袋頓時一片空白。等到回過

神時,自己已經站在講台後方,被一大群觀眾盯著

瞧。

方才熱絡的氣氛宛若雲煙,整場瀰漫抑鬱的低氣壓

以及不滿的低語,像是剛從天堂回到人間後馬上踩

到一坨狗屎;而工程師的座席更傳來毫不掩飾的噓

聲。

「呃…。」威爺顫抖的說:「我很榮幸的向大家宣布,

各位將能從 Robofun 論壇下載到最新的

RoBoIO1.8_lvlib 壓縮檔。」

「…...」全場鴉雀無聲。

威爺:「使用者解壓縮後,可以在資料夾中看

到.mnu 檔與_RoBoIO1.8_lvlib 資料夾…。」

Page 34: RoBoard x LabVIEW 特別節目劇情版

32

「沒圖沒真相啊!」「滾下去!」「蠢貨,叫碧靈大姐

回來!」剛開始會場還只是如蚊蠅般嗡嗡作響,很快

就變成蝗蟲過境般的喧鬧。

威爺:「使用者只需要將這兩者放入 C:\Program

Files\National Instruments\LabVIEW

XX\user.lib 資料夾中…」威爺緊抓著眼前講台,宛

若驚濤駭浪中的一塊浮木:「就能在 Functions 的

UserLibraries 面板中看到…」

會場中浮躁的氣氛已然達到臨界點,觀眾席突然開

始躁動並漣漪開來。人群開始離開座位像海嘯朝舞

台湧去,就連工程師們也偷偷拿出棍棒混入人群之

中。

「目前發佈的套件皆適用於 8.6 以上版本,」臨時

搭蓋的舞台像是地震般開始搖動扭曲,威爺整個身

子趴在講台上:「…未未來的更新…新將會…。」

威爺話還不及說完,便被憤怒的人海掩蓋過去。 而

整個舞台也發出陣陣悲鳴,扭曲倒塌在煙塵之

中…….。

(全劇終)