計算機、PLC可編程控制器與變頻器的編程協議
來源: 作者: 發布時間:2019-2-4 22:18:32
計算機(PLC可編程控制器)與變頻器的編程協議
1.通訊協議
計算機(PLC可編程控制器)與變頻器之間的數據通訊執行過程如.
數據通訊協議執行過程分五個步驟進行,具體過程分析如下:
1)從計算機(PLC可編程控制器)發送數據到變頻器;數據寫入時根據需要,選擇使用格式A、A1,數據讀出時,使用格式B進行;
2)變頻器數據處理時間,即變頻器的等待時間;根據變頻器參數Pr。123選擇, Pr。123=9999,由通訊數據設定其等待時間;Pr。123=0~150ms由變頻器參數設定其等待時間;
3)從變頻器返回數據到計算機(PLC可編程控制器);變頻器檢查步驟1)發送的數據有無錯誤,如果通訊沒有錯誤、接受請求時,將從變頻器返回數據格式為C、E、E1;如果通訊有錯誤、拒絕請求時,則從變頻器返回數據格式為D、F;
4)計算機(PLC可編程控制器)處理延時時間;
5)計算機(PLC可編程控制器)根據返回數據應答變頻器;當使用格式B后,計算機可檢查從變頻器返回的應答數據有無錯誤,并通知變頻器,沒有發現錯誤使用格式G,發現錯誤使用格式H。
2.數據格式類型
使用十六進制,數據在計算機(PLC可編程控制器)與變頻器之間的自動使用ASCII碼傳輸。
1)從計算機(PLC可編程控制器)到變頻器的通訊請求數據 注:1.變頻器站號可用十六進制在H00~H1F(站號00~31)之間設定;
2.*3 表示控制代碼;
3.*4表示CR(回車符)或LF(換行符)代碼;
當數據從計算機(PLC可編程控制器)傳輸到變頻器時,在有些計算機中代碼CR(回車符)和LF(換行符)自動設置到數據組的結尾,因此變頻器的設置也必須根據計算機來確認,并且可通過變頻器的Pr.124選擇有無CR和LF代碼。
4.*5 Pr.123 [響應時間設定] 不設定為9999的場合下,數據格式的"響應時間"字節沒有,請作成通訊請求數據。(字符數減少一個)
2)使用格式A和格式A1后從變頻器返回的應答數據
3)使用格式B后,從變頻器返回的應答數據
4)使用格式B后檢查從變頻器返回的應答數據有無錯誤,并通知變頻器
3.數據定義
1) 控制代碼(表1)
2) 變頻器站號
規定與計算機(PLC可編程控制器)通訊的站號,在H00~H1F(00~31)之間設定;
3) 指令代碼
由計算機(PLC可編程控制器)發給變頻器,指明程序要求(例如:運行、監示);因此,通過響應的指令代碼,變頻器可進行各種方式的運行和監示。
4)數據
表示與變頻器傳輸的數據,例如頻率和參數;依照指令代碼確認數據的定義和設定范圍。
5)等待時間
規定變頻器收到從計算機(PLC可編程控制器)來的數據和傳輸應答數據之間的等待時間;根據計算機的響應時間在0~150毫秒之間設定等待時間,最小設定單位位10毫秒,(例如:1=10毫秒,2=20毫秒)
注:Pr.123 [響應時間設定] 不設定為9999的場合下,數據格式的"響應時間"字節沒有,請作成通訊請求數據。(字符數減少一個)
6)總和校驗
總和校驗代碼是由被校驗的ASCII碼數據的總和(二進制)的最低一個字節(8位)表示的2個ASCII碼數字(十六進制)。
4.PLC串行數據通訊指令簡介
1)該RS指令為使用RS-232C及RS-485功能擴展板及特殊適配器,進行發送接收串行數據的指令,數據的格式可以通過特殊數據寄存器D8120設定,并要與變頻器的數據格式類型完全對應;通過PLC傳送指令把通訊數據裝到D200開始的連續單元中;
2)D200:發送數據的首地址(指針);
3)D0:發送數據的字節數(點數),根據協議可以用常數直接指定字節數,在不進行發送的系統中,將數據發送點數設定為K0;
4)D500:接收數據的首地址(指針);
5)D1:數據接收的字節數(點數),根據協議可以用常數直接指定字節數,在不進行接收的系統中,將數據接收點數設定為K0;
6)發送通訊數據時請使用脈沖執行方式,SET M8122 即可。
5.PLC可編程控制器的通訊格式D8120
為了使用串行數據的發送和接收,在變頻器和PLC可編程控制器的通訊格式必須一致,PLC可編程控制器的通訊參數通過D8120來設定。
PLC可編程控制器的通信格式D8120=H009F設定例(表2)
6.程序設計的建議
1)當從計算機(PLC可編程控制器)發送的數據中有錯誤時,變頻器將不接受這個數據;因此,用戶的程序中始終應插入一個錯誤再試程序。
2)任何數據通訊的開始都是由計算機發出請求,沒有計算機的請求,變頻器將不能返回任何數據,例如:操作指令或數據監示等等;因此,對于監示等,在設計程序時,讓計算機提出讀數請求時必要的。
7.與變頻器通訊的錯誤代碼
當從計算機發來的數據有錯誤時,變頻器將不接受此數據;如果變頻器在接收數據時發現任何錯誤,它的定義和NAK代碼一起被送回到計算機。
三、變頻器的通訊相關參數(通過變頻器PU口和PLC通訊)
PLC可編程控制器和變頻器之間進行通訊,通訊規格必須在變頻器的初始化中設定,如果沒有進行初始設定或有一個錯誤的設定,數據將不能進行傳輸。
設置三菱變頻器的通訊參數才能進行通訊運行,變頻器與通信有關的參數設定如表3:
注:每次參數初始化設定后,需要復位變頻器(可以采用斷電再上電復位的方式進行),如果改變與通訊相關的參數后,變頻器沒有復位,通訊將不能進行。
四、FX2N-485-BD與三菱FR-A540變頻器的通訊接線
RJ45水晶頭插入變頻器的PU接口(也可通過變頻器通訊板FR-A5NR接線),另一端的對應信號線接在FX2N-485-BD上。
五、PLC與變頻器通訊的編程及調試例解
1)運行控制命令的發送
變頻器的操作指令代碼及數據內容如表4:
在PLC程序中,變頻器等待時間使用變頻器參數設定為20ms,故格式A1中等待時間字節減少一個,由于本程序不使用 CR和LF,最后一個字節也不用,故本PLC程序例中發送數據為9個字節。
格式A1中各字節含義如下:
第一字節為通訊請求信號ENQ,對應程序為 MOV H05 D200 ;
第二、第三字節為變頻器00號站,對應程序為 MOV H30 D201 MOV H30 D202 ;
第四、第五字節為指令代碼HFA,對應程序為 MOV H46 D203 MOV H41 D204 ;
第六、第七字節為指令代碼為:正轉運行H02,對應程序為 MOV H30 D205 MOV H32 D206 ;
第八、第九字節為總和校驗代碼,對應程序為 MOV H34 D207 MOV H39 D208 ;
當按下X0時,通訊數據被發送到變頻器,變頻器將正轉運行;
如要進行變頻器停止及反轉運行程序編程,可在上面的范例程序中修改指令代碼中數據內容即可實現,例如:范例中的程序修改為 MOV H30 D205 MOV H34 D206 可實現反轉運行;修改為 MOV H30 D205 MOV H30 D206 實現停止(圖九);
說明:M8161=1,8位處理模式,X0為變頻器正轉運行控制,使用變頻器通訊協議的格式A1如圖十:
2)總和校驗碼的自動計算實例
在本例中,數據處理為8位即M8161=1,Pr。123=9999,即等待時間用PLC程序設定;將H05-H30-H31-H45-H31-H31-H30-H37-H41-H44分別用傳送指令傳到D300開始的連續10個PLC的內存單元中,其總和校驗碼可用CCD指令自動計算出來,通過PLC程序再將總和校驗碼轉換成2個ASCII碼,并送到PLC的對應內存單元D310,D311中,計算總和校驗碼PLC程序如
本例的變頻器等待時間由變頻器設定,故上述格式中的等待時間字節無。
3)變頻器運行頻率的改變實例
在本例中,數據處理為8位即M8161=1,Pr。123=9999,即等待時間用PLC程序設定;通過觸摸屏將變頻器的運行頻率直接寫到PLC內存D1000中(或使用傳送指令將頻率數據自動寫入),ASCI指令將變頻器的運行頻率轉換成4位ASCII碼,依次存放到PLC的內存單元D305~D308中,總和校驗碼存放在D309、D310;總和校驗計算請參照上一例的自動計算方式進行。