
摘 要:Modbus-TCP是運行在TCP/IP上的Modbus傳輸協(xié)議。應(yīng)用Modbus-TCP構(gòu)建的工業(yè)太網(wǎng)絡(luò)具有組網(wǎng)簡單,通信高效、穩(wěn)定的特點,因而在工業(yè)工程中得到了較多的應(yīng)用。該文以Modebus-TCP通信在全國工業(yè)機器人技術(shù)大賽中的具體應(yīng)用為例,詳細闡述了Modebus-TCP在以西門子自動化設(shè)備為基礎(chǔ)的工業(yè)工程中的一般用法。
關(guān)鍵詞:TIA Portal;Modbus-TCP;S7-1200 PLC
前言
西門子TIA Portal全集成自動化軟件是業(yè)內(nèi)首個采用統(tǒng)一工程組態(tài)和軟件項目環(huán)境的自動化軟件,適用于西門子所有自動化工程任務(wù),功能非常強大。目前,國內(nèi)還在廣泛使用的西門子早期產(chǎn)品S7-200 PLC系列不能在該系統(tǒng)平臺上應(yīng)用。隨著西門子S7-1200 PLC逐漸替代S7-200,TIA Portal軟件系統(tǒng)必將在國內(nèi)得到廣泛使用。
Modbus-TCP協(xié)議是運行在TCP/IP上的Modbus報文傳輸協(xié)議。通過此協(xié)議,控制器相互之間可以通過工業(yè)以太網(wǎng)和其他設(shè)備之間通信。互聯(lián)網(wǎng)編號分配管理機構(gòu)給協(xié)議賦予的TCP編口號為502。在全國工業(yè)機器人技術(shù)大賽系統(tǒng)中使用的PLC為S7-1200系列,因此必需用TIA Portal軟件來為硬件組態(tài)及進行系統(tǒng)程序開發(fā)和調(diào)試。系統(tǒng)中S7-1200 PLC為ModbusTcp Server,調(diào)用 “MB_SERVER”指令處理客戶機的連接請求、接收Modbus功能的請求并發(fā)送響應(yīng)。
1 工業(yè)機器人技術(shù)大賽系統(tǒng)簡介
該系統(tǒng)由工業(yè)機器人、AGV小車、生產(chǎn)流水線、視覺識別單元、立體庫、碼垛機、控制柜等設(shè)備組成。主控PLC安裝在控制柜中,采用西門子1215C DC/DC/DC型S7-1200 PLC,擴展了3個I/O模塊。與主控PLC安裝在一起的還有一個思博康8口導(dǎo)軌式非網(wǎng)管型工業(yè)以太網(wǎng)交換機。系統(tǒng)中的S7-1200 PLC、工業(yè)機器人單元、視覺識別單元均支持Modbus-TCP通信協(xié)議,設(shè)備上都帶有RJ45連接口。通過網(wǎng)線及交換機將PLC與工業(yè)機器人單元及視覺識別單元等自動化設(shè)備連接構(gòu)成工業(yè)以太網(wǎng)。他們之間就可以使用Modbus-TCP協(xié)議進行數(shù)據(jù)傳輸,其中S7-1200 PLC為數(shù)據(jù)通信中心,可以中轉(zhuǎn)其他設(shè)備之間的數(shù)據(jù)。
2 系統(tǒng)設(shè)計
2.1 系統(tǒng)硬件組態(tài)
西門子TIA Portal是一款統(tǒng)一工程組態(tài)和軟件項目環(huán)境的自動化軟件,借助該工程技術(shù)軟件平臺,我們能夠快速、直觀地開發(fā)和調(diào)試自動化系統(tǒng)。軟件中工程項目建立后,需要先進行硬件組態(tài),再進行編程等其他工作。本例中需要對S7-1200 PLC主/從站、變頻器、觸摸屏進行硬件組態(tài),工業(yè)機器人單元和視覺識別單元無需硬件組態(tài)。
2.2 IP地址設(shè)定
TIA Portal可以非常方便的為項目中組態(tài)的各個硬件分配IP地址。這是使用Modbus-TCP通信的必需步驟,要設(shè)計好項目中工業(yè)以太網(wǎng)內(nèi)的所有網(wǎng)絡(luò)設(shè)備的IP地址以及名稱。這里的名稱必須與硬件組態(tài)時的設(shè)備名稱一致。本例設(shè)定主控PLC的IP地址為192.168.8.10,工業(yè)機器人的IP為192.168.8.12,視覺識別單元的IP地址為192.168.8.3。網(wǎng)絡(luò)中所有設(shè)備地址必須在同一網(wǎng)段內(nèi)。
2.3 通信設(shè)備數(shù)據(jù)讀寫單元規(guī)劃
Modbus-TCP通信必需設(shè)計好通信設(shè)備的數(shù)據(jù)讀寫區(qū)域才能正確的發(fā)送和接收數(shù)據(jù)。本例中主控PLC為通信中心,它可以直接與任何下位機通信,而下位機之間的通信需要通過它來中轉(zhuǎn)。
本例中主控PLC與工業(yè)機器人單元通信時,讀取數(shù)據(jù)是把機器人40017地址單元開始的4個字,讀入PLC并存放在P#M3100.0開始的4個字中;主控PLC寫數(shù)據(jù)時,將主控PLC 地址為P#M3100.0開始的11個字寫入工業(yè)機器人地址為40001開始的11字中。主控PLC與視覺識別單元的通信為只讀單工通信, PLC將視覺識別單元地址為41001開始的100個字讀入PLC地址為P#M2000.0開始的100個字中即可。
3 通信程序編制
通過上述設(shè)定和規(guī)劃后,通信部分的程序?qū)⒆兊梅浅:唵巍1纠齅odbus-TCP通信部分的程序如圖1、2所示。
其中,IP_OCTET_1~IP_OCTET_4為下位機IP地址。CONNECT_ID指下位機的ID號。MB_DATA_ADDR數(shù)據(jù)寫入機器人存儲區(qū)域的起始地址。MB_DATA_LEN為寫入的數(shù)據(jù)長度。IP_PORT為Modbus-TCP通信協(xié)議的固定TCP端口號(固定為502)。MB_MODE為讀寫模式,1表示寫入對方,0表示從對方讀。MD_DATA_PTR為數(shù)據(jù)存放區(qū)域。DONE完成信號,BUSY忙信號,ERROR信號,STATUS為狀態(tài)代碼存放地址。
大賽系統(tǒng)中還有一個作為從站的S7-1200 PLC,它與主控PLC之間的Modbus-TCP通信應(yīng)用過程和方法和上述相同,在此不再贅述。
通過實際測試, PLC、工業(yè)機器人單元及視覺識別單元之間的通信順暢,穩(wěn)定,為整個系統(tǒng)的綜合安裝調(diào)試提供了通信保障。
4 結(jié)束語
TIA Portal集成化的工程組態(tài)平臺,提供了大量工程工具和通信協(xié)議,很好的保證了數(shù)據(jù)管理的高度一致性和完整性,使Modebus-TCP這種以太網(wǎng)方式的數(shù)據(jù)傳輸變得非常簡單、實用。實踐證明Modebus-TCP通信以其開放、簡單易用的特點,將越來越多的在工業(yè)網(wǎng)絡(luò)控制系統(tǒng)得到應(yīng)用。
參考文獻
[1]王斌,等.PROFINET總線技術(shù)在西門子TIA博途軟件中的應(yīng)用[J].鍛壓裝備與制造技術(shù),2015(6):79-82.
[2]李宏宇,等.S7-1200 PLC基于Modbus 通信協(xié)議的數(shù)據(jù)采集及遠程傳送應(yīng)用[J].黑龍江冶金,2014(4):31-32.
作者簡介:劉東海(1979-),男,學(xué)士,研究生學(xué)歷,講師,主要從事電子技術(shù)、電氣自動化技術(shù)教學(xué)與研究。