項目簡介
最近在一個客戶現場搞熔邊機項目,涉及到收放卷工藝的卷徑計算,同時張力控制使用的是擺桿,然后通過PID控制輸出輔助轉速補償收卷伺服速度。單一的PID參數不能自動適應卷徑變化,如在小卷徑200mm下調試整定出的一組PID參數,當收卷卷徑大于300mm的時候該組參數就不能穩定,系統會發散。于是想出了本篇文章將要為大家介紹的變比例變積分變微分自適應PID控制器。
硬件介紹
上圖1為位置傳感器,圖中2部分為擺桿。擺桿運動的時候達到左右限位輸出的值范圍是0到500,中間位置為250.擺桿是通過氣缸控制的,氣缸輸出一定的力。收卷使用的是伺服速度模式,收卷軸卷徑變化范圍為100mm-1000mm,系統卷徑變化較大。系統最大運行速度為220m/min。速度可以通過HMI進行輸入。
收卷軸的速度是根據牽引主軸速度確定的,這里只用牽引主軸的速度是不能保證擺桿在中間位置的,所以還要在此速度基礎上 根據擺桿的位置反饋計算出PID補償的輔助速度。????我為了實現系統優化,本套系統采用了兩層變比例變積分變微分分段自適應PID控制器算法。具體的介紹如下:
變比例變積分變微分自適應PID控制器原理介紹
收卷的主速度是根據牽引主軸的給定速度計算出來的,輔速度是根據擺桿的位置通過位置式PID控制器算出的輔助速度。收卷軸的真正速度 = 主速度+輔助速度。
這里收卷軸,卷徑是可以通過線長相等計算而來的。計算思路:要保證張力恒定的話,就是牽引走過的線長和收卷軸轉過的線長應該是相等的。牽引走過的距離與收卷轉過的距離是相等的,這里再通過一定的方法算出走過的這段距離中收卷轉動的圈數,然后就能算出實時卷徑了。
我們可以觀察到一個現象,同樣的牽引速度下,卷徑小的時候收卷計算出的主轉速n是比較快的,卷徑增大的過程中同樣的線速度下其收卷轉速是減小的。具體的數學關系如下:
V = w*r = 2πnr 所以:n = v/2πr,也就是說主速度和(v/r)呈正比例關系。這里收卷伺服給定的轉速n給定 = n主 + n輔,因為n主是和(v/r)呈正比例關系的,所以這里的PID計算出來的n輔也應該和(v/r)呈正比例關系。所以可以推得 PID參數也應該和(v/r)呈正比例關系。
上面介紹的是第一層變比例變積分變微分PID算法(實際上可以理解為跟隨速度和卷徑自適應的PID參數),實際上我在應用中,還使用了第二層變比例變積分變微分分段PID控制器,第二層分段PID控制參數實際上是根據偏差進行自動調整計算的。這里偏差是作為第二層分段PID的分段指標的,如下圖:
當前自適應PID算法實現方法與參數整定介紹
第一層自適應PID參數整定方法
首先PID參數不乘以(v/r)這個時變系數,使用二倍二分法輔助看目標值和反饋值曲線調試PID參數。先確定一組在速度固定為200,卷徑固定在100到200mm范圍內的一組PID參數。把這組PID參數確定好之后,再乘以(v/r)系數。這個算出來的PID參數作為第二層根據偏差的分段PID的小偏差范圍內的kp1 ki1 kd1(上圖中),然后這里為了方便,再將kp1 ki1 kd1乘以一個系數,我們就能得到kp2 ki2 kd2參數了。
這里PID控制器參數的整定采用的是控制變量法,每次只調一組參數,然后看波形。
#為了系統更穩定,這里采用多重濾波處理:
反饋濾波以及轉速濾波,濾波后效果波形如下所示
采用一階低通 濾波后的數據 = (1-s)上次濾波數據 + s此次實時反饋數據
反饋濾波系數0.9和0.1
轉速濾波系數 0.9和0.1
轉速:紅色為濾波后轉速 D470藍色 D1208為主+輔算出的轉速n
反饋:D66實時反饋采樣 D572反饋濾波后曲線
反饋濾波系數0.95和0.05
轉速濾波系數0.95和0.05
反饋濾波系數0.99和0.01
轉速濾波系數0.99和0.01(滯后非常嚴重)
反饋濾波系數0.96和0.04
轉速濾波系數0.96和0.04
最終確定卷徑200mm v = 200m/min左右 的PID參數
Kp = 1400
Ki = 500
Kd = 70
最終確定卷徑100mm v = 200m/min左右 的PID參數
Kp = 1600
Ki = 600
Kd = 180
然后根據上面說到的控制原理,推算出相應的系數,得到自適應PID控制器的自動調整參數。
具體參數整定過程如下:
目標位置是250,實際位置曲線如黃線所示
Kp = 100
Ki = 0
Kd = 0
R = 247
Kp = 200
Ki = 0
Kd = 0
R = 251
Kp = 400
Ki = 0
Kd = 0
R = 262
Kp = 800
Ki = 0
Kd = 0
R = 262
Kp = 1600
Ki = 0
Kd = 0
R = 268
Kp = 3200
Ki = 0
Kd = 0
R = 275
Kp = 2000
Ki = 0
Kd = 0
R = 278
Kp = 1400
Ki = 0
Kd = 0
R = 278
Kp = 1200
Ki = 0
Kd = 0
R = 278
Kp = 1200
Ki = 0
Kd = 100
R = 203
Kp = 1200
Ki = 0
Kd = 50
R = 311
Kp = 1200
Ki = 0
Kd = 60
R = 311
Kp = 1200
Ki = 0
Kd = 200
R = 203
Kp = 1200
Ki = 0
Kd = 25
R = 321
Kp = 1200
Ki =0
Kd = 35
R = 322
Kp = 1200
Ki =0
Kd = 40
R = 322
Kp = 1200
Ki = 400
Kd = 50
R = 324
Kp = 1200
Ki = 800
Kd = 50
R = 331
Kp = 1200
Ki = 800
Kd = 70
R = 338
Kp = 1200
Ki = 800
Kd = 80
R = 338
Kp = 1200
Ki = 800
Kd = 80
R = 338
Kp = 1200
Ki =100
Kd = 0
R = 285
Kp = 1200
Ki = 200
Kd = 0
R = 292
Kp = 1200
Ki = 400
Kd = 0
R = 302
關注本站微信公眾號,可以更方便的獲得更多資源資料
燕駿工控博客[環宇工控博客]–www.yanjuntech.cn 專注于工業自動化領域,分享工控相關經驗與教程,分享收集的百度云盤工控資料資源,記錄個人生活讀書感悟。期待與您相遇~~
贊賞作者
喜歡 (11)or分享 (0)