西門子模塊6ES7212-1AE40-0XB0參數(shù)詳細
自動化解決方案
對于多軸解決方案,可選用SIMOTION中基于驅(qū)動的版本SIMOTION D4x5。用這個方法,控制邏輯、運動控制、驅(qū)動功能和HMI功能可結(jié)合在一個單一的硬件和軟件系統(tǒng)中。
技術功能,如溫度控制和凸輪控制,可以軟件形式獲得。
SINAMICS S120 驅(qū)動系統(tǒng)與 1FK7 伺服電機組合,可以提供經(jīng)過優(yōu)化的 SIMOTION D 連接。其可以解決要求嚴格的驅(qū)動任務方面的問題,并提供精確的高動態(tài)響應。
具有等時性的PROFIBUS DP可用于通信。
使用 SIMOTION D4x5 的自動化解決方案示例
在上一篇文章中我們說到了MODBUS RTU 協(xié)議的信息幀的格式,同時也跟到大家提到了如何通過從站設備提供的通信說明中的信息幀格式及地址去準備相應的數(shù)據(jù),那么今天我們主要說一下S7-200系列PLC中MODBUS RTU庫指令意思。
在S7-200SMART系列PLC中的庫指令中集成了MODBUS RTU通信的庫指令,庫指令中包含了S7-200SMART系列PLC作為主站功能的庫指令及S7-200SMART系列PLC作為從站功能的庫指令(如下圖所示)
在這里我們主要介紹下主站的庫指令,主站的庫指令中根據(jù)所使用的通信口的個數(shù)不一樣分為兩個,若使用時PLC的本體的RS485端口需要作為modbus的主站功能,而擴展的RS485的信號板又需要作為MODBUS的主站的功能,那么前者使用第一個主站庫的指令,后者可以使用第二個主站庫指令,每個主站庫指令中都有兩個指令,分別為初始化指令MBUS_CTRL ,數(shù)據(jù)讀寫發(fā)送請求指令MBUS_MSG指令。下面我們對這兩個指令的意思以及指令上的管腳進行一些說明:
MBUS_CTRL指令
EN:
初始化指令使能端,需要保持每個掃描周期都接通
Mode:
通信協(xié)議的選擇,若需選擇MODBUS RTU通信,這需要保持該位為1狀態(tài),所以此處可以使用SM0.0接通。
Baud:
通信波特率的設置
Parity:
奇偶校驗的選擇,0表示無校驗,1表示奇校驗,2表示偶校驗
Port :
端口號設置,若使用PLC本體上的RS485端口,則應選擇為0(
注意S7-200PLC中的庫指令中的MBUS_CTRL沒有此管腳)
Timeout:
該參數(shù)用于確定 Modbus 從站設備是否對主站發(fā)出請求做出響應。若達到設定值后,還未獲得從站的響應,則PLC認為從站出問題,同時MBUS-MSG指令中的故障代碼存儲器中會存儲相應的故障代碼,同時完成位的狀態(tài)為1.
Done:
完成位,當初始化完成后,該位的狀態(tài)為1,編寫程序時,可以根據(jù)這個完成位來判斷初始化是否完成,完成后可以用于激活MBUS_MSG指令進行數(shù)據(jù)請求的發(fā)送,
(需要注意是:初始化完成后,至少需要過一個掃描周期后,才能去激活MBUS-MSG指令,否則可能通信不成功)
Error:
故障代碼存儲器(使用一個字節(jié)進行存儲),當初始化出現(xiàn)錯誤后,在故障存儲器中會產(chǎn)生一個代碼,查看指令幫助中的代碼說明,可以查看到可能出錯的原因是什么。
MBUS_MSG指令
EN:
指令的使能
MBUS_MSG指令使用時一定要注意的一點就是,同一個掃描周期內(nèi),只能由一條MBUS_MSG的EN端的狀態(tài)為1.如果在一個掃描周期內(nèi)出現(xiàn)2條及2條以上的
MBUS_MSG的EN端的狀態(tài)為1的情況。則MBUS_MSG指令中的故障代碼的值會為6,通信會不成功。
First:
觸發(fā)請求,僅保持一個掃描周期的時長 ,因此在使用時需要使用沿脈沖進行觸發(fā)。
Slave:
從站站號,根據(jù)從站中設置的地址進行填寫
RW:
讀寫操作選擇,0表示讀,1表示寫,若控制變頻器運行,使用寫的功能,若需要讀取變頻器的電流等需要用讀的命令。
Addr:
起始的MODBUS寄存器地址,此地址使用時一定要正確編寫。
MODBUS寄存器的地址,根據(jù)功能碼的不一樣,主要有4種類型的表示方式,分別為
0XXXX(讀寫線圈狀態(tài)),1XXXX(讀開關輸入狀態(tài)),3XXXX(讀輸入寄存器),4XXXX(讀寫保持寄存器)
四種類型,對于第四種類型4XXXX的類型,地址可以擴展,擴展為4XXXXX六位數(shù)的類型格式。
各功能碼對應的MODBUS地址寄存器類型如下圖所示,
而每種地址的起始地址都是從0001開始,而且都是以十進制數(shù)進行表示的。
地址類型確認后,如何來確定輸入的地址呢?
該地址的確定與在上篇文章中提到的MODBUS RTU信息幀格式中的Data內(nèi)容有關,Data的內(nèi)容包括兩部分內(nèi)容,一部分內(nèi)容為數(shù)據(jù)區(qū)的地址,一部為數(shù)據(jù)區(qū)的內(nèi)容,則此處的MODBUS寄存器的地址與數(shù)據(jù)區(qū)的地址有關。如圖所示:
此處中的數(shù)據(jù)區(qū)的地址,指的是寄存器地址,從圖中可以看到他的范圍是從十六進制數(shù)的0000到十六進制數(shù)的FFFF,因此從這我們可以看到功能碼為06,對應的寄存器地址是0000的時候,那么在我們MBUS_MSG指令中的Adder的地址應填寫為40001
(
因為都是表示的第一個地址,需要一一對應上)。
根據(jù)這個計算方法,我們可以寫出 在上一篇文章中提到的控制變頻器運行的寄存器地址對應都MBUS_MSG指令中Adder的地址為:
功能碼為06,所以類型為4XXXX的類型,地址為16# 3200,相對于16#0000來講,偏移了12800.(此為十進制數(shù))所以對應到MBUS_MSG指令中的地址為在1的基礎上上偏移12800,即12801,而功能碼06對應的類型為4,所以我們在使用時應在MBUS_MSG指令的Adder出填寫412801這個地址。
Count:
讀寫的格式,表示從adder這個管腳指的的地址開始的連續(xù)多少個地址進行數(shù)據(jù)的讀寫。
Dataptr:
讀寫數(shù)據(jù)存放的地址,使用指針的方式表示,實際地址以十六位的方式表示,假設使用的地址是&VB100。前面的指令管腳定義的是對變頻器運行命令的控制,則當把16#1001寫入到VW100中,則電機正轉(zhuǎn)運行,若把16#1003寫入到VW100中,則表示的是反轉(zhuǎn)運行。若是讀取的功能,假設MBUS_MSG指令中adder為413077,count為2,Dataptr為&VB102, 則表示把413077這個地址中的數(shù)據(jù)讀取出來存放于VW102,把413078的數(shù)據(jù)讀取出來存放于VW104中。
Done:
完成位。當執(zhí)行完成后,該為位1,因此當出現(xiàn)需要使用多個MBUS_MSG指令是,可以使用每個指令的Done來實現(xiàn)輪詢的功能。
Error:
故障代碼存儲器,方便查詢通信故障。
相關產(chǎn)品
免責聲明
- 凡本網(wǎng)注明“來源:化工儀器網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡有限公司-化工儀器網(wǎng)合法擁有版權或有權使用的作品,未經(jīng)本網(wǎng)授權不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權使用作品的,應在授權范圍內(nèi)使用,并注明“來源:化工儀器網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關法律責任。
- 本網(wǎng)轉(zhuǎn)載并注明自其他來源(非化工儀器網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品第一來源,并自負版權等法律責任。
- 如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。