APP下载

基于CAN总线和USB存储的焊接参数采集系统

2017-05-10吕其兵

电焊机 2017年4期
关键词:标识符U盘时序

韩 旭,吕其兵

(西南交通大学材料科学与工程学院,四川成都610031)

基于CAN总线和USB存储的焊接参数采集系统

韩 旭,吕其兵

(西南交通大学材料科学与工程学院,四川成都610031)

针对焊接生产监控和质量评估中存在的问题,提出一种基于CAN总线和USB存储的焊接参数采集与传输方案,并重点设计了采集节点的硬件和软件。数据采集节点以STM32微控制器为核心,对焊机的焊接电流、电压等参数进行实时采集并通过CAN总线传输到上位机;同时,利用USB接口芯片CH376扩展节点的USB主控功能,实现对采集数据的高速本地USB存储。CAN总线通信方案采用分时上传的调度方式,避免多节点通信时可能出现的总线拥堵。测试表明,该系统成功实现了对采集数据的低速CAN总线传输和高速本地存储,有助于促进焊接生产监控技术的发展。

焊接;数据采集;CAN总线;USB存储

0 前言

近年来,在工业生产信息化的背景下,很多制造环节都进行了相关升级改造。然而,焊接生产车间的信息化进程相对滞后,存在以下问题:已有车间监控系统采集频率低,只能实现一般的监控、管理功能,而某些特殊工位要求采集数据能进行焊缝质量分析,目前常用的方法是单独配置一套专门的焊接过程监测设备,但价格昂贵、企业投入高[1]。如何兼顾这两方面的要求,以低成本实现焊接生产过程监测和质量分析的功能,在此结合CAN总线传输和USB存储的优势,探讨一种解决方案。

CAN总线是一种能够有效支持分布式实时控制的串行通信网络。其特点为传输介质为双绞线,抗干扰能力强;采用非破坏性仲裁机制避免总线冲突;采用短帧报文减少传输出错率;可扩展性好,可根据需要随意增删总线上的节点[2]。因此,基于CAN总线的数据采集系统具有很高的可靠性和灵活性。同时,USB存储技术广泛应用于移动存储领域,具有速度快、容量高、成本低等优点。将其应用到焊接数据采集中,可实现下位机节点对焊接参数的独立高速存储,既能扩展下位机的容量,又能满足特殊焊接工位对高速数据采集和质量分析的需求。

1 系统总体设计方案

系统整体结构如图1所示,采用一主多从的工作方式。CAN以太网网关作为主节点,接收现场从节点发送的焊接数据,并将其转换为以太网数据后发送至上位机。数据采集板作为从节点,将采集的焊接参数通过CAN总线发送至上位机,同时将参数连续高速地写入本地USB存储设备,实现低速数据传输和高速数据存储的结合。通过设置各节点CAN过滤器,使从节点发送的焊接参数信息只能被上位机节点接收,而主节点能够以广播的方式向各个从节点发送控制命令。根据CAN总线协议,单层CAN网络最多可支持110个节点,如需挂载更多节点,可加入CAN中继器组建多层CAN网络。作为分布式数据采集系统,本系统灵活性高,可根据需要增加或减少焊机节点而无需更改系统的软硬件。

图1 系统整体结构框图

2 系统硬件设计

数据采集节点的硬件结构如图2所示,主要由传感器接口电路、模拟信号调理电路、CAN总线接口电路和USB主控接口电路组成。传感器方面,使用霍尔电流传感器采集焊接电流,使用基于热质量流量计量的气体流量传感器采集气体流量,焊接电压经隔离和滤波电路处理后直接送入A/D转换引脚,使用欧姆龙旋转编码器模块采集送丝速度,将焊丝的直线运动转化为脉冲信号。主控芯片采用基于ARM Cortex-M3内核的32位增强型微控制器STM32F103ZET6。该芯片性能远优于51单片机,最高工作频率72 MHz,内置64 kB的片内RAM和512kB的片内FLASH,以及丰富的片上资源和通信接口,如IIC、SPI、CAN等。内置3个12位精度的A/D转换器,多达16个模拟输入通道,最高采样频率1MHz;配备1个CAN控制器,支持CAN 2.0A和CAN 2.0B协议,波特率高达1 Mbps;内置可变静态存储控制器(FSMC),可灵活高效地实现对各种类型的外部存储器等并口通信设备的扩展①STM32 Reference Manual.ST Microelectronics,2009;②CH376技术手册.江苏沁恒股份有限公司,2010.。

