新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 開(kāi)放式數(shù)控系統(tǒng)中IPC與PLC通信技術(shù)

開(kāi)放式數(shù)控系統(tǒng)中IPC與PLC通信技術(shù)

作者: 時(shí)間:2016-12-20 來(lái)源:網(wǎng)絡(luò) 收藏

  IPC指的是工業(yè)中的使用計(jì)算機(jī),也就是工業(yè)PC,工業(yè)PC的設(shè)計(jì)、制造與實(shí)際使用需要考慮到實(shí)際工作環(huán)境的影響,因?yàn)楣I(yè)生產(chǎn)中的設(shè)備需要能夠承受溫度、濕度、機(jī)械擾動(dòng)、電磁場(chǎng)甚至灰塵等惡劣條件的影響,因此IPC的制造需要使用工業(yè)級(jí)別的處理器,全部密封的封裝箱柜,并且在設(shè)備中需要安裝保持空氣潔凈的器件,同時(shí)還要能夠鋪墊避免機(jī)械擾動(dòng)的物質(zhì)和抗電磁干擾的屏蔽器件,加上多方面的保護(hù)措施才能夠在工業(yè)環(huán)境中長(zhǎng)期穩(wěn)定運(yùn)行,因此其具有極強(qiáng)的穩(wěn)定性,可以廣泛應(yīng)用在工業(yè)、航空、礦業(yè)、軍事等多種領(lǐng)域中。

  PLC的全稱為可編程控制器,它是在計(jì)算機(jī)基礎(chǔ)上進(jìn)行開(kāi)發(fā)而成的自動(dòng)化工業(yè)控制器。在工作中可編程控制器可以進(jìn)行隨時(shí)更改程序、適應(yīng)性強(qiáng),因此具有很強(qiáng)的適應(yīng)能力和計(jì)算能力,同時(shí)加上大容量空間、多樣化的軟件程序應(yīng)用、便捷的操作和多種獨(dú)特的功能,如今PLC已經(jīng)在工業(yè)控制中獲得了極其廣泛的應(yīng)用。在IPC和PLC發(fā)展如此迅猛的今天,兩者進(jìn)行聯(lián)合開(kāi)發(fā),在數(shù)控領(lǐng)域中發(fā)揮強(qiáng)大功能已經(jīng)獲得了可能,在開(kāi)放式的數(shù)控系統(tǒng)中,通過(guò)PLC作為下位機(jī)處理一線的物理處理和數(shù)據(jù)收集,IPC可以作為處理設(shè)備進(jìn)行計(jì)算、控制、數(shù)據(jù)研究等多項(xiàng)后期工作,同時(shí)如果多個(gè)PLC連接還可以實(shí)現(xiàn)網(wǎng)絡(luò)化的控制,因此這兩者的聯(lián)合控制模式,將成為工業(yè)數(shù)控領(lǐng)域內(nèi)的主流發(fā)展方向。

一、數(shù)控系統(tǒng)結(jié)構(gòu)

  開(kāi)放性的數(shù)控系統(tǒng)采用了開(kāi)放式的PLC,也就是外置式的PLC,傳統(tǒng)的PLC是內(nèi)置的,且多個(gè)PLC只能夠由一個(gè)CPU進(jìn)行控制,嚴(yán)重影響了工作效率也錯(cuò)誤判別的準(zhǔn)確性,外置式的PLC具有成熟的生產(chǎn)廠家,穩(wěn)定的通信渠道,且具有獨(dú)立的CPU對(duì)其進(jìn)行控制,大大提高了通信的穩(wěn)定性和執(zhí)行效率。

數(shù)控系統(tǒng)結(jié)構(gòu)

  在本文的數(shù)控系統(tǒng)中,將以數(shù)控機(jī)床中的數(shù)控系統(tǒng)為例,PLC的主要功能是在機(jī)床的工作前線進(jìn)行數(shù)據(jù)的采集、判斷上位指令的傳達(dá)、執(zhí)行輸入的控制指令,也就是對(duì)數(shù)控機(jī)床的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)的狀態(tài)數(shù)據(jù)采集工作。PLC在數(shù)控系統(tǒng)中處于協(xié)調(diào)自身所在的數(shù)控系統(tǒng)和外部的控制指令的位置,一方面它需要能夠執(zhí)行IPC傳達(dá)的控制命令和發(fā)送數(shù)據(jù)信息,一方面也需要通過(guò)DMP接收機(jī)床操作命令,根據(jù)這些接收到的命令輸入機(jī)床的各個(gè)電機(jī)環(huán)節(jié)進(jìn)行操作。而上位的工業(yè)計(jì)算機(jī)IPC的主要工作是對(duì)采集好的數(shù)據(jù)進(jìn)行存儲(chǔ)、挖掘并將結(jié)果進(jìn)行輸出顯示等工作,這樣就能夠通過(guò)兩者的配合實(shí)現(xiàn)對(duì)數(shù)控機(jī)床工作數(shù)據(jù)進(jìn)行實(shí)時(shí)的采集與顯示工作,另外上位機(jī)還需要進(jìn)行對(duì)活動(dòng)的機(jī)械設(shè)備進(jìn)行電機(jī)等運(yùn)動(dòng)器件位置與方向、速度等參數(shù)的實(shí)時(shí)控制工作。系統(tǒng)中IPC與PLC采用點(diǎn)對(duì)點(diǎn)的通信方式,具體是通過(guò)RS232串行接口進(jìn)行連接,PLC與計(jì)算機(jī)的各個(gè)接口也都是通過(guò)RS232來(lái)進(jìn)行。

