开源数控用户基础手册_第1页
开源数控用户基础手册_第2页
开源数控用户基础手册_第3页
开源数控用户基础手册_第4页
开源数控用户基础手册_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

开源数控EMC2顾客手册第1章

前言ForewordEMC2ismodularandflexible.Theseattributesleadmanytoseeitasaconfusingjumbleoflittle

thingsandwonderwhyitisthewayitis.Thispageattemptstoanswerthatquestionbeforeyou

getintothethickofthings.

EMC2是模块化设计,柔性很强。诸多人都觉得它是由某些令人困惑小东西堆叠而成,很奇怪它是如何做到。那么在进入实质内容此前,让咱们一方面试图回答这个问题。EMCstartedattheNationalInstituteofStandardsandTechnologyintheUSA.Itgrewupusing

Unixasit’soperatingsystem.Unixmadeitdifferent.AmongearlyUnixdeveloperstheregrewaset

ofcodewritingideasthatsomecalltheUnixway.TheseearlyEMCauthorsfollowedthoseways.

EMC项目来源于NIST(美国国标与技术研究院)。它起初是在Unix操作系统下运营,这使它与众不同。初期Unix开发者规定了某些代码编写原则或办法,称为Unix编程办法(Unixway),EMC项目作者们遵循了这些办法。EricS.Raymond,inhisbookTheArtofUnixProgramming,summarizestheUnixphilosophy

asthewidely-usedengineeringphilosophy,"KeepitSimple,Stupid"(KISSPrinciple).

HethendescribeshowhebelievesthisoverallphilosophyisappliedasaculturalUnix

norm,althoughunsurprisinglyitisnotdifficulttofindsevereviolationsofmostofthe

followinginactualUnixpractice:

*RuleofModularity:Writesimplepartsconnectedbycleaninterfaces.

*RuleofClarity:Clarityisbetterthancleverness.

*RuleofComposition:Designprogramstobeconnectedtootherprograms.

*RuleofSeparation:Separatepolicyfrommechanism;separateinterfacesfromengines.

EricS.Raymond在她著作《TheArtofUnixProgramming》中把Unix哲学上升为普遍合用工程哲学,即“KISS原则”(KeepitSimple,Stupid)(保持简朴化、傻瓜化)。然后她描述了这个KISS原则和Unix规范之间文化纽带,尽管她也明明懂得在Unix编程实践中找到违背这些规则例子代码也是不困难和不令人惊奇。

模块化原则:写出具备清晰接口简朴模块。

简洁性原则:简洁比聪颖更重要。

组合性原则:设计程序是为了和其他程序对接。

分离性原则:把方略从机制中分离出来,把接口从上分离出来。(译者注:这句太难懂了,个人理解:从面向对象角度说,就是把解决问题办法和问题自身分离,也就是办法和数据分离;然后把接口从办法中分离出来。)MrRaymondofferedseveralmorerulesbutthesefourdescribeessentialcharacteristicsoftheEMC2

motioncontrolsystem.

Raymond先生还提出了某些其他原则,但这四个原则就是EMC2运动控制系统最重要特性。TheModularityruleiscritical.Throughoutthesehandbooksyouwillfindtalkoftheinterpreteror

taskplannerormotionorHAL.Eachoftheseisamoduleorcollectionofmodules.It’smodularity

thatallowsyoutoconnecttogetherjustthepartsyouneedtorunyourmachine.

模块化原则是最核心原则。纵观EMC2系列手册,你会发现无论是G代码解释器、任务规划器、运动控制器,还是硬件抽象层(HAL),它们都是模块或模块集合。模块化使你能把需要功能集成起来构成一种系统,而不需要某些则可以去掉。TheClarityruleisessential.EMC2isaworkinprogress–itisnotfinishednorwilliteverbe.Itis

completeenoughtorunmostofthemachineswewantittorun.Muchofthatprogressisachieved

becausemanyusersandcodedevelopersareabletolookattheworkofothersandbuildonwhat

theyhavedone.

简洁性原则是最重要原则。EMC2项目已经可以在诸多机器系统上运营,但它依然是一种正在进行项目,它永远也不会停止。EMC2成功归功于许多顾客以及代码开发人员。由于遵守了简洁性编程原则,人们才可以互相看到彼此工作,并很容易理解代码以及为其添加新内容。TheCompositionruleallowsustobuildapredictablecontrolsystemfromthemanymodules

availablebymakingthemconnectable.Weachieveconnectabilitybysettingupstandardinterfaces

tosetsofmodulesandfollowingthosestandards.

组合性原则促使开发人员为模块提供可连接性,这样使用人员就可以从许多模块中只选取她们需要模块来构成目的系统。EMC2组合性是通过原则接口以及符合该接口原则模块实现。TheSeparationrulerequiresthatwemakedistinctpartsthatdolittlethings.Byseparatingfunctions

debuggingismucheasierandreplacementmodulescanbedroppedintothesystemand

comparisonseasilymade.

分离性原则规定开发人员尽量分解系统功能,并用不同部件实现它们。这样做好处一是便于调试,二是可以以便比较同一功能不同实现(由于它们有相似接口,可以很容易组合进系统中进行测试)。WhatdoestheUnixwaymeanforyouasauserofEMC2.Itmeansthatyouareabletomakechoices

abouthowyouwillusethesystem.Manyofthesechoicesareapartofmachineintegration,butmany

alsoaffectthewayyouwilluseyourmachine.Asyoureadyouwillfindmanyplaceswhere

youwillneedtomakecomparisons.Eventuallyyouwillmakechoices,"I’llusethisinterfacerather

thanthat”or,“I’llwritepartoffsetsthiswayratherthanthatway."Throughoutthesehandbooks

wedescribetherangeofabilitiescurrentlyavailable.

那么Unix规范对于使用者又意味着什么呢?它意味着你可以选取如何配备EMC2系统功能以适应你数控系统,也就是说配备EMC2系统是设计数控机床工作一某些。同步EMC2某些功能或配备又反过来影响你设计数控机床办法和过程。在阅读系列手册过程中,你会一边看一边比较,最后你也许说:“我将使用这个接口而不使用那个接口”,或者“我将这样使用部件偏移而不会那样使用”。继续看下去吧,在系列手册中,咱们将讨论所有这些功能和配备。AsyoubeginyourjourneyintousingEMC2weoffertwocautionarynotes:2

PraphrasingthewordsofDougGwynonUNIX:"emc2wasnotdesignedtostopitsusersfrom

doingstupidthings,asthatwouldalsostopthemfromdoingcleverthings."

LikewisethewordsofStevenKing:"emc2isuser-friendly.Itjustisn’tpromiscuousabout

whichusersit’sfriendlywith."

在你继续阅读之前,咱们提供两条注意事项:EMC2不会防止它使用者干傻事,由于那会同样防止它使用者干聪颖事。EMC2必定是顾客和谐,只但是它在对哪个顾客和谐问题上,用情比较专一而已。第2章

EMC2TheEnhancedMachineControl

2.1

关于本手册ThefocusofthismanualisonusingEMC.ItisintendedtobeusedonceEMCisinstalledand

configured.ForstandardinstallationsseetheGettingStartedGuideforstepbystepinstructions

togetyouupandgoing.FordetailedinformationoninstallationandconfigurationofEMCseethe

IntegratorManual.

本手册焦点是如何使用EMC2。当EMC2安装并配备完毕后应当阅读本手册。关于简易安装EMC2问题,请参见入门手册“GettingStartedGuide”。关于安装和配备详细信息,请参见综合手册“IntegratorManual”。

2.2

EMC2如何工作TheEnhancedMachineController(EMC2)isalotmorethanjustanotherCNCmillprogram.It

cancontrolmachinetools,robots,orotherautomateddevices.Itcancontrolservomotors,stepper

motors,relays,andotherdevicesrelatedtomachinetools.TherearefourmaincomponentstotheEMC2software:amotioncontroller,adiscreteI/Ocontroller,

ataskexecutorwhichcoordinatesthem,andgraphicaluserinterfaces.Inadditionthereis

alayercalledHAL(HardwareAbstractionLayer)whichallowsconfigurationofEMC2withoutthe

needofrecompiling.

可不敢把EMC2想象成此外一种CNC数控加工程序,它能做可多了。它可以控制机床、机器人、自动化设备,还能控制伺服电机、步进电机、继电器以及其他机床电器。

EMC2由四个重要某些:运动控制器、离散IO控制器、任务执行器(用来协调这四个部件)、图形顾客界面。此外尚有一种硬件抽象层HAL(HardwareAbstractionLayer),有了HAL,无需重新编译EMC2,就可以按照实际需要配备EMC2硬件。Figure2.1showsasimpleblockdiagramshowingwhatatypical3-axisEMC2systemmightlook

like.Thisdiagramshowsasteppermotorsystem.ThePC,runningLinuxasitsoperatingsystem,

isactuallycontrollingthesteppermotordrivesbysendingsignalsthroughtheprinterport.These

signals(pulses)makethestepperdrivesmovethesteppermotors.TheEMC2canalsorunservo

motorsviaservointerfacecardsorbyusinganextendedparallelporttoconnectwithexternal

controlboards.AsweexamineeachofthecomponentsthatmakeupanEMC2systemwewill

remindthereaderofthistypicalmachine.

图2.1(参见英文原版图片)方框图展示了一种典型3轴数控系统看起来样子。这是一种步进电机系统。PC机上运营着Linux操作系统和EMC2程序,控制信号则从打印口(并口)传送到电机驱动器上,电机驱动器依照控制信号驱动步进电机(固然EMC2也可以通过伺服接口卡或使用与扩展并口相连外部控制卡来控制伺服电机)。咱们接下来会简介EMC2系统每一种构成某些,在简介过程中也许会重复提到这幅图片。

