工業機器人編程語言:Sysmac Studio(歐姆龍):工業機器人編程基礎_第1頁
工業機器人編程語言:Sysmac Studio(歐姆龍):工業機器人編程基礎_第2頁
工業機器人編程語言:Sysmac Studio(歐姆龍):工業機器人編程基礎_第3頁
工業機器人編程語言:Sysmac Studio(歐姆龍):工業機器人編程基礎_第4頁
工業機器人編程語言:Sysmac Studio(歐姆龍):工業機器人編程基礎_第5頁
已閱讀5頁,還剩15頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

工業機器人編程語言:SysmacStudio(歐姆龍):工業機器人編程基礎1工業機器人編程語言:SysmacStudio(Omron):工業機器人編程基礎1.1SysmacStudio簡介1.1.1SysmacStudio的發展歷史SysmacStudio是由Omron公司開發的一款集成開發環境(IDE),用于編程和配置Omron的可編程邏輯控制器(PLC)、人機界面(HMI)、伺服驅動器、變頻器等自動化設備。自2012年首次發布以來,SysmacStudio不斷迭代更新,融合了多種編程語言,如梯形圖(LadderDiagram)、結構化文本(StructuredText)、功能塊圖(FunctionBlockDiagram)等,以適應不同自動化應用的需求。1.1.2SysmacStudio的主要功能SysmacStudio提供了全面的自動化設備編程和配置功能,包括:-編程:支持多種編程語言,便于工程師根據項目需求選擇最合適的編程方式。-調試:內置調試工具,允許用戶在模擬環境中測試程序,確保程序的正確性和穩定性。-配置:可以配置自動化設備的硬件參數,如I/O地址、網絡設置等。-監控:實時監控設備狀態,幫助工程師快速定位問題。-文檔:自動生成項目文檔,便于項目管理和后期維護。1.1.3SysmacStudio的界面介紹SysmacStudio的界面設計直觀,主要分為以下幾個部分:-項目樹視圖:顯示項目結構,包括硬件配置、程序文件等。-編輯器:用于編寫程序,支持語法高亮和代碼提示。-調試器:提供程序調試功能,包括單步執行、斷點設置等。-監控窗口:顯示設備的實時狀態,包括變量值、設備狀態等。-消息窗口:顯示編譯錯誤、警告信息,幫助用戶快速定位問題。1.2示例:使用SysmacStudio進行梯形圖編程假設我們有一個簡單的自動化生產線,需要控制一個電機的啟動和停止。下面是如何使用SysmacStudio的梯形圖語言來實現這一功能的示例。1.2.1步驟1:創建項目打開SysmacStudio,選擇File>New>Project。選擇PLC類型,例如CJ2M,然后點擊Next。輸入項目名稱和位置,點擊Finish。1.2.2步驟2:配置硬件在項目樹視圖中,雙擊Hardware。在硬件配置窗口中,添加電機控制所需的I/O模塊。配置I/O模塊的地址和參數。1.2.3步驟3:編寫梯形圖程序//梯形圖示例:電機啟動和停止控制

//輸入:X0-啟動按鈕,X1-停止按鈕

//輸出:Y0-電機控制信號

//啟動邏輯

X0//啟動按鈕

|>//邏輯與

Y0//輸出電機控制信號

//停止邏輯

X1//停止按鈕

|>//邏輯與

Y0//輸出電機控制信號

//使用NOT反轉邏輯,實現停止功能

