2010年10月18日 星期一

[Robot] 六足機器人

  多足機器人是一種仿生機器人,模仿昆蟲、蜘蛛等生物的機器人,相較於雙足的人型機器人來說,多足機器人較容易克服複雜地形、步態穩定簡單,不須特別考慮平衡問題。

使用 18 顆伺服馬達 SG90,透過笙泉 MAGAWIN 8051 來控制,但由於全部都是壓克力刀手工切割、打磨壓克力所製作而成,準確度上出現不少誤差,以及結構設計不良,導致無法正常運作...

當時在軟體上遇到最大的問題是如何用 18 個 I/O 獨立輸出 18 個 PWM 給 18 個伺服馬達做控制?經過幾個禮拜的思考,想到一個我當時都覺得佩服我自己的方法,不過之後碰到作業系統基本原理才發現早就已經被實現了...那就是時間切片的概念,

大致說一下我實現的方法,將計時中斷設定成 dt 進一次中斷,每次進入中斷 T += dt,之後就只需要判斷 T 的時間是否達到需要拉高或拉低的時間即可,很簡單就可以實現多通道的 PWM 同時輸出的方法了(幾乎同時),dt 越小可以讓 PWM 越接近同時輸出,但 dt 越小也會讓進入中斷的次數變更多,讓其他程式效率變低。


主要出現的問題
.電源   18 顆伺服馬達同時運作容易造成電流需求增加,若供應不足電源不穩。
.結構精度 手工製作,工具不多,誤差大。
.結構力臂 腳太長,導致伺服馬達負載大,站不太起來。









隔了幾個禮拜後,繼之前的設計,重新設計和製做了一個新結構,減少了力臂的問題,可以站起來,但製作精度還是無法解決,在校正伺服馬達角度時實在很麻煩。






最後乾脆直接買一個新的結構,也打算全部換成金屬齒輪的伺服馬達,不過一直沒有買足伺服馬達,所以剩下一個機構和幾顆伺服馬達一起收了起來 ... 等哪天有閒錢再來玩玩吧。


沒有留言:

張貼留言