2007年12月31日 星期一

Robocon 55

今早回到公司,我的檯面擺放著一件包裹。原來 Robocon No.55 已經在我星期六放假時,靜悄悄的送到我的座位上。 

今期介紹了一隻名叫 PLEO 的機械恐龍玩具,我之前也有留意它,事關我的公司也希望做一隻類似的產品。PLEO 外型趣緻,而且動作也做得很好,我也有興趣買一隻給我的愛女,不過還是認真考慮一下才決定買不買...。

2007年12月30日 星期日

2007年12月25日 星期二

i-Sobot 寫真(二)




為免跟其他網友的 i-Sobot 掉亂,我找來高達 RX-78, Striker 的貼紙來修飾一下 i-Sobot。效果不錯吧?!

2007年12月24日 星期一

i-Sobot 寫真


今日是平安夜,街上面充滿濃厚的聖誕氣氛,而今年有 i-Sobot 這份聖誕禮物,真是高興!

另一個 i-Sobot 技術網頁:
http://avalon1982.cocolog-nifty.com/robot/isobot/index.html

2007年12月23日 星期日

這就是我的 i-Sobot


附帶參考:i-Sobot 解拆
http://robot.watch.impress.co.jp/cda/column/2007/11/08/731.html

2007年12月22日 星期六

i-Sobot 到手


等了很久,i-Sobot 終於在今天到手!我們相約在上環一家新的意大利餐廳,一同接受我們的 i-Sobot,並立即試玩一番。

今天出席的人不多,有九位網友,以及兩位一週刊的記者。對,是一週刊的記者!他們知道我們今天的聚會,於是來採訪一下。相信住後的大型活動,都會有他們出現,宣揚一下機械人在香港的發展。

我們一共訂了十六盒 i-Sobot,當中有十四盒是黑色版本(說英語)及兩盒白色版本(說日語);我的是黑色版本,因為看起來比較專業;而白色版本看起來則比較玩具。初步來說,我對 i-Sobot 的效果及動作都很滿意;不過,她只支援兩個頻道就真的太少。要是有數架 i-Sobot 在場,便會造成混亂,希望我們可以透個更改線路來提升頻道的數目。現時,我們已經預定在農曆新年時舉辦一次 i-Sobot 格鬥比賽;還有一個月時間,要努力練習了!

今日為了買聖誕禮物給小朋友,於是便到了 Toysrus。我當然也看看有沒有 i-Sobot 買啦!原先以為我們是第一批得到 i-Sobot 的人,原來 Toysrus 都有得賣了,不過就只有兩架,而且是白色版本;價錢則是 HK$1999.9!我們買的便宜了 $200.9,哈~

2007年12月19日 星期三

ER Fluid

今日在看「ガリレオ」第七集時,居然能學習到機械人的知識,實在不失為我喜愛的科學味日劇。

故事講述利用了 ER Fluid 去殺人的裝置。原來這個世界上有一種物料,在加上高壓電流時,會由液態變成粘性的固態;這種物料可用作機械人的肌肉。不知道這是不是真的呢?!呵呵~

如果能把這種物料用在我們機體上,睹也不錯。不知這種物料能否買到呢?不知道貴不貴呢?!

2007年12月18日 星期二

聖誕老人來了...

今天收到聖誕老人R的電話通知,在今個星期四,我們將會收到聖誕禮物~i-Sobot!相信今次的 i-Sobot 會對我們的小圈子產生大衝擊,引發新一輪的機體網頁更新戰!

2007年12月9日 星期日

AIBO PS


我一直以來都很想買「愛寶」;第一代推出時沒有錢,買不了;到第二代時又沒有錢,買不了;到第二代平價版時,由於失去開發部份,因此不想買;到第二代星戰版時,有錢,但不捨得買;直到「愛寶」停產,想買也買不到;到現在 AIBO PS 重生,相信都不會買,因為現時有太多二足機體比「愛寶」平及好玩。不過 SONY 真的捉到我的心意,這代「愛寶」可以透過 PS3 來控制,真的很吸引...。

2007年12月4日 星期二

Robocon 54(三)


望穿秋水的 Robocon 54 終於都空運到港了!今次 Ohmsha 真是蝕大本,只不過是 $980yen 的雜誌,空運過來卻要 $2050yen,足足 HK$150...

2007年11月29日 星期四

Robocon 54(二)

經過跟 Ohmsha 直販部的一輪溝通之後,他們在今天再一次向我發出 Robocon 54 雜誌,而且還是用空郵的,相信下星期二在香港上班時便能收到!Yeah!

2007年11月28日 星期三

第12回ROBO-ONE DVD


