<em id="dld53"><form id="dld53"><nobr id="dld53"></nobr></form></em><address id="dld53"></address>

    <noframes id="dld53"><form id="dld53"></form>
    <address id="dld53"></address>
      <form id="dld53"></form>
      <address id="dld53"></address>

      <noframes id="dld53"><listing id="dld53"><listing id="dld53"></listing></listing>

           注冊名:

          密碼:

          個人注冊

          企業注冊

          商務申請

          商務管理平臺

          企業管理平臺

          個人管理平臺

          我的工控博客

          中國工控網www.archeagesp.com

          首頁 | 新聞中心 | 工控論壇 | 經驗視點 | 工控商務 | 電氣手冊 | 工控博客 | 招聘求職 | 網上調查 | 企業中心 | 供求信息 | 資料中心 | 工控書店

          所在位置:工控博客苑 -- 運動控制系統 -- 如何正確計算及設置DMC1000插補的矢量速度

          中國工控網搜索:

          鐘天玉先生

               學歷:大學本科
               職稱:工程師
               年齡:39歲
                 新聞信息(7/2)
                 工作圖片(0)
                 技術論文(2/7)
                 交流論壇(19/20)
                 留言信箱(4)
                 瀏覽人次:14481
                 給我發消息
           我的新聞推薦 更多..
          發表人:zhong2010 發表時間:2010-5-9 21:08:00

           

          發表新論題

           本欄論題: 如何正確計算及設置DMC1000插補的矢量速度  [7373]
              如何正確計算及設置DMC1000插補的矢量速度
             
              一、問題現象
              用戶通過以下編程:
             
              # define XCH 0
              # define YCH 1
             
              double fUnit[]={ 3200/5.0, 3200/5.0}; //脈沖當量,每毫米脈沖數
              //每轉脈沖數為3200,每轉毫米數為5.0
             
              short axisArray[]={ XCH, YCH };//選擇XY兩軸
              long distArray[]={ x * fUnit[XCH], y*fUnit[YCH] }; //x和y為毫米單位的絕對位置
             
              d1000_start_ta_line( 2, axisArray, distArray, 10, 10, 0.0);//勻速插補
             
             
              通過實際運動發現以下情況:
              No.1 當X=100,Y=0,即水平方向,所花時間為10.002秒
              No.2 當X=0,Y=100,即垂直方向,所花時間為10.003秒
              No.3 當X=100,Y=100,即45度斜線,所花時間為10.005秒
             
              即三種情況下的運行時間幾乎相當(當中的微小時間差可能由系統的多任務特性引起的),而實質上當走45度斜線時,其距離等于100*sqrt(2) = 100*1.414=141.4毫米,由此可見距離長了許多,故其速度也快了許多。此種情況在速度慢的情況下表現不明顯,但是在激光切割時,速度不穩定,同樣的能量切割出來的效果就不一致,質量也就不能過關。
             
              二、原因分析
              DMC1000的開發較早,對于直線插補的算法是采用三角函數進行合成,故以上設定的10,10,0.0的速度是對距離長的運動軸有效(即長軸),不是一個矢量的速度,由此可見,同樣的速度設定會因為直線的斜率不同而快慢不一致。
             
              三、解決方法
              解決此問題也很簡單,每次需要重新計算長軸的速度,以用于作為插補速度,下面給出原代碼,以對上面的代碼進行補充:
             
              double fP1 = distArray[XCH] - (double)d1000_get_command_pos(XCH);
              double fP2 = distArray[YCH] - (double)d1000_get_command_pos(YCH);
              double fLen= sqrt( fP1*fP1 + fP2*fP2 );
              if( fLen < 1 )//0脈個不要
              return nAxises;
              long nStart,nSpeed; //計算出新的速度
              if( fabs(fP1)>fabs(fP2) )
              {
              double kx = fP1 / fLen;
              double AP = kx * fP1;
              kx = AP / fP1;
              nStart = long(fUnit[XCH] * speed.start * kx );
              nSpeed = long(fUnit[XCH] * speed.speed * kx );
              }
              else{
              double ky = fP2 / fLen;
              double AP = ky * fP2;
              ky = AP/ fP2;
              nStart = long(fUnit[YCH]*ky);
              nSpeed = long(fUnit[YCH]*ky);
              }
             
              nStart和nSpeed是計算出來的最后設定的速度。
              關于speed是一個速度結構,大致如下(單位:毫米/秒)
             
              typedef struct tag_SPEED
              {
              double start;
              double speed;
              double accel;
              };
             
             
              四、附帶聲明
              在DMC1000以后的系列控制卡,如:DMC2000,DMC3000,DMC5000,對矢量速度的設定都已進行充分的考慮,不再需要用戶添加額外的代碼進行計算了。
             
             
           

          如果要回復本欄論題,請首先登陸網站

          ·如果你已經是中國工控網www.archeagesp.com成員,請直接登錄。

          ·如果你還不是中國工控網www.archeagesp.com成員,請首先注冊,注冊為免費!

          注冊名:

          密  碼:

                     注冊中國工控網www.archeagesp.com
                     忘記密碼
           
               相關技術論文:

          關于我們     免責聲明     服務項目     廣告聯系     友情鏈接     聯系方式     意見反饋     設為首頁     加入收藏

           ©2021-2022 中國工控網(www.archeagesp.com) 版權所有 豫ICP備17046657號

          管理員信箱:chinakong98@163.com  服務熱線:13525974529

          洛陽博德工控自動化技術有限公司

          中國    洛陽

          健身房群交换乱

          <em id="dld53"><form id="dld53"><nobr id="dld53"></nobr></form></em><address id="dld53"></address>

            <noframes id="dld53"><form id="dld53"></form>
            <address id="dld53"></address>
              <form id="dld53"></form>
              <address id="dld53"></address>

              <noframes id="dld53"><listing id="dld53"><listing id="dld53"></listing></listing>