0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MACH3脈沖的工作與輸出(四)

冬至子 ? 來源:磁動力電子網 ? 作者:黃二 ? 2023-07-20 15:34 ? 次閱讀

近段來本人的簡易CNC控制器有小小突破,也基本上完工了,整理控制器資料時順手整理了"MACH3脈沖輸出",感覺還有兩篇沒有貼出就接著續(xù)篇(基本是按照自問自答的方式出現(xiàn)).....

圖片資料可以說是比效珍貴的,請珍惜(最少本人是這么認為的,因為這是MACH3實際輸出的波形,并無半點人工干涉,真正想返原它成圖并非是一件易事)

上幾單元說過了,MACH3控制步進電機是按脈沖方向來完成的,但實際上是怎一回事呢???

最常見的是G0 G1,而G0到底是怎走的呢?? 查閱G指令表: G0是點到點運動的,這在機器是如何運作的呢???

G0 測試

假如從A點到達B點情況是如何呢??

為此本人在通過自己寫的軟件進行分析MACH3波形實際輸出,從而清楚地解決了G0的實際運行方式:
如圖所示(G0X1Y1)

圖片

從這個波形來看,可以清楚地知道從A到B有三個過程,一加速過程,二均速過程,三減速過程,這三個過程中對XY來說是完全相同的,清認真看清下圖的直線,實際上并非是真正的直線,而是曲線,XY是你一步我一步.你走,我走,你走,我再走,從而在失量合成時就成了一條與X坐標系成45度角的類直線實際效果如圖

圖片

從圖中可能清楚地反應:速度從零開始,最后以零結速,加減速度過程并沒有改變直線的形狀,!!!

這個就是插補的奧妙了!!

有人會說這個簡單了,其實本人認為一點也不簡單,此過程中所包函的知識太多太多了,各位看官要是想了解更多找渡娘.

G1 測試

接著就是在CNC中起了結定性關鍵的G1了,

G1到底是什么一個過程呢? 測試兩個不同的圖形

{
G0x0y0
g1x1y1f1200
g1x1y2
x0y0
}

{
G0x0y0
g1x0y2f1200
x2y2
x0y0
}

直接看圖

圖片

圖片

圖片

圖片

圖片

圖片

好奇怪的圖形啊,為什么會拐彎呢?? 是誰偷了我的銳角呢??

其實一點也不奇怪,因為有牛頓的慣性定侓存在一切物體運動都不能突變,對此MACH3做了一個非常強的拐角過程,以前有網友問過,為什么我的MACH3會出現(xiàn)圓角呢?這個就是給予最好的解答了.

而這個過程是衡量一個CNC好壞的一個關健.為什么會拐得這么漂亮呢?這個拐角方程式又是什么呢? 對于多軸多微線段中,此拐角還可以這么順嗎??此精度又會是多少呢?? 對此本人花了整整二年時間去解讀它,也算是有的小成!!

在眾多的文獻中,很多地方提到插補,而插補的本質是什么? 插補簡單來說: 根據(jù)給定的數(shù)學函數(shù),在理想的軌跡式輪廓上的已知點之間,確定一些中間點的一種方法。直線插補這是車床上常用的一種插補方式,在此方式中,兩點間的插補沿著直線的點群來逼近,沿此直線控制刀具的運動。

注意兩個字"逼近" 為因為計算機并口輸出是脈沖方式,再者步進電機按每步進位一定的距離運行的,所以最后所得到的是一個非標準直線.只能逼近它.

脫離MACH3,假如我們用單片機或自己做的并口輸控制,我們有沒有方法去實現(xiàn)這個過程呢? 找渡娘后,所知有一種方式比較直接也比較有效那就是"比較法" 如下

直線插補就是零件程序提供直線段的起點、終點坐標,數(shù)控裝置將這兩點之間的空間進行數(shù)據(jù)密化,用一個個輸出脈沖把空間填補起來,從而形成要求的直線軌跡。

(一).偏差計算公式

直線方程 : yi/xi = ye/xe ; 把標準方程變換一下 xeyi - xiye = 0 ,令 實際偏差值是FI 側實際偏差值 FI = xeyi-xiye