NOT1.2.4步驟4:編譯和下載程序選擇Project>Build,編譯程序。選擇Project>Download,將程序下載到PLC。1.2.5步驟5:調試和監控在Debug菜單中選擇Start,開始調試。使用Monitor窗口,監控電機控制信號Y0的狀態。通過以上步驟,我們可以在SysmacStudio中實現對電機的啟動和停止控制。這個簡單的示例展示了梯形圖編程的基本流程,實際應用中,程序會更加復雜,可能涉及到多個設備的協調控制、故障檢測和處理等。1.3結論SysmacStudio作為一款功能強大的自動化設備編程和配置工具,極大地簡化了工業自動化項目的開發流程。通過其直觀的界面和豐富的功能,工程師可以高效地完成設備編程、調試和維護工作,是工業自動化領域不可或缺的工具之一。2工業機器人編程語言:SysmacStudio(Omron)編程基礎2.1編程語言概述在工業自動化領域,SysmacStudio是由Omron公司開發的一款集成開發環境(IDE),用于編程和配置Omron的PLC、機器人、視覺系統和運動控制器。SysmacStudio支持多種編程語言,包括梯形圖(LadderDiagram)、結構化文本(StructuredText)、功能塊圖(FunctionBlockDiagram)和順序功能圖(SequentialFunctionChart)。其中,結構化文本(StructuredText)是一種基于IEC61131-3標準的高級編程語言,它使用類似于Pascal的語法,適用于復雜的邏輯和數學運算。2.1.1示例:結構化文本中的簡單加法//定義兩個變量和一個結果變量

VAR

a,b,result:INT;

END_VAR

//主程序

PROGRAMmain

VAR

i:INT;

END_VAR

main

//初始化變量

a:=5;

b:=10;

//執行加法

result:=a+b;

//輸出結果

WRITE("Result:",result);

END_PROGRAM2.2基本指令集講解SysmacStudio提供了豐富的指令集,涵蓋了基本的邏輯控制、數據處理、通信和運動控制等功能。以下是一些基本指令的介紹:2.2.1邏輯控制指令AND、OR、NOT:用于布爾邏輯運算。IF、CASE:用于條件判斷。2.2.2數據處理指令+、-、*、/:基本的算術運算。MOD:取模運算。ABS:絕對值運算。2.2.3通信指令SOCKET:用于網絡通信的套接字指令。UDP_SEND、UDP_RECV:用于UDP數據包的發送和接收。2.2.4運動控制指令MOVE:用于控制軸的移動。PTP:點對點運動指令。LIN:線性運動指令。2.3變量與數據類型在SysmacStudio中,變量是程序中存儲數據的基本單元。SysmacStudio支持多種數據類型,包括:BOOL:布爾類型,表示真或假。INT:整數類型。REAL:實數類型。STRING:字符串類型。DATE、TIME、TOD、DT:日期和時間類型。2.3.1示例:定義變量和數據類型//定義變量

VAR

flag:BOOL;//布爾變量

count:INT;//整數變量

temperature:REAL;//實數變量

message:STRING(20);//字符串變量,最大長度為20

today:DATE;//日期變量

now:TOD;//時間變量

END_VAR2.4程序結構與流程控制SysmacStudio的程序結構通常包括程序塊、函數塊和功能塊。流程控制則通過條件語句、循環語句和跳轉指令來實現。2.4.1示例:使用流程控制指令//定義變量

VAR

i:INT;

sum:INT;

END_VAR

//主程序

PROGRAMmain

VAR

n:INT:=10;

END_VAR

main

//初始化變量

sum:=0;

//循環累加

FORi:=1TOnDO

sum:=sum+i;

END_FOR

//輸出結果

WRITE("Sum:",sum);

//條件判斷

IFsum>50THEN

WRITE("Sumisgreaterthan50.");

ELSE

WRITE("Sumislessthanorequalto50.");

END_IF

END_PROGRAM在上述示例中,我們使用了FOR循環來累加從1到10的整數,并使用IF條件語句來判斷累加結果是否大于50。這些基本的程序結構和流程控制指令是構建復雜工業自動化程序的基石。3機器人控制編程3.1機器人運動指令詳解在工業機器人編程中,運動指令是控制機器人執行特定動作的關鍵。SysmacStudio(Omron)提供了豐富的運動指令,用于精確控制機器人的位置和速度。下面,我們將詳細介紹幾種常用的機器人運動指令。3.1.1直線運動指令:MoveL**功能**:控制機器人沿直線路徑移動到指定位置。

**語法**:

