999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

欠自由度假肢對目標定位的實現

2018-10-09 02:51:24呂學義
機電工程技術 2018年9期

呂學義,高 波

(山東科技大學,山東青島 266590)

1 欠自由度假肢的定位方法

1.1 定位方法簡介

要想讓假肢抓取到目標,必須要先得到目標物體的位姿矩陣。本文作者提出的定位方法通過兩個姿態傳感器和一個激光測距儀獲取到了目標的位姿矩陣。其中,姿態傳感器用于檢測者頭部的姿態,激光測距儀用于確認目標。

1.2 硬件的安裝位置

兩個姿態傳感器分別安裝在假肢和使用者的頭部上;激光測距儀安置在左耳處。

圖1 傳感器安裝示意圖

1.3 定位方法的原理

如圖2所示,S坐標系是基礎坐標系;N坐標系是頸部中心坐標系;H坐標系是頭部中心坐標系;E坐標系是測距坐標系;記某坐標系i繞其x軸轉動的角度為αi,繞其y軸轉動的角度記為 βi,繞其z軸轉動的角度記為γi;記H坐標系相對于N坐標系的描述為。

圖2 目標物體位姿矩陣獲取示意圖

N坐標的原點在S坐標系中的描述是(xs,ys,zs)。使用者頭部上下轉動等價于N坐標系繞S坐標系的y軸轉動βs角度。因此,為:

H坐標系的原點在N坐標系中的描述是(0,0,zn),各軸的方位與N坐標系的各軸的方位一致。使用者頭部左右轉動相當于H坐標系繞N坐標系的Z軸旋轉γn。因此,為:

E坐標系的坐標原點在H坐標系里的描述是(0,yn,0),其x軸的方向與激光束的方位重合,其y軸的方向與H坐標的y軸方向重合,其z軸的方位與H坐標系的z軸有個固定的角度βh。因此,為:

激光測距儀測得的距離用d表示,記:M=[d,0,0,1]。

通過下式即可得到目標的位置P:

2 定位方法的誤差校正

前文所述定位方法的精度受以下兩個方面的因素影響。首先,定位系統采用的姿態傳感器有漂移累計誤差。另外,地磁場是弱磁場,測量過程中很容易被傳感器周圍的環境所干擾[1],使得姿態傳感器測量的姿態不準確;其次,一些坐標變換的參數都人工測量得到的,必然地存在誤差。為了降低定位方法的誤差,本文作者提出基于BP神經網絡的誤差校正。

2.1 BP神經網絡的原理

BP神經網絡是一種利用誤差反向傳播算法的前饋型網絡,是迄今為止應用最為廣泛的神經網絡。BP神經網絡目前廣泛用于函數逼近、模式識別、數據挖掘、系統辨識與自動控制等領域[2]。

圖3所示的3層網絡為例,具體說明BP網絡學習算法[3]:

圖3 三層BP神經網絡

設訓練樣本的輸入集合為P={P1,P2,P3,…,Pn},輸出集合為T={T1,T2,T3,…,Ty}。其中任意一個訓練樣本 的 輸 入 為Pm={Pm,1,Pm,2,Pm,3,…,Pm,r} ,輸 出 為tm={tm,1,tm,2,tm,3,…,tm,S2}, 對 應 的 網 絡 輸 出 為;輸入層共有r個神經元,隱含層共有S1個神經元,輸出層共有S2個神經元;隱含層第i個神經元對應的激活函數為,輸出層第k個神經元對應的激活函數為。

當網絡進行第t次訓練,輸入為第m個樣本時:

(1)各層的輸出

①隱含層第i個神經元的輸出為:

②輸出層第k個神經元的輸出為:

(2)定義誤差函數為

(3)利用梯度下降法求各層權值的變化

①輸出層第k個神經元和隱含層第i個神經元之間權值的變化量:

同理,輸出層第k個神經元和隱含層第i個神經元之間閥值的變化量為:

②隱含層權值變化

隱含層第j個神經元與輸入層第i個神經元之間權值的變化量為:

同理,隱含層第i個神經元和輸入層第j個神經元之間閥值的變化量為:

因此,隱含層、輸出層的權值和閥值的修正公式如下:

