摘 要:針對機器人與PLC數(shù)據(jù)傳送時硬件接線多、成本高的問題,提出開放式通信實現(xiàn)機器人與PLC數(shù)據(jù)傳輸?shù)姆椒ā嶒灂r,開放式通信以機器人作為客戶端,PLC作為服務(wù)端,通過建立連接、發(fā)送和接收數(shù)據(jù)、斷開連接,來實現(xiàn)PLC與機器人之間的數(shù)據(jù)傳輸。實驗表明:開放式通信方式不同于接線連接方式,不同于Profinet通信方式,無需連接多根線纜,也無需擴展機器人Profinet通信選項,即可穩(wěn)定、實時實現(xiàn)PLC與機器人間的數(shù)據(jù)傳輸。
關(guān)鍵詞:開放式通信;數(shù)據(jù)傳輸;接線連接;Profinet通信;PLC;機器人
中圖分類號:TP242.2 文獻標識碼:A 文章編號:2095-1302(2025)02-00-03
0 引 言
機器人自動產(chǎn)線在進行生產(chǎn)時,需要PLC與機器人進行數(shù)據(jù)傳輸,來實現(xiàn)兩者之間數(shù)據(jù)傳輸?shù)哪康?。PLC與機器人常用的數(shù)據(jù)傳輸方式有:接線連接方式、Profinet通信方式。接線連接方式是指:PLC的I/O模塊與機器人擴展I/O模塊端口進行硬件接線,PLC與機器人通過控制相應(yīng)的輸入輸出點位實現(xiàn)兩者之間的數(shù)據(jù)傳輸[1-2]。接線連接方式的優(yōu)點是:兩者輸入輸出點位通過接線一一對應(yīng),數(shù)據(jù)傳輸清晰明了。其缺點是:每個點位數(shù)據(jù)傳輸均需硬件接線,受硬件條件限制,信號傳輸點位數(shù)量有限;當硬件接線出現(xiàn)破損或斷裂時,信號傳輸會中斷。Profinet通信是一種以太網(wǎng)通信系統(tǒng),是新一代基于工業(yè)以太網(wǎng)技術(shù)的自動化總線標準[3-4],它基于工業(yè)以太網(wǎng),具有很好的實時性,可以直接連接現(xiàn)場設(shè)備,使用組件化設(shè)計,支持分布式自動化控制方式[5]。該通信方式要求通過網(wǎng)線連接機器人與PLC,機器人需要預(yù)裝Profinet軟件包。機器人端對I/O進行配置,在示教器端對Profinet組件進行地址映射。PLC端導(dǎo)入機器人的GSD文件,將機器人作為PLC的分布式I/O進行組態(tài)[6]。PLC與機器人的IP地址設(shè)置在同一網(wǎng)段下,兩者通過Profinet協(xié)議通信,實現(xiàn)數(shù)據(jù)傳輸。Profinet通信的優(yōu)點是:硬件方面僅需通過一根網(wǎng)線連接PLC與機器人網(wǎng)口,無需在兩者的輸入輸出點位之間再接線。其缺點是:需要擴展對應(yīng)的Profinet通信選項,成本較高。
1 開放式通信
開放式通信通過以太網(wǎng)發(fā)送或讀取數(shù)據(jù),適用于與第三方設(shè)備的通信。通過開放式用戶通信,PLC可以使用集成的PN/IE接口進行數(shù)據(jù)交換。開放式用戶通信的主要特點是在所傳送的數(shù)據(jù)結(jié)構(gòu)方面具有高度的靈活性[7-8]。這就允許CPU與任何通信設(shè)備進行開放式數(shù)據(jù)交換,通信伙伴可以是兩個PLC,也可以是PLC和相應(yīng)的第三方設(shè)備,前提是這些設(shè)備支持該集成接口可用的連接類型。由于此通信僅由用戶程序中的指令進行控制,因此可以在程序中建立和終止事件驅(qū)動型連接。在運行期間,也可以通過用戶程序修改連接。
2 硬件搭建與編程
2.1 硬件搭建
選用ABB IRB120型號機器人、西門子1200系列PLC,觸摸屏通過博圖仿真軟件實現(xiàn)。PLC與機器人編寫工藝程序。通過PLC向機器人發(fā)送工序指令,控制機器人自動產(chǎn)線執(zhí)行相應(yīng)工序。例如PLC發(fā)送A1工序,機器人接收到數(shù)據(jù)后,機器人自動產(chǎn)線執(zhí)行A1工序。A1工序執(zhí)行過程中,機器人需要發(fā)送數(shù)據(jù)給PLC,在觸摸屏界面顯示相關(guān)狀態(tài)信息。
圖1所示為控制系統(tǒng)結(jié)構(gòu)。
2.2 編寫程序
2.2.1 建立連接
PLC與機器人開放式通信的實現(xiàn)有兩種方式。一種方式是以機器人作為客戶(Client)端,PLC作為服務(wù)(Server)端。另一種方式是以PLC作為客戶端,機器人作為服務(wù)端。本實驗以機器人作為服務(wù)端,PLC作為客戶端。
PLC開放式通信支持TCP/IP通信、ISO_on_TCP通信和UDP通信。機器人Socket通信是一種無協(xié)議的TCP/IP通信,在微軟環(huán)境下稱為Socket通信。PLC通過TCON指令,機器人通過socketcreate、socketconnect指令,建立PLC與機器人間的連接。機器人無論是LAN3口還是WAN口都可以實現(xiàn)與PLC的開放式通信。機器人與PLC地址要在同一網(wǎng)段,并設(shè)定通信端口號。圖2所示為PLC建立連接程序。表1為機器人建立連接程序。
2.2.2 發(fā)送接收數(shù)據(jù)
PLC發(fā)送和接收的數(shù)據(jù)可以使用除Bool和Array of Bool外的所有數(shù)據(jù)類型。通過Socket通信可以接收發(fā)送指定數(shù)據(jù),包括Sting字符串、Byte數(shù)組等。這里以傳送String數(shù)據(jù)類型為例,進行實驗。當PLC發(fā)送不同String值時,先斷開連接,后建立連接,再發(fā)送String數(shù)據(jù)。圖3所示為PLC發(fā)送數(shù)據(jù)程序。表2為機器人接收數(shù)據(jù)程序。
PLC通過TSEND指令輸入要發(fā)送的數(shù)據(jù),機器人執(zhí)行socketreceive指令進行數(shù)據(jù)接收。若機器人接收不到數(shù)據(jù),需核對PLC與機器人數(shù)據(jù)類型是否一致。機器人執(zhí)行socketsend指令發(fā)送數(shù)據(jù),PLC端通過TRCV指令進行數(shù)據(jù)接收。通信連接成功建立后,機器人或PLC只能發(fā)送數(shù)據(jù)或接收數(shù)據(jù),無法同時發(fā)送和接收數(shù)據(jù)。
2.2.3 斷開連接
為了保證通信的穩(wěn)定性,每次通信結(jié)束,PLC和機器人均需斷開通信連接,等下次通信時再次連接。若一直保持通信連接狀態(tài),則無法發(fā)送或接收新數(shù)據(jù)。PLC通過TDISCON指令,機器人通過socketclose指令關(guān)閉PLC與機器人的連接。圖4所示為PLC斷開連接程序。表3為機器人斷開連接程序。
通過PLC與機器人之間連續(xù)發(fā)送和接收不同的字符串,來測試開放式通信在兩者之間數(shù)據(jù)傳輸?shù)恼_性、穩(wěn)定性和實時性。繪制觸摸屏作為人機界面,測試PLC與機器人數(shù)據(jù)傳輸是否正確、穩(wěn)定、實時。按下觸摸屏通信接通按鈕,即PLC端做好與機器人端建立通信連接的準備,在PLC傳送值中寫入數(shù)值,機器人執(zhí)行接收數(shù)據(jù)的程序,機器人示教器后臺查看接收數(shù)據(jù)與PLC發(fā)送數(shù)據(jù)是否一致。再次傳送新數(shù)據(jù)時,為保證通信穩(wěn)定,先按下“通信斷開”按鈕,之后重新按下“通信接通”按鈕,由PLC向機器人傳入新的數(shù)據(jù),機器人端再次查看數(shù)據(jù)是否一致。同理,機器人發(fā)送數(shù)據(jù),PLC接收數(shù)據(jù)時,按下觸摸屏“通信接通”按鈕,機器人執(zhí)行發(fā)送數(shù)據(jù)程序,通過觸摸屏查看PLC的接收數(shù)據(jù)與機器人發(fā)送的數(shù)據(jù)是否一致。再次發(fā)送數(shù)據(jù)時,按下“通信斷開”按鈕,之后按下“通信接通”按鈕,機器人輸入要發(fā)送的數(shù)據(jù),執(zhí)行發(fā)送數(shù)據(jù)程序,在觸摸屏上觀察是否接收到新的數(shù)據(jù)。通過以上方法來測驗開放式通信在PLC與機器人數(shù)據(jù)傳輸方面的效果。通過觸摸屏進行操作與實時監(jiān)控,系統(tǒng)運行狀態(tài)一目了然[9]。圖5所示為觸摸屏顯示界面。表4和表5分別為機器人接收數(shù)據(jù)實驗、機器人發(fā)送數(shù)據(jù)實驗。
在機器人自動產(chǎn)線進行實驗發(fā)現(xiàn):PLC端發(fā)送A1、B1、C1工序信息,機器人端可以實時接收到數(shù)據(jù),且機器人自動產(chǎn)線執(zhí)行A1工序。執(zhí)行A1工序時,機器人向PLC發(fā)送A1數(shù)據(jù),觸摸屏接收數(shù)據(jù)界面顯示A1工序相關(guān)內(nèi)容。A1工序執(zhí)行完后,機器人自動產(chǎn)線執(zhí)行B1工序,觸摸屏接收數(shù)據(jù)界面顯示B1工序相關(guān)內(nèi)容。C1工序執(zhí)行顯示流程同上。把發(fā)送數(shù)據(jù)改為純數(shù)字、純字符,或者數(shù)字字符的組合進行實驗,PLC和機器人均能實時接收到正確數(shù)據(jù)。
實驗結(jié)果表明:機器人可以接收來自PLC發(fā)送的字符串,字符串可為純字符、純數(shù)字、字符數(shù)字組合、字符特殊符號組合、數(shù)字特殊符號組合,并且可以連續(xù)實時接收。PLC同樣可以實時接收來自機器人的數(shù)據(jù)。上述實驗傳輸數(shù)據(jù)為字符串類型,機器人和PLC若想接收數(shù)字類型或Bool類型數(shù)據(jù),只需要編寫數(shù)據(jù)處理程序即可實現(xiàn)。
4 數(shù)據(jù)傳輸方式對比實驗
為與開放式通信數(shù)據(jù)傳送方式進行直觀對比,本文對采用接線方式和Profinet通信方式的數(shù)據(jù)傳輸進行實驗。
4.1 接線方式數(shù)據(jù)傳輸
工業(yè)機器人安裝有I/O擴展模塊,共16個輸入輸出口,與PLC的輸入輸出模塊一一對應(yīng)[10]。機器人示教器在DeviceNetDevice中添加了工業(yè)機器人的I/O擴展模塊,控制面板中配置有相應(yīng)信號接口。當以Bool量形式進行數(shù)據(jù)傳輸時,只需根據(jù)電路圖把機器人I/O擴展模塊與PLC逐個對應(yīng),編寫程序觸發(fā)對應(yīng)點位即可。這種傳輸方式中,數(shù)據(jù)只能以0、1形式傳輸。以8個Bool量組成1個字節(jié),或者以16個Bool量組成1個字,機器人端以數(shù)據(jù)組形式實現(xiàn)與PLC端字節(jié)或字的傳輸。這種數(shù)據(jù)傳輸方式只能傳輸一定范圍之間的數(shù)據(jù),不能進行字符、字符串或特殊符號的傳輸。
4.2 Profinet通信方式數(shù)據(jù)傳輸
機器人需要開通Profinet軟件包,并在機器人端設(shè)置ProfiNet work的IP地址。在示教器配置系統(tǒng)參數(shù),建立通信板卡,添加PN從站,從站配置16個輸出字節(jié)、16個輸入字節(jié)。在控制面板配置界面配置信號,信號可以配置為Bool量,也可以配置為字節(jié)或者字。PLC安裝機器人GSD文件,將機器人的IP設(shè)置為與PLC相同的網(wǎng)段,發(fā)送與接收數(shù)據(jù)包,并把PLC端地址與機器人端地址進行映射。這種數(shù)據(jù)傳送方式可以傳送Bool量、字節(jié)或者字。該方法可以在從站配置多個輸入輸出字節(jié),相比接線式數(shù)據(jù)傳輸更為靈活。但該方法依舊不能進行字符、字符串或特殊符號的傳輸。
5 結(jié) 語
實驗發(fā)現(xiàn),利用開放式通信,通過建立連接、傳輸數(shù)據(jù)、斷開連接的方式,能正確、穩(wěn)定、實時實現(xiàn)PLC與機器人間的數(shù)據(jù)傳輸。該方法與接線連接方式、Profinet通信方式比較,無需連接多根線纜,無需擴展Profinet通信選項,即可實現(xiàn)PLC與機器人間的數(shù)據(jù)傳輸。接線連接方式和Profinet通信方式傳送的數(shù)據(jù)可為Bool量、字節(jié)或者字,但不能進行字符、字符串或特殊符號的傳輸,而開放式通信可以實現(xiàn)字符、字符串或特殊符號的傳輸;也可在PLC與視覺控制器數(shù)據(jù)傳輸、機器人與視覺控制器數(shù)據(jù)傳輸?shù)确矫孢M行開放式通信的應(yīng)用研究。
注:本文通訊作者為張翼風(fēng)。
參考文獻
[1]張俊,劉天宋,陳義偉,等.基于PLC與工業(yè)機器人的碼垛工作站控制系統(tǒng)設(shè)計[J].機電工程技術(shù),2023,52(11):130-133.
[2]饒勇. PLC控制技術(shù)在電氣自動化設(shè)備系統(tǒng)中的應(yīng)用研究[J].中國機械,2023(26):65-68.
[3]康慶陽,王文汛.西門子S7-1500和ET200SP的PROFINET通訊技術(shù)在TBM上的應(yīng)用[J].建筑機械,2022(3):94-97.
[4]雷偉達,李丹,張然. PROFINET通信在玻璃檢測定位系統(tǒng)中的應(yīng)用[J].安徽工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2021,38(3):311-316.
[5]閆菲,李騰,韓松,等.基于ERTEC200P芯片的PROFINET IO工業(yè)以太網(wǎng)接口開發(fā)[J].電氣傳動,2021,51(4):76-80.
[6]張銘元.基于PROFINET的KUKA機器人智能上料系統(tǒng)設(shè)計[J].機械工程與自動化,2022(2):156-157.
[7]陳亮,王維.基于開放式用戶通信的LabVIEW與PLC高速通訊研究[J].信息與電腦(理論版),2020,32(6):162-165.
[8]呂鑫平,彭晉民,戴福全,等.基于RSI的工業(yè)機器人開放式控制系統(tǒng)設(shè)計[J].機械制造與自動化,2020,49(1):130-133.
[9]付建彬.基于S7-1200PLC的機器人自動分揀控制系統(tǒng)設(shè)計[J].韶關(guān)學(xué)院學(xué)報,2021,42(9):31-35.
[10]張翼風(fēng),韓建海,劉繼鵬,等.多軸協(xié)同運動機器人焊接工作站設(shè)計[J].機械設(shè)計與制造,2020(5):249-252.
作者簡介:張翼風(fēng)(1993—),男,碩士,助教,研究方向為機器人控制技術(shù)。
馬澄宇(1990—),男,碩士,助教,研究方向為數(shù)字化設(shè)計與制造。
收稿日期:2024-01-22 修回日期:2024-02-26