Tetrix for myRIO Example(2)-Balance Arm

今天要介紹的是Tetrix for myRIO的第二個範例-Balance Arm

Balance Arm的構成相當簡單,主要是透過伺服馬達與IR sensor的控制,將白色球固定在某個位置上,當中結合PID控制,讓球可以調整到想要的位置。

7.JPG

繼續閱讀 Tetrix for myRIO Example(2)-Balance Arm

[技能競賽] 2016第46屆全國技能競賽暨44屆世界技能競賽第一階段國手選拔@中彰投分署

為期將近一週的比賽終於告一個段落,雖然機器人職種扣除報到和頒獎只有三天,但也是挺累人的。小編因為指導台中高工的隊伍,幾乎三天都泡在會場內,還蠻多心得跟想接觸機器人技能競賽或無緣到現場參觀的人分享。

 

 

首先,幸好你沒來!否則你要很有愛才能待滿三天。

繼續閱讀 [技能競賽] 2016第46屆全國技能競賽暨44屆世界技能競賽第一階段國手選拔@中彰投分署

Tetrix for myRIO Example(1)-Rover Vehicle

進行完上次的TETRIX套件基本開箱,相信大家應該非常期待之後的範例吧!話不多說,直接進入今日的第一個實作範例吧!

今日要做的第一個範例是-Rover Vehicle。他是一台三輪車,由兩顆DC馬達帶動左右輪,後方有一個導輪,車子前端裝有IR sensor,另外車體前方安裝一個伺服馬達所控制的夾爪。

1.JPG

繼續閱讀 Tetrix for myRIO Example(1)-Rover Vehicle

Pitsco TETRIX® PRIME for NI myRIO & NI myRIO開箱

好久沒有介紹新的玩具了,今日要開箱敗家的是TETRIX針對myRIO所出的機器人套件,Pitsco TETRIX® PRIME for NI myRIO

此套件可說是金屬高級加強版的LEGO EV3,內容物包含結構元件、感應器、馬達等等,可透過內建的建置指南建立三個基本模型組件,配合myRIO當作控制器並使用LabVIEW進行程式撰寫。

話不多說,直接進入開箱吧!

繼續閱讀 Pitsco TETRIX® PRIME for NI myRIO & NI myRIO開箱

[技能競賽] 機器人自主的兩三事

還有不到一週就要比賽了,原來的機器人裁判長年初宣佈榮退後,官方也在三月底選出了新的裁判長。蘇老師原本就是機器人職種的裁判,資歷跟經驗都非常豐富,這次在競爭中脫穎而出,希望他能為競賽帶來新氣象,讓參與機器人職種的學生更多,也協助國手在世界賽拿回更好的成績。不過在這時間點接棒的確是很辛苦,一方面要顧及以往(畢竟還是多數),另一方面又要接軌國際賽新平台,種種不確定因素幾乎也隨著升到了高點,真是令人期待又怕受傷害啊!

因此蘇老師新官上任才不到兩週的時間,就舉辦了說明會,雖然公開試題的部分沒有什麼修改(應該是時間太趕不宜改變),但說明會中有大致說明了未來的方向,也解答了選手與教練的疑問,最棒的是有會議紀錄來店禮贈送這次比賽會使用的道具方塊跟棧板呢!

繼續閱讀 [技能競賽] 機器人自主的兩三事

WorldSkills Mobile Robotics Collection (IV) – NI myRIO

很快的六天又過去了,又到了我們每週發文的時間(大誤!),John絕對不是故意一個星期才上來廢話一次的啊,而是真的在打混有難言之隱。廢話不多說,我們就來介紹今天的主角吧…

===以下節錄自NI「什麼是NI myRIO」影片===

NI myRIO是一台嵌入式設計裝置,可以讓學生在短短一個學期內體驗現實世界中的工程開發。NI myRIO搭載了NI的RIO系列技術(Reconfigurable I/O),與NI被業界廣泛使用的CompactRIO及Single-Board RIO是相同的科技。myRIO採用了Xilinx的Zynq晶片,該晶片整合了雙核心的ARM處理器及FPGA(現場可程式化閘陣列),可提供充裕的效能來滿足專案的需求。與cRIO和sbRIO不同的是,myRIO在出廠時已經預先設定好一組FPGA,為了方便已經加入許多控制與電機專案常用的I/O,像是I2C、SPI、UART、PWM和編碼器輸入…等,當然也可以自行客製化,以滿足日後的應用需求。

可以講中文嗎?

===以下節錄自NI「什麼是RIO技術?」影片===

