数控系统的运动控制器设计 许戴铭 (苏卅I工业职业技术学院) 摘要:介绍了一种基于¥3C44B0微处理器与PCL6045B控制芯片的运 部分程序源代码: 动控制器设计,并详细分析了实时插补方法和升降速的控制,满足了数控系 P645 YYreg (AXS AX 统美于运动控制的要求。并通过在实验台的运行试验,证明了该控制器设计 WPRMD,0x08000064 ) 的有效性。 / X轴:顺时针圆弧插补*/ 关键词:PCL6045B运动控制时间分割法括补升降速控制 P645 wreg {AXSAY —在PA_ ̄D中的MOD中选摺惯时针圆弧 插补模式,在P耻D中的M口E可以指 0引言 WPRMD,0×O8O00O64 ) 定结束点自动完成功能 现代数控系统以其高精度、高效率、高可靠性的优点,在制造业 / Y轴:顺时针圆弧插补 / 中得到了日益广泛的应用。现代加工对数控系统提出了很高的要求: P645 vset (A×S AX. 为插补控制轴指定运动速度懊式 方面要能够实现各种加工情况下的准确定位,另一方面,又要能实 1 L,10000L,300,0,4999,49 时控制刀具运动轨迹和速度,保证切削过程的平稳和加工精度。这些 99, S’,0): 都取决于数控系统的对机床运动的控制能力。本文讨论的是一种基 在P: ̄vl"V中输入结束点坐标 于嵌入式微处理器和运动控制芯片构成的运动控制器设计方案。利 / 插补控制轴(X轴)S曲线 用单片机对运动控制芯片进行控制,作为运动控制器的核心,实现高 升降速 / 在PR口中输入中心坐标 效的对伺服电机运动的控制。 1硬件设计 / 1~10kpps 300ms / 写入启动指令 运动控制器由单片机、键盘输入模块、I/O通信模块、液晶显示 / 运动范围=(1000o_- 模块、运动控制模块和交流伺服电机驱动器构成。 1】/2=4999 / ~困回国团 图1运动控制器结构 P645 wreg(AXS AX ,) 等待运动完成 <:=二:> WPRMV,0x000003E8 标 / / 输入X和Y轴的结束点坐 P645 .wreg ( AXS AY ,WPRMV,0x000003E8) 图2 XY面内圆弧插补控制流程 / (1000,1000) , P645 wreg(AXS_AX,WPRlPj 0x000003E8): / 输入× 和Y轴的中心坐标 / | 单片机选择三星ARM7内核的¥3C44B0微处理器。单片机作 为主要的控制单元分析操作指令,对外围接口发出控制信号、读写数 (1000,0) / 据并与外部设备进行通信。并与运动控制芯片PCL6045B通过总线 P645wreg(AXS—AY,WPR I P,OxO0000000) 一相连,发送控制指令实现不同的运动控制。 P645wreg(AXS_AX,WPRIP,0x00000BOC); / 输入圆 键盘模块构成系统的输入模块。并对键盘中各个按键进行功能 弧插补步数(2828) / 定义,通过对键盘接口的读入就可以完成系统所需原始数据的输入 P645 wcom (AXS_AX,(STAUD I SEL一×l SEL__Y)): / 及对执行机构的运行进行控制。 写入高速启动指令2 / 显示模块部分采用图形液晶显示模块MGLS240128,实现对插 P645 wait(AXS_AX): / _等待电机停止 / 运动控制模块采用日本NPM公司生产的可编程4轴驱动运动 2.2进给速度和加减速控制在实际插补过程中,运动速度经常 控制芯片PCL6045B及其接口芯片构成。通过总线接收¥3C44B0的 需要根据加工要求随时可能进行调整,启动、匀速、停止这些阶段,当 控制指令和数据进行运算并以脉冲序列形式输出给伺服驱动器,用于 运动速度超过一定值时,还需要考虑防止由于速度激变产生冲击、失 实现对伺服电机的插补控制、速度控制等功能。PCL6045B最多可控 步或者超程、振荡等问题,从而影响到加工的精度和质量。因此有必 制4轴的运动,包括2 ̄4轴线形插补以及任意两轴的圆弧插补。 要在插补前或插补后加入对运动速度的升降速控制。使得数控机床 2系统软件设计 的运动速度能够做到平稳调速而避免剧烈变化。常见的升降速控制 2.1插补运算影响数控系统运动控制能力的因素很多,在硬件 有两种,可以把加减速控制放在插补之前或者插补之后进行的,一般 系统和执行部件确定的情况下,插补的算法是主要因素。在实际/jOT 情况采用的是S曲线的前加减速控制。它的优点是:不影响实际插 中,对于一些较复杂的工件轮廓形状,主要是应用小段的直线或圆弧 补输出的位置精度,相对于后加速控制位置精度要高;缺点是需根据 进行拟合的方法去逼近曲线,这种拟合方法就是“插补”。插补精度和 实际刀具位置和程序段终点之间的距离来确定减速点,计算工作量 插补速度就直接决定了数控系统的运动精度和控制速度。目前常用 大。这点对于现在的计算机来说,已经不是很重要了。 的两类插补算法是脉冲增量法和数字增量法。系统采用的 3结束语 PCL6045B具有完成插补运算的功能,整个过程由硬件控制,不 PCL6045B是一款功能强大的运动控制芯片,本系统运动控制 需要软件干预。PCL6045B内部给每个轴都对应了几十个寄存器,用 模块该芯片完成伺服电机的多轴协制,支持多种插补模式。并与 于设置各轴的工作状态、预设的运动指令参数、工作环境设定参数、 上位机通过总线相连,直接接受指令发出控制脉冲。具有很好的实用 计数器数、状态查询返回值等。通过对PCL6045B内部对应寄存器 性和通用性。经过实验台的一段时间的运行,取得了较好的控制效 的初始化设置可以在4个轴中任意实现任意2~4轴之间的插补操 果,满足了数控系统实时性和精度的要求。 作。同时可以对相应的寄存器进行实时读取各轴的工作状态以及实 参考文献: 现对运动的实时监控。 [’]PCL60458用户手册.日本NIPPON PULSE M0TOR公司,2007. 下面是XY平面内半径为1000个单位、90。JII ̄B,-t针圆弧插补流 【2]叶佩青,张辉.编著.PCL6045B运动控制与数控应用IM】.北京:清华大 程: 287 学出版社.2007 补运算过程中运动轨迹和刀具位置等信息的实时数据显示。 JDBC技术在电子商务中的应用 柳川 (四川理工学院计算机学院) 摘要:JDBC(Java Database Connectivity)是一种用于执行SQL语句 Manage r的getConnectin(String url,String username, String 的JavaAPI。它由一组用Java编程语言编写的类和接口组成,为Java应用 password)方法传入指定的欲连接的数据库的路径、数据库的用户 程序与各种不同数据库之间进行对话提供了一种便捷的方法,使得开发人员 名和密码来获得。 能够用纯JavaAPI来编写具有平台无关性的数据库应用程序。JDBC的出现 4创建一个Statement 使Java程序对各种数据库的访问能力大大增强。通过使用JDBC,开发人员 可以很方便地将SQL语句传送给几乎任何一种数据库。 关键词:JDBC技术 要执行SQL语句,必须获得iava.sq1.Statement实例,State— ment实例分为以下3种类型: ①执行静态sQL语句。通常通过Statement实例实现。②执行 在常见商务网站开发过程中,几乎每个页面都用到了与数据库 动态SQL语句。通常通过PreparedStatement实例实现。③执行数 的操作,对于JDBC编程技术的理解直接影响我们的开发进行,所 以,需要对JDBC数据库的操作机制详细研究。JDBC(Java 据库存储过程。通常通过CallableStatement实例实现。 Database Connectivity)是一种用于执行SQL语句的JavaAPI。它 5 Statement接口提供了三种执行SQL语句的方法:execute- 由一组用Java编程语言编写的类和接口组成,为Java应用程序与 Query、executeUpdate和execute 各种不同数据库之间进行对话提供了一种便捷的方法,使得开发人 (1)ResultSet executeQuery(String sqlString):执行查询数据库 员能够用纯JavaAPI来编写具有平台无关性的数据库应用程序。 的SQL语句,返回一个结果集(ResultSet)对象。②int execute— JDBC的出现使Java程序对各种数据库的访问能力大大增强。通过 Update(String sqlString):用于执行lNSERT、UPDATE或DELETE 使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一 语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE 种数据库。JDBC的体系结构:目前,应用程序与数据库进行信息交 等。③e×ecute(sq}S ng):用于执行返回多个结果集、多个更新计数 换已经非常普遍。因此,一个程序设计语言对数据库开发能力的大 或二者组合的语句。 小,决定着该语言的流行程度。在JDK1.1版本之前,Java语言提供 6处理结果两种情况 的对数据库访问支持的能力是很弱的,编程人员不得不在Java程序 ①执行更新返回的是本次操作影响到的记录数。②执行查询返 中加入C语言的ODBC(OpenDatabaseConnect ty)函数调用,这 回的结果是一个ResultSet对象。ResultSet包含符合SQL语句中 使得Java程序的跨平台发布能力受到很大的。JDBC的出现使 条件的所有行,并且它通过一套get方法提供了对这些行中数据的 Java程序对各种数据库的访问能力大大增强。它为Java定义了一 访问。使用结果集(ResultSet)对象的访问方法获取数据。 个“调用级”(call—leve1)的SQL接口。这意味着我们可以执行原原 7关闭JDBC对象 本本的SQL语句并且取回结果。通过使用JDBC,开发人员可以很 操作完成以后要把所有使用的JDBC对象全都关闭,以释放 方便地将SQL语句传送给几乎任何一种数据库。JDBC扩展了Java JDBC资源,关闭顺序和声明顺序相反: 的能力,它和JDBC的结合可以让开发人员在开发数据库应用时真 ①关闭记录集②关闭声明③关闭连接对象 正实现“WriteOnce,RunEverywhere}71O Java数据库连接体系结构是用于Java应用程序连接数据库的 标准方法。JDBC对Java程序员而言是API,对实现与数据库连接 lle勰l0矬 ;ie 甄o Application 的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标 j蛰嚣e 挚l 准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连 淡;c V 接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据 库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标 数据库驱鞠 准的目标并且具有简单、严格类型定义且高性能实现的接口。 l数据麾l l数据库{ l数据鹰l Java具有坚固、安全、易于使用、易于理解和可从网络上自动下 载等特性,是编写数据库应用程序的杰出语言。所需要的只是Java 图1.1 JDBC层次结构 应用程序与各种不同数据库之间进行对话的方法。而JDBC正是作 JDBC连接数据库 为此种用途的机制。 创建一个以JDBC连接数据库的程序,包含7个步骤: JDBC扩展了Java的功能。例如,用Java和JDBC API可以发 1加载JDBC驱动程序 布含有applet的网页,而该applet使用的信息可能来自远程数据库 在连接数据库之前,首先要加载想要连接的数据库的驱动到 企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部 JVM(Java虚拟机)。这遇过java lang.Class类的静态方法forName 数据库中(即使这些职员所用的计算机有Windows、Macintosh和 (String className)实现。 UNIX等各种不同的操作系统)。随着越来越多的程序员开始使用 2提供JDBC连接的URL Java编程语言,对从Java中便捷地访问数据库的要求也在日益增 连接URL定义了连接数据库时的协议、子协议、数据源标识。 加。 书写形式:协议:子协议.数据源标识 MlS管理员们都喜欢Java和JDBC的结合,因为它使信息传 协议:在JDBC中总是以idbc开始 播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷 子协议:是桥连接的驱动程序或是数据库管理系统名称。 地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序 数据源标识:标记找到数据库来源的地址与连接端口。 的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应 3创建数据库的连接 用程序或只更新一次,然后将它放#J/JE务器上,随后任何人就都可得 要连接数据库,需要向java.sq1.DriverManager请求并获得 到最新版本的应用程序。对于商务上的销售信息服务,Java和JD— Connection对象,该对象就代表一个数据库的连接。使用Driver— BC可为外部客户提供获取信息更新的更好方法。 (上接第287页) 【3】缪效果,朱启逑.编著.数字控制机床【M】.湖北.华中理工大学出版社 [5】刘俊英,梁丰.数控系统的实时插补及加减速控制[J】.机械制造与研究. 1999. 2008(1). 【4】张淑红PCL6045B运动控制芯片控制模式的研究 .广西轻工业 【6] ̄fj丹,傅建中.基于ARM和PCL6045的运动控制器设计[J】.控制与检 2009(3) 测.2006(3). 288