2.3

顾客接口AuserinterfaceisthepartoftheEMC2thatthemachinetooloperatorinteractswith.TheEMC2

comeswithseveraltypesofuserinterfaces:

AXISanOpenGL-basedGUI(GraphicalUserInterface),withaninteractiveG-Codepreviewer.

Thisinterfaceisoneofthefewthatarestillunderactivedevelopmentandimprovement.

Keystickacharacter-basedscreengraphicsprogramsuitableforminimalinstallations(without

theXserverrunning).

XemcanXWindowsprogram

twoTcl/Tk-basedGUIsnamedTkEMCandMini

aHALbaseduserinterfacecalledhalui,whichallowstocontrolemc2usingknobsand

switches

atelnetbaseduserinterfacecalledemcrsh,whichallowscommandstobesenttoemc2from

remotecomputers

顾客接口是EMC2一某些,机床操作员与这个接口交互从而达到操作机床目。EMC2提供了几种不同顾客接口供顾客选取使用:

AXIS界面:是一种基于“OpenGL”图形顾客界面,有一种交互式G代码预览器。AXIS界面当前依然处在持续开发升级过程中。

Keystick界面:是一种基于字符界面,没有图形,只但是字符排列有规律,看起来像图形同样。只能用键盘操作。如果目的系统没有Xserver,还想使用EMC2话,就只能用这个将就了。

Xemc界面:一种XWindows图形顾客界面。

TkEMC界面和Mini界面:两个基于“Tcl/Tk”图形顾客界面。

halui顾客接口:基于HAL顾客接口,容许使用开关、旋钮控制EMC2系统。

emcrsh顾客接口:基于telnet顾客接口,容许用远程计算机发来命令控制EMC2系统。2.4

语言EMC2usestranslationfilestotranslateEMCUserInterfacesintomanylanguages.Youjustneedto

loginwiththelanguageyouintendtouseandwhenyoustartupEMCitcomesupinthatlanguage.

IfyourlanguagehasnotbeentranslatedcontactadeveloperontheIRCorthemailinglistifyou

canassistinthetranslation.

EMC2使用翻译文献把顾客接口翻译成各种语言。你只需用你想使用语言登录进操作系统,然后当你启动EMC2时,你看到界面就已经采用你想使用语言了。如果你想使用语言还没有被翻译,而你正好想帮忙翻译,可以通过“IRC”或邮件列表方式与开发人员获得联系。2.5

像机床操作员同样思考Thisbookwillnotevenpretendthatitcanteachyoutorunamilloralathe.Becomingamachinist

takestimeandhardwork.Anauthoroncesaid,"Welearnfromexperience,ifatall."Brokentools,

gougedvices,andscarsaretheevidenceoflessonstaught.Goodpartfinish,closetolerances,and

carefulworkaretheevidenceoflessonslearned.Nomachine,nocomputerprogram,cantakethe

placeofhumanexperience.AsyoubegintoworkwiththeEMC2program,youwillneedtoplaceyourselfinthepositionof

operator.Youneedtothinkofyourselfintheroleoftheoneinchargeofamachine.Itisamachine

thatiseitherwaitingforyourcommandorexecutingthecommandthatyouhavejustgivenit.

Throughoutthesepageswewillgiveinformationthatwillhelpyoubecomeagoodoperatorofthe

EMC2mill.Youwillneedsomeinformationrightupfrontheresothatthefollowingpageswillmake

sensetoyou.

本书不能教你如何开动一台铣床或车床,成为这方面专家需要时间和艰难努力。有位作家曾经说过:“如果咱们学到了什么,那一定是在亲身经历中学到”。破损刀具、凿坏工装、伤痕累累产品是咱们得到教训,完美收刀、精密加工、精细产品是咱们得到经验。没有任何机床、计算机软件能取代人阅历和经验。

当前要和EMC2一起工作了,你需要把自己放到机床操作员位置,要懂得是你主宰着机床,而机床就在等待你命令,执行你命令。固然通过学习系列手册,你会得到某些信息,它们将协助你成为一名好EMC2铣床操作员。在继续之前,你也许需要某些基本信息,接下来某些篇幅将协助你找找感觉。2.6

操作方式ModesofOperationWhenanEMC2isrunning,therearethreedifferentmajormodesusedforinputtingcommands.

TheseareManual,Auto,andMDI.Changingfromonemodetoanothermakesabigdifferencein

thewaythattheEMC2behaves.Therearespecificthingsthatcanbedoneinonemodethatcan

notbedoneinanother.AnoperatorcanhomeanaxisinmanualmodebutnotinautoorMDI

modes.AnoperatorcancausethemachinetoexecuteawholefilefullofG-codesintheautomode

butnotinmanualorMDI.

当一种EMC2系统运营时,输入命令方式重要有三种:手动、自动、MDI。在这三种方式下,EMC2行为体现差别很大。有些事情在一种方式下可以,在另一种方式下却不可以。例如在手动方式时,操作员可以原点复归某个轴,但在自动和MDI方式下却不行。又例如在自动方式下,操作员可以执行一种所有是G代码文献,但在手动和MDI方式下却不行。Inmanualmode,eachcommandisenteredseparately.Inhumantermsamanualcommandmight

be"turnoncoolant"or"jogXat25inchesperminute".Theseareroughlyequivalenttoflippinga

switchorturningthehandwheelforanaxis.Thesecommandsarenormallyhandledononeofthe

graphicalinterfacesbypressingabuttonwiththemouseorholdingdownakeyonthekeyboard.

Inautomode,asimilarbuttonorkeypressmightbeusedtoloadorstarttherunningofawhole

programofG-codethatisstoredinafile.IntheMDImodetheoperatormighttypeinablockof

codeandtellthemachinetoexecuteitbypressingthe<return>or<enter>keyonthekeyboard.

在手动方式下,每个命令是分开输入,用人类语言讲,这些命令类似于“启动冷却”或者“在X轴上每分钟迈进25英寸”等等,它们大体相称于拨动一种开关或者转动某个轴上手轮,详细操作则是在某个图形顾客界面上用鼠标点击某个按钮或按住键盘上某个按键完毕。在自动方式下,点击一种按钮就可以装载或启动预先存储在某个文献里面所有G代码程序。在MDI方式下,操作员可以键入一批代码,然后按回车键命令机床执行。Somemotioncontrolcommandsareavailableandwillcausethesamechangesinmotioninall

modes.TheseincludeABORT,ESTOP,andFEEDRATEOVERRIDE.Commandsliketheseshouldbe

selfexplanatory.TheAXISuserinterfacehidessomeofthedistinctionsbetweenAutoandtheothermodesbymaking

Auto-commandsavailableatmosttimes.ItalsoblursthedistinctionbetweenManualandMDI

becausesomeManualcommandslikeTouchOffareactuallyimplementedbysendingMDIcommands.

Itdoesthisbyautomaticallychangingtothemodethatisneededfortheactiontheuser

hasrequested.

有些运动控制命令在所有操作方式下均可使用,效果也相似。涉及ABORT、ESTOP、FEEDRATEOVERRIDE等。这些命令都具备自解释特点。

AXIS顾客界面有一种特点,就是它隐藏了某些如上所述三种操作方式区别。它在大某些状况下都能提供自动命令,从而隐藏了自动方式和其他两种方式区别;它也淡化了手动方式和MDI方式区别,像“TouchOff”这种手动命令也可以通过发送MDI命令来执行。在顾客提出祈求时,它会自动切换到相应操作方式,从而实现这种隐藏,而顾客在感觉上没有什么异常。第3章

顾客概念UserConceptsThischaptercoversimportantuserconceptsthatshouldbeunderstoodbeforeattemptingtoruna

CNCmachinewithgcode.

本章包括重要顾客概念,在使用G代码运营一种CNC机床之前,应当理解本章概念。3.1

轨迹控制TrajectoryControl3.1.1

轨迹规划TrajectoryPlanningTrajectoryplanning,ingeneral,isthemeansbywhichEMCfollowsthepathspecifiedbyyourG

Codeprogram,whilestilloperatingwithinthelimitsofyourmachinery.

AGCodeprogramcanneverbefullyobeyed.Forexampleimagineyouspecifyasasingle-line

programthefollowingmove:G1X1F10(G1islinearmove,X1isthedestination,F10isthespeed)Inreality,thewholemovecan’tbemadeatF10,sincethemachinemustacceleratefromastop,

movetowardX=1,andthendeceleratetostopagain.SometimespartofthemoveisdoneatF10,

butformanymoves,especiallyshortones,thespecifiedfeedrateisneverreachedatall.Having

shortmovesinyourGCodecancauseyourmachinetoslowdownandspeedupforthelonger

movesifthe"naivecamdetector"isnotemployedwithG64Pn.Thebasicaccelerationanddecelerationdescribedaboveisnotcomplexandthereisnocompromise

tobemade.IntheINIfilethespecifiedmachineconstraintssuchasmaximumaxisvelocityand

axisaccelerationmustbeobeyedbythetrajectoryplanner.

轨迹规划是指EMC2跟踪G代码所指定途径办法,轨迹规划时不能超过机床工作台运营范畴。从某种限度讲,G代码程序永远不能被机床严格执行。就例如下面这一行程序:

G1X1F10(G1表达线性移动,X1是目位置,F10代表速度)

事实上,这个动作不也许完全以F10速度完毕,由于机床必要从静止开始加速,向X=1位置进发,在要到达目的位置之前还要减速最后停止。这样就只有某些运动是以F10完毕,如果路程比较短,也许F10这个速度主线就不会达到。在“G64Pn”方式下,如果不指定“naivecamdetector”参数即“Q-”参数,则采用短运动段会让机床运营变慢,采用长运动段可以让机床运营快一点。