簡單的說,RIO系列控制器都搭載了可以用LabVIEW快速且重覆編寫的FPGA晶片,讓使用者自行設定電路程式,而不是用VerilogVHDL寫到天昏地暗日月無光,大大的降低了一些業界工程師日常應用的難度,像是「移動機器人」、「長時間收集資料」或「測試控制的演算法」…等。當然不是說Verilog或VHDL不重要,但是對於要在短時間內開發或得到顯著研究成果的老師或學生們,這些設計電路的「實驗前準備過程」當然是愈快速有效愈好,FPGA的穩定和快速和可重覆修改因此成為了最佳工具。另外,RIO系列控制器也都使用了Real-Time的作業系統,它的最大特色就是穩定。舉例來說,Windows作業系統必須平均分配處理器資源給各項應用程序,像是瀏覽器、自動更新和防毒軟體…等,但是這麼一來特定的程式效能就會隨著分配到的資源多有增減;Real-Time作業系統會跟據優先權來優先執行指定的程式碼,這對控制應用來說非常重要。此外Real-Time作業系統不需要電腦也可以獨立運作,有電腦的時候也可以監控運作狀況,完全不會影響效能。我們將程式碼佈署至Real-Time作業系統上來與FPGA的I/O讀寫資料,就能夠準確且即時的完成很多時間先決的任務。

myRIO的詳細硬體介紹可以看這邊,配備雙核心 ARM® Cortex™-A9 處理器與 FPGA,並且共有 28,000 個可設定的邏輯單元、10 個類比輸入通道、6 個類比輸出通道、音訊 I/O 通道,以及高達 40 個數位輸入/輸出 (DIO) 通道。除此之外還內建 WiFi、3 軸式加速規與數個可設定的 LED和一個可程式化的按鍵。

今天就先到這吧~ 我們下回見!

WorldSkills Mobile Robotics Collection (III) – 馬達驅動板 Digilent Motor Adapter for NI myRIO

在經過了一番努力之後,官方套件的麥克姆輪總算和馬達合體,也可以組裝到機構件上了。

IMG_0237

不過,光只是這樣還不能讓馬達動起來,我們還得裝上控制器(這裡指的當然就是myRIO囉)和馬達驅動板(本篇主角),當然也得接上電池…等。寫著寫著就發現光是要讓馬達動起來就還得再寫很多篇文章,邊想怎麼有系統地說明,頭又邊痛了起來,我們還是一步一步來吧…(所以這些文章雖然發表了,可能還會再反覆地被修改或加上超連結,大家可以常常來複習喔!)

除了上圖有拍到的零件外,之所以會需要控制器(myRIO)的理由很簡單,我們是透過控制器發出的PWM( pulse width modulation) 訊號來改變驅動板輸出給馬達的電壓大小,由這一個電壓「操控」馬達的正反轉轉速、同時也利用控制器的數位輸入(兩組)來得到馬達編碼器的資訊、一組數位輸出決定馬達正轉或反轉,所以一共是用掉四個數位I/O(每個需要讀編碼器的直流馬達)。但是myRIO的數位輸出最高只有3.3V,電流也相當微小,完全沒辦法產生足以推動馬達的電力,因此我們需要另一塊板子,讓大電流通過這張板子,再根據控制器的數位訊號當作開關控制輸出給馬達的電壓,這張板子就是馬達驅動板。

myRIO控制器的規格和簡介我們會再專文補充,就讓我們直接來看看今日主角吧:

MotorAdapter

Digilent 這間公司大家可能比較不耳熟能詳,但是也沒關係,因為它已經被NI買了下來,雖然沒有改組,但是出了一系列適用於myRIO的週邊,這塊馬達驅動板就叫Motor Adapter for NI myRIO,用的是Allegro 4973的晶片,列出一些比較重要的特色如下:(詳細看這裡)

  • 可以直接插入myRIO的MXP腳位(練習時用),也可以彈性選擇想要接上需要的I/O(比賽時用)
  • 可以一次控制兩個DC馬達,或者一個步進馬達、或者兩個伺服機(不可同時)
  • 可接受6-16V的輸入,內建電流監控的功能,最高兩組1.5A的輸出(直流馬達)
  • 可以接受最高70kHz的PWM訊號

接線方式(練習用):

  • 直接將板子插入myRIO的MXP_A或MXP_B插槽
  • 馬達的電源接上J4的M1+及M1-或J5的M0+或M0-
  • 編碼器的A相訊號線接上J7或J13的E1A或E0A,B相訊號線接上E1B或E0B
  • 編碼器的電源線正負分別接上J12或J14的myRIO 5V和GND
  • 外接的12V電池接上J6的Motors PWR

接著我們看下圖:

motorAdapter

可以發現在第一個馬達(M0),也就是「黃、橘、綠、綠」這組,沒什麼問題,我們只要使用myRIO裡的Express VI就可以設定對應的:

  • 黃:DIO6(23)為DO並控制正或反轉(DIR0)
  • 橘:DIO8(27)為PWM並輸出自訂頻率的PWM訊號(PWM0)
  • 綠:DIO11,12(18,22)為編碼器AB相輸入(ENCA,B)並自動解讀

