程序编程范文

时间:2023-02-22 03:50:03

程序编程

程序编程篇1

关键词: PLC 设计步骤 编程技巧

可编程控制器是以微处理器为基础的新型工业控制装置,它采用可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各类机械或生产过程。梯形图程序设计是可编控制器应用中最关键的问题,也是高职学生难以掌握和接受的问题,在教学当中总是会有许多学生遇到PLC程序设计时无从下手的问题。其实只要掌握方法,理清每个控制系统的设计思路,再难的设计项目也能设计出来。我结合教学经验谈谈PLC教学中的程序设计技巧。

一、程序设计步骤

1.分析被控对象及控制工艺要求,确定控制方案,确定系统外部输入设备和输出设备的个数,以确定PLC的I/O点数。

2.对系统进行端口分配,并画出PLC的I/O接线图。

3.编写梯形图。

4.将梯形图转换成指令表后传送到PLC控制装置,并根据端口分配连好外部接线。

5.对程序进行修改和调试,直到满足控制要求。

以上是PLC控制系统设计的步骤,学生往往不按这样的步骤来执行,常常导致端口与程序中的编程元件不对应。其中梯形图的设计是系统程序设计的重点,也是学生难以掌握的难点,下面就以上PLC程序设计步骤结合三菱的控制案例进行PLC程序设计技巧的说明。

二、系统设计案例说明

1.液体混合控制控制要求

(1)按下启动按钮后,电磁阀Y1、Y2打开,注入液体A与B,液面高度为L2时(此时L2和L3均为ON),停止注入(YI、Y2为OFF);同时开启液体C的电磁阀Y3(Y3为ON),注入液体C,当液面升至L1时(L1为ON),停止注入(Y3为OFF);并同时开启搅拌机M,搅拌时间为10s,之后自动开始加热,当温度达到要求时(手动操作),电磁阀Y4开启(ON),排出液体,当液面高度降至L3时(L3为OFF),再延时5s,Y4关闭。接着,电磁阀Y1、Y2打开,重新注入液体A与B,如此循环动作,直到按下停止按钮。

(2)按下停止按钮后,系统完成当前的操作后,停止在初始状态,按启动按钮后可以重新开始工作。

(3)当Y1、Y2及Y3阀门分别得电30s后,液面仍没有变化,表明Y1、Y2和Y3出现故障,这时要求指示灯HL1、HL2分别闪烁报警,5s后将系统立即关闭停止报警并回到初始状态。

2.设计原理分析

为了用PLC控制器来实现任务,PLC需要6个输入点,8个输出点,输入输出点分配如下。

(1)端口分配。端口分配对于初学者来说是一个难点,他们往往对输入和输出设备分不清楚,其实只要记住输入只是控制系统得以运行的条件就可以了。有开关量和模拟量,常见的设备有:按钮、开关、行程开关、限位开关、光电开关、液位继电器、压力继电器等。而输出就是控制系统控制过程当中的一些动作,常见的设备有控制电机的接触器、电磁阀、信号指示灯、蜂鸣器、加热器等。只有端口分配完成并正确之后,我们才可以利用PLC内的编程元件对控制系统进行完整的控制。本例的端口分配表如下:

根据以上端口分配设计出相应的外部I/O接线图即可进行外部接线。

(2)梯形图设计。PLC程序设计的方法很多,但我们教学当中常用的就是经验设计法和顺序功能图的设计方法。其中经验设计法是在典型电路的基础上面进行修改而达到控制要求的方法,故这种方法具有很大的试探性和随意性,通常用于简单控制系统的设计。而顺序功能图的设计法是按照控制系统工艺流程,用转换条件控制代表各步的编程元件,让它们的状态按一定的顺序变化,然后用代表各步的编程元件去控制PLC的各输出继电器的设计方法。这种设计方法对于设计复杂的控制系统比较简单,容易被学生所接受。

此实例根据控制要求的分析,这是一个典型的混合物生产工艺过程,可采用顺序功能图来设计,但是其中有一些特殊的情况,如在控制过程当中需要按停止按钮,而系统必须要等加工过程全部完成才能停止运行;出现系统故障时要灯光闪烁报警等问题。我们可以采用经验设计法来结合实现。

①第一步顺序功能图设计。根据控制要求(1),首先将液体混合装置进行混合的这个工作周期分成注AB液体、注C液体、搅拌、加热、排出液体、延时排液等6个阶段完成,再加上初始步骤,一共有7步完成,这个我们可以采用顺序功能图的单序列列出。但控制要求(3)有注A、B液体和C液体故障时分别闪烁报警延时返回的两种特殊情况,故有二条支路返回,从而构成了选择序列顺序功能图。再找到每个步之间的转换条件,根据液体混合过程当中转换实现的条件和转换要完成的操作的内容,设计出顺序功能图。以下是采用S编程的步进设计法来实现的,只要将该顺序功能图转换成步进梯形图即可。

②经验设计法设计系统停止电路和闪烁电路。在控制要求中,停止按钮X4的按下并不是按顺序进行的,在任何时候都可能按下停止按钮,而且不管什么时候按下停止按钮都要等到当前工作周期结束后才能响应。而停止按钮X4的操作不能在顺序功能图中直接反映出来,因为停止按钮是瞬时信号,必须采用具有记忆功能的电路将该停止停号保存起来,故这里采用了M0的自锁电路(梯形图如下),可以用M0的常开常闭触点间接表示出来。如果系统中要求按下停止按钮后立即停止,按下启动按钮后能从该步运行的话,也可采用此电路中的M0的常闭触点与每步的步进触点相连即可实现此功能。

