abb機(jī)器人與三菱3U的232串口通信設(shè)置_第1頁
abb機(jī)器人與三菱3U的232串口通信設(shè)置_第2頁
abb機(jī)器人與三菱3U的232串口通信設(shè)置_第3頁
abb機(jī)器人與三菱3U的232串口通信設(shè)置_第4頁
abb機(jī)器人與三菱3U的232串口通信設(shè)置_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第三章:串口通信本章節(jié)學(xué)習(xí)內(nèi)容:

一.串口通信基礎(chǔ)

二.ABB工業(yè)機(jī)器人應(yīng)用解析三.三菱FX3U-232-BD應(yīng)用解析第三章:串口通信學(xué)習(xí)目標(biāo):

一.理解串口通信基礎(chǔ)

二.掌握ABB機(jī)器人的串口程序與相關(guān)配置三.掌握三菱PLC的串口使用四.實現(xiàn)機(jī)器人與PLC之間的數(shù)據(jù)收發(fā)1.串口是什么?

串口,即串行接口。是一種可以將接受來自CPU的并行數(shù)據(jù)字符轉(zhuǎn)換為連續(xù)的串行數(shù)據(jù)流發(fā)送出去的連接口。一、串口通信基礎(chǔ)2.什么是RS-232C?也稱標(biāo)準(zhǔn)串口,是目前最常用的一種串行通訊接口。它是1970年由美國電子工業(yè)協(xié)會(EIA)聯(lián)合貝爾系統(tǒng)、調(diào)制解調(diào)器廠家及計算機(jī)終端生產(chǎn)廠家共同制定的用于串行通訊的標(biāo)準(zhǔn)。3.RS-232C有什么特點?

RS-232采用不平衡傳輸方式,即所謂單端通信。由于其發(fā)送電平與接收電平的差僅為2V至3V左右,所以其共膜抑制能力差,再加上雙絞線上的分布電容,其傳輸距離最大約為15米,最高速率為20kb/s4.RS-232C是如何收發(fā)數(shù)據(jù)的?

RS-232C采用負(fù)邏輯規(guī)定邏輯電平,-3V到-15V為邏輯“1”電平,+3V到+15V為“0”電平。二、ABB工業(yè)機(jī)器人應(yīng)用解析1.串口通信端口介紹DSQC1003下的COM1就是用來作為串口通信的接口,是一個9針公頭接口,意思就是另一端必須用母頭進(jìn)行連接。COM1的定義符合EIA-RS-232C標(biāo)準(zhǔn)(針腳定義如下圖)。需要注意的是,不要帶電插拔串口,否則容易損壞串口芯片。CONSOLE是作為調(diào)試接口,在這里不作講解。擴(kuò)展板卡用于擴(kuò)展其他的通信接口,例如PROFINET。123公頭針腳編號定義1DCD:接收線信號檢測2RXD:接受信號3TXD:發(fā)送信號4DTR:數(shù)據(jù)終端準(zhǔn)備好5GND:信號地6DSR:數(shù)據(jù)裝置就緒7RTS:請求發(fā)送8CTS:清除請求9RI:振鈴指示針腳編號:二、ABB工業(yè)機(jī)器人應(yīng)用解析2.串口相關(guān)參數(shù)設(shè)定

ABB工業(yè)機(jī)器人要與其他設(shè)備進(jìn)行串口通信,必須雙方的參數(shù)設(shè)定一致。下面給大家講解ABB機(jī)器人如何設(shè)定相應(yīng)參數(shù)。1.打開路徑:控制面板-配置-Communication-SerialPort-COM1二、ABB工業(yè)機(jī)器人應(yīng)用解析2.串口相關(guān)參數(shù)設(shè)定

設(shè)定串口的名稱關(guān)聯(lián)端口,此處關(guān)聯(lián)COM1波特率奇偶校驗數(shù)據(jù)長度停止位二、ABB工業(yè)機(jī)器人應(yīng)用解析2.串口相關(guān)參數(shù)設(shè)定

