最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能生产

数控系统加工过程远程监控工具的设计与实现

发布时间:2014-10-07 作者:田德伟 陶耀东 焦广胜  来源:万方数据
关键字:数控系统 加工 远程监控 
为了实现对数控系统加工过程的远程监控,文章使用硬件抽象层、共享内存、I/O 多路复用等技术设计了数控系统加工过程远程监控工具。共享内存池和共享内存块两级管理的方式,提高内存的利用效率; I/O 多路复用技术解决了多客户端登陆的问题,提高了服务器端 CPU 的利用率; 利用 HAL技术设计了 halcmd 程序,用户能够通过运行客户端应用程序远程登陆服务器,监控数控系统的加工过程。最后通过 EMC2 开源数控软件对数控系统加工过程进行实验仿真,实验表明,该远程监控工具能够方便的对数控系统的加工过程进行监控。

2 系统设计

  远程监控工具利用模块化的设计思想,从纵向来看总体框架自底向上包含 linux 操作系统、RTAI 模块、硬件抽象层模块、数据采集程序和客户端程序。RTAI模块和硬件抽象层模块运行在内核空间,数据采集程序和客户端程序运行在用户空间,它们之间的数据通信利用 rtai 提供的共享内存和 I/O 多路复用技术来实现的,总体结构如 2 图所示。

远程监控工具总体结结构图

图 2 远程监控工具总体结结构图

  2.1 数据结构设计

  数据采集方法的设计以 RTAI 的共享内存为数据传输介质。共享内存在内核空间和用户空间之间进行数据传输,具有较高的灵活性,所以在数控系统中应用广泛,因此提高共享内存的管理效率对各种使用共享内存的应用具有很重要的意义。采用两级数据管理结构,能够有效的分配和释放共享内存,使用 C 语言实现的该共享内存管理层具有很好的可移植性,能够减少共享内存分配和释放时间,同时互斥量的使用也能保证共享内存的并发访问。数控系统加工过程远程监控工具的设计是基于一个共享内存的管理工具来实现的。使用共享内存池和共享内存块这两种结构来完成对共享内存管理工具的设计,共享内存管理工具的结构如图 3 所示。

共享内存管理工具结构图

图 3 共享内存管理工具结构图

  2.2 远程监控工具设计

  主要是描述利用 I/O 多路复用技术实现多个客户端的登录服务器的流程,登陆处理流程图如图4 所示。

客户端登陆流程图

图 4 客户端登陆流程图

  客户端登陆服务器端,首先需要打开远程调试模式,并利用 I/O 多路复用技术创建 TCP 并发服务器;客户端登陆成功后,可以通过终端输入 halcmd 命令,实现远程查看数控系统运行状态。当输入 exit 或 quit命令时,客户端终止这一次的连接。

  利用 I/O 多路复用技术设计的服务器端架构大致如下:

  初始化( socket,bind,listen) ;
  while( 1)
  {
  设置监听读写文件描述符;
  调用 select;
  如果是监听套接字就绪,说明一个新的连接请求
  建立。
  {
  建立连接( accept) ;
  加入到监听文件描述符中
  }
  否则说明是一个已经连接过的描述符
  {
  进行 read 或 write 操作
  }
}

  与多进程并发方式相比,采用 I/O 复用技术的最大优势是服务器只需要一个进程来处理所有的客户机请求,所有程序没有创建和管理进程的开销,减少了系统运行中的系统开销,提高了服务质量; 同时服务器运行在单一进程上下文中,因此每个逻辑流都能访问该进程的全部地址空间使得在流之间共享变量很容易。

本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。