余建國(1972-)
男,河北石家莊人,本科學歷,講師,(河北省衡水市科技局微機中心,河北 衡水 053000) ,主要從事軟件開發和計算機教學工作。
摘要:文章主要針對利用PLC控制一個精確的提升裝置,介紹了三菱PLC在工業遠程控制方面的應用。
關鍵詞:PLC;通訊;A/D轉換;D/A轉換
Abstract: This paper mostly mainly introduces describes the application of MITSUBISHI PLC in remote industrial control system by introducing aim at controlling an accurate takeup device controlled by PLC.
Key words: PLC; Communication; A/D; D/A
1 引言
由于PLC是專為在工業環境下應用而設計的一種工業控制計算機,具有抗干擾能力強、可靠性極高、體積小等顯著優點。本項目利用三菱PLC控制一個精確的提升裝置實現某種國防產品的裝配作業。控制要求PLC對現場采集到的參數進行接收并處理,將數據傳送到500米以外的監控室的上位計算機,同時接受計算機發來的控制指令來完成提升裝置的特定的動作,從而達到生產的目的。
鑒于三菱PLC的FX系列有掃描速度高、結構緊湊、價格低廉以及具有模塊化和標準化便于編程開發等諸多優點,根據項目具體控制點數的要求,選擇了FX2N-32MR基本單元。該單元的PLC僅能實現開關量的輸入和輸出控制。為了實現數字量和模擬量的相互轉換,增加了A/D和D/A轉換模塊。為了與上位計算機實現遠距離串行通信,PLC主體還需增加用于格式和電平轉換的485ADP模塊。
2 上位計算機與三菱FX系列PLC的串行通訊設計
FX系列PLC支持多種通訊類型,如:N : N網絡型、并行連接型、無協議通訊型和計算機連接型等。由于本系統采用上位計算機與PLC串行通訊,所以采用計算機連接類型通訊。
2.1 計算機連接類型通訊協議設計
計算機連接類型的協議是三菱公司為用戶提供的一種專用的通訊協議,既可以實現RS-485(422)通訊也可以實現RS-232通訊,如果要求的通訊距離不大,可以直接將PLC提供的RS-232通訊口與計算機的9針串口連接起來。本項目要實現300~500米的通訊距離,因此采用RS-485的通訊標準,此種通訊需要專用的轉換模塊完成RS-232到RS-485的轉換。圖1為本系統的控制接線圖。
圖1 RS-485接線圖
圖1中的485PC-IF和485ADP都是三菱公司生產的用于通訊的模塊。計算機端和485PC-IF的接線采用的三線制的接法(地線可以不接),此間屬于RS-232通信標準。在485PC-IF和485ADP模塊之間的數據傳輸是RS-485的標準,如圖1所示,兩模塊之間用一對雙絞線連接,信號的傳輸方式是差分傳輸,其傳輸距離可達1200米,因此采用此種接線標準可以充分滿足項目300~500米的遠距離傳輸的要求。PLC與485ADP之間采用數據線相連接,為了便于各模塊間的組裝,每個模塊都有提供一個數據口,模塊間可以通過從數據口引出的數據線進行一一擴展。
雖然計算機連接型的通訊協議已經有專用的通訊協議,用戶不必去開發PLC一方的協議,但是要實現與計算機的通訊,還需對計算機側進行協議開發,而且要與PLC的專用協議保持一致,協議規定計算機方為主動請求方,PLC接收到請求信號后,開始初始化通訊設置,然后發送應答信號以示握手聯絡成功,等待接收數據。計算機收到應答信號后,可以根據固定的協議發送數據或控制指令。在計算機側無論是用何種軟件開發通信協議,都要保證數據在PLC與計算機間是以ASCII碼的形式進行數據傳輸,在沒有自動將數據轉化成ASCII碼的編程軟件中要進行手動轉化。
2.2 PLC在計算機連接類型中的系統參數設置
PLC雖然有專用的通訊協議,但是要滿足具體的通訊還需要對一些待定的參數進行設置,PLC提供了以下幾種特殊的寄存器來幫用戶實現相關參數的設置。
· 通訊格式設置參數寄存器(D8120):
D8120存入一個16位十六進制數,每一位都有相關的說明,用戶可以根據具體的情況完成通訊參數的設置。從低位到高位依次對數據長度、奇偶校驗、停止位、波特率等進行規定,不同的設置組成不同的數值,將此數值存入D8120即可。
· 主從站點設置寄存器(D8121):
由于計算機連接類型的通訊可以實現1 : n的連接,即一個上位計算機可以與多個PLC通迅,這就必須對每個PLC進行一個編號(站點號),分為主站點和從站點,D8121中的一個十六進制數值就是代表某個PLC的站點,從而使計算機明確本次是與哪一PLC進行的通訊。數值的范圍是從00H~0FH。
· 超時設置寄存器(D8129):
超時檢查時間是指在計算機向PLC的失敗傳送接收結束后一直到發送序列初始化的這一時間,根據PLC的不同型號,給出響應的時間范圍。圖2是對D8120、D8121、D8129的設置梯形圖:
圖2 參數設置梯形圖
圖2中:
D8120中的數值規定了:數據長度為7位、偶校驗、波特率為9600bps、無協議通訊、未使用標題、未使用終結符、控制線為普通模式;
D8121中的數值規定了與計算機是與0站點PLC通訊;
D8129中的數值規定了通訊超時時間是60ms。
3 PLC程序設計
要實現計算機與PLC的數據通信,只對通訊參數進行設置是不夠的。需要對計算機與PLC之間流動的數據(包括開關量和模擬量)進行編程設計。開關量一般是上位計算機對PLC的軟元件(X、Y、M)等的一些強制的ON或OFF操作,從而觸發PLC梯形圖的某種邏輯關系。而模擬量是通訊的主要部分,PLC通過數字量到模擬量的轉換模塊(D/A)來控制現場提升裝置如變頻器、比例電磁閥等模擬量調節裝置,進而控制變頻電機的轉速和調節液壓系統的油路壓力,從而實現了對提升裝置速度和提升力的遠程調節。為了實現對現場的提升速度、油路壓力、提升力的監測,PLC需要多個通道的模擬量到數字量的轉換模塊(A/D),把安裝在現場設備上的速度、壓力和拉力傳感器傳來的模擬信號轉化為數字量,存入規定的存儲區供計算機訪問。A/D和D/A兩種模塊屬于PLC的主體的兩個擴展單元,本身沒有CPU處理單元,它是通過主體中的數據線連接在一起,要實現與主單元模塊的協同操作,必須對其進行程序驅動,用以確定數據的轉換時間、數據的存儲位置、通道選擇以及對采集的數據進行增益量和偏移量的軟調節等。
圖3為D/A轉換的部分梯形圖程序,整個轉換過程通過MOV和TO指令來完成的;在D/A轉換過程中,MOV指令使數據寄存器中的數值移動到緩沖區,通過一系列的TO指令使緩沖區中的數值發送到D/A模塊的規定的通道中。A/D轉換過程采用FROM和TO指令將模塊中的數據發送到指定的數據寄存器中。D/A控制以控制變頻電機為例,本項目中變頻電機的轉速隨提升的要求分為慢速提升、快速提升和高速提升三個轉速,在每個速段需要有一個D/A轉換的梯形圖與其對應,圖3是電機慢速提升時的控制梯形圖。
圖3 D/A控制梯形圖
圖3中:
第一行,“慢速提升”按鈕使X001為ON,將數據寄存器D1中的數據存入緩沖區,數據寄存器D1存放的是電機的頻率值;
第二行,用TO指令將低8位數據向D/A模塊輸出;
三、四行語句使輸出低8位數據保持,等待高4位的數據;
第五行語句使高4位的數據向D/A模塊輸出;
最后兩行語句是對數據輸出的通道進行選擇,選擇通道1。
圖4是對現場壓力傳感器采集的數據進行轉換的梯形圖,本梯形圖只涉及A/D的轉換, 沒有對采集的數據的比例調整程序:
圖4 A/D轉換梯形圖
圖4中:
第一行語句,用FROM語句將#30號緩存區的數值放入D4中,#30存放的是此A/D模塊的驗證碼,正常值是K2010;
第二語句用K2010與D4中的值進行比較,如果相等是M1為ON;
第三條語句是通道選擇程序,本語句選擇1通道和2通道,即將H3300存入#0號緩存區;
最后一條語句作用是將1、2通道的數據存入數據寄存器D3、D4。
4 結語
本文通過對PLC的正確硬件連接和軟件的設計,實現了遠程上位計算機與現場PLC的實時通信;實現了遠程對現場變頻器和比例電磁閥等的控制,滿足了項目提出的作業要求。
參考文獻
[1] 廖常初. 可編程序控制器應用技術[M]. 重慶大學出版社, 2001, 2.
[2] 三菱可編程控制器FX通訊用戶手冊[S].
[3] 王兆義. 小型可編程控制器實用技術[M]. 機械工業出版社,2002.
[4] MITSUBISHI ELECTRIC CROP. 三菱微型可編程控制器使用手冊[S].
[5] 宋德玉. 可編程控制器原來及應用系統設計技術[M]. 冶金工業出版社,2000.