2008年12月30日 星期二

機械手臂修改篇(1) -- 夾具修正前篇

之前的機械手臂

在夾具的部分比較脆弱

很容易折損

所以利用紙模的概念做了一下修正





1977649505



第一張提供的是CorelDRAW的圖面

是手掌部分的樣子

由原來的一個SERVO變成兩個

並將標準型的SERVO改成是9G的小SERVO





1977649506



加工好的樣子大概是這樣





1977649507



再看看其它角度





1977649508



加工時有缺角的部分

可以用白膠填補

等白膠乾了以後

再上點色就看不出來了~~~





經過這樣的修正

機構就不容易折損了

其它的關節暫時延用原來的機構

只有SERVO的傳動桿需要重製

等修改好再放上來給大家參考



如此一來

加上原來的四軸

一共就是六軸的機械手臂了!!

2008年12月27日 星期六

機械手臂材料篇(2) -- 光碟機構

第一次製作機械手臂

焦點全放在書上的機構製作

忽略了很多身邊可以利用

而且方便取得又加工容易的材料



拿圓盤機構來說

只要疊合幾片光碟片就是很好的圓盤機構了!!

ian可以參考看看唷~~~



1977649502



這是一片光碟保護片

通常放在一筒光碟的最上與最下的空白片

拿這種來做最合適

學生時代收集了一堆

到現在還保存著



1977649503

真的很多吧~~~



飛碟的部分就不方便拿出來炫耀

上面多半有寫一些雜七雜八的字

哈哈~~~





至於厚度增加的部分

可以思考一下疊合的加工方式

除了用黏的以外

也可以透過鑽孔加上螺絲固定的方式

兩者並用就更好了~~~

(像我現在要做的紙機構一樣)

機械手臂材料篇(1) -- 紙模機構

做過一隻機械手臂後

有很多的感想跟心得

最近好不容易備妥第二隻手臂的需求

要開始動工了

不過這一次花費的時間會比之前久

因為機構的部分打算用紙來做







1977649499

這是基座軸動力所使用的SERVO







1977649500

這是手臂關節與夾具所使用的SERVO



選用的紙有兩種

第一種是西卡紙

用來印製加工圖面與當成機構表面的材料

第二種是厚紙板

厚度約1.7mm

約西卡紙的15~20倍厚



1977649504



看一下這張圖

體會一下兩種材料的差異吧!!

上面的材料就是厚紙板

粗糙但容易填入並吸收白膠

西卡紙細緻而且光滑

當機構表面可以減少機構接合面的磨擦力

增加機構的壽命~~~



再提供一張基座的機構圖面給大家想像一下!!

1977649501





圖是用CorelDRAW畫的

一來我對這套軟體比較熟

二來電腦剛好沒裝CAD軟體

不然其實應該是用CAD來畫會比較好

未來建3D圖會比較好建

現在立體圖的部分都是手工草繪

只畫出平面圖供製作機構用



************************************************************************************************************

2009/1/7 補充說明



使用的西卡紙是200P 8K

http://goods.ruten.com.tw/item/show?21207226758462

2008年12月23日 星期二

兩足機器人製作超入門的簡介

http://www.robotsfx.com/robot/ATWALKER.html



這個網址算是這本書的官方網站

是作者淺草的網站

裡面有詳細的簡介和周邊產品

有興趣的朋友可以去參考看看



把目錄稍微翻譯一下

提供給大家過過癮



0. 序章

  0-1 前言

  0-2 機器人製作的概念

  0-3 零件清單 (BOM List)



1. 電路板的製作

  1-1 電源板的製作 (電力系統的規劃)

  1-2 主控板的製作 (MCU Board)



2. MCU的程式編寫

  2-1 MCU的動作原理

  2-2 點亮LED燈 (大家概念都一樣, 一定要會點LED燈)

  2-3 定時亮滅LED燈, Pulse的產生

  2-4 用MCU控制SERVO運作



3. 機構的製作

  3-1 材料與工具

  3-2 用鋁板來製作機構



4. 試著讓機器人動起來 

  4-1 組裝的確認

  4-2 軸與扭距

  4-3 四軸的兩足步行機器人



5. 機器人的追加功能

  5-1 觸摸感測器 (IO狀態的判定)

  5-2 距離感測器 (AD功能的練習)

  5-3 音頻輸出 (用串列通訊與其它設備連線)

  5-4 無線控制



6. 開始打造屬於自己的機器人

  6-1 自學的心理準備

  6-2 自學的參考書籍