```plaintext

MoveLTarget,vSpeed,zZone,tool,wobj;Target:目標位置。vSpeed:移動速度。zZone:接近目標時的減速區域。tool:工具坐標系。wobj:工件坐標系。示例:#假設目標位置為p1,速度為v100,減速區域為z10,工具坐標為tool0,工件坐標為wobj0

MoveLp1,v100,z10,tool0,wobj0;3.1.2圓弧運動指令:MoveC**功能**:控制機器人沿圓弧路徑移動到指定位置。

**語法**:

```plaintext

MoveCTarget1,Target2,vSpeed,zZone,tool,wobj;Target1:圓弧路徑的起點。Target2:圓弧路徑的終點。vSpeed:移動速度。zZone:接近目標時的減速區域。tool:工具坐標系。wobj:工件坐標系。示例:#假設圓弧路徑的起點為p1,終點為p2,速度為v100,減速區域為z10,工具坐標為tool0,工件坐標為wobj0

MoveCp1,p2,v100,z10,tool0,wobj0;3.1.3關節運動指令:MoveJ**功能**:控制機器人沿關節路徑移動到指定位置。

**語法**:

```plaintext

MoveJTarget,vSpeed,zZone,tool,wobj;Target:目標位置。vSpeed:移動速度。zZone:接近目標時的減速區域。tool:工具坐標系。wobj:工件坐標系。示例:#假設目標位置為p1,速度為v100,減速區域為z10,工具坐標為tool0,工件坐標為wobj0

MoveJp1,v100,z10,tool0,wobj0;3.2坐標系與路徑規劃在SysmacStudio中,坐標系的定義對于路徑規劃至關重要。機器人可以使用不同的坐標系來定位和移動,包括基坐標系、工具坐標系、工件坐標系等。3.2.1基坐標系基坐標系是機器人的固定參考坐標系,通常與機器人底座對齊。3.2.2工具坐標系工具坐標系用于描述機器人末端執行器的位置和姿態,可以隨著工具的更換而調整。3.2.3工件坐標系工件坐標系用于描述工件的位置,使得機器人在不同工件上執行相同的操作時,只需調整工件坐標系即可。示例:定義工具坐標系和工件坐標系#定義工具坐標系

ToolDatatool0={100,0,0,0,0,0};

#定義工件坐標系

WobjDatawobj0={0,0,0,0,0,0};3.3I/O控制與外部設備接口SysmacStudio允許通過I/O接口控制外部設備,如傳感器、執行器等,這對于實現機器人與生產線的自動化集成至關重要。3.3.1I/O控制通過編程,可以讀取輸入信號和控制輸出信號。示例:讀取輸入信號和控制輸出信號#讀取輸入信號

intinput_signal=readDI(1);

#控制輸出信號

writeDO(1,1);#輸出信號置13.3.2外部設備接口SysmacStudio支持多種通信協議,如EtherCAT、Profinet等,用于與外部設備通信。示例:使用EtherCAT通信#初始化EtherCAT通信

EtherCAT_Init();

#讀取EtherCAT設備數據

intdevice_data=EtherCAT_Read(1);

#寫入EtherCAT設備數據

EtherCAT_Write(1,1);3.4機器人安全功能編程安全功能編程是工業機器人編程中不可或缺的一部分,確保操作人員和設備的安全。3.4.1安全停止指令:Stop**功能**:立即停止機器人運動。

**語法**:

```plaintext

Stop;示例:#立即停止機器人運動

Stop;3.4.2安全區域設定:SetSafetyZone**功能**:設定機器人安全運行的區域。

**語法**:

```plaintext

SetSafetyZoneZoneData,Radius;ZoneData:安全區域數據。Radius:安全區域半徑。示例:#定義安全區域數據

ZoneDatasafety_zone={0,0,0,0,0,0};

#設定安全區域半徑為100mm

SetSafetyZonesafety_zone,100;3.4.3安全速度限制:SetSafetySpeed**功能**:設定機器人安全運行的最大速度。

**語法**:

```plaintext

SetSafetySpeedSpeed;Speed:最大安全速度。示例:#設定最大安全速度為50mm/s