图2 数据采集节点硬件结构框图

2.1 CAN总线接口电路

STM32芯片自带CAN控制器,还需一CAN收发器才可接入CAN总线。选用TI公司的SN65HVD 230作为CAN收发器,接口电路如图3所示。考虑到焊接车间的电磁干扰,在STM32和CAN收发器之间加入光耦隔离电路。PA12和PA11分别为STM32的CAN控制器发送引脚和接收引脚,经高速光耦6N137构成的隔离电路与CAN收发器相连,实现总线上各节点间的电气隔离,增强系统抗干扰能力。此外,在收发器的差分电平发送端和接收端之间并联一个120 Ω的终端电阻,以匹配总线上的阻抗,消除信号在传输线末端的反射和回波,提高CAN总线数据传输的稳定性。

2.2 USB主控接口电路

采用低成本的USB主控芯片CH376扩展节点的USB存储功能。该芯片内置USB通信协议基本固件和FAT12/16/32文件系统管理固件,避免让主控芯片处理庞大的文件系统,大大降低系统开销②。CH376支持8位并口、SPI和异步串口等通信方式,为提高通信速度,系统选用并口方式与STM32通信。与51单片机不同,STM32与并口器件通信通过可变静态存储控制器(FSMC)接口来实现。FSMC是一种新型的存储器扩展技术,它可根据外部存储器类型,发出相应的数据、地址、控制信号来匹配外部存储器的工作时序,使STM32能够扩展SRAM、NOR Flash、PSRAM等多种类型的外部存储器。CH376并口工作时序与SRAM存储器相似,故可参考SRAM的扩展方式配置FSMC。CH376与FSMC的连接方法如图4所示。

图3 CAN总线接口电路

图4 CH376与STM32连接示意

3 系统软件设计

3.1 USB存储程序设计

USB存储程序流程如图5所示,有三个关键点:(1)初始化FSMC是STM32与CH376正常通信的关键,需设置FSMC的基本特征和时序参数,根据SRAM时序模型和CH376的并口时序即可确定。(2)在U盘指定目录新建一个TXT格式的文本文件,此过程需调用CH376官方的文件系统接口函数。首先初始化CH376,设置其工作在主机模式;然后调用CH376DiskConnect函数等待U盘连接,连接成功后使用CH376DiskMount命令初始化磁盘;确认磁盘准备就绪后,调用CH376FileOpen函数判断文件是否存在,若不存在则通过CH376FileCreate函数新建文件。(3)向TXT文件写入焊接数据。以扇区(512字节)为单位对文件进行读写,在RAM中开辟一个8 kB的临时缓冲区,按“四路焊接参数值+当前时/分/秒+换行符”的固定格式将数据存入缓冲区内,当缓冲区满4 kB时执行扇区写入命令,并及时更新文件长度。U盘数据的还原通过计算机上的LabVIEW读取程序完成,还原公式为

式中X为焊接参数的真实值;Uref为STM32内置AD转换器的参考电压;D8和D4分别为12位AD转换结果的高8位和低4位;P为传感器输入输出比。

图5 USB存储程序流程

3.2 采集节点主程序设计

采集节点主程序流程如图6所示,由参数采集与USB存储主程序、CAN定时发送、CAN接收中断和外部脉冲中断(图中略去)等程序组成。主程序中的系统初始化主要是对STM32的时钟和外设进行初始化,在此重点介绍CAN标识符过滤器的初始化。其作用是根据报文标识符(ID)选择性接收总线上的报文。标识符过滤器有屏蔽位和列表两种工作模式,在屏蔽位模式下可以收到一组特定的报文(ID在一定范围内),而列表模式下只能接收到单一类型报文。本系统中,从节点设置为标识符列表模式,只接收主节点的广播的时基同步命令;主节点则设置为标识符屏蔽位模式,可接收各个从节点发送的焊接数据。

图6 主程序流程

在数据采集与滤波程序中,ADC工作在扫描并连续转换模式,开启3个规则组通道,依次对电流、电压、气流3路信号进行循环采样。同时开启DMA,使数据直接从ADC数据寄存器传入RAM的结果数组内,无需CPU干涉,既能提高数据传输效率,又能减轻CPU的工作负担。在数据处理上,采用平均值滤波算法,取连续20次采样值的算术平均值作为最终采样结果。

