驥遠PROFINET轉CANopen應用
4.1配置模塊
1. 正確連接電源,通過MiniUSB口將PN - CANopen與PC相連,給PN - CANopen上電;
2. 打開配置軟件,根據(jù)需求在配置軟件中進行配置;
3. 點擊工具欄中的“下載”按鈕,將配置下載到PN - CANopen中;
4. 在TIA Portal中配置相應的組態(tài),包括要配置的模塊,目標設備(PN - CANopen)的 IP地址及設備名稱;
5. 將 TIA Portal的組態(tài)配置下載到PLC中;
6. 等待大約 10秒,PN - CANopen會與 PLC之間建立連接,此時PN燈亮。
4.2參數(shù)設置步驟
4.2.1 創(chuàng)建工程
打開TIA Portal,選擇創(chuàng)建新項目,輸入項目名稱,選擇路徑等信息后,點擊創(chuàng)建,如下圖所示。
通過 Portal 視圖或創(chuàng)建完成的項目視圖將 CPU 插入到項目中。
在視圖中,選擇“設備和網絡”并單擊“添加新設備”(或者在項目視圖中的項目名稱下,雙擊“添加新設備”),如下圖“添加新設備”對話框,添加支持PROFINET接口的控制器,例如6ES7 212-1BE40-0XB0。
4.2.2 GSD安裝
在TIA Portal 菜單欄點擊“選項”>“管理通用站描述文件”, 如圖所示:
在彈出的對話框中,選擇“已安裝的GSD”選項卡,點擊源路徑選擇按鈕,彈出瀏覽文件夾對話框中找到選擇 GSD文件“GSDML-V2.33-PN - CANopen-20200330”所在的文件夾路徑并選中,點擊確認即可。
選擇導入的GSD文件,點擊安裝,直至安裝完成。
軟件會更新硬件目錄。
4.2.3設備組態(tài)
雙擊設備和網絡,添加 PN - CANopen設備模塊,在硬件目錄 > 其他現(xiàn)場設備> PROFINET IO > Gateway > SIEMENS AG > JiYuan > JY EnTalk GateWay > JY-ET-005,如下圖所示:
添加設備模塊后,如下圖所示
使用設備配置的“網絡視圖”在項目中的各個設備之間創(chuàng)建網絡連接。創(chuàng)建網絡連接之后,使用巡視窗口的“屬性”選項卡組態(tài)網絡的參數(shù)。
選擇“網絡視圖”以顯示要連接的設備。選擇JY-ET-005的PROFINET端口,然后將連接拖到PLC_1模塊的PROFINET端口處,釋放鼠標按鈕以創(chuàng)建網絡連接。
PROFINET網絡創(chuàng)建成功,如下圖所示:
雙擊JY-ET-005設備并組態(tài)所有必需的模塊及子模塊,
– 在硬件目錄中,展開“模塊”容器。
– 雙擊或拖動Input modules / Output modules下的模塊類型。如下圖所示:
組態(tài)JY-ET-005設備的PROFINET接口,選擇設備上的綠色 PROFINET框。巡視窗口中的“屬性” 選項卡會顯示 PROFINET 端口,在巡視窗口的“屬性 > PROFINET接口”選擇“以太網地址”,在IP協(xié)議中設置IP地址,如下圖
組態(tài)PLC_1的PROFINET接口,選擇 CPU 上的綠色 PROFINET框。巡視窗口中的“屬性” 選項卡會顯示 PROFINET 端口,在巡視窗口的“屬性 > PROFINET接口”選擇“以太網地址”, 在IP協(xié)議中設置IP地址,如下圖:
執(zhí)行編譯和下載
4.3 CANopen介紹
CANopen協(xié)議是由 CiA協(xié)會針對 CAN協(xié)議的不完整性而定義出來的一個更高層次的協(xié)議——應用層協(xié)議。通信接口和協(xié)議軟件提供在總線上收發(fā)通信對象的服務。不同 CANopen設備間的通信都是通過交換通信對象完成的。這一部分直接面向 CAN控制器進行操作。對象字典描述了設備使用的所有的數(shù)據(jù)類型,通信對象和應用對象。對象字典位于通信程序和應用程序之間,向應用程序提供接口,應用程序對對象字典進行操作就可以實現(xiàn) CANopen通信。應用程序包括功能部分和通信部分,通信部分通過對對象字典進行操作實現(xiàn) CANopen通信,而功能部分則根據(jù)應用要求實現(xiàn)。
4.3.1服務資料對象(SDO)
服務資料對象(SDO):可用來存取遠端節(jié)點的對象字典,讀取或設定其中的資料。提供對象字典的節(jié)點稱為SDO server,存取對象字典的節(jié)點稱為 SDO client。SDO通訊一定由 SDO client開始,并提供初始化相關的參數(shù)。
CANopen的術語中,上傳是指由SDO server中讀取資料,而下載是指設定server的資料。
SDO通過使用索引和子索引(在CAN報文的前幾個字節(jié)),SDO使客戶機能夠訪問設備(服務器)對象字典中的項(對象)。
SDO通過 CAL中多元域的CMS對象來實現(xiàn),允許傳送任何長度的數(shù)據(jù)(當數(shù)據(jù)超過 4個字節(jié)時分拆成幾個報文)。
協(xié)議是確認服務類型:為每個消息生成一個應答(一個SDO需要兩個ID)。SDO請求和應答報文總是包含 8個字節(jié)(沒有意義的數(shù)據(jù)長度在第一個字節(jié)中表示,第一個字節(jié)攜帶協(xié)議信息)。SDO通訊有較多的協(xié)議規(guī)定。
各種傳輸幀格式:
SDO用來訪問一個設備的對象字典。訪問者被稱作客戶(client),對象字典被訪問且提供所請求服務的CANopen設備別稱作服務器(server)??蛻舻腃AN報文和服務器的應答CAN報文總是包含 8字節(jié)數(shù)據(jù)(盡管不是所有的數(shù)據(jù)字節(jié)都一定有意義)。一個客戶的請求一定有來自服務器的應答。
4.3.2 過程數(shù)據(jù)對象(PDO)
PDO用來傳輸實時數(shù)據(jù),數(shù)據(jù)從一個生產者傳到一個或多個消費者。數(shù)據(jù)傳送限制在 1到8個字節(jié)(例如,一個 PDO可以傳輸最多64個數(shù)字 I/O值,或者4個16位的 AD值)。PDO通訊沒有協(xié)議規(guī)定。PDO數(shù)據(jù)內容只由它的 CAN ID定義,假定生產者和消費者知道這個 PDO的數(shù)據(jù)內容。
每個PDO在對象字典中用 2個對象描述:
PDO通訊參數(shù):包含哪個 COB-ID將被 PDO使用,傳輸類型,禁止時間和定時器周期。
PDO映射參數(shù):包含一個對象字典中對象的列表,這些對象映射到 PDO里,包括它們的數(shù)據(jù)長度(bits)。生產者和消費者必須知道這個映射,以解釋 PDO內容。
PDO消息的內容是預定義的(或者在網絡啟動時配置的):
映射應用對象到 PDO中是在設備對象字典中描述的。如果設備(生產者和消費者)支持可變 PDO映射,那么使用 SDO報文可以配置 PDO映射參數(shù)。
PDO可以有多種傳送方式:
同步非周期:由遠程幀預觸發(fā)傳送,或者由設備子協(xié)議中規(guī)定的對象特定事件預觸發(fā)傳送。
同步周期:傳送在每 1到 240個 SYNC消息后觸發(fā)。
異步遠程幀觸發(fā)傳送。
異步由設備子協(xié)議中規(guī)定的對象特定事件觸發(fā)傳送。
一個PDO可以指定一個禁止時間,即定義兩個連續(xù) PDO傳輸?shù)淖钚¢g隔時間,避免由于高優(yōu)先級信息的數(shù)據(jù)量太大,始終占據(jù)總線,而使其它優(yōu)先級較低的數(shù)據(jù)無力競爭總線的問題。禁止時間由 16位無符號整數(shù)定義,單位 100us。
一個PDO可以指定一個事件定時周期,當超過定時時間后,一個PDO傳輸可以被觸發(fā)(不需要觸發(fā)位)。事件定時周期由 16位無符號整數(shù)定義,單位 1ms。
4.3.3 NMT模塊控制
只有 NMT-Master節(jié)點能夠傳送 NMT Module Control報文。所有從設備必須支持 NMT模塊控制服務。
NMT Module Control消息不需要應答。NMT消息格式如下:
NMT-Master →NMT-Slave(s)
COB -ID | Byte0 | Byte1 |
0x00 | CS | Node-ID |
當Node-ID=0,則所有的NMT從設備被尋址。CS是命令字,可以取如下值:
命令字 | NMT服務 |
1 | Start Remote Node |
2 | Stop Remote Node |
128 | Enter Pre-operational State |
129 | Reset Node |
130 | Reset Communication |
4.3.4 NMT節(jié)點保護(NMT Node Guarding)
通過節(jié)點保護服務,MNT主節(jié)點可以檢查每個節(jié)點的當前狀態(tài),當這些節(jié)點沒有數(shù)據(jù)傳送時這種服務尤其有意義。
NMT-Master節(jié)點發(fā)送遠程幀(無數(shù)據(jù))如下:
NMT-Master →NMT-Slave
COB -ID |
0x700 + Node-ID |
NMT-Slave節(jié)點發(fā)送如下報文應答:
NMT-Master ←NMT-Slave
COB -ID | Byte0 |
0x700 + Node-ID | Bit7:toggle Bit6-0:狀態(tài) |
數(shù)據(jù)部分包括一個觸發(fā)位(bit7),觸發(fā)位必須在每次節(jié)點保護應答中交替置“0”或者“1”。觸發(fā)位在第一次節(jié)點保護請求時置為“0”。位0到位6(bits0~6)表示節(jié)點狀態(tài),可為下表中的數(shù)值。
Value | 狀態(tài) |
0 | Initialising |
1 | Disconnected |
2 | Connecting |
3 | Preparing |
4 | Stopped |
5 | Operational |
127 | Pre-operational |
4.3.5心跳報文(Heartbeat)
Heartbeat Producer → Consumer(s)
COB -ID | Byte0 |
0x700 + Node-ID | 狀態(tài) |
狀態(tài)可為下表中的數(shù)值:
狀態(tài) | 意義 |
0 | Boot-up |
4 | Stopped |
5 | Operational |
127 | Pre-operational |
當一個Heartbeat節(jié)點啟動后它的啟動報文是其第一個Heartbeat報文。Heartbeat消費者通常是NMT-Master節(jié)點,它為每個Heartbeat節(jié)點設定一個超時值,當超時發(fā)生時采取相應動作。
一個節(jié)點不能夠同時支持NodeGuarding和Heartbeat協(xié)議。
4.3.6 NMT Boot-up
NMT-slave節(jié)點發(fā)布Boot-up報文通知NMT-Master節(jié)點它已經從initialising狀態(tài)進入pre-operational狀態(tài)。
NMT-Master ←NMT-Slave
COB -ID | Byte0 |
0x700 + Node-ID | 0 |
4.3.7應急指示對象:
應急指示報文由設備內部出現(xiàn)的致命錯誤觸發(fā),由相關應用設備已最高優(yōu)先級發(fā)送到其它設備。
適用于中斷類型的錯誤報警信號。
一個應急報文由8字節(jié)組成,格式如下:
sender → receiver(s)
COB -ID | Byte0-1 | Byte2 | Byte3-7 |
0x800 + Node-ID | 應急錯誤代碼 | 錯誤寄存器 (對象 0x1001) | 制造商特定的錯誤區(qū)域 |
4.3.8 NMT狀態(tài)控制過程:
CANopen啟動過程,可以用節(jié)點狀態(tài)轉換圖表示這兩種初始化過程,如下圖所示。
注意:
圖中括號內的字母表示處于不同狀態(tài)那些通訊對象可以使用。
a.NMT,b.NodeGuard,c.SDO,d.Emergency,e.PDO,f.Boot-up
狀態(tài)轉移(1-5由NMT服務發(fā)起),NMT命令字(在括號中):
1:Start_Remote_Node (0x01)
2:Stop_Remote_Node (0x02)
3:Enter_Pre-Operational_State (0x80)
4:Reset_Node (0x81)
5:Reset_Communication (0x82)
6:設備初始化結束,自動進入Pre_Operational狀態(tài),發(fā)送啟動消息
在任何時候NMT服務都可使所有或者部分節(jié)點進入不同的工作狀態(tài)。NMT服務的CAN報文由CAN頭(COB-ID=0)和兩字節(jié)數(shù)據(jù)組成;第一個字節(jié)表示請求的服務類型(‘NMTcommandspecifier’),第二個字節(jié)是節(jié)點ID,或者0(此時尋址所有節(jié)點)。
設備進入準備狀態(tài)后,除了NMT服務和節(jié)點保護服務(如果支持并且激活的話)外,將停止通訊。
4.4配置軟件
配置模塊需要使用配置軟件,用戶可以從光盤或者網站上獲取并安裝,用戶使用網關配置軟件可以輕松完成 PN - CANopen的配置,從上到下分別分標題欄、菜單欄、工具欄、設備樹,以及配置區(qū),下面詳細說明這 5部分的功能,主界面如下圖:
4.5運行
4.5.1數(shù)據(jù)交換
PN - CANopen的PROFINET網絡和CANopen網絡之間的數(shù)據(jù)轉換是通過“映射”關系來建立的。在 PN - CANopen中有兩塊數(shù)據(jù)緩沖區(qū),一塊是輸入緩沖區(qū)(1.5K字節(jié)),地址范圍為 0x000-0x5ff;另一塊是輸出緩沖區(qū)(1.5K字節(jié)),地址范圍同樣為0x000-0x5ff。
4.5.2 PROFINET從站
假定用戶配置的輸入數(shù)據(jù)的長度為 L1,輸出數(shù)據(jù)的長度為 L2。PN - CANopen會把[0x000,L1]地址范圍內的數(shù)據(jù)發(fā)送到PROFINET網絡中,當從PROFINET網絡接收到數(shù)據(jù)是,PN - CANopen會將數(shù)據(jù)寫到[0x000,L2]地址范圍內。
4.6軟件安裝
在安裝 CANopen Configuration Tools(以下簡稱 CCT)軟件時,推薦使用的計算機配置如表所示。
環(huán)境 | 類型 | 型號 |
硬件環(huán)境 | 顯示器 | 彩色CRT |
輸入輸出 | 標準鍵盤,鼠標 | |
USB接口 | 至少一個2.0接口 | |
顯卡 | 分辨率支持 1280×1024 | |
CPU | Intel Pentium 2.4GHz以上 | |
內存 | 512M以上 | |
硬盤 | 10G以上 | |
軟件環(huán)境 | 操作系統(tǒng) | Windows7 |
應用軟件 | CANopen 配置套件V2.3.2.8 |
安裝 CCT軟件的主要步驟如下所述。
第 1 步 啟動安裝向導
雙擊安裝包,彈出如下圖,點擊下一步:
第 2 步 選擇安裝位置
選擇安裝位置,點擊下一步:
第 3 步 開始安裝
選擇安裝,點擊開始安裝:
第 4 步 正在安裝
安裝過程需要幾分鐘:
第 5 步 安裝完成提示
安裝完畢,彈出“CCT安裝完成向導”窗口。鼠標左鍵單擊“完成”立即運行 CCT,如下圖所示。
4.7用戶界面介紹
用戶界面主要由以下部分構成,如圖
4.7.1標題欄
用于顯示軟件的名稱,如果打開或保存了一個CANopen配置工程,也將顯示其所在的路徑。
4.7.2菜單欄
提供軟件所支持的工程文件操作,比如打開、保存;以及工程的下裝與串口設置等。
4.7.3工具欄
用于快速訪問菜單欄中的各個功能。
4.7.4設備樹
用于組態(tài)需要的硬件設備,一共分為兩個區(qū)域,分別是:
主站設備:列出組態(tài)到工程中的主要設備,主設備只能添加一個。
從站設備:列出組態(tài)到工程中的從屬設備,從屬設備可以添加多個。
4.7.5配置區(qū)
用于詳細配置主設備與從設備的信息,只有當選擇了對應的設備時,才會在配置區(qū)顯示其信息,該區(qū)域包含如下5個頁面:
通用屬性:設備的概述與總體信息,比如設備名稱、廠商信息。
錯誤控制:用于配置設備是工作在心跳模式,還是監(jiān)聽模式。
PDO參數(shù):提供對RPDO與TPDO對象的參數(shù)控制。
設備參數(shù):提供對設備的通信區(qū)域、制造商區(qū)域,以及標準化區(qū)域等內容的組態(tài)配置。
在線監(jiān)視:監(jiān)視數(shù)據(jù)。
4.8開始使用
該部分將用一個最簡單的流程來說明本軟件的使用方法。
4.8.1創(chuàng)建新工程
啟動CANopen 配置套件,軟件會自動創(chuàng)建一個空的工程,如圖所示。
4.8.2添加主要設備
選中主設備,右擊添加設備,彈出“設備目錄”對話框,如圖所示。然后從“主設備”列表中選擇“JY-ET-005”作為主要設備,點擊“確認”返回主界面。
4.8.3添加從屬設備
選中從屬設備,右擊添加設備,彈出“設備目錄”對話框,如下圖所示。例如添加CANopen Step Motor Driver作為從屬設備。
選擇從屬設備,點擊“確認”后,彈出該從屬設備的設備屬性,可以修改節(jié)點ID。
4.8.4刪除從設備
單擊左鍵選中設備,然后右擊鼠標選中“刪除”,如下圖所示。刪除CANopen Step Motor Driver從屬設備。
4.8.5配置串口
單擊工具欄上的“配置串口”按鈕,彈出“設置”對話框,如圖所示。選擇或輸入要使用的串口,然后單擊OK按鈕返回主界面。
4.8.6生成下裝文件
單擊工具欄上的生成程序文件按鈕,生成下裝用的二進制文件。如果生成過程中沒有錯誤,那么會彈出“生成成功!”確認框。
4.8.7下裝
將生成的二進制文件,通過串口下載到硬件。如果下裝時沒有生成文件,那么會自動生成需要的文件。
4.8.8保存工程
單擊“文件”菜單中的“保存”,文件名為xxxx,將當前工程保存到硬盤上,以便后續(xù)可以繼續(xù)使用。這里默認的后綴名為.canproj,代表是一個CANopen的工程文件。
4.9配置視圖操作
4.9.1 PROFINET配置
點擊主站設備JY-ET-005的設備參數(shù):
上述參數(shù)描述如下:
設備名稱:描述該設備在 PROFINET網絡中的名稱;
IP地址:設備IP地址;
子網掩碼:設備子網掩碼;
網關地址:在局域網的網關地址;
注意:設備名稱必須和TIA Portal軟件的設備名稱一致,PROFINET設備名稱如下圖:
IP地址必須與TIA Portal軟件設置的IP一致。例如配置軟件為192.168.0.5,與TIA Portal的IP地址(192.168.0.5)一致。
4.9.2導入新的 EDS文件
將EDS文件復制至安裝目錄下的“CANopen Configuration Studio\Devices\EDS”,比如采用默認的安裝目錄則復制至“C:\Program Files (x86)\JiYuan\CANopen Configuration Studio\Devices\EDS”目錄下即可,重新打開軟件。
4.9.3中英文切換
此軟件支持中文和英文兩種語言,在“語言”中選擇“英文(E)”,可以將軟件切換為英文模式,如下圖所示:
在“Language”中選擇“Chinese”,可以將軟件切換為中文模式;
4.9.4 PDO參數(shù)
無需配置的RPDO或TPDO選項去掉前端的勾選項即可;
右擊對應的RPDO或TPDO添加對象;選擇相應的索引,點擊添加,添加完成后關閉對話框;
4.9.5設備參數(shù)
4.9.6錯誤控制
心跳(生產者時間,消費者時間)
節(jié)點保護(守護時間,壽命因子)
心跳和節(jié)點保護為互斥使用,
心跳一般從站作為生產者,主站作為消費者,主站監(jiān)視從站
節(jié)點保護:主站請求從站狀態(tài),從站上報狀態(tài)給主站,用于相互監(jiān)視。
4.10數(shù)據(jù)映射
4.11加載和保存配置
4.11.1保存配置工程
在“文件”中選擇“保存”,可以將配置好的工程以.canproj文件保存,如下圖所示:
4.11.2加載配置工程
在“文件”中選擇“打開”,可以將保存的.canproj文件打開。
提交
EtherCAT轉PROFINET應用
PROFINET轉Modbus與KUKA
驥遠自動化PROFINET轉Modbus
PROFINET轉CANopen變流器
PROFINET轉CANopen網關應用