# PROFINET QUICK GO-Through [TOC] ## 簡述 Process Field Net的複合字,是工業乙太網路的通訊技術標準 PROFINET會在兩個裝置(IO-Controller/IO-Device)間作為通訊的協定標準,系統運作有三種裝置。 - IO-Controller: PLC, DCS IPC - IO-Device: IO Block device, Drives, sensors, or actuator(致動器,將能源轉成機械動能的元件,有液壓驅動、氣壓驅動或是電子驅動) - IO-Supervisor: 一種在PC上面執行的軟體,主要是設定IO-Device參數以及監控診斷每個IO-device的運行情況。 ## 分類 分為PROFINET CBA(Component Based Automation)/PROFINET IO - PROFINET CBA: TCP/IP Network Stack,使用PCD檔案來定義元件(PROFINET Component Description) - PROFINET IO: Real time Transmission ## 技術 - TCP/IP: 針對PROFINET CBA及工廠調試用,其反應時間為100ms - RT: 針對PROFINET CBA/PROFINET IO的應用,反應時間小於10ms - IRT: 針對驅動系統的PROFINET IO的通訊,反應時間小於1ms,jitter小於1us ## Conformance Class Conformance class(CC),稱為一致性等級,是PROFINET應用的分類方式 - CC-A: Device提供PROFINET IO基本功能以及RT通訊 - CC-B: 除了包含CC-A功能,還擴展其他IT診斷/管理功能 - CC-C: 除了包含CC-B功能,還擴展IRT(Isochronous Real Time)通訊 - CC-D: 增加了RSI(Remote Service Interface) ## 可靠性 靠著確保三種性質達成 - Safety - Availability - Security ### Safety ProfiSafe:定義工業運作中的安全控制,像是緊急停止之類的功能,主要是用來避免工業環境中的工安問題 ### Availability 可擴充性, - 主要是在系統中增加備援(實體)裝置,以及當錯誤發生時可以無縫切換(System Redundancy) - Media Redundency主要用在網路的錯誤發生時立即切換網路拓譜的協定運作 ### Security 藉由設立防火牆來確保PROFINET的運作並降低外部攻擊的機會。 ## Application Profiles 為了讓裝置之間彼此順暢溝通運作,必須要訂出一套標準的功能與服務讓所有裝置知道。這套標準就叫做profiles,裡面就會綁定功能與服務的規格。 根據其應用的不同可以分為三種 - Device Profiles: drives(PROFIdrive), process devices, encoders, pumps - Industry Profiles: laboratory technology or rail vehicles - Integration Profiles: integration of subsystems such as IO-Link systems ### Drives(變頻器) PROFIdrive: modular device profile for drive devices ### Energy(能源監控) PROFIenergy: 對於能源需求的監控profile,主要針對高耗能裝置的管控,可以達到節能成本的目的 ### Processautomation(流程自動化) - Process devices:有分成五種裝置類型 - 壓力裝置 - 溫度與流速裝置 - 類比與數位輸入輸出 - 閥門與致動器 - 分析裝置 - Advanced Physical Layer: Ethernet Advanced Physical Layer(Ethernet-APL),確保長距離與高速傳輸的Ethernet標準 ## PROFINET Protocols Protocol Stack如下圖 ![Protocol Stack](https://i.imgur.com/d5X9Uvs.png) - Layer1/Layer2: 支援autocrossover,Wireshark軟體也可以直接解碼這個Layer的PROFINET Telegram,而藉由LLDP(Link Discovery Protocol)的協助,device也可以藉由這個來知道鄰近的device有哪些 - Layer3-Layer6: RSI不需要用到IP Address,而ARP可以在網路上去找IP位址並且去移除重複的IP位址 - Layer 7: Fieldbus Application,可以使用RT或是IRT,而在TCP上面的AP Layer則是OPC UA ## Conformance Class Technology Info ### Class A - Output Data: Consumer IO-Device, Producer IO-Controller - Input Data: Consumer IO-Controller, Producer IO-Device 這些資料的傳輸關係就會被定義為IO Data CR(Communication Relationship).包含Data的數量或是循環時間(cycle time) 而其中一定要support的CR叫做Alarm CR,其內容就是裝置診斷或是安全警告的傳輸;另一種CR叫做Record Data CR(acyclic communication);還有一種叫做Identification and Maintenace Data Set (I&M0, I&M1-4),主要是PROFINET對於網路內的IO-Device的識別 Cyclic Data: Real time Data Acyclic Data: UDP/IP #### Application Relation 主要在AP層來定義IO-Controller和IO-Device中的CR 根據其Life cycle分成五種 1. Address Resolution: 每個IO-device會有它的Station name, 而IO-Controller會確認Station name後再配給它們IP Address 2. Connection Establishment: IO-Controller會發送Request給IO-Device,確認彼此間的CR以及參數設定,另外也會有whatchdog機制來監控這個過程 3. Parameterization: 當連線建立後,IO-Controller會去Config網路中的每一台IO-device(經由GSDML, General Station Description Markup Language,來完成),這也確保了IO data exchange和alarm handling的環境 4. Process IO data exchange/ alarm handling: 這時候IO-Controller和IO-device就可以開始正式互動 5. Termination: 當watchdog timeout發生時(可能是因為傳輸錯誤或是其他錯誤),連線就會被終止,而連線不是由IO-Controller特意去終止時,IO-Controller會再次發起AR來重新建立連線來與IO-Device建立AR ### Class B 多了網路診斷的功能(SNMP,Layer Application),以及LLDP(Link Layer Discovery Protocol, Layer Data Link),這些功能進一步達成Network topology也可以讓System Redundancy的達成更加容易 ### Class C 支援IRT,而且會reserve bandwidth給real time message使用 ### Class D RSI(Remote Service Interface)會作為Link Layer(TSN)之上的Protocol Stack,在這個層級,Protocol Stack會有兩個部分,RSI+TSN以及TCP/IP+CSMA/CD ## PROFINET介面實作 IO-Device至少要有兩個Ethernet Port,而要滿足CC-C和CC-D則分別需要滿足PTP(Precision Time Protocol)和TSN(Time-Sensitive Networking) ###### tags: `PROFINET`