《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目1、2 ROS 機(jī)器人操作系統(tǒng)的認(rèn)知、ROS 架構(gòu)的認(rèn)知_第1頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目1、2 ROS 機(jī)器人操作系統(tǒng)的認(rèn)知、ROS 架構(gòu)的認(rèn)知_第2頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目1、2 ROS 機(jī)器人操作系統(tǒng)的認(rèn)知、ROS 架構(gòu)的認(rèn)知_第3頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目1、2 ROS 機(jī)器人操作系統(tǒng)的認(rèn)知、ROS 架構(gòu)的認(rèn)知_第4頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目1、2 ROS 機(jī)器人操作系統(tǒng)的認(rèn)知、ROS 架構(gòu)的認(rèn)知_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

任務(wù)一了解ROS機(jī)器人操作系統(tǒng)01任務(wù)二安裝ROS機(jī)器人操作系統(tǒng)021任務(wù)一

了解ROS機(jī)器人操作系統(tǒng)21.?了解ROS的發(fā)展歷程2.?了解ROS的特點(diǎn)3.?掌握根據(jù)不同需求下載ROS對應(yīng)資源的方法任務(wù)目標(biāo)3一、ROS的發(fā)展歷程ROS起源于2007年斯坦福大學(xué)人工智能實(shí)驗(yàn)室的STAIR項(xiàng)目與機(jī)器人技術(shù)公司W(wǎng)illowGarage(柳樹車庫機(jī)器人技術(shù)公司)的個(gè)人機(jī)器人項(xiàng)目之間的合作,2008年之后由WillowGarage公司接手并繼續(xù)研究。ROS1.0于2010年3月發(fā)布,ROS的出現(xiàn)極大地提高了機(jī)器人軟件的復(fù)用率,避免機(jī)器人研究者們把大量時(shí)間花在重復(fù)配置軟件上?;A(chǔ)知識45著名的個(gè)人機(jī)器人PR2也在同年誕生,它可以實(shí)現(xiàn)開門、疊衣服、找到插頭并給自己充電等復(fù)雜的操作,這引發(fā)了個(gè)人機(jī)器人研發(fā)的熱潮。但由于PR2價(jià)格昂貴,難以推廣,2011年WillowGarage公司開發(fā)了一款入門級的機(jī)器人平臺(tái)——TurtleBot,為機(jī)器人愛好者和開發(fā)者提供了一個(gè)基礎(chǔ)平臺(tái),讓他們可以直接使用TurtleBot自帶的軟、硬件,專注于應(yīng)用程序的開發(fā)。隨著ROS社群的快速壯大,2012年5月,美國明尼蘇達(dá)州開展了第一屆ROSCon(機(jī)器人操作系統(tǒng)會(huì)議),此后ROSCon每年都會(huì)舉辦一次,為全世界的ROS開發(fā)人員提供了一個(gè)交流的機(jī)會(huì)。6為了保障公司的正常運(yùn)營,WillowGarage公司成立了非營利性機(jī)構(gòu)——開源機(jī)器人基金會(huì)(OpenSourceRoboticsFoundation,簡稱OSRF),該基金會(huì)接受來自個(gè)人、政府和公司的捐款。自2013年起,OSRF負(fù)責(zé)ROS的開發(fā)和維護(hù),并推動(dòng)機(jī)器人仿真平臺(tái)Gazebo的發(fā)展。在OSRF的推動(dòng)下,ROS相繼發(fā)布了多個(gè)版本的軟件,包括Groovy、Hydro、Indigo、KineticKame、Loggerhead、MelodicMorenia、NoeticNinjemys等。這些版本的發(fā)布進(jìn)一步增強(qiáng)了ROS的功能和性能,使其成為廣泛應(yīng)用于機(jī)器人領(lǐng)域的先進(jìn)開源框架。7ROS最初是為家庭服務(wù)機(jī)器人和學(xué)術(shù)研究領(lǐng)域開發(fā)的。然而,令人意外的是,ROS被廣泛應(yīng)用于各種機(jī)器人領(lǐng)域,包括工業(yè)機(jī)械手臂、自動(dòng)駕駛汽車和飛行器等。隨著應(yīng)用場景的不斷擴(kuò)大,出現(xiàn)了一系列新的需求,如多機(jī)器人集群、嵌入式平臺(tái)機(jī)器人和實(shí)時(shí)系統(tǒng)等。為了滿足這些需求,OSRF在2017年發(fā)布了ROS2.0系統(tǒng),它采用了更先進(jìn)的分布式架構(gòu),具備更高的可靠性,并且提供對實(shí)時(shí)性和嵌入式設(shè)備的全面支持。ROS的發(fā)展歷程如圖所示。8ROS的發(fā)展歷程二、ROS的特點(diǎn)ROS具有以下特點(diǎn):點(diǎn)對點(diǎn)設(shè)計(jì)、支持多種編程語言、架構(gòu)精簡和集成度高、組件化工具包豐富、免費(fèi)且開源。1.?點(diǎn)對點(diǎn)設(shè)計(jì)一個(gè)基于ROS的系統(tǒng)可以通過建立一系列節(jié)點(diǎn)單元來實(shí)現(xiàn)功能。這些節(jié)點(diǎn)可以分布在不同的主機(jī)上,并通過端到端的拓?fù)浣Y(jié)構(gòu)進(jìn)行通信。ROS的點(diǎn)對點(diǎn)設(shè)計(jì)以及服務(wù)和節(jié)點(diǎn)管理器機(jī)制可以有效地分擔(dān)計(jì)算機(jī)視覺等功能帶來的計(jì)算壓力,從而應(yīng)對多機(jī)器人控制所面臨的挑戰(zhàn)。910ROS的點(diǎn)對點(diǎn)設(shè)計(jì)體現(xiàn)在以下四個(gè)方面:(1)節(jié)點(diǎn)單元。(2)分布式網(wǎng)絡(luò)。(3)RPC+TCP/UDP通信系統(tǒng)。(4)適合多機(jī)通信。112.?支持多種編程語言不同開發(fā)者會(huì)偏向使用不同的編程語言,為了解決這個(gè)問題,ROS被設(shè)計(jì)成語言中立性的框架架構(gòu),支持C++、Python、Java、Lisp等不同的編程語言,同時(shí)也包含其他語言的接口。3.?架構(gòu)精簡、集成度高為了實(shí)現(xiàn)機(jī)器人軟件工程中的可重用驅(qū)動(dòng)和算法在其他領(lǐng)域的應(yīng)用,OSRF開發(fā)者們鼓勵(lì)將這些驅(qū)動(dòng)和算法從ROS中提取出來,形成與ROS無依賴性的獨(dú)立庫。ROS系統(tǒng)具有模塊化的特點(diǎn),其中的代碼可以進(jìn)行單獨(dú)編譯。ROS將復(fù)雜的代碼封裝在庫中,并通過小型應(yīng)用程序來展示這些庫的功能。124.?組件化工具包豐富為了管理復(fù)雜的軟件架構(gòu),ROS利用大量的工具編譯和運(yùn)行多種多樣的組件。這些工具承擔(dān)了各種各樣的任務(wù),如組織源代碼的結(jié)構(gòu)、獲取和設(shè)置配置參數(shù)、形象化端對端的拓?fù)溥B接等,一些常見的ROS組件化工具包如下:(1)3D可視化工具——RViz。(2)物理仿真環(huán)境——Gazebo。(3)數(shù)據(jù)記錄工具——rosbag。(4)圖形化用戶接口框架Qt工具箱——rqt_*。135.?免費(fèi)且開源ROS的所有源代碼都是公開發(fā)布的,這將促進(jìn)ROS軟件在各層級的調(diào)試,有利于不斷改正錯(cuò)誤。ROS遵循BSD(BerkeleySoftwareDistribution)許可,也就是允許各種商業(yè)和非商業(yè)的工程進(jìn)行開發(fā),同時(shí)可修改、可復(fù)用。三、ROS的社區(qū)使用ROS的人越來越多,其中一個(gè)原因是它具有良好的社區(qū)生態(tài)。機(jī)器人的學(xué)習(xí)和開發(fā)可以利用ROS開源社區(qū)中豐富的資源,通過網(wǎng)絡(luò)共享和下載獲取需要的軟件和知識。常見的關(guān)于ROS的社區(qū)包括ROS官方網(wǎng)站(/)、創(chuàng)客智造(/)、易科機(jī)器人實(shí)驗(yàn)室(/)、古月居(/)等。14四、源代碼的下載1.?通過命令下載源代碼下載用Git工具,通常使用以下命令:$gitclone<gitaddress>2.?直接下載可以直接在GitHub相應(yīng)的“倉庫”中單擊“DownloadZIP”,下載源代碼的壓縮文件,如圖所示。1516直接下載源代碼任務(wù)二