二、IPC與PLC之間的通信

  數(shù)控系統(tǒng)中的通信接口主要有兩個(gè),一個(gè)通過(guò)RS232串行接口進(jìn)行數(shù)據(jù)指令的傳輸,一個(gè)是通過(guò)數(shù)據(jù)線與計(jì)算機(jī)進(jìn)行程序的輸出與寫(xiě)入工作,該接口也是通過(guò)RS232的串行接口,通過(guò)RS232數(shù)據(jù)線進(jìn)行程序的傳輸和讀寫(xiě)操作。

  在通信工作開(kāi)始之前,IPC與PLC的連接需要在正式開(kāi)始之前進(jìn)行初始化操作,PLC、IPC需要各自都采用同樣的數(shù)據(jù)傳輸格式以及波特率參數(shù)。同時(shí),在通信正式開(kāi)始之前,PLC的寄存器也需要進(jìn)行統(tǒng)一的讀寫(xiě)操作,其中寄存器412用于進(jìn)行選擇計(jì)算機(jī)的連接方式,寄存器413用于選擇奇校驗(yàn),設(shè)置傳輸8位,并選擇停止位,寄存器414的作用是設(shè)置數(shù)據(jù)傳輸?shù)乃俾?。在?jì)算機(jī)中,默認(rèn)設(shè)置一號(hào)端口為PLC的通信讀寫(xiě)端口。

  在計(jì)算機(jī)通過(guò)串口對(duì)PLC進(jìn)行通信程序的讀寫(xiě)時(shí),存在一套完備成熟的通信協(xié)議工具進(jìn)行輔助程序通信,這個(gè)協(xié)議已經(jīng)具備了如何接收上位機(jī)的控制指令、PLC的編號(hào)和命令設(shè)置方式。該指令的具體執(zhí)行過(guò)程如下:

  首先,由上位機(jī)發(fā)出命令,該命令的前段包括起始碼、接收的PLC的編號(hào)、特征碼、正文命令內(nèi)容、塊校驗(yàn)碼等內(nèi)容,該格式由通信協(xié)議實(shí)現(xiàn)進(jìn)行了規(guī)定;其次,PLC的工作,其在接收到上位機(jī)發(fā)出的命令之后會(huì)首先對(duì)其進(jìn)行檢查是不是一段完整的合法指令,然后再檢查自身的PLC編號(hào)是不是與指令中的目的編號(hào)相符合,如果這一切都符合要求,那么其會(huì)進(jìn)行數(shù)據(jù)的發(fā)送工作,不然其會(huì)進(jìn)行中斷以拒絕操作,根據(jù)錯(cuò)誤的原因發(fā)送固定格式的錯(cuò)誤代碼。

  為了保證上位機(jī)與PLC之間通信的準(zhǔn)確與可靠性,在通信協(xié)議中會(huì)設(shè)置一段塊校驗(yàn)碼,具體的使用方法是將上位機(jī)傳來(lái)的指令進(jìn)行校驗(yàn),在校驗(yàn)中會(huì)將正文的指令內(nèi)容進(jìn)行一定形式的邏輯運(yùn)算,轉(zhuǎn)換為其它形式的代碼,PLC在接收到信號(hào)后會(huì)對(duì)塊校驗(yàn)碼進(jìn)行反演計(jì)算,如果與發(fā)送端的相同,那么就可以進(jìn)行正常通信工作執(zhí)行,否則就說(shuō)明通信出現(xiàn)問(wèn)題,根絕校驗(yàn)碼輸出的錯(cuò)誤信息可以判斷出發(fā)生問(wèn)題的具體位置和原因。