附錄

  A. 鋁板加工圖面

  B. ATmega32的特殊暫存器一覽表, ASCII表, 進位轉換表

  C. 電阻值與電容量的表示法

  D. MCU

  E. 本書機器人的應用實例 (ROBO-ONE參賽機種)

  F. 焊接

  G. 連接線的製作

  H. 英文專有名詞的翻譯

  I. 三角函數表

2008年12月20日 星期六

新書到 -- 兩足機器人

1977649491



終於等到書了

放個封面給大家瞧瞧

接下來就要試作看看囉!!



補上兩本書的網址給大家參考(2008/12/22 更新)
ROBO-ONEのための二足歩行ロボット製作ガイド

二足歩行ロボット製作超入門 バッテリーからRCサーボまで 





********************************************************************************



今天其實在忙的是房間佈置

只完成了一半

下了班就一直在收拾還沒收拾乾淨的房間

還要每一塊壁磚地磚通通擦乾淨



1977649492

收拾好之後像這樣

接著就開始拼地墊



1977649493

總共四種顏色

用最沒創意的方式拼起來

因為還有其它的東西要擺

時間又很趕(答應老婆這星期要完成)



1977649494

擺好後大概像這樣

然後稍微休息一下....



1977649495

再繼續鋪上這塊大墊子!!

然後用抹布把大墊子徹底擦乾淨

(小朋友很可能因為好奇而直接在墊子上舔來舔去?!)



還沒全部完成

剩下牆壁的墊子還沒搞定

門還要加個門欄

明天中午前看看能不能全部完成!!

再來就可以玩機器人了!!

^+++++^



(2008/12/21 更新)

今天是冬至

也是小犬滿八個月

送個遊戲房給他當禮物

老婆看了很滿意唷~~~





1977649496

門有加上門欄了

就算不關門還是可以避免他爬出來摔下樓梯





1977649497

看一下側邊的牆

通通都有貼上墊子唷!!





1977649498

大大的海報牆

可以讓他早一點識字



********************************************************************************

(2008/12/23 更新)
為什麼要把上面星號這一段內容po出來呢?

其實我還想表達另一個層面的概念

好像沒有人發現

只好自己再補充上來......



單就一個房間約4~5坪的空間布置

花費也不過7000大洋上下

跟一隻isobot 的費用相當

而一隻KONDO KHR的費用

可以讓我布置這樣的房間三間 !!

但如果請人來布置

費用大概要四五萬起跳

現在的行情可能會差一點

但兩三萬也跑不掉......



所以說

技術這玩意是很值錢的

不管是 "時間成本" 或是 "實體開發成本"

如果我們總是期待別人把東西做出來

那麼就沒有立場去批評人家的東西很貴

因為別人做得出來

而自己做不出來......



台灣的惡性競爭

就是只看材料成本

不看技術成本

所以把玩技術的人搞得四不像

一大堆人過勞死

身為技術人

千萬不要賤賣技術

寧可分享技術做公益

也不要賤賣技術破壞市場

這一代的台灣已經嘗到惡果

希望下一代不要繼續惡性循環



讓願意DIY的人享有DIY的成就

這樣就會有更多的人願意DIY

進而藏富於民

讓各產業可以做出更好更具國際競爭性的產品

同時也讓不願意DIY的人懂得技術的價值可貴

而不會漫天殺價



現下的環境

就是太容易取得高科技產品

才讓人覺得高科技很廉價
(謎之音: 所以高科技人才=廉價勞工) ~~><~~

2008年12月16日 星期二

MCU -- ATmega64的怪問題

話說最近在用AVR開發系統

遇到了一些很不可思議的問題

到目前還是無解的狀態

提供給大家參考看看~~~





1. Reset 的不穩定



ATmega64大概是我目前用到過reset最不正常的MCU

或許是因為內部架構太複雜的關係

也或許是我還沒把硬體與軟體完全搞懂的關係

總覺得好像哪裡怪怪的



從一開始用M64

就發現它在reset時有時候會成功

有時又reset不起來!!



由reset信號去觀察

發現reset信號很穩定

因為有用reset IC的緣故

所以0電位有確實拉到0

石英晶體也有起振

但系統就是沒有reset起來



用mkII去reset也OK

獨獨Power_ON reset就是很不順

不曉得是哪裡出了問題??!!



(赫然發現, Arduino所有版本都有用reset key, 難不成是因為這個問題??)





