可編程序控制器(Programmable Logic Controller,簡稱PLC)把自動(dòng)化技術(shù)、計(jì)算機(jī)技術(shù)和通信技術(shù)融為一體,按照成熟而有效的繼電控制概念和設(shè)計(jì)思想,用先進(jìn)的微控制器技術(shù)來實(shí)現(xiàn)I/O的實(shí)時(shí)檢測(cè)和控制。由于PLC具有編程簡單、可靠性高、通用性強(qiáng)和使用方便等特點(diǎn),因此得到廣泛應(yīng)用。PLC技術(shù)已經(jīng)成為工科院校電工學(xué)的必修內(nèi)容。但PLC的種類很多,發(fā)展很快,而指令系統(tǒng)和使用方法又不盡相同,使PLC的教學(xué)內(nèi)容總是滯后于PLC的技術(shù)發(fā)展。為了改變這種狀況,我們以自帶在系統(tǒng)中編程(ISP)功能的、高性價(jià)比的微控制器SM2965為核心,研制了基于ISP功能的可編程序控制器,用于PLC控制實(shí)驗(yàn)。下面介紹PLC的設(shè)計(jì)思路、硬件構(gòu)成和軟件設(shè)計(jì)方法。
一、采用ISP微控制器SM2965設(shè)計(jì)PLC的思路
為了滿足對(duì)嵌入式系統(tǒng)采用高級(jí)語言開發(fā)的需求,新一代微控制器配置了ISP功能,它是指在用戶設(shè)計(jì)的微控制器系統(tǒng)中為配置新的系統(tǒng)功能對(duì)器件進(jìn)行重新編程的技術(shù)。在PLC中采用具有ISP功能的微控制器,不僅可以在線更新用戶程序,而且還可以在線升級(jí)系統(tǒng)程序。使PLC教學(xué)能緊跟PLC最新技術(shù)發(fā)展。
(一)SM2965的特點(diǎn)
SM2965的內(nèi)核是標(biāo)準(zhǔn)的80C52,但在此基礎(chǔ)上擴(kuò)展了以下功能:
在系統(tǒng)中編程,編程電壓為+5V;
64k字節(jié)快閃存儲(chǔ)器(FLASH E2PROM),ISP功能使FLASH E2PROM可在線編程;
1k字節(jié)的RAM空間—256字節(jié)的片內(nèi)RAM和768字節(jié)的片內(nèi)擴(kuò)展內(nèi)存(EXRAM);
可編程的看門狗定時(shí)器。
可見,一片SM2965包含了標(biāo)準(zhǔn)的80C32、FLASH、E2PROM(28SF512)、SRAM(靜態(tài)數(shù)據(jù)存儲(chǔ)器)和WDT(看門狗定時(shí)器)SM2965是性價(jià)比極相當(dāng)高的“單片”計(jì)算機(jī)。而其ISP特性使得FLASH E2PROM既可作為程序空間,也可像E2PROM一樣保存數(shù)據(jù)。以其為核心設(shè)計(jì)的PLC具有成本低、體積小、擴(kuò)展方便及使用靈活等優(yōu)點(diǎn)。
(二)由微控制器組成PLC的思路
以微控制器為核心設(shè)計(jì)PLC,其硬件組成與微控制器測(cè)控系統(tǒng)基本相同。但在微控制器測(cè)控系統(tǒng)中,“測(cè)”和“控”的過程在時(shí)間上是串行關(guān)系。而PLC是按循環(huán)掃描方式進(jìn)行工作的,每個(gè)掃描周期包括輸入采樣、程序執(zhí)行和輸出刷新三個(gè)階段,采用集中輸入、集中輸出并行關(guān)系的工作方式。若像微控制器測(cè)控系統(tǒng)一樣,對(duì)PLC梯形圖程序行依次實(shí)時(shí)采集輸入端子狀態(tài),進(jìn)行處理后實(shí)時(shí)輸出,達(dá)不到PLC的控制效果。為此,在RAM區(qū)設(shè)置輸入緩沖作為輸入映像寄存器,采用一次性讀入全部輸入端子狀態(tài),并將其存入輸入緩沖區(qū),然后,按照梯形圖程序行的邏輯關(guān)系,從輸入緩沖區(qū)讀取相應(yīng)輸入端子狀態(tài),運(yùn)算處理后將待輸出的結(jié)果存入輸出緩沖區(qū)—元件映像寄存器。最后,當(dāng)梯形圖程序行全部執(zhí)行完畢,一次性將輸出緩沖區(qū)的值輸出到相應(yīng)的輸出端子,經(jīng)過上述三個(gè)階段,完成一個(gè)程序掃描周期。如此往復(fù),自動(dòng)進(jìn)行下一輪的掃描。這樣將串行程序工作和并行工業(yè)控制系統(tǒng)兩種關(guān)系協(xié)調(diào)起來。雖然存在輸入/輸出滯后現(xiàn)象,但微控制器執(zhí)行一條指令的時(shí)間是微秒級(jí),執(zhí)行一個(gè)掃描周期的時(shí)間為幾毫秒,最大為幾十毫秒。相對(duì)于電器的動(dòng)作時(shí)間而言,掃描周期是短暫的,可以認(rèn)為在一個(gè)掃描周期內(nèi)輸入端子的狀態(tài)是不變的,對(duì)其狀態(tài)變化的采集和處理也是實(shí)時(shí)的,從而滿足了實(shí)時(shí)控制的要求。
二、硬件配置及系統(tǒng)資源分析
系統(tǒng)硬件配置以微控制器SM2965為核心,如圖1所示。





