各位同學大家好
在這一節裡面我們要介紹的是機器手臂類神經網路控制
我們經由類神經網路來識別
這個機器手臂的動態系統以後
接下來我們就可以訓練一個類神經網路
來進行機器手臂的控制
也就是說我們利用模式參考控制
與類神經網路結合的方式
我們會設計一個類神經網路系統
來控制我們的機器手臂
接著就讓我們來了解如何利用類神經網路
來控制一個機器手臂
這一節要介紹利用類神經網路來控制一個機器手臂
一個機器手臂的運動方程式
可由如下的微分方程所表示
其中ϕ對時間的二次微分會等於負10乘上sin of ϕ
減掉2乘上ϕ對時間的一次微分加上u
這裡的ϕ就是我們要控制的機器手臂的角度
而u則是由直流馬達所提供的力矩
控制的目標是要訓練一個類神經網路控制器
使得機器手臂能夠追蹤參考模型的輸出訊號
而參考模型可由下面的微分方程所表示
yr對時間的二次微分會等於負9乘上yr
減掉6乘上yr對時間的一次微分加上9r
這邊的yr就是參考模型的輸出訊號
而r則是輸入的參考訊號
首先在matlab的命令視窗中
輸入mrefrobotarm的指令
可開啟模型參考控制系統的simulink視窗
在類神經網路模型參考控制系統的simulink視窗中
Robot Arm就是機器手臂的運動方程式
接著以滑鼠雙擊類神經網路控制器的方塊開始進行設計
開啟模型參考控制的視窗後
首先設定網路結構的參數
隱藏層神經元的數目設定為13
接著定義延遲的參考輸入的數目為2
接著定義延遲的控制器輸出的數目為1
而延遲的受控體輸出的數目則定義為2
接著設定訓練資料的欄位
首先定義隨機參考步階輸入的最大值是0.7
接著定義隨機參考步階輸入的最小值是負0.7
而控制器訓練的樣本數設定為6000
接著定義隨機參考輸入的最大取樣時間是2秒
定義隨機參考輸入的最小取樣時間是0.1秒
而在右邊的欄位選取simulink受控體參考模式的名稱
這邊選取檔案的名稱是robotref
最後設定訓練參數的欄位
首先設定每個訓練片段中循環訓練的次數為10
接著設定訓練片段的總數為30
最後勾選使用目前的權重值當作初始條件來繼續訓練
最後以滑鼠點選系統識別的按鈕進行系統識別
開啟系統識別視窗後
首先設定受控體神經網路架構的參數
隱藏層神經元的數目設定為10
接著設定程式從simulink受控體模式
收集數據的時間間隔為0.05秒
接著設定進入受控體模式分接延遲線的大小為2
設定離開受控體模式分接延遲線的大小也為2
接著設定訓練資料的欄位
首先定義用於訓練驗證測試的數據點是為10000筆資料
接著設定隨機受控體的輸入最大的高度是15
而隨機受控體的輸入最小的高度是負15
接著勾選限制輸出資料的方塊
已設定在訓練中所使用的輸出數據的最大值
與最小值的範圍
接著定義在訓練中所使用的最大輸出數據是3.1
而訓練中所使用的最小輸出數據是負3.1
接著設定隨機受控體的輸入最大的時間間隔是2秒
而隨機受控體的輸入最小的時間間隔是0.1秒
接著選擇用來產生訓練數據的simulink受控體模式
這邊選取的檔案名稱是robotarm
也就是機器手臂的運動方程式
最後用滑鼠選取產生訓練資料的按鈕
用來產生訓練用的數據
因此產生為了進行系統識別所需的類神經網路訓練資料
分別是受控體的輸入資料以及輸出資料
以滑鼠點選左下角的接受資料按鈕
接著在訓練參數的欄位中
設定訓練的循環次數為300次並選取訓練函數
接著勾選使用現有的權重
以及使用驗證數據還有測試數據
並以滑鼠點選左下方的訓練網路按鈕
即可開始訓練類神經網路
系統識別的類神經網路訓練結果如右圖所示
在訓練資料中最大誤差不超過10的負4次方
在驗證資料中類神經網路的訓練誤差
最大也不超過10的負4次方
同樣的在測試資料中類神經網路
訓練誤差最大也不超過10的負4次方
完成受控體的系統識別後
即可開始訓練類神經網路控制器
在模型參考控制的視窗中
點選產生訓練資料的按鈕
即可產生類神經網路控制器的訓練資料
類神經網路模型參考控制的參考模型
輸入與輸出資料如右圖所示
上方為參考模型的輸入資料
下方為參考模型的輸出資料
以滑鼠點選左下方的接受資料按鈕
接著在模型參考控制視窗中的訓練參數欄位
設定控制器訓練的循環次數為10
並設定控制器訓練片段的總數為30
並以滑鼠勾選使用現有的權重
最後再以滑鼠點選訓練控制器的按鈕
即可開始進行類神經網路控制器的訓練
類神經網路控制器的訓練結果如右圖所示
上方是參考模型的輸入資料
下方藍色的部分是參考模型的輸出資料
而綠色的部分則是類神經網路控制器的輸出資料
很明顯的可以看出藍色與綠色幾乎是重疊
也就是訓練的誤差是非常小的
類神經網路控制器訓練完成後
即可開始進行機器手臂的類神經網路
模型參考控制的電腦模擬
可以滑鼠點選如圖所示的前進方塊按鈕開始電腦模擬
或者是以滑鼠點選simulation選單中的star指令
來開始進行電腦模擬
電腦模擬結果如右圖所示
紅色為參考模型的訊號
藍色為機器手臂的訊號
由圖中顯示類神經網路控制器的效果非常好
機器手臂能追蹤不同的參考命令訊號
以上就是機器手臂類神經網路控制的內容
接著我們將這一小節的內容摘要整理如下
首先我們學習到如何訓練一個類神經網路
讓它能夠進行控制系統裡面模式參考控制
而這裡面的訓練包含了權重的調整
以及學習速率的設計
接著我們學習到如何利用所建立的simulink檔案
來進行機器手臂控制系統的動態模擬
進而獲得系統的響應
最後我們討論了模式參考控制裡面
利用類神經網路它相關參數的一些影響
比方說神經元的數目以及權重函數的調整
還有學習速率的大小
這些都會影響到機器手臂控制系統的特性
因此我們針對這些參數進行了一些探討
以上就是這一小節的內容與摘要