系统中的闪烁电路可以在闪烁步骤中串入PLC内部提供的时钟脉冲特殊辅助继电器常开触点M8013来实现。

③编写梯形图。将①的顺序功能图转换成步进的梯形图,再将②的梯形图放到1的梯形图的前面,这样,顺序设计法和经验设计法设计的梯形图就有机的结合在一起共同实现混合液体装置的控制过程。我们常常会碰到类似的复杂系统,往往用一种方法不能实现控制要求,我们不妨采用顺序功能图与经验设计结合的方法来实现。

(4)接线并运行调试。在编程软件上画出梯形图并传送入PLC内部,根据端口分配连接好外部接线。按控制要求顺序进行调试和修改,直到系统功能得以实现。

三、结语

本文结合PLC控制系统的设计步骤对PLC程序设计进行了大概的分析,教会初学者掌握程序设计的基本设计思路,在混合液体装置的梯形图设计中,合理地采用了学生易接受的顺序控制设计法和经验设计法结合的设计方法,使设计程序更完善、更简单、直观。虽然这只是PLC教学众多实例中的一个,但它具有代表性,包含了PLC教学当中程序设计的全过程及常用设计方法。通过这个实例起到举一反三、触类旁通的作用,帮助初学者克服PLC程序设计难题,全面提高设计能力。

参考文献:

[1]吴明亮.电气控制与PLC.黄河水利出版社,2009.

[2]廖常初.可编程控制器应用技术.重庆大学出版社,2008.

[3]瞿彩萍.PLC应用技术(三菱).中国劳动社会保障出版社出版社,2008.

[4]张桂香.电气控制与PLC应用.化学工业出版社,2008.

程序编程篇2

在最初编写的JDBC应用程序代码中,所有的数据信息都是编写到Java中的,这其实是一种不可取的方式。那么,我们把这些数据信息提取出来,放到属性文件中进行程序优化。

一、配置文件优化程序

Java的属性文件是一种配置文件,主要用来表达配置信息,它的后缀是properties,其实就是一个纯文本文件。创建Java配置文件的方法是选中src右键单击新建,选择other选项,再选择向导中General下的File,将文件起名为dbConfig.properties,点击Add按钮来添加属性及属性值,例如,属性name为driver,属性value为com.mysql.jdbc.Driver;属性name为dburl,属性value为jdbc:mysql://localhost:3306/xqy_db;属性name为user,属性value为root;属性name为password,属性value为admin。

二、创建连接工厂类优化程序

1、定义connectionFactory类,并创建包名为com.xqy.until;

2、定义四个静态成员变量用来保存从属性配置文件 中读取的数据库配置文件信息值;

3、定义静态代码块用来初始化类,可以为类的属性赋值,因为当加载类的时候会执行静态代码块,该静态代码块只能被执行一次。

其中核心代码为:

Properties prop=new Properties();

InputStream in=connectionFactory.class.getClassLoader().getResourceAsStream(“dbConfig.properties”);

prop.load(in);

driver=prop.getProperties(“driver”);//对静态成员变量driver初始化

url=prop.getProperties(“dburl”);//对静态成员变量url初始化

user=prop.getProperties(“user”);//对静态成员变量user初始化

pwd=prop.getProperties(“password”);//对静态成员变量pwd初始化

4、定义一个连接工厂类的对象factory,并编写静态方法getInstance来返回连接工厂类对象实例,以确保在程序支行过程中只有一个实例。

5、定义数据连接类的对象conn,通过定义makeConnection()方法来返回配置属性文件中的数据连接对象。

Class.forName(drive);

conn=DriverManager.getConnection(url,user,pwd);

return conn;

6、创建应用程序connectionFactoryDemo.java测试属性配置文件和连接工厂类,具体操作如下:

将主方法抛出SQLException异常,在主方法中添加代码为:

connectionFactory factory=connectionFactory.getInstrance( );

Connection conn=factory.makeConnection( );

System.out.println(conn.getActionCommit( ));

接下来继续优化JDBC程序,使其更加清晰,更加符合工业标准规范。

三、创建DTO类优化程序

创建两个DTO类,分别对应数据表tbl_user和tbl_address。

DTO是Data Transfer Object的缩写,是数据传输对象,主要用于远程大量数据调用的问题上,DTO一般只有成员变量,成员变量的setXX()方法和getXX()方法,还有构造函数,DTO不能包含业务逻辑。

1、在包com.xqy.entity下建立抽象类IdEntity,其中有保护成员变量Long id,使用setXX( )和getXX( )对成员变量进行初始化,定义无返回值的toStrig()抽象方法。

2、在com.xqy.entity包下,新建IdEntity类的子类User,该类具有name、password、email三个成员属性;添加父类中未实现的方法,为name、password、email三个成员属性添加setXX( )方法和getXX( )方法。

3、在com.xqy.entity包下,新建IdEntity类的子类Address,该类具有city、country、userId三个成员属性;添加父类中未实现的方法,为city、country、userId三个成员属性添加setXX( )方法和getXX( )方法。

四、创建DAO类优化程序

DAO是Data Access Object的缩写,数据访问对象,主要用来封装对数据库的访问,通过它可以把数据库中的表转化为DTO类。

1、 在包com.xqy.dao下建立接口UserDao,在该接口在添加抽象方法:

public void save(Connection conn,User user) throws SQLException;

public void update(Connection conn,Long id,User user) throws SQLException;

public void delete(Connection conn,User user) throws SQLException;

其中save( )方法用于保存用户信息,update( )方法用于更新用户信息,delete( )方法用于删除用户信息。