不經不覺,第12回 ROBO-ONE DVD 發行了,今次售價是 $3800yen。在美元港元弱勢的今天,這片光碟要大概 HK$270。今回也有點興趣,不過從日本 Tsukumo 訂回來的運費超高,今次不會再上當。唯有等朋友過日本時順道買回來...。

2007年11月27日 星期二

第一塊口字形鋁部件出來了


最近在忙完祖母的身後事之後,時間都落在印證八字及玩 PlayStation 3 遊戲上。剛剛才完成了 Resistance 遊戲,以為有點時間,誰知因為聖誕將至,很多好遊戲如 Uncharted, Assassin's Creed, Time Crisis 4 等通通出籠...所以很少時間開發機體 :P。我只鋸了第一塊口字形鋁部件出來。而且,一直也想不出好方法去連接伺服馬達及鋁部件,希望快點有靈感啦...。

2007年11月14日 星期三

鋁方通到手


找了很久都找不到的鋁方通,終於在託同事買到回來,5cm x 5cm x 2mm x 2尺的鋁方通要 $45,比起上次R給我的貴了少許。不過,都沒有辦法,反正是現時最好的了!好,希望快點把新生機體造出來!

2007年11月13日 星期二

Robocon 54

由於距離 Robocon 54 雜誌發行的時間已經有三個多星期,但我仍然沒有收到以平郵方式寄出的雜誌,所以便發電郵到 Robocon 編輯部查詢。得到的答案是已經在 10 月 11 日那天寄出了!已經有一個月時間...>_< 今次已經是三年來第三次寄件延遲事件,當中一次是延遲,另一次是寄失了,希望今次真的能收到!

2007年11月4日 星期日

鋁方通

昨天約了朋友在旺角。在聚會之前有點時間,便到旺角新填地街找鋁方通。行了幾個街口的五金舖,都找不到合適的方通,最後都是空手而回。不過,由於我家的電鑽是向爸爸借的,所以我自己也希望購買一台電鑽回來。之前在鴨寮街也搜尋過,發現有不同的 Voltage 版本(9.6v, 12v,...);我不知道究竟買那一款才合適,難度買最高 Voltage 就最好?

2007年10月25日 星期四

手提折曲器


在日本的機械人網頁上,偶然見到這個手提折曲器,看來十分方便好用!可惜找不到購入的地方...;要是在香港也能買到就好了!

2007年10月23日 星期二

Pucirobo X


在翻查 Robot Life 的時候,發現了一套只售 29,988 yen 的機械人套裝,大約是港幣 $2000。是一個不錯的價錢!相比起最近 Takara Tomy 推出的 i-sobot,大家價錢機乎一樣,但這套 Pucirobo X 就更像大人的玩物,比較適合我的口味。

2007年10月22日 星期一

悼念 Robot Life


這幾天,我為了找尋合適的足步設計而翻查了家中的機械人雜誌。當中最方便找設計的,想必是  Robot Life;因為它就像時裝雜誌一樣,刊登了很多相片,而且有很多還是大特寫。在翻查的同時,我意識到手上最新的 Robot Life 已經是七月號,有一點過時;所以便到網上搜尋新的期數,打算訂購回來。誰知,Robot Life 的網頁已經停止運作...。我到 Amazon Japan 也只能搜尋到七月號...。原來 Robot Life 已經在我懶惰的期間,不知不覺地消聲匿跡。可能是 Robot Life 的定位是一本消閒雜誌吧,看得機械人雜誌的人,或多或少都想從中學到一些專門的技術,難怪 Robot Life 撐不下去。幸好,我家中完完整整的保留了六本 Robot Life,是全輯的 Robot Life!相信日後只能在博物館才可以見到呢~

2007年10月21日 星期日

新足設計


按照 KHR-1HV 的設計,我在 Inventor 中把足部模型造了出來。基本上,只用上一款C字形的金屬部件。現在,反而需要構思一下,伺服馬達之間的連接方式。

2007年10月20日 星期六

LEGO NXT Walker


昨天有一點時間,便拿出 LEGO NXT 出來玩,打算砌一架會向前行的車。當車前方接近障礙物時,車子會向左轉 30 度,然後再次檢驗障礙物的距離,直至沒有障礙物便再向前行駛。很簡單便砌出了機體,反而在編程上需要多一點時間。我十分不習慣使用 NXT 附帶的那個 LEGO 式編程軟件,所以做出來的效果也不太理想。稍後有時間的話,再用 C 程式來編寫。

2007年10月19日 星期五

Amigo 設計

經過一輪研究及思想之後,最終我還是想不到有更好的骨架設計方案。所以,我還是決定按照 KHR1-HV 的設計來製作,希望可以快一點完成新版本的 Amigo!

2007年10月18日 星期四

YTN Science TV - I am a robot