三、IPC的通信程序

  對(duì)于作為上位機(jī)的IPC來(lái)說(shuō),在其與PLC通信的過(guò)程中,始終處于主動(dòng)發(fā)送命令的位置,根據(jù)用戶的需求,使用特定的功能,讓IPC發(fā)送相應(yīng)的命令信息,而PLC則始終處于被動(dòng)接受信息和執(zhí)行的狀態(tài),由于PLC中不需要進(jìn)行編程信息的編寫(xiě)和存儲(chǔ),因此其只能夠處于響應(yīng)控制命令,不能夠進(jìn)行主動(dòng)發(fā)送信息和命令。在數(shù)控系統(tǒng)中,各種一線設(shè)備的工作狀態(tài)數(shù)據(jù)需要隨時(shí)進(jìn)行讀取顯示,因此IPC并不具備主動(dòng)進(jìn)行實(shí)時(shí)讀取的功能,所以這樣的方式影響了PLC的實(shí)時(shí)工作性質(zhì)。   傳統(tǒng)的上位機(jī)與PLC之間的通信方式采用定時(shí)進(jìn)行查詢的方式,該方式具體的做法是IPC會(huì)在固定的時(shí)間間隔點(diǎn)后進(jìn)行讀取PLC的工作狀態(tài),如果某一次對(duì)PLC的讀取發(fā)現(xiàn)其狀態(tài)異常,那么會(huì)觸發(fā)對(duì)應(yīng)的處理方案,這種方法在故障發(fā)生并不嚴(yán)重的時(shí)候可以發(fā)揮基本的監(jiān)控和提醒作用,但是在實(shí)時(shí)性上仍然具有一定的劣勢(shì),且操作的效率不高。而當(dāng)使用串行接口進(jìn)行通信工作時(shí),在一開(kāi)始對(duì)PLC的端口進(jìn)行了預(yù)先的設(shè)置后,并不需要進(jìn)行定時(shí)的數(shù)據(jù)匯報(bào),而是當(dāng)其實(shí)時(shí)觀察到的數(shù)據(jù)產(chǎn)生變化時(shí)才會(huì)觸發(fā)緊急狀態(tài)信息,這樣的數(shù)據(jù)會(huì)立即被傳送至上位機(jī)進(jìn)行處理,這樣IPC上位機(jī)就能夠在錯(cuò)誤發(fā)生的第一時(shí)間進(jìn)行處理,工作的效率較高,也節(jié)省了大量的監(jiān)控?cái)?shù)據(jù)傳送,從錯(cuò)誤發(fā)生到事件處理之間的時(shí)間也大大減少。

  在IPC與PLC之間的通信中,需要開(kāi)發(fā)相應(yīng)的通信軟件,以筆者所在的學(xué)校擁有的數(shù)控系統(tǒng)設(shè)備來(lái)講,配備了成熟的串行通信程序編寫(xiě)控件MSComm,它能夠?yàn)榻^大多數(shù)的串口通信模塊提供通信程序的編寫(xiě)工具。在Visual Basic環(huán)境中,利用該控件可以為各端口提供完備的輸入輸出數(shù)據(jù)信號(hào)的能力,另外其優(yōu)勢(shì)在于完善的中斷功能,中斷功能可以幫助開(kāi)發(fā)者開(kāi)發(fā)出更加成熟穩(wěn)定的通信工具。如上述所說(shuō),通信中斷的方式主要有兩種,固定間隔的查詢功能與實(shí)施狀態(tài)變化發(fā)生的信息傳送功能,如果數(shù)控系統(tǒng)涉及的器件不多,且結(jié)構(gòu)簡(jiǎn)單無(wú)任何嚴(yán)重的不良后果,則可以采用定時(shí)查詢的方式進(jìn)行監(jiān)控,如果數(shù)控系統(tǒng)的中斷對(duì)即時(shí)性要求較高,那么則必須采用串口通信的方式處理錯(cuò)誤事件。也叫做事件驅(qū)動(dòng)方式。事件驅(qū)動(dòng)方式的具體方法是當(dāng)上位機(jī)決定好發(fā)送數(shù)據(jù)時(shí),事件的屬性定義為查詢式傳送數(shù)據(jù)時(shí),系統(tǒng)將會(huì)以定時(shí)間間隔的方式由PLC匯報(bào)系統(tǒng)運(yùn)行狀態(tài),而當(dāng)事件的屬性定義為事件驅(qū)動(dòng)方式時(shí),那么該通信會(huì)即時(shí)生效,開(kāi)始處理程序,如果PLC匯報(bào)狀態(tài)改變的信息時(shí),上位機(jī)會(huì)立即作出處理。在處理的過(guò)程中,為了避免重復(fù)通信,可以繼而轉(zhuǎn)換為定時(shí)查詢的方法向PLC發(fā)送信息處理狀態(tài),保證在處理過(guò)程中通信程序的暢通運(yùn)行。

四、總結(jié)

  總的來(lái)說(shuō),在數(shù)控機(jī)床等非標(biāo)準(zhǔn)機(jī)械的開(kāi)發(fā)制造過(guò)程中,PLC的長(zhǎng)期穩(wěn)定工作能夠?yàn)橄到y(tǒng)的運(yùn)行帶來(lái)可靠性,但是自身帶有無(wú)法進(jìn)行信息管理的弱點(diǎn),而且不能夠直接與使用者進(jìn)行交流,所以在故障的發(fā)現(xiàn)與排除、實(shí)時(shí)狀態(tài)的匯報(bào)等方面無(wú)法實(shí)現(xiàn)功能,在本文中利用了其與IPC進(jìn)行通信的方式,成功地解決了該弱點(diǎn),PLC能夠?qū)崿F(xiàn)數(shù)控系統(tǒng)前沿的信息收集,由IPC進(jìn)行信息處理和現(xiàn)實(shí),對(duì)于用戶來(lái)說(shuō)使用更方便,可靠性更高,在實(shí)際的各類數(shù)控系統(tǒng)開(kāi)發(fā)中都可以得到廣泛的應(yīng)用。



評(píng)論


技術(shù)專區(qū)

關(guān)閉