《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 基于微機的激光雕刻機控制系統設計

基于微機的激光雕刻機控制系統設計

2008-12-08
作者:于政濤 林喜榮 周云龍

  摘 要: 敘述了基于PC機的激光雕刻機運動軌跡插補" title="插補">插補控制軟件的設計與實現和其外圍接口特性。
  關鍵詞: 控制 CNC 插補原理 計算機并口


  激光是20世紀60年代初期興起的一項新技術,由于其具有單色性好,高亮度和方向性好的特點,對各個技術領域產生了巨大的影響。而近年來的基于CNC(Computer Numerical Control)的激光雕刻機作為一種機、光、電、算相結合的高科技產品也在市場上出現,其應用相當廣泛,市場需求量很大。由于該產品大部分是由國外進口,其價格之高,令一般的國內消費者難以接受。主要同類產品有日本的MIMAKI PRO的專業刻字機,上海長江匯眾企業發展有限公司的長江激光雕刻機和北京開天科技公司的FC-15型激光雕刻機等。本文主要介紹激光雕刻機的控制系統" title="控制系統">控制系統的軟件設計以及主要端口的接口特性。在該激光雕刻機控制系統中,主要采用基于PC機的數字控制系統,通過并口和步進" title="步進">步進電機驅動器來控制步進電機" title="步進電機">步進電機,從而達到控制工作臺(或激光束)的走向和速度的目的。
1 控制軟件的設計
1.1插補原理

  在激光雕刻機中為了實現對激光雕刻機的控制,主要采用矢量化的方法將控制分成不同種類的基本矢量,其中包括直線、圓弧、橢圓三個基本矢量。再利用插補原理來實現對這三個基本矢量的數字逼近。在激光雕刻機的控制系統中要求能夠達到較高的速度和精確度,因此控制軟件的計算不能太復雜,花費的時間不能太多,這就是使用插補原理的原因所在。在本系統中所采用的為逐點比較插補算法。所謂逐點比較插補算法,即每走一步都要和給定軌跡上的坐標值進行一次比較,使該點在給定軌跡的上方或下方,或在給定軌跡的里面或外面,從而決定下一步的進給方向,使之趨近加工軌跡。如此走一步,比較一次,決定下一步走向,逐步逼近給定的軌跡。逐點比較法是以折線來逼近直線或圓弧曲線的,它與規定的直線或圓弧之間的最大" title="最大">最大誤差不超過一個脈沖當量,只要將脈沖當量(即每走一步的距離)取得足夠小,就可以達到加工的精度要求。下面以直線為例來說明插補原理。如圖1所示。


  偏差計算公式假定加工第一象限的直線OA,取直線起點為坐標原點O,直線終點坐標A(Xe、Ye)是已知的。M(Xm、Ym)為加工點(動點)。若M在OA直線上,則根據相似三角形的關系有:
  
  取Fm=YmXe-XmYe作為直線插補的偏差判別式。
  若Fm=0,表明M點在直線OA上。
  若Fm>0,表明M點在直線OA上方的M′處。
  若Fm<0,表明M點在直線OA下方的M″處。
  對于第一象限直線從起點(即坐標原點)出發、
  若Fm>=0,沿+X軸方向走一步。
  若Fm<=0,沿-X軸方向走一步。
  當兩方向所走的步數與終點坐標(Xe、Ye)相等時,發出到達終點信號,停止插補。設在某加工點出現有Fm>=0時,應沿+X方向進給一步,走一步后的坐標值為: Xm+1=Xm+1、 Ym+1=Ym
  新的偏差為: Fm+1=Ym+1Xe-Xm+1Ye=Fm-Ye
  若Fm<=0時,應沿+Y方向進給一步,走一步后的坐標值為: Xm+1=Xm、 Ym+1=Ym+1
  新的偏差為:Fm+1=Ym+1Xe-Xm+1Ye=Fm+Xe
  上式為簡化后的偏差計算公式、在公式中只有加、減運算,只要將前一點的偏差值等于上述的終點坐標值。當然對于不同的象限以及不同的矢量插補公式不同,但其基本原理相似,在這里不再贅述。
