国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于CANopen 現(xiàn)場總線的網(wǎng)絡(luò)設(shè)計

2013-09-13 03:30:08張小剛
關(guān)鍵詞:波特率主站總線

張小剛

(中國煤炭科工集團(tuán) 太原研究院,山西 太原 030006)

0 引言

現(xiàn)場總線技術(shù)使得綜合自動化技術(shù)飛速發(fā)展,現(xiàn)場總線成為控制領(lǐng)域的一個新熱點。CAN現(xiàn)場總線可靠性高、抗干擾能力強、造價低廉使之成為一種很有前途的通信技術(shù)。 CANopen(Control Area Network Open)協(xié)議是基于Can的一種高層協(xié)議,支持多種傳輸模式,具有良好的開放特性,能在很大程度上降低CAN網(wǎng)絡(luò)數(shù)據(jù)的負(fù)載,目前主要用于汽車系統(tǒng)、工業(yè)控制、醫(yī)療設(shè)備等系統(tǒng)。臺達(dá)作為工業(yè)自動化領(lǐng)域的后起之秀,推出了眾多現(xiàn)場總線產(chǎn)品。本文主要介紹利用臺達(dá)CANopen總線主站模塊與傾角傳感器進(jìn)行CANopen 總線通信,實現(xiàn)對傳感器的數(shù)據(jù)讀取技巧。

1 系統(tǒng)結(jié)構(gòu)

如圖1所示,本系統(tǒng)連接兩路MC-LINK-CA 設(shè)備,八路VFD-E 設(shè)備。主模塊用臺達(dá)的DVPCOPM-SL CANopen 模塊作為CANopen 網(wǎng)絡(luò)的主站使用,站號設(shè)置為2,其他設(shè)備站號分別為3~12。DVPCOPM-SL 作為主站使用時,有如下功能:符合CANopen 標(biāo)準(zhǔn)協(xié)議DS301v4.02;支持 NMT Master服務(wù);支持 Heartbeat/Node Guarding Protocol;支持 PDO、SDO 服務(wù);支持 E-mergency Protocol;具有同步信息產(chǎn)生器;與 PLC 主機(jī)自動交換數(shù)據(jù)。

圖1 系統(tǒng)結(jié)構(gòu)圖Fig.1 System structure diagram

2 組建CANopen 網(wǎng)絡(luò)

2.1 修改各設(shè)備地址、波特率

(1)修改各設(shè)備地址。CANopen 網(wǎng)絡(luò)中各個設(shè)備的地址必須唯一。所以對于剛出廠的設(shè)備首先需要修改其地址。為了保證對象索引的正確性,防止修改了其他參數(shù),在修改地址之前先對相應(yīng)的對象索引讀進(jìn)行讀取。主站和設(shè)備連接后,用SDO 進(jìn)行讀寫。例如修改MCLINK-CA 設(shè)備的地址,原地址為1,改為3。

①讀地址。發(fā)生數(shù)據(jù):COB-ID為601h 數(shù)據(jù)為:40 04 20 00 00 00 00 00;返回數(shù)據(jù):COB-ID為581h數(shù)據(jù)為:4f 04 20 00 01 00 00 00;②寫地址。發(fā)生數(shù)據(jù):COB-ID為601h 數(shù)據(jù)為:2f 04 20 00 03 00 00 00;返回數(shù)據(jù):COB-ID為581h 數(shù)據(jù)為:60 04 20 00 00 00 00 00。

說明:讀取對象2004h 子索引為00h的數(shù)據(jù),返回1。寫地址時,返回數(shù)據(jù)以60h 開始的數(shù)據(jù)說明修改成功。設(shè)備不同,地址對象索引可能不同。

(2)修改波特率。要組建一個網(wǎng)絡(luò),使得網(wǎng)絡(luò)中各設(shè)備能夠進(jìn)行數(shù)據(jù)交互。必須使得各個設(shè)備的速率一致。同上,在修改波特率之前,先對相應(yīng)的對象索引進(jìn)行讀取。以MC-LINK-CA 設(shè)備為例,修改使得其波特率為125kbps。地址為1。①讀波特率。發(fā)生數(shù)據(jù):COB-ID為601h 數(shù)據(jù)為:40 05 20 00 00 00 00 00;返回數(shù)據(jù):COB-ID為581h 數(shù)據(jù)為:4b 05 20 00 e8 03 00 00;②寫波特率。發(fā)生數(shù)據(jù):COB-ID為601h 數(shù)據(jù)為:2b 05 20 00 7d 00 00 00;返回數(shù)據(jù):COB-ID為581h 數(shù)據(jù)為:60 05 20 00 00 00 00 00。

說明:讀取對象2005h 子索引為00h的數(shù)據(jù),返回波特率數(shù)值為1Mkbps。改寫波特率125kbps時,返回數(shù)據(jù)以60h 開始的數(shù)據(jù)說明修改成功。設(shè)備不同,波特率對象索引可能不同。

(3)保存數(shù)據(jù)。根據(jù)設(shè)備的不同,有些設(shè)備需要保存斷電才起作用。有些不需要保存斷電即起作用。仍以MC-LINK-CA 設(shè)備為例,保存修改SDO 命令如下:

發(fā)生數(shù)據(jù):COB-ID為601h;數(shù)據(jù)為:23 10 10 01 73 61 76 65;返回數(shù)據(jù):COB-ID為581h;數(shù)據(jù)為:60 10 10 01 00 00 00 00。

2.2 EDS 文件的修正

(1)將主從站的節(jié)點地址、通信速率設(shè)置好、通訊接線連接完成后,打開CANopenBuilder 軟件,點擊 “工具->eds 操作->按裝eds 文件”選擇設(shè)備對應(yīng)的eds 文件。點擊 “網(wǎng)絡(luò)->在線”,則會搜索出主站DVPCOPM Master與一個Unknown 未知設(shè)備,此時,選中此未知設(shè)備,右鍵->屬性,記錄下節(jié)點信息中的以下幾個信息內(nèi)容,廠商代碼、設(shè)備類型、產(chǎn)品代碼、版本,若有灰色的不用記,這里設(shè)備類型為灰色,只需要記下,廠商代碼、產(chǎn)品代碼、版本。

(2)使用記事本打開從站設(shè)備提供的EDS 文件,并將以上三項信息的內(nèi)容在EDS 文件中的對應(yīng)項修改為記錄下的數(shù)據(jù)并保存為后綴為eds的文件,這三項對應(yīng)的對象為1018h,子索引為01h,02h,03h。

(3)使用CANopenBuilder 軟件重新導(dǎo)入EDS 文件后,再次點擊 “Online”自動搜索后,組態(tài)軟件則可以正確識別從站設(shè)備。

2.3 配置從站設(shè)備的PDO 數(shù)據(jù)

雙擊從站設(shè)備3,出現(xiàn) “節(jié)點配置”界面,選中要配置的PDO 類型,點擊 “PDO 映射”對PDO 數(shù)據(jù)進(jìn)行分配。

配置RxPD01(主站發(fā)送,從站接收):COB_ID=203h(站號為3),PDO 通信參數(shù)索引為1400h,PDO 映射參數(shù)索引為1600h。映射對象為2003h,子索引為1~8,都由8位組成。

配置 TxPD01(從站發(fā)送,主站接收):COB_ID=183h(站號為3),PDO 通信參數(shù)索引為1800h,PDO 映射參數(shù)索引為 1a00h。映射對象為 2001h,子索引為 1~8,都由 8位組成。

配置TxPD02(從站發(fā)送,主站接收):COB_ID=283h(站號為3),PDO 通信參數(shù)索引為1801h,PDO 映射參數(shù)索引為 1a01h。映射對象為2001h,子索引為 9~10h,都由8位組成。

