在STEP7(TIA Portal)中如何為S7-1200/1500實現(xiàn)積分編程?
為了近似測定面積,使用以SCL語言編寫的FB "Integration"程序塊可以持續(xù)對區(qū)域面積進行累加。
說明
積分是對給定函數(shù)曲線的面積進行數(shù)學計算。但是實際曲線往往沒有明確的數(shù)學關(guān)系,而是隨時間變化的模擬量。積分計算就是把所有由兩個過程值與時間所圍成的梯形區(qū)域面積相加,梯形面積等于兩個過程值的平均值乘以時間間隔。
下載附件是以SCL語言編寫的用于計算積分的 "Integration" 功能塊
表示了FB "Integration"的調(diào)用參數(shù)。FB "Integration"中 "in"參數(shù)為轉(zhuǎn)化為浮點數(shù)的模擬量輸入值。
如果"enable" 參數(shù)接收到 "False" 值,那么積分計算將停止并且"out"參數(shù)輸出后計算值。
如果 "reset"接收到 "True"值,那么"out"輸出將復位為零。
計算結(jié)果存儲于 "out" 輸出。
當使能積分后,"error"會在啟動計算時輸出一個周期的"True"信號(信號在積分計算期間失效)。
要使用 "in"參數(shù)的輸入值啟動積分計算,必須
創(chuàng)建一個功能,并聲明輸入變量為"Int"類型。圖.01 顯示了對于"AccessGroupInt"功能塊的編程示例,通過index進行間接尋址并返回值。可以在程序中直接使用間接訪問,例如使用指令#TempValue:= "AccessGroupInt"(#Index);。這一編程方法
可追蹤,因為可以使用交叉索引。
安全,因為僅使用了預定義的內(nèi)存區(qū)。
通用,因為既可以用于標準塊也可以用于優(yōu)化的數(shù)據(jù)區(qū) 。
在下面的示例中數(shù)據(jù)被從三個不同的優(yōu)化的數(shù)據(jù)塊中讀出或?qū)懭?。三個數(shù)據(jù)塊"Silo_Water", "Silo_Sugar" 和"Silo_Milk"都包含相同的變量聲明:
DB 變量1:"MyBool" Bool類型
DB 變量2:"MyInt" Int類型
DB 變量3:"MyWord" Word類型
創(chuàng)建的PLC數(shù)據(jù)類型"SiloUDT"用于尋址包含不同數(shù)據(jù)類型的DB變量。 "AccessGroupSiloRead"功能塊用于讀出返回值,是由PLC 數(shù)據(jù)類型 "SiloUDT"定義的?;诖丝梢栽谝粋€FB中間接訪問,例如如圖.03所示的指令:
"Silo_Handling_OnlyReading"("AccessGroupSiloRead"(Index:= #Silo_Index));
創(chuàng)建環(huán)境
此FAQ中的截屏由 STEP 7 (TIA Portal) V13創(chuàng)建。
創(chuàng)建的PLC數(shù)據(jù)類型"SiloUDT"用于尋址包含不同數(shù)據(jù)類型的DB變量。 "AccessGroupSiloRead"功能塊用于讀出返回值,是由PLC 數(shù)據(jù)類型 "SiloUDT"定義的?;诖丝梢栽谝粋€FB中間接訪問,例如如圖.03所示的指令:
創(chuàng)建環(huán)境
此FAQ中的截屏由 STEP 7 (TIA Portal) V13創(chuàng)建。
在STEP7(TIA Portal)中如何為S7-1200/1500實現(xiàn)積分編程?
為了近似測定面積,使用以SCL語言編寫的FB "Integration"程序塊可以持續(xù)對區(qū)域面積進行累加。
說明
積分是對給定函數(shù)曲線的面積進行數(shù)學計算。但是實際曲線往往沒有明確的數(shù)學關(guān)系,而是隨時間變化的模擬量。積分計算就是把所有由兩個過程值與時間所圍成的梯形區(qū)域面積相加,梯形面積等于兩個過程值的平均值乘以時間間隔。
下載附件是以SCL語言編寫的用于計算積分的 "Integration" 功能塊
表示了FB "Integration"的調(diào)用參數(shù)。FB "Integration"中 "in"參數(shù)為轉(zhuǎn)化為浮點數(shù)的模擬量輸入值。
如果"enable" 參數(shù)接收到 "False" 值,那么積分計算將停止并且"out"參數(shù)輸出后計算值。
如果 "reset"接收到 "True"值,那么"out"輸出將復位為零。
計算結(jié)果存儲于 "out" 輸出。
當使能積分后,"error"會在啟動計算時輸出一個周期的"True"信號(信號在積分計算期間失效)。
要使用 "in"參數(shù)的輸入值啟動積分計算,必須
下表列出了 FB "Integration" 的輸入和輸出參數(shù)。
參數(shù) 接口 數(shù)據(jù)類型 描述
in Input DInt 需要做積分計算的值
enable Input Bool 使能積分計算
reset Input Bool 復位( 為 True 時復位輸出參數(shù))
out Output LReal 積分后的值(可保持)
error Output Bool 錯誤輸出
在STEP7(TIA Portal)中如何安全地并且間接地尋址?
采用間接尋址時,只有程序執(zhí)行時,用于讀或?qū)憯?shù)值的地址才得以確定。使用這種方法可以減少編程量并使得程序更靈活。通常來講,程序創(chuàng)建后訪問地址也就確定了。為了使得間接尋址更靈活和更安全,可以
使用"Array"數(shù)據(jù)類型用于組合相同的數(shù)據(jù)類型。
對于不同的存儲區(qū),采用index來訪問相關(guān)的針對每個應用不同的變量。
在下面的例子中,對于三個變量的訪問采用了不同的存儲區(qū)。表01 顯示了三個變量的訪問列表,每個都有單獨的索引。
創(chuàng)建一個功能,并聲明輸入變量為"Int"類型。圖.01 顯示了對于"AccessGroupInt"功能塊的編程示例,通過index進行間接尋址并返回值??梢栽诔绦蛑兄苯邮褂瞄g接訪問,例如使用指令#TempValue:= "AccessGroupInt"(#Index);。這一編程方法
可追蹤,因為可以使用交叉索引。
安全,因為僅使用了預定義的內(nèi)存區(qū)。
通用,因為既可以用于標準塊也可以用于優(yōu)化的數(shù)據(jù)區(qū) 。
在下面的示例中數(shù)據(jù)被從三個不同的優(yōu)化的數(shù)據(jù)塊中讀出或?qū)懭?。三個數(shù)據(jù)塊"Silo_Water", "Silo_Sugar" 和"Silo_Milk"都包含相同的變量聲明:
DB 變量1:"MyBool" Bool類型
DB 變量2:"MyInt" Int類型
DB 變量3:"MyWord" Word類型
創(chuàng)建的PLC數(shù)據(jù)類型"SiloUDT"用于尋址包含不同數(shù)據(jù)類型的DB變量。 "AccessGroupSiloRead"功能塊用于讀出返回值,是由PLC 數(shù)據(jù)類型 "SiloUDT"定義的?;诖丝梢栽谝粋€FB中間接訪問,例如如圖.03所示的指令:
創(chuàng)建環(huán)境
此FAQ中的截屏由 STEP 7 (TIA Portal) V13創(chuàng)建。
西門子S7-1200與博途以及組態(tài)王的通訊設(shè)置
在線監(jiān)控可在線監(jiān)控PLC寄存器狀態(tài)
(2)PLC與組態(tài)王通過以太網(wǎng)的方式通信的設(shè)置:
1、確認計算機中安裝有以太網(wǎng)卡,并與PLC 連接到同一網(wǎng)絡(luò)中(直接通過網(wǎng)線直連)。
2、通過Step7編程軟件為通信模塊(CP443-1)設(shè)定IP地址和子網(wǎng)掩碼,并下傳到PLC中如IP地址(192.168.0.1)、子網(wǎng)掩碼(255.255.255.0)。 此步驟已經(jīng)在博途中組態(tài)PLC的過程中完成了,通過PLC屬性查看以太網(wǎng)地址。
3、為計算機設(shè)定IP地址和子網(wǎng)掩碼,如IP地址(192.168.0.110)、子網(wǎng)掩碼(255.255.255.0)。 這里以Win7系統(tǒng)為例 ※打開網(wǎng)絡(luò)共享中心,雙擊更改適配器選項
決辦法:
1、取消你DB塊中的“優(yōu)化塊訪問”見圖3;
2、然后按圖2*行那樣建立地址用來存儲需讀寫的數(shù)據(jù),編譯該DB塊;
3、圖3是我用1500做modbus TCP通信用到的指針尋址;
S7-1200運動控制指令MC_Reset
MC_Reset
指令名稱:確認故障
功能:用來確認“伴隨軸停止出現(xiàn)的運行錯誤”和“組態(tài)錯誤”。
使用要點:Execute用上升沿觸發(fā)。
『注意』部分輸入/輸出管腳沒有具體介紹,請用戶參考MC_Power指令中的說明。
輸入端:
①EN:該輸入端是MC_Reset指令的使能端。
②Axis:軸名稱。
③Execute:MC_Reset指令的啟動位,用上升沿觸發(fā)。
④Restart:
Restart = 0:用來確認錯誤。
Restart = 1:將軸的組態(tài)從裝載存儲器下載到工作存儲器(只有在禁用軸的時候才能執(zhí)行該命令)。
輸出端:除了Done指令,其他輸出管腳同MC_Power指令,這里不再贅述。
⑥D(zhuǎn)one:表示軸的錯誤已確認。