昨天很高興得到 Rex 的邀請,跟其他機械人發燒友接受韓國電視台的訪問。採訪地點在中文大學的電子工程實驗室中進行。我們由晚大八時拍攝到九時半,過程十分順利。圖中左方白色衫的女士是記者,右一的是攝影師,右二的是導演。

2007年10月17日 星期三

高交會機器人專展


星期一那天,當我路過在皇崗上班的天橋時,發現了掛著一大條橫額,上面寫著「第九屆中國國際高新技術成果交易會機器人專展」,立即吸引了我的注意。而展覽場地則距離公司大約十五分鐘的步行時間。經過向同事查詢之後,得悉今天是專展的最後一天,本來都打算在午飯的一個鐘時間過去參觀,可是,入場費竟要 $50,比香港的展覽貴很多,加上不知道有多少機械人展出,我又沒有時間,所以最後都打消進場參觀的念頭。希望遲些可以找到有關的報導吧。

2007年9月28日 星期五

西安國際數字科技博覽會將上演機器人大戰

2007中國西安國際數字科技博覽會上,將有近80台機器人閃亮登場。

機器人係出名門
數博會上參賽的機器人大有來頭,“他們”都是出自西安的著名大學或國內機器人研發的領先企業。參賽的學校包括西安交通大學、西北工業大學、解放軍第二炮兵工程學院。北京漢庫、深圳德普施等知名機器人研發製造企業。參賽選手超過150人。參加本次競賽的機器人共有80多臺套,“他們”當中有中型機器人、微型機器人、空中機器人、舞蹈機器人、倣生機器人、工程機器人以及工業機器人等種類。

參賽機器人明星雲集
參加中型機器人足球賽的西安交大機器人隊伍,曾經獲得全國ROBOCUP機器人世界盃競賽一等獎和2007亞太區機器人大賽冠軍。而與之對抗的解放軍第二炮兵工程學院中型機器人隊伍曾經連續兩次打進全國比賽八強。參賽的西安交大附小(南校區)也成績優異,他們在2006年“第八屆國際機器人奧林匹克競賽”中獲得金獎、銀獎和最佳設計獎。西北工業大學隊的機器人舞蹈和類人型機器人,曾獲得全國機器人比賽舞蹈組冠軍和雙足競走的冠軍。

機器人賽事標準高
數博會上的機器人競賽,將採用ROBOCUP(機器人世界盃)和FIRA(國際機器人足球聯合會)的競賽標準和規則,邀請了國內專業人士組成了一個20人的評審裁判組,力圖打造一個國際化的機器競賽環境。所有機器人將在數博會上設置的ROBOCUP中型機器人2對2對抗、FIRA微型機器人5對5對抗、機器人舞蹈、機器人倣生、工業應用等競賽項目中逐一亮相。展會期間將安排正式競賽場次30多場,並舉辦全程現場展演。

(來源:西安晚報)

2007年9月20日 星期四

VOCALOID2


今日在網上找到一件新的產品,吸引了我的注意。那就是由 Yamaha 技術發展出來的 VOCALOID2,是一套人造聲音軟件。用它合成出來的聲音,雖然還有一點機械味道,但已經不錯!希望未來的機械人也能用上這套技術就好了!

I'm back


自從搬家以後,都沒有時間在機械人方面花功夫,我也很少到自己的網頁瀏覽;但經過韓國之旅的充電後,感覺自己要再次努力去研究,不竟現在我還沒有完成一整架機體呢!
今天,我打開 ClustrMaps 一看,感到十分高興,原來瀏覽我的機體記事簿的網友,連美國、歐洲、日本都有...。這給我很大的動力呢!我要努力努力!がんばれ!希望遲些連韓國的網友都有!

2007年8月27日 星期一

蜂鳴片的用法


向同事請教過後,得到相關的網頁資料:
http://alumni.media.mit.edu/~gan/Gan/Education/MIT/MediaLab/Theses/MS/c5maracas/c5maracas.html#Heading3

我的同事教我,如果想要蜂鳴片輸出大一點的電壓,可以在蜂鳴片上加重;對於機體來講,相信要加重不是一個問題。

另外,用蜂鳴片來量度加速度的原理是基於蜂鳴片當中的 Crystal 受拉或受壓而輸出一定的電壓;我在想,如果把它放到機體的腳掌,有可能會量度出雙腳所受的壓力,從而可以控制動作。不過,未知道是否可行...。

2007年8月23日 星期四

多軸加速度 Sensor...