2. EEPROM 之"隨它高興"存取



這是最詭異的問題

抓了整整一天還沒抓到問題



WinAVR有內建eeprom的函式

一個是eeprom_read_word();

另一個是eeprom_write_word();



使用write再用Studio把資料read回來

OK~~~

確定資料都有順利填入



可是一用了read功能

災難就來了

read 0~7的值OK (該Byte的儲存值是0x00~0x07)

read 8~F的值系統就當掉!!! (該Byte的儲存值是0x08~0x0F)

而且不管換到哪一個位址都一樣

這是相當詭異的!!

而且匪夷所思!!!



連老闆也愛莫能助

只說可能是編譯器版本的問題

用免費的開發工具就是有這樣的缺點

Orz........





ps.

剛剛找到一個解決方案

還沒試過

明天來試一下看看

http://lysoft.g4soft.net/article.asp?id=46



ps2.

上面的方案確定可行

不過建議在函式的最後要加上sei();



因為系統所有的中斷資源都被關掉了

如果不恢復

很多動作都會不正常唷~~~



比較快的解決方法是

直接呼叫原來eeprom.h的內建函式

只是呼叫前加上cli();

呼叫後加上sei();

這樣就不會出問題了~~~

(2008/12/17 更新)

2008年12月11日 星期四

充電一下 -- 紙橋載重

這幾天在思考加工機器人的材料

做完一隻機器手臂之後

就一直在思考這個問題



前陣子UUCWW大大在機器人論壇上貼了一個32in1的紙模製作

我就開始很認真在思考用西卡紙來完成機構的可能性

而思考的方向

是學生時代所接觸過的紙橋載重





什麼是紙橋載重?

顧名思義就是用紙做成橋

然後去承載一定的重量

它是一個結構製作的比賽

比的是載重與紙橋重的比例

比例越大就得勝



印象中

有人以4000多克的紙橋

成功載重近一百公斤的重物

比例高達20多倍



紙橋的技巧

在於黏合的均勻度

及紙張上應力分佈的強化



這兩天工作較忙

所以沒太多時間找資料

未來實作的時候再跟大家分享一些細節

有興趣瞭解紙橋的人

可以用"紙橋載重"的關鍵字上網查看看唷~~~

應該會有一些收穫的!!





ps.

剛剛發現一篇報導

現在的記錄是1673倍

以159G承載266KG

http://news.epochtimes.com/b5/8/6/17/n2157274.htm

http://blog.youthwant.com.tw/ywcampus/newscenter/1369/

2008年12月9日 星期二

充電一下 -- MODBUS 通訊技巧

前文提到MODBUS的傳送格式

至於接收的部分

我想跳過編碼的介紹

直接介紹通訊間的一些問題

編碼的部分

上一篇文章中所提供的PDF文件

有很完整的描述

只是內容是英文的

如果有人看了不太能理解的

再告訴我一聲吧~~~



我們都曉得

根據MODBUS所制定的格式來看

裝置端(slave)在接收指令的負擔是很輕的

以RTU模式來看

只要8Bytes就完成一組指令了

ASCII的話也只要17Bytes就搞定 (1+8x2)



但是回應的時候

RTU長一點就可能要30~40個Bytes

(假設一次要拿16組資料, 每組都2 Bytes)

同樣的ASCII就要近80Bytes 的資料在傳~~~

對於暫存區空間較少的MCU來說

這是一個夢魘!!!

因為通訊時別台裝置的回應碼

不單單只是回應給主控端

還同時會傳給其它的裝置端

如果串列中斷裡沒有規劃好因應的對策

災難很快就會發生

要不是系統的堆疊會爆掉

就是串列資料不小心改掉堆疊的內容

讓程式進入亂七八糟的鬼上身狀態



規劃的方向有幾個重點

提一下概念給大家思考看看





1. Timeout 機制 (逾時中止)



Timeout是MODBUS通訊中一定會用到的第一個概念

特別是在RTU傳送模式下

因為通訊碼裡面並沒有結束碼的設計

所以只能透過"經過多久時間沒有在送資料"來判斷它已經結束了



這個等待時間一般來說是5~10 個Bytes的時間間隔

拿9600bps的鮑率來看

1個Byte約需1mS

那麼適當的Timout時間就是5mS~10mS



為什麼要這樣設定?

因為資料在傳送的過程

主控端有可能受到其它多工運作的影響

導致指令並不是連續送出來的

把Timeout設得太低

有可能當指令傳到一半時

