硬件列表
表1 實(shí)驗(yàn)所需硬件列表
2 組態(tài)和配置
1、打開軟件TIA PORTAL STEP7 V16,點(diǎn)擊項(xiàng)目-》新建。..創(chuàng)建一新項(xiàng)目,項(xiàng)目名稱為S7-1500_ET200S_ASCII。
圖1 新建項(xiàng)目
2、用鼠標(biāo)點(diǎn)擊“添加新設(shè)備”,選擇SIMATIC S7-1500-》CPU-》CPU 1518-4 PN/DP-》6ES7 518-4AP00-0AB0。
圖2 添加站點(diǎn)CPU 1518-4PN/DP
3、雙擊“設(shè)備組態(tài)”進(jìn)入設(shè)備視圖。雙擊以太網(wǎng)接口,進(jìn)入以太網(wǎng)接口屬性界面,新建一個子網(wǎng)“PN/IE_1”,并分配IP地址。
圖3 組態(tài)硬件
4、點(diǎn)擊菜單欄“在線”-》“硬件檢測”-》“網(wǎng)絡(luò)中的PROFINET設(shè)備”,在線檢測所連接的ET200S站點(diǎn),如圖4所示。
圖4 在線檢測ET200S站
在彈出的“PROFINET 設(shè)備的硬件檢測”窗口內(nèi)勾選搜索到的ET200S站點(diǎn),并點(diǎn)擊添加設(shè)備。
圖5 添加ET200S站
5、設(shè)備添加成功后,在“網(wǎng)絡(luò)視圖”內(nèi),可以看到新添加的ET200S站。另外,用戶也可以從選件目錄中找到正確的ET200S接口模塊型號,將它拖拽到網(wǎng)絡(luò)視圖中,添加模塊時需要注意組態(tài)的模塊版本應(yīng)與實(shí)際一致。
圖6 添加ET200S站法二
6、點(diǎn)擊ET200S站左側(cè)“未分配”,選擇IO控制器“PLC_1.PROFINET接口_1”,為ET200S分配好IO控制器。
圖7 Profinet網(wǎng)絡(luò)配置
同時為ET200S的以太網(wǎng)接口分配好IP地址,注:此時給ET200S分配了一個設(shè)備名稱為“im151-3pn”(該名稱不唯一,以實(shí)際項(xiàng)目為準(zhǔn)),確保離線和在線的設(shè)備名稱一致。
下面介紹如何修改設(shè)備名稱。如需離線修改該設(shè)備名稱,可以進(jìn)入ET200S模塊的屬性-〉以太網(wǎng)地址。
圖8 離線修改ET200S的設(shè)備名稱
下面介紹如何在線分配IO設(shè)備名稱。如ET200S的實(shí)際設(shè)備名稱與組態(tài)設(shè)置的不一致,也可以在線修改。右擊網(wǎng)絡(luò)“PN/IE_1”,點(diǎn)擊“分配設(shè)備名稱”,在線修改ET200S的設(shè)備名稱。
圖9 分配設(shè)備名稱
確保ET200S的設(shè)備名稱的狀態(tài)是“確定”,如果出現(xiàn)不一致的情況,選擇問題站點(diǎn)后點(diǎn)擊“分配名稱”,確保該站點(diǎn)最后的狀態(tài)是“確定”,如下圖所示。
圖10 確認(rèn)ET200S設(shè)備名稱在線與離線一致
7、雙擊“im151-3pn”,進(jìn)入ET200S組態(tài)界面,(自動檢測已經(jīng)將電源模塊PM-E和ET200S 1SI串口模塊組態(tài)到1、2槽;手動組態(tài)時需要用戶手動從選件目錄中拖拽添加),雙擊1SI_1串口通信模塊,進(jìn)入屬性框,協(xié)議選擇“ASCII”,波特率為9600,地址區(qū)為32字節(jié)。
圖11 1SI_1選擇ASCII協(xié)議
8、點(diǎn)擊“報文”,進(jìn)行報文設(shè)置,數(shù)據(jù)位:8,停止位:1,奇偶校驗(yàn):無。
圖12 報文設(shè)置
9、點(diǎn)擊“接口”,接口選擇“半雙工(RS-485兩線制模式)”,接收線路初始狀態(tài)選擇“信號R(A)0V/信號R(B)5V”。
圖13 接口設(shè)置
3 編寫通信程序
1、雙擊“添加新塊”,創(chuàng)建發(fā)送數(shù)據(jù)塊DB10和接收數(shù)據(jù)塊DB11,這2個數(shù)據(jù)塊中分別新建1個數(shù)據(jù)類型Array的變量,數(shù)組元素的數(shù)據(jù)類型為Byte,數(shù)量為401;發(fā)送數(shù)據(jù)塊中的變量名稱為Send,接收數(shù)據(jù)塊中的變量名稱為Rcv。
圖14 新建發(fā)送接收數(shù)據(jù)塊
1.注意以上兩個DB塊,右鍵其屬性對話框,一定要確保“優(yōu)化的塊訪問”參數(shù)未勾選。
2、進(jìn)入主程序OB1,從通信-》通信處理器-》ET200S串行接口,調(diào)用發(fā)送功能塊S_SEND和接收功能塊S_RCV。S_END的背景數(shù)據(jù)塊為DB3,S_RCV的背景數(shù)據(jù)塊為DB4。
圖15 調(diào)用發(fā)送接收功能塊
1SI串口模塊的發(fā)送與接收功能塊的參數(shù)設(shè)置見以下表格。
表2 發(fā)送功能塊S_SEND 參數(shù)表
表3 接收功能塊S_RCV 參數(shù)表
4 設(shè)備連接
以RS485的方式接線為例說明,ET200S 1SI 模塊按照RS485的接線方式連接到電腦的USB口,連接示意圖如下。
圖16 硬件結(jié)構(gòu)和接線示意圖
5 通信測試
使用串口調(diào)試軟件來測試ET200S 1SI和計(jì)算機(jī)的通信,步驟如下。
1、1SI串口模塊發(fā)送數(shù)據(jù)到SSCOM32
1.將硬件配置和程序下載到CPU1518-4PN/DP中
2.設(shè)置需要發(fā)送的數(shù)據(jù)長度MW2=10(字節(jié))
3.將DB10中前10個字節(jié)設(shè)為十六進(jìn)制的01 02 03 04 05 06 07 08 09 0A
4.當(dāng)M0.0從FALSE置成TRUE上升沿時,1SI串口模塊將發(fā)送數(shù)據(jù),可以從SSCOM32接收窗口中看到收到的數(shù)據(jù)(十六進(jìn)制),如下圖所示。
圖17 ET200S 1SI發(fā)送數(shù)據(jù)調(diào)試軟件接收數(shù)據(jù)測試結(jié)果
2、1SI串口模塊從SSCOM32接收數(shù)據(jù)
M1.0為常閉點(diǎn),程序下載完成,CPU運(yùn)行后,就始終處于接收狀態(tài)。
1.在計(jì)算機(jī)上打開軟件SSCOM32,在字符輸入窗口輸入16進(jìn)制數(shù)據(jù)10111213141516171819,然后點(diǎn)擊發(fā)送按鈕發(fā)送數(shù)據(jù)。
2.在TIA STEP7中打開接收數(shù)據(jù)塊DB11監(jiān)控接收到的數(shù)據(jù),可以看到SSCOM32發(fā)送的數(shù)據(jù)被正確的接收。
圖18 ET200S 調(diào)試軟件發(fā)送數(shù)據(jù)1SI接收數(shù)據(jù)測試結(jié)果
6 常見問題
1.為什么程序下載后,CPU突然不能正常啟動,并報錯“編程錯誤(OB啟動事件)”和“FB97中的區(qū)域長度錯誤”?
如下圖所示,CPU切換為STOP模式,報錯“編程錯誤(OB啟動事件)”和“FB97中的區(qū)域長度錯誤”。
圖19 ET200S 調(diào)試軟件發(fā)送數(shù)據(jù)1SI接收數(shù)據(jù)測試結(jié)果
可能的原因是:發(fā)送或者接收的數(shù)據(jù)塊(例中DB10或者DB11)是優(yōu)化的DB塊,那么在執(zhí)行發(fā)送或者接收操作時會報以上錯誤,并且CPU停機(jī),所以務(wù)必注意該DB塊的屬性必須是非優(yōu)化的,如圖14。
1.為什么發(fā)送或者接收指令塊報錯“16#1E0E”?
可能的原因是:發(fā)送或者接收功能塊的“LADDR”管腳設(shè)置錯誤,正確的應(yīng)該設(shè)置該模塊的硬件標(biāo)識符,而不是模塊的I/O起始地址,具體查找步驟參考下表。
表4 模塊硬件標(biāo)識符查找方法
方法一方法二
審核編輯:郭婷
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5460瀏覽量
172752 -
cpu
+關(guān)注
關(guān)注
68文章
10905瀏覽量
213034
原文標(biāo)題:S7-1500系統(tǒng)內(nèi)使用ET200S 1SI模塊實(shí)現(xiàn)自由口通信
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機(jī)器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論