你的問題實際上包括了兩方麵:設計、製作。
製作相對於設計來講,要容易一些,因為仿造一個機器人也可以說是製作。
所需要的知識大概如下(可參照工科專業大學課程規劃):
結構方麵(機械專業相關):機械原理(所需機構的基本運動學、力學原理),機械設計(知道各種零件的用途、基本配合關係),基本裝配方法(好多結構能設計出來,但是裝不起來),工程圖學(交給別人機加時,至少得會出二維圖),公差計算基礎(知道機加時哪些尺寸需要多高的精度),工程材料基礎(了解各種常見材料的特性,複合材料方麵不需要多深入,了解一些常用的複合材料就行),加工工藝基礎(知道各種零件能如何加工出來,主要側重冷加工方麵)。硬件電路方麵(電子專業相關):電路基本原理,模擬電路、數字電路基礎(會實現基本的控製電路:電源、邏輯電路等),檢測技術基礎(知道常見傳感器的原理、指標及使用方法)。軟件方麵(計算機專業相關):編程語言(C語言或一種匯編),操作係統基礎(有助於設計較為複雜的軟件架構,也有助於學習單片機、DSP等控製器),常用算法與數據結構(有助於設計出合理、高效、有創意的機器人控製算法),計算機網絡基礎(比如未來可以做多機器人通訊等),軟件工程(知道如何設計並維護軟件),數字圖像處理基礎(用到攝像頭等傳感器時需要這方麵知識)。控製方麵(自動控製專業相關):電機學(知道如何控製電機(馬達)轉起來),自動控製原理(讓電機按照你的期望速度和目標位置轉動起來,如經典的PID算法),一些信號處理知識(比如用於濾波)。數學方麵(工科專業相關) :計算方法(一些用於實際計算時的算法),線性代數(或高等代數、矩陣論)用於未來需要計算多關節機器人的運動學、動力學的必備工具。會計方麵(商科專業相關):成本分析、預算等概念,起碼需要知道做出這個機器人要花多少錢(一般機加要占大頭,畫電路板是其次,自己做的話,軟件開發的會計成本可以忽略)。具體到可能需要學習的技術方麵,可以從以下幾方麵涉獵:
結構方麵:學習一種三維建模工具(SolidWorks或Pro E、UG等),能出二維圖;能做一些有限元分析就更好了(會幫助你設計可靠的結構)。硬件電路方麵:會用一種電子設計工具(Protel、PowerPCB等),能畫原理圖,會畫PCB;一種電路仿真工具(EDA軟件:如Proteus),單片機(51、AVR、Freescale、ARM等)或CPLD/FPGA,你的驅動程序、控製算法要在上邊實現。軟件方麵:學會一種IDE(如Keil、ICC、Realview等),了解編輯、編譯、調試方法;學習一下uC/OS或其他RT OS的使用,如果要跑操作係統,可方便移植。經典控製如果要設計出自己的機器人來,恐怕需要在一定“製造”的基礎之上有自己的靠譜想法,可以從多個學科深入下去,僅舉幾個例子:
機構:學習更多機構原理,積累更多機械設計經驗;數字圖像處理:目標檢測、圖像識別,立體視覺等;控製理論:濾波算法、係統辨識、自適應控製、模糊控製等;仿生學:好多新穎的機器人都是建立在仿生學的基礎上的。此外,還可以關注國際機器人方麵相關的論文(如中文的《機器人學》等)或會議(如ICRA、IROS等) ,跟蹤著名高校的機器人方麵研究近況(如CMU、MIT等),相信一定會開闊眼界的。