《S7-300 秒 脈沖 時(shí)間設(shè)定時(shí)鐘脈沖應(yīng)用 優(yōu)選內(nèi)容》由會(huì)員分享,可在線閱讀,更多相關(guān)《S7-300 秒 脈沖 時(shí)間設(shè)定時(shí)鐘脈沖應(yīng)用 優(yōu)選內(nèi)容(3頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、
S7-200/300 秒脈沖 時(shí)間設(shè)定
時(shí)鐘脈沖應(yīng)用
s7-200
???? S7-200 的秒脈沖的設(shè)定比較的簡(jiǎn)單有如下幾個(gè)方法:
方法一:可以用系統(tǒng)單元進(jìn)行設(shè)定
???? Clock_60s ??? SM0.4???? 時(shí)鐘脈沖接通30秒,關(guān)斷30秒,工作周期時(shí)間為1分鐘
???? Clock_1s??????SM0.5???? 時(shí)鐘脈沖接通0.5秒,關(guān)斷0.5秒,工作周期時(shí)間為1秒
系統(tǒng)內(nèi)部分別有 秒脈沖和分脈沖 SM0.4工作周期為1分鐘 SM0.5工作周期為1秒 在應(yīng)用時(shí)直接寫(xiě)入就可以 注意在秒脈沖指令的后面用上升沿或者下降沿,這樣兩個(gè)上升沿(下降沿)之間的時(shí)間
2、就是要得到的周期.
方法二:自己編寫(xiě)延時(shí)程序
????? 自己編寫(xiě)延時(shí)程序,并設(shè)定好延時(shí)時(shí)間,當(dāng)時(shí)間到后便執(zhí)行存儲(chǔ)程序塊調(diào)用,該方法受程序循環(huán)時(shí)間的影響,不是特別精確,如果是要求不太嚴(yán)格的情況下可以使用本方法。
此方法就是編寫(xiě)一個(gè)程序讓這個(gè)程序做為子程序 被調(diào)用
方法三:用系統(tǒng)時(shí)鐘加比較器
????? 此方法比較另類,比較復(fù)雜,具體編程如下.
先設(shè)定一個(gè)系統(tǒng)讀取實(shí)時(shí)時(shí)鐘 設(shè)定啟始地址比如 VB100 然后看 各個(gè)位的定義 VB105 就是秒 再用比較 用VB105+1 比較VB105進(jìn)行比較 如果相等為真 那就是1秒 注意:這個(gè)比較要進(jìn)行范圍鎖定,這個(gè)方法我試過(guò)是可以用的
1 月
3、 (1-12) 當(dāng)前月份 (BCD值)
2 日期 (1-31) 當(dāng)前日期 (BCD值)
3 小時(shí) (0-23) 當(dāng)前小時(shí) (BCD值)
4 分鐘 (0-59) 當(dāng)前分鐘 (BCD值)
5 秒 (0-59) 當(dāng)前秒 (BCD值)
6 00 保留 ?始終設(shè)置為00
7 星期幾 (1-7) 當(dāng)前是星期幾,1=星期日 (BCD值)
S7-300
?????? S7-300的秒脈沖的設(shè)定比較的復(fù)雜但是方法很多(這里將著重介紹CPU設(shè)定):
方法一:CPU 用時(shí)鐘存儲(chǔ)器
??????? 硬件組態(tài)中CPU屬性"Cycle/Clock Memory"中"Clock Memory"設(shè)
4、定的Memory Byte,可以看下幫助,每一位都有固定頻率
???? 在"Propreties"窗口中點(diǎn)擊"Cycle/Clock Memory"(循環(huán)/時(shí)鐘存儲(chǔ)器)選項(xiàng)卡,可以設(shè)置"Scan cycle monitoring time"(以ms為單位的掃描循環(huán)監(jiān)視時(shí)間),默認(rèn)值為150ms.如果實(shí)際的循環(huán)掃描時(shí)間超過(guò)設(shè)定值.CPU將進(jìn)入STOP模式.
"Scan cycle Load from Communication "用來(lái)限制通信處理占掃描周期的百分比,默認(rèn)值為20%
?? 時(shí)鐘脈沖是一些可供用戶程序使用的占空比為1:1的方波信號(hào),一個(gè)字節(jié)的時(shí)鐘存儲(chǔ)器的每一位對(duì)應(yīng)的一個(gè)脈沖如下
5、:
位?? 7???? 6???? 5????? 4??? ? 3??? ? 2????? 1???? ? 0
周期/s ? 2??? 1.6???? 1???? 0.8?? 0.5?? 0.4??? 0.2?? 0.1
頻率/Hz? 0.5?? 0.625???1???? 1.25???? 2??? 2.5???? 5????? 10
???? 如果要使用時(shí)鐘脈沖,首先要選中"Clock Memory'(時(shí)鐘存儲(chǔ)器)選項(xiàng),然后設(shè)置時(shí)鐘存儲(chǔ)器(M)的字節(jié)地址.假設(shè)設(shè)置的地址為100(即MB100),有上表可知,M100.7周期為2s,如果用M100.
6、7的常開(kāi)的觸點(diǎn)來(lái)控制Q0.0的線圈,Q0.0將以2s的周期閃爍(亮1s,熄滅1s).
??? "OB85-Call up at I/O access error"用來(lái)預(yù)設(shè)置CPU對(duì)系統(tǒng)修改過(guò)程映像時(shí)發(fā)生的I/O訪問(wèn)錯(cuò)誤的響應(yīng).如果希望在出現(xiàn)錯(cuò)誤時(shí)調(diào)用OB85,建議選擇"Only for incoming and out going error"(僅在錯(cuò)誤產(chǎn)生和消失),相對(duì)于"On each individual access"(每次單獨(dú)的訪問(wèn)),不會(huì)增加掃描循環(huán)時(shí)間.
方法二:自己編寫(xiě)延時(shí)程序,并設(shè)定好延時(shí)時(shí)間,當(dāng)時(shí)間到后便執(zhí)行存儲(chǔ)程序塊調(diào)用,該方法受程序循環(huán)時(shí)間的影響,不是特別精確,如果是要求不太嚴(yán)格的情況下可以使用本方法。
方法三:利用等時(shí)中斷組織塊來(lái)實(shí)現(xiàn)等時(shí)中斷,如在OB35中調(diào)用存儲(chǔ)程序塊,實(shí)現(xiàn)等時(shí)存儲(chǔ),該方法較精確。
方法四:可以利用SFC1讀取CPU時(shí)鐘,通過(guò)時(shí)鐘值的差額計(jì)算可以實(shí)現(xiàn)等時(shí)間隔存儲(chǔ)。(此方法與我介紹的S7-200 的第三種方法相似在此就不具體寫(xiě)編程方法了)
方法五:如果用外部等時(shí)間間隔觸發(fā)信號(hào)的話,利用硬件中斷實(shí)現(xiàn)也是可以的。
注意:沒(méi)有什么特殊的情況下 建議用方法1,2 ,3 方法1最實(shí)用 正常情況下 方法一最適合使用用起來(lái)簡(jiǎn)單方便大家只要把 各個(gè)位對(duì)應(yīng)的周期記住就可以了
3
僅供借鑒#