流控制,選擇None工作形式,選擇Full(雙工模式)二、ABB工業(yè)機(jī)器人應(yīng)用解析2.串口相關(guān)參數(shù)設(shè)定

各參數(shù)說明(了解即可,不作深入探討):

Baudrate(波特率):表示每秒鐘傳送的碼元符號的個數(shù),單位:bps

例如:9600bps:表示一秒傳輸9600位,即傳輸一位約0.1ms。

Parity(奇偶校驗):分為奇校驗和偶校驗。是根據(jù)被傳輸?shù)囊唤M二進(jìn)制碼的數(shù)位中“1”的個數(shù)是奇數(shù)還是偶數(shù)來進(jìn)行驗證。NumberofBits(數(shù)據(jù)長度):表示實際傳輸?shù)臄?shù)據(jù)長度。雖然一個字節(jié)等于8位,但是有些格式的編碼并不是采用8位的,如標(biāo)準(zhǔn)的ASCⅡ碼是用7位表示的。所以選擇數(shù)據(jù)的長度取決于收發(fā)什么編碼。一般情況使用的話都選擇8位。

例如:PLC的數(shù)據(jù)長度選擇7位。那么發(fā)送接受數(shù)據(jù)的最大值只有127,假設(shè)機(jī)器人發(fā)送200,換成二進(jìn)制為:11001000,那么PLC只能接收到1001000,換成十進(jìn)制為72.NumberofStopBits(停止位):停止位在收發(fā)數(shù)據(jù)的最后一位,用于表示傳送結(jié)束。FlowControl(流控制):控制發(fā)送端數(shù)據(jù)傳送,避免出現(xiàn)緩沖區(qū)已滿而出現(xiàn)的數(shù)據(jù)丟失情況。Duplex(工作模式):同時發(fā)送還是單向發(fā)送3.相關(guān)指令講解二、ABB工業(yè)機(jī)器人應(yīng)用解析(1).串口通道設(shè)置指令說明:

①.Close關(guān)閉串行通道

關(guān)閉串行通道,且必須在讀取或?qū)懭胫爸匦麓蜷_。如果串行通道已經(jīng)關(guān)閉,則忽略該指令。

使用方法:Closeiodev1;//關(guān)閉iodev1的通道。

②.Open用于打開文件或串行通道,以進(jìn)行讀取或?qū)懭搿?/p>

打開串行通道,以便有可能進(jìn)行讀取或?qū)懭?。(?shù)據(jù)類型iodev)。

使用方法:Open“com1”,iodev1\Bin;//以二進(jìn)制打開串行通道com1

③.ClearIOBuff清除串行通道的輸入緩存。

刪除輸入串行通道的所有緩存字符。下一個讀取指令將等待來自通道的新輸入。

使用方法:ClearIOBuffiodev1;//清除iodev1中的所有緩沖字符。3.相關(guān)指令講解二、ABB工業(yè)機(jī)器人應(yīng)用解析(2).串行通道設(shè)置指令示例:

PROCConnectPLC()//與PLC收發(fā)數(shù)據(jù)的例行程序

Closeiodev1;//關(guān)閉串行通訊數(shù)據(jù)iodev1,iodev1的數(shù)

據(jù)類型為iodev。

Open“COM1:”,iodev1\Bin;//打開串行通訊數(shù)據(jù)iodev1,跟COM1口進(jìn)

行關(guān)聯(lián),并規(guī)定以二進(jìn)制bin的形式進(jìn)行

接收傳送

ClearIOBuffiodev1;//清除里面的殘余數(shù)據(jù),確保數(shù)據(jù)無誤。

ENDPROC創(chuàng)建串口通信程序的三個步驟:一關(guān)閉二打開三清緩沖。還有一點需要注意的是,每次接受數(shù)據(jù)前,需要先清除緩沖,保證接受到的是最新的數(shù)據(jù)。3.相關(guān)指令講解二、ABB工業(yè)機(jī)器人應(yīng)用解析(3).數(shù)據(jù)收發(fā)指令說明:

