亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Speedgoat的dVRK機(jī)械臂控制系統(tǒng)開(kāi)發(fā)

        2022-09-16 07:25:56翟文正
        機(jī)床與液壓 2022年14期
        關(guān)鍵詞:宿主機(jī)實(shí)時(shí)控制控制算法

        翟文正

        (1.常州信息職業(yè)技術(shù)學(xué)院網(wǎng)絡(luò)空間安全學(xué)院,江蘇常州 213164;2.上海大學(xué)微電子研究與開(kāi)發(fā)中心,上海 200072)

        0 前言

        外科手術(shù)機(jī)器人有效結(jié)合了手術(shù)醫(yī)生的經(jīng)驗(yàn)和機(jī)器人定位精確、運(yùn)行穩(wěn)定和操作精度高的特性,可協(xié)助醫(yī)生完成精細(xì)的手術(shù)動(dòng)作,減少手術(shù)中因?yàn)槠诋a(chǎn)生的誤操作和手部振顫造成的損傷,從而提高手術(shù)質(zhì)量與安全性,縮短治療時(shí)間,降低醫(yī)療成本。著名的醫(yī)療機(jī)器人有DaVinci系統(tǒng)、Zeus系統(tǒng)、伊索機(jī)器人Aesop和黎元、妙手等。

        達(dá)芬奇外科手術(shù)機(jī)器人系統(tǒng)(Da Vinci)是最具代表性的商業(yè)化手術(shù)機(jī)器人,至今超過(guò)5 500臺(tái)被安裝使用?;谕饪剖中g(shù)達(dá)芬奇機(jī)器人的研究平臺(tái)dVRK(da Vinci Research Kit,達(dá)芬奇研究平臺(tái))是達(dá)芬奇第一代各部件的集成,是一個(gè)主從遙操作機(jī)器人平臺(tái),可通過(guò)開(kāi)源軟硬件對(duì)機(jī)器人各控制層級(jí)進(jìn)行讀/寫控制,極大地降低了外科手術(shù)機(jī)器人控制系統(tǒng)設(shè)計(jì)的學(xué)習(xí)難度。dVRK在全球30多個(gè)國(guó)家的70多所大學(xué)和研究機(jī)構(gòu)使用,現(xiàn)有研究大多聚焦于路徑規(guī)劃、機(jī)器視覺(jué)和多傳感器融合的創(chuàng)新應(yīng)用開(kāi)發(fā),很少有基于機(jī)器人控制器的算法驗(yàn)證和實(shí)時(shí)性控制研究。

        機(jī)器人控制系統(tǒng)開(kāi)發(fā)需要高頻硬實(shí)時(shí)和周期性計(jì)算,以實(shí)現(xiàn)對(duì)底層關(guān)節(jié)位置、速度和扭矩的實(shí)時(shí)控制。Simulink Real-Time是Mathworks公司推出的一款實(shí)時(shí)仿真技術(shù),為基于PC實(shí)現(xiàn)控制系統(tǒng)快速原型開(kāi)發(fā)和硬件在環(huán)仿真提供解決方案。基于MATLAB/Simulink的機(jī)器人開(kāi)發(fā)能直接從Simulink算法模塊中產(chǎn)生優(yōu)化的、可移植和個(gè)性化的代碼,使控制系統(tǒng)的快速原型化成為可能,大大提高了算法實(shí)現(xiàn)過(guò)程的效率和可靠性。本文作者通過(guò)進(jìn)行dVRK機(jī)器人主操作臂建模與在環(huán)仿真,實(shí)現(xiàn)對(duì)機(jī)器人的實(shí)時(shí)控制,提高機(jī)器人控制的實(shí)時(shí)性和穩(wěn)定性。

        1 dVRK機(jī)器人控制系統(tǒng)描述

        圖1所示為dVRK機(jī)器人機(jī)械臂實(shí)時(shí)控制系統(tǒng),主要包括宿主機(jī)PC、Speedgoat目標(biāo)機(jī)、用于信號(hào)采集與控制的FPGA控制器、伺服直流電機(jī)及驅(qū)動(dòng)系統(tǒng)。宿主機(jī)主要用于控制算法建模和調(diào)用RTW(Real-Time Workshop)實(shí)現(xiàn)控制算法的自動(dòng)代碼生成,并對(duì)目標(biāo)機(jī)代碼下載、控制和數(shù)據(jù)通信。伺服電機(jī)的轉(zhuǎn)速由編碼器實(shí)時(shí)采集并上傳到仿真系統(tǒng),控制系統(tǒng)產(chǎn)生的控制指令通過(guò)檢測(cè)與控制模塊實(shí)時(shí)傳送給機(jī)器人電機(jī)驅(qū)動(dòng)電路。

        圖1 dVRK實(shí)時(shí)控制系統(tǒng)

        1.1 dVRK機(jī)器人控制器

        達(dá)芬奇手術(shù)機(jī)器人醫(yī)生控制臺(tái)是da Vinci系統(tǒng)的控制中心,外科醫(yī)生通過(guò)使用2個(gè)主操作臂遙操作患者側(cè)手術(shù)臂(PSM)和內(nèi)窺鏡機(jī)械手,從而實(shí)現(xiàn)對(duì)患者的手術(shù)。圖2所示的dVRK控制板采用Xilinx-Spartan-6xc6slx45 FPGA,配置IEEE-1394a(FireWire)接口和以太網(wǎng)接口,多個(gè)控制器和電機(jī)驅(qū)動(dòng)板通過(guò)dVRK控制板鏈接成一個(gè)FireWire網(wǎng)絡(luò),與PC機(jī)或Speedgoat目標(biāo)機(jī)通過(guò)以太網(wǎng)進(jìn)行通信。同時(shí),將FPGA連接到I/O設(shè)備如編碼器和用于輸出電機(jī)電流的DAC。

        圖2 dVRK FGPA控制板

        1.2 Speedgoat目標(biāo)機(jī)

        Speedgoat實(shí)時(shí)目標(biāo)機(jī)基于MathWorks的實(shí)時(shí)操作系統(tǒng)Simulink Real-Time,執(zhí)行由宿主機(jī)下載的控制算法代碼,負(fù)責(zé)與外部設(shè)備連接,交互控制信息與反饋信息,監(jiān)控測(cè)試軟件,在線調(diào)整參數(shù),實(shí)現(xiàn)電機(jī)的實(shí)時(shí)控制。Speedgoat配置高性能處理器和高效的實(shí)時(shí)內(nèi)核,支持多種通信協(xié)議和I/O類型,網(wǎng)絡(luò)傳輸速率達(dá)1 000 MB/s以上。

        宿主機(jī)以Socket鏈接的方式發(fā)送Speedgoat實(shí)時(shí)目標(biāo)機(jī),Speedgoat控制機(jī)器人運(yùn)動(dòng),并將機(jī)器人位置、速度、加速度等信息實(shí)時(shí)反饋給上位機(jī)。上位機(jī)對(duì)反饋信息閉環(huán)控制,持續(xù)不斷發(fā)送控制信息給機(jī)器人控制器,控制機(jī)器人實(shí)時(shí)運(yùn)動(dòng)。

        2 dVRK控制系統(tǒng)的模型設(shè)計(jì)

        2.1 宿主機(jī)與目標(biāo)機(jī)的通信連接

        搭建基于Simulink Real-Time的UDP實(shí)時(shí)控制系統(tǒng),在宿主機(jī)與目標(biāo)機(jī)之間建立網(wǎng)絡(luò)連接,設(shè)置應(yīng)用程序?qū)崟r(shí)運(yùn)行環(huán)境,實(shí)現(xiàn)在上位機(jī)、實(shí)時(shí)目標(biāo)機(jī)對(duì)電機(jī)的實(shí)時(shí)控制。如表1所示的網(wǎng)絡(luò)配置,宿主機(jī)通過(guò)RJ45網(wǎng)線與目標(biāo)機(jī)Host link接口相連,運(yùn)行于實(shí)時(shí)目標(biāo)機(jī)的程序通過(guò)TCP/IP接口從宿主機(jī)下載到Speedgoat,宿主機(jī)將控制指令以一定的控制格式封裝為Simulink S函數(shù),通過(guò)實(shí)時(shí)UDP協(xié)議傳輸給目標(biāo)機(jī),由約定的通信端口接收來(lái)自目標(biāo)機(jī)的實(shí)時(shí)數(shù)據(jù)反饋。

        表1 Speedgoat-dVRK網(wǎng)絡(luò)配置

        2.2 機(jī)械臂控制模塊

        dVRK控制器FPGA通信端口基于IEEE-1394(Firewire)協(xié)議,支持2種類型的數(shù)據(jù)傳輸:4字節(jié)傳輸和塊傳輸。對(duì)于4字節(jié)傳輸請(qǐng)求命令,當(dāng)帶有目的地址段的4字節(jié)數(shù)據(jù)包被發(fā)送到FPGA控制器后,F(xiàn)PGA將回應(yīng)請(qǐng)求讀取的數(shù)據(jù)或執(zhí)行寫入請(qǐng)求,該類型的數(shù)據(jù)請(qǐng)求可直接訪問(wèn)FPGA所有I/O資源。

        如圖3所示的Simulink Real Time UDP讀取包模型,其構(gòu)造過(guò)程是通過(guò)S函數(shù)接收來(lái)自客戶端的4個(gè)輸入?yún)?shù):node、tcode、addr和tl,然后根據(jù)協(xié)議處理后打包發(fā)送機(jī)器人4個(gè)32位命令序列包packet0、packet1、packet2、packet3,具體構(gòu)造過(guò)程如以下函數(shù)定義:

        圖3 Simulink Real Time UDP包請(qǐng)求模型塊

        void make_1394_header(unsigned long *packet,unsigned short node,unsigned long addr,unsigned int tcode,

        unsigned int tl)

        {

        packet[0]=bswap_32((0xFFC0|node)<< 16|(tl & 0x3F)<< 10|(tcode & 0x0F)<< 4);

        packet[1]=bswap_32(0xFFFF << 16|((addr &

        0x0000FFFF00000000)>> 32));

        packet[2]=bswap_32(addr&0xFFFFFFFF);

        packet[3]=0;//CRC--should still work without valid CRC

        }

        客戶端將要發(fā)送的數(shù)據(jù)打包成一個(gè)數(shù)據(jù)幀,通過(guò)實(shí)時(shí)以太網(wǎng)傳遞到服務(wù)器端,經(jīng)Ethernet/FireWire 橋廣播到菊花鏈接的各個(gè)FPGA控制器節(jié)點(diǎn)。當(dāng)數(shù)據(jù)幀通過(guò)各個(gè)節(jié)點(diǎn)時(shí),會(huì)根據(jù)幀頭目標(biāo)節(jié)點(diǎn)號(hào)提取屬于自己的數(shù)據(jù),并將要輸出的數(shù)據(jù)插入到數(shù)據(jù)幀。

        實(shí)時(shí)塊傳輸常用于讀取和發(fā)送機(jī)器人伺服控制線程中的數(shù)據(jù),實(shí)現(xiàn)對(duì)機(jī)器人的電機(jī)控制、FPGA PROM讀寫和Dallas 1-wire加密芯片讀寫。塊傳輸支持同時(shí)對(duì)所有通道的多個(gè)寄存器進(jìn)行讀寫。上位機(jī)PC通過(guò)執(zhí)行塊讀取來(lái)獲得反饋數(shù)據(jù),計(jì)算控制信號(hào)(電機(jī)電流),然后執(zhí)行塊寫入。

        3 機(jī)器人控制應(yīng)用設(shè)計(jì)

        dVRK機(jī)械臂的實(shí)時(shí)控制主要由分別運(yùn)行在宿主機(jī)和目標(biāo)機(jī)的Simulink模型實(shí)現(xiàn)。在宿主機(jī)上設(shè)置機(jī)械臂各執(zhí)行關(guān)節(jié)的期望位置,模型編譯下載后,目標(biāo)機(jī)實(shí)時(shí)計(jì)算控制量偏差,并通過(guò)Real time UDP傳送給dVRK機(jī)器人FPGA控制器,最終輸出執(zhí)行器動(dòng)作的偏移量,以使機(jī)械臂定位到期望位置。

        宿主機(jī)將要發(fā)送到目標(biāo)機(jī)的UDP數(shù)據(jù)打包成幀,通過(guò)以太網(wǎng)傳遞給目標(biāo)機(jī),目標(biāo)機(jī)將采集的實(shí)時(shí)數(shù)據(jù)發(fā)回宿主機(jī)如此循環(huán)往復(fù),完成宿主機(jī)-目標(biāo)機(jī)的數(shù)據(jù)傳輸。

        如圖4所示的宿主機(jī)模型中,UDP網(wǎng)絡(luò)配置塊Configure UDP首先根據(jù)表1配置初始化Ethernet通信環(huán)境,包括網(wǎng)絡(luò)IP地址和通信端口號(hào);塊Receive UDP packet接收目標(biāo)機(jī)反饋的控制信號(hào),通過(guò)Byte Unpack數(shù)據(jù)包解析,并通過(guò)Data Type Conversition進(jìn)行類型轉(zhuǎn)換;Byte Pack則進(jìn)行數(shù)據(jù)打包并通過(guò)Send UDP packet將控制信息從宿主機(jī)發(fā)送到目標(biāo)機(jī),利用Ethernet UDP完成整個(gè)控制系統(tǒng)數(shù)據(jù)的傳輸。

        圖4 宿主機(jī)實(shí)時(shí)通信模塊

        目標(biāo)機(jī)Simulink模型主要由塊讀請(qǐng)求(BRead Request)、塊讀響應(yīng)(BRead Feedback)、塊寫操作(BWrite)和PID控制器(PID Subsystem)模塊組成,實(shí)現(xiàn)對(duì)機(jī)器人的電源控制、傳感(狀態(tài))數(shù)據(jù)讀取、電機(jī)位置控制量寫入等功能。

        目標(biāo)機(jī)實(shí)時(shí)計(jì)算來(lái)自上位機(jī)設(shè)定各電機(jī)轉(zhuǎn)速與編碼器反饋的轉(zhuǎn)速差值,PID控制器計(jì)算控制電量并通過(guò)DA轉(zhuǎn)換量傳送到電機(jī)驅(qū)動(dòng)板,構(gòu)成電機(jī)轉(zhuǎn)速的閉環(huán)控制。

        4 實(shí)驗(yàn)結(jié)果及分析

        搭建如圖5所示的dVRK機(jī)器人實(shí)時(shí)控制平臺(tái)。在宿主機(jī)與目標(biāo)機(jī)之間建立網(wǎng)絡(luò)連接,設(shè)置應(yīng)用程序?qū)崟r(shí)運(yùn)行環(huán)境,在宿主機(jī)Simulink環(huán)境中進(jìn)行算法建模和仿真,通過(guò)Real-Time Workshop(RTW)實(shí)現(xiàn)控制算法的自動(dòng)代碼生成,并實(shí)現(xiàn)對(duì)目標(biāo)機(jī)代碼下載、控制和數(shù)據(jù)通信。

        圖5 dVRK機(jī)械臂實(shí)時(shí)控制實(shí)驗(yàn)平臺(tái)

        4.1 機(jī)械臂控制

        圖6所示為目標(biāo)機(jī)實(shí)時(shí)數(shù)據(jù)讀取界面,顯示了目標(biāo)機(jī)模型讀取的dVRK機(jī)器人主、從機(jī)械臂各關(guān)節(jié)編碼器傳感數(shù)值(Enc)、電勢(shì)(Pot)、速度(Vel)、反饋電流(Cur)和期望電流值(DAC),以及包括運(yùn)行狀態(tài)(Status)、時(shí)間戳(Timestamp)、控制板號(hào)在內(nèi)的調(diào)試信息。

        圖6 目標(biāo)機(jī)實(shí)時(shí)數(shù)據(jù)讀取

        基于dVRK機(jī)器人實(shí)時(shí)控制平臺(tái),運(yùn)行宿主機(jī)和目標(biāo)機(jī)上Simulink Real Time模型后讀取得到機(jī)械臂末端執(zhí)行器位置數(shù)值如表2所示。經(jīng)過(guò)對(duì)比可知理論位置值和實(shí)際位置值間數(shù)據(jù)誤差相對(duì)較小,整個(gè)控制系統(tǒng)的運(yùn)行精度比較高,驗(yàn)證了所建立的機(jī)器人控制模型的正確性。

        表2 dVRK機(jī)械臂末端執(zhí)行器運(yùn)行實(shí)驗(yàn)數(shù)據(jù)

        4.2 dVRK實(shí)時(shí)性能測(cè)試

        環(huán)回時(shí)間(Round-Trip Time,RTT)是決定UDP傳輸速率的重要指標(biāo),在測(cè)量UDP鏈接的RTT時(shí),首先搭建如圖7所示的基于Simulink Real-Time UDP的實(shí)時(shí)通信測(cè)量模型,包括客戶機(jī)UDP打包發(fā)送,服務(wù)器UDP接收解包及響應(yīng)。時(shí)間延遲計(jì)算塊是由服務(wù)器UDP接收解包的時(shí)間戳與客戶機(jī)UDP打包發(fā)送時(shí)刻時(shí)間戳的差值,經(jīng)系數(shù)增益塊將測(cè)量的RTT量化為特定的微秒、納秒等量級(jí),計(jì)數(shù)器取值范圍1~3 276,則模型中“輸出顯示”模塊的數(shù)值即實(shí)際網(wǎng)絡(luò)的往返時(shí)延值。

        圖7 RTT測(cè)試模型

        設(shè)置仿真步長(zhǎng)為0.1 ms時(shí),測(cè)得各任務(wù)周轉(zhuǎn)時(shí)間如表3所示:塊讀請(qǐng)求任務(wù)平均周轉(zhuǎn)時(shí)間為13 μs,來(lái)自機(jī)器人的響應(yīng)約為9 μs,PID子系統(tǒng)平均周轉(zhuǎn)時(shí)間約為6 μs,均具有較高的實(shí)時(shí)性。當(dāng)選擇更短的仿真步長(zhǎng)時(shí)出現(xiàn)不同情況的系統(tǒng)丟幀,這說(shuō)明Speedgoat目標(biāo)機(jī)能夠完成系統(tǒng)對(duì)實(shí)時(shí)性要求。

        表3 任務(wù)周轉(zhuǎn)時(shí)間測(cè)試

        5 結(jié)論

        本文作者針對(duì)dVRK外科機(jī)器人搭建了基于Simulink Real Time和Speedgoat目標(biāo)機(jī)的實(shí)時(shí)控制系統(tǒng),在宿主機(jī)上創(chuàng)建控制系統(tǒng)的Simulink模型,并利用RTW和編譯器生成可執(zhí)行代碼下載到運(yùn)行實(shí)時(shí)內(nèi)核的目標(biāo)機(jī)。通過(guò)對(duì)機(jī)器人不斷發(fā)送命令來(lái)讀取機(jī)器人的傳感器狀態(tài)并控制機(jī)械臂各關(guān)節(jié)的執(zhí)行器到達(dá)指定位置,從而完成對(duì)機(jī)器人的實(shí)時(shí)控制。結(jié)果表明:基于Speedgaot的實(shí)時(shí)控制平臺(tái)具有在線調(diào)參、實(shí)時(shí)仿真、目標(biāo)代碼快速原型化等優(yōu)點(diǎn),仿真精度高,可靠性好,大大縮短了dVRK控制算法的研制周期。

        猜你喜歡
        宿主機(jī)實(shí)時(shí)控制控制算法
        雙足步行機(jī)器人嵌入式控制系統(tǒng)設(shè)計(jì)分析
        集群式AUV可控分群控制算法
        基于ARM+FPGA的模塊化同步控制算法研究
        虛擬網(wǎng)絡(luò)實(shí)驗(yàn)室在農(nóng)村職校計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)教學(xué)中的應(yīng)用研究
        嵌入式計(jì)算機(jī)軟件測(cè)試關(guān)鍵技術(shù)的思考
        基于LabVIEW微電網(wǎng)實(shí)驗(yàn)平臺(tái)監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
        探討ERP系統(tǒng)環(huán)境下企業(yè)會(huì)計(jì)的實(shí)時(shí)控制
        嵌入式計(jì)算機(jī)軟件測(cè)試關(guān)鍵技術(shù)研究
        一種優(yōu)化的基于ARM Cortex-M3電池組均衡控制算法應(yīng)用
        空間機(jī)器人的計(jì)算力矩實(shí)時(shí)控制方法
        中文字幕乱码亚洲无限码| 成人做爰69片免费看网站野花| 青青手机在线观看视频| 国产成年人毛片在线99| 久久久亚洲欧洲日产国码aⅴ| 人人妻人人澡人人爽欧美一区双| 影视av久久久噜噜噜噜噜三级| 公粗挺进了我的密道在线播放贝壳 | 亚洲伊人av综合福利| 人妻免费黄色片手机版| 久久天堂av综合合色| 蜜桃视频永久免费在线观看 | 国产熟妇按摩3p高潮大叫| 国产人妻人伦精品1国产盗摄| 亚洲国产夜色在线观看| 国产一级淫片免费播放电影| 色婷婷久久免费网站| 亚洲AV无码乱码一区二区三区| 国内精品少妇久久精品| 日韩av水蜜桃一区二区三区 | 西西午夜无码大胆啪啪国模| 狠狠色噜噜狠狠狠狠色综合久| 久久国产乱子伦精品免费强| 成年视频网站在线观看777| 日本一区二区三区激视频| 中文字幕一区二区人妻秘书 | 亚洲国产都市一区二区| 亚洲高清在线免费视频| aⅴ精品无码无卡在线观看| 亚洲色欲色欲大片www无码| 无遮无挡爽爽免费视频| 熟女俱乐部五十路二区av| 久久成人黄色免费网站| 人妻有码av中文幕久久| 亚洲av无码一区东京热| 国产成人精品日本亚洲| 国产精品嫩草影院午夜| 人妻少妇精品视频一区二区三区| 少妇人妻无奈的跪趴翘起| 亚洲精品粉嫩美女一区| 97se狠狠狠狠狼鲁亚洲综合色|