請(qǐng)教這段程序 能詳細(xì)講一下過程嗎
劉玉蓉
發(fā)布于2014-11-28 17:52
187
0
標(biāo)簽:
CLR
= #SMQ_1
= #SMQ_2
L #Istwert
L #GW_1
>=R
S #SMQ_1
JC M001
L #Hysterese
-R
L #Istwert
<R
A #Q_1
S #SMQ_1
M001: L #Istwert
L #GW_2
>=R
S #SMQ_2
JC M002
L #Hysterese
-R
L #Istwert
<R
A #Q_2
S #SMQ_2
M002: A #SMQ_1
= #Q_1
A #SMQ_2
= #Q_2
其中 Istwert GW_1 GW_2 Hysterese 這個(gè)4個(gè)參數(shù)是輸入,Q_1 Q_2是輸出參數(shù) 那么當(dāng)Q_1和 Q_2分別是多少?
Istwert :=40 GW_1 :=25 GW_2 :=40 Hysterese:=2.000000e+000
Q_1和 Q_2分別是多少?
Q_1 :=""
Q_2 :=""
佳答案
CLR
= #SMQ_1
= #SMQ_2 ------這三段是對(duì)臨時(shí)變量的狀態(tài)復(fù)位,即程序開始時(shí)狀態(tài)為0
L #Istwert
L #GW_1
>=R ------當(dāng)#Istwert的數(shù)值大于等于#GW_1的數(shù)值時(shí),置位#SMQ_1
S #SMQ_1
JC M001 ------當(dāng)#Istwert的數(shù)值大于等于#GW_1的數(shù)值時(shí),程序跳轉(zhuǎn)至M001處執(zhí)行,下面的程序?qū)⒈惶^,不執(zhí)行;當(dāng)#Istwert的數(shù)值小于#GW_1的數(shù)值時(shí),繼續(xù)執(zhí)行下面程序
L #Hysterese
-R -------- #GW_1的數(shù)值減去#Hysterese的數(shù)值
L #Istwert
<R -------#GW_1減#Hysterese的差與#Istwert比較,小于且#Q_1為1時(shí),置位#SMQ_1
A #Q_1
S #SMQ_1
M001: L #Istwert-----以下分析同上
L #GW_2
>=R
S #SMQ_2
JC M002
L #Hysterese
-R
L #Istwert
<R
A #Q_2
S #SMQ_2
M002: A #SMQ_1
= #Q_1
A #SMQ_2
= #Q_2
Istwert、GW_1、GW_2 的數(shù)值也應(yīng)是實(shí)數(shù)類型的。按照上面的分析并帶入你所給的數(shù)值,那#Q_1和#Q_2的結(jié)果都是1。
但你的程序有些問題,就是當(dāng)#Q_1或#Q_2的結(jié)果有一次為1后,不論輸入值怎樣改變,其輸出結(jié)果仍然為1。因?yàn)槌绦蛑蠥 #Q_x S #SMQ_x 相當(dāng)于自保電路了。
你可以在OB1調(diào)用這個(gè)塊并賦值,在仿真器中測(cè)試看看結(jié)果。