• 
    <ul id="auswy"><sup id="auswy"></sup></ul>
  • <ul id="auswy"></ul>
    ABB
    關(guān)注中國自動(dòng)化產(chǎn)業(yè)發(fā)展的先行者!
    橫河電機(jī)25年9月
    工業(yè)智能邊緣計(jì)算2025年會(huì)
    2025工業(yè)安全大會(huì)
    CAIAC 2025
    OICT公益講堂
    當(dāng)前位置:首頁 >> 案例 >> 案例首頁

    案例頻道

    基于高級(jí)語言的精確位置控制在塑料機(jī)械行業(yè)中的應(yīng)用
    • 企業(yè):控制網(wǎng)     領(lǐng)域:PLC /PAC/PCC/RTU     行業(yè):石油天然氣    
    • 點(diǎn)擊數(shù):1125     發(fā)布時(shí)間:2009-08-27 11:37:40
    • 分享到:

      在塑料機(jī)械行業(yè)中,運(yùn)動(dòng)機(jī)構(gòu)的控制往往由液壓驅(qū)動(dòng)來實(shí)現(xiàn),比如注塑機(jī)的開合模位置,注射位置,全自動(dòng)中空吹塑機(jī)的移模位置等等。

      這些運(yùn)動(dòng)機(jī)構(gòu)的位置準(zhǔn)確性對(duì)于機(jī)器的整體性能和制品精度都有較大影響,比如,注塑機(jī)開模位置的準(zhǔn)確度,有利于機(jī)械手進(jìn)入取出成品,注射終的位置也會(huì)影響到注射量和成品的重復(fù)精度。

      為了提高位置精度,比較有效的做法是提高執(zhí)行機(jī)構(gòu)的響應(yīng)和精確度,使用高精度的比例閥或伺服閥。MOOG,REXROTH,意大利的ATOS,都有相應(yīng)的液壓驅(qū)動(dòng)產(chǎn)品。

      然而,作為機(jī)器的中央控制單元 – 塑料機(jī)械的控制系統(tǒng),軟件內(nèi)的傳統(tǒng)做法是:檢測(cè)電子尺的位置反饋,判斷動(dòng)作處于第幾個(gè)階段,決定輸出相應(yīng)的流量和壓力,或者是否要結(jié)束動(dòng)作。

      這種做法的缺點(diǎn)是,比如,控制系統(tǒng)檢測(cè)到模板位置已經(jīng)達(dá)到了設(shè)定的開模終的位置,然后流量和壓力才開始按照設(shè)定斜坡減速,再加上閥的響應(yīng)延時(shí),等到模板停穩(wěn)之后,實(shí)際位置已經(jīng)遠(yuǎn)遠(yuǎn)超過了設(shè)定值。

      圖1是普通注塑機(jī)控制系統(tǒng)控制開模位置的效果示意圖,可以看到,就算使用高響應(yīng)比例方向閥,過沖仍不可避免,而當(dāng)執(zhí)行機(jī)構(gòu)的響應(yīng)特性較差時(shí),情況就更加糟糕。


      GEFRAN(杰佛倫)是來自意大利的傳感器和自動(dòng)化領(lǐng)域的先導(dǎo)者,有著三十多年的塑料機(jī)械行業(yè)經(jīng)驗(yàn)。對(duì)于這樣的控制場(chǎng)合,GEFRAN控制系統(tǒng)采用面向?qū)ο蟮母呒?jí)語言編程,軟件內(nèi)部集成了豐富的功能庫,這些功能庫,能分析運(yùn)動(dòng)過程的速度,斜坡,和點(diǎn)到點(diǎn)的位置,做出特殊算法處理。

    圖 2

      以圖2 曲線為例,V1,V2,V3為三段恒定速度,Q1,Q2為兩點(diǎn)位置值,要實(shí)現(xiàn)這樣的點(diǎn)到點(diǎn)位置曲線,必須要考慮中間的加減速過程。圖例中為:先實(shí)現(xiàn)一段上升斜坡,然后再實(shí)現(xiàn)兩段下降斜坡。對(duì)于塑料機(jī)械來說,上升斜坡采用基于時(shí)間的類型就能滿足要求:(速度變化△V) * 程序運(yùn)行周期時(shí)間T_PLC / 加速時(shí)間T = 每隔一個(gè)程序運(yùn)行周期需要增加的速度輸出變化。這樣的基于時(shí)間的加速斜坡算法很輕易就能實(shí)現(xiàn),而對(duì)于下降斜坡,要準(zhǔn)確的停在Q1位置,必須提前一定位置就進(jìn)行減速,這個(gè)提前位置系數(shù),取決于執(zhí)行機(jī)構(gòu)的響應(yīng)速度,執(zhí)行機(jī)構(gòu)響應(yīng)越快,這個(gè)值就可以設(shè)得越小,否則必須增大提前位置系數(shù),從而延長運(yùn)動(dòng)過程的執(zhí)行時(shí)間。

      程序?qū)崿F(xiàn)這樣的減速過程,至少有三種不同的算法可能性,讓我們分析各自優(yōu)劣性。

      第一種,基于時(shí)間

      if (STOP_POSITION[i] == TIME_BASED){

      if( Realpos > startPos) {

      if (StartDecreaseOut[i] > TimeRampValue [i]) {

      StartDecreaseOut [i] = StartDecreaseOut [i] – TimeRampValue[i];

      }else{

      StartDecreaseOut [i] = 0;

      }

      OutPutTemp = StartDecreaseOut [i];

      }else{

      StartDecreaseOut [i] = Real_Output;

      }

      return(OutPutTemp);

      }

      這種算法和加速斜坡類似,但存在一個(gè)致命缺點(diǎn):由于起始下降的速度未定,就算機(jī)器出廠前設(shè)好了參數(shù),最終用戶更換模具,或者改變開模速度曲線,都需要重新尋找最佳的斜坡起始點(diǎn),因此,不能拿來用做控制。

      第二種,基于位置斜坡


      如圖所示,一旦提前點(diǎn)值確定,基于位置的斜率就可以確定下來了,因此不管開始準(zhǔn)備下降時(shí)流量設(shè)定是多少,斜率總是一定的,而真正開始執(zhí)行斜坡的位置,卻是不一定的,跟流量有關(guān)系,斜率確定如下:

      if (STOP_POSITION == POSITION_RAMP_BASED){

      Position_Ramp = AdvancePoint * Real_Output / Maxout;

      If (Realpos > startPos) {

      OutTemp = Maxoutabs * (EndPos - RealPos) / Position_Ramp;

      if (Real_Output <= OutTemp) OutPutTemp = Real_Output;

      }

      return(OutPutTemp);

      }

      注釋(

      STOP_POSITION:斜坡方式選項(xiàng)

      POSITION_RAMP_BASED:基于位置斜坡方式

      AdvancePoint:提前開始降速的位置

      Position_Ramp:斜坡比例

      Realpos :電子尺的當(dāng)前實(shí)際位置

      startPos:開始執(zhí)行斜坡降速的電子尺位置

      OutTemp:中間變量,流量

      Real_Output:實(shí)際輸出流量

      )

      第三種,基于位置斜坡和數(shù)組陣列排點(diǎn)法

      第三種算法是在第二種的基礎(chǔ)上加以改進(jìn)和優(yōu)化

      在第二種控制方法中沒有解決開始執(zhí)行斜坡的位置確定問題,這可以借助數(shù)組陣列排點(diǎn)法解決。比如預(yù)先定義一個(gè)32點(diǎn)的數(shù)組,表內(nèi)的數(shù)值決定了最終運(yùn)動(dòng)曲線的形狀,如果我們把每一個(gè)點(diǎn)在坐標(biāo)軸上列出來,就可以很清晰的看到它是一條線形的直線,上凸弧線,下凹弧線,或者是S型的曲線。比如16位的輸出最大點(diǎn)值32767,可以將其劃分成32段,

      EXTERN int TAB_POS [33]

      = { 0, 3913, 6330, 8242, 9882, 11331, 12651, 13875, 15012, 16076, 17092,

      18060, 18981, 19869, 20717, 21541, 22341, 23110, 23862, 24598, 25310, 25998,

      26679, 27343, 27991, 28631, 29247, 29863, 30463, 31056, 31632, 32200, 32767

      }

      程序內(nèi)可以用簡單的FOR循環(huán)語句,實(shí)時(shí)獲取預(yù)先定義好的斜坡曲線形狀,計(jì)算分段位置值,然后根據(jù)實(shí)際位置值,修正速度輸出。

      if (STOP_POSITION == POSITION_RAMP_ARRAY__BASED){

      For (int j = 0; j <= 32; j++) {

      TableTemp[j] = TAB_POS[j];

      }

      DeltaStop = EndPos – RealPos;

      Temp1 = AdvancePoint / 32;

      if (DeltaStop > AdvancePoint) {

      stepg = 31;

      restg = Temp1;

      } else {

      stepg = DeltaStop * 32 / AdvancePoint;

      restg = AdvancePoint / 32 * stepg;

      restg = DeltaStop - restg;

      }

      Temp2 = TableTemp [stepg+1] - TableTemp [stepg];

      OutPutTemp = restg * Temp2 / Temp1;

      OutPutTemp = OutPutTemp + TableTemp [stepg];

      return(OutPutTemp);

      }

      注釋(

      STOP_POSITION:斜坡方式選項(xiàng)

      POSITION_RAMP_ARRAY__BASED:基于數(shù)組陣列排點(diǎn)的位置斜坡方式

      AdvancePoint:提前開始降速的位置

      TableTemp:獲取預(yù)定義數(shù)組的本地變量

      TAB_POS:預(yù)先定義好的數(shù)組陣列

      Temp1:中間變量,將提前位置按陣列數(shù)等分

      Temp2:中間變量,將位置值映射成流量值

      RealPos:電子尺的當(dāng)前實(shí)際位置

      EndPos:最終開模位置

      DeltaStop:剩余需要走完多少位置值

      stepg:當(dāng)前采樣點(diǎn)模板位置處于第幾步陣列

      restg:剩余采樣點(diǎn)共有幾步陣列

      )

      另外需要考慮的一點(diǎn)是,當(dāng)執(zhí)行程序的控制器的循環(huán)周期時(shí)間過長,陣列細(xì)分過少,或閥門開度不準(zhǔn)確等原因,造成速度下降至零時(shí)停止在了位置設(shè)定值之前,此時(shí)需要有一個(gè)最小速度值,保證在這種情況下,能夠繼續(xù)前進(jìn)至目標(biāo)位置。


      圖3是應(yīng)用了這種位置控制算法后的注塑機(jī)開模效果圖,控制系統(tǒng)的硬件載體是GEFRAN公司的VEDO控制器和GiLogik2分布式遠(yuǎn)程IO,憑借GDnet確定性實(shí)時(shí)以太網(wǎng),輸入輸出信號(hào)能在100us內(nèi)完成一次刷新,從而可以保證PLC程序周期在1ms內(nèi)完成一個(gè)循環(huán),配合以上所述的位置算法和高精確度的執(zhí)行機(jī)構(gòu),可以控制注塑機(jī)開合模,托模,和注射單元的位置誤差在0.1mm范圍之內(nèi)。

     

    熱點(diǎn)新聞

    推薦產(chǎn)品

    x
    • 在線反饋
    1.我有以下需求:



    2.詳細(xì)的需求:
    姓名:
    單位:
    電話:
    郵件: