顯示具有 LabVIEW 標籤的文章。 顯示所有文章
顯示具有 LabVIEW 標籤的文章。 顯示所有文章

2011年4月12日 星期二

利用LabVIEW擷取編碼器的資料(encoder)

最近剛好幫一個客戶做驗證,順便po上來跟大家分享。一般馬達通常都會有個編碼器(encoder)來量馬達的位置還有轉速(若不懂編碼器是什麼,請看這邊: 編碼器原理概論。) 要是馬達沒有編碼器的話,那我們也可以再額外加裝上去。台灣目前最常看到的兩家encoder廠商有企誠(www.honestsensor.com.tw)還有鴻璿(www.encoder.com.tw, 很好記吧),在他們網頁上會有很多各式各樣的encoder.

最近跟企誠買了一款encoder,決定用NI DAQ先給它測一下。因為NI DAQ的DIO還有counter都是5V TTL準位,所以挑選encoder的時候也記得要確認這個spec。另外也要看encoder本身需要的電源是幾伏特,這一款剛好是5V,所以可以直接拿DAQ上的5V輸出來供電給encoder。我用了一款NI USB-6212,蠻方便的。

Encoder連到DAQ示意圖:IMG_1182

接線很簡單: 紅(5V),黑(GND),綠和白為AB相位,分別接PFI0,PFI9 (這兩條是DAQ CTR0的input,我們就是要用counter來幫我們計數encoder的方波)IMG_1183

若是用LabVIEW的話,可以直接開一個現成DAQ的範例﹕Measure Angular Position.vi

IMG_1184

之後用手把encoder動一動,LabVIEW就會量到現在目前的角度啦! 

要用CompactRIO來做的話也是一樣,記得要用Digital Input或是DIO的模組(例如9411,9401),Scan Mode裡面可以直接選擇encoder輸入,把線接好相對應的接腳就可以了。

-John

2011年3月31日 星期四

Using LabVIEW to acquire iPhone accelerometer data

Here’s another oldie but goodie … sometime last year I wrote code to acquire iPhone accelerometer data.  It’s the same concept as using LabVIEW to acquire Wii accelerometer data, but a little simpler since all you need is to get your PC connected to your iPhone via wifi.  You also need an app such as Accel Pro or iSensor, these apps can stream and broadcast your iPhone accelermeter data through UDP protocol.  I personally recommend Accel Pro over iSensor, the newest version of iSensor (1.01) has a bug that disable the Z axis values, but hey, you can’t really expect maintenance for a free app.  Although Accel Pro is $4.99, it’s got some more functionality than iSensor such as filtering and datalogging, so it’s worth taking a look.  However, Accel Pro doesn’t include compass data like iSensor, that’s a shame.

*Caution: Some apps may claim the ability to stream UDP data, but you might have to take a look at the UDP packet protocol for the app.  Just so happens that these 2 apps have almost the same protocol, for example:

ACC: 376153408593b159a8b5f0b75b29d642694394c0,173429.723,-0.091,-0.743,-0.634

So everything before the first comma is pretty much garbage, the second number appears to be a clock or a counter of some sort, and then comes the X, Y, Z, and compass data.

Be sure to switch broadcast mode on your iPhone app from “broadcast” to “unicast”, this seems to give the best performance.  You can download the LabVIEW 2009 code from below (right click on the link, then click “save as”.)  The code is just a variation of a LabVIEW UDP shipping example.  Enjoy!

[image[17].png]

http://groups.google.com.tw/group/riobotics/web/UDP%20Receiver%20for%20iSensor%20app.vi

-John

2011年3月5日 星期六

LabVIEW, Xbox Kinect, and 3D point cloud visualization

ttt

Lately there has been alot of buzz about the Microsoft Kinect accessory, especially within the area of mobile robotics.  Imagine, a 3D scanner for not 2000 USD, but 200 USD!  Well, if you already happen to use LabVIEW, things just got a little easier.

This post is actually a response to the great work that Ryan Gordan has been doing over at his blog, http://ryangordon.net/.  Ryan’s already put up a LabVIEW wrapper for the OpenKinect library … if he had not done this, my experimentation would not have been possible.  So, kudos to Ryan.

You can get started pretty fast using Ryan’s LabVIEW example – grabbing the RGB image, 11-bit depth image, and accelerometer data off of the kinect.  I know that other people have gone on to using the kinect for 3D scene reconstruction (i.e. MIT), I was just curious if LabVIEW could do the same.  So, after some google searching, I found a LabVIEW point cloud example and combined that with Ryan’s example code.  Here’s how to get started:

1. Get your kinect connection up and running first.  Ryan has included inf files on his site, I have as well in my download link.  Be sure to install Microsoft Visual C++ 2010 Redistributable Package.  Check http://openkinect.org/wiki/Getting_Started for more information.

2. Run Ryan’s example.vi first to get a feel of how the program works.  It’s the typical, but very handy, open –> R/W –> close paradigm.

3. Now open up Kinect Point Cloud.vi.  The tabs on the top still have your depth image and RGB image, but now I’ve added a point cloud tab.

image

image

ttt

4. There are some options that you can adjust while in the point cloud tab.  There is a filter that lets you remove far objects, you can adjust the threshold on the lower left.  “Invert” is to turn the 3D inside out, pause 3D holds the current 3D view, and in case you lose the mesh while scrolling around in the 3D view, use the reset camera angle button.  BTW, use your left mouse button to rotate the 3D view, hold down shift to zoom in/out, and hold down ctrl to pan.

5. If you choose color binding mode to be “per vertex”, something interesting happens:

image

You can map the RGB values to the 3D mesh!  Obviously there is some calibration needed to remove the “shadow” of the depth image, but that’s something to fiddle with in the future.

6. For those of you who care, I’ve modified Ryan’s “get RGB image” VI and “get depth image” VI so that they output raw data as well.  Just wanted to clarify if case your subVIs don’t match up.

The idea behind displaying the 3D mesh is pretty simple, it’s alot like the pin art toy you see in Walmart:

The kinect already gives you the z-values for the 640x480 image area, the LabVIEW program just plots the mesh out, point by point.  I had wanted to use the 3D Surface or 3D Mesh ActiveX controls in LabVIEW, but they were just too slow for real-time updates.  Here is my code in LabVIEW 8.6, I’ve bundled Ryan’s files with mine so you don’t have to download from two different places.  Enjoy!

Download: LabVIEW Kinect point cloud demo

Things to work on:

I am a bit obsessive about the performance of my LabVIEW code.  For those of you who noticed, the 3D display will update slower if you choose “per vertex” for color binding.  This is because I have to comb through each of the 307,200 RGB values that was already in a 3-element cluster and make it into a 4-element RGBA cluster so that the 3D SetMeshParms node can take the input with an alpha channel.  If any of you know how to do this in a more efficient way, please let me know!  This really irks me, knowing that I’m slowing down just to add a constant to an existing cluster.image

I have also seen other 3D maps where depth is also indicated by a color gradient, like here.  I guess it wouldn’t be hard to modify my code, it’s just some interpolation of color to the depth value.  But that’s a little tedious to code, I prefer spending more of my time playing with 3D models of myself!  (Uh, that sounded weird.  But you know what I mean.)

A little about me:

My name is John Wu, I’ve worked at National Instruments Taiwan for about six years, now I’m at a LabVIEW consulting company called Riobotics, where we develop robots with LabVIEW not only for fun, but also for a living!  Please leave your comments and feedback, I’d love to hear from you.

-John

2011年1月19日 星期三

Visual Servoing: 利用LabVIEW進行影像軌道追蹤

 

天啊,沒想到時間過得真快,一下子就跨到2011年來,John真的是很慚愧,好像最近blog都沒有在update,不過為了幫各位準備很棒的內容,我還是希望能夠秉持先求質,再求量的原則。這次為大家準備的是我最近在研究的機器人影像處理專題,希望對大家有所幫助。

我們都知道,網路上已經有很多有關循跡機器人(Line-following robot)的範例,大部份其實都是用LEGO NXT和光感應器來做循跡的動作。原理很簡單,假設地上貼了一條黑色膠帶,當往地面指的光感應器經過了這條黑線,光感應器就會回傳不同的反應值,由此機器人就可以判斷左右行走的策略。一般的程式應該會有像這樣的邏輯:

while

if (lightsensor <= threshold)

turn left

else

turn right

當然,只用光感應器會有一些限制…光感應器的感測距離沒有很遠,接收器離地面的距離通常要在5cm以內才能擷取到有意義的反應。換言之,機器人必須已經接近軌道才能去追隨它。假設機器人離軌道還有一段距離,那這該怎麼辦呢?

理想中,如果我們有個相機能夠往前方拍攝,這樣機器人說不定就能夠「預測」軌道的位置,如果機器人離軌道還有一段距離,它就可以自主搜尋軌道方向並往其方向前進。(*為達到這目的當然還有很多其它做法,不過以這次的分享我們先以影像來探討解決方案。)

用相機來拍聽起來很簡單,但是整個演算法計算過程其實是有很多要考量的。我們可以先把這問題先簡化 … 在之前的文章我有分享過用LabVIEW做影像物件追蹤 (ex 1 2。) 基本概念是,如果可以取得物件的X座標,那麼我們可以拿這座標和畫面的中心點做比對,例如一張640x480的畫面的橫軸中心點為320 (因為640/2=320),如果物件的X座標是400,那機器人應該要往右轉,若座標為200,那就應該要左轉,這時候機器人的行為就會像之前的LEGO NXT循跡機器人,它會隨著物件的相對位置來調整它的行走方向。

如果我們要追蹤的是一條線而不是一個單一物件,我們必須要先對畫面做些前處理。在之前的物件範例,我們把物件的位置收斂成畫面上的一個單一中心點。以線來講的話,我們可以抓這條線與畫面下方的交叉點為機器人的行走方向。為增加此範例的複雜度,我們乾脆用兩條平行的線來做示範。

在這兒先給各位看我是如何從彩色畫面中抓到線與畫面下方的交叉點位置。首先這是原始畫面(我在書房地板上貼了兩條平行的白膠帶):

original

1. 先進行色彩HSL二值化,將白色的物件先獨立出來。二值化的參數則是可以從Vision Assistant的互動式界面來調的。若不了解怎麼調參數,請參考這篇文章: http://riobotics.blogspot.com/2009/06/hsl.html

 threshold

2. 畫面中難免會有一些其它相同顏色的物件,這時候再用個Convex Hull函式,把小物件和雜訊添滿。

morphology

3. 看起來我們的「線」和其它的物件有個很明顯的差異,「線」看起來都是細細長長的,只要不是「線」的物件都看起來圓圓肥肥的。NI Vision的particle filter函式裡面有個篩選條件叫做elongation factor,意思是說,越細越長的物件,它的elongation factor的分數會越高。我們可以用particle filter把elongation分數較低的物件濾掉。

particle filter 1

4. 嗯,看起來偶爾還是會有漏網之魚。左邊多出來的物件應該可以靠它的高度(Height)把它濾掉,也是一樣用particle filter。

particle filter 2

5. 呼,畫面經過了一番處理,終於只剩下我們需要的兩條線了。我們可以再用Particle Analysis的Max Feret Diameter Start和Max Feret Diameter End把線的兩端X,Y回傳回來。如果需要的話,可以再加一個Bisecting Line含式來計算兩條線之間的中心線。再加一些overlay的含式,就可以把這些資料重疊在畫面上。現在所回傳的三個數據是線與畫面下方邊緣交叉的X座標。

image

現在是還沒有時間把這個演算法套在一個實際車體上來測試,不過近期之內應該會完成,到時候會拍幾個影片給大家參考。基本上,只要把中心線的X座標鎖定在畫面的中心320,車體就會隨著軌道的方向進行了。

軌跡追蹤 Vision Assistant 範例.zip

軌跡追蹤 LabVIEW 範例.zip

(這個LabVIEW的檔案會比較大,差不多80MB,因為我有附了一些測試的AVI影片)

-John

(4/14/2011 更新:)

以上演算法實際上到底跑起來效果如何呢? 我們在一個小型的機器人平臺上 Easy Robot來驗證演算法這個演算法的實用性。我們先用一條線來代表軌跡。在影片裡,請注意當機器人尋找軌跡時,後面的惰輪幾乎是完全壓在線上的,代表此機器人的準確度。

嗯,測試結果比想像中的還好。可以出貨了!

-John

2010年11月14日 星期日

龍的氣功在哪裡? - 用LabVIEW擷取龍的波動拳位置

最近年底在趕一些LabVIEW的案子,LabVIEW已經寫的不眠不休了,昨天晚上還做到有block diagram的惡夢,好像是老天爺在跟我講要放輕鬆吧。不過身為一個新世代宅男,平常我們舒解壓力就應該是靠打電動吧,不過在舒解壓力的同時,當然也不能忘了秉持分享LabVIEW的宗旨,所以剛好索性拿了個剛借來的EasyCap影音擷取卡,然後跟最近不常玩的Xbox360做一個展示。這個EasyCap真的很棒,才兩三百塊而已,就可以把AV訊號抓進來到Windows,MAX也有支援哦!

image

通常龍的氣功顏色都是一個很鮮艷的藍色,我們正是可以靠這樣鮮艷的顏色和背景的對比把這個氣功的面積給抓出來。詳細步驟請看以下影片。

 