安裝ROS機(jī)器人操作系統(tǒng)171.?掌握終端的打開方式2.?掌握通過apt-get方式安裝軟件的方法3.?掌握ROS環(huán)境的配置方法4.?能在Ubuntu系統(tǒng)中安裝ROS并進(jìn)行環(huán)境配置和測試任務(wù)目標(biāo)18一、終端的打開方式終端可以通過命令的方式對文件和程序進(jìn)行操作。在學(xué)習(xí)ROS的過程中,經(jīng)常需要自己構(gòu)建并調(diào)整一些簡單的程序,這時(shí)需要用終端進(jìn)行操作。在Ubuntu系統(tǒng)中打開終端的方式有兩種:1.?在空白位置右擊鼠標(biāo),打開快捷菜單,單擊“打開終端”,如圖所示。基礎(chǔ)知識19單擊“打開終端”202.?按“Ctrl”+“Alt”+“T”組合鍵直接打開終端窗口,如圖所示。終端窗口二、軟件的安裝在Ubuntu系統(tǒng)中,軟件安裝方法有多種,包括apt-get、dpkg、makeinstall等。其中,apt-get是最常用的一種方法,可以自動(dòng)安裝軟件所需的依賴包,具體使用方法如下:安裝軟件:$sudoapt-getinstall<軟件名稱>卸載軟件:$sudoapt-getremove<軟件名稱>使用sudo指令時(shí)需要輸入本機(jī)密碼。21三、環(huán)境的配置配置環(huán)境的方式有以下兩種:1.臨時(shí)配置環(huán)境。在終端中輸入以下命令后,可以完成當(dāng)前終端環(huán)境的配置。然而,當(dāng)再次打開一個(gè)新的終端時(shí),新終端將不會(huì)自動(dòng)繼承之前的環(huán)境配置,因?yàn)槊總€(gè)終端都有獨(dú)立的環(huán)境。$source*.sh222.持久配置環(huán)境。在終端中輸入以下命令后,可以成功配置當(dāng)前終端的環(huán)境,且新建的終端也會(huì)自動(dòng)應(yīng)用相同的環(huán)境配置。這是因?yàn)檫@些命令將環(huán)境配置寫入了適當(dāng)?shù)呐渲梦募?,使得每次打開終端時(shí)都能加載并應(yīng)用這些配置,確保環(huán)境配置的持久性和全局性。$echo"source/opt/ros/melodic/setup.bash">>~/.bashrc$source~/.bashrc環(huán)境配置完畢后,可以輸入以下命令查看配置是否成功,該命令可以查找并顯示所有包含ROS的環(huán)境變量:$printenv|grepROS23任務(wù)一ROS整體架構(gòu)的介紹01任務(wù)二啟動(dòng)ROS第一個(gè)節(jié)點(diǎn)——小海龜仿真02任務(wù)三ROS的通信機(jī)制在小海龜中的應(yīng)用0324任務(wù)一