裝置就開始分析指令了

這樣一來

指令分析一定會錯誤

裝置也就不會正確動作及回應了!!





2. 循環指標歸零時機



一般在設計通訊碼的暫存空間

會使用循環旗標

意思就是讓暫存器透過串列中斷一直存放資料

不要去管內容是什麼

每存一個Byte指標就+1



當發生Timeout

或是旗標已經加到陣列的邊界

才把旗標歸零



分析指令時

如果是第一種歸零時機

通常是正確的通訊碼

第二種則是部分資料被覆蓋的不完整碼

透過歸零時機的判斷

可以拿到正確的通訊資料





3. 善用ASCII的啟始碼與結束碼



在ASCII的模式下

:是啟始碼

CRLF是結束碼


只要遇到啟始

就自動擺到暫存空間的最前面

遇到結束碼就立刻分析資料

這樣就能保證資料一定是從頭開始而且是完整的





以上

就是MODBUS的必勝秘訣

如果能依照這樣的原則來寫程式

一定可以避開很多莫須有的怪問題





不過

很多實際的應用還是會有出乎意料的狀況

此時就要善用示波器來觀察通訊的波形是否正確了~~~

2008年12月8日 星期一

充電一下 -- MODBUS 通訊格式

剛剛完成機械手臂的基本雛形

要銜接下一個進度的空檔

來談談通訊中最常被使用的格式 -- MODBUS



MODBUS是一種通訊碼的標準

有別於硬體的RS232, RS485, USB...等規範

它純粹是定義軟體的碼

如果你告訴別人MODBUS就是9600,n,8,1

那觀念上就差了十萬八千里囉!!



到底什麼是MODBUS??

簡單說

就是兩台機器彼此用來溝通的語言

標準格式如下



1. 站號 --  2. 指令 -- 3. 資料位址 -- 4. 資料長度 -- 5. 檢查碼





底下分別說明各個部分



1.  站號 (0~255)



其實就是我們常說的ID(身份證號碼)

用來表示您所正在溝通的對象硬體

因為絕大多數的通訊

都是並接很多台設備同時進行連線的

如果不能明確告知要跟哪一台溝通

很可能機器跟機器之間會溝通不良而罷工或暴動





2. 指令



這就是您對硬體所要求執行的動作

常見的指令如下

0x01 : Read digital (ON/OFF) parameter (讀取一個數位參數) 

0x03 : Read analog parameter (讀取一組類比參數)

0x05 : Write digital parameter (寫入一個數位參數)

0x06 : Write analog parameter(寫入一組類比參數)




標示藍色的指令(digital)

就是一次只能存取一個 bit 的資料

標示紅色的指令(analog)

就是一次能存取一組 16 bits 的資料





3. 資料位址



固定格式為2 Bytes

如果是數位的位址

代表的意思就是第幾個bit的位置

假設我寫位址是0000

那麼就代表第一個bit

位址是0013

就代表第20個bit  (0x0013=19)



同樣的

類比所代表的位址

就是代表第幾組資料的位址(一組是16bits)





4. 資料長度 (或寫入資料)



當指令為讀取時

這兩個Bytes的功能就是告訴對方我要讀取幾個Bytes

當指令為寫入時

就是把前一組位址寫入現在這裡所填的資料





5. 檢查碼



MODBUS的檢查碼分兩種

第一種是給ASCII(文字形)通訊用的

叫做LRC

它簡單來說就是checksum的功能

把前面所有的通訊碼的值累加起來

再用0去減掉這個總合

得到一個8 bits的運算值之後

再把這個值拆成兩個 ASCII文字

最後補上結束碼(CRLF)



第二種是給RTU(二進位形)通訊用的

叫做CRC16(簡稱CRC)

它比較複雜

是透過一連串的互斥運算所得到的值

不過現下絕大多數的CRC

是用查表比對出來的



在這種檢查碼的格式下

有一個很重要的參數

我把它稱做"啟始種子"

一般來說

這個種子應該是0xffff開始的

也就是互斥運算的一開始

必須是0xffff

然而隨著通訊碼的諜對諜

這個種子可能會變成是0x0000或是0x8000

小弟在實際的應用場合

就看到這兩個異類種子出現過

然而這是否算是違反MODBUS格式呢?

那就見人見智囉!!





在什麼地方看得到MODBUS呢?

大多數的PLC通訊

應該是用MODBUS平台來架構的

某一些大型的加工機台

或是機械手臂

也會用MODBUS來進行通訊