采集数据的CAN总线发送通过定时器的定时中断完成。CAN发送优先级由节点报文标识符ID决定,当总线上只有几个节点时,依靠ID优先级调度,采用随机上传的发送模式即可。当总线上节点很多时,ID优先级调度会延长总线仲裁的时间,影响通信效率。因此,本系统采用分时上传的调度策略,通信时序如图7所示。主节点每隔1 s向总线广播时基同步命令,各从节点接收到命令后同时启动定时器,所有从节点定时器的单次定时时间均设置为Δt,但各节点定时发送程序中的定时周期设定值并不相同,等于图7中的节点号,从而实现数据的分时传输。总上传周期为(n+1)×Δt,与主节点时基同步命令的广播周期一致。

图7 多节点通信时序

4 测试及分析

(1)CAN总线通信测试。首先分析110个节点通信时的总线负载情况。一方面,为保证1帧/s的上传频率,要求每个节点必须在9.09 ms内将数据发送完毕,而系统中一个数据包占用两个扩展帧,长度为256 bit;另一方面,为保证500 m的通信距离,CAN波特率设置为100kb/s,传输1bit需用时10μs。所以,单个节点每次发送用时为256×10=2.56 ms,完全满足前述发送用时要求,此时通信负载率仅为2.56/9.09≈28.2%,不会出现总线拥堵。下面模拟这种负载情况并测试数据传输的准确性,采用一个节点每隔9 ms通过CAN总线向上位机发送两个扩展数据帧,数据域为“0x00 0x12 0x34 0x56 0x78 0xAB 0xCD 0xEF”,帧ID为0xAA,波特率为100 kb/s。在计算机上使用CANTest查看报文接收情况,部分报文如图8所示,反复测试结果表明CAN总线数据传输准确、稳定。

(2)USB存储功能测试。按固定格式向U盘连续写入测试数据包(长度为16个字节),结束后通过计算机查看U盘中的TXT文件。结果表明,数据被准确存入U盘。经统计,写入速度平均为190 kB/s,相当于平均每秒记录12 160组焊接参数。熔化极气体保护焊中,熔滴过渡过程对焊缝成形、焊接飞溅和接头的质量影响明显,CO2电弧焊

Page 124

Welding parameters acquisition system based on CAN bus and USB storage

HAN Xu,LV Qibing
(School of Materials science and Engineering,Southwest Jiaotong University,Chengdu 610031,China)

In order to solve the problems of real-time monitoring and quality evaluation in welding,this paper proposed a welding parameter acquisition and transmission scheme based on CAN bus and USB storage,and designed the hardware and software of the acquisition node.The CAN acquisition node,centered on 32-bit embedded microcontroller,was responsible for collecting and processing welding current,voltage and other parameters,which could be sent to CAN master node through CAN bus network.With the help of USB-HOST interface chip CH376,the acquisition node could achieve high speed local USB storage.In the communication scheme,the time sharing upload scheduling method was adopted to avoid low communication efficiency.Tests showed that the system had successfully implemented low-speed CAN bus transmission and high-speed local storage for data acquisition,which helped to promote the development of welding production monitoring technology.

welding;data acquisition;CAN bus;USB storage

TG409

A

1001-2303(2017)04-00

10.7512/j.issn.1001-2303.2017.04.

郭吉昌,朱志明,闫国瑞,等.基于UG的弧焊机器人离线编程系统开发[J].电焊机,2017,47(03):1-6.

2017-01-13

韩旭(1990—),男,河北石家庄人,在读硕士,主要从事焊接设备及其自动化的研究。

猜你喜欢

标识符U盘时序
基于底层虚拟机的标识符混淆方法
基于Sentinel-2时序NDVI的麦冬识别研究
基于区块链的持久标识符系统①
采用U盘文件冗余方案实现TSP系统的可靠装载
自动辨认插口方向的U盘
基于FPGA 的时序信号光纤传输系统
数字美术馆“数字对象唯一标识符系统”建设需求浅议
一种毫米波放大器时序直流电源的设计
数字图书馆推广工程唯一标识符体系构建研究*
U盘“闹肚子”