最近跟電子工程部的同事閒聊時,發現了一個驚喜的用法!原來平時不顯眼的「蜂鳴片」居然可以拿來作為加速度 Sensor!這個發現當然是我的同事告訴我,而他也把「蜂鳴片」應用到新玩具的測試品中,效果竟然跟之前使用三軸加速度 Sensor 的效果相約!我在想...「蜂鳴片」本身價格便宜,而且十分之輕,是很適合用在機體上!這樣,我便可以在機體上添加多個「蜂鳴片」,來達成多軸加速度 Sensor 功能!

2007年8月15日 星期三

NDS 作為機體的腦部?

最近沒有時間開發機體,因為搬了屋的關係,回到家已經九時多,再跟小海澄玩一會就已經十時,還未計算陪老婆的時間,只有星期六及日有一點時間...。雖然如此,但我也有利用中午在公司吃飯的時間做一些 R&D。而今次的題目,就是 NDS Homebrew。本來,NDS 跟機體開發沒有啥關係,但跟 PSP 一樣有了 Homebrew 之後,就有一點不同了。由於 NDS 內置了 WiFi 功能,要是把 NDS 作為大腦,再利用 MCU+WiFi 便能接收由 NDS 發出的指令。NDS 內建 ARM7 及 ARM9 兩顆處理器,相信會比我手上的 ATmega-128, CQ7144A, NEC 750 會快一點吧。而我也認為,未來在開發機體的發展上,應該把處理器分離出機體而獨立出來,一來可以減輕電力方面的負荷,二來可以用上更高效能的處理器,以達致更多的功能。

講開 MCU,今天在網上看 Wii Mod Chips 的資料時,發現最新連 Mod Chips 都興起 DIY!我順道下載了 OpenWii 的代碼,簡單看了一下,原來是利用 RS-232 來改機,真驚人技術原來這麼簡單!雖說簡單,但細看之下,要找出何時發出那些數據,又何時接收那些數據,這個就真的考功夫了...。

2007年8月7日 星期二

新開發環境(二)

已經有好一段時間沒有研究機體了。這是由於我太多物品了,到現在也未能好好的分類,還有一部份等待處理!加上現在由媽媽家回家的時間長了,導致回到家後已沒有太多時間,以及剛剛重新安裝電腦,很多軟件都沒有了...。前幾天,我爸來替我安裝兩個層架,才得以把一部份的物件處理好,希望快些能處理完餘下的雜物,回到機體研究的領域!也推動一下近乎停頓的機體開發圈子!

2007年8月2日 星期四

忙完之後...


七月份真是一個很忙的月份。繼搬屋之後,便是準備電玩展的工作,接踵而來的當然是到會場幫忙。受到大會的得益,今年電玩展的開放時間長了,到晚上的十一時三十分才完場,回到家已經是十二時多,根本沒有時間處理還沒執拾好的東西,更何況機體開發...。

幸好,我在會場內見到 WowWee 攤位,有最新的機械人玩具,當中最吸引我的就是遙控蜻蜓及機械熊貓。還有另外兩款:蛇及四腳怪物都很吸引。除此之外,還有攤位中的 Promotion Girl!

講起 Promotion Girl,我在會場幫忙了三天,當中有兩天都見到對面「戲谷」攤位的 Game Girl。她們不但青春,而且還很有吸引力!她們每次出場,都有一大班男生蜂擁而上拍照,一直拍到她們離開為止!我想上前拍也很困難...。不過,在最後一天,我很有意向地得到其中一個 Game Girl 的手提電話,希望在十二月的「亞洲遊戲展」找她來為我們的產品宣傳一下!

2007年7月17日 星期二

新開發環境



忙了幾個星期,終於都遷入了新居!真是花費不少金錢呢...。這個就是我新的開發地方,雖然地方淺窄,但尚算可以吧!




附近有一個書架,最下的一層放滿了我的機械人參考書,是機械人閣來的。

2007年7月3日 星期二

郵包到着

等了很久,這件昂貴的郵包終於都到了!Robocon 比它早一步也到着了!

我急不及待地拿出 Robo-one 11th DVD 來看。雖說是 DVD,但在我的 32" LCD TV 下,質素就真是一般。看見很多不同的機體在戰鬥,真的很高興,相信能在片段中學到不少招式!在一邊看片段之餘,我的心裡有一大團火湧出來!很想在短期內,能在香港見到同樣的比賽舉辦!

2007年7月1日 星期日

PlayStation 手掣研究(八)



早前忙於安排新居的裝修及傢俬送貨,沒有甚麼時間研究機體;藉著回歸十周年假期,重拾久違了兩個星期的 PlayStation 手掣研究工作。果然放低一下是有用的,一上手便發現了原先看不到的問題!就是訊號的電壓!之前我把焦點集中在訊號的波形及格式,卻忽略了電壓;從圖中可見,CLK 訊號是跌低了!由於我是直接從輸出卻量度訊號的,所以不存在降到 3.3V 的原因。相信處理了這個問題之後,好快便能跟 PlayStation 手掣溝通!

