简介
随着集成电路和计算机的发展,嵌入式系统的应用越来越广泛,其应用主要分为智能仪器和计算机扩展应用。计算机和智能控制在焊接领域的应用已经实现了数字化焊机,实现了操作过程的自动化。但对于远程的焊接监视和控制系统的应用还并不广泛,而结合通信技术和嵌入式软硬件的发展,特别是可以提供丰富的各种网络扩展接口,能够支持 TCP/IP 协议,通过适当的组件网络,可以方便的构建服务器端和客户端系统,形成焊接系统的远程控制,这样可以方便进行野外等恶劣环境下的自动焊接。方便进行远程的焊接管理与监控。
现代计算机技术和因特网应用为焊接自动化也提供了新的发展领域,通过数控焊接设备与网络的结合,可以实现对焊接现场的监测和控制。基于嵌入式 Web 服务器( Embedded Web Serv-er,EWS) 的思想,并结合数字焊机的可控性,设计了远程焊接的监测控制系统,通过采集相应的焊接参数,利用嵌入式 Web 服务器技术,通过浏览器实现对焊接现场的远程实时监控,完成焊接过程的自动化及远程可控化。
远程焊接系统整体设计系统整体结构框图如图所示。系统由焊接终端焊接现场的数据采集系统、嵌入式服务器和远程客户端组成。由于焊接需要采集大量信息,以及要求实时性较高,因此焊接远程监测系统采用DSP加ARM 双处理器结构,针对焊接的实时性及数据量大的特点,通过 TMS320F2812 构建实时数据采样平台,主要对焊接过程中的电压电流,焊缝位置信息等进行采集处理。
控制部分的硬件平台采用S3C2440,带有板载 100M 网络接口,DM9000 网卡,带联接和传输指示灯,可以配置一个五线异步串行口,波特率最高115 200bps 另外扩展出两个串口,Wince 和 linux 下均提供三串口源码。操作系统可以选择 LINUX。
焊接现场主要由 1 台数控焊接机和相应的控制及信号传感系统组成。传感系统采用红外探测器,安装在焊机横梁上,可以实时探测是否存在需要焊接或补焊的位置,当满足焊接要求时,启动焊接程序,同时将信号传递给远程监控端。远程客户端通过网络实现和服务器端的通信。焊接过程中的电流电压参数通过传感器发送给 DSP 进行数据实时采集,并将处理结果传给远程控制端,远程控制端可进行焊接过程实时监测并进行控制,控制信号返回焊接终端,经 DSP 处理后控制焊机摆动和送丝机构,达到对焊接过程的监控。1
数据采集系统设计通过在焊机上安置可以来回移动的单探头气介式超声波传感器,当扫描到钢管的焊缝位置时,可以检测到待焊焊缝,并将信号送于处理器,启动焊接程序,自动进行焊接,同时进入焊接过程和远程服务进程。在软件设计时,可以利用处理器的软件时钟,即“软件定时器”,当传感信号检测到符合焊接条件时便产生硬件中断,当硬件中断到达时,内核更新。Linux 内核 中 添 加 软 件 时 钟,首 先 必 须 分 配struct timer_list 类型,然后调用函数 add_timer( ) ,将该软件时钟添加到相应调用 add_timer( ) 函数的CPU 中。为更好的进行焊接过程的控制,在焊枪上安置电磁感应式传感器。实现焊接过程的自动校正,焊接轨迹控制如图所示。
焊接过程中电压和电流的采集主要由霍尔电压传感器和电流传感器实现。霍尔电压传感器选用KV20AP,闭环式控制。霍尔电流传感器选用CSK3-SOO采集到的信号送入TMS320F2812的A/D转换单元进行处理,之后将处理结果送于ARM,最后通过网络接口送于客户端。
嵌入式服务器的设计系统可以选择为Linux,对于通信控制而言,网络的服务器大多架构在linux服务平台上的。linux系统相对于其他操作系统具有安全性高,硬件要求低,系统性能稳定等一系列优势。而相对linux而言,其本身属于开源软件,便于研究和学习。
S3C2440微处理器的外围地址空间扩展一片16MB的芯片来存储采集的各项数据。嵌入式文件系统在NAND-FLASH存储芯片中保存了两个网页文件temp.htm和his.htm,分别用来显示当前焊接参数以及保存历史数据。
网络传输部分的程序拟采用基于windows的客户端和基于嵌入式Linux的服务器的总体设计。通过选用嵌入式Web服务器来完成接收客户请求、分析请求、响应请求、向客户端返回请求结构等任务。嵌入式服务器内部架构如下图所示。
远程客户端基于windows客户端装载在客户端PC机上,主要完成客户端连接控制、焊接数据接收以及焊接数据监控显示过程。而嵌入式的服务器端则主要完成和客户端连接控制、数据传送功能。嵌入式Linux服务器传送的数据由焊接现场的传感设备采集后经DSP处理后送入S3C2440,应用程序根据数据寄存器的数据,对应转化为特定数值进行传输。
LINUX网络编程主要是建立Socket套接字接口,在主程序中可以进行对套接字的调用,在此可以利用套接字分别设置本地和远程端相关信息,如设置焊接远程端口1、远程地址1、设置本地端口2、本地地址2等。通信时,被打包的数据通过主程序调用套接字来实现相关功能。当焊接设备开始运行时,服务器端的应用程序即将进入和客户端的通信准备状态,系统建立一个main主进程,主程序开始后,将建立Socket进程,然后进入BIND绑定和ACCEPT连接函数,主程序开始同时进入焊接数据采集线程。其程序结构图如下图所示。1
远程焊接机器人基于IGRIP的焊接机器人远程控制模式原理较为简单,硬件组成也不复杂,实现的难点是运动通道组件的开发,采用基于IGRIP的远程控制方式的优点是:
(1)仿真和控制引擎可以直接采用IGRIP,IGRIP是专用的机器人仿真软件,而且提供了大量的商品机器人模型库和机器人的相关共享库,对机器人的支持更丰富,功能更强大。
(2)IGRIP提供了Nettools网络通讯库,用户可以直接调用相关库函数进行网络通讯程序的开发,大大提高了编程的效率,减少了开发时间和出错的可能。
这种方式的缺点是:
(1)服务器缺乏分布性,只有在安装了IGRIP的机器上才能进行远程仿真和控制,但IGRIP软件是有版权的商业软件,而且license和硬件绑定在一起。
(2)采用IGRIP作为机器人远程控制的核心,虽然功能强大,但是需要用户输入CLI命令进行仿真和控制,要求用户对CLI命令很熟悉,而且CLI命令很多,完全是文本方式。普通用户较难熟练掌握。最好事先在IGRIP中建好机器人及工件模型,在远程控制时,直接用CLI命令加载进仿真环境就可以了,否则用CLI命令建模,将是一件很繁琐的工作。
(3)Motion pipeline中的动态链接库,需要用户自己开发,并且要和实际的机器人控制程序进行联调。