2、创建UserDao接口的实现类UserDaoImpl,该类位于com.xqy.dao.impl包下。首先实现save( )方法,具体操作如下:

String sql=“insert into tbl_user(name,password,email) values(?,?,?)”;

PreparedStatement ps=conn.prepareStatement(sql);

ps.setString(1,user.getName());

ps.setString(2,user.getPassword());

ps.setString(3,user.getEmail());

ps.execute( );

其它两个方法的实现仅仅改动sql语句的内容。

程序编程篇3

数控编程是模具加工的关键环节,编制高质量的加工程序对工件质量、效率和成本有重要的影响。在模具加工中,经常会遇到平面铣削走刀次数多、分层铣削层数多、多腔铣削腔数多而导致的手工编程繁琐问题,甚至若不采用子程序无法进行手工编程的问题。因此,本文探讨利用子程序以简化模具加工手工编程具有重要的意义。

一、FNUAC 0i系统子程序编程基础

1.子程序的概念

数控机床的加工程序分为主程序和子程序两种。主程序是一个完整的零件加工程序,或是零件加工程序的主体部分,它和加工零件是一一对应的关系。在编制零件加工程序中,如果其中有些加工内容完全相同或相似,为了简化程序,可以把程序中某些重复出现的程序单独抽出来,按一定格式编成一个单独的程序,以供调用,这个程序即是子程序。

2.子程序的调用

在 FANUC 0i系统中,子程序的调用可通过 M98指令进行,且在调用格式中将子程序的程序号地址 O改为 P,其常用的子程序调用格式为:M98 P L。

其中地址 P后面的四位数字为子程序号,地址 L的数字表示重复调用的次数。若只调用 1次子程序,在地址 L及其后的数字可省略不写。

3.子程序的嵌套

在编程时让程序调用另一个子程序,这一功能称为子程序的嵌套。当主程序调用子程序时,该子程序被认为是一级子程序,为一级嵌套,一级子程序再调用子程序时,该子程序被认为是二级子程序,为二级嵌套,依次类推,FANUC 0i系统中,子程序可以嵌套 4级。

主程序在运行过程中若需要执行某一级子程序,通过M98调用指令来调用该一级子程序,如果该一级子程序需要执行某二级子程序,也是通过 M98指令来调用该二级子程序,依次类推。子程序返回时与调用次序相反,最终一级子程序运行结束后又返回到主程序调用程序段处,继续执行下面的程序段。

二、子程序的编程应用

1.模具平面的编程

模具主要是由板类零件组成的,平面是典型加工表面,下面以某模板平面长、宽尺寸为300×250为例进行铣削编程。

(1)编程分析。

刀具选用直径为 30mm的平底立铣刀,以刀位点进行编程,铣削平面走刀路线由单向行切和双向行切,为保证加工表面质量采用单向不对称逆铣行切,步距一般为刀具直径的 0.85倍,故步距取 26mm,工件宽度为 250除以步距 26,得循环次数为 9.6次,而次数须为整数,因此,循环走刀次数确定为 10次。

(2)确定编程原点,设计走刀路线。

编程零点确定在工件上表面中心,所设计的每次走刀路线如图 1所示,即 P1 P2 P3。

(3)确定基点坐标值。考虑刀具半径 15mm、刀具 X轴方向让刀距离 3mm和步距 26mm,采用 CAD尺寸标注法确定 P1点绝对坐标为 P1(-18,11), P2、P3点增量坐标为 P1(336,0)、 P2(-336,26)。

图 1每次走刀路线图

(4)编写加工程序源代码。

综合上述分析及设计,编写参考子程序如 O6001所示,编写主程序如 O1所示,根据加工平面尺寸只需修改所编程序中基点 P1、P2、P3坐标值,即可用于加工。

2.模具零件的分层铣削编程

某模具零件图如图 2所示,毛坯长、宽、高尺寸为:100×100×110。

(1)编程分析。

在模具实际加工中,特别高速加工,为减小切削抗力,避免机床负载的剧烈变化,刀具每次的切削深度必须限定在一定范围内。使用子程序编程可实现刀具 Z向的分层加工。一般要求加工高度和每层切削深度为整数倍关系,该冲模型芯高 80mm,确定每层切削深度 2mm,则需调用子程序 40次。刀具选用直径 16mm的合金刀具。

图 2冲模型芯零件图

(2)确定编程零点,设计走刀路线。

编程零点确定在工件上表面中心,设计走刀路线时注意以下 4点:①走刀路线下刀点和返回点尽量重合,以简化编程;②精加工刀具要切向切入切出工件,防止接刀痕;③刀具 XY下刀点尽量在工件以外,必要时预加工工艺孔,保护刀具; ④走刀路线尽量短,有利于基点坐标计算。所设计的每层走刀路线如图 3所示,即 P P1 P2 P3 P4 P5 P6 P2 P7 P。

图 3每层走刀路线图

(3)确定基点坐标值。

图 3中的刀具每层走刀路线图为精确设计,使用 CAD软件查询法顺次确定基点坐标为: P(0,-60)、P1(12,-52)P2(0,-40)、 P3(-30,-40)、 P4(-30,10)、 P5(30,10)、 P6(30,-40)、 P7(-12,-52)。

(4)编写加工程序源代码。

基于上述分析及设计,编写参考子程序如 O6002所示,编写主程序如 O2所示,以供参考。值得注意的是:①分层铣削子程序编程 Z向须用 G91编程;②主程序中程序段G01Z0F20,刀具须切削进给至 Z坐标值 0处,才能保证工件的加工高度尺寸。

3.模具的多腔铣削编程

