L PQB0 T PIB0 出錯(cuò)分析
發(fā)布時(shí)間:2019-08-01 10:49:39來(lái)源:
L PQB0 T PIB0 出錯(cuò)分析
原文如下:在STEP 7的語(yǔ)句表編輯器中輸入下面兩條指令:
L PQB0
T PIB0
它們將會(huì)變?yōu)榧t色,表示指令出錯(cuò),它們?yōu)槭裁词清e(cuò)誤的指令?
如果輸入下面兩條指令:
L QB0
T IB0
它們不會(huì)變紅,這又是為什么?
提示:請(qǐng)注意I/Q區(qū)和PI/PQ區(qū)的意義和差異。 答案:
PQ區(qū)用來(lái)直接訪問(wèn)輸出模塊,可以將它視為外部的輸出負(fù)載。因此只能改寫(xiě)、不能讀取PQ區(qū)的地址,即PQ區(qū)是只寫(xiě)的。
指令“L PQB0”想讀取PQB0,將PQB0的值傳送到累加器1,因此是錯(cuò)誤的。
PI區(qū)用來(lái)直接訪問(wèn)輸入模塊,可以將它視為外部的輸入電路。因此只能讀取、不能改寫(xiě)PI區(qū)的地址,即PI區(qū)是只讀的。
指令“T PIB0”想改寫(xiě)PIB0,將累加器1中的數(shù)據(jù)傳送到PIB0,因此也是錯(cuò)誤的。
過(guò)程映像輸入/輸出區(qū)(I/Q區(qū))本質(zhì)上是CPU存儲(chǔ)器中的區(qū)域,它們只是外部輸入/輸出的“映像”(鏡中花、水中月),不能等同于輸入模塊和輸出模塊。因此可以像其他系統(tǒng)存儲(chǔ)區(qū)(例如M區(qū))一樣讀寫(xiě)它們,指令“L QB0”和“T IB0”都是正確的??梢宰鱿旅娴膶?shí)驗(yàn):在STEP 7中生成I0.0的線圈(想用程序改寫(xiě)I0.0),不會(huì)出錯(cuò)。
I/Q區(qū)的功能如下:I區(qū)用來(lái)保存掃描循環(huán)周期開(kāi)始時(shí)批量讀取的輸入信號(hào)。在執(zhí)行用戶程序的過(guò)程中將邏輯運(yùn)算的結(jié)果保存到Q區(qū),在掃描循環(huán)周期開(kāi)始時(shí)將Q區(qū)的數(shù)據(jù)批量傳送到輸出模塊。