進給方向的選?。菏拐`差減小的方向

當P點在直線上方時;

則:Xeyi - xiYe>0

當P點在直線下方時;

則:Xeyi - xiYe<0

因此:

由F可判別動點P與理想軌跡的相對位置,從而決定下一步移動方向。

F>0,點P在直線上方,應向+X 移動。

F<0,點P在直線下方,應向+Y 移動。

F=0,點P在直線上,為方便,將 F=0 歸F>0。

為便于計算機編程計算,將F的計算予以簡化。

設第I象限中動點P(xi, yi)的F值為Fi, Fi=Xeyi-xiYe

1.若沿+x向走一步,即

于是有 Fi+1 = Fi -Ye

2.若沿+y向走一步,即

于是有:Fi+1 = Fi +Xe

(二)終點判別的方法有兩種:

1.每走一步,判斷動點P(xi, yi)的坐標值是否與終點坐標相同,即

Xi-Xe =0且 Yi-Ye=0

若兩式同時滿足,插補結束。

2.求程序段總步數(shù)n=Xe+Ye,每走一步,n-1->n,直到 n=0,插補結束。

知道方法,那程序如何編寫呢?? 假如運行至(4,3)坐標:

#include "XXOO.h" //頭文件(XXOO笑吧)
void main()
{ int xe,ye,f,j;
xe=4; ye=3; //把常數(shù)4寫入變量xe;把常數(shù)3寫入變量ye;
f=0; //把常數(shù)0寫入f;
j=xe+ye; //讀出xe和ye的值,相加后結果寫入j;
do {if (f>=0)
{if(ye>=xe) //判斷直線是否大于45度;
{cout<<"同時走+x,+y"< f=f+xe-ye; //讀出f、xe和ye的值,計算后結果寫入f;
j=j-2;} //讀出j的值,減2后結果寫入j;
else{cout<<"向+x走一步"< f=f-ye; j=j-1;}}
else {if (ye>xe)
{cout<<"向+y走一步"< f=f+xe; j=j-1;}
else {cout<<"同時走+x,+y"< f=f+xe-ye; j=j-2;}}}
while (j!=0);}

是不是很簡呢?實際這個是理論上的.而真正的運行是比這個復雜得多得多!!!!!!

此方法中只考慮到象限一,能不能用到四個象限之中呢??

對于第二象限,只要去| x |代替x即可,至于輸出驅動,應使x軸步進電機方向旋轉,而y軸步進電機仍為正向旋轉。

同理,第三、四象限的直線也可以變換到第一象限。插補運算時,取| x |和| y |代替x、y。輸出驅動原則是:在第三象限,點在直線上方,向-y方向步進;點在直線下方,想-x方向步進。在第四象限,點在直線上方,想-y方向步進;點在直線下方,想+x方向步進。4個象限各軸插補運動方向如上圖所示。由圖中看出,F(xiàn)>=0時,都是在x方向步進,不管+x向還是-x向,| x |增大。走+x或-x可由象限標志控制,第一、第四象限走+x,第二、三象限走-x。同樣,F(xiàn)<0時,總是走y方向,不論-y向還是+y向,| y |增大。走+y或-y由象限標志控制,第一、二象限走+y,第三、四象限走-y。

假如再加兩軸Z+Z-,A+A-,那么問題就大條了.所考慮到的就不是簡簡單單的比較了,更別說加上速度限定了.

看來"比較法"只能算是初等的算法了,有沒有更加高明的手段或算法呢?

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    112

    文章

    15885

    瀏覽量

    175367
  • 步進電機
    +關注

    關注

    150

    文章

    3042

    瀏覽量

    146854
  • CNC系統(tǒng)

    關注

    0

    文章

    16

    瀏覽量

    6231
  • Mach3
    +關注

    關注

    0

    文章

    13

    瀏覽量

    4232
收藏 人收藏

    評論

    相關推薦

    怎樣用市面上賣的20元左右的接口卡 連接臺達伺服驅動器

    想用mach3 控制驅動器 不知道怎么接線純白 求大神指導 另外問 這種接口能實現(xiàn)位置控制嗎 ?qq1806639233(私聊有謝)
    發(fā)表于 11-02 08:44

    mach3雕銑創(chuàng)建

    、驅動和主軸變頻器及限位開關對刀儀等等,讓他們做成了一個機箱,一共花了7K左右,說說Mach3,我琢磨了近一個月,基本搞得差不多了,覺得這個系統(tǒng)還是挺牛的,網上有的說不穩(wěn)定,我從調式到現(xiàn)在還沒發(fā)現(xiàn)不穩(wěn)定
    發(fā)表于 05-07 09:21

    如何將電機驅動器與光隔離輸入連接

    如何將電機驅動器與光隔離輸入連接有兩種方式連接:*1.共陰*2.共陽極說明:步進電機驅動器和常用的CNC控制板,USBCNC、MACH3、GRBL、TinyG等關于脈沖和方向的標注不盡相同。STEP
    發(fā)表于 08-31 07:49

    Mach3漢化程序軟件

    電子發(fā)燒友網站提供《Mach3漢化程序軟件.exe》資料免費下載
    發(fā)表于 06-22 22:09 ?48次下載

    深入Mach3內核(中文)

    深入Mach3內核(中文)(力普拉斯電源技術有限公司)-MACH3是一款運行于 Windows平臺的優(yōu)秀機器控制軟件,它的授權價格十分低兼,使用者可以用它來組建自己的低成本數(shù)控機床,使得CNC機床
    發(fā)表于 08-31 15:58 ?82次下載
    深入<b class='flag-5'>Mach3</b>內核(中文)

    MACH3軟件輸入設置

    MACH3軟件輸入設置(現(xiàn)代電源技術實訓報告)-MACH3軟件用的是電腦并口,一個并口只有5個輸入,這5個輸入可以接許多輸入項目,如“限位,按鈕,接近開關,光電開關,探針”等等。我簡單介紹一下:用
    發(fā)表于 09-18 09:13 ?12次下載
    <b class='flag-5'>MACH3</b>軟件輸入設置

    mach3安裝和設置

    mach3安裝和設置(深圳普德新星電源技術有限公司怎樣)-MACH3的安裝和輸入輸出設置說明:下文中未特意指出右擊或雙擊等的均為鼠標左擊,各個菜單、軟按鍵、選項卡等用()括起表示,文件地址等字符串用
    發(fā)表于 09-18 09:17 ?15次下載
    <b class='flag-5'>mach3</b>安裝和設置

    如何為mach3 bsmce04u連接傳感器LJ12A3 4Z/BX

    電子發(fā)燒友網站提供《如何為mach3 bsmce04u連接傳感器LJ12A3 4Z/BX.zip》資料免費下載
    發(fā)表于 11-11 10:19 ?1次下載
    如何為<b class='flag-5'>mach3</b> bsmce04u連接傳感器LJ12A<b class='flag-5'>3</b> 4Z/BX

    MACH3脈沖工作輸出(一)

    我們知道MACH3輸出是以 步進脈沖,方向 來控制電機的運行,但它是怎樣工作輸出呢??
    發(fā)表于 07-20 15:25 ?2113次閱讀
    <b class='flag-5'>MACH3</b><b class='flag-5'>脈沖</b>的<b class='flag-5'>工作</b>與<b class='flag-5'>輸出</b>(一)

    MACH3脈沖工作輸出(二)

    CNC機臺中為什么要加速,這個想必網友們都很清楚,本人就不都說了.
    的頭像 發(fā)表于 07-20 15:27 ?1002次閱讀
    <b class='flag-5'>MACH3</b><b class='flag-5'>脈沖</b>的<b class='flag-5'>工作</b>與<b class='flag-5'>輸出</b>(二)

    MACH3脈沖工作輸出(三)

    前兩篇我們知道了,MACH3的加速度參數(shù)之間的關系,那如何用數(shù)學公式做出分散的與加速度有關的時間間隔點呢???
    的頭像 發(fā)表于 07-20 15:30 ?942次閱讀
    <b class='flag-5'>MACH3</b><b class='flag-5'>脈沖</b>的<b class='flag-5'>工作</b>與<b class='flag-5'>輸出</b>(三)

    mach3控制卡怎樣連接伺服

    在這篇文章中,我們將詳細介紹如何將Mach3控制卡與伺服電機連接。Mach3是一款廣泛使用的數(shù)控(CNC)軟件,它可以控制各種類型的機械設備,包括銑床、車床、激光切割機等。伺服電機是一種高精度、高
    的頭像 發(fā)表于 06-12 14:15 ?1004次閱讀

    mach3和數(shù)控系統(tǒng)有什么區(qū)別

    Mach3和數(shù)控系統(tǒng)是兩個不同的概念,它們在數(shù)控加工領域中扮演著不同的角色。本文將詳細介紹Mach3和數(shù)控系統(tǒng)的區(qū)別,以及它們在數(shù)控加工中的應用。 定義 Mach3是一款數(shù)控編程軟件,主要用于控制
    的頭像 發(fā)表于 06-12 14:18 ?918次閱讀

    mach3伺服電機參數(shù)設置

    本文詳細介紹了Mach3軟件在伺服電機參數(shù)設置方面的相關知識,包括伺服電機的基本原理、Mach3軟件的安裝與配置、伺服電機參數(shù)設置的方法和步驟。 一、伺服電機基本原理 伺服電機是一種高精度、高
    的頭像 發(fā)表于 06-12 14:22 ?1181次閱讀

    mach3如何更改電機方向

    Mach3是一款廣泛使用的數(shù)控系統(tǒng),用于控制各種類型的機床,如銑床、車床、激光切割機等。在某些情況下,用戶可能需要更改電機的方向以滿足特定的加工需求。以下是詳細的步驟和說明。 準備工作 在開始更改
    的頭像 發(fā)表于 06-12 14:24 ?736次閱讀