西門子數字量 擴展6ES7222-1HH32-0XB0
|
SIMATIC S7-1200,數字輸出 SM 1222,8 DO,繼電器 轉換觸點
|
上海斌勤電氣技術有限公司(西門子合作伙伴)
聯系人電話 :康 奎(業務經理)每天24小時為您服務
S7-300PN 側通信的編程,連接參數及通信參數的配置,測試結果
1. 使用 STEP7 V11 軟件添加新設備并命名 317-2pn
然后進入 “項目視圖”,在“項目樹” 下雙擊 “添加新設備”,在對話框中選擇所使用的 S7-300 CPU 添加到機架上,命名為 317-2pn,如圖1.所示。
圖1. 添加新設備
為了編程方便,使用 CPU 屬性中定義的時鐘位,定義方法如下:
在 “項目樹” > “317-2pn” > “設備組態” 中,選中 CPU ,然后在下面的屬性窗口中,“屬性” > “時鐘存儲器” 下時鐘位定義在 MB0,如圖2.所示。
時鐘位我們主要使用 M0.3,它是以 2Hz 的速率在 0 和 1 之間切換的一個位,可以使用它去自動激活發送任務。
圖2. 時鐘存儲位
3. 為 PROFINET 通信口分配以太網地址
在 “設備視圖”中點擊 CPU 上代表 PROFINET 通信口的綠色小方塊,在下方會出現 PROFINET 接口的屬性,在 “以太網地址” 下分配 IP 地址為 192.168.0.45,子網掩碼為255.255.255.0,如圖3. 所示。
圖3. 分配IP 地址
4.在 S7-300 中調用并配置“TCON”、“TSEND”、“T_RCV” 通信指令
① 在 S7-300 CPU 中調用發送通信指令,進入 “項目樹” > “ 317-2pn” > “程序塊” > “OB1” 主程序中,從右側窗口 “指令” > “通訊” > “開放式用戶通信”下調用 “TCON” 指令,創建連接,如圖4.所示。
圖4. 調用 TCON 通信指令
② 定義 S7-300 的 “TCON”連接參數
S7-300 的 “TCON”指令的連接參數需要在指令下方的屬性窗口“屬性”> “組態”>“連接參數中”中設置,如圖5.所示。
圖5. 定義 TCON 連接參數
連接參數說明:
端點
|
:可以通過點擊選擇按鈕選擇“未指定”;
|
連接類型
|
:選擇通信協議為 TCP;
|
連接 ID
|
:連接的地址 ID 號,這個 ID 號在后面的編程里會用到;
|
連接數據
|
:點擊新建自動生成該數據塊;
|
主動建立連接
|
:選擇對方 S7-1200 作為主動連接;
|
地址詳細信息
|
:定義本方的端口號為:2000。
|
③創建并定義 S7-300 的發送數據區 DB1 塊
通過“項目樹”>“317-2pn”>“程序塊”>“添加新塊”,選擇“數據塊” 創建 DB1 塊,點擊“確定”鍵,定義發送數據區為 101個字節的數組,如圖6.所示,結果如圖7.所示。
圖6. 創建發送數據區 DB 塊
圖7. 定義發送數據區為字節類型的數組 101 字節
④調用 “TSEND” 在OB1內調用 發送 10 個字節數據到 S7-1200 中
進入 “項目樹” > “317-2pn” > “程序塊” > “OB1 ” 主程序中,從右側窗口 “指令” > “通訊” > “開放式用戶通信”下調用 “TSEND” 指令,配置接口參數,如圖8.所示。
圖8. 調用 TSEND 指令并配置接口參數
參數說明:
輸入接口參數:
REQ
|
:= M0.3
|
// 使用 2Hz 的時鐘脈沖,上升沿激活發送任務;
|
ID
|
: = w#16#1
|
//創建連接ID;
|
LEN
|
:= 10
|
//發送數據長度;
|
DATA
|
:= P#DB1.DBX0.0 BYTE 10
|
// 發送數據區的數據;
|
輸出接口參數:
DONE
|
:= M11.0
|
//任務執行完成并且沒有錯誤,該位置 1;
|
BUSY
|
:= M11.1
|
// 該位為 1,代表任務未完成,不能激活新任務;
|
ERROR
|
:= M11.2
|
//通信過程中有錯誤發生,該位置 1;
|
STATUS
|
:= MW22
|
//有錯誤發生時,會顯示錯位信息號。
|
⑤創建并定義 S7-300 的接收數據區 DB2 塊。
通過“項目樹”>“317-2pn”>“程序塊”>“添加新塊”,選擇“數據塊” 創建 DB2 塊,點擊“確定”鍵,定義接收數據區為 101 個字節的數組,如圖9.所示,結果如圖10.所示。
圖9. 創建接收數據區 DB2 塊
圖10. 定義接收數據區為字節類型的數組
⑥ 將 “TRCV” 在OB1內調用
進入 “項目樹” > “317-2pn” > “程序塊” > “OB1 ” 主程序中,從右側窗口 “指令” > “通訊” > “開放式用戶通信”下調用 “TRCV” 指令,配置接口參數,如圖11.所示。
圖11. 調用 TRCV 指令并配置接口參數
參數說明:
輸入接口參數:
EN_R
|
:= M14.0
|
// 準備好接收數據 M14.0=TRUE ;
|
ID
|
:= 1
|
// 連接號,使用的是 TCON 的連接參數中 ID號;
|
LEN
|
:= 10
|
// 接收數據長度為 10 個字節;
|
DATA
|
:= P#DB2.DBX0.0 BYTE 10
|
// 接收數據區的地址;
|
輸出接口參數:
NDR
|
:= M12.0
|
// 該位為 1,接收任務成功完成;
|
BUSY
|
:= M12.1
|
// 該位為 1,代表任務未完成,不能激活新任務;
|
ERROR
|
:= M12.3
|
// 通信過程中有錯誤發生,該位置 1;
|
STATUS
|
:= MW24
|
// 有錯誤發生時,會顯示錯誤信息號;
|
RCVD_LEN
|
:= MW26
|
// 實際接收數據的字節數。
|
配置完連接并編譯存盤。
下載硬件組態及程序并監控通信結果
下載兩個 CPU 中的所有硬件組態及程序,實現兩個 CPU 之間數據交換,監控結果如圖12.所示。
圖12. 監控結果
西門子數字量 擴展6ES7222-1HH32-0XB0