假设刀具一次能加工深度为 10mm,对图 4所示零件各腔进行精铣编程。

图 4多腔零件图

(1)编程分析。

刀具选用直径 8mm的键槽铣刀,零件各腔为精加工,为避免刀痕,设计走刀路线时,刀具圆弧切向切入切出工件,编写轮廓子程序使用 G91增量编程,实现工件轮廓形状编程与位置的无关。

(2)确定编程零点,设计走刀路线。

编程零点确定在工件上表面中心,所设计的走刀路线如图 5所示,各腔的加工顺序为①②③④⑥⑦⑧⑨,所设计的每腔走刀路线为 O A1 A2 A3 A4 A5 A6 A2 A7 O。

(3)确定基点坐标值。

为使刀具加工形状与其位置无关,需采用 G91方式编程,因此,使用 CAD尺寸标注法确定各基点坐标增量坐标为: O(0,0)、 A1(5,5)、 A2(-5,5)、 A3(-15,0)、 A4(0,-20)、 A5(30,0)、 A6(0,20)、 A7(-5,-5)、 O(5,-5)。

图 5多腔零件走刀路线图

(4)编写加工程序源代码。

根据以上分析及设计,编写子程序如 O6003所示,编写主程序如 O3所示,以供参考。

三、结语

程序编程篇4

【关键词】宏程序;软件自动编程;编程效率

中图分类号:TP 文献标识码:A 文章编号:1009-914x(2013)38-01-01

一、概述

现行的数控程序的编制中,主要有两种编程方式:手工编程和自动编程。虽然自动编程运用得越来越广泛,但手工编程在某些领域也是不可或缺的一种编程手段。

手工编程至少在此以下几方面有着自己的优势:其一,熟练的程序员编制的手工程序加工效率高于自动编程;其二,熟悉手工编程,对自动程序的修改是不无裨益的;其三,自动编程由软件所生成的走刀路线限制了其加工工艺,通过手工编程能够得到弥补。

在数控程序的编制过程中,软件自动编程省时省力,不易出错,有些零件复杂型面的编程靠手工编程很难实现。

但在手工编程过程中,用户宏程序的编制,能极大提高程序编制的效率。 在实际生产中手工编制的用户宏程序运用得极其频繁。为此,笔者提出用户宏程序与软件自动编制相结合,充分利用二者的优点,在软件自动编制的程序中加入用户宏程序,极大的简化数控程序,从而提高编程效率。

在实际加工生产中,结合了用户宏程序的自动编制的程序更加灵活,修改及加工更加容易。

二、软件自动编制程序简介

软件自动编程,利用计算机专用软件来编制数控加工程序。编程人员只需根据零件图样的要求,使用数控语言,由计算机自动地进行数值计算及后置处理,编写出零件加工程序,加工程序通过通信的方式送入数控机床,指挥机床工作。自动编程使得一些计算繁琐、手工编程困难或无法编出的程序能够顺利地完成。

用于数控自动加工编程的CAM软件平台较多,比较常用的UGNX、CATIA、Pro/E、Mastercam、Cimatron、Powermill等。虽然各自应用的流程有差别,但各系统提供的基本数控功能都比较相似。企业产品不同,使得对CAM平台的选型和应用要求有所不同。对于大多数零件,数控三轴铣削编程都能满足企业的要求。而对于有些特别的轴类零件,四轴及五轴机床的加工编程表现尤为突出。这些CAM软件平台在数控车削及数控铣削编程方面发挥了极大的作用,可以实现多轴联动的自动编程并进行仿真模拟。

自动编程已成为主要的编程方式。

三、用户宏程序简介

数控宏程序就是用公式来加工零件,比如说椭圆,如果没有宏的话,我们要逐点算出曲线上的点,然后慢慢来用直线逼近,如果是个光洁度要求很高的工件的话,那么需要计算很多的点,可是应用了宏后,我们把椭圆公式输入到系统中然后我们给出Z坐标并且每次加10um那么宏就会自动算出X坐标并且进行切削, 实际上宏在程序中主要起到的是运算作用。

宏一般分为A类宏和B类宏。

A类宏是用G65 Hxx P#xx Q#xx R#xx或G65 Hxx P#xx Qxx Rxx格式输入的,xx的意思就是数值,是以um级的量输入的,比如你输入100那就是0.1MM.#xx就是变量号,变量号就是把数值代入到一个固定的地址中,固定的地址就是变量.我们如果说#100=30那么现在#100地址内的数据就是30了。

由上可见用宏程序结合自动编程编制的程序简短精练,逻辑性很强,可读性很好。

以上程序中只有软件生成的1层刀路1个程序段,引入宏程序的循环语句,就能轻易实现多次分层切削。此外,如果每层切削深度有变化,只需将程序段“#1=#1-4.”中“4.” 修改为想要设定的每层切深数值就可以;如果要直接到指定的切深进行加工,只需将程序段“#1=63.275”中的“63.275”修改为 想要指定的切深数值就可以,使用非常方便。

六、结束语

通过以上比较分析可以发现,利用自动编程和宏程序结合起来使用,既可提高编程的效率,减少编程差错,又可以使程序相对精练,思路清晰,便于加工中检索,便于根据实际加工需要修改加工参数,在生产实践中具有很好的可操作性, 所编制的程序适应性好,是一种值得推广的方法。

【参考文献】

[1] 唐健. 数控加工及程序编制基础.机械工业出版社.2010-8-1

程序编程篇5

关键词:数控;宏指令;方法与技巧;华中数控

