西門(mén)子網(wǎng)卡CP5711
SM331 AI8 x12bit模塊的參數(shù)
以SM331 AI8 x12bit (6ES7331-7KF02-0AB0,下略寫(xiě)為SM331(7KF02))為例,說(shuō)明如何編程修改信號(hào)參數(shù)。
3.1 可修改參數(shù)
參考手冊(cè)《S7-300 模塊數(shù)據(jù)》A.4小節(jié),表A-4列出SM331(7KF02)模塊參數(shù)是否可組態(tài),可編程修改為(表3):
表3 SM331(7KF02)參數(shù)組態(tài)編程特性
3.2 參數(shù)數(shù)據(jù)記錄1
通過(guò)數(shù)據(jù)記錄1可以進(jìn)行修改SM331(7KF02)參數(shù),參數(shù)數(shù)據(jù)記錄1一共是14個(gè)字節(jié),結(jié)構(gòu)為:
?字節(jié)0(圖1):
圖1參數(shù)數(shù)據(jù)記錄1字節(jié)0
?字節(jié)1(圖2):
圖2參數(shù)數(shù)據(jù)記錄1字節(jié)1
?字節(jié)2至字節(jié)5(圖3)
圖3參數(shù)數(shù)據(jù)記錄1字節(jié)2至字節(jié)5
部分測(cè)量方法與量程代碼(表4):
(上表僅列出本文示例所涉及測(cè)量方法及量程代碼,其余代碼請(qǐng)參考《S7-300模塊數(shù)據(jù)手冊(cè)》)
表4 SM331(7KF02)部分測(cè)量方法與量程代碼
西門(mén)子CP5711網(wǎng)卡?字節(jié)6至字節(jié)13(圖4)
圖4參數(shù)數(shù)據(jù)記錄1字節(jié)6至字節(jié)13
西門(mén)子網(wǎng)卡CP5711
4 編程SM331 AI8 x12bit參數(shù)
組態(tài)SM331(7KF02) 0通道為0~10V電壓測(cè)量,組態(tài)報(bào)警上限為9V,下限為1V,示例將報(bào)警的上限編程修改為8V,下限修改為2V。
4.1 組態(tài)SM331(7KF02)
圖5 組態(tài)SM331(7KF02)在主機(jī)架
圖6 SM331 參數(shù)組態(tài)
4.2 編程SM331(7KF02)寫(xiě)參數(shù)
關(guān)鍵詞
S7-300,S7-400,系統(tǒng)功能, 模塊參數(shù)
示例程序的說(shuō)明
STEP 7項(xiàng)目包含從標(biāo)準(zhǔn)庫(kù)中的通訊功能塊 FB14 "GET" 和 FB15 "PUT" 的調(diào)用。通信基礎(chǔ)是兩站之間建立的 S7 連接。FB14 "GET" 從遠(yuǎn)程CPU讀取數(shù)據(jù),使用 FB15 "PUT" 向遠(yuǎn)程CPU寫(xiě)入數(shù)據(jù)。
示例程序展示如何在建立 S7 連接后如何使用 FB14 "GET" 和 FB15 "PUT"。
首先創(chuàng)建 S7-300 站的硬件配置。
注意:
配置 MB10 為時(shí)鐘存儲(chǔ)器,讀、寫(xiě)任務(wù)由這個(gè)時(shí)鐘觸發(fā)。保存并編譯硬件配置并下載到 S7-300 中。
定時(shí)器 T10 用于此例中。
在 NetPro 界面中 配置 S7 連接。如果通訊雙方在同一個(gè) STEP 7 項(xiàng)目中,那么就能配置的 S7 連接。如果 S7-300 站通訊雙方不在同一個(gè) STEP 7 項(xiàng)目中,那么配置成非的 S7 連接。確定在配置 S7 連接時(shí)了正確的 IP 地址或者 PROFIBUS 站地址。還需要確定指派的槽架號(hào)和鏈接資源的正確性。這樣能明確的識(shí)別出通訊雙方的 S7 連接。
在通訊塊 FB14 "GET" 和 FB15 "PUT" 的輸入?yún)?shù) "ID" 中必須明確的賦值,此值既是 S7 連接屬性對(duì)話框中的 -> "General"。
圖 01
STEP 7 程序中包含 OB100,OB1,F(xiàn)B100,DB100,DB200,DB201, FB14 和 FB15。
OB100
OB100是一個(gè)啟動(dòng)OB,當(dāng)CPU重啟時(shí)運(yùn)行。在這個(gè)OB中,用于觸發(fā)*次通信的使能信號(hào)是 M0.3。
OB1
OB1被循環(huán)地調(diào)用。FB115 在這個(gè) OB 中被調(diào)用(背景數(shù)據(jù)塊:DB15),使能信號(hào)是 M0.3。一旦 FB100運(yùn)行,M1=0.3 被復(fù)位。
圖. 02
FB115
FB115 在 OB1循環(huán)中被調(diào)用。這個(gè) FB包含調(diào)用 FB14 (“GET”)和 FB15 (“PUT”)。
通訊塊輸入?yún)?shù) "ID" 必須為在 NetPro 中 S7 連接的連接號(hào),即輸入?yún)?shù) "ID" 的值取自于 S7 連接的屬性對(duì)話框(見(jiàn)圖 01)。
在 FB115 中可以分別改變連接號(hào)。在 FB115 的 Network 1 中根據(jù)網(wǎng)絡(luò)配置來(lái)改變連接號(hào)。連接號(hào)保存于靜態(tài)標(biāo)簽中,即存儲(chǔ)于背景數(shù)據(jù)塊 DB115中。
連接號(hào) "1" 如本例中的定義。
圖. 03
當(dāng) M10.6 出現(xiàn)上升沿并且程序塊不忙時(shí),F(xiàn)B14 由輸入?yún)?shù) "REQ" 激活。只有當(dāng)讀取任務(wù)成功或者出錯(cuò)完成時(shí),輸入?yún)?shù) "REQ" 復(fù)位。這意味著新的讀取任務(wù)只有當(dāng)任務(wù)完成時(shí)才能再次觸發(fā)。
這個(gè)鎖定功能是非常重要的。因?yàn)樵摵瘮?shù)的運(yùn)行是異步的并且持續(xù)好幾個(gè)循環(huán)。持續(xù)激活該函數(shù)塊而不等待當(dāng)前作業(yè)結(jié)束,將導(dǎo)致通信過(guò)載。
參數(shù)“ADDR_1”指向遠(yuǎn)程 CPU 中要寫(xiě)入的或者將讀取的數(shù)據(jù)區(qū)域。例如:P#DB201.DBX0.0 BYTE 200。參數(shù)“RD_1”包含待讀取數(shù)據(jù)的地址,例如:P#DB200.DBX0.0 BYTE 100。需要輸出參數(shù)“DONE”、“ERROR”和“ STATUS”用于評(píng)估任務(wù),并且僅僅在同一個(gè)循環(huán)中有效。
圖. 04
如果塊運(yùn)行出現(xiàn)錯(cuò)誤,輸出參數(shù) "STATUS" 保存塊的狀態(tài)字,用于錯(cuò)誤分析。
圖. 05
當(dāng) M10.6 出現(xiàn)上升沿并且程序塊不忙時(shí),F(xiàn)B15 由輸入?yún)?shù) "REQ" 激活。只有當(dāng)發(fā)送任務(wù)成功或者出錯(cuò)完成時(shí),輸入?yún)?shù) "REQ" 復(fù)位。這意味著新的發(fā)送任務(wù)只有當(dāng)任務(wù)完成時(shí)才能再次觸發(fā)。
這個(gè)鎖定功能是非常重要的。因?yàn)樵摵瘮?shù)的運(yùn)行是異步的并且持續(xù)好幾個(gè)循環(huán)。持續(xù)激活該函數(shù)塊而不等待當(dāng)前作業(yè)結(jié)束,將導(dǎo)致通信過(guò)載。
參數(shù)“ADDR_1”指向遠(yuǎn)程 CPU 中要寫(xiě)入的或者將讀取的數(shù)據(jù)區(qū)域。例如:P#DB200.DBX0.0 BYTE 20。參數(shù)“SD_1”包含待發(fā)送數(shù)據(jù)的地址,例如: P#DB201.DBX0.0 BYTE 20。需要輸出參數(shù)“DONE”、“ERROR”和“ STATUS”用于評(píng)估任務(wù),并且僅僅在同一個(gè)循環(huán)中有效。
圖. 06
如果塊運(yùn)行出現(xiàn)錯(cuò)誤,輸出參數(shù) "STATUS" 保存塊的狀態(tài)字,用于錯(cuò)誤分析。
圖. 07