西門子通訊模塊6ES7541-1AB00-0AB0
數(shù)據(jù)必須自“Data to transmit byte 0"起存儲在數(shù)據(jù)記錄中,。因此,數(shù)據(jù)記錄的大小以及用于傳輸幀的數(shù)據(jù)記錄數(shù)可通過傳輸介質(zhì)確定,,例如,,使用 PROFIBUS 時為 240 字節(jié)。
如果待傳輸數(shù)據(jù)的長度不是數(shù)據(jù)記錄長度的倍數(shù),,則最后一個數(shù)據(jù)記錄的長度對應(yīng)于待傳輸?shù)氖S鄶?shù)據(jù)的長度,。
模塊的發(fā)送確認(rèn)
模塊會將數(shù)據(jù)記錄中接收到的“Sequence number"寫入為用戶數(shù)據(jù)的發(fā)送確認(rèn)。 請參見“Querying send acknowledgment - bbbbb user data"一章中的“SEND acknowledgment from module",。
對于屬于某一幀的最后一個數(shù)據(jù)記錄,,在模塊發(fā)送幀后才寫入確認(rèn)。
也就是說,,必須在寫入最后一個數(shù)據(jù)記錄后才評估“SEND acknowledgment from module"和“SEND status",。
模塊在啟動時會將零寫入“SEND acknowledgment from module"(請參見“Querying send acknowledgment - bbbbb user data"一章)
如果“SEND acknowledgment from module"等于零,則必須中止正在傳輸?shù)淖鳂I(yè),。
標(biāo)準(zhǔn)機(jī)器項(xiàng)目是使用一組創(chuàng)新功能的 STEP 7 項(xiàng)目,,它們支持輕松組態(tài)和調(diào)試標(biāo)準(zhǔn)機(jī)器或具有模塊化結(jié)構(gòu)的機(jī)器的靈活自動化解決方案。
硬件配置包含作為 IO 控制器的 S7-1500 CPU 以及作為“PROFINET IO 系統(tǒng)主站"的已連接 IO 設(shè)備,。該主站采用最大配置,,可以根據(jù)該最大配置為不同的標(biāo)準(zhǔn)機(jī)器派生不同的選項(xiàng),例如 IO 系統(tǒng)隨配置的不同而異,。
全面提升所有級別的靈活性
標(biāo)準(zhǔn)機(jī)器項(xiàng)目具有以下集中式特性:
從一個具有最大工程組態(tài)的項(xiàng)目(IO 系統(tǒng)主站),,可以加載多個不同的標(biāo)準(zhǔn)機(jī)器版本(IO 系統(tǒng)選項(xiàng))。標(biāo)準(zhǔn)機(jī)器項(xiàng)目涵蓋 IO 系統(tǒng)的所有版本(選項(xiàng)),。
IO 系統(tǒng)選項(xiàng)可以使用簡單的工具本地集成到現(xiàn)有網(wǎng)絡(luò)中,。
以多種方式提供靈活性:
如果組態(tài)合適,可以使用簡單的工具本地調(diào)整 IO 控制器的 IP 地址參數(shù),。這樣就可以將標(biāo)準(zhǔn)機(jī)器輕松集成到不同的工廠中,,或者多次連接到網(wǎng)絡(luò)中。
具有這種特性的 IO 系統(tǒng)被稱為“可多次使用的 IO 系統(tǒng)",。
如果組態(tài)和編程合適,,就可以本地操作 IO 系統(tǒng)選項(xiàng)的不同設(shè)置(所用 IO 設(shè)備的選擇或 IO 設(shè)備的排列不同)。
由于 IO 系統(tǒng)的特定組態(tài)可由用戶程序控制,,因此這被稱為“IO 系統(tǒng)的組態(tài)控制"。
如果組態(tài)和編程合適,,您還可以獨(dú)立于上述功能,,在一個項(xiàng)目中使用集中式設(shè)備或分布式 I/O 設(shè)備的不同站選項(xiàng)。設(shè)備的模塊選擇和排列可以不同,。
由于站的具體組態(tài)由用戶程序控制,,這也被稱為“組態(tài)控制",。
操作模式的轉(zhuǎn)換:

1) 標(biāo)準(zhǔn),F(xiàn)-CPU/緊湊型 CPU,,訂貨號 6ES751x-xxx02-0AB0/6ES751x-1CK01-0AB0:您可使用按鍵(RUN 和 STOP)切換模式
西門子通訊模塊6ES7541-1AB00-0AB0
本程序特點(diǎn):
1. 實(shí)現(xiàn)MODBUS RTU 功能號1,、2、3,、4,、5、6,、15,、16。
2. 支持單臺CPU下多臺通信模塊,,一臺通信模塊使用一套程序,,互不干擾。
3. 可單條或多條 輪詢指令 離線,,即從站掉電,,可手動讓其離線,減少輪詢時間,。
4. 可控制每條指令間的時間間隔,。
5. 程序量再大也不必?fù)?dān)心CPU掃描時間,因?yàn)槲催\(yùn)行的指令會跳過,。
6. 每條指令單獨(dú)返回錯誤信息,。
7. 不必?fù)?dān)心程序塊和數(shù)據(jù)塊多,支持多重背景,。
8. 程序組態(tài)直觀,,簡單,方便,,靈活,。
9. 指令內(nèi)集成端口配置指令,發(fā)送和接收配置指令,,外部只需簡單參數(shù)即可,。
10. 在冗余系統(tǒng)上使用通過。
二,、 硬件網(wǎng)絡(luò)施工
關(guān)于通信網(wǎng)絡(luò)施工,,盡量選擇西門子485紫皮電纜,你胡弄網(wǎng)絡(luò),,網(wǎng)絡(luò)就胡弄你,,所以質(zhì)量可靠的硬件是保證通信正常的前提。若通信線路過長,,請使用RS485中繼器,,但請不要西門子RS485中繼器,,因?yàn)椴恢С諱ODBUS通信。具體接線方式請查閱相關(guān)資料,。
CM PtP RS422/485 BA接線圖:下表顯示了 CM PtP RS422/485 BA 前面板上 15 針 sub-D 型插槽的針腳分配,。

三、 程序說明及使用方法
您得到的程序如圖:這是由TIA V16歸檔后文件,,打開TIA V16后,,打開此文件,會提示新建文件夾,,恢復(fù)后會看到項(xiàng)目已經(jīng)打開,。

2. 程序工作原理

3. 程序塊功能說明:
MBrtuMaster1500PointerDB1:用戶數(shù)據(jù)塊。非優(yōu)化數(shù)據(jù)塊,??梢允菃蝹€數(shù)據(jù)塊,也可以是多個數(shù)據(jù)塊,。從站返回的數(shù)據(jù)保存在這個數(shù)據(jù)里,,向從站寫入的數(shù)據(jù)也在這個數(shù)據(jù)塊里。
MBrtuMaster1500BufferDB1:緩沖區(qū)數(shù)據(jù)塊,。非優(yōu)化數(shù)據(jù)塊一個緩沖區(qū)數(shù)據(jù)塊對應(yīng)一個串口,。將要發(fā)送的數(shù)據(jù)在這里進(jìn)行校驗(yàn)操作,接收回的數(shù)據(jù)同樣在這里校驗(yàn)操作,。
MBrtuMaster1500Msg:主站輪詢指令功能塊,。可以單個塊運(yùn)行,,也可以多個塊輪流運(yùn)行,。根據(jù)輸入?yún)?shù)決定把哪些用戶數(shù)據(jù)放入緩沖區(qū)數(shù)據(jù)塊,再將從站返回?cái)?shù)據(jù)放回用戶數(shù)據(jù)塊,。注意:同一時刻只允許一個主站輪詢指令工作,,否同返回9006錯誤。
MBrtuMaster1500Crtl:主站通信控制功能塊,。一個通信控制功能塊對應(yīng)一個串口,。主要功能為發(fā)送和接收與從站的通信的報(bào)文。
4. 功能塊參數(shù)說明
MBrtuMaster1500Crtl

名稱 | 類型 | 數(shù)據(jù)類型 | 說明 | 允許值,,說明 |
iCpuHWID | Input | HW_SUBMODULE | CPU硬件標(biāo)識符 設(shè)備組態(tài)》CPU》系統(tǒng)常數(shù)》名稱:Local類型:Hw_SubModule的硬件標(biāo)識符 |
|
iProt | Input | HW_SUBMODULE | 通信模塊硬件標(biāo)識符 設(shè)備組態(tài)》通信模塊》系統(tǒng)常數(shù)》硬件標(biāo)識符 |
|
iBaud | Input | UInt | 端口數(shù)據(jù)傳輸速率 | 1 = 300 bps, 2 = 600 bps, 3 = 1200 bps, 4 = 2400 bps, 5 = 4800 bps, 6 = 9600 bps, |
iParity | Input | UInt | 端口的奇偶校驗(yàn) | 1 = 無奇偶校驗(yàn),2 = 偶校驗(yàn), 3 = 奇校驗(yàn), 4 = 傳號校驗(yàn), 5 = 空號校驗(yàn), 6 = 任意 |
iSendTime | Input | Time | 發(fā)送前定時時間 | 值可以很大,,但沒有必要 |
iRcvTimeOut | Input | Time | 接收信息超時時間 | 值可以很大,但沒有必要 |
iBufferDBNumber | Input | UDInt | MODBUS緩沖區(qū)數(shù)據(jù)塊號 | 如:UDINT#3000 |
iBuffer | Input | Variant | MODBUS緩沖區(qū)指針 | 如:"MBrtuMaster1500BufferDB1".Buffer |
qLicense | Output | Bool | 授權(quán) |
|
qDone | Output | Bool | 初始化完成標(biāo)志位 | 指令完成后,,一直為真 |
qWorkingSlave | Output | UInt | 正在與從站通信的從站地址 | 可能值為1到247 |
qWortConfigStatus | Output | Word | 組態(tài)PtP端口狀態(tài) | 詳見Port_Config指令幫助 |
qSendConfigStatus | Output | Word | 組態(tài)PtP發(fā)送方狀態(tài) | 詳見Send_Config指令幫助 |
qReceiveConfigStatus | Output | Word | 組態(tài)PtP接收方狀態(tài) | 詳見Receive_Config指令幫助 |
MBrtuMaster1500Msg

