【S7-300使用指南】22.先賦值后使用

2015-12-30 11:28 更新 唐琳 瀏覽:2732人次 微信二維碼

1 TEMP區的問題

在《本地數據TEMP》這篇文章中我們用一個簡單的加法程序向大家演示了TEMP區的使用,但是我們在主程序OB1中只調用了1次,當我們多次調用這個程序的時候大家就會發現一個問題,無論我們調用幾次,做幾次加法運算都只能算出一個結果,如圖 1-1所示我們在主程序中調用了三次FC1,雖然只是在第一次的調用中激活了加法運算,但是可以發現程序段2和程序段3雖然并沒有進行計算但是卻得出了和程序段1相同的結果。

1-1
那么問題出在哪里呢,其實問題的關鍵就出在了本地數據TEMP區,讓我們一起來回顧一下FC1的程序吧。

接口

1-2

接口數據類型
接口
數據類型
add1
INT
add2
INT
add3
INT
add3_3
INT
start
BOOL
1

FC1

1-3
在這個程序中我們可以看到,加法的運算結果是先存放到本地數據add3中然后再由add3傳送到輸出接口add3_3

1-4
這里我們可以看到本地數據add3的起始地址是0.0由于是Int數據類型,因此add3占用的是FC1的本地數據LW0這個存儲空間,由FC1程序可以看出只要add3被賦值,那么FC1就一定會將add3中的內容進行輸出,因此當我們在主程序OB1中激活了第一段的加法,第二第三段在沒有激活的情況下就跟著將第一段的結果一起輸出了。

2 先賦值后使用

那么該如何避免這種情況的發生呢?這里我們就一定要用到先賦值后使用的方法,來避免這種情況的發生。那么怎么使用才算是先賦值后使用呢?其實非常簡單,就是一定要保證建立好的本地數據時時刻刻都被占用,這個方法讓我總結就是一個蘿卜一個坑,先來先占,后到的蘿卜PLC會自動給他分配別的本地數據區的位置,這樣就不會出現上面那種相互干擾的情況出現了。那么TEMP區的本地數據怎么才算被時時刻刻都被占用呢?下面我們還是用這個加法的程序給大家舉例。我們要做的只是把圖 1-3中的常開觸點start和接口start一并刪除即可,刪除后如圖 2-1所示。

2-1
那么為什么我們只需要將第一段加法指令前面的常開觸點刪除就可以達到先賦值后使用的效果呢?其實大家可以仔細想一想,當加法指令前有常開觸點的時候,如果當這個常開觸點是斷開的時候我們這個加法指令是不進行計算的,當不進行計算的時候本地數據add3就不處于被占用的狀態,達不到時時刻刻都被占用的效果,而當我們把這個常開觸點刪除后add3就不存在不被占用的情況了,換句話說就是現在add3已經達到了被時時刻刻占用的效果了,這就是先賦值后使用,由圖 2-2可見使用了先賦值后使用以后就不會再出現輸出結果相互干擾的情況了。

2-2

作者:技成培訓網(馬樂)

【本文為原創作品。未經同意,盜取必究!】

推薦相關學習視頻:

西門子S7-300 PLC初級

西門子S7-300使用指南



好書推薦
< >

  • 三菱 PLC 技術功能指令應用詳解

    為三菱FX2N系列PLC順控程序設計和功能指令講解,重點是功能指令講解。為了使讀者能夠在較短的時間內正確理解、 掌握和應用功能指令,書中除了對指令本身作了詳細的說明外...

  • 三菱FX系列PLC定位控制應用技術

    以三菱電動機的三菱FX系列PLC為目標機型,以廣大自動化技術的初學者為對象而編寫的一本專門講解定位控制技術的入門書

  • PLC模擬量與通信控制應用實踐

    以三菱fx2n plc為目標機型,介紹了plc在模擬量控制和通信控制中的應用。在模擬量控制中, 重點介紹了三菱fx2n plc模擬量特殊模塊和pid控制應用...

  • 工控技術應用數學

    本書是針對工作在生產第一線的電工編寫的。他們或因數學知識沒有學好,或因時間長了有所遺忘等種種原因, 在學習和應用電工電子技術...

  1. 1
  2. 2
手机充值865棋牌 雷老虎最稳四肖选一肖 股票怎么玩 不懂股 明天那只股票能涨停 广西三公棋牌游戏开发 四不像肖期期中特 股票加杠杆软件 东北东北四人单机麻将 在线斗牛棋牌游戏 一波中特最准最全资料 查看股票历史走势