2.2 BP神經網絡的設計

在進行BP網絡設計時,一般應從網絡的層數、每層中的神經元個數、初始值以及學習方法等方面來進行考慮[4]。

(1)網絡的層數

理論上早已證明:具有偏差和至少一個S型隱含層加上一個線性輸出層的網絡,能夠逼近任何有理函數[4]。所以,據此確定網絡的層數為3層,僅有一個隱含層。

表1 S1=2,3,4,5,6,7,…,30時的網絡訓練結果

(2)每層的神經元數

由于輸入、輸出樣本為點的三維坐標,因此輸入層和輸出層的神經元數均為3個。接下來選取多少個隱層節點才能滿足系統精度的要求?這在理論上并沒有一個明確的規定[5]。在具體操作時,通常的做法是對不同神經元數進行訓練對比,確定一個最佳的節點數,然后加上一點余量即可。

采用traingd訓練函數和learngd學習函數。為了節省訓練時間,選擇誤差目標為net.trainParam.goal=0.14。通過改變網絡隱含層的節點數,對比不同節點數下網絡訓練所需的循環次數和訓練時間來確定一個合適的隱層節點數。各節點數的訓練結果如表1所示。 可以看出:當S1=11時較為合適,再加上2個神經元。所以,S1=13。

(3)初始權值的選取

初始權值的選取要合適。威得羅等[6]提出了一種選定初始權值的策略:選擇權值的量級為 S1。對應地,在MATLAB工具箱中,可采用函數nwtan來初始化隱含層權值。但此策略只能用于第一隱含層,除此之外的隱含層的初始值在(-1,1)之間取隨機數。

(4)學習速率的選取

學習速率決定每一次循環訓練中所產生的權值變化量。與初始權值的確定過程一樣,在確定一個神經網絡的學習速率中,要對比幾個不同的學習速率下,網絡訓練過程中誤差平方和∑e2的變化情況。據此,通過對比,將學習速率確定為0.035。但是通常情況下,采取自適應學習速率這種方法來確定學習速率。

(5)期望誤差的選取

在設計網絡的訓練過程中,期望誤差也應當通過對比訓練后確定一個合適的值[7];

期望誤差的選取與隱含層的節點數有關。前文將隱含層的節點數定為13,在MATLAB中,網絡誤差下降到0.001 73時,過好幾分鐘網絡誤差才會繼續下降。因此,將期望誤差選取為0.001 8,但是只針對traingd訓練函數和learngd學習函數。

(6)BP算法的改進方法

能加快訓練速度,避免陷入局部極小值的常用方法有:附加動量法、自適應學習速率法、誤差函數改進法等。在此,采用附加動量和自適應學習速率這兩種方法。

3 BP神經網絡的MATLAB實現

在MATLAB中對所設計的BP神經網絡進行實驗驗證,需要用到神經網絡工具箱,該工具箱是在MATLAB環境下開發出來的[8]。

3.1 所設計的BP神經網絡的MATLAB實現

clear all;

clc;

Fop=fopen(′P.txt′,′rb′);

[P,countp]=fscanf(Fop,′%f′,[3 inf]);Fot=fopen(′T.txt′,′rb′);

[T,countt]=fscanf(Fot,′%f′,[3 inf]);Fotc=fopen(′C.txt′,′rb′);[C,counttc]=fscanf(Fotc,′%f′,[3,inf]);

fclose(′all′);

P=P*1000;

T=T*1000;

C=C*1000;

[P,psp]=mapminmax(P);

[T,pst]=mapminmax(T);

C=mapminmax(′apply′,C,psp);

net=newff([-1 1;-1 1;-1 1;],[13,3],{′tansig′,′pure?lin′},′traingd′,′learngd′,′mse′);

net.layers{1}.initFcn=′initnw′;

net.inputWeights{1,1}.initFcn= ′nwtan′;

net.biases{1,1}.initFcn= ′nwtan′;

net.layers{2}.initFcn=′initwb′;

net.inputWeights{2,1}.initFcn= ′rands′;

net.biases{2,1}.initFcn= ′rands′;

net=init(net);

net.trainParam.goal=0.000150;

