同一個(gè)輸入端不能用于兩種不同的功能。但是高速計(jì)數(shù)器當(dāng)前模式未使用的輸入端均可用于其他用途,如作為中斷輸入端或作為數(shù)字量輸入端。例如,如果在模式2中使用高速計(jì)數(shù)器HSC0,模式2使用I0.0和I0.2,則I0.1可用于邊緣中斷或用于HSC3。
2. 高速脈沖輸出占用的輸出端子
S7-200有PTO、PWM兩臺(tái)高速脈沖發(fā)生器。 PTO脈沖串功能可輸出個(gè)數(shù)、周期的方波脈沖(占空比50%);PWM功能可輸出脈寬變化的脈沖信號(hào),用戶(hù)可以脈沖的周期和脈沖的寬度。若一臺(tái)發(fā)生器給數(shù)字輸出點(diǎn)Q0.0,另一臺(tái)發(fā)生器則給數(shù)字輸出點(diǎn)Q0.1。當(dāng)PTO、PWM發(fā)生器控制輸出時(shí),將禁止輸出點(diǎn)Q0.0、Q0.1的正常使用;當(dāng)不使用PTO、PWM高速脈沖發(fā)生器時(shí),輸出點(diǎn)Q0.0、Q0.1恢復(fù)正常的使用,即由輸出映像寄存器決定其輸出狀態(tài)。
西門(mén)子S7-200PLC由I0.1的上升沿產(chǎn)生的中斷事件的初始化程序
分析:查表2可知,I0.1上升沿產(chǎn)生的中斷事件號(hào)為2。所以在主程序中用ATCH指令將事件號(hào)2和中斷程序0連接起來(lái),并全局開(kāi)中斷。程序如圖1所示。
梯形圖(主程序)
圖1
語(yǔ)句表
LD SM0.1 //掃描時(shí)
ATCH INT_0 2 //將INT_0 和EVNT2連接
ENI //并全局啟用中斷
LD SM5.0 //如果檢測(cè)到I/O錯(cuò)誤
DTCH 2 //禁用用于I0.1的上升沿中斷
(本網(wǎng)絡(luò)為選項(xiàng))
LD M5.0 // 當(dāng)M5.0=1時(shí)
DISI //禁用所有的中斷
西門(mén)子plc的立即寫(xiě)操作舉例介紹
對(duì)于立即寫(xiě)(Immediate Write)功能,必須如下面舉例所示,生成符號(hào)程序段。
對(duì)于有時(shí)間限制的應(yīng)用,可以以比每OB1 掃描循環(huán)一次的正常情況快的速度,將一個(gè)數(shù)字量輸出的當(dāng)前狀態(tài)發(fā)送到輸出模板。立即寫(xiě)功能可以在掃描立即寫(xiě)邏輯程序級(jí)的同時(shí),將一個(gè)數(shù)字量輸出寫(xiě)入輸出模板。否則,當(dāng) Q存儲(chǔ)區(qū)使用 P存儲(chǔ)狀態(tài)更新時(shí),必須等到下一OB1掃描循環(huán)結(jié)束。
為了將一個(gè)輸出立即寫(xiě)入輸出模板,應(yīng)使用外圍輸出(PQ)存儲(chǔ)區(qū),而不使用輸出(Q)
存儲(chǔ)區(qū)。外圍輸出存儲(chǔ)區(qū)可以作為一個(gè)字節(jié)、一個(gè)字或一個(gè)雙字讀取。因此,通過(guò)一個(gè)線圈元素,不能更新一個(gè)單獨(dú)的數(shù)字量輸出。為了將一個(gè)數(shù)字量輸出的狀態(tài)立即寫(xiě)入輸出模板, 包含相關(guān)位的Q存儲(chǔ)器的字節(jié)、 字或雙字可以有條件地復(fù)制到相應(yīng)的PQ存儲(chǔ)器中 (直接輸出TPC1062K的模板地址)。
小心
• 由于 Q 存儲(chǔ)器的整個(gè)字節(jié)被寫(xiě)入輸出模板,當(dāng)進(jìn)行立即輸出時(shí),該字節(jié)中的所有輸出位都將被更新。
• 如果一個(gè)輸出位在不應(yīng)發(fā)送到輸出模板中的整個(gè)程序中出現(xiàn)中間狀態(tài)(1/0),立即寫(xiě)功能會(huì)造成危險(xiǎn)情況(輸出瞬時(shí)脈沖)。
• 作為一般設(shè)計(jì)規(guī)則,在一個(gè)MT6100I的程序中,外部輸出模板只能認(rèn)為是一個(gè)線圈。如果遵守該設(shè)計(jì)規(guī)則,可以避免使用立即輸出時(shí)的大多數(shù)潛在問(wèn)題。
舉例
等效于立即寫(xiě)入外圍數(shù)字量輸出模板 5通道1的梯形邏輯程序段。
尋址輸出Q字節(jié) (QB5) 的位狀態(tài)可以修改, 也可以保持不變。 Q5.1被賦給程序段1 中I0.1的信號(hào)狀態(tài)。QB5被復(fù)制到相應(yīng)的直接外圍輸出存儲(chǔ)區(qū)(PQB5)。