名稱 | 類型 | 數(shù)據(jù)類型 | 說明 | 允許值,,說明 |
iInstructionActive | Input | Bool | 真為激活指令,假為不激活指令 |
|
iNewRequest | Input | Bool | 讀寫請求位 | 每一個新的讀寫請求必須使用脈沖觸發(fā) |
iSlave | Input | USInt | 從站地址 | 1到247 |
iReadWrite | Input | USInt | 0=讀,,1=寫 | 1. 開關(guān)量輸出和保持寄存器支持讀和寫功能 2. 開關(guān)量輸入和模擬量輸入只支持讀功能 |
iAddress | Input | USInt | 讀寫從站的數(shù)據(jù)地址 | 選擇讀寫的數(shù)據(jù)類型 00001 至 0xxxx - 開關(guān)量輸出 10001 至 1xxxx - 開關(guān)量輸入 30001 至 3xxxx - 模擬量輸入 40001 至 4xxxx - 保持寄存器 400001 至 465535 - 保持寄存器 |
iCount | Input | UInt | 數(shù)據(jù)個數(shù) | 通訊的數(shù)據(jù)個數(shù)(位或字的個數(shù)) Modbus主站可讀/寫的***大數(shù)據(jù)量為120個字(是指每一個 MBrtuMasterMsg 指令) |
iBufferDBNumber | Input | UDInt | MODBUS緩沖區(qū)數(shù)據(jù)塊號 | 如:UDINT#3000 |
iPointerDBNumber | Input | UDInt | MODBUS讀寫數(shù)據(jù)塊號 | 如:UDINT#2000 |
iPointerByte | Input | UInt | 用戶數(shù)據(jù)塊字節(jié)地址 | 1. 如果是讀指令,,讀回的數(shù)據(jù)放到數(shù)據(jù)區(qū)這個字節(jié)開始的區(qū)域中 2. 如果是寫指令,要寫出的數(shù)據(jù)從這個字節(jié)開始的數(shù)據(jù)區(qū)取出 |
qDone | Output | Bool | 完成位 | 此位為脈沖信號,,需要保持信號,,用戶自行加起保停程序,完成位為啟動,,讀寫請求位為停止即可,。 |
qBusy | Output | Bool | 指令工作中 | BUSY = 1:作業(yè)尚未完成。BUSY = 0:作業(yè)完成 |
qError | Output | Word | 通信錯誤 | 錯誤規(guī)范 0000 命令完成沒有錯誤 7000 指令未執(zhí)行 7001 指令開始工作 9003 接收超時 9004 輸入?yún)?shù)錯誤 9005 Modbus未激活 9006 忙 其它指令在工作 9007 功能號不符 9008 CRC校驗(yàn)錯誤 9009 本指令未啟用 900A 發(fā)送錯誤 900B 發(fā)送超時 900C 接收錯誤 900D 接收的數(shù)據(jù)長度與預(yù)計(jì)長度不符 900E 簽名錯誤 91XX 從站返回的錯誤 |
qSendStatus | Output | Word | 發(fā)送指令狀態(tài)及錯誤 | 見發(fā)送指令規(guī)范 |
qRevStatus | Output | Word | 接收指令狀態(tài)及錯誤 | 發(fā)接收指令規(guī)范 |
MBrtuMaster1500BufferDB1
非優(yōu)化數(shù)據(jù)塊,。緩沖區(qū)數(shù)據(jù)塊是一個400(不可小于400)個字節(jié)數(shù)據(jù)塊