1. cp342-5 作主站與fc1(dp_send), fc2(dp_recv)的應(yīng)用
cp342-5 是s7-300 系列的profibus 通訊模塊, 帶有profibus 接口, 可以作為profibus-dp 的主站也可以作為從站, 但不能同時作主站和從站, 而且只能在s7-300 的中央機架上使用, 不能放在分布式從站上使用。由于s7-300 系統(tǒng)的i 區(qū)和q 區(qū)有限,通訊時會有些限制;而用cp342-5 作為dp 主站和從站不一樣,它對應(yīng)的通訊接口區(qū)不是i 區(qū)和q 區(qū),而是虛擬通訊區(qū),需要調(diào)用fc1 和fc2 建立接口區(qū),下面以例子來介紹cp342-5 作為主站的使用方法。
2.所需硬件和軟件
軟件: step 7 v5.2
硬件:
1.profibus-dp 主站帶cp342-5 的s7-300 cpu315-2dp
2.從站選用et200m
3.mpi 網(wǎng)卡cp5611
4.profibus 電纜及接頭
3. 網(wǎng)絡(luò)配置圖
帶cp342-5 的s7 cpu315-2dp 的網(wǎng)絡(luò)配置圖如下圖所示:
cp342-5 et200m
此組態(tài)實例是選用cp342-5 接口作為主站和et200 m 組成profibus 網(wǎng)絡(luò)。首先,將cp342-5 插在s7-300 的中央機架上,用一條profibus 總線將cp342-5 和et200m 相連接。
4. 組態(tài)
打開simatic manager 軟件,在file 菜單下選擇new 新建一個項目,在name 欄中輸入項目名稱,將其命名為“cp342-5_master ”,在下方的storage location 中設(shè)置其存儲位置,如下圖:
在項目窗口的左側(cè)選中該項目,按右鍵在彈出的下拉菜單中選擇insert new object 和simatic 300 station 插入一個s7-300 站,則插入的s7-300 站即顯示在右側(cè)的窗口。
雙擊simatic 300 station 目錄下的hardware 圖標(biāo),打開hw configuration 進(jìn)行硬件組態(tài)。在hw configuration 主界面的右側(cè)按實際硬件安裝順序完成系統(tǒng)硬件組態(tài)。在菜單欄中選擇“view”菜單,并在下拉菜單中選擇“catalog”打開硬件目錄;在左側(cè)目錄中打開simatic 300 文件夾,在rack-300 下選擇一個機架,把選用的機架拖到屏幕的左上方。同時在2 號槽和4 號槽分別插入cpu 和 cp342-5 模塊。在配置cpu 時,會自動彈出一個對話框,此時不用做任何設(shè)置,直接點擊ok 即可。由于在該實例中,將cp342-5 作為主站,配置cp342-5 網(wǎng)絡(luò)設(shè)置時,先新建一條profibus 網(wǎng)絡(luò),然后組態(tài)profibus 屬性如下圖:
本例中選擇傳輸速率為“1.5mbps”和“dp”行規(guī),無中繼器和obt 等網(wǎng)絡(luò)元件,點擊“ok”按鈕確認(rèn)。然后定義cp342-5 的站地址,本例中為2 號站,加入cp 后,雙擊該欄,在彈出的對話框中,選擇“operating mode”標(biāo)簽,選擇“dp master”模式,如下圖:
點擊“ok”按鈕確認(rèn)主站組態(tài)完成。組態(tài)從站:在hw configuration 主界面中,在右圖中選擇profibus dp ® dp v0 slaves ® et200m 如下圖所示,并為其配置2 個字節(jié)個輸入和2 個字節(jié)輸出點,輸入輸出點的地址從0 開始,是虛擬地址映射區(qū),而不占用i 區(qū)和q 區(qū),虛擬地址的輸入?yún)^(qū)在主站上要調(diào)用fc1 (dp_send) 與之一一對應(yīng),虛擬地址的輸出區(qū)在主站上要調(diào)用fc2 (dp_recv) 與之一一對應(yīng),如果修改cp342-5 的從站開始地址,如輸入輸出從地址2 開始,相應(yīng)的fc1 和fc2 對應(yīng)的地址區(qū)也要相應(yīng)偏移2 個字節(jié)。組態(tài)完成后下載到cpu 中,如果沒有調(diào)用fc1,fc2, cp342-5 profibus 的狀態(tài)等“busf”將閃爍,在ob1 中調(diào)用fc1,fc2 后通訊將建立。配置多個從站虛擬地址區(qū)將順延。
5. 編程
在ob1 中調(diào)用fc1 和fc2,fc1 和fc2 的位置如右圖,具體程序如下:
參數(shù)含義:
cpladdr:cp342-5 的地址。
send :發(fā)送區(qū),對應(yīng)從站的輸出區(qū)。
recv:接收區(qū),對應(yīng)從站的輸入?yún)^(qū)。
done:發(fā)送完成一次產(chǎn)生一個脈沖。
ndr: 接收完成一次產(chǎn)生一個脈沖。
error:錯誤位。
status:調(diào)用fc1,fc2 時產(chǎn)生的狀態(tài)字。
dpstatus:profibus-dp 的狀態(tài)字節(jié)。
從上面我們可以看出,mb20,mb21 對應(yīng)從站輸出的第一個字節(jié)和第二個字節(jié),mb22,mb23 對應(yīng)從站輸入的第一個字節(jié)和第二個字節(jié)。連接多個從站時,虛擬地址將向后延續(xù)和擴大,調(diào)用fc1,fc2 只考慮虛擬地址的長度,而不會考慮各個從站的站號。如果虛擬地址的開始地址不為0,那么調(diào)用fc 的長度也將會增加,假設(shè):虛擬地址的輸入?yún)^(qū)開始為4,長度為10 個字節(jié),那么對應(yīng)的接收區(qū)偏移4 個字節(jié)相應(yīng)長度為14 個字節(jié),接收區(qū)的第5 個字節(jié)對應(yīng)從站輸入的第一個字節(jié),如接收區(qū)為 p#m0.0 byte 14 ,mb0~mb13,偏移4 個字節(jié)后,mb4~mb13 與從站虛擬輸入?yún)^(qū)一一對應(yīng)。編完程序下載到cpu 中,通訊區(qū)建立后,profibus 的狀態(tài)燈將不會閃爍,例子程序參見光盤“ profibus ” 目錄下的項目名“ cp342-5_master”。
注意:
使用cp342-5 作為主站時,因為本身數(shù)據(jù)是打包發(fā)送,不需要調(diào)用sfc14, sfc15,由于cp342-5 尋址的方式是通過fc1,fc2 的調(diào)用訪問從站地址,而不是直接訪問i/q 區(qū),所以在et200m 上不能插入智能模塊,如:fm350-1、fm352 等項,所有從站的ti to 時間保持一致。