電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 2027|回復(fù): 0
收起左側(cè)

嵌入式培訓(xùn)怎樣_解析嵌入式PLC芯片組的多路模擬量應(yīng)用開(kāi)發(fā)

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-7-31 15:20:09 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
嵌入式培訓(xùn)怎樣_解析嵌入式PLC芯片組的多路模擬量應(yīng)用開(kāi)發(fā),   

  

PLC可編程邏輯控制器,一種數(shù)字運(yùn)算操作的電子系統(tǒng),專為在工業(yè)環(huán)境應(yīng)用而設(shè)計(jì)的。它采用一類可編程的存儲(chǔ)器,用于其內(nèi)部存儲(chǔ)程序,執(zhí)行邏輯運(yùn)算,順序控制,定時(shí),計(jì)數(shù)與算術(shù)操作等面向用戶的指令,并通過(guò)數(shù)字或模擬式輸入/輸出控制各種類型的機(jī)械或生產(chǎn)過(guò)程。是工業(yè)控制的核心部分。早期的可編程控制器稱作可編程邏輯控制器,它主要用來(lái)代替繼電器實(shí)現(xiàn)邏輯控制。隨著技術(shù)的發(fā)展,這種采用微型計(jì)算機(jī)技術(shù)的工業(yè)控制裝置的功能已經(jīng)大大超過(guò)了邏輯控制的范圍,因此,今天這種裝置稱作可編程控制器,簡(jiǎn)稱PC。但是為了避免與個(gè)人計(jì)算機(jī)(Personal Computer)的簡(jiǎn)稱混淆,所以將可編程序控制器簡(jiǎn)稱PLC,plc自1966年美國(guó)數(shù)據(jù)設(shè)備公司(DEC)研制出現(xiàn),現(xiàn)行美國(guó),日本,德國(guó)的可編程序控制器質(zhì)量?jī)?yōu)良,功能強(qiáng)大。

傳統(tǒng)的PLC產(chǎn)品已經(jīng)無(wú)法滿足更加細(xì)分化的市場(chǎng)需求,為了滿足這種需求,出現(xiàn)了嵌入式PLC產(chǎn)品。PLC語(yǔ)言(梯形圖語(yǔ)言)嵌入到單片機(jī)中,使單片機(jī)的產(chǎn)品開(kāi)發(fā)從使用匯編語(yǔ)言變?yōu)槭褂锰菪螆D語(yǔ)言同時(shí),獲取了梯形圖編程平臺(tái)所提供的各種強(qiáng)大的應(yīng)用功能。我們稱用于單片機(jī)產(chǎn)品開(kāi)發(fā),自身具有強(qiáng)大功能的梯形圖語(yǔ)言編程軟件為嵌入式PLC。嵌入式PLC能廣泛應(yīng)用于各種單片機(jī)產(chǎn)品。

一、嵌入式PLC

嵌入式PLC是指在特定的控制裝置中實(shí)現(xiàn)PLC(ProgramableLogicController)梯形圖編程語(yǔ)言的解釋、執(zhí)行,使特定裝置在自身專用功能基礎(chǔ)上具有PLC的基本功能。梯形圖是一種面向工廠自動(dòng)化工程師的圖形化PLC編程語(yǔ)言。梯形圖具有簡(jiǎn)潔、直觀,面向工藝流程等許多優(yōu)點(diǎn)。PLC編程語(yǔ)言的出現(xiàn)使控制裝置中的硬件管和面向控制流程分離,PLC制造商專注于硬件及硬件管理,工廠自動(dòng)化人員借助梯形圖語(yǔ)言作二次開(kāi)發(fā),使同一種PLC適用于不同的控制系統(tǒng)中,形成了可編程邏輯控制器(PLC)這種平臺(tái)級(jí)產(chǎn)品。

1、嵌入式PLC系統(tǒng)軟件

嵌入式PLC正是面向IPC和單片機(jī)系統(tǒng)開(kāi)發(fā)的,它保留了PLC(借助梯形圖語(yǔ)言)硬件管理和工藝控制分離的優(yōu)勢(shì),結(jié)合IPC和單片機(jī)提供的更個(gè)性化、差異化的設(shè)計(jì)方法,形成一種新的控制器設(shè)計(jì)理念。當(dāng)我們?cè)贗PC中嵌入PLC的功能時(shí),我們稱之為基于PCBase的嵌入式PLC,當(dāng)我們?cè)趩纹瑱C(jī)中嵌入PLC功能時(shí),我們稱它為基于AllONOne的嵌入式PLC(片級(jí)嵌入PLC)。未特別說(shuō)明時(shí),嵌入式PLC指片級(jí)嵌入式PLC,也就是本文提出的嵌入式PLC。以下描述以8位單片機(jī)C8051F040為硬件的以科威公司EASYV1.00版嵌入式PLC軟件架構(gòu)。