不久,我又要忙於執拾行裝,準備在 13 日搬家了...。

2007年6月27日 星期三

不再惠顧機械人王國!

哎~一時大意,再一次衰在機械人王國手上 (T_T)...。事緣大前天心血來潮,想訂購 Robot Life No.3-6 期雜誌,於是在網上搜尋購入的地方;最終都只找到機械人王國。但由於王國的網上商店沒有日本以外的地區選擇,所以我便發電郵查詢郵寄到本港的事宜。王國在第三天便給了我一個回覆,能把我要的東西寄到香港。於是我便立即填妥資料購買 Robot Life No. 3-6 以及 Robo-one 11th DVD。今天,我在網上檢查郵件時,發現總數是 11,188 yen。本來都沒有發現問題,但再細看後,才發現運費是 6,000 yen!天呀!我買的東西只是 5,188 yen!運費比我的東西還要貴!而且又沒有跟我確認使用哪種郵寄方式!對上一次發生同樣的情況,我還以為是樂天收得貴,現在才發現原來是王國本身收得貴!所以,我決定不會再向王國訂東西回香港!哼!今次真是過於心急,才令自己白白損失了 $400! OTL

2007年6月24日 星期日

二足步行巴斯光年

今日帶了小海澄去 Toysrus 時,很驚喜地發現了一件新的玩具!它就是「二足步行巴斯光年」,而且是遙控的!它的價錢為 HK$348。我感到驚喜一來是因為本身我很喜歡巴斯光年,二來是我很喜歡 Pixar 的作品,三來是我很喜歡二足步行機械人,四來就是巴斯光年上身大下身小都能平穩步行,而且足部是會動的,所以使我留意到它的存在。當時很想買一台回來,但如果只當玩具的話,價錢就貴了點;而玩具本身對我開發機體又沒有甚麼幫助,最後都沒有買...。

2007年6月19日 星期二

PlayStation 手掣研究(七)




之前在研究 PlayStation 手掣的事情上,我找不到硬體及軟體中的錯誤;於是乎,我把焦點放在「確認第一個訊號是正確」的題目上。PlayStation 手掣的通訊方式是 Async. 模式,亦即是說通訊的一方為 Master,而另一方則為 Slave。在這裡,Master 是 ATmega-128;Slave 則是 PlayStation 手掣。

有了這個概念後,我便量度 SEL 及 CLK 這兩隻最先由 ATmega-128 發出的訊號,竟發現訊號本身已經發生問題!正常來說,SEL 是最早被拉低,也是最遲被拉回的訊號;它所佔用的時間理應是包含著 CLK 的,但事實卻沒有發生。翻查過 ATmega-128 的線路圖之後,發現我所用的 PORTE 原來已經在主板上作為 RS-232 通訊而被使用了。這樣,我唯有改用完成荒廢的 PORTB 來使用,可惜情況仍然依舊。經過向 Dr.Victor 請教之後,我把源碼發了給他,幫忙看一下代碼有沒有問題,發現了我現時控制端口的寫法有點問題。他把經驗告訴我後,我把程式修改了,情況便有好轉。現在的 SEL 真的是包裹著 CLK 了。下一步便是繼續循這個方向了解各訊號的情況。

2007年6月18日 星期一

Amigo 03 踏出第一步



由於 PlayStation 手掣研究方面一直都沒有進展,於是乎我便拿出 AmigoCOM 來替 Amigo 03 編排步行動作。由於現在使用了 232 步,使得運行速度慢了起來。這是因為之前動作做得太快,所以在每步之間加入了延遲的代碼;假如把它的數值改小,甚至移除,動作便會立即快起來。

2007年6月17日 星期日

全港大專生機械人大賽 2007(二)

今日帶了老婆及小海澄去了數碼港參觀「全港大專生機械人大賽 2007」,也為網友 Rex 打氣。現場氣氛很好,而且觀眾也很多;我四圍走訪了各家大學的攤位,拍攝了她們的機械人。大家的設計也各有心思,但其中一間大學的設計十分好,她們使用由內擴張的方式去提起物件,十分有創意,而且機械人也十分靈活。

而到阿 Rex 比賽時,不知道是不是緊張,導致他們給裁判判他們偷步,幸好沒有受罰。不過,他們的自動機械人就在比賽中失靈,唯有靠 Rex 控制手動機械人得分!最後,他們以 4:0 勝出。

在觀看的途中,有兩位年青人跟我搭訕,他們也是機械人的愛好者。我估他們應該是從國內來到現場參考的,事關他們除了用廣東話之外,還使用國語溝通。

