開關量由CPU採集進來,進行變位識別,以便根據開關狀態的變化進行某項操作,或者將它送去列印,或用來更新顯示。因此,開關變位的識別是開關量採集中的一項十分重要的工作。
基本介紹
- 中文名:開關變位識別
- 外文名:Switch position identification
- 作用:根據開關狀態的變化進行某項操作
- 表示方法:二進制數
- 性質:科學
開關量,基本原理,結論,
開關量
開關量信息採集的硬體系統由輸入通道、輸出通道和微機組成,開關量輸入通道的基本功能是將需要的狀態信號引入微機系統,如輸電線路斷路器狀態、繼電保護信號等。輸出通道主要是將CPU送出的數位訊號進行顯示、控制或調節,如斷路器跳閘命令、報警信號等。
開關量信息通常由電力設備的輔助觸點提供,輔助觸點的開合直接反映著該設備的工作狀態。提供給測控裝置的輔助觸點有兩類,一類是無源觸點,這種觸點無論是在“開”狀態,還是“合”狀態,觸點兩端均無電位差。斷路器、隔離開關的狀態信息的提供就是由無源觸點提供的。另一類是有源觸點,有源觸點在“開”狀態時兩端有一個直流電壓,一些保護信息的提供就是由此類觸點提供的。
基本原理
開關量的狀態通常用一位二進制數來表示,例如用“1”代表閉合;用“0”代表斷開。為了簡化分析,只對用一個位元組的二進制數表示的8個開關狀態進行分析。
開關變位的識別是建立在對原來的狀態和現在的狀態進行某些邏輯運算的基礎上而取得的,例如原來的開關狀態是10011010,現在的開關狀態是10001101,把它對比如圖1所示。
圖1原狀和現狀的對比
![圖1原狀和現狀的對比 圖1原狀和現狀的對比](/img/6/33c/nBnauczMwYTYmRmZ2EDZ5IWMyMGZyY2Y3YGM2YWZwkTMxcTZkRWNlVzM0gzLtVGdp9yYpB3LltWahJ2Lt92YuUHZpFmYuMmczdWbp9yL6MHc0RHa.jpg)
可以看出,D4和D1由1→0,D2和D0由0→1,這是一目了然的。但對於暫時還不具備視覺和思維能力的微機來說卻不是那么簡單,它必須依靠邏輯運算的結果才能做出判斷。
根據邏輯運算的基本知識可知:“異或”運算的規律是兩數相同結果為“0”,兩數相異結果為“1”。分析一下開關變位的狀態可以發現,變位狀態的運算正好就是“異或”運算。例如將上例兩數進行“異或”運算,則如圖2所示。
圖2兩數“異或”運算結果
![圖2兩數“異或”運算結果 圖2兩數“異或”運算結果](/img/c/540/nBnauUTM4ADNyYGMzImZwETNykjY0MTMyMGO4EmZ1MzNwQDZiJzN5gTMhF2LtVGdp9yYpB3LltWahJ2Lt92YuUHZpFmYuMmczdWbp9yL6MHc0RHa.jpg)
結果是D4D2 D1 D0變了位,這與人們的觀察是一致的,但是到底是由1→0還是由0→1,這就必須進一步加以分析。
在已經確定變了位的開關量中,若原來的狀態是1,則必定是由1→0的開關。這個結論表明,只要把異或的結果(狀態C)與原狀(狀態A)進行一次“與”運算,就可以找到由1→0的開關。如圖3所示。
圖3異或的結果與原狀的“與”運算
![圖3異或的結果與原狀的“與”運算 圖3異或的結果與原狀的“與”運算](/img/2/fe8/nBnauUDN0UDMwADZjRGOmR2MzkTNwMWNwcjYzQ2M5MWOwcjNlNjZ3cTM4M2LtVGdp9yYpB3LltWahJ2Lt92YuUHZpFmYuMmczdWbp9yL6MHc0RHa.jpg)
可見D4=D1=1,這正是由1→0的開關。
另外,在已經確定變了位的開關量中若現在的狀態為1則必定是由0→1的開關。這個結論表明只要將異或的結果和現在的狀態進行一次“與”運算就可找到由0→1的開關。
以上就是開關變位識別的基本原理,根據上述原理進行程式設計是比較容易的。
結論
歸納起來可以得到以下結論:
(1)現狀Å原狀,若有變位則該位為1,若無變位則該位為0。
(2)(現狀Å原狀)Ù原狀,若為1則該位由1→0。
(3)(現狀Å原狀)Ù現狀,若為1則該位由0→1。