嵌入式PLC系統(tǒng)軟件將PLC語(yǔ)言(梯形圖語(yǔ)言)、CAN總線嵌入到單片機(jī)中,使單片機(jī)的產(chǎn)品開(kāi)發(fā)從使用匯編語(yǔ)言變?yōu)槭褂肞LC梯形圖語(yǔ)言,并具有CAN總線的互連特性。該系統(tǒng)軟件具有以下特點(diǎn):1.以梯形圖語(yǔ)言為內(nèi)核,添加了中斷管理系統(tǒng),能實(shí)現(xiàn)PLC無(wú)法實(shí)現(xiàn)的硬實(shí)時(shí)操作;2.強(qiáng)化運(yùn)算能力,增加了CANBUS函數(shù)庫(kù)、浮點(diǎn)數(shù)庫(kù)、專家自整定PID、嵌入式WEB等,豐富了PLC的功能;3.提供開(kāi)放式擴(kuò)展結(jié)構(gòu),支持第三方開(kāi)發(fā)擴(kuò)展單元的接線;4.增加了網(wǎng)絡(luò)互連功能,在遠(yuǎn)程端加載專用瀏覽器后。

系統(tǒng)軟件包括三個(gè)部分。

①嵌入式PLC內(nèi)核:它完成實(shí)時(shí)任務(wù)調(diào)度、梯形圖語(yǔ)言解釋、執(zhí)行、通訊等基本功能,并提供二次開(kāi)發(fā)驅(qū)動(dòng)接口;

②二次開(kāi)發(fā)驅(qū)動(dòng)程序通過(guò)系統(tǒng)軟件提供的外掛任務(wù),使用內(nèi)核開(kāi)發(fā)各種面向具體對(duì)象個(gè)性化、差異化的驅(qū)動(dòng)程序;

③終端應(yīng)用程序指面向工藝流程控制的梯形圖語(yǔ)言程序;

2、嵌入式PLC芯片組

EASY CORE 1.00 是一個(gè)加載了嵌入式PLC系統(tǒng)軟件的核心芯片組,作為一款加載了系統(tǒng)軟件的硬件平臺(tái),可以用來(lá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è)備互連。

2)芯片組原理框圖:

  

二、應(yīng)用開(kāi)發(fā)

基于加載了系統(tǒng)軟件的核心芯片組,我們可以根據(jù)工藝需要來(lái)開(kāi)發(fā)自己的嵌入式PLC產(chǎn)品。下面就介紹基于嵌入式PLC芯片組開(kāi)發(fā)的16路輸入的模擬量PLC產(chǎn)品。

1、硬件設(shè)計(jì)

硬件整體結(jié)構(gòu)圖如下:

  

AI0是芯片組內(nèi)的一個(gè)AD轉(zhuǎn)換通道,P1.0—P1.4作為模擬開(kāi)關(guān)的通道控制線來(lái)進(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通道的模擬開(kāi)關(guān)CD4067構(gòu)成信號(hào)選擇電路,A、B、C、D、INH接到芯片組的P1.0-P1.4引腳,做為模擬開(kāi)關(guān)的通道選擇控制信號(hào)。OUT引腳接到芯片組的AIN0,即第一個(gè)AD轉(zhuǎn)換通道。

  

2、軟件開(kāi)發(fā)

嵌入式PLC是基于Cygnal公司的C8051f040芯片開(kāi)發(fā)的,所以二次程序的開(kāi)發(fā)使用51匯編語(yǔ)言。開(kāi)發(fā)選擇的編譯器是KEIL C51,因?yàn)樗梢陨晌覀兯枰摹EX文件。內(nèi)核留出了七個(gè)用戶嵌入程序接口,我們只需要充分理解各個(gè)接口的功能就可了進(jìn)行二次開(kāi)發(fā)了,需要熟悉如下內(nèi)容:a、內(nèi)核功能b、內(nèi)核結(jié)構(gòu)c、內(nèi)核任務(wù)管理d、內(nèi)核存儲(chǔ)空間分配。

(1)程序規(guī)劃

T4中斷:完成AD轉(zhuǎn)換和16個(gè)通道的切換程序

USER_SCAN:PLC資源區(qū)中AD值的刷新。

AD轉(zhuǎn)換過(guò)程如下:每一通道連續(xù)采樣16次,采樣完后得到累加和,然后啟動(dòng)下一通道的AD轉(zhuǎn)換。

PLC資源區(qū)中AD值的刷新過(guò)程如下:在梯形圖掃描周期結(jié)束時(shí)進(jìn)行,把各路AD值的累加和求平均值后放入PLC的資源區(qū)的對(duì)應(yīng)位置處。

(2)程序代碼

INIT_AD: ;AD初始化