宏指令编程像高级语言一样,可以使用变量进行算术运算、逻辑运算和函数混合运算的程序编写形式,能提供循环、判断、分支和子程序调用的方法。由于宏程序指令允许使用变量算术和逻辑运算及条件转移,可将相同加工操作编为通用程序,不仅使程序应用更加灵活,而且可大大精简程序量。

在数控加工中经常会遇到复杂轮廓的加工(如抛物线、椭圆、双曲线、半球、螺旋线等),用普通的手工编程方法处理周期长、计算量大、精度差、容易出错,难以满足生产要求。随着数控技术的发展,先进的数控系统不仅向用户编程提供了一般的准备功能和辅助功能,而且为编程提供了扩展数控功能的手段,华中世纪星数控系统的宏程序编程,应用灵活、形式自由,具备计算机高级语言的表达式、算术和逻辑运算机类似的程序流程,使加工程序简练易懂,可实现普通编程难以实现的功能。

1. B类宏指令(华中数控)

1.1 B类宏指令变量的类型

B类宏是在A类宏的基础上发展起来的,随着数控技术的不断完善,在运用宏加工时就出现了一些运算问题,B类宏也就在这个前提下发展起来了,B类宏的好处在于能够经行四则运算,大大减少了宏的程序长度,大大减少了编程时间。

1.2 B类宏指令变量的赋值、算术运算和逻辑运算