①.ReadBin從串行通道讀取一個字節(jié)

程序執(zhí)行進(jìn)入鞥帶,直到可以從串行通道讀取一個字節(jié)(8位)。該函數(shù)對基于二進(jìn)制和字符的串行通道起作用。

使用方法:byte{1}:=ReadBin(iodev1);//讀取iodev1中的一個字節(jié)。

②.BitCheck檢查字節(jié)數(shù)據(jù)中的特定位是否設(shè)置完畢

用于檢查是否將指定byte數(shù)據(jù)中的指定設(shè)置為TRUE。

使用方法:BitCheck(byte{1},1)=TRUE;//檢查byte{1}中的第一位是否為TRUE③.WriteBin寫入到串行通道

用于將若干字節(jié)寫入到二進(jìn)制串行通道。該指令僅可用于為二進(jìn)制寫入而打開的串行通道。

使用方法:WriteBiniodev1,byte,5;//將byte中的數(shù)據(jù)發(fā)送到iodev1通道上3.相關(guān)指令講解二、ABB工業(yè)機(jī)器人應(yīng)用解析(4).數(shù)據(jù)收發(fā)程序示例:

PROCConnectPLC()//串口程序Closeiodev1;

Open

"COM1:",iodev1\Bin;

ClearIOBuffiodev1;R_byte{1}:=ReadBin(iodev1);//讀取iodev1中的第一個字節(jié),將其存入R_byte{1}中R_byte{2}:=ReadBin(iodev1);//讀取iodev1中的第二個字節(jié),將其存入R_byte{2}中 Flag1:=BitCheck(R_byte{1},1);//檢查第一個位是否為TRUES_byte{1}:=1;//S_byte是byte數(shù)據(jù)類型S_byte{2}:=33;//將兩個數(shù)據(jù)賦值

WriteBiniodev1,S_byte,2;//將S_byte數(shù)據(jù)的兩個字節(jié)傳送

到iodev1中再發(fā)送給PLCENDPROCS_byte要用數(shù)組。接收數(shù)據(jù)前需清除緩沖,避免接收到錯誤數(shù)據(jù)二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

使用串口程序有三種方法: 1.需要時調(diào)用 2.中斷調(diào)用 3.多任務(wù)運行當(dāng)機(jī)器人在特定位置需要收發(fā)數(shù)據(jù)的時候,再調(diào)用通信程序通過中斷程序,可以通過信號觸發(fā)在特定條件調(diào)用通信程序,也可以通過定時觸發(fā)在特定時間調(diào)用通信程序。開通多任務(wù)選項:623-1Multiasking,可以讓通信程序放在一個單獨的任務(wù)中執(zhí)行,也可以設(shè)置為后臺運行程序?qū)崿F(xiàn)實時通信。二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(1)需要時調(diào)用簡單來說就是在程序特定位置插入通信程序即可。

(2)中斷調(diào)用

①.特定條件調(diào)用:

②.特定時間調(diào)用:二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(3)中斷相關(guān)指令

①.ISleep停用中斷

用于暫時停用單個中斷。在停用期間,無法調(diào)用該中斷程序,直至已通過指令I(lǐng)Watch,重新啟用中斷。

使用方法:ISleepIntno1;//停用Intno1中斷程序。

②.IWatch激活中斷

用于啟動通過ISleep停用的中斷。

使用方法:IWatchIntno1;//激活I(lǐng)ntno1中斷程序。

③.ITimer定時中斷

用于下達(dá)和啟用定時中斷的指令。

使用方法:ITimer1,Intno1;//每隔一秒啟用一次Intno1中斷程序。二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(4)中斷調(diào)用通信程序示例: PROCmain() Ideteleintno1; CONNECTintno1WITHtConnectPLC; Itimer0.1,intno1; ENDPROC

