來源:昌昇自動化時間:2021-09-07
PLC維修廠家介紹MCGS中PLC已經(jīng)將串口通訊的波特率設(shè)置等功能集成至串口父設(shè)備中,因此PLC設(shè)備驅(qū)動是作為MCGS監(jiān)控軟件設(shè)備管理窗口中的子設(shè)備提供的。它可以使用父設(shè)備的通訊功能,即可以與其他設(shè)備共享父設(shè)備的通訊功能。由于使用串口的PLC設(shè)備較多,在這里我們以使用串口通訊方式的PLC為例進(jìn)行說明PLC通用驅(qū)動的構(gòu)架的開發(fā)。如使用自定義編程電纜方式或使用以太網(wǎng)方式連接,此PLC驅(qū)動構(gòu)架同樣適用。
使用串口通訊的PLC與上位機(jī)的通訊方式中,有RS232、RS485、RS422多種方式。如果設(shè)備是采用RS232方式通訊,那么在一個串口下面只能掛接一個設(shè)備。如果采用RS485或者RS422的方式通訊,那么可以使用多個設(shè)備構(gòu)成一個網(wǎng)絡(luò),在這個網(wǎng)絡(luò)中,PLC維修廠家為了識別各個不同的設(shè)備,給每一個設(shè)備加上一個標(biāo)志,一般來說把這個標(biāo)志稱作設(shè)備地址。
這個總線上的設(shè)備分為主設(shè)備和從設(shè)備兩類。在工作時,從設(shè)備一直在監(jiān)聽通訊線路上的數(shù)據(jù),并對這些數(shù)據(jù)進(jìn)行分析,當(dāng)收到對自己的請求時,會發(fā)送一個相應(yīng)的應(yīng)答幀。主設(shè)備在工作時會根據(jù)需要向從設(shè)備發(fā)送請求幀,請求一些數(shù)據(jù)或者是發(fā)送一條命令,在發(fā)完請求幀后主設(shè)備需等待從設(shè)備的回答,這個等待的過程有一個超時時間限制。如果過了一定的時間還沒有收到回答,它會認(rèn)為本次通訊失敗,然后按照一定的邏輯判斷是應(yīng)該重發(fā)請求還是放棄。
通訊使用的通訊協(xié)議,分為ASCII通訊和16進(jìn)制通訊兩類。PLC的通訊協(xié)議中大多數(shù)都是使用16進(jìn)制通訊。而且在串口通訊中,為了保證通訊的正確性、完整性,通常在通訊幀的尾部加上校驗(yàn),常見的有和校驗(yàn),異或校驗(yàn),CRC校驗(yàn)等等。
在通訊過程中,上位機(jī)的MCGS監(jiān)控軟件調(diào)用PLC驅(qū)動,根據(jù)具體協(xié)議,向PLC設(shè)備發(fā)送寄存器的讀寫命令,并接收應(yīng)答數(shù)據(jù)。