我承認,這個LabVIEW程式真的蠻無聊的,不過至少各位可以發揮想像力,其實像這種物件追蹤的應用還蠻多的。下次教影像分析的課程,我應該會把Xbox也帶進來,如果我講的太無聊的話,至少還有Xbox可以玩,呵呵。

大家對EasyCap這個東西有興趣的話,也可以看看他的開箱文。

開箱文- EasyCap 影音擷取卡- 開箱& 測試-

-John

2010年10月31日 星期日

iPhone也可以跑LabVIEW?

最近John真的是迷上了愛瘋的千奇百怪的功能,之前已經驗證出如何把iPhone的加速規資料傳送到LabVIEW(請看這兒),但是可惜啊,Apple的作業系統還是很封閉,當然我是很想直接把LabVIEW程式放到iPhone裡讓它去跑,可是好像這一部份一直沒辦法實現 …

直到今天!

睿柏科技隆重推出: LabVIEW for Apple iPhone Module 2010!

所有各位所熟悉的LabVIEW函式,都能夠在iPhone環境開發並執行!

建議售價: NTD XXXXX

預購專線: 請直接在部落格上留言,會有客服人員跟您聯絡!

 IMG_0676 IMG_0677

IMG_0678

有看到破錠嗎?

眼快的同學從以上的圖片中可能已經看出了我的漏洞,其實市面上已經有很多付費以及免費的遠端桌面軟體,是可以讓iPhone直接連上一個正在跑LabVIEW的電腦。用遠端桌面連上電腦的話,我們就不用擔心iPhone能不能支援LabVIEW,在這樣的應用下,iPhone只不過是個遙控器,讓我們可以操控華麗的LabVIEW人機界面。不過缺點當然是,程式還是在PC端執行,所以還是要有臺PC才能玩,iPhone不能獨立作業。

以機器人的控制而言,這又多添加了一些有趣的機器人操控方式。如果有臺iPad的話,哇,那螢幕又不是更大了嗎? 可惜手邊沒有臺iPad啊,殘念。

需要免費的遠端桌面軟體,可以看看www.teamviewer.com,他們還有直接做iPhone和iPad的相關app,我就是用這個在外面「行騙」的,呵呵 :-)

-John

2010年7月28日 星期三

將iPhone畫面抓到LabVIEW裡做即時影像分析

最近又完成了一個突破性的實驗,上次跟各位分享有關iPhone的加速規跟LabVIEW的結合,我一直很好奇,不知道其他iPhone也可不可以帶進來到LabVIEW裡使用,於是先從影像方面下手,看起來iPhone的相機畫面也可以帶進來到LabVIEW使用!

步驟很簡單:

1. 下載一個叫做iWebcamera的app,雖然不是免費的($4.99USD),但是這是現在目前我找到唯一能夠讓Windows的DirectX界面直接抓到iPhone的相機畫面。下載到iPhone之後,記得在Windows那端還要在安裝它的一個小小driver才能用。

http://itunes.apple.com/us/app/iwebcamera/id369617568?mt=8

對應Windows driver下載點:

http://www.drahtwerk.biz/EN/Products/iPhone/iWebcamera/Drivers.aspx

這個App原本是讓電腦上沒有安裝webcam的朋友們也可以透過這個app來用iPhone的相機來替代webcam,所以有了這個app,就直接可以用iPhone的畫面來接到MSN或skype來進行時訊。如果有灌NI Vision Acquisition Software的話,DirectX的相機應該也可以被MAX偵測到。以下則是我MAX的畫面:

未命名

沒想到MAX有抓到,並且按Grab也可以很順利的將畫面抓進來。

DSC00918

接著就把MAX關掉,直接用以前LabVIEW寫好的物件顏色追蹤程式來測試。這時候我是用IMAQdx的含式來寫的,相機指向MAX裡面所偵測到的相機名稱就好了。例如,抓紅色物件:

未命名2

從iPhone看到的畫面:

DSC00923

看來iPhone也是適合開發機器人的平臺! 很可惜,現在只缺一些I/O訊號,要不然iPhone就真的可以拿來當機器人的核心!

-John

2010年6月29日 星期二

John的機器人作品大整理

最近因為離開了NI的懷抱,在NI的座位也都清的一乾二淨了,所有的東西都被我放進了幾個大紙箱堆在家裡車庫,看起來還蠻礙眼的。這一陣子看到紙箱裡零零散散的機器人零件,突然回想起了一些自從投入機器人這一方面的作品,我這個人也蠻健忘的,所以想整理一下作品集,方便以後參考。

2009/1: CompactRIO 控制小型自走車平臺