1.2 對電機運行速度的控制
  由于國產步進電機的最高啟動頻率一般為1~2kHz,一般步進電機不能一下突變到要求的最大頻率,而在電機的最大運行頻率下也不能立即停止,否則就會造成電機的丟步,影響系統的精度。這就需要在程序中有對電機的加減速控制,其基本思路如下:
  設電機每次步進的時間為t,t與電機的運行速度成反比,當電機處于加速階段時,在電機的下一步應使其時間為t-δt,其中δt是根據電機加速度計算出的時間減小量,其計算方式如下:
  
  其中l為某段距離的長度,δ為系統的分辨率即最小步進距離,n為所走的總步數,tsum為所需走的總時間,t0為初始速度時每走一步所花費的時間,t1為到達所要求走的距離時(即達到最大速度時)每走一步所花費的時間,根據具體的要求我們可以計算出以上各式的值。
  在基于PC機的控制系統中,一個很重要的問題就是如何獲得對時間的精確控制。在windows操作系統中、系統所提供的時間函數只能達到毫秒級的精度,很難達到微秒級的控制精度。對于不同配置的PC機,執行相同的語句其時間也不會相同。為此我們利用系統提供的GetTickCount()函數,用包括_nop語句的循環來達到微秒級的控制精度。下面為具體的實現方法用法:
  構造CMicroSecond類:
  在類初始化函數中實現每微秒包含_nop語句循環數。
  void CMicroSecond::Initialize()
  {
   DWORD dwStart = 0;
   DWORD dwStop = 0;
   int nLoopSeed = 100000;
   do{
    m_dwLoopCounter1 = 0;
    dwStart = GetTickCount();
    for(int i=0; i< nLoopSeed; i++)
    {
     m_dwLoopCounter1++;
     _asm{nop}
    }
    dwStop = GetTickCount();
    nLoopSeed += 100000;
   }while ( dwStop - dwStart < 50 );
   m_dwLoopCounter1 = 0;
   dwStart=GetTickCount();
   for(int i=0; i<nLoopSeed;i++)
   {
    m_dwLoopCounter1++;
    _asm{nop}
   }
   dwStop = GetTickCount();
   //每毫秒的循環數
   m_dwLoopCounter1=m_dwLoopCounter1/(dwStop-dwStart);
   //每微秒的循環數
   m_nLoopCountPerMicroSecond=(int)m_dwLoop
   Counter 1/1000;
  }
  實現固定時間的延時:
  void CMicroSecond::MicroDelay( int uSec )
  {
   n=0;
   for(int i=0;i<uSec*m_nLoopCountPerMicroSecond;i++)
   {
    n++;
    _asm{nop}
   }
  }
  由于賦值語句、for語句、函數的調用等要消耗時間,因此所得到的時間也并不是非常精確的時間。但對于一般的PC機來說完全可以達到幾十微妙的精度,而對于一般的控制系統來說,這個精度是足以達到控制要求的。
2 外圍接口特性
  在本系統中我們通過計算機的并口來實現對步進電機驅動器的控制。我們知道并行口適配器的具體形式是多種多樣的,但是在PC系列微機中分配給它的最多有四個口,常用的是三個口,其地址為:03BCH - 03BEH:并口一(LPT1),0378H - 037AH:并口二(LPT2),0278H - 027AH:并口三(LPT3)。這里可以看到每個并口包括了三個口地址(其中第一個為基地址),是因為一個并口具有數據口狀態口和控制口的緣故。不過值得注意的是,最好不要直接用上述口的地址去讀寫并口,因為在實際應用中很少有三個并行口都同時有效的,而且多功能卡和單色顯示卡上的并行口地址是有差別的。單色顯示卡上的并口地址一般是03BCH,而多功能卡上的并口基地址一般可以在0378H和0278H之間進行選擇。因此如果直接對某一并口地址進行操作,萬一PC機上的并口適配器用的不是這個口地址那就要出錯了。
  熟悉PC機的讀者都知道,PC機內存最低端BIOS數據區的40:08H,40:0AH,40:0CH三個字是被設計用來存放上述三個并行口的基地址的,40:08H - 09H LPT1基地址;40:0AH - 0BH LPT2基地址;40:0CH - 0DH LPT3基地址。這三個字中的基地址是在PC機啟動過程中根據實際存在的并行口地址存放的,使用它們來讀寫并行口就不會出錯,所以在使用時一定要通過檢查這三個字來得到并行口的基地址。在對并口的讀寫操作用到的語句為_outp( 并口地址、數據)和 _inp( 并口地址 )(_inp返回值為讀到的數據)。
3 系統特點及結果分析
  在本文所述的激光雕刻機系統中,我們通過動態連接庫的方式對系統進行控制,我們將對基本矢量元素的控制都封裝在了一個動態連接庫中,這樣使系統的控制軟件具有一定可移植性。而這種通過PC機并口實現對激光雕刻機控制的方法簡單而且易于實現,可以大大的縮短開發周期。如果我們配上相應的激光雕刻機作圖軟件,就可以成為一個商用化的產品了。

參考文獻
1 廖效果,朱啟述.數字控制機床.華中理工大學出版社, 1992
2 王全國,任晨光.軟件狗加密技術透視.北京:清華大學出版社,1996
3 MSDN.VC6在線幫助手冊.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:[email protected]
主站蜘蛛池模板: 思99re久久这里只有精品首页 | 国产成人cao在线 | 国产精品_国产精品_国产精品 | 国产欧美成人免费观看 | 香蕉视频黄色在线观看 | 国产高清在线精品二区一 | 欧美黄色一级视屏 | 国产一区二区三区免费在线视频 | 手机看片神马午夜 | 欧美精品xxxⅹ欧美 欧美精品不卡 | 亚洲精品综合一区二区三区 | 91福利国产在线观看香蕉 | 国产精品特级毛片一区二区三区 | 国产亚洲精品免费 | 99久久国内精品成人免费 | 性久久久久 | 久久思思爱| 欧美成人免费观看的 | 久草在线观看首页 | 深爱五月开心网亚洲综合 | 亚洲一区日韩一区欧美一区a | 亚洲一区二区三区免费在线观看 | 欧美人与zoxxxx另类9 | 国产亚洲欧美在线人成aaaa | 九九国产精品视频 | 久久精品一 | 亚洲国产日韩成人综合天堂 | 国产日韩欧美三级 | 三级黄a | 亚洲综合视频 | 国产图片亚洲精品一区 | 韩国一级黄色毛片 | tube69xxx最新片 | 国产成人小视频 | 91精品国产综合久久久久 | 久久久亚洲国产精品主播 | 精品亚洲一区二区 | 中文三级视频 | 久久精品免费一区二区视 | 成人在线免费观看网站 | 亚洲巨乳自拍在线视频 |