SetSafetySpeed50;通過上述運動指令、坐標系定義、I/O控制以及安全功能的編程,可以實現對工業機器人在SysmacStudio(Omron)環境下的全面控制和自動化操作。4高級編程技術4.1循環與條件語句的高級應用在工業機器人編程中,循環和條件語句是實現復雜任務和流程控制的關鍵。SysmacStudio支持多種循環和條件語句,如FOR循環、WHILE循環、IF語句等,這些語句可以靈活地控制程序的執行流程。4.1.1示例:使用FOR循環進行多次重復操作//SysmacStudioCFC(ContinuousFunctionChart)中的循環示例

//使用FOR循環控制機器人進行10次重復抓取和放置操作

//定義循環次數

intrepeatCount=10;

//FOR循環開始

FOR(inti=1;i<=repeatCount;i++)

{

//機器人抓取操作

Robot.Grip();

//移動到指定位置

Robot.MoveToPosition(1);

//放置操作

Robot.Place();

//移動回初始位置

Robot.MoveToPosition(0);

}

//FOR循環結束在上述示例中,FOR循環用于控制機器人執行一系列抓取和放置操作,直到達到指定的重復次數。每次循環,機器人會執行抓取、移動到位置1、放置、然后移動回初始位置的流程。4.1.2示例:使用IF語句進行條件判斷//SysmacStudioCFC中的條件判斷示例

//根據傳感器檢測結果決定機器人是否進行抓取操作

//傳感器檢測結果

boolsensorResult=Sensor.Detect();

//IF條件語句開始

IF(sensorResult)

{

//如果傳感器檢測到物體,執行抓取操作

Robot.Grip();

}

ELSE

{

//如果傳感器未檢測到物體,機器人保持不動

Robot.Stay();

}

//IF條件語句結束此示例中,IF語句用于根據傳感器的檢測結果來決定機器人是否執行抓取操作。如果傳感器檢測到物體,機器人執行抓取;否則,機器人保持不動。4.2子程序與函數的創建與調用子程序和函數的使用可以提高代碼的復用性和可讀性,SysmacStudio允許用戶創建和調用自定義的子程序和函數。4.2.1示例:創建并調用子程序//SysmacStudioCFC中的子程序創建與調用示例

//創建子程序:機器人抓取和放置操作

SUBROUTINEGripAndPlace()

{

//機器人抓取操作

Robot.Grip();

//移動到指定位置

Robot.MoveToPosition(1);

//放置操作

Robot.Place();

//移動回初始位置

Robot.MoveToPosition(0);

}

//主程序中調用子程序

intmain()

{

//調用子程序

GripAndPlace();

//其他操作

//...

}在本例中,GripAndPlace子程序封裝了機器人抓取和放置的整個流程,可以在主程序或其他需要的地方多次調用,以減少代碼重復。4.3錯誤處理與調試技巧錯誤處理和調試是確保程序穩定運行和快速定位問題的關鍵。SysmacStudio提供了錯誤處理機制和調試工具。4.3.1示例:使用TRY...CATCH進行錯誤處理//SysmacStudioCFC中的錯誤處理示例

TRY

{

//嘗試執行可能出錯的操作

Robot.MoveToPosition(2);

}

CATCH(Exceptione)

{

//如果出錯,記錄錯誤信息并采取補救措施

Log.Error("機器人移動失敗:"+e.Message);

Robot.MoveToPosition(0);//移動回安全位置

}此示例中,TRY...CATCH結構用于捕獲機器人移動過程中可能發生的異常,并在異常發生時記錄錯誤信息,同時將機器人移動到安全位置。4.4網絡通信與多機器人協作在現代工業環境中,機器人之間的網絡通信和協作變得越來越重要。SysmacStudio支持多種網絡通信協議,如EtherCAT、EtherCATFMMU等,用于實現多機器人之間的數據交換和同步。4.4.1示例:使用EtherCAT進行機器人間通信//SysmacStudioCFC中的網絡通信示例

//定義EtherCAT通信對象

EtherCATec;

//初始化EtherCAT通信

ec.Init();

//發送數據給其他機器人

ec.SendData(1,"Start");

//接收其他機器人數據

stringdata=ec.ReceiveData(2);

//根據接收到的數據執行相應操作

IF(data=="Ready")