這個是我的機器人處女作,還好那時候CompactRIO已經有了Scan Mode,一兩天拼拼湊湊就可以控制前進後退,然後在載具上加一個AXIS 206的相機,做一些物件追蹤的功能。後來為了搞效果,還把Wii無線搖桿控制還有PDA控制也加了進去。特別感謝台北科技大學車輛系蕭耀榮老師,把載具借給我們做實驗!

 

2009/3: CompactRIO控制全向輪平臺

做完了第一臺機器人之後,後來經驗就比較豐富了一點,挑戰比較困難的機器人。這是淡江大學翁慶昌老師的4輪全向平臺,馬達速度的計算法則是由研究生之前已經驗證好了,比較困難的是4軸同步的移動,以及4軸同時的PID closed-loop計算 … 呵呵,還好LabVIEW可以支援平行處理,搞定了一軸,4軸就不困難了。

 

2009/4: 台灣大學電機系羅仁權老師CompactRIO課程與輔導

有了之前的一些機器人系統經驗,之後就開始把這些經驗和概念整理成一套課程。可憐的台大學生,正是我課程的白老鼠,不過沒想到,效果還不錯,一個月內他們就把馬達控制和影像系統整合於他們的機器人平臺上。

 

2009/6: LabVIEW & LEGO NXT 影像追蹤

每次要帶CompactRIO出門教課或做demo其實要帶的東西還蠻多的,後來想想,其實同樣機器人的概念也可以用LEGO NXT來傳達(而且秀給人家看的時候,東西又不用帶的那麼多。) 這個作品其實是延用之前CompactRIO影像追蹤的程式,然後把程式修改成配合LEGO NXT,核心還是用LabVIEW。

 

2009/8: 吉他神彈機器人

這個是為了2009在南港辦的機器人展覽,美國有流行一個電動玩具遊戲叫Guitar Hero (有點類似太鼓達人的音樂遊戲,只不過是用玩具吉他然後配搖滾音樂,還蠻酷的。) 這個demo用了影像辨識來判別螢幕上的音符,然後再送訊號給DAQ來驅動機器人的手指。現場我們還開放讓人跟機器人PK,看誰分數比較高!

 

2010/2: 4 DOF機器手臂控制

自主性機器人也玩差不多了,接著開始踏入機器手臂這個領域。沒想到,原來手臂的控制有這麼的複雜,自己買了一些書來K,了解了一些DH轉換還有Jacobian的皮毛。還好 LabVIEW Robotics Module裡面有一些 inverse kinematics 的函式庫,幫我節省了一些時間。不過坦白講,這可能是我花最久時間才搞定的作品。

 

2010/4: LEGO NXT Delta Robot

手臂控制不僅是只有序列式的(serial robot arm),其實工業界有些也會用比較複雜的平行控制(parallel robot)。因為機構方面沒有現成的,所以我就先用了LEGO來驗證一下程式的可行性。跑起來還不錯…

 

2010/5: 管線檢測機器人

自從今年五月從NI離職,我在睿柏的時間大部份是以接業界的case為主。這個應用蠻特別的,客戶想要設計一個可以檢測管線表面的自動化移動平臺。於是,這又是一個用LEGO NXT & LabVIEW來快速驗證原型的一些想法。

未來也希望看到你用LabVIEW控制機器人的實例!

-John

2010年6月14日 星期一

當iPhone遇上LabVIEW,會擦出什麼樣的火花?

大家都知道,現在風靡全球的iPhone已經是無微不至,無孔不入,幾乎世界上的每個應用都有個iPhone程式,但是iPhone拿來控制機器人? 這我好像還沒聽說過。既然LabVIEW的連接能力這麼大,我們就來看看LabVIEW能不能夠跟iPhone結合在一起,我們先想辦法來讀取到iPhone的三維加速規和電子羅盤好了。

曾經我有在App Store搜尋過關鍵字LabVIEW,但是唯一的程式是個叫做VIRemote的app,那時候在NI為了做一些實驗,我們就狠心的把這個爆貴的程式買了下來(你有聽過美金19.99的app嗎? 這些人還蠻囂張的。) 雖然它功能蠻豐富,除了擷取加速規以外(沒有compass),還可以當作一個你在PC上跑的LabVIEW程式的”遙控”,就像遠端桌面那種概念一樣,在iPhone裡就會看到一個比較小但是跟PC螢幕上的front panel一樣的程式。不過它跑起來還有點麻煩,因為還要另外再下載一些專屬它的VI才能用。

http://itunes.apple.com/tw/app/viremote/id344980935?mt=8