大致來說

MODBUS就像機器界的中英文一樣

是最多人使用的語言

所以想要玩通訊的人

要稍微熟悉一下這個格式唷~~~





以上是一點小分享

詳細的資料可以參考一下這篇文章

http://www.eecs.umich.edu/~modbus/documents/PI_MBUS_300.pdf

2008年12月6日 星期六

MCU -- AVR DATABOOK 1997

手邊有一本很早期的DATABOOK

放一些相片給大家瞧瞧



1977649486

這是書本的正面

簡潔有力

反正就是讓大家知道是AVR就好了



1977649487

Atmel的招牌

標明了1997年出的

都過了十幾年了!!!



1977649488

翻開書的最前面

一樣是廠牌宣告



1977649489

索引的地方

標示了四顆早期在推的MCU型號

最棒的部分

就是把整個指令集都寫在書裡了!!

另外還有開發工具的介紹



1977649490

這就是開發工具的樣子

跟現在小小一台的mkII比起來

真的是壯觀多了!!!





公司裡的第一顆AVR

就是書中所提到的第一個型號AT90S1200

跟AT89C2051一樣

是20pins的DIP包裝

連腳位都幾乎是pin to pin!!

功能也很相近





所以當我剛要學MCU時

我也在猶豫要先投靠哪一邊

後來會投靠51

最重要的因素就是參考資源豐富

不過AVR也一直放在心上

畢竟在硬體架構上

就像前一篇文章提到的

AVR真的比8051好很多





其次就是燒錄工具

在我要切入MCU的當時

已經有比較便宜的燒錄器可以用了

只是沒有USB界面的燒錄器而已

一般都還是LPT埠的燒錄器

而碰巧公司又正開發推出了USB燒錄器(for 8051)

就在我剛進公司的時候

所以順理成章就從8051開始學起~~~





Edison大大問過我很多次

為啥我們對AT89C2051這麼情有獨鍾?

對我來說

它是我的第一個MCU

這樣的說法

或許可以透露出個中的端倪





您對AVR很有興趣嗎?

千萬不要只是有興趣唷~~~

現下很多高精度的儀器

其內部所使用的MCU正是AVR

快點找個有興趣的型號上手吧!!

個人挺推薦Arduino的(雖然還沒入手....^+++++^)

可以試試看唷!!!

2008年12月5日 星期五

MCU -- AVR ATmega64

上次介紹過AVR的蝴蝶套件

這次來談談我最近在忙的板子吧!!



1977649484

ayu大大問我說

我是不是打算用AVR做機器人呀?!

或許會吧!

不過這一片的功能並不是機器人用途的唷~~

是公司裡目前要完成系統的一小部分

名稱是八通道溫度量測器



板子偏右側所卯上的最多腳位的IC

就是ATmega64的MCU

腳位數量剛好就是64隻~~~



由於目前還在測試階段中

所以先賣個關子

但大概可以提一下的是

上面有一個20bits的AD

量電壓目前可以準確到的100uV

換算成溫度

如果選用的感測電阻夠準

溫度是可以準確到0.1C以內的

未來上市還請大家多多捧場~~





1977649485

這個就是傳說中的mkII

早期想學就是沒有這玩意

所以一直都只是看看

現在有工具了

總算可以好好玩一下~~~





話說AVR已經在MCU的世界中行之有年了!!

很多對51失望的人

轉用的MCU中以AVR最為普遍

因為不論在硬體空間

或是IO與中斷的規劃

都超越51太多太多了!!!





可惜的是

在台灣一直沒有正式支援

賣MCU的經銷商很多

卻沒有專屬的FAE或是原廠的工程師在推

會使用AVR的人

多半是已經有MCU底子之後

再自己摸索跳過去的!!!





而AVR之所以會在台灣流行

原因跟Linux一樣

因為它的程式編輯工具光是free的就超好用

(AVR studio + WINAVR)

只要有C概念的人就可以輕鬆上手

如果能熟悉組語

看到精簡的程式碼與強大的硬體支援

沒有不心動的啦!!!

而且連USB的韌體程式

都有高手free丟在網路上供人下載

不需要特地選用搭配USB功能的MCU

只要程式碼一掛就能擁有USB

這就是AVR最讓人驚豔的地方~~~

底下是參考連結

http://www.obdev.at/products/avrusb/index.html







價格上

AVR也是很有競爭性的

只是定位上比較模糊

因為效能上跟DSP還有一段差距