2007年6月16日 星期六

PlayStation 手掣研究(六)


聽取過 Keith 的意見之後,我做了一個簡單的測試,結果似乎有點眉目。我分別把示波器接線接上 ACK 訊號線及 DAT 訊號線。這兩個訊號都是由 PlayStation 手掣發出來的。之後,我分別測試了三個情況:

1) 不接 +3.3V 電源,而 ATmega-128 跟 PlayStation 手掣接上同一個 GND
2) 不接 +3.3V 電源,而 PlayStation 手掣完全不接 GND
3) 接上獨立的 +3.3V 電源,而 PlayStation 手掣接上 3.3V 電源的 GND

結果如圖所示,情況二及三都能接收到訊號,而情況三的效果較佳。不過,似乎兩者的訊號,其電力都十分低,不足以讓 ATmega-128 識別出來...。今次連 Victor 也弄錯了,難怪我搞了這麼久也搞不好。對於我這個電子門外漢,看來這是一個頗為困難的題目,要成功的話,還有很長的路要走。

ATmega-128 的 16-Channels PWM 輸出(八)

清晨六點,我被小海澄吵醒了;在服侍她過後,我便繼續嘗試把 PlayStation 手掣的問題改正,可惜仍是徒勞無功...。於是,我唯有處理第二個錯誤:PWM 輸出。今次比較順利,不消十五分鐘便把之前的問題改好了。導致問題出現的地方,不單只是 Char(現已改為 long),還有就是邏輯的問題!現凡在 RS-232 讀取資料後,都會停止對 PWM 的運算,然後等一會,當 RS-232 再沒有數據傳送到 ATmega-128,那才開始新一輪的 PWM 運算。這樣,問題就解決了。

2007年6月15日 星期五

PlayStation 手掣研究(五)



哎呀...搞了幾天仍然沒有進展!不知為何,我已多次確認線路無誤,也多次確認代碼沒錯,程式仍然無法正確讀取數據!連線路中那個 +3.3V 接口是否真的需要接上 +3.3V 也都試過,所有疑點都沒有問題;也試過用充足的 +5V 驅動都沒有線索,今次真的很迷失!我唯有用示波器檢查各條線的訊號,得出來的竟然只有 SEL 及 CLK 有訊號!偏偏只有這兩條由 ATmega-128 產生訊號的線才有訊號,其他的線甚麼也沒有,真奇怪...。

2007年6月13日 星期三

全港大專生機械人大賽 2007


今個星期日,在數碼港將會舉辦「全港大專生機械人大賽 2007」。今次更是我們的網友 REX 參賽的日子;我不知道當日能否出席,所以在這裡先祝賀 REX 及其小隊「馬到功成!成功奪寶」!

2007年6月12日 星期二

PlayStation 手掣研究(四)


放工去了鴨寮街買了價值 HK$10 的 500 支 3.3K 電阻一包。回家後便立即著手轉換板的焊接工程。完成後,我首先試試把 3V 電源,透過轉換板供電給手掣,結果成功開動。但當我嘗試供給 5V 電力時,手掣就沒有開著。之後,我把轉換板插上 ATmega-128 的新接口,並打開 Terminal 來測試;發現手掣能開著,但 ATmega-128 就無法正確地跟手掣進行溝通!這有待找出原因...,但現在來看,不知 Debug 從可入手...。>_<

另外,今日也順道逛了黃金商場一趟,了解一下無線 PlayStation 手掣的價錢。由雜牌的 HK$140 到 LogiTech 的 HK$268 都有。本來想先買下來,但想清楚都是成功製作出轉換板才買方為上策,嘻嘻~

2007年6月11日 星期一

ATmega-128 的 16-Channels PWM 輸出(七)


現在 ATmega-128 的 PWM 輸出模組已經改好,步數由 180 改為 255 步。但由於 232 以外的數值,其 PWM 長度已經超越 2.5ms,所以不計算在內。實際上只有 232 步,已經很夠用。得出這個數字,是由於懶的原故,以及沒有示波器去量度準確的數值。不過,還有一個問題花了我三天也解決不了!當數值跳得太過時(例如由 0 到 200 ),由於本身使用 char 的關係,導致 PWM 輸出到某個位置時,會反彈到先前的位置,增長一部份後再直接跳到最終位置!基於以上特性,很容易便意識到是跨越 128 時的問題。可是,我把數值先放到 16-bits int 或 32-bits long 都沒有改善...。

至於 PlayStation 手掣方面,程式部份已經編寫完成,現在只欠 3.3K 電阻三顆!明天放工後會去買回來,到時便可以著手製作硬件部份!希望一切順利!

2007年6月10日 星期日

PlayStation 手掣研究(三)