机床加速性能和减速性能取决于机床自身,经实验拟定后来,作为机床特性固定下来,没什么要讨论。此外机床最大速度也是机床一种特性。这些特性参数都保存在INI文献中,轨迹规划器必要遵守这些特性。3.1.2

途径跟随PathFollowingAlessstraightforwardproblemisthatofpathfollowing.WhenyouprogramacornerinGCode,the

trajectoryplannercandoseveralthings,allofwhicharerightinsomecases:itcandeceleratetoa

stopexactlyatthecoordinatesofthecorner,andthenaccelerateinthenewdirection.Itcanalsodo

whatiscalledblending,whichistokeepthefeedrateupwhilegoingthroughthecorner,makingit

necessarytoroundthecorneroffinordertoobeymachineconstraints.Youcanseethatthereisa

tradeoffhere:youcanslowdowntogetbetterpathfollowing,orkeepthespeedupandhaveworse

pathfollowing.Dependingontheparticularcut,thematerial,thetooling,etc.,theprogrammer

maywanttocompromisedifferently.

Rapidmovesalsoobeythecurrenttrajectorycontrol.Withmoveslongenoughtoreachmaximum

velocityonamachinewithlowaccelerationandnopathtolerancespecified,youcangetafairly

roundcorner.

途径跟随问题要稍微简朴某些。当你用G代码设计产品有个棱角时候,轨迹规划器有几种不同轨迹规划方式解决这个棱角:例如可以减速并停在棱角所处坐标位置,然后再按照新方向加速并离开棱角;它还可以采用混合模式(blending):在通过棱角时保持进给速度,由于机床特性方面限制,这样做成果必然在棱角处产生一种圆角。因而在棱角处途径跟随就存在这样一种状况:要获得更好途径跟随效果就必要减速,要保持速度,就必然导致差一点途径跟随效果。详细如何抉择,要由程序员依照详细产品、材料、刀具等状况权衡而定。

迅速加工也遵循当前采用轨迹控制方式。例如采用G64方式,不指定误差条件,且加速度较低时,让机床运营足够长距离并达到最大速度,就可以得到非常好圆角效果。3.1.3

编程拟定轨迹规划方式ProgrammingthePlannerThetrajectorycontrolcommandsareasfollows:

轨迹控制命令如下:G61(ExactPathMode)visitstheprogrammedpointexactly,eventhoughthatmeansitmight

temporarilycometoacompletestopinordertochangedirectiontothenextprogrammed

point.

G61.1(ExactStopMode)tellstheplannertocometoanexactstopateverysegment’send.

G61:精确途径方式。精确跟踪编程位置,如果到下一种编程位置需要变化方向,则机床会完全停止再变化方向。

G61.1:准拟定位方式。在每一种程序段结束时,机床都会停止到相应编程位置。(无论下一种运动方向与否需要变化)G64(BlendWithoutToleranceMode)G64isthedefaultsettingwhenyoustartEMC.G64isjust

blendingandthenaivecamdetectorisnotenabled.G64andG64P0telltheplannertosacrifice

pathfollowingaccuracyinordertokeepthefeedrateup.Thisisnecessaryforsome

typesofmaterialortoolingwhereexactstopsareharmful,andcanworkgreataslongasthe

programmeriscarefultokeepinmindthatthetool’spathwillbesomewhatmorecurvythan

theprogramspecifies.WhenusingG0(rapid)moveswithG64usecautiononclearancemoves

andallowenoughdistancetoclearobstaclesbasedontheaccelerationcapabilitiesofyour

machine.

G64:不附加误差条件混合方式。这个方式也是启动EMC2时默认方式。G64只是混合方式,没有采用“naivecamdetector”功能。“G64”和“G64P0”是同样效果,都是告诉轨迹规划器牺牲途径跟随精度,保证提高进给速度。有时候程序设计人员就想要一种圆角,那么这个模式就用上了,固然设计人员要清晰采用这种方式加工出圆角也许和设计值有一定偏差,曲率会大一点。当使用“G0G64”组合进行迅速加工时,要依照机床加速度性能预留足够加速空间以保证切削效果。G64P-Q-(BlendWithToleranceMode)Thisenablesthe"naivecamdetector"andenablesblending

withatolerance.IfyouprogramG64P0.05,youtelltheplannerthatyouwantcontinuous

feed,butatprogrammedcornersyouwantittoslowdownenoughsothatthetoolpathcan

staywithin0.05userunitsoftheprogrammedpath.Theexactamountofslowdowndepends

onthegeometryoftheprogrammedcornerandthemachineconstraints,buttheonlything

theprogrammerneedstoworryaboutisthetolerance.Thisgivestheprogrammercomplete

controloverthepathfollowingcompromise.Theblendtolerancecanbechangedthroughout

theprogramasnecessary.BewarethataspecificationofG64P0hasthesameeffectasG64

alone(above),whichisnecessaryforbackwardcompatibilityforoldGCodeprograms.Seethe

GCodeChapterformoreinformationonG64P-Q-.