ROS整體架構(gòu)的介紹251.?了解ROS的架構(gòu)設(shè)計(jì)2.?掌握ROS的節(jié)點(diǎn)、話題、服務(wù)等相關(guān)概念3.?掌握ROS文件系統(tǒng)的組成任務(wù)目標(biāo)26一、ROS的架構(gòu)設(shè)計(jì)ROS的架構(gòu)可以分為三個(gè)層次:操作系統(tǒng)層、中間層和應(yīng)用層,如圖所示?;A(chǔ)知識27ROS的架構(gòu)281.?操作系統(tǒng)層ROS與傳統(tǒng)操作系統(tǒng)不同,它不是直接在機(jī)器硬件上運(yùn)行的操作系統(tǒng),而是需要依賴Linux系統(tǒng)才能正常工作。因此,可以選擇在ROS官方支持的桌面型Linux系統(tǒng)上運(yùn)行ROS(建議優(yōu)先考慮ROS官方支持的桌面型Linux系統(tǒng),特別是Ubuntu操作系統(tǒng),因?yàn)樗鼈兙哂懈玫募嫒菪院头€(wěn)定性)。此外,也可以在其他使用Linux內(nèi)核的操作系統(tǒng)上運(yùn)行ROS,如Arch、Debian等。這種依賴于Linux系統(tǒng)的設(shè)計(jì)使得ROS能夠充分利用Linux的穩(wěn)定性和強(qiáng)大的功能來支持機(jī)器人應(yīng)用。ROS在Linux系統(tǒng)上與操作系統(tǒng)內(nèi)核和硬件之間建立了聯(lián)系,提供了豐富的機(jī)器人開發(fā)和控制功能。292.?中間層Linux是一個(gè)通用的操作系統(tǒng),沒有專門為ROS開發(fā)設(shè)計(jì)的特殊中間件。因此,ROS在中間層面承擔(dān)了很多工作,以銜接網(wǎng)絡(luò)上的應(yīng)用系統(tǒng)和不同部分,實(shí)現(xiàn)資源和功能的共享。其中,ROS基于TCP/UDP進(jìn)行網(wǎng)絡(luò)封裝,并設(shè)計(jì)了一套基于TCPROS/UDPROS的通信系統(tǒng)。這個(gè)通信系統(tǒng)采用了發(fā)布/訂閱和客戶端/服務(wù)器等通信模型,實(shí)現(xiàn)了多種機(jī)制的數(shù)據(jù)傳輸。除了TCPROS/UDPROS通信系統(tǒng),ROS還提供了一種進(jìn)程內(nèi)的通信方式,即Nodelet。Nodelet是為了優(yōu)化多進(jìn)程通信而提供的數(shù)據(jù)傳輸方式,它能夠提高數(shù)據(jù)通信的實(shí)時(shí)性。303.?應(yīng)用層在應(yīng)用層,ROS的正常運(yùn)行需要一個(gè)管理器——ROSmaster。ROSmaster即節(jié)點(diǎn)管理器,負(fù)責(zé)管理整個(gè)系統(tǒng)的正常運(yùn)行。ROS社區(qū)中分享了豐富的機(jī)器人應(yīng)用功能包,這些功能包內(nèi)的模塊以節(jié)點(diǎn)為基本單元運(yùn)行,依照ROS標(biāo)準(zhǔn)的輸入、輸出接口進(jìn)行通信。開發(fā)者使用這些功能包時(shí),無須深入關(guān)注模塊內(nèi)部的細(xì)節(jié),只需熟悉接口規(guī)范即可輕松實(shí)現(xiàn)功能復(fù)用,有效提高了開發(fā)效率。二、ROS的相關(guān)概念ROS的功能模塊是以節(jié)點(diǎn)為單位單獨(dú)運(yùn)行的,可以分布在多個(gè)主機(jī)里,當(dāng)系統(tǒng)運(yùn)行時(shí)通過端對端的拓?fù)浣Y(jié)構(gòu)進(jìn)行連接。ROS的相關(guān)概念如下:1.節(jié)點(diǎn)(node):節(jié)點(diǎn)是ROS中最小的進(jìn)程單元,一個(gè)軟件包中可以有多個(gè)可執(zhí)行文件(可以由操作系統(tǒng)進(jìn)行加載、執(zhí)行的文件),可執(zhí)行文件在運(yùn)行后就成為一個(gè)進(jìn)程,這個(gè)進(jìn)程在ROS中稱為節(jié)點(diǎn)。2.消息(message):消息是一種數(shù)據(jù)結(jié)構(gòu),支持多種數(shù)據(jù)類型(整型、浮點(diǎn)型、布爾型、字符串型、數(shù)組型等),同時(shí)也支持消息的嵌套定義。31323.話題(topic):也稱為主題,是消息的載體。節(jié)點(diǎn)之間通過發(fā)布和訂閱話題來傳遞消息。4.服務(wù)(service):服務(wù)是應(yīng)答模式的信息交互方式,它基于客戶端/服務(wù)器模型。與話題的主要不同之處是,當(dāng)服務(wù)端接收到客戶端的請求時(shí),會(huì)對請求做出響應(yīng)。5.節(jié)點(diǎn)管理器:節(jié)點(diǎn)管理器是ROS運(yùn)行的核心,其主要功能是登記注冊節(jié)點(diǎn)、服務(wù)和話題的名稱。三、ROS的文件系統(tǒng)類似于操作系統(tǒng),ROS將所有文件按照一定的規(guī)則進(jìn)行組織,不同功能的文件被放置在不同文件夾下,工作空間(存放工程開發(fā)相關(guān)文件的文件夾)如圖所示。33工作空間34ROS系統(tǒng)通過工作空間為不同的項(xiàng)目配置獨(dú)立的環(huán)境和代碼。當(dāng)有多個(gè)項(xiàng)目時(shí),可以為每個(gè)項(xiàng)目建立專屬的工作空間,使用時(shí)只需要切換工作空間即可調(diào)用不同項(xiàng)目的功能包和程序。ROS默認(rèn)使用Catkin編譯系統(tǒng),編譯產(chǎn)生的工作空間文件結(jié)構(gòu)如下:1.src(代碼空間):儲(chǔ)存所有ROS功能包的源代碼。2.build(編譯空間):儲(chǔ)存工作空間編譯過程中產(chǎn)生的緩存信息和中間文件。3.devel(開發(fā)空間):儲(chǔ)存編譯生成的可執(zhí)行文件。4.功能包:功能包是ROS的基本單元,包含ROS節(jié)點(diǎn)、庫、配置文件等。355.功能包清單:一個(gè)名為“package.xml”的功能包清單文件,用“xml”的標(biāo)簽語言格式記錄了功能包的基本信息,如編譯標(biāo)志、依賴關(guān)系等,主要作用是使用戶和系統(tǒng)更容易地安裝和分發(fā)功能包。6.消息類型:消息是ROS中一個(gè)節(jié)點(diǎn)發(fā)布/訂閱到其他節(jié)點(diǎn)的通信信息,消息類型是消息的數(shù)據(jù)結(jié)構(gòu)。7.服務(wù)類型:服務(wù)是ROS中一個(gè)節(jié)點(diǎn)請求/響應(yīng)到其他節(jié)點(diǎn)的通信過程,服務(wù)類型定義了其通信的數(shù)據(jù)類型。8.代碼:儲(chǔ)存功能包節(jié)點(diǎn)代碼的文件夾,包括C++程序、Python腳本等。任務(wù)二

