数控编程的学习与心得
一、数控机床的加工原理
学习数控加工技术首先得弄清数控加工的工作原理。首先将被加工零件图上的几何信息和工艺信息数字化,即将刀具与工件的相对运动轨迹、加工过程的切削速度、进给速度、工件和刀具的交换、冷却液的开关等信息都按规定的代码和格式编成加工程序,接着将该程序送到数控系统;数控系统则按照程序的要求,先进行相应的运算、处理,然后发出控制命令是个坐标轴、主轴及辅助动作相互协调,实现刀具与工件间的相对运动实现零件的加工。
二、数控加工中涉及的坐标系
数控机床上各个运动执行部件的动作都是由数控驱动单元(CNC装置)控制的。因此为了建立各个运动部件相对于机床的相对位置的量化关系可借助坐标系来实现。这个坐标系是机床出厂是生产厂家已经确定的称为机床坐标系,建立机床坐标系的原点称之为机床原点或零点。参考点是机床上坐标系中一个固定不变的位置点。通常将参考点与机床坐标系原点设置为同一点,所以有些机床上回参考点操作也叫回零点操作。在数控编程中通常以零件图上其中一
点来建立坐标系进行编程,这个点称之为工件编程零点,这个坐标系称为工件坐标系。建立工件坐标系的目的在于方便和简化编程。
三、数控编程的方法
数控编程的方法主要有两种:一是手工编程;二是自动编程。两种编程方法各有优缺点和适用于不同的加工范围。手工编写的程序具有程序简单精炼、易于读懂、程序调整容易、适用于编写比较简单的零部件的加工程序,但是手工编程难以实现复杂曲面的加工。而自动编程是指用计算机来编制数控加工程序,自动编程的效率高、正确性好、操作安全可靠、能实现手工编程无法实现的复杂曲面的加工,但自动编程编写的程序比较冗长、不精炼、有些情况下走到轨迹不是很合理比较耗费工时,所以编程人员要根据零件实际情况选择合理对的编程方式。
四、常用机床的编程
(1)数控车床编程。数控车削加工过程中通常会用到车削循环指令,车削循环指令主要有简单车削循环指令和复合循环车削指令,而简单车削循环指令与复合车削循环指令里面又各
包含几种不同的车循循环指令。面对不同的车削循环指令究竟该用哪一种合理,依赖于学习者对各种车削循环指令的走刀轨迹及走刀特点有一定的了解才能做出合理的选择。对于车削比较细长的工件而用到尾座和顶尖时,编写加工程序时应谨慎选择退刀和换刀的位置防止刀架与顶尖或是尾座发生碰撞。另外在车削锥面和圆弧时由于刀位点的变动,往往会造成过切或欠切的现象,可借助刀尖半径补偿功能来消除此类加工误差。
(2)数控铣床编程。数控铣主要用于加工平面类、变斜角类、曲面类、箱体类零件。数控铣床在加工过程中实际是控制刀具中心轨迹来实现铣削加工的,因此若不采取措施直接编程加工,所加工的零件在尺寸方面必然达不到图纸的要求。决解这个问题的方法主要有两种:一是编程时在相应的尺寸上加上或减去一个刀具半径,二是运用刀具半径补偿功能来补偿一个刀具半径。在建立刀补的过程中刀具首先运动到程序中指定的目标位置,然后再根据刀具半径补偿中储存的数据相对与原轨迹偏离一个距离,所以在建立刀具半径补偿时建立刀补的距离必须大于刀具半径。而且建立与取消刀补必须在G01和G00上进行。在有些情况下为了防止在加工零件表面留下进刀痕迹可选择圆弧切入切出的方式进行进刀。另外通过修改刀具半径补中存储的数值还可实现粗精加工。当数控机床用到多把刀进行加工时,在对刀的过程中只有第一把刀的x、Y、Z三个方向都要进行对刀操作其它刀具只需进
行Z方向对刀操作即可。
(3)数控加工中心的编程。数控加工中心主要用于加工形状复杂、工序多、精度要求比较高的工件。数控加工中心与数控车数控铣最大区别在于数控加工中心有刀库和自动换刀装置。对于不同规格的加工中心拥有不同数量刀具的刀库,故刀具从刀具库转到换刀位所需要的时间有长有短,因此在编写换刀指令时也比较灵活。例如:当刀具返回到换刀点的时间小于从刀具库选刀的时间,为提高生产效率减少等待换刀的时间可将选刀动作指令编写在换刀指令之前,在铣削的同时进行选刀。另外加工中心通常用长度补偿指令来设置Z向零点。所以在设定工件坐标系时通常仅仅在x、Y两个方向上进行零点偏置,Z向不进行偏置采取直接置零。当机床换上加工刀具后用块规正Z向,读取块规松紧合适时机床坐标系的Z值减去块规高度后将其输入到刀具长度补偿值中,实现Z向零点的设定。通常情况下在编写加工中心加工程序时应以工序集中原则进行编写。
五、数控仿真的应用
实践是检验真理的唯一标准。掌握了一定的数控编程技术理论基础后,不进行实际操作只在纸上谈兵也是不行的。初学者直接在数控机床上进行操作练习,难免会因不熟练或误操
作而导致造成机床设备的损坏。而且对于一个初学者来讲也不可能有较多的实际上机操作练习的机会。数控仿真则提供了一个很好的学习平台供学习者来进行模拟上机操作。初学者有足够的时间和机会在数控仿真软件进行各种数控机床的操作练习,并且初学者可通过仿真来实际感受加工环境、刀具毛坯的安装、切削加工过程、观察各种指令的走刀轨迹。另外数控仿真同样可对加工程序进行快速精确的校验,以防止加工时出现干涉碰刀现象。在数控仿真上进行模拟操作几乎与实际机床上的操作是一样的,因此它在一定程度上可以达到佷好的操作练习的目的。
六、进一步学习数控的必要准备
前面提到过对于一些比较复杂的曲面单靠人工进行编程往往是比较困难的,运用一些编程软件进行自动编程可很好的解决这一难题。因此要想学好、学精数控编程这一门技术仅仅学习人工编程是远远不够的,还得学习一些自动编程的知识,两者结合在一起用才行。目前我国应用的比较多自动编程软件有:国产的CAxA、美国的Pro/Engineer、UG CAD/CAM系统、Mastercam、以列的CIMATRON等软件,这些自动编程软件在自动编程过程比较重要的一步是对零件进行几何建模。所以学习者在学好手工编程的基础上还得
学习当今一些主流编程的基本建模方法和技巧。虽然当今的数控技术发展的比较完善各种功能的加工指令也比较齐全。但是随着产品的不断更新换代,这些指令可能满足不了一些特殊零件的加工要求。而数控系统为用户提供了宏程序功能,用户可根据自己的加工要求来对数控系统的功能进行拓展。故学习一定的用户宏程序知识对于今后在数控行业的发展还是很有必要的。
一个优秀的数控编程技术人员应不仅满足编写出零件轮廓的加工程序,还应做到所编写的程序加工效率高、工艺性好、工艺参数选用合理、加工出来的零件合格率高、刀具寿命长、加工过程对机床寿命影响小。另外学好数控编程技术并不仅仅在于一朝一夕的努力刻苦学习,必须通过长期坚持不懈的努力钻研和实际操作经验的积累才能培养出优秀的数控技术人才。
最近几周一直在弄程序,说实话真的很累,但累中也有成功的快乐。我觉得学到了很多东西,这是只看课本知识所不能学到的。
说实话,以前我一直没学过JAVA虽然我也知道JAVA的重要性,可是即使上课听了,不实践还是掌握不了。因为种种原因,今年我没有买笔记本。没有机器,仅仅靠每周一次的上机
练习是绝对不够的。所以我就插空调程序,在舍友们不用的时候自己再接她们的电脑调。
调上一个WEB版的通讯录程序时我已经感觉到学的很吃力,好多东西都不懂。这次做的这个学生成绩管理系统更复杂了,所以一开始调的时候感觉特别吃力。所以我告诉自己不能放弃,慢慢来,就这样我从最基本的sql语句session对象开始学起,我觉得我还有太多不懂得所以要比别人付出更多的努力。就这样我一点一点的学着?
说心里话,在做上一个web版的通讯录时,我就感觉到成功的喜悦。好多地方我都是一点一点的问的,在问的过程中,我也学会了很多,像:Servlet和jsp之间跳不过去时有两种解决办法,一是关闭底层类中的db。close;二是将Servlet中的throws Exception改成try catch以捕捉异常;我还学到了集中查错误的方法,可以加上两个双斜杠“//”将具体的方法屏蔽掉,一检查是方法错误还是Servlet错误,还有就是写上System out println将获得的数据输出,用来检查数据传输过程有没有错误等等。
零基础学java编程虽然在别人看来,这些方法可能都很常规,但是确实我自己学会的,我觉得很有成就感。我已经做好计划了,暑假的时候去买本本用自己的本本练习一下JAVA,虽然下学期不学JAVA了,但是我对JAVA的热情不会因为这个而削减的!
做完这个学生成绩管理系统后,我觉得我对JAVA的看法已经改变了。一前总以为JAVA很繁琐很难,听同学说JAVA不好学,开始又有一些听不懂,所以一直很畏惧JAVA。但真正做了这个系统以后我才感觉到其实任何事都没有难与不难之分,只要你肯努力的去做,世上无难事只怕有心人!
我现在对java学习充满了热情,我知道我还有很多的不足,还有很多需要努力的地方,所以我的JAVA之旅将继续进行?
一、必备的前提条件
1、编程需要坚强的毅力和足够的耐心
人各有所长,新人学PLC编程的心得体会。有些人把编程看作一项冗长而枯燥的工作;有些人把编程看作一项趣味的智力游戏。如果你是前者,强烈建议你远离这份工作。毕竟编程工作是对人的毅力和耐心的挑战。我所在实验室中,很多学生看到我编程序就会惊讶于我面对这一堆堆符号所表现出的专注。其实,这是兴趣使然。兴趣使我具备了足够的毅力和耐心。经过无数次失败后,当看到一个个符号按我的思路整齐的排列,PLC按我的要求
有条不紊的运行时,兴趣得到了极大的满足,如同打通了一个游戏的关口。所以,我告诉这些学生:你们看到的是一堆枯燥怪异的符号,我看到的却是一热情奔放的舞者,而我则是她们的导演。
2、编程需要敢于实践的信心
我曾经教过一个学生学AutoCAD,我对她的唯一要求就是实践。我告诉她:你随便怎么操作,大不了一张图重画;最坏的结果是系统崩溃,没关系,系统重做,再来;只要电脑没被砸了,怎么都行。两年后,我再看到她做的CAD图纸,也自叹不如。
同样道理,只有不断地在PLC上运行这些指令,观察运行的结果,才能弄清PLC指令的作用。很多初学者对PLC一脸的迷茫,往往是出于一种畏惧,担心损坏设备。而这些畏惧是没有任何道理的。仔细的阅读手册是非常重要的,但是仅靠读书是成不了一个工程师的。更何况手册上的内容并非面面俱到。我在接触到那些不熟悉的指令时,喜欢单独编一个小程序,让PLC运行。然后逐个修改条件,观察运行的结果(MicroWin为用户提供了非常好的监控手段),反过来再重新理解手册的描述,这样就可以非常直观的理解这些指令的作用和使用方法。不必担心自己写的程序会有什么问题,会影响PLC的正常工作。程序有没
有问题,只有让PLC运行了才能发现。而发现问题并解决问题就是对自己能力的提高。撇开硬件操作不谈,单就软件来说,我还真没有遇到过由于软件问题而损坏PLC的事。在这里不必担心继电器电路接错线可能造成的后果。所以,大胆的实践是PLC编程的必由之路。
当然,大胆实践并不是野蛮操作,而是必须遵循必要的规范。还有一个要注意的,在程序未经可靠性证实之前,千万不要挂接负载,以免造成不必要的损失。数字量的输出有LED显示;而模拟量处理可以采用一些硬件或软件模拟手段来解决。
3、编程需要有缜密的逻辑思维
编程本身就是一种逻辑思维过程。在高级语言中,使用最多的是if thenelse、select这些条件判别语句,这就是逻辑中的因果关系。PLC程序就是由这些因果关系组成的:判别条件是否成立,进而决定执行相应的指令。最初的PLC是用来替代继电器逻辑电路的,所以继承了继电器电路以触点作为触发条件的描述方式。在PLC中,以虚拟触点代替了继电器的金属触点,而继电器电路所表达的逻辑关系还是被完整的保留下来。即使引入了继电器电路难以胜任的数值处理过程,PLC从根本上还是在执行一个个因果关系。所以,理顺对象
的各个事件之间的逻辑关系,是编程之前必须精心做好的准备工作。我在接到一项任务后,第一件事就是整理出一份逻辑关系图,与用户反复商讨,取得用户的认可,然后才真正进入程序的编写过程。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论