為了幫各位節省各位荷包裡辛苦存的Coco,小弟我終於找出了一個便宜(免費)又方便的方法來擷取iPhone的加速規和電子羅盤資料。首先,先下載一個叫做iSensor的app:

http://itunes.apple.com/tw/app/isensor/id353118286?mt=8

image

它能夠透過UDP的方式直接用字串把資料透過無線網路送出來。接下來,只要你的電腦和Iphone有在同個網域,就可以接收到iPhone的字串。設定上,記得要把Network打開,Unicast或Multicast都可以用(印象中好像Unicast會比較快一點,不過要指定PC的IP。) 你可以用LabVIEW內建的UDP Receiver範例程式,或者是直接下載我修改過後的版本來用,要注意UDP port要跟app那邊設一樣就好了。

image

http://groups.google.com.tw/group/riobotics/web/UDP%20Receiver%20for%20iSensor%20app.vi

(補充: 若進到link不能下載,請按右鍵再按另存新檔)

接下來大家就可以發揮想像力,看看可以用在哪種應用。。。 這似乎比多年前LabVIEW控制Wii搖桿的程式碼還要刺激!

-John

LabVIEW 控制 Bioloid AX-12+馬達

上次幫客戶在做一些驗證,看LabVIEW可不可以透過RS-232控制韓國Bioloid系列的AX-12+馬達 … 後來狂K它的通訊協定,再加上一些朋友的幫忙,終於透過LabVIEW來控制它了。因為這些馬達力量還算不錯,體積又小,很多中小型人型機器人都會用這種馬達,只不過是要搞懂它的通訊協定罷了。有興趣的朋友可以email我,程式碼可以寄給你看看!

Bioloid  Robotic  Kit

2010年6月13日 星期日

RST 2010 大專盃 機器人移動平臺 Demo

這個週末外面都在下雨,哪兒都不能去,不過還好有機器人陪伴著我…

最近已經寫好了一些LabVIEW控制RST機器人平臺的範例程式,等我整理一下之後,就會將這些程式碼公佈出來,希望能夠提供今年要參加機器人競賽一些參考的基礎。沒想到這個平臺控制起來還蠻順的 … 請看以下影片:

 

 

接下來如果有時間的話,會陸續整理一個「非官方使用手冊」,這樣一來大家就可以站在同個起跑點了!

-John

2010年5月2日 星期日

智慧型機器人 -- 樂高 NXT進階應用: 課程圓滿落幕!

這個週末剛辦完了一次非常充實的兩天 LabVIEW EE & LEGO NXT 訓練課程,學員反應熱烈,甚至已經開始在詢問下一次開課的時間! (呼,讓我喘口氣先…)  這次課程最寶貴的心得是,原來用 NXT 來傳達 LabVIEW 的基本概念能夠這麼有效率 -- 有些學員從一開始都沒有 LabVIEW 的基礎,到了第二天他們已經開始會寫State Machine了,真是神奇。未來好像可以多加利用NXT來教 LabVIEW …

一些活動花絮:

DSC00780

畢竟 LabVIEW 是個圖形化環境,所以難免要畫一些圖來傳達 LabVIEW 概念。

DSC00764

一開始學員接觸 LabVIEW 容易「迷路」,所以要耐心的跟他們講哪些函式放哪裡。

DSC00771

學員絞盡腦汁,在解我出的題目。

DSC00788

最後還有抽獎哦! 幸運得主獲得了NXT 9797一套,市價 NTD 23900!

 Group picture

圓滿落幕,學員帶著充實的心情回家!

 

原始活動訊息,給大家參考:

 

想要完全領悟LabVIEWNXT合體之後的強大威力? 千萬不要錯過這次的機會。


經濟部工業局 機械產業藍領及白領人才培訓計畫 【工業局補助計畫】智慧型機器人—樂高NXT進階應用