G64P-Q-:附加误差条件混合方式。其中“Q-”参数将打开“naivecamdetector”功能,“P-”参数指定误差条件。程序代码“G64P0.05”批示轨迹规划器采用持续加工方式(即混合方式blending),但要在棱角处降速以保证轨迹误差不不不大于0.05个顾客单位(英寸或毫米)。详细降速限度取决于待加工产品几何尺寸以及机床特性,但这些算法都不需要程序员考虑,程序员只需要考虑她想要多少误差就行了。这种方式给了程序员很大轨迹跟随控制力,在程序中,她可以随时变化这个误差值来获得她想要任何效果。要注意是“G64P0”和“G64”是同样效果,它只是为了和旧G代码程序保持兼容而设计。参照G代码有关章节可以获得更多关于“G64P-Q-”信息。BlendingwithouttoleranceThecontrolledpointwilltoucheachspecifiedmovementatatleast

onepoint.Themachinewillnevermoveatsuchaspeedthatitcannotcometoanexactstop

attheendofthecurrentmovement(ornextmovement,ifyoupausewhenblendinghasalready

started).Thedistancefromtheendpointofthemoveisaslargeasitneedstobetokeepup

thebestcontouringfeed.

不附加误差条件混合方式(两个原则):一是实际轨迹控制点至少要通过每个设计轨迹运营段中至少一种点;二是机床不会加速到一种它想停都停不下来速度(当轨迹规划器觉得按照当前机床特性和当前速度以及当前位置与运动终点距离计算,它没办法在运动终点停止,它就会停止加速或者开始减速)。因此要保持最佳轮廓进给速度,就应当在终点此前留足够距离供机床加速和减速用。NaiveCamDetectorSuccessiveG1movesthatinvolveonlytheXYZaxesthatdeviatelessthan

Q-fromastraightlinearemergedintoasinglestraightline.Thismergedmovementreplaces

theindividualG1movementsforthepurposesofblendingwithtolerance.Betweensuccessivemovements,thecontrolledpointwillpassnomorethanP-fromtheactual

endpointsofthemovements.Thecontrolledpointwilltouchatleastonepointoneachmovement.

Themachinewillnevermoveatsuchaspeedthatitcannotcometoanexactstopattheendof

thecurrentmovement(ornextmovement,ifyoupausewhenblendinghasalreadystarted)OnG2/3movesintheG17(XY)planewhenthemaximumdeviationofanarcfromastraightline

islessthantheG64Q-tolerancethearcisbrokenintotwolines(fromstartofarctomidpoint,

andfrommidpointtoend).thoselinesarethensubjecttothenaivecamalgorithmforlines.Thus,

line-arc,arc-arc,andarc-linecasesaswellasline-linebenefitfromthe"naivecamdetector".

Thisimprovescontouringperformancebysimplifyingthepath.

NaiveCamDetector:在持续运动之间,当背面G1直线运动代码坐标只含XYZ轴时,如果该运动偏离上一运动直线值不大于“Q-”参数,则该运动合并到上一运动直线中。这样做目是要把误差混合掉。

在持续运动之间,实际通过控制点和理论(程序)上端点之间不能有不不大于“P-”参数误差。实际轨迹控制点至少要通过每个设计轨迹运营段中至少一种点,机床不会加速到一种它想停都停不下来速度(当轨迹规划器觉得按照当前机床特性和当前速度以及当前位置与运动终点距离计算,它没办法在运动终点停止,它就会停止加速或者开始减速)(以混合方式开始运营后,虽然暂停了机床运营,那么再启动后依然遵循这些原则,只但是运动终点也许会重新计算了)。

在G17(XY)平面上做G2、G3圆弧运动时,如果圆弧偏离运动方向偏离值不大于Q-参数,该圆弧将由两个直线运动(起点到圆弧中点、圆弧中点到圆弧终点)代替,而这两个直线运动也合用“naivecamdetector”算法。这样一来,直线转圆弧、圆弧转圆弧、圆弧转直线运动都也许被化解为直线转直线运动,也就都能享有“naivecamdetector”算法好处,简化了途径,提高了轮廓加工性能。Inthefollowingfigurethebluelinerepresentstheactualmachinevelocity.Theredlinesarethe

accelerationcapabilityofthemachine.Thehorizontallinesbeloweachplotistheplannedmove.

Theupperplotshowshowthetrajectoryplannerwillslowthemachinedownwhenshortmovesare

encounteredtostaywithinthelimitsofthemachinesaccelerationsettingtobeabletocometoan

exactstopattheendofthenextmove.ThebottomplotshowstheeffectoftheNaiveCamDetector

tocombinethemovesanddoabetterjobofkeepingthevelocityasplanned.

下图中(参见英文原版图片,实则是上下两个图),蓝线代表程序设定机床速度,红线代表机床加速能力,每张图最下面水平线代表规划运动路线(可以看出上图规划路线提成了几段,由不同颜色区别)。上图显示状况是:在小运动段状况下,为了能在每个运动段终点停下来,轨迹规划器会依照机床加速度参数限制状况给机床减速直至停止;下图显示是采用“NaiveCamDetector”算法效果,重组了运动并较好保持了盼望速度。3.1.4