MOV SFRPAGE, #ADC0_PAGE入式硬件開(kāi)發(fā)簡(jiǎn)歷, 嵌入式處理器的種類, 嵌入式代碼靜態(tài)檢查, 全國(guó)計(jì)算機(jī)四級(jí)嵌入式, 嵌入式風(fēng)險(xiǎn)點(diǎn)研判, 搞嵌入式的外企, 嵌入式的內(nèi)存結(jié)構(gòu), 嵌入式個(gè)人創(chuàng)業(yè), 嵌入式的常用軟件, 國(guó)三嵌入式掃描版, arm嵌入式行業(yè), 嵌入式窗口英文, 嵌入式電磁實(shí)用嗎, 粵嵌嵌入式怎么樣, 微信嵌入式教學(xué)平臺(tái), dsp芯片和嵌入式, 北斗嵌入式模塊, 唐代嵌入式木, 嵌入式硬件體系結(jié)構(gòu), 嵌入式跟底層關(guān)系, 嵌入式玻璃扶手施工, 杭州嵌入式培訓(xùn)班,

MOV REF0CN, #07H ;內(nèi)部參考電壓/輸出到VERF

;啟動(dòng)內(nèi)部溫度傳感器

MOV AMX0CF, #00H ;單極性輸入

MOV ADC0CF, #0B8H ;D7——D3=SYSCLK/采樣時(shí)鐘-1

;采樣轉(zhuǎn)換時(shí)鐘=1US

;D2——D0=GAIN

;000 GAIN=1

MOV ADC0CN, #90H ;啟動(dòng)AD采樣

MOV AD_CHANNEL, #00H ;AD通道號(hào),初值為0

MOV AD_COUNT, #00H ;16次采樣次數(shù)計(jì)數(shù)。初值為0

RET

SAMPLE_AD: ;AD采樣開(kāi)始

MOV SFRPAGE, #ADC0_PAGE ;AD控制寄存器頁(yè)

MOV A, AD_CHANNEL ;采樣值的累加和是一個(gè)字基地址 ;為#XA I ,偏移地址為AD_CHANNEL

RL A

MOV DPTR, #XAI ;XAI存放16次采樣值的累加和

ADD A, DPL ;低字節(jié)相加

MOV DPL, A

MOVX A, @DPTR

MOV B, A

MOV A, ADC0L

CLR C

ADDC A, B

MOVX @DPTR, A

INC DPTR ;高字節(jié)相加

MOVX A, @DPTR

MOV B, A

MOV A, ADC0H

ANL A, #0FH

ADDC A, B

MOVX @DPTR, A ;#XAI中存放格式為低字節(jié)、高字節(jié)

MOV SFRPAGE, #ADC0_PAGE ;AD控制寄存器頁(yè)

MOV ADC0CN, #090H ;啟動(dòng)下次AD采樣

INC AD_COUNT

MOV A, AD_COUNT

CLR C

SUBB A, #16

JNC FILL_XAI_XAD ;當(dāng)16次采樣完成后,把XAI中16 ;個(gè)采樣和(2 字節(jié))存放到XAD

RET

3、驅(qū)動(dòng)程序的嵌入

在KEIL C51中編譯上述程序。使用下載工具軟件“DOWNHEX”,把生成的。HEX文件通過(guò)串口下載到芯片組的固定地址處,使得內(nèi)核可以調(diào)用它,從而完成二次驅(qū)動(dòng)程序的開(kāi)發(fā)。

三、功能介紹

基于嵌入式PLC開(kāi)發(fā)的多路模擬量網(wǎng)絡(luò)節(jié)點(diǎn)具有以下功能:1、采集工業(yè)現(xiàn)場(chǎng)的多路熱電偶信號(hào),2、支持三菱、臺(tái)達(dá)等多家人機(jī)界面, 3、支持梯形圖編程(86條指令), 4、支持CANbus互連等。這里簡(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℃。

下面的梯形圖程序就是把一路熱電偶信號(hào)轉(zhuǎn)換成溫度值,該信號(hào)AD值放在D5000,轉(zhuǎn)換后的溫度值存放在D5160中。

  

四、結(jié)束語(yǔ)

筆者利用嵌入式PLC芯片組開(kāi)發(fā)的的PLC產(chǎn)品的實(shí)例證明,本著軟硬件可裁剪的原則,開(kāi)發(fā)出的產(chǎn)品可以很好的滿足用戶的個(gè)性化需求,節(jié)約了硬件成本、縮短了研發(fā)周期,并且得到了許多強(qiáng)大的功能,相信它的出現(xiàn)必將使得PLC生產(chǎn)廠家生產(chǎn)出越來(lái)越多的貼近終端市場(chǎng)的PLC。



QICK

發(fā)表回復(fù)

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表