公司熱線: 18903837318
中央空調(diào)自控調(diào)試方案常用解決方案
PLC編程中的進制類型和編程換算方法
PLC也是一臺微電腦,許多功能指令離不開進制轉(zhuǎn)換,同時也是為了增加程序的可讀性,想要對PLC進行編程,那么必須得清楚數(shù)制的設(shè)置以及轉(zhuǎn)化和對應(yīng)的符號。
當(dāng)然,人們輸入計算機的十進制被轉(zhuǎn)換成二進制進行計算,計算后的結(jié)果又由二進制轉(zhuǎn)換成十進制,這都由操作系統(tǒng)自動完成,并不需要人們手工去做。人們通常采用的數(shù)制有十進制二進制、八進制和十六進制。
常用進制對應(yīng)表
常用進制使用場合
二進制只有 0 和 1 兩個符號,按照逢二進一的規(guī)則運算。0和1用來表示開關(guān)量(或稱數(shù)字量)的兩種不同狀態(tài),如觸點的斷開和接通,線圈的得電和失電等。
所有數(shù)據(jù)的運算、存儲都是采用二進制進行
西門子PLC上的輸入輸出編號是采用八進制方式命名
MODBUS-RTU通信數(shù)據(jù)發(fā)送與接收是采用了十六進制
某變頻器的參數(shù)地址以十六進制分配
進制之間的相互轉(zhuǎn)換
方法:二進制數(shù)從低位到高位(即從右往左)計算,第0位的權(quán)值是2的0次方,位的權(quán)值是2的1次方,第2位的權(quán)值是2的2次方,依次遞增下去,把后的結(jié)果相加的值就是十進制的值了!
方法:將二進制數(shù)從位開始( 從右到左 ),以4位二進制數(shù)為一組進行分組,左邊不足4位的補零。然后對每組分別運用“8421”法則快速運算。
方法:十進制數(shù)除2取余法,即十進制數(shù)除2,余數(shù)為權(quán)位上的數(shù),得到的商值繼續(xù)除2,依此步驟繼續(xù)向下運算直到商為0為止。
方法:對于每一位十六進制數(shù),分別運用“8421”法則快速運算,逐位展開成4位二進制數(shù),不足四位的補零,后左邊的零可省略。
方法:要從右到左用二進制的每個數(shù)去乘以16的相應(yīng)次方,然后這些數(shù)字相加就是了。
鄭州繼飛機電設(shè)備有限公司專業(yè)承接:配電箱電控系統(tǒng)自動化成套控制柜。
專業(yè)供應(yīng):正泰、施耐德等低壓電氣,價格從優(yōu)。 成套安裝調(diào)試 ,電氣控制箱安裝與配線,控制電路設(shè)計,伺服電機控制及PLC編程等。
PLC形式化分析中面臨的困難
(1)PLC缺乏編程語言PLC編程屬于低級編程語言且編程語言眾多,語法語義晦澀,采用分層尋址,地址尋址復(fù)雜,存在隱式的類型數(shù)據(jù),建模難度大,語言屬性易丟失。
(2)時間建模缺失
工業(yè)控制系統(tǒng)的實時性要求很高,因此對時間進行建模極為重要,時間建模的對象應(yīng)包括定時器的累積時間、單條指令的運行時間和執(zhí)行周期時間,由于定時器是跨循環(huán)周期的全局變量,建模時將時間考慮在內(nèi)會極大地提高建模的難度并增加檢測的時間,但不考慮時間就無法檢測出與時間相關(guān)的安全規(guī)約。
(3)物理環(huán)境建模缺失
工控系統(tǒng)與物理環(huán)境關(guān)系密切,工業(yè)控制器的輸入一般可以認為是物理環(huán)境的輸出,輸出一般可以認為是物理環(huán)境的輸入,構(gòu)成一個閉環(huán)回路,不考慮物理環(huán)境就無法地模擬出工業(yè)控制器的行為。
(4)狀態(tài)空間
PLC代碼包含的變量多,狀態(tài)空間大,對PLC代碼進行建模分析是建立在狀態(tài)轉(zhuǎn)化基礎(chǔ)上的,如果直接進行模型檢測會造成狀態(tài)空間的問題。
鄭州繼飛機電設(shè)備有限公司專業(yè)承接:稱重配料 除塵設(shè)備 恒壓供水 加氣磚生產(chǎn)線 污水處理 沼氣太陽能 中央空調(diào)等自動化工程的設(shè)計、安裝、調(diào)試。
PLC控制代碼檢測的技術(shù)路線
(1)中間語言翻譯
由于工業(yè)控制器支持多種標準編程語言,且語法語義上都有較大差異,現(xiàn)有的模型檢測技術(shù)大都基于特定的編程語言,為了降低建模的復(fù)雜性,我們需要把PLC編程語言轉(zhuǎn)化成模型檢測器可以處理的中間語言。
Darvas等提出了將PLC程序的SCL語言轉(zhuǎn)化為基于NuSMV的中間模型方法,它是一種接近于自動機模型的中間模型。McLaughlin等給出了將PLC的指令表IL語言代碼翻譯為基于Vine的中間語言ILIL的方法。Zonouz等通過反編譯的方法將MC7code轉(zhuǎn)化為中間語言ILIL,該中間語言ILIL同樣使用BitBlaze二進制分析工具Vine插件來描述。
(2) 時間模型構(gòu)建
工業(yè)控制系統(tǒng)的實時性要求很高,因此時間是很重要的建模對象。寄存器(On-Delay Timer,TON)用于確保PLC中實時性屬性,TON指令為PLC的輸入信號提供延遲機制。對TON計時器建模會極大地提高建模的難度并增加檢測的時間,但不考慮時間就無法檢測出與時間相關(guān)的安全規(guī)約。因此對TON計時器的形式化驗證成為PLC代碼形式化驗證的瓶頸之一。
近年來也有一些對TON計時器的建模研究,Masder等早開始這方面的研究,他們將IL程序轉(zhuǎn)換為時間自動機模型并使用自動機和Prometa模型兩種方式對計時器建模。Willems使用時間自動機對TON模型建模計來解決關(guān)于TON的問題。Wan等在定理證明器Coq中針對梯形圖語言對TON計時器進行形式化驗證,但沒有給出通用模塊的PLC程序形式化描述。Sidi在定理證明器Coq中針對指令表語言對TON計時器進行形式化驗證。
鄭州繼飛機電設(shè)備有限公司專業(yè)承接:稱重配料 除塵設(shè)備 恒壓供水 加氣磚生產(chǎn)線 污水處理 沼氣太陽能 中央空調(diào)等自動化工程的設(shè)計、安裝、調(diào)試。