如今工業(yè)控制產(chǎn)品已發(fā)展到一個(gè)追求個(gè)性化、差異化的階段。傳統(tǒng)的PLC產(chǎn)品已經(jīng)無法滿足更加細(xì)分化的市場(chǎng)需求,為了滿足這種需求,出現(xiàn)了嵌入式PLC產(chǎn)品?! ?
一、嵌入式PLC
嵌入式PLC是將PLC系統(tǒng)軟件構(gòu)建于控制器內(nèi),根據(jù)用戶控制需要定制硬件,以PLC的應(yīng)用方式解決對(duì)象控制問題的PLC。它由兩部分組成:嵌入式PLC系統(tǒng)軟件和芯片組成。
1、嵌入式PLC系統(tǒng)軟件
嵌入式PLC系統(tǒng)軟件將PLC語言(梯形圖語言)、CAN總線嵌入到單片機(jī)中,使單片機(jī)的產(chǎn)品開發(fā)從使用匯編語言變?yōu)槭褂肞LC梯形圖語言,并具有CAN總線的互連特性?! ?
該系統(tǒng)軟件具有以下特點(diǎn):1.以梯形圖語言為內(nèi)核,添加了中斷管理系統(tǒng),能實(shí)現(xiàn)PLC無法實(shí)現(xiàn)的硬實(shí)時(shí)操作;2.強(qiáng)化運(yùn)算能力,增加了CANBUS函數(shù)庫、浮點(diǎn)數(shù)庫、專家自整定PID、嵌入式WEB等,豐富了PLC的功能;3.提供開放式擴(kuò)展結(jié)構(gòu),支持第三方開發(fā)擴(kuò)展單元的接線;4.增加了網(wǎng)絡(luò)互連功能,在遠(yuǎn)程端加載專用瀏覽器后,即可實(shí)現(xiàn)遠(yuǎn)程監(jiān)控?! ?
系統(tǒng)軟件包括三個(gè)部分?! ?
①嵌入式PLC內(nèi)核:它完成實(shí)時(shí)任務(wù)調(diào)度、梯形圖語言解釋、執(zhí)行、通訊等基本功能,并提供二次開發(fā)驅(qū)動(dòng)接口;
②二次開發(fā)驅(qū)動(dòng)程序:通過系統(tǒng)軟件提供的外掛任務(wù),使用內(nèi)核開發(fā)各種面向具體對(duì)象個(gè)性化、差異化的驅(qū)動(dòng)程序;
③終端應(yīng)用程序:指面向工藝流程控制的梯形圖語言程序。
2、嵌入式PLC芯片組
EASY CORE 1.00 是一個(gè)加載了嵌入式PLC系統(tǒng)軟件的核心芯片組,作為一款加載了系統(tǒng)軟件的硬件平臺(tái),可以用來設(shè)計(jì)通用和專用PLC?! ?
1)芯片組基本性能:
①供電:+5V 200mA,RAM掉電保護(hù)5年?! ?
②CPU: C8051F040?! ?
③嵌入擴(kuò)展能力
·32 I/O:可復(fù)用成SPI、I2C接口及外中斷、外計(jì)數(shù)、AD等?! ?
·4 AD: 12位精度,100 KPS?! ?
·2 DA: 12位精度,100 KPS。
④ 通信接口
·CANBUS:系統(tǒng)軟件管理,使用工具軟件CANSet構(gòu)建CANBUS總線網(wǎng)絡(luò)?! ?
·UART0:系統(tǒng)軟件管理,用于梯形圖編程、監(jiān)控,支持人機(jī)界面及用戶驅(qū)動(dòng)程序下載?! ?
·UART1:系統(tǒng)軟件管理,用于下載CANBUS網(wǎng)絡(luò)參數(shù)、構(gòu)建RS485網(wǎng)絡(luò)及支持第三方設(shè)備互連?! ?
二、應(yīng)用開發(fā)
基于加載了系統(tǒng)軟件的核心芯片組,我們可以根據(jù)工藝需要來開發(fā)自己的嵌入式PLC產(chǎn)品。下面就介紹基于嵌入式PLC芯片組開發(fā)的16路輸入的模擬量PLC產(chǎn)品(可輸入標(biāo)準(zhǔn)信號(hào)或熱電偶信號(hào))?! ?
1、硬件設(shè)計(jì)
AI0是芯片組內(nèi)的一個(gè)AD轉(zhuǎn)換通道,P1.0—P1.4作為模擬開關(guān)的通道控制線來進(jìn)行16個(gè)模擬信號(hào)通道間的切換。
(1)信號(hào)采集電路
用AD公司的高精密放大器OP07構(gòu)成模擬信號(hào)放大電路,OP07具有低輸入偏移電壓(10uV)、低漂移電壓(0.2uV/℃)和寬范圍的供電電壓(±3V-±18V), 可以很好地滿足該產(chǎn)品的要求。在這里OP07由±5V供電,R18、R79作為調(diào)零電阻,輸出電壓由下式給出:Vout=Vin(1+R98/R56)?! ?
(2)信號(hào)選擇電路
選擇16通道的模擬開關(guān)CD4067構(gòu)成信號(hào)選擇電路,A、B、C、D、INH接到芯片組的P1.0-P1.4引腳,做為模擬開關(guān)的通道選擇控制信號(hào)。OUT引腳接到芯片組的AIN0,即第一個(gè)AD轉(zhuǎn)換通道。
2、軟件開發(fā)
嵌入式PLC是基于Cygnal公司的C8051f040芯片開發(fā)的,所以二次程序的開發(fā)使用51匯編語言。開發(fā)選擇的編譯器是KEIL C51,因?yàn)樗梢陨晌覀兯枰?HEX文件。
內(nèi)核留出了七個(gè)用戶嵌入程序接口,我們只需要充分理解各個(gè)接口的功能就可了進(jìn)行二次開發(fā)了,需要熟悉如下內(nèi)容:a、內(nèi)核功能b、內(nèi)核結(jié)構(gòu)c、內(nèi)核任務(wù)管理d、內(nèi)核存儲(chǔ)空間分配。由于系統(tǒng)軟件中已經(jīng)加入了232通信、485通信和CAN通信的功能,所以16路模擬量PLC的二次驅(qū)動(dòng)軟件的開發(fā)主要集中在模擬量的AD轉(zhuǎn)換和PLC資源區(qū)中AD值的實(shí)時(shí)刷新上。
(1)程序規(guī)劃
T4中斷:完成AD轉(zhuǎn)換和16個(gè)通道的切換程序
USER_SCAN:PLC資源區(qū)中AD值的刷新?! ?
AD轉(zhuǎn)換過程如下:每一通道連續(xù)采樣16次,采樣完后得到累加和,然后啟動(dòng)下一通道的AD轉(zhuǎn)換?! ?
PLC資源區(qū)中AD值的刷新過程如下:在梯形圖掃描周期結(jié)束時(shí)進(jìn)行,把各路AD值的累加和求平均值后放入PLC的資源區(qū)的對(duì)應(yīng)位置處。
(2)程序代碼