由於睡得不好,所以一早便起床。除了可以照顧慣了早起的小海澄,也能讓太太睡多一會,而且也可以著手 PlayStation 手掣的研究。按照參考文件所示,我遂一把各個針腳標記好,方便日後不會搞錯。之後,我作了一個簡單的測試,就是把 3.3v 電力供給手掣,看看針腳是不是正確。我找來了 DualShock 2 手掣進行測試,是因為它有一顆 LED,能讓我識別出是否真的有電力供給手掣。由於測試非常簡單,所以一試便成功了。

以下是 PS 手掣中,各針腳的功能:
(1) Data
(2) CMD
(3) +7V
(4) GND
(5) +3V
(6) SEL
(7) CLK
(8) 沒有接駁
(9) ACK

(以手掣的插頭面向自己,亦即是插頭內的針也面向自己,插頭上方下圓,從左至右看)

2007年6月9日 星期六

昂貴的零件


放工後,我去了鴨寮街買製作 PlayStation 手掣用的電子零件,當中只有一包五芯的插座及兩顆 74LS06 的 IC,價值 HK$27,真是超貴,原來一顆 74LS06 要 $6!簡直搶錢!不過,沒有辦法,我要趕著去新屋拆傢俬...。回家後,我發現兩年前買下了一顆 74HC08 及一顆 74HC32,不知道這兩顆 IC 是不是跟 74LS06 有相同的功效呢?!今天很晚才回家,沒有時間製作 PlayStation 手掣的電子線路,希望明天有時間吧!但明天要出去跟我那個目中無人的外父飲茶,又要花掉很多時間... OTL

2007年6月8日 星期五

PlayStation 記憶卡研究

最近研究開 PlayStation 手掣的訊號格式,也順便研究一下記憶卡方面的格式,原來讀取資料時是以 Frame 為單位,一個 Frame 就等如 128 個字符。要是把機體的動作資料儲存在記憶體時,效用可能不錯!而且廢物利用也不錯~

2007年6月7日 星期四

ATmega-128 的 16-Channels PWM 輸出(六)

昨晚跟 Dr.Victor 通過電話,他傳授了我畢生的 Servo Controller 絕學,使我受益匪淺。今天,本來我沒有打算編寫機體程式,但我終於都忍不住了心癮,把 Amigo 03 的 PWM 輸出程序換了終極的高速結構!根據這個結構,我只是輕輕的修改,便可以得到 180 步的效果,甚至更多!但我認為 180 步已經夠用。最多我只會用上 360 步,再多也是沒有意思。代碼編譯好了,沒有任何錯誤或警告,於是便在 ATmega-128 上跑。可是,試了幾次,都無法輸出到正確的訊號。翻看了代碼幾遍,結果仍是毫無頭緒...,可能是我今天的運程如此,所以還是留待明天才解決。

2007年6月6日 星期三

PlayStation 手掣研究(二)

在網上分別看過一個日本代碼以及一個外國代碼後,發現要讀取 PlayStation 手掣的訊號並不困難!其中以外國的那個代碼更是 ATmega 系列的,大部份的代碼都可以直接拿來使用。但相比起日本那個 CQ7144A 版本,則日本方面的代碼處理嚴謹得多!原本今日會從 Victor 手上拿到 74LS06,但最終都取消了,唯有留待星期六放工後到鴨寮街購買,才做硬件,也順道到黃金商場購買多一條 PS2USB 線。現階段就找時間先做軟件吧!

2007年6月5日 星期二

共同目標

我發覺現時香港的機體開發者造出來的機體,都有各自的需要及功能,但似乎沒有一個共同目標,就算他日有多一些的機體,把她們放在一起也好像不知可以做甚麼。例如像 Robo-one 般的格鬥比賽就辦不來,因為有些機體(Amigo 03)是沒有手的,又何來格鬥;而有手的,又好像沒有準備格鬥的條件。假若,我們都有一個共同目標(如:筋肉雷台),那麼大家所開發出來的機體便會向著有關功能邁進,到時大家會有更多的共通技術的交流,也可以吸引更多機械人發燒友的參與。

2007年6月4日 星期一

PlayStation 手掣研究(一)

今天沒有心情工作,所以想了一下機體方面的事情。我在想:「現時已經可以利用 AmigoCOM 來做出一些動作,下一步就應該把動作資料存入 ATmega-128 之內,可是存了後又如何執行?除了可以用 AmigoCOM 來達成之外,也可以是開機便自動執行。但是我不想這樣做,我希望可以人手控制,反正遲早也要做這個部份。那麼,下一步就應該是研究『操控』方面的事情。」。較早前,我已經購入了關於 PlayStation 手掣的零件,方便日後著手「操控」時可以拿來用。我想也是時候了!



