【VB开源代码栏目提醒】:网学会员--在 VB开源代码编辑为广大网友搜集整理了:基于VB的数控机床加工程序网络化传输 - 期刊论文绩等信息,祝愿广大网友取得需要的信息,参考学习。
基于
VB的数控机床加工程序网络化传输摘要:针对相当一部分数控系统无网络功能,只能手工输入NC程序的
问题,利用
VB 6.0作 为开发平台,开发了基于Windows环境的数控程序网络传输软件,有效的将CAD/CAM 软件与数控系统结合起来,实现了远程大容量资源的共享,把数控机床利用率提高了 40% 在数控加工教学应用中取得了很好的效果.关键词:数控机床 串口通信 MSComm控件
VB based on the numerical control machine tool machining process network trans
missionAbstract: NC system for a considerable portion of non-network,can only enter the hand-NCprocess.
VB 6.0 to use as a development platform and windows-based development environmentfor the NC program network software will be effective CAD / CAM software and CNC combinedto achieve a high-capacity long-range resource sharing. NC machine tools will increase theutilization rate of 40 in the application of CNC machining to achieve good results.Key Words: NC machine tools Serial Communication MSComm control 1、前言 随着CAD/CAM 技术的发展及网络的普及,机械制造业取得了飞速的发展,敏捷化、柔 1性化、数字化、网络化成为先进的制造技术的主流 .随着零件加工多样化和各种计算机辅助设计/制造CAD/CAM 系统的完善与发展,数控机床和PC机的数据通信越来越受到人们的关注.一方面利用自动编程软件生成的程序可通过数据通信将加工程序从PC传到CNC;另一方面可将CNC的参数传到PC机备份,防止CNC参数丢失时,进行反传。
在数控加工的教学中加工程序的
网络传输技术可以更好的展现数控模具加工的全过程和加工特点。
自行设计和加工一个简单的零件,对于调动学生的
学习积极性,培养学生的实践创新能力有重要的推动作用。
笔者开发了基于Windows环境的数控程序网络传输软件,实现数控机床与计算机间的NC
程序传输,有效的将CAD/CAM 软件与数控系统结合起来,在数控加工实习教学应用中取得了很好的效果。
2、数控机床加工程序网络传输
方案 2.1、PC与数控机床的连接方法 数控机床的联网取决于其通信接口。
对于自身带有网络接口的数控机床来说,采用Winsock控件技术可以方便、快捷地实现客户机与服务器及机床之间的数据交换;而目前国内的机床绝大多数没有自带的网络接口,无法直接连入局域网,只能通过数控机床提供的RS—232或RS—485串行通信接口实现数控程序的接收和发送。
2 本研究采用RS-232串行接口,通信电缆连接方法见图1,各引脚含义如表1和表2所示 。
图1 电缆连接方法 (左侧为9针计算机端,右侧为25针机床端) 表1 9针D型母插头 表2 25针D型公插头 引脚 信号名称 方向 引脚 信号名称 方向 1 载波检测 输入 1 保护地 2 接收数据 输入 2 发送数据 输出 3 发送数据 输出 3 接收数据 输入 4 数据终端就绪 输出 4 请求发送 输出 5 信号地 5 清除发送 输入 6 数传设备就绪 输入 6 数传设备就绪 输入 7 请求发送 输出 7 信号地 8 清除发送 输入 8 载波检测 输入 9 保护地 9 数据终端就绪 输出 2.2、串口通信程序设计 串口通讯就是指外设和
计算机间使用一根数据信号线,数据在一根数据信号线上按位进行传输,每一位数据都占据一个固定的时间长度。
在程序
设计中有两种实现途径:其一是使用Windows API,微软为开发者提供了很多相关的串行操作的编程接口,使用这些接口,可以完成更为强大的功能;另外一种途径就是使用MSCOMM控件,此控件提供很多方便操作的属 3性和方法,利用它们可以很方便地实现 。
无论使用哪一种途径,其基本的操作步骤大致相同:首先初始化串口,比如端口号,波特率等属性,然后打开端口,通过接受缓冲区读上行数据,通过发送缓冲区来写下行数据。
最后通过事件驱动来反映数据的到达与发送过程。
本
系统采用Visual Basic中的Microsoft Communcation Control简称MSComm通讯控件,通过对此控件的属性和事件进行相应编程操作,可以轻松地实现串口通讯。
2.3、MSCOMM控件的主要属性: 事件驱动通信是处理串行端口交互作用的一种非常有效的方法。
使用MSCOMM控件主要是通过事件来处理串行口的交互,即当数据到达时,控件的OnComm的事件就会来捕获或处理这 4些通讯事件。
而OnComm事件也可以用来捕获和处理通讯错误 。
在实际应用中,一个MSCOMM控件就对应一个串行口,所以如果要处理多个串行口的话,必须有相应数量的控件与之对应。
CommPort:设置或者返回串行端口号;Settings:用来设置和返回波特率,奇偶校验,数据位和结束位参数;PortOpen:设置或者返回通讯端口的状态,也可以打开和关闭一个端口;Input:从接受缓冲区里获取或删除数据;Output:给发送缓冲区里写数据。
2.4、串行异步
通信协议的配置 数控机床与计算机进行数据传输时必须在计算机中给出符合通信要求的通信协议.这些通信协议主要有:字符传输格式、波特率、数据位、停止位、奇偶校验位及握手方式等。
这些通信协议必须能够在
软件系统中进行设置.为了满足能够与FANUC一0系列数控机床进行数据交换,在软件中设计参数式通信协议选择方式。
数据传输的波特率一般为60~19200bit/s,根据机床的波特率设置为9600bit/s等供选择的传输速率,数据位为8位,停止位为1位或2位,奇偶校验方式有奇校验、偶校验和无校验方式.在异步串行通讯中为了保证数控加工程序的可靠传送,数据开始发送以后,数据的发送与接收必须同步,采用XON/XOFF字符控制传输数据流的通和断。
2.5、界面窗体设计 主界面窗体主要完成程序初始化、各标志变量的设置与响应、发送与接受文件和显示相应信息等功能,见图2。
图2 主界面窗体 首先建立公共模块存放整个工程项目公用的函数、过程和全局变量等,如下所示 Public intCommflag As Long ′ 定义模块变量 Public BlnFileTransFlag As Boolean ′ 文件传输方式标志 Public strFileDirectary As String ′ 文件路径 Public strFileName As String ′ 文件名 Public intFileLenth As Long ′ 文件长度 Dim intFileNumber As Long ′ 文件号 Dim inDataLenth As Long ′ 数据桢长度 Dim inDataCount As Long ′ 数据桢总数 Dim inDataNumber As Long ′ 已经发送数据桢数 Dim strSendFile As String ′ 请求接收新文件桢负载 Dim bytSendFile As byte ′ 数据桢负载 Dim bytFileBuffer As byte ′ 文件缓冲区 Dim inFileReceivelenth As Long ′ 已经接受文件的字节数 Dim inReceivelen As Long ′ 每次读入数据的字节数 Dim inReceive As byte ′ 接受到的数据桢负载 串行口接收到数据后的校验处理、把接收到的数据重新拼接成文件、根据接收端请求向接收端发送数据等过程都要写入公共模块,这里不一一列举。
主界面窗体不仅要完成系统设置和信息发送功能,信息的显示也应在主窗体中实现。
对于串口发送和接收文件功能,在主窗体中需调用响应的接口: Dim intCommPort As Long ′ 串口号 Dim strCommSettings As String ′ 串口设置 Dim intInBufferSize As Long ′ 接收缓冲区大小 Dim intOutBufferSize As Long ′ 发送缓冲区大小 当加载主窗体时,还要完成初始化串行口、标准对话框、发送接收标志、显示信息和串口设置任务: Private Sub Form_Load Text1 Winsock1.LocalIp If MSComm1.PortOpen False Then MSComm1.PortOpen False True End if ′abc 0 blnShowFlag True Main.Height 7000 Call SetComm 9600 N 8 1 ” 2 4096 ′ 串口设置 intInBufferSize 4096 intOutBufferSize 2048 intCommFlag 0 ′ 初始系统状态 Main.CommonDialogl .Flags H200000 Or H2 ′ 初始化标准对话框 Main.CommonDialogl .CancelError True blnFileTransFlag False ′ 初始化发送接受标志 lReceive.Text “ ” ′ 信息显示初始化 intArrayCount 0 End Sub 2.6、机床数控系统通信协议的设置 启动机床,确保机床处于正常
工作状态。
CNC无任何报警,设置机床的参数,机床的波特率设置为9600bit/s,数据位为8位,停止位为1位,奇偶校验方式无校验方式; I/O 设置为0 ;ISO 为 1 ;OOO2参数中的ASR33项设置为 0 ,阅读/穿孔接口用于FANUC PPR;STP2项设置为 0,阅读/穿孔接口的停止位由1位设定。
当CNC和PC设置完后,就能通过RS232接口进行数据通讯功能。
3、结语 本软件有效将CAD/CAM 等先进的软件与数控机床有机的联系起来,解决了手工输入NC程序的繁琐,并且利用日益发达的网络,将远程设计中心与数控车间有机的接合,为实现网络联盟奠定了坚实的基础。
本软件以其操作简便、运行稳定、性能可靠等特点,在数控教学取得了很好的效果,大大提高了数控机床的利用率。
参考文献1孙大涌,屈贤明,张松滨.先进制造技术M .北京:机械工业出版社,2000.60一80.2谢小星 CAXA数控加工造型编程通信M.北京:北京航空航天大学出版社2002.165-1703李长林,Visual Basic 串口通信技术与典型实例M.北京:清华大学出版社,2006.23-24