啟動(dòng)ROS第一個(gè)節(jié)點(diǎn)——小海龜仿真361.?通過小海龜仿真例程,初步了解ROS基礎(chǔ)知識2.?了解ROS中的節(jié)點(diǎn)控制原理3.?能啟動(dòng)小海龜仿真節(jié)點(diǎn)并用鍵盤控制小海龜?shù)倪\(yùn)動(dòng)任務(wù)目標(biāo)37一、小海龜仿真ROS提供了一個(gè)自帶的基礎(chǔ)教學(xué)功能包,名為turtlesim(小海龜仿真),可以通過該功能包的實(shí)例完成ROS相關(guān)基礎(chǔ)知識的學(xué)習(xí),包括節(jié)點(diǎn)、話題、服務(wù)、參數(shù)設(shè)置等。各版本ROS中turtlesim的圖標(biāo)見下表?;A(chǔ)知識3839各版本ROS的turtlesim圖標(biāo)40各版本ROS的turtlesim圖標(biāo)二、節(jié)點(diǎn)控制原理可以通過鍵盤來控制小海龜?shù)倪\(yùn)動(dòng),使用節(jié)點(diǎn)控制的計(jì)算圖如圖所示。鍵盤控制節(jié)點(diǎn)/teleop_turtle通過話題與小海龜節(jié)點(diǎn)/turtlesim連接。當(dāng)按下鍵盤的指定按鍵時(shí),鍵盤控制節(jié)點(diǎn)向/turtle1/cmd_vel話題發(fā)布一個(gè)速度消息。小海龜節(jié)點(diǎn)獲取/turtle1/cmd_vel中的速度消息進(jìn)行移動(dòng)。41計(jì)算圖(節(jié)點(diǎn)控制)任務(wù)三