可是拿來當MCU又覺得有點大材小用

或許是我所應用的場合沒有很迫切需要AVR的地方吧

真正用過之後

就是讚不絕口

好用!!!





不過AVR還是有些缺點的

因為系統比51複雜得多

很多設定對剛要使用的人來說

是一個不小的門檻

光是程式編輯界面

就一大堆設定搞不清楚

更別提AVR的硬體設定

整個就是亂成一團





好在有一套軟體叫ICCV7

它可以快速幫你產生硬體設定檔

只要開啟Application Builder(暫時翻譯做硬體設定精靈)

然後從晶振一路勾選到Timer, Uart

再按OK

所有的暫存器你通通不用去查datasheet

它就全部幫你設定好產生對應的程式碼

當然

如果你要讓設定變得有彈性

還是得自己K一下datasheet比較好

但對一個剛要上手的使用者來說

這樣的功能就太好用啦~~~





若您用過其它的MCU

改用AVR只需不到三天的時間

就可以開始開發您的產品了!!!

(我大概花了一天半....)

當然您還是要有一些程式範例可以參考

瞎子摸象一定是會浪費不少時間的!!!

2008年12月3日 星期三

機械手臂控制篇(10) -- 操作界面篇

1977649482



完成了!!

VB6的界面

原始程式下載



操作的方法很簡單

就是用[+]跟[-]調整SERVO的位置

用test motion看一下是不是自己要的

再按一下save motion

這樣就可以了



要執行的話

按一下run motion XXX to XXX

就可以執行已經儲存好的設定



最後如果要更新動作

就按一下clear all motions

再重新儲存motion

這樣就大功告成了



目前每一個動作的時間間隔是0.25秒

要增加停頓的時間

就把該動作連續存幾次就可以了





照慣例要來個影片

請笑納







ps1.

不要太期待會有很穩定的動作

因為SERVO本身光是送固定寬度的PWM就已經抖個不停

更別提要連續改變SERVO的角度

應該是慘不忍睹的

參考一下就好了~~~~





ps2.

程式其實有預留一些函數沒有呼叫

包含將動作存到檔案

漸進式傳送角度的功能

這些都還沒掛上

所以看動作的時候會比較粗糙

晃動也比較利害

2008年12月1日 星期一

機械手臂控制篇(9) -- 控制板組裝篇

在撰寫PC操作界面程式之前

先把手臂的控制板先組裝起來吧!!



記得一開始所提到的洞洞板嗎?

長得跟MCU板一樣大小的那一片?



由於板子的空間真的很小

所以我就放棄原來要加74HC14的作法

改用一般最常做的方式

(其實是因為我的MCU程式已經寫成正邏輯驅動的關係 )



看一下焊好的樣子吧~~~



1977649475

這一張是正面的樣子

開關的部分我用指撥開關

由於有兩個馬達要同訊號

所以有兩個接頭是共用一個指撥開關的

而指撥開關所管制的就是每一組SERVO的電源

(目前有四組)



1977649476

因為電流不算小

本來想用鍍銀線

後來全部都用AWG24的線來上!!

焊得挺累的~~



1977649478

接下來把MCU板焊到洞洞板上

就像圖中所看到的一樣

這可是特別設計過的唷~~~



1977649479

看看背面的焊線吧!!!

信號線(橙)稍微用小一點

是AWG26的線



1977649480

連接好的總圖就是這樣囉!!!





在焊接的過程想到一個問題

為啥SERVO的電源大多都設計在中間腳與一側腳

卻不是將電源放在兩側

而信號跑中間??



焊接跟PCB LAYOUT時

你就知道為啥了!!!









1977649481

最後來看張大合照

萬事皆備

只欠東風

界面程式加油

就要到結尾囉!!!





ps1.

提醒一下

焊接類似這樣的小東西

特別是線一堆的板子

每焊好一條就要用電表量一下

是否點到點有導通

不然等全部焊完才發現最裡面的線沒焊好.....

那就暈暈暈暈暈.........

倒倒倒倒倒.........

Orz...........





ps2.

通電後

MG995的手臂一直在搖

它對信號的截取一直很不穩定

所以在寫界面程式的時候

記得千萬別一次動太多個SERVO

也絕對不要一次跳太多解析度

因為光是要維持動作

它的電流就已經在0.03~0.125A在跳動

扣掉MCU不到0.01A的電流

再次讓人感受到MG995被罵的劣根性

一分錢一分貨

千萬不要貪便宜唷~~~