參考過「作業日誌」網頁,如利用 5V 的 MCU 接駁 PlayStation 手掣,便需要在其中三條線中加入一顆叫 74LS06 的 IC,我只知道它是 Open Connector 來,不清楚它的作用,應該是加強訊號之用,但線路還接有一個 3.3V 上拉線路,所以搞不清它的作用。另外,我也不知道如何達成 5V 轉 3.3V 的線路,這個需要問一問 Dr.Victor。



我相信線路不是困難的,最困難的應該是訊號的溝通處理!參考過藤田先生對於 PlayStation 及 PlayStation 2 手掣的研究文件後,我真的一頭霧水,內容十分充實但深奧,對於沒有電子知識的我是很難理解...。相信要製作出 PlayStation 跟 ATmega-128 溝通的軟硬體,想必要花很多時間在此。



以下是已知的 PlayStation 手掣的特性:
.手掣的指令碼為 0x01,記憶卡為 0x81
.數據的傳輸順序為 Bit 0 -> Bit 7,即是說 0x4A 就等如 01010010
.100us 以內沒有收到 ACK- 訊號,意味著手掣沒有連接
.時脈間距為 250KHz,亦即是 4us
.若使用一出四分插,時脈間距可以增至 1 MHz
.最後一個 Byte 的通訊,不偵測 ACK- 也沒有問題
.ACK- 訊號長度最好是 2us 以上
.SEL- 跟下一個 SEL- 訊號的間距大約是 16ms
.記憶卡的讀寫工作會在手掣訊號的空檔期間執行

2007年6月3日 星期日

程式中出現的「蟲」

今日心血來潮,把 iRobot 關於 PWM 控制的方法套用到我的 Amigo 03。正當我很快地改好程式並執行之際,也順便打開了示波器工具看 PWM 的輸出。我滿心歡喜地看成果時,竟發現了一個錯誤!當 PWM 數值大於 128 時便沒有訊號產生!原本這個問題很容易解決,是「有負數」及「無負數」的問題;可是,這個考慮已經在編寫程式時已經加入,為何仍然會發生?!難怪之前在測試時,有些角度是機體做不出來!翻看代碼以後,只有一個地方能產生錯誤!就是:

(pServoData[7] >= iLoop)

但問題是「如何改善?」,我真的不知道...;可能要用上匯編語言吧,這個不成問題!但那裡可以找到各個 ATmega-128 的指令及說明呢?!

~~~~~~~~~~~~

我憑自己的努力,找出了一些 ATmega-128 的機碼,也找出了以下一代碼的機碼:

iPortData = ((iPortData< <> iLoop));

89 81 99 27 88 0F 99 1F 8C 8B 8A 81 9B 81 FC 01 [37] 96 90 81 1B 8A 8C 81 89 17 10 F4 81 E0 8B 8B 8C 89 9B 89 89 2B 89 83

這段機碼實我令我驚訝!驚訝的是為何要用這麼長才做到少少的工作!難怪解像度這麼低!

追查了一會,發現問題並不是由「有負數」及「無負數」所造成,而是不知為何由 rs0_getc() 讀取的數值會產生錯誤:把 128 讀成 0x3F、把 129 讀成 0x00、把 130 讀成 0x00...!基於讀取回來的數值已經錯誤,理所當然地 PWM 的輸出會不正確。

~~~~~~~~~~~~

我再一次追查,發現 rs0_getc() 原來不是錯誤的來源!我利用 AmigoCOM 來作為除錯的工具,發現當要發出的數值是大於 128 時,ATmega-128 便會收到錯誤的數值,於是乎我便向 RS232 的溝通部份埋手,最後發現 ATmega-128 內的代碼是沒有問題,反而是 AmigoCOM 才是真正的兇手!由於我是使用 Chr(iValue) 的,這個程序會經過 Windows 內部的字符轉換部份,使得數值出錯。解決的辦法是利用 Array 以及另一個 Write 程序來處理(我是使用 SerialPort 類來處理 RS232 的部份)。

以下是新的改動所造出來的效果:
數值 30 = ~0.5ms
數值 150 = ~2.5ms
範圍 = 150 - 30 = 120
解像度 = 180/120 = 1.5 度
同時支持的馬達數量 = 8 隻
現時支持的馬達數量 = 16 隻
最大支持的馬達數量 = 32 隻

2007年6月1日 星期五

機體新聞



最近發現本地一本電腦雜誌(從 77 期)開始也報導機械人的消息,看來香港人也越來越對機械人有興趣了!

2007年5月30日 星期三

AMIGO 機體開發心得

以下是本人的「AMIGO 機體開發心得」,是昨晚在網友聚會中發表的: