freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于智能控制算法的二級倒立擺控制器設計-資料下載頁

2025-06-27 20:08本頁面
  

【正文】 得到一個BP神經(jīng)網(wǎng)絡控制器,Matlab仿真驗證其可行性。 控制規(guī)則庫如前所述,倒立擺的不穩(wěn)定性,若想通過開環(huán)試驗獲取數(shù)據(jù),抽取控制規(guī)則很困難。所以,從閉環(huán)試驗中抽取一些有效的數(shù)據(jù)作為規(guī)則庫,比如簡單的比例、人工智能模糊控制規(guī)則等。固高倒立擺公司所給的軟件分為MATLAB 和Windows,DOS 版本主要為實驗而用,直接運用了控制卡中的一些模塊,簡化了編程,而且其中有關于起擺的控制程序;而DOS版本采用了Borlandc++,能夠實現(xiàn)起擺和系統(tǒng)的平衡控制,且程序對外開放;在Window下采用C++編的程序,對系統(tǒng)具有較好的控制效果,運用了如PID、LQR等許多控制方法。為了獲得較有效的樣本,分析了各個平臺下的軟件:在所提供的試驗平臺下,經(jīng)實驗我們可以得到許多的樣本數(shù)據(jù)。這里包括原始數(shù)據(jù)的收集、數(shù)據(jù)分析、變量選擇和數(shù)據(jù)的預處理,經(jīng)過這些步驟后,才能對神經(jīng)網(wǎng)絡進行有效的學習與訓練。所以一般來說,取得的數(shù)據(jù)越多,網(wǎng)絡訓練越精確,學習和訓練的結果就越能準確反映輸入和輸出之間的關系。但是選太多的數(shù)據(jù)將會增加收集、分析數(shù)據(jù)以及網(wǎng)絡訓練所付出的代價。當然選太少的數(shù)據(jù)將可能得不到正確的結果。事實上數(shù)據(jù)的多少取決于許多的因素,如網(wǎng)絡的大小、網(wǎng)絡測試的需要以及輸入輸出的分布等。事實上,只要充分反映允許控制誤差范圍內的足夠多的規(guī)則就可以了。 網(wǎng)絡模型確定在進行BP網(wǎng)絡設計前, 一般從網(wǎng)絡層數(shù)、每層神經(jīng)元數(shù)、初始值、以及學習方法等方面來考慮。理論上已經(jīng)證明:具有偏差和至少一個S型隱含層加上一個線性輸出層的網(wǎng)絡,能夠逼近任何有理函數(shù)。如前面所述的影響神經(jīng)網(wǎng)絡BP的因素有網(wǎng)絡的層數(shù),網(wǎng)絡各層神經(jīng)元的個數(shù)等。影響神經(jīng)BP算法的因素還有學習速率、初始權值的選取、以及神經(jīng)網(wǎng)絡期望誤差的選取,可以選擇一個具有一個隱含層的二層網(wǎng)絡,它的輸入分別為系統(tǒng)的六個狀態(tài)變量:小車的位置,小車的速度,上下擺的角度和上下擺的角速度。隱含層有10個神經(jīng)元,輸出層為一個。隱含層采用“tansig”轉換函數(shù),輸出層采用線性轉換函數(shù)“purelin” 。 神經(jīng)網(wǎng)絡結構圖 對網(wǎng)絡進行訓練BP網(wǎng)絡具有很強的非線性映射能力。理論已經(jīng)證明:給定任意的 e 0 和任意 L2函數(shù)向量則必存在一個三層BP網(wǎng)絡可在任意 e平方誤差精度內逼近訓練后得到的BP神經(jīng)網(wǎng)絡可以記憶大量的規(guī)則,從而可以實現(xiàn)倒立擺的控制。 訓練用到的Matlab函數(shù)首先介紹一下訓練神經(jīng)網(wǎng)絡所需的重要Matlab函數(shù)(1).NEWFF函數(shù)NEWFF函數(shù)的作用是創(chuàng)建一個 feedforward backpropagation網(wǎng)絡。其調用格式主要有: net = newff net=newff(PR,[S1,S2…SN1],{TF1,TF2…TFN1},BTF,BLF,PF)描述如下 net = newff作用是用對話框的形式創(chuàng)建一個新的網(wǎng)絡模型。 NEWFF(PR,[S1 S2...SNl],{TF1 TF2...TFNl},BTF,BLF,PF)其中各個參數(shù)的定義如下: PR 為一個Rx2的矩陣,其中包含輸入的最大和最小值。 Si 第i層神經(jīng)元的個數(shù),一共有N1層。 TFi 第i層的轉換函數(shù), 默認為39。tansig39。.函數(shù)還可以為其它‘logsig’,‘purelin’。 BTF – BP網(wǎng)絡的訓練函數(shù),默認值為 39。trainlm39。.函數(shù)還可以取其他的值為‘traingd’,‘trainbfg’,‘trainbr’‘trainlm’最快。 BLF – BP網(wǎng)絡的權值和閾值學習函數(shù),默認值為39。learngdm39。.函數(shù)也可以為‘learngd’。 PF 性能函數(shù),默認值為39。mse39。.函數(shù)也可以為‘msereg’返回一個N層的feedforward BP 網(wǎng)絡。 舉例如下: 這是一個關于輸入向量P逼近目標輸出向量T的問題,所以我們將用一個神經(jīng)網(wǎng)絡解決這個問題: P = [0 1 2 3 4 5 6 7 8 9 10]。 T = [0 1 2 3 4 3 2 1 2 3 4]。下面的函數(shù)創(chuàng)建了一個兩層的feedforward 網(wǎng)絡,網(wǎng)絡的輸入?yún)^(qū)間為[0 10]。第一層有五個神經(jīng)元,其轉換函數(shù)為‘tansig’;第二層有一個神經(jīng)元,轉換函數(shù)為‘purelin’。采用‘trainlm’訓練這個網(wǎng)絡。調用函數(shù)如下: net = newff([0 10],[5 1],{39。tansig39。 39。purelin39。})。通過下面的程序,網(wǎng)絡可以被仿真并且可以把輸出以圖形的形式顯示: Y = sim(net,P)。 plot(P,T,P,Y,39。o39。)設置訓練步數(shù)為50,得到一個訓練好的網(wǎng)絡,輸入初始向量得到仿真結果并畫出圖形。 = 50。 net = train(net,P,T)。 Y = sim(net,P)。 plot(P,T,P,Y,39。o39。)(2).train 函數(shù) train函數(shù)的功能是訓練一個網(wǎng)絡。 調用格式主要有: [net,tr,Y,E,Pf,Af] = train(NET,P,T,Pi,Ai,VV,TV)函數(shù)描述如下: train函數(shù)是根據(jù)net的訓練函數(shù)和net的訓練參數(shù)訓練一個網(wǎng)絡net。 格式TRAIN(NET,P,T,Pi,Ai) 各參數(shù)的意義敘述如下: NET – 網(wǎng)絡。 P 網(wǎng)絡的輸入. T 網(wǎng)絡的期望輸出,默認值為 zeros. Pi 初始輸入延遲條件, 默認值為 zeros. Ai 初始時的層滯后條件, 默認值為 zeros. VV 有效向量的結構。默認值為[] TV 測試向量的結構, 默認為[].返回值為: NET 網(wǎng)絡。 TR 訓練的記錄(epoch and perf). Y 網(wǎng)絡的輸出. E 網(wǎng)絡的誤差. Pf 最終輸入滯后條件。Af 最終層滯后條件。 最大訓練次數(shù)訓練要求精度學習速率 顯示訓練迭代過程最大訓練時間舉例如下: p = [0 1 2 3 4 5 6 7 8]。 t = [0 ]。 plot(p,t,39。o39。)net = newff([0 8],[10 1],{39。tansig’,purelin39。},39。trainlm39。)這里newff 是用來創(chuàng)建一個兩層的反饋網(wǎng)絡。這個網(wǎng)絡有一個輸入,其值域為[0 8],隱含層為10個神經(jīng)元,轉換函數(shù)為‘tansig’;輸出為一個神經(jīng)元,函數(shù)為‘purelin’;訓練函數(shù)為‘trainlm’ y1 = sim(net,p) % 網(wǎng)絡被仿真 plot(p,t,39。o39。,p,y1,39。x39。) % 作圖 = 50。%設置訓練步數(shù)為50 = 。 % net = train(net,p,t)。 %訓練這個網(wǎng)絡 y2 = sim(net,p) % 仿真訓練后的網(wǎng)絡 plot(p,t,39。o39。,p,y1,39。x39。,p,y2,39。*39。) %作圖 樣本數(shù)據(jù)的選取為了成功地開發(fā)出神經(jīng)網(wǎng)絡,產(chǎn)生數(shù)據(jù)樣本集是第一步,也是十分重要和關鍵的一步。這里包括原始數(shù)據(jù)的收集、數(shù)據(jù)分析、變量選擇和數(shù)據(jù)的預處理,只有經(jīng)過這些步驟后,才能對神經(jīng)網(wǎng)絡進行有效的學習與訓練。在訓練網(wǎng)絡之前,首先要決定所選用的網(wǎng)絡類型。若主要用于模式分類尤其是現(xiàn)行可分情況,則可以選用較為簡單的感知器網(wǎng)絡;若主要用于函數(shù)估計,則可以用BP網(wǎng)絡。實際上需要根據(jù)問題的性質和任務要求來合適的選擇網(wǎng)絡類型。一般是從已有的網(wǎng)絡類型中選擇一種比較簡單的又能滿足要求的網(wǎng)絡,若新設計一個網(wǎng)絡類型來滿足問題的要求往往比較困難。在網(wǎng)絡的類型確定后,剩下的問題就是選擇網(wǎng)絡的結構和參數(shù)。以BP網(wǎng)絡為例,需選擇網(wǎng)絡的層數(shù)、每層的節(jié)點數(shù)、初始權值、域值、學習算法、數(shù)值修改頻度、節(jié)點變換函數(shù)及參數(shù)、學習速率及其動量因子等參數(shù)。這里有些項的選擇需要指導性的原則,但更多的是通過經(jīng)驗和試湊。對于具體問題若確定了輸入和輸出變量后,網(wǎng)絡輸入層和輸出層的個數(shù)也便確定了。對于隱層的層數(shù)可以首先考慮只選擇一個隱層。剩下的問題是如何選擇隱層的節(jié)點數(shù)。其選擇原則是:在能正確反映輸入與輸出關系的基礎上,盡量選取較少的隱層節(jié)點數(shù),而使網(wǎng)絡盡可能簡單。如前所述,倒立擺的不穩(wěn)定性,若想通過開環(huán)試驗獲取數(shù)據(jù),抽取控制規(guī)則很困難。所以,從閉環(huán)試驗中抽取一些有效的數(shù)據(jù)作為訓練樣本,比如簡單的比例、LQR控制規(guī)則等。這里包括原始數(shù)據(jù)的收集、數(shù)據(jù)分析、變量選擇和數(shù)據(jù)的預處理,經(jīng)過這些步驟后,才能對神經(jīng)網(wǎng)絡進行有效的學習與訓練。所以一般來說,取得的數(shù)據(jù)越多,網(wǎng)絡訓練越精確,學習和訓練的結果就越能準確反映輸入和輸出之間的關系。但是選太多的數(shù)據(jù)將會增加收集、分析數(shù)據(jù)以及網(wǎng)絡訓練所付出的代價。當然選太少的數(shù)據(jù)將可能得不到正確的結果。事實上數(shù)據(jù)的多少取決于許多的因素,如網(wǎng)絡的大小、網(wǎng)絡測試的需要以及輸入輸出的分布等。事實上,只要充分反映允許控制誤差范圍內的足夠多的數(shù)據(jù)就可以了。本課題選擇的樣本是對固高公司提供的LQR實時控制模塊在實時控制時一個周期內的數(shù)據(jù)進行采樣,采樣所得數(shù)據(jù)經(jīng)分析處理作為訓練樣本。一共是214組數(shù)據(jù)。 網(wǎng)絡訓練網(wǎng)絡的輸入樣本數(shù)據(jù)放在矩陣P1中,輸出樣本數(shù)據(jù)放在U中,在Matlab中輸入如下的命令開始訓練網(wǎng)絡:Q=[[1 1]。[1 1]。[1 1]。[1 1]。[1 1]。[1 1]]。net=newff(Q,[6 4 4 1],{39。tansig39。 39。tansig39。 39。tansig39。 39。purelin39。},39。trainlm39。)。 =3000。 = 。net = train(net,P139。,U39。)。訓練的過程如下圖所示:圖72 網(wǎng)絡訓練過程 從圖中可以看出,經(jīng)過321次訓練,達到了設定的精度106。訓練好網(wǎng)絡以后,輸入命令gensim(net,1)。,生成simulink仿真用的模塊。如下圖所示:圖73 訓練好的神經(jīng)網(wǎng)絡模塊 二級倒立擺神經(jīng)網(wǎng)絡控制仿真我們通過上述樣本數(shù)據(jù),已經(jīng)得到一個網(wǎng)絡,這個網(wǎng)絡是否能夠用于對倒立擺系統(tǒng)的控制,我們下面通過對控制對象的仿真進行驗證。仿真結構圖如下所示: 二級倒立擺神經(jīng)網(wǎng)絡控制仿真結構圖仿真時間設為5s,外部擾動設為[。 0。 0。 0。0。0]。仿真結果圖: 二級倒立擺神經(jīng)網(wǎng)絡控制仿真結果圖由仿真圖可以看出,訓練生成的神經(jīng)網(wǎng)絡模塊,比較穩(wěn)定可以應用到實際二級倒立擺控制當中。 二級倒立擺實物的神經(jīng)網(wǎng)絡控制 在simulink工具箱中搭建控制回路,將搭建好模塊連接封裝,然后將控制器放到倒立擺實際控制模塊當中,實際控制模型如下所示: 二級倒立擺實物的神經(jīng)網(wǎng)絡控制結構圖左邊部分為小車位置,擺桿1的角度和擺桿2的角度處理模塊;由上至下依次為小車位置、小車速度、擺桿 1 的角度、擺桿1的角速度、擺桿2的角度和擺桿2的角速度;“Neural Network”為神經(jīng)網(wǎng)絡控制器模塊;“Real Control”為實時控制模塊,輸入為控制量——小車的加速度,輸出為小車的位置,擺桿1的角度和擺桿2的角度。在確認系數(shù)正確后,點擊“ ”編譯程序。編譯成功后,點擊“ ”連接程序。點擊“ ”運行程序,在電機上伺服后,緩慢提起擺桿到平衡位置,在程序進入自動控制后松開手,得到如下的實驗結果:(a)小車的位置(b)上擺桿的角度(c) 下擺桿的角度可以看出,在不給定干擾的時候,倒立擺可以很好的保持穩(wěn)定的狀態(tài)。小車位置振動幅值為15mm,擺桿1的振動幅值約為 弧度,擺桿2的振動幅值約為 弧度。第八章 結論倒立擺系統(tǒng)作為典型的非線性、多變量、強禍合、自然不穩(wěn)定系統(tǒng),是研究控制理論的理想實驗對象,尤其是二級倒立擺系統(tǒng)的穩(wěn)定控制研究,難度大,具有挑戰(zhàn)性。隨著科學技術的迅速發(fā)展,對控制系統(tǒng)性能的要求不斷提高。相應的控制理論將不斷發(fā)展完善,控制方法也會越來越先進,當前智能控制己經(jīng)成為控制界研究的熱點。本文圍繞二級直線倒立擺系統(tǒng),采用模糊控制理論研究了倒立擺的控制問題。具體控制器的設計都是在MATLAB的SIMULINK環(huán)境下完成的,通過仿真不斷調整參數(shù)來優(yōu)化控制器。實物控制的成功進一步驗證了本文所設計的能量起擺控制器和模糊穩(wěn)定控制器的有效性。 1. 使用了牛頓力學和分析力學方法分別對一級倒立擺和二級倒立擺進行建模,并對得到的狀態(tài)方程進行了定性的分析,證明了倒立擺系統(tǒng)在不穩(wěn)定平衡點附近是可控和可觀的,而且二級倒立擺的可控度比一級倒立擺的更小,更難控制。2. 運用最優(yōu)控制理論設計了降維矩陣,有效的減少了模糊控制器的輸入變量維數(shù)。3. 利用融合函數(shù)設計了二級倒立擺的模糊控制器,通過在Matlab下的仿真后用于實物控制,效果良好。4. 設計了基于BP神經(jīng)網(wǎng)絡的二級倒立擺控制器,實際控制中具有較大的抗干擾
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1