{

Robot.MoveToPosition(1);

}在本例中,通過EtherCAT通信對象ec,機器人可以發送和接收數據,實現與其他機器人的通信和協作。當接收到“Ready”信號時,機器人執行移動操作。以上示例展示了SysmacStudio中高級編程技術的應用,包括循環與條件語句的高級應用、子程序與函數的創建與調用、錯誤處理與調試技巧,以及網絡通信與多機器人協作。通過這些技術,可以構建更加復雜和高效的工業機器人程序。5實際案例分析5.1搬運機器人編程實例5.1.1概述搬運機器人在工業自動化中扮演著關鍵角色,用于物料搬運、貨物堆垛等任務。SysmacStudio(Omron)提供了強大的編程環境,支持多種編程語言,如梯形圖、結構文本等,以實現對機器人精確控制。5.1.2示例:物料搬運任務假設我們需要編程一個搬運機器人,從生產線A搬運物料到生產線B。我們將使用SysmacStudio的結構文本語言來實現這一功能。//定義物料搬運任務的函數

FUNCTIONMoveMaterial:BOOL

VAR_INPUT

SourceLine:INT;//生產線A的位置

TargetLine:INT;//生產線B的位置

END_VAR

VAR_OUTPUT

TaskCompleted:BOOL;

END_VAR

VAR

RobotPosition:INT;//當前機器人位置

RobotStatus:BOOL;//機器人狀態

END_VAR

//主函數

MoveMaterial:=FALSE;

RobotPosition:=0;

RobotStatus:=FALSE;

//檢查機器人狀態

IFRobotStatus=TRUETHEN

//移動到生產線A

IFRobotPosition<>SourceLineTHEN

RobotPosition:=SourceLine;

//假設移動完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

END_IF;

//檢查是否到達生產線A

IFRobotPosition=SourceLineTHEN

//抓取物料

//假設抓取完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

END_IF;

//移動到生產線B

IFRobotPosition<>TargetLineTHEN

RobotPosition:=TargetLine;

//假設移動完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

END_IF;

//檢查是否到達生產線B

IFRobotPosition=TargetLineTHEN

//釋放物料

//假設釋放完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

MoveMaterial:=TRUE;

END_IF;

END_IF;5.1.2.1解釋函數定義:MoveMaterial函數接收生產線A和生產線B的位置作為輸入,輸出一個布爾值表示任務是否完成。變量聲明:SourceLine和TargetLine分別表示生產線A和生產線B的位置,RobotPosition表示機器人當前的位置,RobotStatus表示機器人是否準備好執行任務。任務流程:首先檢查機器人是否準備好,然后移動到生產線A抓取物料,再移動到生產線B釋放物料,最后更新任務完成狀態。5.2焊接機器人編程實例5.2.1概述焊接機器人用于自動化焊接過程,提高焊接質量和生產效率。在SysmacStudio中,可以通過編程控制焊接機器人的運動軌跡和焊接參數。5.2.2示例:焊接任務我們將編程一個焊接機器人,按照預設的軌跡進行焊接。使用SysmacStudio的梯形圖語言來實現。5.2.2.1梯形圖示例WeldingRobotLadderDiagram5.2.2.2解釋啟動條件:當焊接任務啟動信號(StartSignal)為真時,機器人開始執行焊接任務。運動控制:通過調用預設的運動軌跡指令(MoveToPosition),控制機器人移動到焊接位置。焊接參數:設置焊接電流、電壓等參數(WeldCurrent,WeldVoltage),確保焊接質量。結束條件:當焊接完成信號(WeldComplete)為真時,機器人停止焊接,等待下一個任務。5.3裝配機器人編程實例5.3.1概述裝配機器人用于精確裝配零件,提高裝配效率和精度。SysmacStudio提供了豐富的編程工具,可以實現復雜的裝配邏輯。5.3.2示例:零件裝配任務我們將編程一個裝配機器人,從零件庫中取出零件并裝配到產品上。使用SysmacStudio的結構文本語言來實現。//定義零件裝配任務的函數

FUNCTIONAssemblePart:BOOL

VAR_INPUT

PartLibrary:INT;//零件庫位置