配置TxPD03(從站發(fā)送,主站接收):COB_ID=383h(站號為3),PDO 通信參數(shù)索引為1802h,PDO 映射參數(shù)索引為 1a02h。映射對象為2001h,子索引為 11~18h,都由8位組成。

配置TxPD04(從站發(fā)送,主站接收):COB_ID=483h(站號為3),PDO 通信參數(shù)索引為1803h,PDO 映射參數(shù)索引為1a03h。映射對象為2001h,子索引為19~20h,都由8位組成。

按照此方法對從站設(shè)備4~12 進(jìn)行 “PDO 映射”, 對PDO 數(shù)據(jù)進(jìn)行分配。

2.4 配置節(jié)點列表

(1)雙擊“DVPCOPM Master 圖標(biāo)” 彈出 “節(jié)點列表配置”對話框。

(2)本例中先選中從站地址為 3的 從站模塊,點擊按鈕 “>”,將從站 3 加入節(jié)點列表。此時選中節(jié)點列表中的從站 3,則可以在下方的輸入輸出映射表中看到從站3的IO 數(shù)據(jù)對應(yīng)到PLC 主機(jī)內(nèi)的D 寄存器地址。

(3)用同樣的方法將從站 4~12 也加入節(jié)點列表,可以在下方的輸入輸出映射表中查看其IO 數(shù)據(jù)對應(yīng)到PLC主機(jī)內(nèi)的D 寄存器地址。點擊”確定”完成節(jié)點列表配置。

2.5 下載配置到DVPCOPM-SL 主站模塊

選擇菜單 “網(wǎng)絡(luò)”->“下載”,將配置數(shù)據(jù)下載到DVPCOPM-SL 主站模塊。此時如果PLC 處于運行狀態(tài),則會提示要先停止運行才可以下載。點擊 “是”停止PLC 運行并開始下載數(shù)據(jù)到主站模塊。下載完成后,會提示是否重新運行 PLC,點擊 “是”可以繼續(xù)運行PLC程序,點擊 “否”則不運行PLC 程序。

3 網(wǎng)絡(luò)狀態(tài)監(jiān)測

3.1 實現(xiàn)原理

(1)CANopen 網(wǎng)絡(luò)中從站狀態(tài)。通過發(fā)送SDO 讀取索引5002h 子索引01h的值,可以讀取 CANopen 網(wǎng)絡(luò)中所有從站的狀態(tài)。索引5002h 子索引01h 和網(wǎng)絡(luò)節(jié)點的對應(yīng)關(guān)系表(略)。當(dāng)主站模塊節(jié)點列表中的節(jié)點正常時,相應(yīng)的位為OFF狀態(tài);主站模塊節(jié)點列表中的節(jié)點發(fā)生異常時,相應(yīng)的位為ON狀態(tài)。

(2)CANopen網(wǎng)絡(luò)中主站狀態(tài)。通過發(fā)送 SDO讀取索引5003h子索引01h的值,可以讀取 CANopen網(wǎng)絡(luò)中主站的狀態(tài)。當(dāng)主站模塊正常工作時,索引5003h子索引01h的內(nèi)容值為 0;當(dāng)主站模塊發(fā)生錯誤時,索引5003h子索引01h的內(nèi)容值為相應(yīng)的錯誤代碼。

(3)CANopen網(wǎng)絡(luò)狀態(tài)。使用者通過發(fā)送 SDO讀取索引5004h子索引01的值,可以讀取CANopen網(wǎng)絡(luò)的網(wǎng)絡(luò)狀態(tài)信息。當(dāng)CANopen網(wǎng)絡(luò)的所有節(jié)點均正常工作時,5004h子索引01的內(nèi)容值為 0;當(dāng) CANopen網(wǎng)絡(luò)中任何一個節(jié)點發(fā)生異常/初始化失敗時,5004h子索引01的內(nèi)容值為 1。

3.2 PLC程序?qū)崿F(xiàn)