3、驅(qū)動(dòng)程序的嵌入
在KEIL C51中編譯上述程序。使用下載工具軟件“DOWNHEX”,把生成的.HEX文件通過串口下載到芯片組的固定地址處,使得內(nèi)核可以調(diào)用它,從而完成二次驅(qū)動(dòng)程序的開發(fā)。到此,16路模擬量PLC的開發(fā)工作基本完成?! ?
三、功能介紹
基于嵌入式PLC開發(fā)的多路模擬量網(wǎng)絡(luò)節(jié)點(diǎn)具有以下功能:1、采集工業(yè)現(xiàn)場(chǎng)的多路熱電偶信號(hào),2、支持三菱、臺(tái)達(dá)等多家人機(jī)界面, 3、支持梯形圖編程(86條指令), 4、支持CANbus互連(多機(jī)并聯(lián)運(yùn)行或擴(kuò)展單元連接)等。這里簡(jiǎn)要介紹下該網(wǎng)絡(luò)節(jié)點(diǎn)的梯形圖功能應(yīng)用?! ?
嵌入式PLC的系統(tǒng)軟件中內(nèi)置了溫度轉(zhuǎn)換函數(shù),其功能是把熱電偶毫伏信號(hào)對(duì)應(yīng)的AD值轉(zhuǎn)化成溫度值。適用于任意分度熱電偶輸入信號(hào),應(yīng)用于不同的控溫場(chǎng)合,配合PID調(diào)節(jié),使受控溫度精度可達(dá)±1℃?! ?
四、結(jié)束語
筆者利用嵌入式PLC芯片組開發(fā)的的PLC產(chǎn)品的實(shí)例證明,本著軟硬件可裁剪的原則,開發(fā)出的產(chǎn)品可以很好的滿足用戶的個(gè)性化需求,節(jié)約了硬件成本、縮短了研發(fā)周期,并且得到了許多強(qiáng)大的功能,相信它的出現(xiàn)必將使得PLC生產(chǎn)廠家生產(chǎn)出越來越多的貼近終端市場(chǎng)的PLC。