杜瑞濤,馮振華
(許昌電氣職業(yè)學(xué)院,河南 許昌 461000)
在工業(yè)自動(dòng)化控制的實(shí)際應(yīng)用過(guò)程中,有兩種被人們廣泛使用的設(shè)備,一種是PLC,另一種是單片機(jī),這兩種設(shè)備各有其優(yōu)缺點(diǎn)。PLC與單片機(jī)相比,主要功能是能縮短工程的研究開(kāi)發(fā)時(shí)間,其優(yōu)點(diǎn)是能夠簡(jiǎn)單操作、可靠性高、功能強(qiáng)大,而且適合應(yīng)用于各種惡劣的環(huán)境里。但作為獨(dú)立的單片機(jī)系統(tǒng),單片機(jī)在性能和功能強(qiáng)大方面都具有很高的優(yōu)勢(shì),可以滿足各種電氣控制的要求。但是,單片機(jī)存在開(kāi)發(fā)困難的缺點(diǎn),其所需要的開(kāi)發(fā)周期較長(zhǎng)、開(kāi)發(fā)成本高,而且PLC控制器沒(méi)有配備鍵盤(pán)、顯示器和其他設(shè)備,導(dǎo)致無(wú)法顯示控制數(shù)據(jù)??紤]到上述因素,要想單片機(jī)和PLC集成在一起完成各種控制任務(wù),讓各自的優(yōu)點(diǎn)可以在理想的狀態(tài)下實(shí)現(xiàn)。所以需要對(duì)該功能進(jìn)行實(shí)現(xiàn),應(yīng)當(dāng)對(duì)單片機(jī)與PLC時(shí)間進(jìn)行聯(lián)系,通過(guò)串行通信,為實(shí)現(xiàn)該功能提供基礎(chǔ)。本文主要對(duì)單片機(jī)與PLC如何進(jìn)行串行通信進(jìn)行分析。
科技是現(xiàn)代社會(huì)發(fā)展的基礎(chǔ),該技術(shù)對(duì)社會(huì)發(fā)展各個(gè)方面都有一定幫助,不僅能推動(dòng)社會(huì)科技進(jìn)步,也能實(shí)現(xiàn)政治、經(jīng)濟(jì)、軍事等各方面優(yōu)化。在整個(gè)國(guó)際歷史的發(fā)展歷程中,在給世界帶來(lái)巨大影響和變化的因素里,科學(xué)技術(shù)常常扮演著重要的角色??茖W(xué)技術(shù)革命的影響,無(wú)論是對(duì)人們的日常生活還是對(duì)整個(gè)社會(huì)的發(fā)展,都有著巨大的刺激,讓世界向著繁榮富強(qiáng)不斷地進(jìn)步。在第一次技術(shù)革命中,科技引領(lǐng)世界進(jìn)入資本主義國(guó)家,而第五次技術(shù)革命引領(lǐng)電子信息技術(shù)的普及進(jìn)入世界發(fā)展,引領(lǐng)世界走向信息化。因此可以得出,由于科學(xué)技術(shù)的影響,社會(huì)不斷地向越來(lái)越高級(jí)的部分轉(zhuǎn)化。自動(dòng)化本身是現(xiàn)代技術(shù)發(fā)展趨向,機(jī)電一體化技術(shù)在發(fā)展過(guò)程中,在自動(dòng)化方面要求逐漸提高。
首先,PLC系統(tǒng)在控制性與抗干擾性方面都具有良好的水平,而且系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)時(shí)間較短,具有良好的優(yōu)越性,同時(shí),PLC系統(tǒng)能夠進(jìn)行較好的擴(kuò)展,并且在整體結(jié)構(gòu)配置方面較為靈活,可以結(jié)合自身需求進(jìn)行改變。但是,傳統(tǒng)的PLC系統(tǒng)很難構(gòu)成所開(kāi)發(fā)的硬件結(jié)構(gòu),缺少自己的模塊,這些缺點(diǎn)已成為APP的主要困擾之一。三菱PLC在國(guó)內(nèi)是比較常見(jiàn)的一種技術(shù),為了有效地應(yīng)對(duì)上述問(wèn)題,將三菱PLC和單片機(jī)進(jìn)行有效組合并以串行通信為基礎(chǔ),這樣會(huì)有助于節(jié)約資源。
串行通信是一種一次從計(jì)算機(jī)總線或其他傳輸通道輸入一位數(shù)據(jù),并連續(xù)進(jìn)行單一處理的通信模式,這是通過(guò)串行端口同時(shí)發(fā)送和接收多位數(shù)據(jù)的并行通信。這意味著串行就是排成一排隊(duì)列行走,而并行就是排成在隊(duì)列中行走。它可以分為同步連續(xù)通信和異步串行通信兩部分,傳感數(shù)據(jù)提供時(shí)鐘信號(hào),并根據(jù)特定的參考點(diǎn)發(fā)送數(shù)據(jù)。例如,當(dāng)時(shí)鐘信號(hào)上升時(shí),發(fā)送數(shù)據(jù)。接收者根據(jù)始發(fā)者提供的時(shí)鐘信號(hào)和所有人的同意接收數(shù)據(jù),這就是同步連續(xù)通信,I2C、SPI等時(shí)鐘信號(hào)都屬于該通信模式。在發(fā)送數(shù)據(jù)的前后,調(diào)用方告知接收方數(shù)據(jù)可以通過(guò)特定的信號(hào),例如,信號(hào)的開(kāi)始或者是停止。同時(shí),發(fā)送者和接收者同意數(shù)據(jù)傳輸速率,也就是我們熟知的波特率,在發(fā)送START信號(hào)后,發(fā)送方以固定的節(jié)奏發(fā)送串行數(shù)據(jù)。同時(shí),接收機(jī)在接收到START信號(hào)后,以一定的節(jié)奏接收串行數(shù)據(jù)。
單片機(jī)常用的串行通信接口有以下幾個(gè)方式:
(1)SPI:高速同步串行端口。它有3~4線路接口可以分別同步收發(fā)連續(xù)型外圍設(shè)備,是摩托羅拉公司推出的同步連續(xù)通信模式和3線式同步總線,其強(qiáng)大的硬件功能使與SPI相關(guān)的軟件非常簡(jiǎn)單,讓CPU可以花更多的時(shí)間去處理其他問(wèn)題。SPI通常有三種信號(hào):SCK時(shí)鐘、STB芯片選擇和DATA信號(hào)。I2C一般來(lái)說(shuō)有兩個(gè)信號(hào):SDA數(shù)據(jù)和SCL時(shí)鐘。SPI總線可以實(shí)現(xiàn)真正的全雙工數(shù)據(jù)傳輸。在SPI的四線中,還有一行稱為SDC的附加行,用于指示從設(shè)備是否正在發(fā)送數(shù)據(jù)或命令,這個(gè)接口可以傳輸更快、更連續(xù)的數(shù)據(jù)。因?yàn)镾PI比IIC更快,所以通常用于批量存儲(chǔ)等產(chǎn)品的內(nèi)部組件之間的高速數(shù)據(jù)通信。
(2)UART:通用異步串行端口。MCU的“串行端口”通常表示UART??梢赃M(jìn)行完全的雙重通信,但是它的線路數(shù)比較少。數(shù)據(jù)是異步發(fā)送的,雙方的定時(shí)要求都很苛刻,通信速度不高。主要用于多計(jì)算機(jī)通信,例如單片機(jī)與單片機(jī)之間的通信。
(3)IIC:能夠在線找到通信協(xié)議和使用方法的串行傳輸模式,它也是一個(gè)3線制系統(tǒng)。IIC接口的協(xié)議包含設(shè)備的地址信息,可以將多個(gè)從設(shè)備連接到同一總線上,通過(guò)響應(yīng)交換數(shù)據(jù)和命令。但是,傳輸速度在標(biāo)準(zhǔn)模式下只能為100Kbps,在高速模式下為400Kbps,在高速模式下到達(dá)400Mbps無(wú)法實(shí)現(xiàn)雙工整體,不適合大多數(shù)數(shù)據(jù)傳輸。
(4)USB:這個(gè)是日常生活中人們最常用的東西,幾乎每天都用這個(gè)處理信息。USB是連接計(jì)算機(jī)系統(tǒng)和外部設(shè)備的串行總線標(biāo)準(zhǔn),也是輸入輸出接口的技術(shù)規(guī)范,它主要用于電腦、便攜設(shè)備等信息通信產(chǎn)品,可以應(yīng)用于照片設(shè)備、數(shù)字電視、游戲機(jī)及其他相關(guān)領(lǐng)域。許多SCM也有USB接口,如STM32。上述四個(gè)接口的通信協(xié)議都是不同的,例如,對(duì)于UART來(lái)說(shuō),最簡(jiǎn)單的協(xié)議是起始位和結(jié)束位,其中間有8位數(shù)據(jù),而對(duì)于USB通信協(xié)議來(lái)說(shuō)就要非常復(fù)雜化了。
PLC是由已經(jīng)調(diào)試成功、成熟且穩(wěn)定的單片機(jī)組成的控制系統(tǒng)。單片機(jī)可以組成各種各樣的APP系統(tǒng),應(yīng)用范圍很廣,但它只是一個(gè)集成電路,要與其他電路組件和軟件組合形成系統(tǒng)后才能應(yīng)用。從工程使用的角度來(lái)看,可靠性高,但幾乎沒(méi)有成本重復(fù)的單一項(xiàng)目里使用PLC是方便且有保證的。在許多項(xiàng)目中,使用單片機(jī)系統(tǒng)具有成本低、效益高的優(yōu)點(diǎn),但需要特定的研發(fā)實(shí)力和行業(yè)經(jīng)驗(yàn),單片機(jī)的形狀使相關(guān)功能技術(shù)相互兼容。在自動(dòng)生產(chǎn)領(lǐng)域,單片機(jī)有著廣泛的用途,將當(dāng)前的PLC系統(tǒng)與單片機(jī)APP系統(tǒng)相結(jié)合,可以利用自身的優(yōu)勢(shì)實(shí)現(xiàn)串行通信,進(jìn)一步提高串行通信在自動(dòng)化中的有效性。
另一方面,PLC和單片機(jī)都具有強(qiáng)大的運(yùn)用能力,PLC系統(tǒng)根據(jù)自身功能模塊的特性,可以通過(guò)VB命令、C語(yǔ)言和計(jì)算機(jī)編程并入單片機(jī)內(nèi)部,因此,單片機(jī)基于技術(shù)功能的兼容性具有特定的功能內(nèi)容的特性可以調(diào)整各個(gè)特征模塊,完成生產(chǎn)操作。串行通信系統(tǒng)目前在應(yīng)用于自動(dòng)化生產(chǎn)的APP后已生效,而且APP應(yīng)用范圍仍在擴(kuò)大。
為了有效地獲取相關(guān)數(shù)據(jù),可以將技術(shù)用于能夠?qū)崿F(xiàn)有效目的的數(shù)據(jù)傳輸。在數(shù)據(jù)傳輸過(guò)程中,為了實(shí)現(xiàn)其可靠性和安全性目標(biāo),相互傳輸數(shù)據(jù)的雙方必須采用指定的數(shù)據(jù)傳輸模式,以便能更有效地收獲期望的數(shù)據(jù)。串行通信模式,一方面可以分為串行端口的同步通信模式(發(fā)射機(jī)和接收機(jī)由同一時(shí)鐘源控制),另一方面是串行端口的異步通信模式(接收機(jī)和發(fā)射機(jī)具有自己的時(shí)鐘)。在PLC控制系統(tǒng)中,結(jié)合使用串行端口的異步通信模式和PLC控制系統(tǒng)的特性,可以更容易實(shí)現(xiàn),操作也會(huì)更加簡(jiǎn)單,還不用浪費(fèi)較多資金。
在內(nèi)部結(jié)構(gòu)中,單片機(jī)具有可發(fā)送和接收數(shù)據(jù)的串行端口,為整個(gè)雙串行端口,還具有對(duì)單片機(jī)的內(nèi)部結(jié)構(gòu)至關(guān)重要的組件。單片機(jī)內(nèi)部有許多零件與結(jié)構(gòu),以完善單片機(jī)的內(nèi)部功能,其內(nèi)部包括CPU、RAM、ROM等,而且CPU中還包括累加器、暫存器以及ALU,利用定時(shí)器或計(jì)數(shù)器進(jìn)行相關(guān)工作,其還具備完善的中斷系統(tǒng),內(nèi)部還有大量線路對(duì)各零件進(jìn)行連接,同時(shí),部分接口具備一定開(kāi)關(guān)功能,在啟動(dòng)時(shí)需要工作信號(hào)進(jìn)行開(kāi)啟。串行通信編程由查詢模式和中斷模式組成的,三菱PLC和單片機(jī)的組合使用中斷串行通信編程實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收。因此,中斷模式下的通信流程是指在串行端口發(fā)送接收數(shù)據(jù)時(shí),由硬件系統(tǒng)設(shè)定TI或RI以啟動(dòng)中斷服務(wù)程序,中斷服務(wù)程序完成數(shù)據(jù)的發(fā)送接收。
串行通信系統(tǒng)的單片機(jī)的串行接口位置,必須根據(jù)完成數(shù)據(jù)傳輸和接收操作的作業(yè)要求,特別設(shè)定為數(shù)據(jù)寄存器。另外,在數(shù)據(jù)輸入完成后,還需要研究數(shù)據(jù)傳輸階段是否穩(wěn)定可靠。為了進(jìn)一步提高接收數(shù)據(jù)發(fā)送的設(shè)備的穩(wěn)定性,可以在數(shù)據(jù)發(fā)送PLC的接收側(cè)編輯內(nèi)部參數(shù),在數(shù)據(jù)接收時(shí)進(jìn)行響應(yīng),將來(lái)自低位、高位、發(fā)送文本功能代碼、結(jié)束代碼等串行通信系統(tǒng)的信息以命令幀的形式發(fā)送給任務(wù),在其收到后進(jìn)行分析和處理。在這個(gè)過(guò)程中,單片機(jī)負(fù)責(zé)通信,并與PLC合作以完成通信程序的編輯,完成運(yùn)行中接收數(shù)據(jù)和溫度測(cè)量地址設(shè)定的PLC通信程序的處理,單片機(jī)為了完成通信程序的編輯而與PLC協(xié)作后,通信數(shù)據(jù)將在外部檢查代碼被清除后發(fā)送??紤]到在串行通信系統(tǒng)工作期間串行通信系統(tǒng)存在許多延遲程序,單片機(jī)與PLC協(xié)作以在數(shù)據(jù)接收和處理的處理過(guò)程中完成數(shù)據(jù)處理,從而啟動(dòng)字符以提高數(shù)據(jù)傳輸?shù)目煽啃院屯暾浴?/p>
另一方面,為了采用異步通信模式,收發(fā)裝置的時(shí)鐘需要盡可能保持一致性。異步通信的數(shù)據(jù)類型比較復(fù)雜,包括起始位、數(shù)據(jù)位、檢查位、停止位等數(shù)據(jù),全部收在字符幀內(nèi)。發(fā)送端和接收端的時(shí)鐘需要嚴(yán)格一致,這樣才能容易實(shí)現(xiàn)期的傳輸??傮w而言,設(shè)備成本較小,每個(gè)字符為起始位和停止位增加2~3位,另外,幀之間存在間隙,傳輸效率比較緩慢。目前的串行異步通信主要還是基于單工、半雙工、全雙工和其他傳輸模式。
在工業(yè)生產(chǎn)中,PLC和單片機(jī)都是不可替代的,PLC和單片機(jī)通過(guò)串行通信進(jìn)行互相連接,應(yīng)用于自動(dòng)化生產(chǎn)的APP里,從而實(shí)現(xiàn)其最大的功能。例如,塑料擠出機(jī)使用串行通信系統(tǒng)可以自動(dòng)調(diào)節(jié)和控制設(shè)備,PLC和單片機(jī)必須靈活適應(yīng)業(yè)務(wù)需求,并與硬件設(shè)備結(jié)構(gòu)相結(jié)合。
目前,由于西門(mén)子s7-200系列PLC在整體設(shè)計(jì)上具有更緊湊、更完整的功能內(nèi)容,因此,可以將其認(rèn)為是PLC組件的首選。使用s7-200系列的PLC,通過(guò)完成各種任務(wù),可以取得良好的工作結(jié)果。同時(shí),它具有簡(jiǎn)單的動(dòng)作功能和極強(qiáng)的通信功能,應(yīng)用于自動(dòng)化控制領(lǐng)域后,可以提高設(shè)備的運(yùn)用效率。
在PLC和單片機(jī)之間的串行通信過(guò)程中,需要考慮通信標(biāo)準(zhǔn)中對(duì)驅(qū)動(dòng)器和驅(qū)動(dòng)器之間的平衡接受,掌握相關(guān)參數(shù),建立新的接口標(biāo)準(zhǔn)。在選擇MX495E時(shí),需要判斷系統(tǒng)的內(nèi)部數(shù)據(jù)輸入和數(shù)據(jù)輸出。最后,microchip企業(yè)銷售生產(chǎn)的單片機(jī)不僅高速運(yùn)行,而且能耗低,有機(jī)會(huì)同s7-200系列的PLC組合實(shí)現(xiàn)串行通信。將串行通信系統(tǒng)應(yīng)用于自動(dòng)化設(shè)備后,可以進(jìn)一步提高設(shè)備自動(dòng)化操作的效率。但是,一方面在進(jìn)行串行通信之前,必須確保單片機(jī)集中式串行通信模塊的相關(guān)參數(shù)滿足工作需要。另一方面,在單片機(jī)和PLC設(shè)備之間的遠(yuǎn)程系列通信中,需要注意外部電路連接的布局和驅(qū)動(dòng)性能。了解硬件選擇的關(guān)鍵點(diǎn),為使PLC和單片機(jī)達(dá)到預(yù)期的工作效果,完成遠(yuǎn)程串行通信任務(wù),對(duì)各鏈路的參數(shù)設(shè)定賦予重要運(yùn)行程度。
PLC系統(tǒng)和單片機(jī)的組合,構(gòu)成了能夠提供自動(dòng)化良好運(yùn)用效果的串行通信系統(tǒng)。串行通信系統(tǒng)建立后,需要更改通信協(xié)議,為了確保串行通信系統(tǒng)在APP應(yīng)用中正常工作,必須加強(qiáng)串行通信系統(tǒng)的協(xié)議內(nèi)容和系統(tǒng)功能,以確保根據(jù)業(yè)務(wù)需要安全地完成任務(wù)。串行通信系統(tǒng)的出現(xiàn),加快了工業(yè)生產(chǎn)產(chǎn)業(yè)的發(fā)展,提高了自動(dòng)化相關(guān)設(shè)備的業(yè)務(wù)效率。但是,目前使用的APP還需要不斷的進(jìn)行優(yōu)化串行通信系統(tǒng)的結(jié)構(gòu),進(jìn)一步提高自動(dòng)化裝置的自動(dòng)化水平。