我的本科 + 碩士階段學習的都是自動化專業。相比其他學科,自動化是離機器人最近的一個專業(除少部份高校專設的機器人專業外)。回憶了一下,按照一般本科自動化專業課程的設計,機器人用到了以下基礎知識(大一、大二階段,括弧中為之後的套用領域):
高等數學(機器人動力學)
線性代數(座標變換;狀態空間控制)
機率論與數理統計(濾波器;位置預測;決策)
復變函式(頻域變換對應訊號處理;z變換對應離散時間系統)
數電、模電技術(機器人的硬體設計)
微控制器原理與套用(機器人控制器)
電腦原理(同上)
電腦體系架構(硬體設計)
作業系統(RTOS/Linux)
C/C++語言編程(機器人編程)
演算法導論(機器人演算法:如路徑規劃)
更專業和針對一點的課程(大三、大四階段):
自動控制原理(即 經典控制理論)
現代控制原理(State-space狀態空間控制、MPC模型預測控制等)
智慧控制(專家控制 + 模糊控制 + 魯棒控制 + 神經網路控制)
機械制圖
機械原理(齒輪、傳動、有限元受力分析)
機械加工(數控機床等)
MATLAB/Simulink 或 NI Labview(或 快速控制原型設計 RCP)
傳感器與訊號處理(有時還包括系統辨識)
運動控制系統
電氣控制與PLC(一些工業機器人依然是由PLC控制的)
電力與電子系統(主要針對電機控制和電源系統設計)
最後是研究生階段(雙控;重復課程不再列出):
人工智慧導論
模式辨識與控制
機器人導論
機械臂控制
移動機器人
非線性控制系統
最優控制 / 自適應控制
多傳感器融合
智慧制造
沒想到寫下來竟然有這麽多,但是一一核對發現確實需要這麽多的知識。當然也有很多研發中需要的知識是自動化專業沒有覆蓋的,比如機器視覺、深度學習、SLAM、路徑規劃、ROS作業系統等,這些根據需要自學就好。
如果是非自動化專業想要從事機器人工作(比如常見的電腦、機械專業轉行),我覺得沒有時間、也沒有必要去一一學習以上課程內容。不同階段有不同的任務,在校階段還是以掌握原理為主,很多知識並不實用;而工作階段又很難和學生時代一樣系統的,自底向上的去學習。畢竟實踐和理論一樣重要,可以在計畫開發的過程中有的放矢,慢慢學習掌握就好。