通常在计算机中每个变量都有其变量名,计算机允许使用变量名,但是数控系统中用户宏程序不能直接使用变量名,采用变量符号(#)和后面的变量号指定变量。表达式可以用指定的变量号。此时,表达式必须封闭在括号中。

2. B类宏程序的编程技巧

很多人都认为宏程序比较难编写。通过研究我找到了一种利用填充式的方法进行宏程序的编写,就算不能理解宏程序的人员也能进行编写,通过简单的数字填充来编写宏程序。宏程序就是一种利用逻辑运算的方法来编写宏程序的,如:椭圆公式中我们可以利用改变X轴的坐标值,从而使Z轴的坐标值随之改变。在这个方程式中可以对X的值经行赋初值和结束值,然后通过X值的步进值来改变X的坐标值。因是对宏程序编程方法进行研究的,所以以下实例零件只对宏程序部分进行分析和编写。

实例一

零件分析:零件是椭圆的一个轮廓零件,椭圆长半轴为40,短半轴为30,并且本椭圆的Z坐标值既有正值又有负值,所以我们在这里就有二种方法来进行编写,一种方法是把椭圆在90度的位置分为两部分来编写。一部分为0到90度,另一部分为90到146度,在0到90度时Z轴坐标为正,在90到146度时Z轴坐标为负。另一种方法是利用三角函数的方法来编写,利用同一个角度的正弦与余弦的平方和为1的特性,进行编写。

分段编写方式:

利用宏程序编程六步法编写过程如下

①起点赋值 起始点为零件的最右端,X坐标为0,程序为:#1=0

②终点循环 终始点为椭圆轮廓的最高点,X坐标为30,因为30为X值的最大值,所以变量#1应该小于或等于30,程序为:WHILE #1 LE [30]

③轮廓公式 利用X的值来表示Z的值,通过椭圆公式可得#2=4*SQRT[900-#1*#1]/3

④轮廓插补 通过图可知,编程原点为零件的最右端,椭圆圆心与编程原点不是在一个点上,在编程坐标系中,编程原点坐标为(0,0),椭圆原点坐标为(0,-40)。当把编程原点向椭圆原点移动时,X轴不变,移动量为0,Z轴向负方向移动,移动量为40。程序为:G1 X[2*[#1+0]] Z[#2+[-40]],简写为:G1 X[2*#1] Z[#2-40]。

⑤变量步进 因为自变量X的值是从0向30来移动的所以步进量应该是依次递加的方式,布进量越小,走刀轮廓越是接近椭圆轮廓。程序为:#1=#1+0.1

三角函数编程方法

①起点赋值 起始点为零件的最右端,自变量为极角α值为0,程序为:#1=0

②终点循环 终始点为椭圆轮廓的结束点,极角α为146,因为146为极角α值的最大值,所以变量#1应该小于或等于146,程序为:WHILE #1 LE [146]

③轮廓公式 利用极角α来表示x的值,通过椭圆公式可得#2=30*SIN[#1*PI/180],利用极角α来表示Z的值,通过椭圆公式可得#3=40*COS[#1*PI/180]

④轮廓插补 通过图可知,编程原点为零件的最右端,椭圆圆心与编程原点不是在一个点上,在编程坐标系中,编程原点坐标为(0,0),椭圆原点坐标为(0,-40)当把编程原点向椭圆原点移动时,X轴不变,移动量为0,Z轴向负方向移动,移动量为40。程序为:G1 X[2*[#2+0]] Z[#3+[-40]],简写为:G1 X[2*#2] Z[#3-40]。

⑤变量步进 因为自变量X的值是从0向146来移动的所以步进量应该是依次递加的方式,布进量越小,走刀轮廓越是接近椭圆轮廓。程序为:#1=#1+0.5

⑥结束循环 ENDW

利用三角函数编程方法编写的宏程序如下:

#1=0

WHILE #1 LE [146]

#2=30*SIN[#1*PI/180]

#3=40*COS[#1*PI/180]

G1 X[2*#2] Z[#3-40]

#1=#1+0.1

ENDW

注:PI:圆周率、在数控系统中三角函数不识别角度,只识别弧度的定义,所以需要把角度转换成为弧度。

参考文献:

[1]彭效润.数控车(高级).中国劳动社会保障出版社

[2]杨继宏.数控加工工作手册.化学工业出版社

[3]谢辅轩.数控机床编程与操作技术.湖南应用技术学院机电工程学院内部用书

程序编程篇6

[关键词] 步进顺控编程;程序停止

顺序控制又称步进控制控制设计法,就是按照生产工艺预先规定的顺序,在各个输入信号的作用下,根据内部状态和时间顺序,在生产过程中各个执行机构自动地有次序地进行操作。

顺序控制的动作流程图也称为状态流程图,三菱FX系列PLC进入初始状态一般用M8002常开点作为转移条件,中间有单流程、多流程顺序控制,规律较强,易于掌握。程序的停止,要求不同,解决方法也不相同,设计不正确,将无法达到控制要求。本文以实例验证步进编程中四种停止。

有两盏指示灯,按下启动按扭1SB(X1)第一盏指示灯亮,10S后第二盏只是灯亮,10S后全部熄灭,再过10S开始循环。

控制要求:1、再次按下1SB(X1),两盏灯全部熄灭。2、循环5次指示灯全部熄灭。3、按下停止按扭2SB(X2),当前工作周期结束后停止,指示灯全部熄灭。4、按下停止2SB(X2)按扭指示灯全部熄灭,松开按扭继续循环。

一、解决控制要求1:状态流程图1和梯形图2

图1中M8002初始脉冲继电器,PLC运行时接通一个扫描周期,M8002常开触点闭和,进入初始步,等待发出控制指令。

图2是状态流程图1所对应的梯形图。图中0~9步,按下1SB,X1(上升沿脉冲触点)接通一次,M0接通一个扫描周期,M0的常开点与M1的常闭点形成接通状态,所以M1得电。程序运行在下个周期,M1的常开点与M0的常闭点形成接通状态,M1形成自保状态。再次按下1SB,M0接通一次,形成一个扫描周期的接通脉冲,M1失电并保持失电状态。这是一个典型的单按扭起停应用电路。9~16步,ZRST S20 S22是当M1闭合时,对程序S20~S22程序段进行组复位同时用SET S0进入处始步,等待下次发出运行指令。

二、解决控制要求2:状态流程图3、梯形图4

状态流程图3中省略部分为图1中S21步。

状态流程图3省落部分为图1中S21步;4为图3所对应的梯形图,图4中省略部分为图2中20~38步;44~48步为循环次数和计数器复位,必须放在步近接点以外,否则启动时第一次能循环5次,再次启动,程序循环一次将停止。因为C0无法复位。

三、解决控制要求3:状态流程5、梯形图6

状态流程图5省落部分为图1中S21步,图6中省落部分为图2中20~38步。

程序开始用了个基础程序“起、保、停”。按下启动按扭(X1)闭合,M0有电并自保,其常开点闭合,常闭点打开,保证程序连续循环,按下停止按扭(X2),M0失电并解除自保,其触点恢复常态,当程序运行到S22步,回到S0条件满足,当前循环结束,回到初始步。达到控制要求。

四、解决控制要求3:梯形图7

状态流程图如图1,梯形图7中省落部分为图2中20~48步。M8034为特殊继电器,当M8034得电,禁止全部输出。X2可以用开关或按扭控制。

步进顺控编程的停止,实质上是对对步进编程方法的解析和经验编程法在步进编程中的应用。熟练掌握步进编程的停止,有利于提高程序的设计效率,可以编写出较复杂的程序。

参考文献:

[1]姜治臻 PLC技术及应用—北京:高等教育出版社,2009.7

程序编程篇7

【关键词】高职高专;可编程计算器;课程建设

测绘地理信息类专业的学生,要求通过学习,构建测、绘、算的基本能力。计算能力成为职业能力的基本组成部分。依据测绘中、高职学生毕业就业瞄准工程现场工作岗位需要的实际。在工程类的工作中,特别是在类似道路工程施工现场,伴随工程进程,需要反复进行放样或校核,而且需要现场进行数据处理,这样的数据处理的特点是数据量不大,数据处理模型不复杂,但实时性要求高,要求立即指导现场施工工作。由于施工现场灰尘多、野外供电困难等环境条件的原因,通常是不方便使用电脑的,因此,计算器,特别是程序计算器一直发挥着极其重要的作用。

1可编程计算器的工程应用

信息社会的到来,使得人们对计算机的依赖程度越来越强,但并不意味着计算器可以完全被取代,不同的计算工具都有各自的用户群体。可编程计算器和计算机相比,具有价格低、体积小、携带方便、容易操作等优点,和不具备编程功能的普通计算器相比,又具有可解决相对复杂的计算问题、使用和修改方便等优点,因此在各行各业中得到了广泛的使用,尤其在工程行业应用最为广泛。早在20世纪90年代末,可编程计算器就已经在我国工程界得到了比较广泛的应用。随着社会的进步,科学的发展,可编程计算器在工程领域中的使用也在增加,例如:在坐标转换中的应用、圆曲线与缓和曲线上点的坐标计算、道路纵断面中平测量、隧洞开挖和欠挖中的计算、隧道断面测量、公路与铁路路线任意变坡点连续竖曲线高程计算、桥梁施工测量中的计算、高铁施工中的相关计算等。随着计算器的不断发展,计算器的内存容量也逐渐增大,有些已经可以使用存储卡存储程序。计算器不断地升级换代,功能更加强劲,计算器的处理能力也在不断增加,以适应现代工程技术发展的需要。

2高职高专测绘相关专业学生计算能力培养

“测、绘、算”是测绘学生要掌握的基本技能,“算”是其中重要的一项,学生学会一种以上计算器的使用是很有必要的,可以提升学生的计算能力。根据高职学生就业面对工程现场一线岗位的特点要求,在《高等学校高职高专测绘类专业规范》和《教学基本要求》中要求设置“计算器测绘程序设计与应用”课程,以期待通过学习,构建学生满足现场工作实时需求的数据处理能力。这样的数据处理能力,也是构成学生计算能力的不可缺少的组成部分。即使是当前测绘技术和装备已经数字化、信息化的状态下,测绘地理信息技术人员的现场工作依然需要工程计算器,特别是对可编程计算器应用能力的需求。但现在的学生对计算器认识不够。智能手机、平板电脑等电子产品的不断涌现,价格水平也逐年下降。计算器在学生的潜意识里已变得不再重要,他们觉得,手机、平板即可代替计算器。但就中国目前来看,计算器还不能完全被替代,计算器所具有的优势:如小巧、轻便,便于携带;电池耐久;计算程序容易编写等,使得它在短时间内还不会从市场上消失。这就要求我们改变学生对计算器的认识,从计算器的基本使用开始,让学生系统地学习可编程计算器,培养学生的计算能力。

3可编程计算器程序设计课程中存在的问题

到目前为止,高职高专开设可编程计算器程序设计课程还存在以下问题:

3.1教材的选择

很多学校都开设了计算器编程课程,但是一直没有适合的教材作为参考,上课非常不方便。虽然计算器编程相关书籍非常多,但作为教材还不够系统,难易程度也不合适。

3.2可编程计算器机型选择

市面上的计算器品牌很多,如CASIO(卡西欧)、得力DELI、TI(德州仪器)、SHARP(夏普)、Canon(佳能)、COMIX(齐心)等。各种品牌、型号的计算器,它们各有特点,且操作不完全相同,计算器的按键对于不同的品牌、不同的型号,区别也比较大。编程计算器的程序语言也不完全相同,计算器的计算功能的多少、在工程上的使用程度等都影响计算器的选择,同时还要兼顾学生本身的经济条件。因此,选择哪一种机型的计算器用在教学中是一个要解决的问题。3.3教学内容的选择因课程开设时间的不同,对教学内容的要求也不一样。如果开设时间过早,相关的基础课程还没有学习,学生学习起来困难较大。将课程安排在大部分专业课程之后,基本原理部分的讲授就会变得相对简单,但编程内容要如何选择,怎样安排整个教学内容才能达到比较好的效果呢?这是我们要解决的又一个问题。

4课程建设

4.1教学时段安排

因计算器编程课程与很多专业课程密切相关,如果大部分专业课程没有学过,在讲程序设计时,势必要把所有没学过的数学模型及原理从头讲一遍,这样就会与其他专业课程重复。根据多年对本课程的教学和研究,将课程安排在完成大部分专业课程之后,将会事半功倍。此外,计算器程序设计课程同一些专业课程会同时开课,将计算器程序用于这些专业课程中的相应计算中,这样的学习效果会更佳。例如在开设工程测量课程时,将曲线放样元素的计算用计算器程序来完成,计算更快,学生也更有学习兴趣。

4.2教学时间安排

4.2.1一周安排几节,用一个学期的时间完成课程教学这样安排,学生有时间学习和消化讲过的内容,但时间过长,可能在下次上课的时候就将上节的内容忘记了。4.2.2集中排课,一周时间完成课程教学用一周或两周的时间,集中学习。天天都在接触计算器及相关编程内容,记忆深刻。但集中学习,一次接受的知识太多,学生理解起来有困难。在学过一个知识点后,学生没有更多的时间去消化吸收。这两种安排各有利弊,但将其综合起来,将课程安排半个学期的时间,教学的进度与学生的接受能力都可以得到满足,教学效果更佳。

4.3总学时的确定

课程的安排要满足学生学会计算器的基本功能、基本编程功能、专业计算程序的编写、在工程应用中使用到的一些常用计算器程序等。由易到难,学生从计算器的基本功能开始学起,通过学习平时熟悉的数学模型,学习兴趣会更浓。通过这样的循序渐进的过程,逐渐掌握程序编写的要点与技巧,从而学会编程。要达到这样的教学目标,总学时安排大概30学时即可。

4.4计算器机型的选择

根据卡西欧(中国)贸易有限公司市场部相关人员的市场调查,及测绘相关专业已经毕业的学生反馈的信息,在工程中使用较多的机型为CASIOfx-5800P计算器。因此,为了适应市场及学生就业岗位的需求,课程选用CASIOfx-5800P计算器作为主要机型,有针对性地讲授其编程方法,同时附带市场上用的相对较多的其他机型作为比较。

5教材建设

针对各高职院校计算器编程课程的困扰及课程特点,经过全国测绘地理信息职业教育教学指导委员会认真研究,组织编写了《Casiofx-5800P测绘程序设计与应用》教材,该教材从测绘及相关专业出发,内容涵盖计算器的基本计算操作、编程基础、点位坐标计算、参考椭球与坐标转换、高程测量计算、导线测量计算、曲线测设和面积计算等程序的编写与使用,与测绘专业紧密结合,难易程度相当。学生学习了相关测绘基础知识,如测绘基础、测量平差、控制测量、工程测量等学科之后,再来学习计算器程序设计,在数学模型的学习上不用花费过多的时间,重点放在程序设计与使用上,效果会更好。在信息化比较发达的今天,除了纸质的教材外,学生可以借助各种媒体进行学习。同时考虑到课程的学习时间不是很长,需要在短时间内掌握编程技巧与方法,所以在教材出版的同时,还配套有课程相关的学习视频、课件、教案等供老师和学生参考。学生除了在课堂上学习外,还可以自由安排时间进行自学。老师上课更轻松,学生也可以更好地学习。

6结语

课程建设方案及教材内容的设计,在由全国测绘地理信息职业教育教学指导委员会组织的“工程计算器与测量教学整合”课题研讨会上,得到了与会专家、老师、工程师等的一致好评。同时为了使学生更爱计算器程序设计,使计算器程序设计课程达到开设的目的,卡西欧(中国)贸易有限公司联合多所高校、企业组织了工程计算器程序设计大赛,使专业人士和学生积极参与,促进了计算器程序的发展和改进,做到以教促学、以赛促学,最终达到以学促用的目的。但是,这其中也存在一定的不足之处,我们会在以后的实践中不断改进,以适应发展的需要。

参考文献

[1]周拥军.CASIO可编程计算器在土木工程教学中的应用实践[J].昆明冶金高等专科学校学报.2003,19(04):51-52.

[2]王中伟.卡西欧fx-5800P可编程与道路施工放样程序[M].广州:华南理工大学出版社,2011.

[3]高振玲.马俊福.利用CASlO编程计算器进行圆曲线与缓和曲线交点坐标的精确计算[J].甘肃广播电视大学学报,2012,22(03):45-47.

程序编程篇8

关键词:螺纹; 宏程序; 循环功能; 参数化

中图分类号:TG62

文献标识码:A文章编号:16749944(2017)8024002

1引言

螺纹是机械零部件之间的主要连接方式,所以机械加工中螺纹的加工是非常重要的环节。

数控镗铣床设备上加工2400 t压力机滑块上的一组规格的螺纹,原有的加工方法存在一些弊端,除了对操作者的编程水平有一定要求外,加工效率也得不到提高,因此改进一种实用、简便的螺纹铣削方法对提高公司生产线生产效率具有重大意义。

公司数控M铣床班组加工该零件的多个规格螺纹时,手工编程要求操作者具备一定的编程水平,当更换不同规格的螺纹时就要重新编程,加工效率不高,对于简单的螺纹加工采用自动编程又不太适用。所以,上报设计部门后决定添加一种螺纹铣削“循环功能”。

2螺纹铣削工艺

螺纹铣削需要配合三轴以上联动机床,坐标系要在螺纹轴线与端面的交点处。采用数控镗铣床TK6920加工螺纹,选用单刃螺纹铣刀,铣削螺纹时螺纹的导程跟转速没关系,仅跟程序设定刀具的圈数和下刀距离有关系。转速和进给根据螺纹导程设置,转速高进给快,会因为切削力太大导致丝锥或板牙损坏。虽然转速慢进给慢在一定范围内能完成攻丝或套丝加工,但是转速也要限制在电机的实际使用扭矩范围内。

3问题的解决

首先利用宏程序加工标准右旋内螺纹M42×4.5,螺纹深度为50 mm,单刃螺纹铣刀半径13 mm。

为了安全起见,同时也为了确保螺纹深度为Z-50,通过计算可知:

50÷4.5=11余0.5(mm),

应考虑每次应距初始面一定高度开始加工,安全高度值可为:

h=p-0.5=4.5-0.5=4(mm)(1)

由于直螺纹特点(上下径线尺寸不变),这样就可确保经过11+1个循环后螺纹深度正好是50mm。

5结论

对螺纹铣削循环程序的生成,改进了传统铣削螺纹加工的方式,操作者能够简单、快速地解决加工不同规格螺纹铣削的问题。

值得肯定的是在此螺纹循环程序中涉及的计算多为基本的计算,对于新培训上岗的操作工也能完成操作。降低了编程难度,具有方便、快捷、浅显易懂的特点。刚好契合了参数化编程的理念,有利于节省人力成本。同时能满足在产品多样性情况下提高螺纹加工的生产效率的要求,直接为企业降低生产成本,提高企业的效益。

参考文献:

[1]

梅艳波.螺纹加工方法研究[J].长江大学学报,2009(1):279~280.

[2]刘明玺. 西门子系统数控车床螺纹加工参数化编程方法探究[J].电子测试,2013(23).

[3]刘金文. 浅析加工中心铣削螺纹的加工方法[J].数字技术与应用,2012(4) .

[4]李庆余. 机械制造装备设计[M].北京:机械工业出版社,2008.

[5]孙本绪. 机械加工余量手册[M].北京:国防工业出版社, 1999.

[6]艾兴,肖诗纲.切削用量简明手册[M].3版.北京:机械工业出版社,1994.

[7]陈国文,马芳薇,周瑜. 宏程序在螺纹铣削快速编程中的应用[J]. 金属加工(冷加工),2015(16):20~21.

[8]乔龙阳. 基于宏程序的螺纹数控铣削功能开发[J]. 机械研究与应用,2014(1):181~183.

[9]钟如全. 铣削螺纹固定循环指令的开发[J]. 组合机床与自动化加工技术,2013(10):121~122,126.

[10]刘玉春. 基于FANUC宏程序的螺纹铣削加工编程应用[J]. 金属加工(冷加工),2013(13):46~48.

[11]杨辉,万海鑫,张宣升. 基于螺纹铣削数控宏程序的优化设计[J]. 制造业自动化,2012(21):26~29,39.

[12]戴冠林. 基于MasterCAM 9.1的螺纹铣削工艺分析与编程[J]. 机械,2010(8):66~68.

[13]杨丽. 数控铣削螺纹及宏程序的应用[J]. 煤矿机械,2009(12):120~122.

上一篇:农产品检测范文 下一篇:司法鉴定程序范文

免责声明