TRAPtConnectPLC ISleepintno1;//休眠intno1 rConnectPLC;//通訊程序,收發(fā)PLC的數(shù)據(jù) IWatchintno1;//激活intno1 ENDTRAP二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(5)多任務(wù)使用方法:

在仿真軟件添加選項的時候,在EngineeringTools下可以找到623-1二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(5)多任務(wù)使用方法:添加路徑:控制面板-配置-Controller-Task二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(5)多任務(wù)使用方法:進(jìn)入界面后,點擊添加二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(5)多任務(wù)使用方法:1.任務(wù)名稱只要修改兩個參數(shù)即可2.任務(wù)類型任務(wù)類型有3種:1.Normal:普通2.Static:靜態(tài)3.Semistatic:半靜態(tài)下一頁詳細(xì)講解二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(5)多任務(wù)使用方法:STATIC和SEMISTATIC的區(qū)別在于是否重新啟動任務(wù)。二、ABB工業(yè)機(jī)器人應(yīng)用解析4.使用方法

(5)多任務(wù)使用方法:創(chuàng)建多任務(wù)要先將類型改為:Normal,重啟后在新建的任務(wù)上寫程序,當(dāng)寫好了想要后臺運行時,就將類型改為SeMistatic二、ABB工業(yè)機(jī)器人應(yīng)用解析5.多任務(wù)之間數(shù)據(jù)如何關(guān)聯(lián)

(1)兩個任務(wù)之間,如何進(jìn)行數(shù)據(jù)同步?

例:串口通訊使用多任務(wù)進(jìn)行后臺運行,那么在后臺運行所收到的數(shù)據(jù)如何傳遞到另一個任務(wù)?名稱相同,存儲類型改為:可變量三、三菱PLC應(yīng)用解析1.硬件介紹

(1)FX3U-232BD模塊介紹:

可用于在RS232C設(shè)備之間的數(shù)據(jù)傳輸,如個人電腦,條形碼閱讀機(jī)和打印機(jī)。也可以用于在RS232C設(shè)備之間使用專用協(xié)議進(jìn)行數(shù)據(jù)傳輸,關(guān)于專用協(xié)議的細(xì)節(jié),參考FX-485PC-IF手冊。 ABB機(jī)器人與三菱PLC進(jìn)行RS232C數(shù)據(jù)傳送時,使用無協(xié)議通信。三、三菱PLC應(yīng)用解析1.硬件介紹

(2)FX3U-232BD安裝位置: FX3U-232BD安裝與PLC基本單元的左側(cè),如下圖所示:三、三菱PLC應(yīng)用解析1.硬件介紹

(3)FX3U-232BD針腳定義:

三、三菱PLC應(yīng)用解析2.參數(shù)配置

(1)打開GXWork2軟件后,如下圖所示,打開參數(shù)配置界面:

打開軟件后,在左側(cè)工程界面找到PLC參數(shù),雙擊打開后,找到PLC系統(tǒng)設(shè)置(2)。三、三菱PLC應(yīng)用解析2.參數(shù)配置

(1)各參數(shù)講解:

選擇CH1打鉤參數(shù)都設(shè)定完成后,點擊檢查,再點擊設(shè)置結(jié)束。選擇無協(xié)議通信這四項需要跟機(jī)器人設(shè)定一致,具體說明點這里可選可不選,但是打鉤之后,必須報頭或報尾要一致才能接收數(shù)據(jù)三、三菱PLC應(yīng)用解析3.特殊軟元件講解

(1)使用串口相關(guān)的特殊位軟元件:

必須記住的是M8122(發(fā)送請求)、M8123(接受結(jié)束)、M8161(低八位模式)注:當(dāng)M8123為ON時,不能接收數(shù)據(jù),必須先復(fù)位才能再次接收當(dāng)不使用時,先接收低

溫馨提示

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

評論

0/150

提交評論