|
此程序以链表的方式存储加工信息,包括几何路径信息和工艺信息,当工艺参数输入后,则链表生成.程序沿链表周游一次,则代码生成.
* NC代码翻译及仿真加工:
当NC代码生成后,为了保证数控程序的正确性,降低加工废品率,还要进行计算机仿真加工.需要将NC代码转换成加工信息,进而生成加工链表.这实际上相当于将程序源代码编译成机器代码的过程,所以编译原理的理论完全可以应用在这.我开发了一个NC代码编译器,它经过两遍扫描,通过词法分析,语法分析,既可以将NC代码转换成加工信息,同时生成加工链表.有了加工链表,就可以由插补模块形成几何路径,再借助计算机动画技术,可以很真实的反映加工情况.
* 工艺卡及工艺图生成:
WINDOWS系统为外设的使用提供了极大的方便性,它的设备无关性解放了许多程序员的苦恼.此程序采用DELPHY当中提供的打印控件,同时对PRINTER的CANVAS编程,自动生成工艺卡和工艺图,充分利用了计算机的计算和绘图能力.
* DNC计算机直接传输
本程序可以通过控制机的光电纸带接口,将代码直接送入控制机,这为老机床的改造提供了极大的方便.同时,也为新机床的网络化,提供了解决方案.
这套系统的另一个软件是线切割控制软件.它的关键控件由VC编制,界面用delphi编制,其中的开关量控制使用了行内汇编.在windows下的cnc系统,关键要解决的问题是windows系统禁止应用程序直接访问硬件,为了进入ring0层,本软件编制了专门的虚拟设备驱动程序.
这个控制软件的主要功能是: 1. 读入nc代码.并提供了编辑修改功能. 2. 提供了手动控制台,可手动以三种速度移动机床. 3. 可图形仿真加工,也可空走仿真加工. 4. 加工时,可直接控制高频电源,也可暂停进给.同时有速度,状态显示. 5. 提供自动间隙补偿. 6. 由于是在windows 平台上运行,它自然具有了多任务能力,在切割的同时,可以随意进行其他操作,可以玩游戏或者看vcd.
这个控制软件的开发难点是:
1. 要提供一个NC代码编辑器: 这个代码编辑器要具有一个简单字处理器的所有功能.以前在DOS状态下,这是一件很繁琐的工作.在WINDOWS平台上,借助DELPHY的VCL控件,这成为一种很轻松的工作.利用DELPHY的RICHEDIT控件可以很容易的实现代码编辑器的所有功能.
2. 具有手动控制台: 以前在DOS状态下,手动速度控制要依靠软件延时,需要设计一个循环子程序,空循环产生延时,浪费CPU时间.在WINDOWS平台上,利用DELPHY的TIMER控件,可以较为精确的控制机床速度,同时,由于WINDOWS系统对应用程序并不屏蔽IO口的访问,所以,可以使用行内汇编直接控制步进电机的运动.由于TIMER控件实际上是在使用时间中断,所以对CPU的占用要远远小于DOS下.
3. 插补模块: 对于数控系统来说,插补模块是很重要的部分.为了满足高精度的要求,本程序采用0.1um作为一个脉冲当量,对各种不同的精度要求,用多次插补,一次进给的方式,来解决数控系统与机械系统的精度差别.
4. WINDOWS下的中断控制: WINDOWS系统下屏蔽应用程序对硬件中断的控制,为了获得系统ring0级的控制权,需要自己开发设备驱动程序.VtoolsD是很好的驱动程序开发环境,可以很方便的编制驱动程序,避开繁琐的汇编语言.
搜索更多相关内容:
|