西門子串口通訊09-CP341在博途環境中做Modbus從站通訊

西門子串口通訊09-CP341在博途環境中做Modbus從站通訊
v—x—公–衆–號:工控自動化老王
1 硬件列表
設備名稱 設備型號
PS 307 6ES7 307-1EA01-0AA0
CPU 315-2PN/ DP 6ES7 315-2EH14-0AB0
MMC 6ES7 953-8LG30-0AA0
CP341 6ES7 341-1AH02-0AE0
Dongle 6ES7 870-1AB01-0YA0
應用CP341進行 MODBUS協議通信時需要有Dongle的支持。在使用之前先將Dongle安裝在CP341模塊的背面的Dongle插槽中,Dongle和插入Dongle前後的CP341如下圖所示。
在這裏插入圖片描述
2 組態和配置
1、打開軟件TIA PORTAL STEP7 V13,點擊項目->新建…創建一新項目,項目名稱爲341_modbus_Slave。
在這裏插入圖片描述
2、用鼠標點擊“添加新設備”,選擇SIMATIC S7-300->CPU->CPU 315-2PN/DP->6ES7 315-2EH14-0AB0。
在這裏插入圖片描述
3、雙擊“設備組態”進入硬件組態界面,導軌RACK和CPU 315-2PN/DP已經存在,只需要插入PS307和CP341。
在這裏插入圖片描述
4、雙擊CP341模板,進入CP341的屬性框,配置CP341參數。
在這裏插入圖片描述
5、在“協議”選項中選擇“Modbus從站”。配置Modbus從站通信參數,設定的通信參數要和通訊夥伴的相同。傳輸率(通信波特率):9600bps,數據位:8位,停止位:1位,奇偶校驗:無,從站站址:2,其他的參數都採用默認設置。
在這裏插入圖片描述
6、FC01,05,15:讀取、強制輸出位的狀態;分4個範圍,每個範圍前2行地址爲信息傳送地址,後2行對應西門子的PLC地址區,即第1範圍從0-15對應MODBUS地址區爲00001-00016,對應西門子數據區(標記F.)爲M10.0-M11.7;第2範圍從16-31對應MODBUS 地址區爲00017-00032,對應西門子數據區(輸出Q.)爲Q0.0-Q1.7;第3範圍從地址32-64對應Modbus 地址區爲00033-00065,對應西門子數據區(時間T.)爲T0-T1;第4範圍從地址64-96對應Modbus 地址區爲00065-00097,對應西門子數據區(計數器C.)爲C0~C1。
在這裏插入圖片描述
7、FC02:讀取輸入數據位的狀態,分2個範圍,每個範圍前2行地址爲信息傳送地址,後2行對應西門子的PLC地址區,即第1範圍從0-15對應MODBUS地址區爲10001-10016,對應西門子數據區(標記F.)爲M12.0-M13.7;第2範圍從16-31對應MODBUS 地址區爲10017-10032,對應西門子數據區(輸入I.)爲I0.0-I1.7。
在這裏插入圖片描述
8、FC03、06、16:組態保持寄存器數據區,對應西門子數據區爲DB塊,即MODBUS保持寄存器地址區的地址40001,對應西門子DB塊的地址DB10.DBW0,依次40002對應DB10.DBW2,往後依次類推。
在這裏插入圖片描述
9、FC04:組態輸入寄存器數據區,對應西門子數據區同樣是DB塊,即MODBUS輸入寄存器地址區的地址30001,對應西門子DB塊的地址DB11.DBW0,依次30002對應DB11.DBW2,往後依次類推。
在這裏插入圖片描述
10、設置寫參數的限制值,對寫操作做訪問限制。
在這裏插入圖片描述
11、如果選用的是RS422/485接口的CP341時,還需要設置接口類型,如下圖所示,其它參數與RS232的設置一樣。
在這裏插入圖片描述
3 編寫通信程序
1、在設置功能碼FC03、06、16中,創建DB10滿足設置需要;在設置功能碼FC04中,創建DB11滿足設置需要。這2個數據塊都創建1個數據類型Array的變量,數組元素的數據類型爲Word,數量爲101。
在這裏插入圖片描述
2、進入主程序OB1,從通信->通信處理器->MODBUS Slave (RTU),調用功能塊MODB_341,MODB_341的背景數據塊爲DB1。
在這裏插入圖片描述
關於功能塊MODB_341的管腳說明。
LADDR 硬件組態中的起始邏輯地址,本例中爲256,見圖15
START_TIMER 超時初始化定時器,本例中爲T0
START_TIME 超時初始化時間值,本例中爲S5t#1s
OB_MASK 外設訪問錯誤屏蔽位,本例中爲M200.0
CP_START FB初始化始能位,該位需要置1。本例中爲M200.1
CP_START_FM CP_START初始化的上升沿位,本例中爲M200.2
CP_START_NDR 從CP寫操作位,本例中爲M200.3
CP_START_OK 初始化成功標誌,本例中爲M200.4
CP_START_ERROR 初始化失敗標誌,本例中爲M200.5
ERROR_NR 錯誤號,本例中爲MW202
ERROR_INFO 錯誤信息,本例中爲MW204,可以查看Modbus Slave 手冊第10章
在這裏插入圖片描述
4 設備連接
本文檔使用的CP341的接口是RS232C,因此需要通過標準的RS232C電纜來連接CP341和計算機的串口,具體的電纜連接方法請查看CP341手冊B章節連接電纜部分(見:手冊、文檔和軟件鏈接部分)。
如果使用的CP341是RS485接口的模塊,需要使用RS232C/RS485轉換器。
5 通信測試
前面使用 TIA Step7 軟件已經將通信CP341的通信工作做完,下面進行通信測試。這裏使用串口通訊測試軟件Modscan32軟件來測試CP341和計算機的通信,步驟如下
1、將項目程序在線,本示例中手動將M200.1(即:CP_START)置1,M200.2(即:CP_START_FM)和M200.4(即:CP_START_OK)也會爲1。
在這裏插入圖片描述
2、首先將硬件配置和程序下載到CPU315-2DP中。在計算機上打開MODBUS主站仿真軟件Modscan32。
2、首先將硬件配置和程序下載到CPU315-2DP中。在計算機上打開MODBUS主站仿真軟件Modscan32。
3、點擊Modscan32上的Connection->Connect,顯示畫面如下,選擇計算機和CP341相連的COM口COM1,設好波特率,數據位,停止位,校驗方式,如下圖。
在這裏插入圖片描述
4、設置完成,點擊OK,顯示畫面如下。
在這裏插入圖片描述
5、數據顯示區的10個地址的數據對應CPU中DB10的前10個字(Word)的數值(DBW0–DBW10分別爲1-10 ),如下圖。給這10個字賦值1-10。
在這裏插入圖片描述
6、Modscan32軟件界面03功能碼的地址40001-40010分別顯示1-10的數據。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章