但是第二個馬達,「紅、藍、粉粉」這組

  • 紅:DIO10(31)要做DO沒問題,但是就浪費了一組能做PWM的DIO
  • 藍:DIO9(29)做PWM沒問題(PWM1)
  • 粉:DIO4,5(19,21)只能當作DI接上AB相,無相自動解讀,必需再利用J2跳至myRIO後方MSP插槽上的DIO0,2(11,13)才能用Express VI自動解讀(ENC0.A,B),如下圖:
    motorAdapterMsp

講到這裡還沒有消化不良的話,趕快試試看四個馬達一起動,線都要接去哪才好呢?另外為了不浪費I/O,我們之後會再另外介紹比較複雜的接法喔!

WorldSkills Mobile Robotics Collection (II) – 與車體不契合的輪與馬達

最近John真的有點偷懶比較忙…加上我這裡的官方比賽指定套件被xxx公司收回去了,只好用一些以前的照片和程式來繼續分享給需要的老師和同學囉。

上次講到套件的內容,有些老師以為它全部就這麼多個(那也太坑啦…),再重申一次我貼的照片只有種類,數量還是以官方網頁上的表格為準喔,而且有些零件我是沒收到的,所以也就不會在照片上啦。

今天先說套件裡的馬達:(借用一下網路上拍賣商家的圖片)

faulhaber_2342_encoderfree-shipping-germany-faulhaber-coreless-motor-2342-l012cr-12v-120rpm-with-encoder-and-gearbox_1420168 (1)

這個馬達是Faulhaber 12V 的 DC馬達,搭配64:1的行星齒輪減速箱、12CPR光學式的編碼器可以得到馬達轉一圈編碼器數3072下,不論價格或規格都稱得上是一時之選,除了編碼器因為是另外鎖上去的,有時候位置鬆掉轉的時候那個像風扇的東西會有點卡到,用十字起子調整一下就好,沒什麼大問題。詳細的規格如下:

  • Type: Faulhaber 12V DC Coreless Motor
  • Power: 17W
  • No Load Speed: 8100RPM/minute
  • Reduced Speed: 120RPM/minute
  • Diameter: 30mm
  • Length: 42mm
  • Total Length: 85mm
  • Diameter of Shaft: 6mm
  • Length of Shaft: 35mm
  • No Load Current: 75mA
  • Load Current: 1400mA
  • Gearbox Ratio: 64:1

Encoder

  • Type: Optical
  • Encoder Phase: AB
  • Encoder Resolution: 12CPR

問題出在與平台組合的方式,借用一下網路上的某組合平台的圖來說明:

T2OymUXjtXXXXXXXXX_!!20394626.jpg_600x600

上面這張圖,馬達是鎖在一塊黑色的L型的鋁合金上,這塊L可以鎖上馬達隨附的黑色軸承,再把萬向輪與鎖上6mm的hub,將hub的突起插入軸承,再把hub上兩個呈九十度的止付螺絲鎖緊固定馬達的軸,最後接上平台,靠的也是這塊黑色L件。

接著我們看官方的套件:

IMG_0234IMG_0233

首先第一張圖片中固定住馬達的鋁殼,是兩片L型扣成的,還不錯,給予編碼器的電路更好的保護…但是要裝上黑色軸承時就沒辦法兩片L都使用了,因為兩片互咬的L在軸承那面會突起,所以只好捨棄其中一片,但這麼一來這個銀色的L好像略顯單薄。另外照片中有很多較小的孔,那是學生自己打上去的(有些洞是打錯位置),原本沒有,這些洞是用來固定圓形的軸承(沒錯,原本的L沒有能夠固定承軸的孔)。我們還可以從第二張圖看出,官方套件的面積不夠,所以軸承沒辦法四個孔都鎖到銀色的鋁殼上,另外鋁殼的長邊也沒有預留孔位來跟套件中的C型件接合,下面這張圖的四個孔也都是學生自己打的:

IMG_0230IMG_0235

寫到這我都快昏了,這些孔的位置如果沒辦法打準(約在兩條內),除了馬達無法跟車體垂直,軸承轉動的時候也有可能受力不平均影響運轉,這些是我們一般玩機器人的學生或老師,花了大把的鎂應該得到的產品嗎?真的覺得痛心啊…

WorldSkills Mobile Robotics Collection (I) – 清單簡介

一直很掙扎要不要花時間寫這一篇文章介紹一下這個世界技能競賽(以後都簡稱WSC)官方的指定平台,因為光是看到這些零件就讓我一肚子火啊,居然有廠商這麼不負責任推出這些「套件」,我都不知道該說什麼了,沒有成套也不太容易組裝起來,這還能叫「套件」嗎?但是為了讓大家理解錢花在刀口上的重要性,還是隨便漫罵簡單介紹一下好了。 以下是從官方贊助商網頁擷圖下來的套件清單繼續閱讀 WorldSkills Mobile Robotics Collection (I) – 清單簡介