net.trainParam.epochs=200000;

net.trainParam.show=25;

net.trainParam.showWindow=1;

net.trainParam.lr=0.035;

net.trainParam.mc=0.95;

Cyz=sim(net,C);

Cyz=mapminmax(′reverse′,Cyz,pst);

Cyz=Cyz/1000;

Fotc1=fopen(′C1.txt′, ′rb′); [C1, countt2] =fs?canf(Fotc1,′%f′,[3,inf]);

C1=C1*1000;

x=0;y=0;z=0;

for i=1:19

x=x+(Cyz(1,i)-C1(1,i))^2;

y=y+(Cyz(2,i)-C1(2,i))^2;

z=z+(Cyz(3,i)-C1(3,i))^2;

end

plot(wc);

圖4 校正前定位系統的誤差

圖5 校正后定位系統的誤差

3.2 實驗結果

待網絡訓練完成后,將19個驗證點的坐標值輸入訓練后的網絡,得到網絡的輸出值。然后,將輸出值與實際值進行對比,得到誤差。由圖4、圖5可以看出:基于19個驗證點時,校正前系統的最小誤差為304.810 7 mm,最大誤差為422.320 6 mm;校正后系統的最小誤差為0.531 7 mm,最大誤差為2.2147 mm;因此所設計的BP神經網絡能有效地降低所設計的定位系統的誤差。

4 小結

設計的BP神經網絡,在MATLAB里驗證,驗證結果表明所設計的神經網絡能極大地提高定位方法的精度。

主站蜘蛛池模板: 色哟哟精品无码网站在线播放视频| 国产在线98福利播放视频免费| 欧类av怡春院| 热re99久久精品国99热| 亚洲一区色| 亚洲an第二区国产精品| 性喷潮久久久久久久久| 亚欧成人无码AV在线播放| 久久毛片网| 国产在线无码一区二区三区| 国产迷奸在线看| 免费看美女自慰的网站| 少妇精品在线| 色视频国产| 国模粉嫩小泬视频在线观看| 青草午夜精品视频在线观看| 91免费国产在线观看尤物| 呦女亚洲一区精品| 欧美a级完整在线观看| 欧美综合区自拍亚洲综合天堂| 日本欧美午夜| 亚洲美女视频一区| 91精选国产大片| 国产无遮挡猛进猛出免费软件| 一级毛片网| 免费va国产在线观看| 波多野结衣二区| 国产精品欧美日本韩免费一区二区三区不卡 | 97在线免费| 91色国产在线| 欧美第一页在线| 精品国产一二三区| 亚洲区欧美区| 亚洲免费人成影院| 色视频国产| 国产精品太粉嫩高中在线观看| 精品视频91| 天天躁狠狠躁| 91精品久久久久久无码人妻| 呦视频在线一区二区三区| 青青草原国产一区二区| 精品少妇人妻av无码久久 | 91青青草视频| 国产成+人+综合+亚洲欧美| 香蕉视频在线观看www| 激情国产精品一区| 91麻豆精品国产高清在线| 欧美97色| 91成人免费观看| 亚洲一级毛片在线观播放| 老色鬼久久亚洲AV综合| 欧美精品二区| 日本亚洲成高清一区二区三区| 伊人久久婷婷五月综合97色| 狠狠色丁香婷婷| 天天综合色天天综合网| 自拍偷拍欧美| 亚洲男人天堂久久| 亚洲最黄视频| 欧美人人干| 国产精品一线天| 国产黄色片在线看| 黄色网站在线观看无码| 亚洲天堂免费在线视频| 无码专区第一页| 91区国产福利在线观看午夜| 97青草最新免费精品视频| 亚洲中文在线看视频一区| 久久久久久久久久国产精品| 国产不卡一级毛片视频| 国产美女一级毛片| 99精品视频播放| 又粗又硬又大又爽免费视频播放| 免费看的一级毛片| 72种姿势欧美久久久大黄蕉| 精品少妇人妻一区二区| 国产亚洲精品91| 日本在线视频免费| 国产男女XX00免费观看| 久久久久人妻精品一区三寸蜜桃| 全午夜免费一级毛片| 中文精品久久久久国产网址|