规划“移动”(最小运动段距离计算)

PlanningMovesMakesuremovesare"longenough"tosuityourmachine/material.Principallybecauseoftherule

that"themachinewillnevermoveatsuchaspeedthatitcannotcometoacompletestopatthe

endofthecurrentmovement",thereisaminimummovementlengththatwillallowthemachineto

keepuparequestedfeedratewithagivenaccelerationsetting.TheaccelerationanddecelerationphaseeachusehalftheinifileMAX_ACCELERATION.Inablend

thatisanexactreversal,thiscausesthetotalaxisaccelerationtoequaltheinifileMAX_ACCELERATION.

Inothercases,theactualmachineaccelerationissomewhatlessthantheinifileaccelerationTokeepupfeedrate,themovemustbelongerthanthedistanceittakestoacceleratefrom0tothe

desiredfeedrateandthenstopagain.UsingAas1/2theinifileMAX_ACCELERATIONandFas

thefeedrate*inunitspersecond*,theaccelerationtimeista=F/Aandtheaccelerationdistance

isda=1/2*F*tathedecelerationtimeanddistancearethesame,makingthecriticaldistanced

=da+dd=2*da=F^2/A.

Forexample,forafeedrateof1inchpersecondandanaccelerationof10inch/sec^2,thecritical

distanceis1^2/10=.1inch.Forafeedrateof.5inchpersecond,thecriticaldistanceis.5^2/

10=.025inch.

用某个机床切削某种物质时,要保证一次移动足够长距离。理由依然是“机床不会加速到一种它想停都停不下来速度”。在给定加速度状况下,要达到某个速度,可以算出一种必要满足最小移动距离。

INI文献中有一种参数叫“MAX_ACCELERATION”,加速阶段和减速阶段各分一半“MAX_ACCELERATION”。在混合模式状况下,加速阶段使用所有“MAX_ACCELERATION”,其他状况下机床实际加速性能要比ini文献里面“MAX_ACCELERATION”小某些。

要保持进给速度,运动段长度必要不不大于机床加速到该速度并重新停止所需要路程。设:

A=1/2*MAX_ACCELERATION

F为需要达到速度,单位是units每秒(“unitspersecond”),units是英寸或毫米。

则加速时间ta=F/A,加速距离是da=1/2*F*ta,减速时间和距离同加速时间和距离相似,则总距离为:

d=da+dd=2*da=F*F/A

例如,进给速度是1英寸每秒,加速度是10英寸每平方秒,则最小距离为1*1/10=0.1英寸。同样加速度如果加速到0.5英寸每秒,则最小距离为0.5*0.5/10=0.25英寸。3.2

G代码3.2.1

默认配备WhenEMCfirststartsupmanyGandMcodesareloadedbydefault.ThecurrentactiveGandM

codescanbeviewedontheMDItabinthe"ActiveG-Codes:"windowintheAXISinterface.These

GandMcodesdefinethebehaviorofEMCanditisimportantthatyouunderstandwhateachone

doesbeforerunningEMC.ThedefaultscanbechangedwhenrunningaG-Codefileandleftina

differentstatethanwhenyoustartedyourEMCsession.Thebestpracticeistosetthedefaults

neededforthejobinthepreambleofyourG-Codefileandnotassumethatthedefaultshavenot

changed.PrintingouttheG-CodeQuickReference(15.2)pagecanhelpyourememberwhateach

oneis.

EMC2启动时,某些G代码和M代码会默认启动。在“AXIS”界面MDI页“ActiveG-Codes:”窗口里可以看到这些默认启动代码。这些代码定义了EMC2默认行为,在运营EMC2之前理解它们含义非常重要。在执行G代码文献时,可以在G代码文献中变化这些默认设立,从而变化EMC2行为。在进行详细加工工作时,要在相应G代码文献中设定你想要任何默认设立,不要指望EMC2默认启动设立(它们随时也许会变)。在15.2节“G代码迅速参照”非常有用,打印一份在手边以备随时参照。3.2.2

进给速度FeedRateHowthefeedrateisapplieddependsonifanaxisinvolvedwiththemoveisarotaryaxis.Readand

understandtheFeedRatesection(9.2.5)ifyouhavearotaryaxisoralathe.

进给速度拟定和有关轴与否是旋转轴关于。如果你系统是一种车床或者有一种旋转轴,一定要阅读一下9.2.5节内容。3.2.3

刀具半径补偿ToolRadiusOffset(G41/42)requiresthatthetoolbeabletotouchsomewherealongeachprogrammed

movewithoutgougingthetwoadjacentmoves.Ifthatisnotpossiblewiththecurrenttool

diameteryouwillgetanerror.Asmallerdiametertoolmayrunwithoutanerroronthesamepath.