【主辦單位】:經濟部工業局
【執行單位】:財團法人工業技術研究院& 社團法人台灣機器人產業發展協會
【課程簡介】:廣受數百萬名工程師與科學家所愛用的 LabVIEW,為圖形化程式設計環境, 可透過直覺式的圖形化接線與圖示建構出流程圖, 以開發完整的量測、測試,與控制系統。LabVIEW可整合數千 款硬體裝置並內建數百筆函式庫, 可進行高階的分析作業並呈現資料。
LabVIEW平台並可跨多樣的作業系統,在1986 年問世之後,已儼然成為業界的領導軟體。將LabVIEW與您的 機器人搭配,可展現更強大的運算功能與更豐富的功能展示。 您可直接使用LabVIEW的各種函式庫、包括工業運算、 視覺與各種I/O整合功能,讓您的機器人更上一層樓。
本次課程師資陣容堅強,讓您輕鬆駕馭LabVIEW與NXT機器 人,更可窺探其更詳盡之奧義與秘技。
【課程綱要】:
1.圖形化程式語言概敘
2.LabVIEW Education Edition元件和基本操作
3.感測器訊號擷取與馬達控制
4.NXT Direct Mode
5.NXT Remote Mode
6.狀態機 (State Machine) 用於機器人邏輯設計
7.整合進階功能於 LEGO NXT(如演算法或視覺辨識)
【學員資格】:對機器人或LabVIEW及樂高有興趣之在職或待 業人士皆可報名。
【招生人數】:25名
【開班人數】:10名
【開課日期】:99年5月1、2日,總計12小時
【開課地點】:台北市館前路34號4樓(台北火車站捷運站M6出 口)
【收費標準】:工業局補助50%:會員學員自付7000元/人, 非會員7500元/人,團報7200/人(以上費用含講義、 實習費、材料費、午餐、下午茶、點心及其他雜費;未含稅)。

★全勤學員將有機會獲贈價值NT$23,900樂高機器人一組!
★加入協會會員者或預先報兩堂以上課程者,馬上享有優惠!

【講師介紹】:吳維翰,美商國家儀器台灣分公司行銷部技術經理
專業領域:機械設計、結構分析,LabVIEW應用,機器人整合
經歷:NI業務工程師,擔任LabVIEW培訓講師5年以上,具有 LabVIEW CLAD,CLD 專業認證

2010年2月4日 星期四

加速學習 LabVIEW 之十大密技

最近整理出了一些我認為學生學習LabVIEW會常碰到的一些問題…

其實後來我發現,大部份的問題都跟LabVIEW無關,是跟程式邏輯還有規劃比較有關係。很多人都以為,寫LabVIEW直接跳進去就好,不用做什麼準備 … 我覺得這就像跳進游泳池不先暖身一樣,遲早會抽筋的。學生們一邊寫一邊改,改到後來連自己的程式在幹嘛都不曉得了,到最後就抱怨LabVIEW很難用。難怪我常聽到,LabVIEW的優點也正是它的缺點,希望各位看到這些投影片之後,能夠養成寫LabVIEW的一些好習慣。(雖然沒有講的很深入,但是至少足以提醒各位一些準則。)

-John

2010年1月13日 星期三

1.11.2010: 等了好久的 LabVIEW Robotics 2009,終於發行了!

等了好久的 LabVIEW Robotics 2009,終於發行了!  以下則是 ni.com 的正式新聞稿:

 

2010.01.11 NI LabVIEW Robotics 2009 將可開發完整的機器人控制系統
新款軟體適於設計、製作原型,並佈署自動化的地面型機器人系統

【台北訊-Jan 11, 2010】NI 於今天發表 LabVIEW Robotics 2009,為新版本的圖形化系統設計 (GSD) 軟體,此標準的開發平台適於設計機器人與自動化控制系統。NI LabVIEW Robotics 2009 擴充了機器人開發函式庫,可連接標準的機器人感測器與致動器、提供智慧型作業的基本演算法,還有機器人與自動化載具的運動控制函式。透過此新版軟體,工程師可迅速建構心中的想法;將之佈署至Real-Time 嵌入式硬體與 FPGA 硬體;並可整合多款平台、其他製造商軟體工具,與現成的機器人平台,讓軟體達到最高彈性。

「當要建構新的機器人時,往往必須掙扎著從零開始。若又沒有標準軟體,則幾乎不可能共享或再使用相關程式碼。」iRobot Corporation 公司前任副總,現任歐林工程學院 (Olin College of Engineering) 教授的 Dave Barrett 博士如此表示。「我們需要工業等級,且能多方支援的軟體開發系統,以建立自動化的行動機器人,可自行感測、思考,並於依周圍環境而行動。我連續 15 年都在尋找最好的機器人程式設計語言,而 NI LabVIEW 正符合我的需要。」

基於 LabVIEW 的開放式圖形化系統設計 (GSD) 平台,LabVIEW Robotics 2009 可匯入如 C/C++、.m 檔案,與 VHDL 的程式碼;且內建的驅動程式適用於 LIDAR、IR、聲納,與 GPS 等多款感測器,可大幅縮短開發時間,讓工程師可更專注開發自己的演算法與智慧型功能。此外,軟體亦具備新的機器人 IP,可輕鬆建置 Real-Time 與嵌入式硬體,以迴避障礙物、進行反向運動,並搜尋相關演算法,讓自動化系統或機器人自行規劃最佳路線。