ROS的通信機(jī)制在小海龜中的應(yīng)用421.?了解ROS的話題通信機(jī)制2.?了解ROS的服務(wù)通信機(jī)制3.?了解ROS的參數(shù)管理機(jī)制4.?能使用話題通信機(jī)制和服務(wù)通信機(jī)制控制小海龜?shù)倪\(yùn)動(dòng)并修改其參數(shù)任務(wù)目標(biāo)43ROS的通信機(jī)制ROS的通信機(jī)制是其核心,它基于分布式通信技術(shù),ROS的所有功能和工具都構(gòu)建在這種分布式通信機(jī)制的基礎(chǔ)上。因此,ROS的通信機(jī)制可以被視為最基礎(chǔ)、最核心的技術(shù)。ROS的通信機(jī)制主要分為三大類:話題通信機(jī)制、服務(wù)通信機(jī)制和參數(shù)管理機(jī)制。這些機(jī)制使得ROS中的節(jié)點(diǎn)能夠相互交流和共享數(shù)據(jù),實(shí)現(xiàn)高效的協(xié)作和信息傳遞。基礎(chǔ)知識441.?話題通信機(jī)制話題通信機(jī)制是ROS中使用最為頻繁的通信機(jī)制,ROS中的話題以發(fā)布/訂閱的方式傳輸數(shù)據(jù)。一個(gè)節(jié)點(diǎn)可以在特定的主題上發(fā)布消息,而另一個(gè)節(jié)點(diǎn)可以訂閱某個(gè)特定的主題類型的數(shù)據(jù),可以同時(shí)有多個(gè)節(jié)點(diǎn)發(fā)布或訂閱同一個(gè)主題的消息。話題通信機(jī)制為異步通信,發(fā)布者和訂閱者的節(jié)點(diǎn)啟動(dòng)順序沒有強(qiáng)制要求。如圖所示為話題通信機(jī)制的通信模型。4546話題通信機(jī)制的通信模型本任務(wù)將使用turtlesim功能包,啟動(dòng)turtlesim_node節(jié)點(diǎn)創(chuàng)建一個(gè)小海龜實(shí)例,小海龜節(jié)點(diǎn)相關(guān)的話題見下表。47turtlesim_node相關(guān)話題可以通

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論