摘要: 介紹了菲尼克斯電氣(PHOENIX)模擬量輸入IB IL_AI_8/SF-PAC模塊的功能,通過實例分析,闡述了PHOENIX的模擬量輸入模塊在本次項目中的成功應用。
關鍵詞:菲尼克斯(PHOENIX),ILC 200 UNI,PCWorX,IB IL_AI_8/SF , 模擬量輸入,
PHOENIX IB IL_AI_8/SF module in the application of ILC 200 UNI
MA XIN1, ZHANG ZHEN-FENG2, WANG HUAI-JIE2
(1.School of computer Nanhua University, Heng yang 421001 hunan;
2. Qingzhou Cigarette Factory Qingzhou 262500 shandong;
3.Sunny High Technology R&D Company of Nanhua University, hengyang 421001,hunan)
Abstract: This paper introduces the Function of the PHOENIX analog input module (IB IL_AI_8/SF-PAC),with the analysis of example, explained the application of PHOENIX analog input module in the project.
Key words: PHOENIX, ILC 200 UNI,PCWorX, IB IL_AI_8/SF, analog input
一、引言
在本次濟南卷煙廠卷接機組集中工藝風力平衡及風力送絲自動控制系統項目中,主站(S7-400)與15個I/O子站數據通訊采用了PROFINET網絡。各I/O子站均采用了德國菲尼克斯公司(phoenix)的ILC 200 UNI PLC和INLINE模板做為實現系統風力平衡控制。ILC 200 UNI是菲尼克斯公司PLC家族中性價比較高的一款模塊化緊湊型控制系統。并可以通過INTERBUS、PROFIBUS、DEVICENET、ETHERNET、PROFINET等耦合器向上級網絡擴展。ILC 200 UNI PLC控制器更適合于小型的控制系統,開放的接口意味著它們能集成到幾乎所有的現場總線與工業網絡,使用該系統直接集成的擴展性允許控制器以靈活的方式適合于許許多多的應用場合,下圖為系統配置圖。
ILC 200 UNI PLC 的組態、編程及調試是在菲尼克斯公司的PCWORX軟件上實現的。PCWORX集成了三大功能:現場總線組態、編程和診斷功能。軟件編程符合IEC61131-3國際標準,支持語句表、結構文本、梯形圖、功能塊圖和順序功能圖等5種編程語言。編程系統基于流行的32位WINDOWS技術,一改傳統的PLC編程方式,全面引入目前流行的高級語言的編程方法和思路,方便編程。采用Diag+或者Diag+ NetScan,通過在線診斷,進行精確和快速的故障定位。
二、ILC 200 UNI組態及IB IL_AI_8/SF模板簡介
本次項目I/O站的ILC 200 UNI PLC及其它模板配置組態見圖1。.IB IL_AI_8/SF模板即8通道模擬量輸入模板,該模板硬件接線端子上設有8路通道,但是其在PCWORX組態上的過程數據分配只占2個輸入字(AI1_IN0,AI1_IN1),2個輸出字(AI1_OUT0,AI1_OUT1)。由于該模板的這種物理特性,其性價比比較高,特別適用于模擬量檢測實時性要求不是太高的環境(采樣周期>300ms)。
AI1_OUT0和AI1_OUT1是模擬量通道命令字和參數化字,AI1_OUT0為模擬量通道選擇命令,AI1_OUT1為模擬量通道屬性(量程、范圍及精度選擇等)參數化的。AI1_IN0為命令字寫下去之后返回來的結果,如果AI1_IN0=AI1_OUT0表示命令字和參數化已經成功,AI1_IN1為模擬量的實時數據。可以通過編寫程序,采用循環功能分時檢測和讀取各個通道的模擬量的值。
圖1
AI1_OUT0命令字代碼表:
Bit10 ti bit8(通道數定義):
AI1_OUT1通道參數化字定義:
Measuring Range值的范圍及含義:
Format值的范圍及含義:
Filter值的范圍及含義:
本文重點講述是在PC WORX編程環境里,通過功能塊IL _AI8_V2如何實現IB IL_AI_8/SF模板在ILC 200 UNI PLC控制系統上的應用。
三、IL_AI_8_V2功能塊使用說明
模擬量輸入功能塊IL_AI_8_V2版本為V2.1z,使用前需先給AI8功能塊的結構化參數賦初值(參數化)。
模擬量輸入通道可以通過配置AI8_PARAMETER.Range.Filter(過濾), AI8_PARAMETER.Range(范圍), AI8_PARAMETER.Standardization(標準化), AI8_PARAMETER.HighLimit(最高值)及AI8_PARAMETER.Lowlimit(最低值)參數來定義。AI8_PARAMETER.Standardization為布爾型變量 TRUE代表可用 賦值為TRUE(缺省為TRUE);AI8_PARAMETER.Range為整型變量;AI8_PARAMETER.HighLimit 為實型變量;AI8_PARAMETER.Lowlimit最低值缺省為0.0。
使用PCWorX在本項目中所編制程序見圖2,本項目使用的風速傳感器模擬量信號為標準的4-20MA,查表知AI8_PARAMETER.Range確定為10;AI8_PARAMETER.HighLimit設為310.0(根據工藝要求風速范圍為0到31,為了方便通過Profinet來和主站通訊,先乘以10即設定為0到310,數據到S7-400主站再除以10顯示真實值(數據保留小數點后1位),這樣方便兩端都以INT來定義格式);AI8_PARAMETER.Lowlimit為0.0;AI8_PARAMETER.Standardization設為1,系統缺省為1,但是在實際調試過程中發現缺省值不起作用,風速數據沒有顯示,把標準化設置賦值為1之后正常顯示。
圖2.程序示例
下面就IL_AI_8_V2塊上管腳的功能作個說明:
1.Active(BOOL)這里我們設置兩個變量與,都為真此模塊才運行。第一個變量為PLC運行系統變量,第二個初始值設置為1。
2.Select(BYTE)為選擇變量,其中第0位代表通道1,第7位代表通道8,可以改變Select里面的值實現通道有選擇的讀取,這可以跳過沒用的通道,直接讀取有用的通道值。
3.Parameter為賦值的結構化參數。
4.InputAddress1(WORD)為AI8模塊組態分配的第一個輸入字地址。
5.InputAddress2(WORD)為AI8模塊組態分配的第二個輸入字地址。
6.Ready(BOOL)為該功能激活準備狀態。
7.Error(BOOL)為功能調用出錯狀態。
8.SelectValid(BOOL)為所選通道都毫無錯誤的被讀取,該狀態才為真。
9.DiagCode(WORD)為診斷代碼狀態。
10.AddDiagCode(WORD)為功能擴展診斷代碼狀態。
11.Data(結構數據)為模擬量目標數據輸出,接受數據也必須是一個同類型的結構數據AI8_DATA,則第一個模擬量通道的目標數據為AI8_DATA[1].Value,第二個模擬量通道的目標數據為AI8_DATA[2].Value,依次類推。
12.OutputAddress1(WORD)為模擬量通道命令字地址。
13.OutputAddress2(WORD)為模擬量通道參數化字地址
四、結論
通過現場調試表明功能塊IL _AI8_V2能夠很好實現IB IL_AI_8/SF模板在ILC 200 UNI PLC控制系統上的應用,IB IL_AI_8/SF模板使用可靠性高,程序結構簡單、清晰。
作者簡介:
馬新(1982-),男,河南駐馬店人,湖南衡陽南華大學計算機學院 421001,南華大學計算機學院在讀碩士研究生,主要從事智能控制;
田振云:山東中煙青州卷煙廠,山東青州262500;
張振鋒,王懷杰:南華大學三力高科技開發公司, 湖南衡陽 421001
參考文獻:
德國菲尼克斯(Phoenix)公司.IB_IL_AI_8手冊,2001.11