西門子模塊6ES7322-1BH01-4AA1西門子模塊6ES7322-1BH01-4AA1
S7-1200 CPU的組態(tài)編程
3.1創(chuàng)建新項目
1、打開STEP 7 Basic 軟件并新建項目
在STEP 7 Basic 的 “Portal View”中選擇“Create new project”創(chuàng)建一個新項目,項目名稱為“GS_ISO”。
2、添加硬件并命名PLC
然后進入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對話框中選擇所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到機架上,設備名為 PLC_1,如圖1所示。
圖1 添加新的PLC站
為了編程方便,我們使用 CPU 屬性中定義的時鐘位,定義方法如下:
在“Project tree> PLC_1 > Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties > System and clock memory” 下,將系統位定義在MB1,時鐘位定義在MB0,如圖2所示。程序中我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個位,可以使用它去自動激活發(fā)送任務。
圖2 系統和時鐘存儲器
3、為 S7-1200 CPU的PROFINET 通信口分配以太網地址
在 “Device View”中點擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會出現PROFINET 接口的屬性,在 “Ethernet addresses”下分配IP 地址為 192.168.0.2 ,子網掩碼為255.255.255.0,如圖3所示。
圖3為 S7-1200 CPU的PROFINET 接口分配IP地址
3.2調用并配置通信指令
1、在 PLC_1 的 OB1 中調用 “TCON”通信指令
進入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,從右側窗口 “Instructions > Extended Instructions > Communications” 下調用 “TCON” 指令,并選擇 “Single Instance” 生成背景 DB塊,如圖4所示。
圖4 調用TCON指令
2、定義PLC_1 的 “TCON” 連接參數
PLC_1 的 TCON 指令的連接參數需要在指令下方的屬性窗口“Properties > Configuration > Connection beter”中設置,如圖5所示。
連接參數說明:
End point | :選擇通信伙伴,這里選擇“unspecified” |
Address | :指定通信伙伴S7-300站的IP地址“192.168.0.3” |
Connection type | :選擇通信協議為ISO on TCP |
Connection ID | :連接的地址 ID 號,這個 ID 號在后面的編程里會用到 |
Connection data | :創(chuàng)建連接時,系統會自動生成本地的連接 DB 塊,所有的連 接數據都會存在這個 DB 塊中。 |
| :選擇本地 PLC_1作為主動連接,S7-300 CPU作為被動連接 |
Address details | :設定 TSAP 地址這里本地設置成“PLC_1”, TSAP ID自動為“50.4C.43.5F.31”,伙伴方設置成不設置TSAP(ASCII),設置TSAP ID 為“E0.02.50.4C.43.5F.31”。 |
圖5 “TCON” 指令的連接參數
3、分配 “TCON” 的塊參數
在指令下方的屬性窗口“Properties > Configuration > block beter”中設置,可以根據需要自己為“TCON” 塊指定相應的輸入輸出參數。指定好參數的塊,如圖6所示。其中M8.0作為啟動連接的觸發(fā)位,連接ID = 1與連接參數里面的設置相同。
圖6 “TCON” 的塊參數
4、在 PLC_1 的 OB1 中調用 “TSEND” 發(fā)送通信指令
首先創(chuàng)建一個發(fā)送數據塊,通過 “Project tree > PLC_1 > Program blocks > Add new block”,選擇 “Data block” 創(chuàng)建 DB 塊,選擇絕對尋址,點擊“OK”鍵,如圖7所示。
圖7 創(chuàng)建一個發(fā)送數據塊DB3
打開創(chuàng)建的發(fā)送數據塊,在數據塊中定義發(fā)送數據區(qū)為 8個字節(jié)的數組,如圖8所示。
圖8 創(chuàng)建發(fā)送數據區(qū)
然后在OB1 中調用“TSEND”發(fā)送通信指令,并為“TSEND”指定參數。使用M0.3( 2Hz 的時鐘脈沖)上升沿激活發(fā)送任務,指定發(fā)送數據區(qū)為P# DB3.DBX0.0 BYTE 8,連接 ID = 1與連接參數里面的設置相同,發(fā)送長度LEN=8。分配好參數的“TSEND”塊如圖9所示。
圖9 調用“TSEND”發(fā)送通信塊
5、在 PLC_1 的 OB1 中調用“TRCV”接收通信指令
同樣,先創(chuàng)建一個接收數據塊DB4 ,如圖10所示。“TRCV”接收通信指令的調用方法與“TSEND” 發(fā)送通信指令的調用方法相同,M8.1作為接收指令的使能位,如圖11所示。
圖10創(chuàng)建接收數據區(qū)
圖11 調用“TRCV”接收通信塊
6、在 PLC_1 的 OB1 中調用 “TDISCON”通信指令
zui后,為了斷開通信鏈接,我們需要調用“TDISCON”通信指令,如圖12所示。
圖12 調用“TDISCON”通信塊
3.3下載程序
至此,S7-1200側的組態(tài)和編程都已經完成,可以在項目編譯無錯誤后,直接下載到S7-1200 CPU中,并啟動CPU的運行。