ProductPosition:INT;//產品位置

END_VAR

VAR_OUTPUT

AssemblyCompleted:BOOL;

END_VAR

VAR

RobotPosition:INT;//當前機器人位置

RobotStatus:BOOL;//機器人狀態

END_VAR

//主函數

AssemblePart:=FALSE;

RobotPosition:=0;

RobotStatus:=FALSE;

//檢查機器人狀態

IFRobotStatus=TRUETHEN

//移動到零件庫

IFRobotPosition<>PartLibraryTHEN

RobotPosition:=PartLibrary;

//假設移動完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

END_IF;

//檢查是否到達零件庫

IFRobotPosition=PartLibraryTHEN

//抓取零件

//假設抓取完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

END_IF;

//移動到產品位置

IFRobotPosition<>ProductPositionTHEN

RobotPosition:=ProductPosition;

//假設移動完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

END_IF;

//檢查是否到達產品位置

IFRobotPosition=ProductPositionTHEN

//裝配零件

//假設裝配完成后,機器人狀態更新為TRUE

RobotStatus:=TRUE;

AssemblePart:=TRUE;

END_IF;

END_IF;5.3.2.1解釋函數定義:AssemblePart函數接收零件庫位置和產品位置作為輸入,輸出一個布爾值表示裝配任務是否完成。變量聲明:PartLibrary和ProductPosition分別表示零件庫和產品的位置,RobotPosition表示機器人當前的位置,RobotStatus表示機器人是否準備好執行任務。任務流程:首先檢查機器人是否準備好,然后移動到零件庫抓取零件,再移動到產品位置裝配零件,最后更新裝配任務完成狀態。通過以上實例,可以看出SysmacStudio(Omron)在工業機器人編程中的應用廣泛,能夠支持不同類型的機器人任務編程。6項目實踐與優化6.1項目規劃與編程策略在工業機器人編程中,使用SysmacStudio(Omron)進行項目規劃和編程策略的制定是至關重要的。SysmacStudio是一個集成開發環境(IDE),專門用于OmronPLC和機器人的編程。它提供了豐富的工具和功能,幫助工程師們高效地完成項目。6.1.1項目規劃項目規劃階段,我們需要考慮以下幾個關鍵點:需求分析:明確項目目標,理解客戶的需求,確定機器人的工作流程和任務。硬件配置:選擇合適的機器人型號,確定傳感器、執行器等外圍設備的配置。軟件設計:設計控制邏輯,規劃程序結構,確保程序的可讀性和可維護性。安全考量:確保機器人操作符合安全標準,設計緊急停止和安全防護機制。6.1.2編程策略在編程策略上,SysmacStudio支持多種編程語言,包括梯形圖(LD)、結構文本(ST)、功能塊圖(FBD)等。選擇合適的編程語言對于提高編程效率和程序質量至關重要。例如,對于復雜的邏輯控制,結構文本(ST)可能更為適用,因為它更接近于高級編程語言,易于理解和調試。6.1.2.1示例:使用結構文本(ST)實現機器人抓取動作VAR

RobotPos:ARRAY[1..3]OFREAL;

TargetPos:ARRAY[1..3]OFREAL:=[100.0,200.0,300.0];

IsMoving:BOOL:=FALSE;

MoveSpeed:REAL:=50.0;

END_VAR

PROCEDUREMoveRobotTOTargetPos

VAR

i:INT;

END_VAR

FORi:=1TO3DO

WHILEABS(RobotPos[i]-TargetPos[i])>1.0DO

IFRobotPos[i]<TargetPos[i]THEN

RobotPos[i]:=RobotPos[i]+MoveSpeed;

ELSE

RobotPos[i]:=RobotPos[i]-MoveSpeed;

END_IF;

IsMoving:=TRUE;

WAIT0.1;

END_WHILE;

END_FOR;

IsMoving:=FALSE;

END_PROC

MoveRobotTOTargetPos;此示例中,我們定義了一個MoveRobot過程,用于控制機器人移動到目標位置。通過循環和條件語句,機器人可

溫馨提示

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

評論

0/150

提交評論