首先對SDO請求信息映射區(qū)和SDO響應(yīng)信息映射區(qū)清零。 當(dāng)M0=ON時,CANopen主站發(fā)送SDO請求信息,讀取目標(biāo)設(shè)備(主站節(jié)點地址為02)索引為5002h、子索引為01h的內(nèi)容,如果通信成功,從站返回響應(yīng)信息。返回的從站狀態(tài)(站號3~12)存放在D202中。每發(fā)送一筆 SDO請求信息,必須為這筆信息分配一個請求ID。請求ID的取值范圍為 00h~FFh,CANopen主站通

過 “請求 ID號”識別每一筆請求信息,當(dāng)完成一次通訊,欲進(jìn)行下一次通訊時,必須改變此 ID號。因此若要同時讀取CANopen網(wǎng)絡(luò)中主站狀態(tài),CANopen網(wǎng)絡(luò)狀態(tài),則需要用一個計數(shù)器C和定時器T,每隔一定時間T,計數(shù)器加1,當(dāng)C=0時讀從站狀態(tài);當(dāng)C=1時讀主站狀態(tài);當(dāng)C=2時讀網(wǎng)絡(luò)狀態(tài);當(dāng)C=3時復(fù)位。D6250 請 求 ID 分 別 為 01h,02h,03h;D6253 分 別 為H5002,H5003,H5004。

4 結(jié)束語

本文通過組建CANopen現(xiàn)場總線網(wǎng)絡(luò),說明了組建CANopen網(wǎng)絡(luò)的正確方法,解決了組建網(wǎng)絡(luò)時遇到的一些問題。采用CANopen現(xiàn)場總線控制技術(shù),便于安裝和調(diào)試,極大提高了控制系統(tǒng)的可靠性和實時性?,F(xiàn)場總線的顯著優(yōu)點決定著其廣泛應(yīng)用將成為未來控制領(lǐng)域的發(fā)展趨勢。

[1]葉愛兵,鄭華耀,陳巨濤.基于CANopen的協(xié)議分析系統(tǒng)設(shè)計與實現(xiàn)[D].揚州大學(xué)學(xué)報,2009,3.

[2]吳愛國,劉莉.CAN總線控制系統(tǒng)的應(yīng)用層協(xié)議CANopen剖析[J].微計算機(jī)信息,2003,3.

[3]王俊波,胥布工.CANopen協(xié)議分析與實現(xiàn)[J].微計算機(jī)信息(嵌入式與 SOC),2006,6~2.

猜你喜歡
波特率主站總線
CAN 總線波特率自適應(yīng)程序設(shè)計
智能制造(2020年5期)2020-07-03 06:24:00
基于PCI Express總線的xHC與FPGA的直接通信
機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計
基于FPGA的異步串行通信波特率容錯設(shè)計
電子測試(2018年7期)2018-05-16 06:27:18
基于OS2主站系統(tǒng)的海量數(shù)據(jù)共享技術(shù)研究
多表遠(yuǎn)程集抄主站系統(tǒng)
電子制作(2017年23期)2017-02-02 07:17:07
多通道ARINC429總線檢查儀
基于改進(jìn)經(jīng)濟(jì)壓差算法的主站AVC的研究
關(guān)口電能計量故障監(jiān)測報警裝置及主站研究
基于EtherCAT總線的ROV控制系統(tǒng)設(shè)計
河南科技(2014年16期)2014-02-27 14:13:22
泗水县| 周宁县| 上蔡县| 乐至县| 商城县| 武乡县| 乡宁县| 保靖县| 梅河口市| 新疆| 师宗县| 乐山市| 图们市| 柯坪县| 沙洋县| 阳江市| 海晏县| 昂仁县| 蓝田县| 宜兰市| 托克托县| 溧水县| 晋城| 隆尧县| 竹北市| 通海县| 尉氏县| 奉新县| 北川| 高青县| 绥棱县| 盐津县| 阳城县| 屯昌县| 穆棱市| 社旗县| 且末县| 河北区| 宜兰市| 孟村| 中西区|