「LabVIEW 圖形化語言在 23 年中不斷演進。」NI 軟體產品行銷副總 John Pasquarette 接著表示。「LabVIEW 初期僅開發為資料擷取與儀器控制工具,以利進行自動化測試作業,但目前已成為功能強大的嵌入式機電整合設計平台。工程師僅需單一環境,即可設計完整的控制系統,並迅速將應用佈署至 Real-Time 嵌入式硬體。」

LabVIEW Robotics 2009 即適於設計並製作應用原型,包含下列:-- 自動化與半自動化地面型載具-- 機器人救援平台-- 服務機器人-- 醫療機器人-- 學術與研究機器人-- 農業與礦業系統當整合 NI CompactRIONI 單卡式 (Single-Board) RIO 介面卡,則 LabVIEW Robotics 2009 可為完整的機器人控制系統開發平台。可重設 I/O (RIO) 架構更整合了 Real-Time 處理器、FPGA,與多種 I/O,包含類比、數位、運動控制,與通訊作業。若將現成感測器搭配 CompactRIO 或 NI 單卡式 (Single-Board) RIO 嵌入式系統,則可迅速設計複雜的機器人開發應用,並製作相關原型。

若要進一步了解 NI 硬體與軟體,則可至 ni.com/zht/ 下載「Robotics 101 Resource Kit」,以取得相關機器人開發線上教學、往物連討會、影片,與使用者解決方案。若要了解 LabVIEW Robotics 2009,則可參閱 ni.com/robotics/zht/

【有關 NI 美商國家儀器】
NI 美商國家儀器 (ni.com.tw) 正轉換工程師設計、原型製作,與佈署系統的方式;以用於量測、自動化,與嵌入式應用。NI 提供如 NI LabVIEW 的現成軟體與模組化的硬體,並銷售全世界超過 25,000 家不同的公司。沒有任何單一客戶佔 NI 營收的 3% 以上,亦沒有任何單一產業可佔 NI 營收的 10% 以上。足見 NI 產品應用服務領域之廣泛。NI 總部位於美國德州奧斯汀,有超過 5,000 名員工,並直接於超過 40 個國家設有分公司或辦事處。NI 已連續第 10 年榮獲財星雜誌 (FORTUNE) 評選為美國百大最佳工作環境的公司之一。

 

原始聯結:

http://digital.ni.com/worldwide/bwcontent.nsf/web/all/9635427B32BF6BB8862576A500553695?OpenDocument&node=168720_zht

2009年11月25日 星期三

11.14 NI 機器人技術研習營講義

各位如果有參加 11.14 的研習營,這裡是當天陳講師用的投影片講義,歡迎各位下載!

Part I 講義下載

Part II 講義下載

Part III 講義下載

Part IV 講義下載

Part V 講義下載

研習所用的機器人 LabVIEW code: 由此下載

活動簡章:

為了讓RST 籃球賽機器人競賽之參賽隊伍能夠對機器人軟硬體設備更快速上手,
美商國家儀器 (National Instruments, NI) 將於 11/14(六) 舉辦『CompactRIO 機器人
技術研習營』,希望能夠輔助參賽組克服技術困難,並邁向成功之路!

 

活動議程:

Part I: Introduction

機器人競賽規則簡介

何謂LabVIEW?

CompactRIO - 機器人設計最佳硬體平臺

東元RST移動平臺介紹

其它配件簡介 (無線AP,AXIS 206 相機,DC Converter Board)

Part II: 機電配置和馬達控制

電源和電力考量

東元馬達驅動器設定

如何由CompactRIO 送出方波控制馬達平臺

前進,後退,左右轉測試

 

午休時間 (12:00pm – 1:00pm)

Part III: 影像擷取和分析

由 CompactRIO 連接 AXIS 206 相機

擷取影像

調整取樣參數

追蹤物件並回傳XY座標

Part IV: 視覺和馬達控制整合

軟體整合

物件追蹤機器人整體測試

Part V: 結論與復習

LabVIEW 程式除錯準則

如何排除問題

技術支援管道

2009年11月23日 星期一

NI 機器人技術研習營實況

上禮拜我們在NI剛辦完了 NI 機器人技術研習營,為的就是要輔導即將要用 NI CompactRIO 的大專盃參賽組。還沒有報名的隊伍們,趕快到 era.org.tw 玉山機器人協會網站報名吧!

DSC00164

帥氣的陳俊強工程師正賣力的在做demo展示

DSC00157

講解 LabVIEW 基本概念過程

DSC00166

講到機器人,大家照過來!