在當今自動化領域,網絡結構已經被廣泛地應用于各行各業的工業環境中,它是構成各類控制系統的基礎,其性能直接影響著系統整體的綜合指標,不同的網絡種類形式如:串口通訊、現場總線、以太網等已在各類場合獲得了驗證和發展,但隨著近年來it技術的迅猛發展,這種格局正在發生著巨大的變化,特別是以太網技術正由商業向工業、上層向低層、低速向高速、非實時向實時、封閉向透明、層次化向扁平化等方面全面發展和延伸,并融合了各類現場總線的技術和協議,再加上低成本的刺激和速度的提高因素,全球各自動化巨頭廠商也不斷推出“e網拉平到底”成功案例,傳統的控制系統卻不得不面對這一強勁的挑戰,以太網進入工業控制領域并融入現場通訊技術已成為現實。
對于未來自動化網絡技術的主角,從現有市場應用角度看,以太網iso/osi七層模型中頂層應用層協議的標準化、通用性和開放性是決定各供貨商設備彼此間是否可具備互操作性的首要條件,應用層協議的標準和開放為不同層次、不同廠商、不同種類的設備實現互聯通信及實現高效的統一管理提供了良好的實現平臺,縱觀西門子工業以太網simatic ie的發展就順應了這一市場的需求和趨勢,simatic ie體系架構如圖1所示。
圖1 simatic ie體系架構圖
simatic ie所遵循的技術發展路線正是全面體現標準化、通用性及開放性這一戰略,它兼顧了效率、實時性、確定性、靈活性等各方面綜合因素,包含了標準以太網和定制以太網,simatic ie基于“tcp/ip+標準化(profinet)+通用性(s7/s5兼容、it、iso等通信)+開放性(開放式ie)”這一模式是對當前工業以太網發展模式的最好詮釋,其中s7通信和s5兼容通信是simatic plc家族的標準通信協議,其應用接口的通信不依賴特定的總線系統,它包含simatic net系統范圍內基于以太網的s7站、s5站和pg/pc之間的相互通信;而開放式ie是指基于s5兼容通信或開放式通信專用的功能塊使用標準協議(tcp native、iso on tcp、udp)堆棧在應用層上實現開放的通訊服務,相當于直接socket訪問的服務功能,通常稱為開放式ie通訊,其數據交換是通過send/receive接口或t blocks接口來實現的,它是基于西門子s7 plc控制層面所集成的以太網服務功能,支持與第三方通訊伙伴用于以太網或tcp/ip的數據流通信;開放式ie通訊為用戶編程提供一個“空應用頂層”的以太網服務來支持tcp/ip端口的自由通訊,適合于二進制或者ascii碼與外部設備進行自由約定協議或特定專用協議的數據通信。
流程工藝
某半導體有限公司作為一家專業從事微處理器mcu、ic以及功率半導體分立器件生產、銷售業務的企業,其公司的ic產品的包裝、貼標、稱重、輸送、檢測分選等后道工序中所包含的檢測采集設備有稱重儀表、標簽打印機、條碼掃描儀、噴碼機、分選儀等,這些第三方設備的共性表現為:設備分布范圍廣且布線成本高、協議繁瑣且各不相同、物理層不統一組網性能差且維護復雜、實時性要求不高且通信量不均等因素,基于上述設備的聯網方案當前常用的不外乎有以下幾種:
(1)模擬量輸入輸出模塊
(3)各類現場總線或設備總線
(5)基于pc base的tcp/ip方案
上述方案中又以串口通信方式最為普遍,如s7-300 plc通過cp340/341來擴充串口聯網功能,但這存在不同物理層(rs232/422/485)和不同協議的限制,勢必會造成擴展多個串口來連接這類設備,使系統成本升高、布線復雜,另外還受到傳輸速率低、通信距離短和維護困難等因素的限制,因此利用工廠范圍內現有共享的以太網公共傳輸通道相比上述解決方案更具備明顯的優勢。
首先基于osi以太網七層模型的低層部分具有統一的網絡介質訪問層,即物理層和數據鏈路層符合ieee 802.3規范,這意味著以太網絡硬件的物理接口和驅動程序層面得到了統一,各類以太網標準端口及線纜的選擇標準及它們組合使用,為以太網端口設備的互聯提供了極大的便利,確保此類設備可快速方便地共享以太網公共傳輸通道的信息。
其次osi以太網模型的中間層部分傳輸層/網絡層,它提供了統一的基于ip的tcp/udp協議,它具有結構簡單標準、網絡資源易整合和支持高速通信的優勢,其中udp是基于ip的簡單快速數據傳輸協議,由于它在發送的數據包中僅加入了少量的管理信息,與tcp/ip相比可獲得更高的數據吞吐量,但它面向數據包的傳輸,而非面向連接的特性,決定了udp協議數據傳輸中存在著不安全的隱患;而rfc1006中的“iso-on-tcp”是tcp協議的一種擴展,它在tcp/ip協議中定義了iso傳輸的屬性,集合了高速通訊和路由兼容性的優勢,支持帶確認的數據塊傳送,具有極高的通信可靠性,但當前僅限于simatic s7家族產品內部所使用,第三方通訊伙伴一般都不支持iso-on-tcp連接,因此面向連接的tcp/ip以太網通訊成為我們首選。
綜合以上闡述可得出采用統一介質訪問層、標準tcp/ip傳輸網絡層和開放應用層的以太網來實現這些第三方通訊設備聯網,是此流程自動化控制的首選方案,因此針對上述工業數據采集領域的現狀,我們制定了基于tcp/ip的以太網通信解決方案,包括設備投資、布線、維護和編程難易程度所產生的總體成本可大為降低,它不單獨占用處理器物理端口和處理資源,在靈活性和可用性方面可有極大的提升,與plc控制層的協同工作效率也得到了提高,降低了維護成本并進一步簡化了網絡結構,并對今后系統功能擴充及升級也帶來了極大的便利,符合各制造商們日益關注的價值主張。
開放式ie功能實現
3.1系統組成
本系統現場設備主要包含有:godex熱敏標簽條碼打印機、metrologic條形碼掃描儀、tcs電子臺秤和輥道秤等等,為滿足這些設備數據處理和控制的要求,采用帶有cp343-1通信處理機的s7-300 plc并充分利用工廠現有的局域網資源,組成一個基于tcp/ip數據流的工業以太網通信方案,以滿足各工藝段的需要,也使s7-300 plc資源得到充分的利用和發揮,系統組成如圖2所示。
圖2系統示意圖
s7-300cp模板的s7應用程序是基于s5兼容接口send/receive來實現開放式ie通信,cp它最多可同時建立16個tcp/ip任務資源的連接,雖然tcp/ip是基于面向數據流通信的服務,而非基于消息的數據包傳輸服務,這就意味著發送的數據沒有任何有用于數據的信息,例如長度、起始和結束信息,接收端只能提供相對應的接收長度和特征符來獲取正確的信息,因此需考慮send/receive收發功能的輸出參數及狀態的判別,來協調雙方的請求和響應以確保雙方可靠通信,另外對于接收方還需注意接收緩沖區數據流的定位問題,總之send/receive接口所集成的基于tcp/ip的socket接口訪問為實現與第三方設備的數據交換提供了靈活多樣服務,基于tcp連接的接口框圖如圖3所示。
圖3 tcp接口框圖
上圖描述了s7-300 plc所帶cp模板與現場tcp/ip設備的連接框架,首先配置s7-300plc作為tcp客戶端,電子臺秤作為tcp服務器端,經客戶端請求服務器端來進行二者的tcp native連接,連接成功返回后再執行send/receive功能服務,來實現與電子臺秤的雙向數據采集的通信任務。
3.2通訊接口
開放式ie通信伙伴cp的數據通訊是通過“send/recrive”接口模式完成的,其接口基于iso模型1~4層所有的協議,為tcp服務提供了統一的socket接口到每個端口,允許通過工業以太網實現simatic s7 plc與帶以太網端口設備的通訊;選擇功能包ag_send(fc5)和ag_recv(fc6)可用于帶以太網cp343-1模板的s7-300 plc與具有tcp/ip接口的第三方站通信,fc5和fc6功能包含在step7的“simatic_net_cp”庫中,需通過輸入參數“act”激活才可調用,它運行需要多個ob1循環周期并可以在一個連接中同時進行收發通信,cpu將對連接進行監控,一旦連接中斷cpu將自動重新恢復該連接,其通信過程結束標志變量為“done”或“error”,狀態結果變量為“status”,程序可根據這些結果對收發任務進行評估,但只有在同一周期內才有效。
fc5/fc6的輸入參數“id”值可以從step7通信連接屬性對話框的“general”“information”欄中獲得,而“laddr”的值可以從step 7硬件配置界面中的工業以太網cp屬性對話框的“addresses”欄獲得,該值應以十六進制的形式填入通信塊,同時也可在編程時點擊fc5/fc6功能的連接屬性,選擇組態列表中的相應連接號,fc5/fc6功能中的id和laddr參數就會在程序里自動生成。
3.3通信組態
為連接組態cp343-1 tcp通訊連接,需使用step7 v5.4和用于工業以太網的simatic net ncm s7,而ncm s7完全集成在step 7環境中,并可提供豐富的網絡診斷功能,包括:通訊處理器的狀態、一般診斷與統計功能、連接診斷、緩沖區診斷、局域網控制器統計等。cp343-1模板除了在硬件組態hw config中配置外,對本地s7-300 plc而言其每個tcp通訊都需要通過netpro來建立起靜態連接,其組態過程如下:
1)通信伙伴選擇
開放式ie遠程通訊伙伴為稱重儀、標簽打印機、條碼掃描儀等非simatic s7工作站,因此選擇使用非特定通信連接的類型unspecified;
2)指定連接類型
開放式ie通訊連接類型應選擇tcp connection,并定義tcp連接的名字,系統將自動生成塊參數local id和laddr參數,對于客戶端對象還須選擇在通信連接初始化中具有主動連接功能的選項active connection;
3)ip地址
對于開放式ie通訊除設置雙方ip地址和子網掩碼外,還須分配通訊雙方(local/remote)的port端口號,port端口定義分配范圍為2000到5000中的空閑地址,而小于2000的端口地址一般由國際互聯網代理成員管理局(iana)已賦予特定的用途或保留;
4)數據傳送長度
對于老版本的cp343-1具有支持數據長度超過240個字節的作業選項,新版cp已取消了該選項,直接支持最大可達8192個字節的數據傳送;
5)編譯和下載
當前cp343-1通訊處理器支持在cpu上保存組態數據的選項,而不是存儲到cp的eeprom中,因此今后更換cp模塊時也不需要pg,在cp啟動時,新cp的組態數據將自動從cpu中進行下載。
6)其它
以上未涉及的選擇,按netpro的默認選項。
3.4通信編程
1)稱量采集編程
s7-300 plc基于開放通訊的cp343-1模板連接組態不需要編程,而是通過netpro來組建的,因此其通訊編程只需調用面向連接的send/receive接口就可完成ascii數據收發工作,系統的s7 plc共有八個tcp連接,其中電子臺秤共有6套分別占有6個連接,臺秤通信過程是雙向應答式的,在每一個連接中完成ascii碼數據的讀和寫功能,s7-300整個通信功能流程如圖4所示。
圖4 plc1通信功能流程圖
從上述流程圖中可看出plc1共有八個tcp連接和一個s7單邊連接,其中電子臺秤共有6套分別占有6個連接,臺秤通信過程是雙向應答式的,在每一個連接中完成ascii碼數據的讀和寫功能,通訊協議為電子臺秤自有特定的ascii碼協議,其通信格式如圖5所示。
以上plc命令請求中,stx(02h)是起始前綴符,etx(03h)是結束后綴符,電子秤返回數據中前后綴符之間為帶±極性pol符的6位十進制當前稱量值,其中sp(20h)為空格,cr(0dh)為回車,lf(0ah)為換行;s7-300 plc在一個連接中通過命令方式完成每臺臺秤的稱量數據采集任務,雙方所有數據都以ascii編碼傳送,plc可根據不同工藝要求發不同的命令,分別可讀取凈重、毛重、總重和狀態功能(去皮、置零、復位、累計、超差等)選擇的信息,在netpro組態中分別建立起6套稱量接口的tcp連接,并且定義由plc端為通信客戶連接端,電子臺秤設置為服務器端,plc通過send/receive接口程序設計實現與6套電子臺秤的雙向通信。
2)標簽打印編程
godex ez-1100plus標簽打印機具有熱敏/熱轉印二種工作模式,具備tcp server/client和usb接口,內置常用標準條碼庫和支持ezpl程序語言,ezpl程序語言屬條形碼高級控制語言,有三種命令模式:控制命令,設定命令和標簽格式命令。ezpl命令包括一串字符參數,并以一大寫英文字母啟首,作為功能識別碼,各參數間以,作為區隔,每行命令結束時,以內建隱藏式符號“cr”為識別,控制命令及設定命令分別以符號“~”及“∧”啟首,標簽格式命令則不以符號啟首,各識別碼均為大寫英文字母,各參數則為小寫字母,旨在定義各類數據如線條﹑矩形﹑條形碼﹑文字﹑圖像等等。
條形碼技術是隨著計算機與信息技術的發展和應用而誕生的,它是集編碼、印刷、識別、數據采集和處理于一體的實用技術,它的誕生極大地促進了商品流通,條形碼技術也是早期“物聯網”概念誕生的驅動力之一。現代化的物流裝備離不開商品條形碼,當前世界上常用的條碼制總類繁多,但使用最廣泛的是ean商品條形碼,它由國際物品編碼協會制定并通用于世界各地,我國目前在國內推行使用的也是這種商品條形碼,ean商品條形碼中最常用的是ean-13碼,也俗稱為ean標準版;ean-13通用商品條形碼一般由前綴部分、制造廠商代碼、商品代碼和校驗碼組成,條形碼的最后用1位校驗碼來校驗商品條形碼中左起第l-12數字代碼的正確性。從前面所述的tcp連接及通信流程圖中可看出godex ez-1100plus標簽打印機占有tcp connection2連接,在ob1中調用fc106實現單向數據流通信的ean-13碼打印功能,數據流其實就是標簽打印的組合式命令,其命令的格式如下:
“控制命令+設定命令+∧l(起始命令)+標簽格式命令+ e(end命令)”
因此對于標簽打印機按上述格式,將各命令及數據進行組合就形成組合式命令數據流,當然必需滿足ezpl程序語言所規定的語法,其內容主要包含標簽高度、寬度、間距、明暗度、速度、剝紙功能、邊界起點、條碼類型和條碼數據等等,下面的程序范例是打印一張ean 13的條形碼標簽,ezpl程序本身是一般的字符文件或命令行,無論使用何種語言編寫程序,只需送出該字符文件的內容即可控制條形碼機來打印,ezpl程序命令行數據必須以ascii碼值存放于打印命令數據塊db101中供fc56 ag_send接口使用,db101命令數據塊如表1所示。
表1打印命令數據塊db101
ob1中打印觸發事件的啟動,只需在fc106中調用fc56 ag_send接口,將db101命令塊的數據發送至打印機就可完成整個條碼打印任務,fc106編程及和ean-13碼打印結果如下:
fc106:a m 90.6 //啟動打印
= l 20.0
bld103
call“ag_send56”//調用fc56 ag_send發送接口
act:=l20.0 //激活發送打印命令
id:=2//硬件組態連接號tcp connection2
laddr:=w#16#100 //cp模塊十六進制硬件組態地址
send:=p#db101.dbx 0.0 byte 164 //發送命令塊起始地址
len:=164 //發送命令塊長度共164個字節
done:=“weight”。b101//發送執行代碼位
error:=“weight”b102//發送錯誤代碼位
status:=“weight”w4 //發送狀態字
3)條碼掃描編程
ms1690 focus條形碼掃描儀采用了高分辨率的cmos感應器和功能強大的高速處理芯片,再加上firstflash?專利技術,使它的全向掃描模式能從各個角度掃描當前市場上所有標準碼制的條碼,在使用前首先要對它進行參數設置定義,參數定義內容包含如:通信模式設置、stx前綴/etx后綴、掃描模式、條碼類型/解碼規則和掃描間隔時間等,這些參數即可通過軟件設置也可經掃描設置,掃描儀占有tcp connection1連接與cp343-1進行單向接受通信,step 7中調用功能fc107中的fc66 ag_recv接口來完成條碼ascii數據的采集,并存入指定接收數據的db塊,其區域長度只要不小于掃描儀發送字節長度就可以了,因此fc66編程思路與稱量fc6 ag_recv接口相似,在這里就不再重復。
4)通信診斷
診斷功能對控制系統而言有著非常重要的地位,它對系統的調試、運行和故障排除起著關鍵的作用,step 7為simatic系統提供了在線和編程二類通信診斷的途徑,在線診斷具有一個分級概念的診斷功能,這種概念將使您能夠查詢關于simatic s7組件和功能的狀態信息,并對各種不同情形下的問題進行分類診斷,它覆蓋了下列內容:
。使用step 7對包括s7工作站、cp模板等硬件進行診斷和故障檢測。
。使用ncm s7進行網絡通訊診斷或模塊通訊功能和運行狀態的動態檢測。
。hw config提供所組態的在線或離線cp的通訊屬性的靜態信息。
因此從上述系統分類診斷中可看出ncm s7 diagnostics為在線cp模板的通訊功能及運行狀態提供了常規動態診斷,另外它還可以對cp模板進行出廠設置初始化、c-plug卡格式化等操作。ncm s7可通過程序組simatic/step 7、cp屬性對話框或netpro連接屬性對話框來啟動。
圖5通訊格式
與simatic manager管理器相同,在左側的瀏覽區中,可看到分層排列的診斷對象,顯示的對象結構與當前正在檢查的cp類型、該cp組態的功能和相匹配的連接,瀏覽區中顯示了本地plc當前共有8個在線tcp connection連接;在右側的內容區,將可發現在瀏覽區域中選定的診斷功能的結果和狀態,即反映出這8個tcp connection連接的通信收發狀況,分別對應了6套臺秤(tcp connection3~connection8)、1套標簽打印機(tcp connection2)和1套條碼掃描儀(tcp connection1),還包含連接狀態、接收狀態和發送狀態等信息。如發生連接錯誤、中斷或警告,將在ncm s7左側的瀏覽區中顯示,如圖6所示:
圖6 ncm s7在線診斷窗口
通過鼠標在ncm s7瀏覽區域中選擇所診斷的對象,就可以執行功能診斷,也可通過相關菜單命令來操作,并且ncm s7診斷緩沖器提供了以太網cp上事件消息的查詢記錄,它包含了關于cp的所有通訊服務和診斷事件的詳細信息,診斷事件消息是記錄在cp模板內的環形緩沖區中,環形緩沖區可包含多達50條信息,另外在ncm s7中,則可保存多達500條消息。所有cp模板功能都將自動生成事件消息,調用診斷對象時消息被讀取并顯示,最新的消息將以最高的連續編號在最上一行中顯示,如果雙擊一個事先選定的事件消息則會顯示關聯的幫助文本,以便我們進一步詳細分析和處理該事件消息。
結束語
本文結合數據采集處理系統討論了西門子開放式工業以太網應用方案的實施情況,介紹了在open ie環境下基于tcp/ip協議實現simatic plc平臺與第三方設備的以太網自由通信過程,并且在半導體行業得到了成功的應用,open ie應用突破了工業以太網應用于同品牌plc與plc之間、plc與分布式i_o之間和plc與上位機之間通訊的局限,加速了工業以太網向不同陣營自動化平臺、現場設備層和i/o設備層拓展的趨勢,具有實現方法快速靈活、通信可靠穩定、網絡資源整合簡單和不受距離限制等特性,據arc的最新統計預測,2012年工業以太網現場設備層的市場規模預計將會超過四百萬個節點。綜觀當前全集成自動化開放式架構,無論是從縱向(從i/o設備層到mes層的數據、資產管理)還是橫向(單個智能組件和子系統之間的數據供應)信息集成來看,工業以太網及它的擴充技術(如:無線通信、gps廣域網通信、等時同步、功能安全等應用)為開放式架構的無邊界整合帶來了保障,工業以太網向不同層面、不同領域全方位延伸局面已勢不可當,面對當前競爭激烈和不斷變化的市場需求,只有樹立持續創新、勇于開拓的理念,才能共贏未來,開啟工業以太網更廣闊的發展空間。
評論