Thismeansyoucanprogramacuttertopassdownapaththatisnarrowerthanthecutterwithout

anyerrors.SeetheToolCompensationSection(11.3)formoreinformation.

刀具半径补偿(G41、G42)后来,刀具要可以沿着编程运动路线运动而不会干涉到两边相邻运动路线,如果用当前刀具半径不能满足这个条件,也许会产生一种错误。尝试用小一点半径刀具走相似路线也许会消除这个错误。同样道理,如果一种刀具走某个路线没有错误,那么用比它细某些刀具必定也不会有错误。关于刀具补偿信息还可参见11.3节。3.3

原点复归HomingAfterstartingEMC2eachaxismustbehomedpriortorunningaprogramorrunningaMDIcommand.

Ifyouwanttodeviatefromthedefaultbehavior,orwanttousetheMiniinterfaceyouwillneedto

settheoptionNO_FORCE_HOMING=1inthe[TRAJ]sectionofyourinifile.Moreinformationon

homingcanbefoundintheIntegratorsManual.

启动EMC2后来,要想运营程序或MDI命令,还必要先给每个轴执行原点复归操作。要避免这样做,或者要使用Mini界面,可以在ini文献“TRAJ”参数段设立“NO_FORCE_HOMING=1”达到目。关于原点复归详细信息参见综合手册“IntegratorsManual”。3.4

刀具更换ToolChangesThereareseveraloptionswhendoingmanualtoolchanges.Seethe[EMCIO]sectionoftheIntegrators

Manualforinformationonconfigurationoftheseoptions.AlsoseetheG28andG30sectionof

theUserManual.

有几种关于手动换刀选项。关于它们配备信息请参照综合手册“IntegratorsManual”中“EMCIO”某些。同步也参照一下本手册G28和G30某些。3.5

坐标系统TheCoordinateSystemscanbeconfusingatfirst.BeforerunningaCNCmachineyoumustunderstand

thebasicsofthecoordinatesystemsusedbyEMC.IndepthinformationontheEMC

CoordinateSystemsisinthecoordinatesection10ofthismanual.

刚开始学EMC2时也许会觉得坐标系统有点难学。但是在实际运营一种机床此前,还是必要先弄清晰EMC2使用坐标系统某些基本概念。关于EMC2坐标系统更深知识在本手册第10章可以找到。3.5.1

G53机床坐标系统WhenyouhomeEMCyousettheG53MachineCoordinateSystemto0foreachaxishomed.

Noothercoordinatesystemsortooloffsetsarechangedbyhoming.

TheonlytimeyoumoveintheG53machinecoordinatesystemiswhenyouprogramaG53onthe

samelineasamove.NormallyyouareintheG54coordinatesystem.

当你执行EMC2原点复归命令时,就相称于设定了G53机床坐标系统各个轴原点。

原点复归操作不变化其他坐标系统或刀具补偿设立。

只有你在代码行里面指定G53代码,你才在G53机床坐标系里移动。其他状况下你处在G54坐标系里面。3.5.2

G54G59.3顾客坐标系统NormallyyouusetheG54CoordinateSystem.Whenanoffsetisappliedtoacurrentusercoordinate

systemasmallblueballwithlineswillbeatthemachineoriginwhenyourDROisdisplaying

"Position:RelativeActual"inAxis.IfyouroffsetsaretemporaryusetheZeroCoordinateSystem

fromtheMachinemenuorprogramG10L2P1X0Y0Z0attheendofyourGCodefile.Changethe

"P"numbertosuitthecoordinatesystemyouwishtocleartheoffsetin.

OffsetsstoredinausercoordinatesystemareretainedwhenEMCisshutdown.

Usingthe"TouchOff"buttoninAxissetsanoffsetforthechosenUserCoordinateSystem.

普通状况下你会使用G54坐标系统。当对一种顾客坐标系统设立了偏移并且DRO页面里轴坐标显示格式是“Position:RelativeActual”时,一种被线穿过小蓝色球将出当前机床原点位置。如果你偏移是暂时,可以用“Machine->ZeroCoordinateSystem”菜单命令删除偏移,也可以在程序尾部用“G10L2P1X0Y0Z0”代码删除偏移。“P”背面数字是想要删除偏移顾客坐标系统编号。

EMC2关闭时,保存在顾客坐标系统偏移值不会丢失。

在AXIS顾客界面中使用“TouchOff”按钮为选定顾客坐标系统设立偏移值。3.5.3

失位后怎么办Ifyou’rehavingtroublegetting0,0,0ontheDROwhenyouthinkyoushould,youmayhavesome

offsetsprogrammedinandneedtoremovethem.

MovetotheMachineoriginwith

G53G0X0Y0Z0

ClearanyG92offsetwith

G92.1

UsetheG54coordinatesystemwith

G54

SettheG54coordinatesystemtobethesameasthemachinecoordinatesystemwith

G10L2P1X0Y0Z0

Turnofftooloffsetsw

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论