基于CAN总线的钢轨气压焊控制系统:设计、实现与优化_第1页
基于CAN总线的钢轨气压焊控制系统:设计、实现与优化_第2页
基于CAN总线的钢轨气压焊控制系统:设计、实现与优化_第3页
基于CAN总线的钢轨气压焊控制系统:设计、实现与优化_第4页
基于CAN总线的钢轨气压焊控制系统:设计、实现与优化_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于CAN总线的钢轨气压焊控制系统:设计、实现与优化一、引言1.1研究背景与意义1.1.1铁路发展对钢轨焊接质量的需求近年来,随着我国经济的快速发展,铁路作为国家重要的基础设施,在交通运输体系中发挥着至关重要的作用。尤其是高速铁路的迅猛发展,对钢轨焊接质量提出了前所未有的高要求。钢轨焊接质量直接关系到铁路的安全和稳定运行,影响着列车的运行速度、舒适性以及使用寿命。在铁路运行过程中,钢轨接头是轨道结构的薄弱环节。若焊接质量不佳,接头处容易出现诸如裂纹、气孔、未焊透等缺陷,这些缺陷会在列车的长期反复荷载作用下逐渐扩展,进而导致钢轨断裂,严重威胁行车安全。同时,焊接质量不达标还会引发轨道不平顺,使列车运行时产生振动和噪声,不仅降低了乘车的舒适性,还会加速轨道部件的磨损,增加铁路的维护成本。为了满足铁路高速、重载的发展需求,必须确保钢轨焊接接头具备高强度、高稳定性和高耐久性。高强度能够使焊接接头承受高速列车的重载和高速运行带来的冲击力;高稳定性可保证焊接接头长期保持几何尺寸不变,为列车运行提供平稳的轨道基础;高耐久性则能使焊接接头有效抵抗各种环境因素的侵蚀,延长轨道的使用寿命。因此,提高钢轨焊接质量已成为铁路建设和维护领域的关键任务。1.1.2钢轨气压焊的优势与现状钢轨气压焊是将需焊接的钢轨端面对准并紧密贴合,用火焰加热端面周围到塑性状态,然后对贴合面加压顶锻,使金属原子相互扩散,形成牢固的金属键,从而实现焊接的方法。这种焊接方式具有诸多显著优势,如焊接方便,无需大型的焊接设备和复杂的施工场地准备,可在现场灵活进行焊接作业;成本较低,相较于其他焊接方法,在设备投资、材料消耗等方面费用较少;且能保证焊接质量,焊接接头的强度高,与母材材质接近,抗拉强度达到母材标准的90%以上,断后伸长率达到母材的80%以上,正火后焊缝冲击韧性与钢轨母材材质相同,因此在铁路建设和维护中得到了广泛应用。然而,目前在中国铁路行业广泛应用的移动式气压焊轨机也存在一些不容忽视的问题。一方面,焊接接头质量受人为因素影响较大。例如,操作人员在钢轨端面处理、火焰调节、顶锻时机和压力控制等环节的操作差异,都可能导致焊接质量不稳定。另一方面,系统各部件之间的连接电缆故障率高。由于现场焊接设备移动频繁,连接电缆在使用过程中常出现破断现象,尤其是高压泵站和控制箱之间的连接电缆,受铁路沿线强电磁场的干扰,更容易出现故障。此外,由于电缆芯数多,设备维护困难,一旦出现问题,排查和修复故障耗时费力,严重影响了设备的正常使用和焊接工作的顺利进行,这也在一定程度上阻碍了移动式气压焊轨机的推广使用。1.1.3CAN总线技术应用于钢轨气压焊控制系统的意义CAN(ControllerAreaNetwork)总线,即控制域局域网,为两线制串行通信总线,具有可靠的错误处理机制、良好的实时性和较强的抗干扰能力,非常适合在恶劣的条件下使用。将CAN总线技术应用于钢轨气压焊控制系统,能够有效解决当前移动式气压焊轨机存在的问题。通过采用CAN总线实现高压泵站和控制箱之间的通讯控制,可大大减少信息交换的电缆芯数。这不仅降低了设备因电缆故障导致的故障率,还使得设备维护更加简便。同时,CAN总线的高抗干扰性能够确保在铁路沿线复杂的电磁环境下,系统各部件之间的通讯稳定可靠,从而提高整个控制系统的可靠性。此外,CAN总线的实时性特点能够使控制系统及时响应各种信号变化,实现对焊接过程中油压、顶锻量等关键参数的精确控制,进一步提高焊接质量。因此,CAN总线技术在钢轨气压焊控制系统中的应用,对于推动钢轨气压焊技术的发展,提高铁路建设和维护的效率与质量具有重要意义。1.2国内外研究现状在钢轨气压焊技术方面,国外起步较早,技术相对成熟。以日本为例,自1964年成功将气压焊技术应用于时速200公里以上的新干线铁路,经过40余年的发展和实践,积累了丰富的经验,保证了铁路运行的舒适和安全。在设备研发上,国外一些先进的气压焊设备在自动化程度、焊接质量稳定性等方面具有优势,能够实现对焊接过程的精确控制,有效减少人为因素对焊接质量的影响。国内对钢轨气压焊技术的研究也在不断深入和发展。近年来,随着铁路建设的快速推进,对钢轨焊接质量的要求日益提高,国内科研机构和企业加大了对钢轨气压焊技术的研发投入。西南交通大学焊接研究所成功研制了基于PLC的数控式小型气压焊轨机,其焊接接头质量的合格率高且稳定,得到了行业内的认可。然而,目前国内广泛应用的移动式气压焊轨机仍存在一些问题,如前文所述的接头质量受人为因素影响大、连接电缆故障率高、维护困难等,需要进一步改进和完善。在CAN总线应用方面,国外在工业自动化控制领域已经广泛应用CAN总线技术,并且在相关的理论研究和工程实践方面都取得了显著成果。在汽车电子、智能建筑、工业机器人等领域,CAN总线凭借其优越的性能,实现了设备之间高效、可靠的通信和控制。国内对CAN总线技术的研究和应用也在逐渐增多,尤其是在工业控制领域,CAN总线技术得到了越来越广泛的应用。一些企业和科研机构针对不同的应用场景,开发了基于CAN总线的控制系统,提高了系统的性能和可靠性。但是,将CAN总线技术应用于钢轨气压焊控制系统的研究还相对较少,相关的研究成果和工程实践经验有待进一步积累和完善。综合来看,现有研究在钢轨气压焊技术和CAN总线应用方面都取得了一定的成果,但将两者有机结合,应用于解决当前移动式气压焊轨机存在问题的研究还存在不足。本研究将致力于此,通过将CAN总线技术引入钢轨气压焊控制系统,探索一种更加可靠、高效的钢轨气压焊控制方案,以提高钢轨焊接质量和设备的运行稳定性。1.3研究内容与方法1.3.1研究内容本研究主要围绕基于CAN总线的钢轨气压焊控制系统展开,具体研究内容包括以下几个方面:硬件设计:设计基于CAN总线的钢轨气压焊控制系统硬件架构,包括主节点和下位机数据采集、控制模块。主节点由单片机AT89S52、CAN独立控制器SJAl000与CAN收发器82C250构成,负责整个系统的控制和数据处理;下位机模块采用周立功公司的ICAN系列工业模块,实现对焊接过程中油压、顶锻量等参数的采集和控制。同时,设计各模块之间的接口电路,确保数据传输的稳定和可靠。软件设计:采用C语言编写控制系统软件,主要包括初始化CAN控制器、发送命令帧、接收并处理返回帧数据等功能模块。通过软件实现对焊接过程的时序控制,精确控制各个焊接阶段的时间和参数,以及对油压、顶锻量的恒值控制,保证焊接质量的稳定性。此外,还需设计友好的人机交互界面,方便操作人员进行参数设置和监控焊接过程。系统测试与验证:对制作好的硬件和软件进行模拟调试,测试系统在不同工况下的性能表现,包括通讯的可靠性、参数控制的精度、焊接质量的稳定性等。通过实际焊接试验,验证基于CAN总线的钢轨气压焊控制系统的有效性和优越性,并对测试结果进行分析和总结,针对出现的问题提出改进措施。1.3.2研究方法本研究拟采用以下几种研究方法:文献研究法:广泛查阅国内外关于钢轨气压焊技术、CAN总线技术以及相关控制系统设计的文献资料,了解该领域的研究现状和发展趋势,掌握现有研究成果和存在的问题,为课题研究提供理论基础和技术支持。对比分析法:对比分析传统钢轨气压焊控制系统和基于CAN总线的钢轨气压焊控制系统在硬件架构、软件设计、性能特点等方面的差异,明确CAN总线技术应用于钢轨气压焊控制系统的优势和创新点,为系统设计提供参考依据。实验研究法:搭建基于CAN总线的钢轨气压焊控制系统实验平台,进行硬件制作和软件编程。通过实验测试系统的各项性能指标,如通讯速率、抗干扰能力、参数控制精度等,并对实验数据进行分析和处理,验证系统的可行性和有效性。根据实验结果,对系统进行优化和改进,提高系统性能。二、CAN总线技术与钢轨气压焊原理2.1CAN总线技术概述2.1.1CAN总线的发展历程CAN总线的起源可以追溯到20世纪80年代初,当时汽车工业的快速发展使得汽车电子设备日益增多,传统的电气连接方式已无法满足众多测试仪器与控制单元之间的数据传输需求。德国博世公司(Bosch)的工程师开始评估串行总线系统在乘用车中的应用可能性,由于现有的网络协议都无法满足汽车工程师的要求,UweKiencke于1983年开始开发新的串行总线系统,旨在增加新的功能,同时减少线束。1986年2月,在底特律的SAE(汽车工程协会)大会上,博世公司正式提出了“汽车串行控制器局域网(AutomotiveSerialControllerAreaNetwork)”,这便是CAN总线的雏形。新的总线协议基于多主结构,具有高可靠性、实时性和抗干扰能力强等特点,特别适合用于汽车的电子控制单元(ECU)之间的通信。1987年中期,英特尔交付了第一款CAN控制器芯片82526,这是CAN协议的第一个硬件实现,使得CAN总线从理论走向了实际应用。随后,飞利浦半导体推出了82C200,这两款最早的CAN控制器在接受过滤和帧处理方面存在很大不同,但都为CAN总线的发展奠定了基础。20世纪90年代初,博世将CAN规范(2.0版)提交给国际标准化组织。1993年11月,ISO11898标准发布,该标准不仅规范了CAN协议,还规范了传输速率高达1Mbit/s的物理层,使得CAN总线的应用更加标准化和规范化。1995年,ISO11898标准通过一个附录进行了扩展,描述了使用29位CAN标识符的扩展帧格式,进一步拓展了CAN总线的应用范围。此后,CAN总线在各个自动化控制系统中得到了广泛应用。在汽车领域,自1994年起,CAN2.0协议被大量应用,逐渐取代传统的车载通信协议,成为车载总线的标准协议。在工业自动化领域,随着CANinAutomation(CiA)协会的成立,CAN总线在工业控制和自动化系统中的应用也得到了快速推广。2012年,博世发布了CANFD(FlexibleData-rate)1.0,即具有灵活数据速率的CAN。该规范使用不同的帧格式,允许不同的数据长度,并允许在仲裁决定后切换到更高的传输速率,解决了传统CAN2.0协议在数据传输速率和数据负载上的局限性,使得CAN网络能够更好地适应现代汽车和工业自动化系统对更高带宽的需求。CANFD与CAN2.0网络兼容,新的CANFD设备可以与现有CAN设备共存于同一网络上。2020年,博世又提出了CANXL(ExtendedLong)协议,这是CAN协议的最新扩展。CANXL提供了更高的数据传输速率和更大的数据载荷,支持20Mbps或更高的速率,最多可传输2048字节的数据,旨在满足未来汽车、工业自动化等领域对更大带宽和数据容量的需求,并且与CAN2.0和CANFD兼容,确保现有设备能够与新协议互操作。如今,CAN总线已经成为国际上应用最广泛的网络总线之一,在汽车电子、工业自动化、医疗设备、航空航天、物联网和机器人等众多领域都发挥着重要作用,并且随着技术的不断发展,其应用前景将更加广阔。2.1.2CAN总线的技术特点多主控制:CAN总线采用多主控制方式,网络上的任何一个节点都可以在任何时刻主动向其他节点发送信息,而无需等待总线空闲。这使得系统的设计更加灵活、模块化,新增节点也更为方便,各节点地位平等,都能根据实际需求及时发送数据,有效提高了系统的自主性和响应速度。非破坏性总线仲裁:当多个节点同时向总线上发送信息时,CAN总线采用非破坏性总线仲裁机制。该机制通过对比发送的电平来确定优先级,显性电平0优先级高,隐性电平1优先级低。在仲裁过程中,优先级高的报文会赢得仲裁权继续发送,而被仲裁失败的节点会自动退出发送并转为接收模式。这种无损仲裁方式保证了高优先级报文不会被破坏,可以完整无损坏地传输,确保了高优先级数据能够在134微秒内传输,节省了总线冲突的时间,即使在网络负载很重的情况下,也不会导致网络瘫痪,有效提高了系统的实时性和可靠性。错误检测和处理:CAN总线具有强大的错误检测机制,包含多种错误检测方法。位监控时发送节点会回读总线电平并与发送位比较;位填充可避免过长的连续相同位导致同步丢失,便于错误检测;报文包含CRC校验码,接收节点进行循环冗余校验;检查帧格式是否合规,如固定的帧结束、确认域等进行帧校验;发送节点通过ACK域判断是否有至少一个节点成功接收进行应答校验。此外,每个节点都有错误计数器(发送错误计数器和接收错误计数器),根据错误严重程度能自动将节点设置为“错误主动”、“错误被动”或“离线”(总线关闭)状态,防止故障节点持续干扰总线,确保数据传输的准确性和可靠性。灵活的网络拓扑结构:CAN总线支持多种网络拓扑结构,如总线型、星型、环形等。用户可以根据实际需求进行选择,以满足不同应用场景的要求。总线型拓扑结构因其易于实现且构建成本低,成为最常用的拓扑结构;星型拓扑结构便于集中管理和维护;环形拓扑结构则具有较高的可靠性和容错能力。这种灵活性使得CAN总线能够适应各种复杂的系统架构。高度实时性:虽然CAN总线的传输速率相对一些现代总线不算高,常见速率为125Kbps-1Mbps,但得益于非破坏性仲裁机制和基于ID的固定优先级,对于高优先级的信息,传输延迟低且可预测,能够在极短的时间内完成数据传输,满足实时控制的需求,非常适合对响应时间有严格要求的控制应用场景。良好的电磁兼容性:CAN总线采用差分信号传输方式,使用双绞线(CAN_H,CAN_L)传输差分信号,大大提高了抗共模干扰(电磁干扰EMI)的能力。在工业环境或汽车环境中,电气噪声普遍存在,这种差分传输方式使得CAN总线能够在恶劣的电磁环境中正常工作,无需额外的屏蔽措施,保证了数据传输的稳定性。通信速率灵活:CAN总线理论最高速率可达1Mbps,但实际应用中可以根据实际应用场景,主要是通信距离和可靠性要求,灵活选择速率,从几Kbps到1Mbps不等。通常速率越低,通信距离越长,在中等速率下(如125Kbps),其差分传输和强大的错误检测机制使其能在较长的距离(数百米甚至上千米)上实现可靠通信,以适应不同的通信需求。广播与点对点通信:CAN总线具有广播性质,所有报文都发送给总线上所有节点。同时,每个节点又可以通过报文ID来决定是否接收和处理该报文,实现了选择性接收,达到点对点通信效果。接收节点只处理它“感兴趣”的ID对应的报文,这使得信息可以高效地共享给多个需要它的节点,提高了数据传输的效率和针对性。报文格式灵活:CAN总线支持标准帧(11位标识符ID)和扩展帧(29位标识符ID)两种帧格式,提供了不同的寻址空间和灵活性。同时,包含数据帧(携带应用数据)、远程帧(请求具有特定ID的数据帧)、错误帧(通知错误)、过载帧(通知节点尚未准备好接收)等多种帧类型,能够满足不同应用场景下的数据传输需求。低成本:CAN总线的总线结构相对简单,采用双绞线作为传输介质。节点由MCU、CAN控制器和CAN收发器组成,成本相对较低,尤其对于大量节点互联的系统,成本优势更为明显,降低了系统的开发和应用成本。拓展性好:在总线速率和节点电气负载允许的范围内,向现有总线系统中添加新节点通常比较容易,便于系统的升级和扩展,能够满足系统不断发展的需求。2.1.3CAN总线的工作原理物理层:CAN总线的物理层主要负责数据的电气传输和接收,包括数据线、终端电阻、连接器等硬件设备。它定义了信号的传输方式、电平标准、传输介质以及节点与总线的电气连接方式等。CAN总线通常采用双绞线作为传输介质,其中一根线(CAN_H)用于传输高电平信号,另一根线(CAN_L)用于传输低电平信号,通过差分信号传输来提高抗干扰能力。在总线两端通常会连接终端电阻,以匹配总线的特性阻抗,减少信号反射,保证信号的稳定传输。数据链路层:数据链路层是CAN总线的核心部分,主要负责数据的封装、帧的识别、错误检测和处理等功能。它定义了CAN总线的通信协议、帧结构、仲裁机制和错误检测处理方法。通信协议:CAN总线采用CSMA/CD(CarrierSenseMultipleAccesswithCollisionDetection)协议,即载波监听多路访问/冲突检测协议,实现了多主控制和非破坏性总线仲裁。节点在发送数据前,先监听总线是否空闲,如果总线空闲,则可以发送数据;如果总线忙,则等待总线空闲后再发送。当多个节点同时监听到总线空闲并发送数据时,就会发生冲突,此时CAN总线的非破坏性仲裁机制将发挥作用,通过比较各节点发送报文的标识符(ID)来决定哪个节点可以继续发送数据。帧结构:CAN总线具有数据帧、远程帧、差错帧和超载帧4种帧结构。其中,数据帧用于传输实际的数据,是最常用的帧类型。数据帧由帧起始、仲裁场、控制场、数据场、CRC场、应答场和帧结束等部分组成。帧起始标志着数据帧的开始;仲裁场包含标识符(ID),用于确定报文的优先级和传输目的地;控制场包含一些控制位,用于指示数据帧的相关信息;数据场用于存放实际要传输的数据,其长度最多为8字节;CRC场用于进行循环冗余校验,以检测数据传输过程中是否出现错误;应答场用于接收节点向发送节点发送应答信号,告知发送节点数据是否被正确接收;帧结束标志着数据帧的结束。仲裁机制:当两个或多个节点同时向总线上发送报文时,CAN总线采用仲裁机制来解决冲突。仲裁机制根据报文中的标识符(ID)的优先级来决定哪个节点可以继续发送报文。标识符的数值越小,优先级越高。在仲裁过程中,各节点边发送边监听总线状态,如果监听到的总线状态与自己发送的不一致,则说明有更高优先级的节点在发送数据,该节点会立即停止发送,并转入接收状态,而优先级高的节点则可以继续发送报文,从而确保了总线的高效利用和数据传输的可靠性。错误检测和处理:CAN协议定义了五种错误检测方法,分别为位错误、填充错误、CRC错误、格式错误和确认错误。位错误是指发送节点在发送数据时,回读总线电平与发送位不一致;填充错误是由于位填充规则被破坏而产生的错误;CRC错误是接收节点计算得到的CRC校验码与报文中的CRC校验码不一致;格式错误是指帧格式不符合规定;确认错误是发送节点在应答场没有收到接收节点的应答信号。当检测到错误时,CAN总线会采取相应的处理措施,如发送错误标志,通知其他节点停止发送数据,并进行错误处理。每个节点都有发送错误计数器和接收错误计数器,根据错误的严重程度,节点会进入不同的错误状态,如错误主动、错误被动或总线关闭,以防止故障节点对总线通信造成持续干扰。应用层:应用层主要负责数据的解析和处理,以及与上层应用程序的交互。它根据具体的应用需求,定义了数据的含义、传输方式和处理方法等。在实际应用中,用户需要根据具体的应用场景编写相应的应用层协议,以实现设备之间的有效通信和控制。例如,在工业自动化领域,应用层协议可能会定义各种设备的控制命令、状态信息等;在汽车电子领域,应用层协议可能会定义发动机控制、车身控制等相关的数据格式和通信规则。应用层通过调用数据链路层提供的服务,实现数据的发送和接收,并将接收到的数据进行解析和处理,然后将处理结果反馈给上层应用程序,从而实现整个系统的功能。2.2钢轨气压焊原理与工艺2.2.1钢轨气压焊的基本原理钢轨气压焊属于塑性气压焊,其基本原理是将两根需焊接的钢轨端面对准并紧密贴合,利用气体火焰对钢轨端面周围进行加热,使贴合面及附近区域被加热到塑性状态。在塑性状态下,金属原子具有足够的活化能,能够穿越界面互相急剧扩散。此时,对贴合面施加顶锻力,使焊接表面之间的距离缩短到原子之间力的相互作用半径,达到分子之间的金属键联接,完成重新再结晶,从而获得两钢轨牢固连接的焊接接头。与熔化气压焊相比,塑性气压焊的焊接温度较低,一般只加热到1250℃左右,且为固相结合,避免了合金元素的烧损,能够保证焊接接头具有较高的强度和良好的力学性能。同时,由于焊接过程中不需要添加填充金属,减少了焊接缺陷的产生,提高了焊接质量的稳定性。这种焊接方式适用于各种类型的钢轨焊接,在铁路建设和维护中得到了广泛应用。2.2.2钢轨气压焊的工艺流程焊前准备:设备检查:对焊接设备进行全面检查,包括压接机、加热器、控制箱、超高压电动泵站、冷却装置等,确保设备性能良好,各部件连接牢固,无故障隐患。检查气体管路是否密封良好,无泄漏现象,氧气和乙炔的压力、流量是否符合焊接要求。同时,检查各种仪表、量具的准确性,如压力表、流量计、测温仪等。钢轨端面打磨:先采用机器打磨、铣平的方式对钢轨端面进行初步处理,去除表面的锈蚀、油污、氧化物等杂质,使端面露出金属光泽。然后,人工用锉刀进行精细打磨,保证钢轨端面的平整度和光洁度,其端面不平直度应小于0.15mm。在打磨时,要特别注意轨底三角区的处理,确保轨角不能凹于其它部位,因为轨角处在焊接边缘,受污染的机会较多,且在预顶和顶锻过程中,轨角部位容易出现问题。钢轨打磨合格后,要严加保护,避免被异物污染,尽量缩短轨端在大气中的暴露时间。焊接前,要用清洁的锉刀轻轻锉一下,并用液体四氯化氮或无水丙酮冲洗干净,以确保焊接端面的清洁。对轨及夹轨:将两根待焊钢轨吊运至焊接位置,进行对轨操作。通过调整钢轨的位置,使两根钢轨的中心线在同一条直线上,轨顶和轨底的高低差、左右错牙等偏差应符合相关标准要求,一般轨顶高低差和轨头内侧错牙不超过0.5mm。对轨完成后,将接通管路的压接机骑放在待焊钢轨上,调整好与轨缝的相对位置,通过斜铁夹紧两被焊钢轨轨腰。夹轨时,轨底要求平行,不平时要加垫片垫平,用平尺精调后,拧紧轨顶螺栓,检查高低是否符合要求。符合要求后,打紧斜铁,并锁紧轨底螺栓,然后开动油泵进行预顶,预顶压力一般为20-30MPa,使钢轨端面紧密贴合,为后续的焊接做好准备。安装加热器:固定好压接机后,开始安放加热器。将加热器安装在压接机的摇火机构上,调整加热器的位置,使咀条(火孔)平面与钢轨周边平面距离均应为10-15mm,加热器的火孔平面要与钢轨纵轴平面垂直,以保证加热的均匀性。然后,接通气、水管路,确保气体和冷却水的供应正常。同时,检查加热器的火孔是否畅通,如有堵塞或异常,应及时清理或调整。点火焊接:在点火焊接前,要再次检查各种设备和管路,确保无误。先打开乙炔阀门,稍开一点氧气阀门,用点火器点火,然后调整氧气和乙炔的流量和配比,使火焰达到合适的状态。一般采用还原性火焰,火焰应呈中性或微碳化焰,焰芯清晰,长度适中,内焰与外焰层次分明。调整火焰时,要注意观察火焰的颜色、形状和声音,根据经验判断火焰是否正常。点火后,先对钢轨进行预热,使钢轨温度逐渐升高,预热时间根据钢轨的类型和规格而定,一般为1-2分钟。预热结束后,开始摆动加热器,对钢轨进行均匀加热。加热及顶锻:加热器以一定的摆动频率和幅度对钢轨进行摆动加热,使钢轨端面及附近区域均匀受热,加热温度达到1250℃左右。在加热过程中,要密切关注加热温度和钢轨的变形情况,通过测温仪实时监测钢轨的温度,根据温度变化调整加热时间和火焰大小。当加热到规定温度后,开始进行顶锻操作。顶锻力根据钢轨的类型和规格而定,一般为100-150MPa,顶锻量一般选择在28-32mm。顶锻时,要迅速、有力地施加顶锻力,使钢轨端面的金属充分挤压、融合,形成牢固的焊接接头。顶锻过程中,要保持顶锻力的稳定,避免出现顶锻力不足或过大的三、基于CAN总线的钢轨气压焊控制系统硬件设计3.1系统总体架构设计3.1.1系统设计目标与要求基于CAN总线的钢轨气压焊控制系统的设计目标主要是克服现有移动式气压焊轨机存在的问题,实现对焊接过程的精确控制,提高焊接质量和设备的可靠性与稳定性。具体而言,需实现油压和顶锻量的精确控制,将油压控制精度达到±0.5MPa,顶锻量控制精度达到±1mm,以确保焊接过程中压力和位移参数的准确性,从而保证焊接接头的质量。同时,要有效提高系统的可靠性和稳定性,降低设备故障率,将系统平均无故障时间(MTBF)提高到5000小时以上,减少因设备故障导致的焊接中断和质量问题。为实现上述目标,提出以下设计要求:在硬件方面,选用性能可靠、抗干扰能力强的元器件,如具有高抗干扰性能的CAN总线收发器和稳定性好的单片机。同时,优化硬件电路设计,采用合理的接地、屏蔽和滤波措施,减少电磁干扰对系统的影响,确保系统在复杂的现场环境下能够稳定运行。在软件方面,设计高效、稳定的控制算法,实现对焊接过程的精确时序控制和参数调节。通过对焊接工艺的深入分析,制定合理的控制策略,使系统能够根据不同的焊接工况自动调整参数,保证焊接质量的一致性。此外,还需设计友好的人机交互界面,方便操作人员进行参数设置、设备监控和故障诊断,提高设备的易用性和可维护性。3.1.2系统整体结构框架基于CAN总线的钢轨气压焊控制系统采用主从结构,整体结构框架主要由主节点和下位机数据采集、控制模块组成。主节点以单片机AT89S52为核心,搭配CAN独立控制器SJAl000与CAN收发器82C250,负责整个系统的控制和数据处理。它通过CAN总线与下位机模块进行通信,接收下位机采集的数据,并向下位机发送控制命令,实现对整个焊接过程的监控和管理。下位机模块采用周立功公司的ICAN系列工业模块,分布在各个数据采集和控制现场,负责采集焊接过程中的各种参数,如压力传感器检测到的油压、位移传感器检测到的顶锻量等,并根据主节点发送的控制命令对执行器进行控制,如控制油泵电机的启停和转速,以调节油压大小,从而实现对焊接过程的精确控制。各下位机模块通过CAN总线与主节点相连,形成一个完整的分布式控制系统。这种主从结构的设计使得系统具有良好的扩展性和灵活性,便于根据实际需求增加或减少下位机模块,以适应不同规模的焊接作业。同时,CAN总线的高可靠性和抗干扰性保证了主节点与下位机模块之间的数据传输稳定可靠,确保整个控制系统能够准确、高效地运行。3.2硬件主节点设计3.2.1单片机选型与电路设计本设计选用ATMEL公司生产的AT89S52单片机作为硬件主节点的核心控制芯片。AT89S52是一款低功耗、高性能的CMOS8位微控制器,具有8K在系统可编程Flash存储器,与MCS-51单片机兼容,指令系统丰富,能够满足本控制系统对数据处理和控制的要求。其工作电压范围为4.0V-5.5V,工作频率最高可达33MHz,具有较高的处理速度,能够快速响应各种控制信号和数据处理任务。此外,AT89S52还集成了多个功能模块,如3个16位定时/计数器、8个中断源、全双工串行口等,为系统的设计提供了便利,减少了外围电路的设计复杂度。AT89S52的最小系统电路是保证其正常工作的基础,主要包括电源电路、时钟电路和复位电路。电源电路为单片机提供稳定的工作电源,采用5V直流稳压电源供电,通过滤波电容C1和C2(一般取值为0.1μF和10μF)对电源进行滤波,去除电源中的杂波和干扰,确保电源的稳定性,为单片机的正常运行提供可靠的电力支持。时钟电路为单片机提供时钟信号,决定了单片机的工作速度。采用12MHz的晶振Y1与两个负载电容C3和C4(一般取值为30pF左右)组成时钟振荡电路,为单片机提供稳定的时钟信号,使单片机能够按照设定的频率进行工作。复位电路用于系统上电时提供复位信号,确保单片机能够正常启动。采用上电复位和手动复位相结合的方式,通过电阻R1(一般取值为10kΩ)和电容C5(一般取值为10μF)组成上电复位电路,在上电瞬间,电容C5充电,使RST引脚为高电平,实现上电复位;同时,通过按键S1和电阻R2(一般取值为1kΩ)组成手动复位电路,当按下按键S1时,RST引脚为高电平,实现手动复位。这样的复位电路设计能够确保单片机在各种情况下都能可靠地复位,保证系统的正常启动和运行。3.2.2CAN独立控制器与收发器选型及电路连接CAN独立控制器选用PHILIPS公司的SJAl000,它是一款高性能的CAN控制器,支持CAN2.0A和CAN2.0B协议,能够满足本控制系统对CAN总线通信的要求。SJAl000具有独立的接收和发送缓冲器,可实现高速数据传输,最高通信速率可达1Mbps,保证了数据的快速传输和处理。其内部集成了CAN协议控制器和接口管理逻辑,能够自动完成CAN总线协议的处理,减轻了单片机的负担,使单片机能够专注于系统的控制任务。此外,SJAl000还具有丰富的中断功能,能够及时响应总线事件,提高系统的实时性。CAN收发器选用PHILIPS公司的82C250,它是CAN控制器与物理总线之间的接口,提供对总线的差动发送能力和对CAN控制器的差动接收能力。82C250的工作电压范围为4.5V-5.5V,与AT89S52和SJAl000的工作电压兼容,便于电路设计和连接。其最高通信速率也可达1Mbps,与SJAl000相匹配,能够保证数据在总线上的高速传输。82C250具有很强的抗干扰能力,能够在恶劣的电磁环境下正常工作,确保了CAN总线通信的可靠性。同时,它还具有斜率控制功能,可通过RS引脚调整斜率电阻,控制数据传输的上升和下降斜率,减少射频干扰,提高通信质量。SJAl000与单片机AT89S52的电路连接设计如下:AT89S52的P0口作为地址/数据复用总线,与SJAl000的AD0-AD7相连,用于传输地址和数据信息;AT89S52的ALE引脚与SJAl000的ALE引脚相连,为SJAl000提供地址锁存信号;AT89S52的WR引脚与SJAl000的WR引脚相连,用于控制SJAl000的写操作;AT89S52的RD引脚与SJAl000的RD引脚相连,用于控制SJAl000的读操作;SJAl000的INT引脚与AT89S52的INT0引脚相连,用于向AT89S52发送中断请求信号,使AT89S52能够及时响应SJAl000的事件。82C250与SJAl000的电路连接设计如下:SJAl000的TX0引脚与82C250的TXD引脚相连,用于将SJAl000发送的数据传输给82C250;SJAl000的RX0引脚与82C250的RXD引脚相连,用于接收82C250从总线上接收到的数据;82C250的CANH和CANL引脚分别通过一个5Ω的电阻与CAN总线相连,电阻起到限流作用,保护82C250免受过流冲击;CANH和CANL与地之间并联了两个30pF的小电容,用于滤除总线上的高频干扰和一定的防电磁辐射;在两根CAN总线接入端与地之间分别反接了一个瞬变干扰二极管,当CAN总线有较高的负电压时,通过二极管的短路可起到过压保护作用;82C250的第8脚与地之间连接一个斜率电阻Rs,在波特率较低、总线较短时,采用斜率控制方式,上升及下降的斜率取决于Rs的阻值,一般取值范围为15kΩ-200kΩ。通过这样的电路连接设计,实现了单片机、CAN独立控制器和CAN收发器之间的有效通信,为基于CAN总线的钢轨气压焊控制系统的通信功能提供了硬件支持。3.3下位机模块设计3.3.1工业模块选型本设计选用周立功公司的ICAN系列工业模块作为下位机模块。ICAN系列工业模块是一种专门为工业控制领域设计的智能模块,具有丰富的功能和良好的性能,非常适合用于钢轨气压焊控制系统的数据采集和控制任务。ICAN系列工业模块具有多种数据采集接口,可直接连接压力传感器、位移传感器等各种传感器,实现对焊接过程中油压、顶锻量等参数的实时采集。其数据采集精度高,能够满足本控制系统对参数测量精度的要求,例如,对于压力传感器采集的油压数据,精度可达到±0.1%FS,确保了采集数据的准确性,为后续的控制决策提供可靠依据。同时,该模块具备强大的控制功能,可根据主节点发送的控制命令对执行器进行精确控制,如控制油泵电机的启停、转速等,从而实现对焊接过程的精确控制。此外,ICAN系列工业模块支持CAN总线通信,能够方便地与主节点进行通信,实现数据的传输和交互。其通信稳定性好,抗干扰能力强,能够在复杂的工业环境下稳定工作,确保了数据传输的可靠性,保证了主节点与下位机模块之间的信息交互顺畅,使整个控制系统能够协同工作,实现对钢轨气压焊过程的有效控制。3.3.2传感器与执行器的连接在基于CAN总线的钢轨气压焊控制系统中,压力传感器用于检测焊接过程中的油压,选用高精度的应变片式压力传感器,其测量范围根据实际焊接需求确定,一般为0-200MPa,精度可达±0.2%FS。压力传感器的输出信号为模拟电压信号,通过ICAN系列工业模块的模拟输入通道(AI)与下位机模块相连。在连接时,为了提高信号的抗干扰能力,在传感器输出端和AI通道之间加入了信号调理电路,包括滤波电路和放大电路。滤波电路采用低通滤波器,去除信号中的高频噪声,确保信号的稳定性;放大电路根据传感器的输出信号范围和AI通道的输入要求,对信号进行适当放大,使信号能够满足AI通道的采样要求。位移传感器用于检测顶锻量,采用线性位移传感器,如磁致伸缩位移传感器,其测量精度高,可达±0.05mm,能够满足对顶锻量精确测量的要求。位移传感器的输出信号也为模拟信号,同样通过ICAN系列工业模块的AI通道与下位机模块相连。连接时,同样需要对信号进行调理,确保信号的准确性和稳定性。执行器主要为油泵电机,用于提供焊接所需的油压。ICAN系列工业模块通过数字输出通道(DO)控制油泵电机的启停和转速。在控制过程中,下位机模块根据主节点发送的控制命令,通过DO通道输出相应的控制信号,控制继电器或接触器的通断,从而实现对油泵电机的启停控制。对于油泵电机转速的控制,可采用脉宽调制(PWM)技术,下位机模块通过DO通道输出不同占空比的PWM信号,控制电机驱动器,实现对油泵电机转速的调节,进而精确控制油压的大小,满足焊接过程中不同阶段对油压的要求。通过合理的传感器与执行器连接设计,实现了对焊接过程中关键参数的准确采集和对执行器的有效控制,为保证钢轨气压焊的质量提供了重要的硬件支持。四、基于CAN总线的钢轨气压焊控制系统软件设计4.1软件总体设计思路4.1.1软件功能需求分析基于CAN总线的钢轨气压焊控制系统软件需紧密结合系统硬件设计和钢轨气压焊工艺要求,实现一系列关键功能。首先,要对CAN控制器进行初始化,这是确保CAN总线正常通信的基础。在初始化过程中,需设置波特率、工作模式、验收滤波等参数,使其与系统的硬件配置和通信需求相匹配,为后续的数据传输建立稳定的通信链路。在焊接过程中,软件要根据不同的焊接阶段和工艺要求,生成并发送相应的命令帧,控制下位机模块执行各种操作,如控制油泵电机的启停和转速,以调节油压大小,实现对焊接压力的精确控制。同时,要实时接收下位机模块返回的帧数据,这些数据包含了焊接过程中的各种关键信息,如油压、顶锻量等参数。软件需对这些返回帧数据进行准确解析和处理,根据解析结果判断焊接过程是否正常,并及时做出相应的控制决策。此外,软件还需实现对焊接过程的时序控制,严格按照钢轨气压焊的工艺流程,精确控制各个焊接阶段的时间和参数,确保焊接过程的顺利进行。例如,在预顶阶段,要控制预顶压力和时间,使钢轨端面紧密贴合;在加热阶段,要控制加热时间、火焰大小和摆动频率,使钢轨均匀受热;在顶锻阶段,要控制顶锻力和顶锻量,确保焊接接头的质量。通过对焊接过程的精确时序控制,保证焊接质量的稳定性和一致性。4.1.2软件架构设计基于CAN总线的钢轨气压焊控制系统软件架构采用模块化设计,主要包括主程序、中断服务程序、CAN通信程序、数据处理程序等模块,各模块之间相互协作,共同实现系统的各项功能。主程序是整个软件的核心,负责系统的初始化、任务调度和整体流程控制。在系统启动时,主程序首先对单片机、CAN控制器、定时器等硬件资源进行初始化,设置相关参数和初始状态。然后,进入主循环,在主循环中,主程序不断查询各种状态标志和事件,根据不同的情况调用相应的功能模块,实现对焊接过程的监控和控制。例如,主程序根据焊接工艺要求,调用CAN通信程序发送命令帧,控制下位机模块执行相应的操作;同时,接收CAN通信程序传来的下位机返回数据,将其传递给数据处理程序进行处理。中断服务程序主要用于处理系统中的异步事件,如CAN总线的接收中断、定时器中断等。当有中断发生时,CPU会暂停当前正在执行的任务,转而执行中断服务程序。在CAN总线接收中断服务程序中,负责接收CAN总线上传来的数据,并将其存储到相应的缓冲区中,同时设置接收标志,通知主程序进行处理。定时器中断服务程序则用于实现定时功能,如控制焊接过程中各阶段的时间,以及对一些参数的定时采集和处理。通过中断服务程序,能够及时响应系统中的各种事件,提高系统的实时性和响应速度。CAN通信程序负责实现CAN总线的数据发送和接收功能。在发送数据时,CAN通信程序根据主程序的指令,将需要发送的数据按照CAN总线的帧格式进行封装,然后通过CAN控制器和CAN收发器发送到总线上。在接收数据时,CAN通信程序实时监听CAN总线,当接收到数据帧时,对其进行校验和解析,将解析后的数据传递给主程序或其他相关模块进行处理。CAN通信程序还需处理CAN总线的错误检测和处理机制,确保数据传输的可靠性。数据处理程序主要负责对采集到的焊接过程中的各种数据进行分析、处理和存储。例如,对下位机模块采集到的油压、顶锻量等参数进行滤波处理,去除噪声干扰,提高数据的准确性;根据焊接工艺要求,对这些参数进行判断和分析,如判断油压是否在正常范围内,顶锻量是否达到设定值等,若发现异常情况,及时通知主程序进行相应的处理。同时,数据处理程序还将处理后的数据存储到相应的存储器中,以便后续查询和分析,为焊接质量的评估和优化提供数据支持。各模块之间的调用关系如下:主程序在需要发送数据或接收数据时,调用CAN通信程序;CAN通信程序在接收到数据后,将数据传递给数据处理程序进行处理;数据处理程序在处理完数据后,将结果返回给主程序,主程序根据结果进行相应的控制决策。当中断发生时,中断服务程序被触发,中断服务程序完成相应的中断处理后,返回主程序继续执行。通过这种模块化的设计和各模块之间的合理调用关系,使得软件结构清晰、易于维护和扩展,能够高效地实现基于CAN总线的钢轨气压焊控制系统的各项功能。4.2主要软件功能模块实现4.2.1CAN控制器初始化程序CAN控制器初始化是基于CAN总线的钢轨气压焊控制系统软件设计的重要环节,其目的是设置CAN控制器的工作参数,使其能够正常工作并与其他节点进行通信。本设计中,CAN控制器选用SJAl000,以下是其初始化程序的详细实现过程。首先,包含相关的头文件,如#include<reg52.h>和#include<stdio.h>,用于引入单片机和标准输入输出函数的定义。同时,定义与SJAl000相关的寄存器地址和控制位,方便对其进行操作。例如:sbitOSCIN=P1^0;//定义晶振输入引脚sbitOSCON=P1^1;//定义晶振控制引脚sbitRST=P1^2;//定义复位引脚#defineSJAl000_BASE0x8000//定义SJAl000的基地址然后,对SJAl000进行复位操作,通过将RST引脚置为高电平一段时间,再置为低电平,确保SJAl000处于初始状态。代码如下:voidSJAl000_Reset(void){RST=1;//适当延时RST=0;}接下来,设置波特率。波特率的设置决定了CAN总线的数据传输速率,需根据实际应用需求进行选择。SJAl000通过对BTR0(波特率寄存器0)和BTR1(波特率寄存器1)进行配置来设置波特率。例如,若要设置波特率为500Kbps,假设晶振频率为16MHz,根据波特率计算公式:Baudrate=\frac{f_{OSC}}{(tq\times(2+TSEG1+TSEG2))\timesBRP}其中,f_{OSC}为晶振频率,tq为时间量子,TSEG1和TSEG2为时间段1和时间段2的时间量子数,BRP为波特率预分频器。经计算可得:voidSet_Baudrate(void){//配置波特率为500Kbps*((unsignedchar*)(SJAl000_BASE+0x0C))=0x04;//BTR0:BRP=4*((unsignedchar*)(SJAl000_BASE+0x0D))=0x1C;//BTR1:TSEG1=7,TSEG2=2}接着,设置工作模式。SJAl000支持多种工作模式,如正常模式、复位模式、只听模式等。在本设计中,选择正常模式,通过对模式寄存器(MOD)进行设置来实现。代码如下:voidSet_Mode(void){//设置为正常模式*((unsignedchar*)(SJAl000_BASE+0x00))=0x00;//MOD:正常模式}最后,设置验收滤波。验收滤波用于筛选接收到的数据帧,只有符合验收滤波条件的数据帧才会被接收。SJAl000提供了两种验收滤波模式:单滤波模式和双滤波模式。根据实际需求,选择合适的滤波模式,并对验收代码寄存器(ACR)和验收屏蔽寄存器(AMR)进行设置。例如,若要设置接收所有数据帧,可将ACR和AMR都设置为0x00。代码如下:voidSet_Filter(void){//设置接收所有数据帧*((unsignedchar*)(SJAl000_BASE+0x0A))=0x00;//ACR*((unsignedchar*)(SJAl000_BASE+0x0B))=0x00;//AMR}综上所述,CAN控制器初始化程序的完整代码如下:voidSJAl000_Init(void){SJAl000_Reset();//复位SJAl000Set_Baudrate();//设置波特率Set_Mode();//设置工作模式Set_Filter();//设置验收滤波}通过以上初始化程序,完成了对CAN控制器SJAl000的初始化设置,使其能够按照设定的参数进行工作,为基于CAN总线的钢轨气压焊控制系统的通信功能提供了软件支持。4.2.2命令帧发送与数据接收处理程序命令帧发送程序:在基于CAN总线的钢轨气压焊控制系统中,命令帧发送程序的主要功能是根据焊接工艺要求,生成相应的命令帧,并通过CAN总线将其发送给下位机模块,以实现对焊接过程的精确控制。在发送命令帧之前,首先要确定命令帧的格式和内容。根据CAN总线的协议和本系统的需求,定义命令帧的数据结构,例如:typedefstruct{unsignedcharID;//标识符,用于标识命令类型unsignedcharData[8];//数据字段,用于存储命令参数}CAN_CommandFrame;然后,根据焊接工艺要求,在主程序中生成命令帧。例如,当需要控制油泵电机启动时,设置命令帧的ID为启动命令的标识,数据字段中存储启动参数,如电机转速等。代码示例如下:CAN_CommandFrameSendFrame;voidGenerate_StartCommandFrame(unsignedintspeed){SendFrame.ID=0x01;//假设0x01为启动命令标识SendFrame.Data[0]=(unsignedchar)(speed&0xFF);//低字节SendFrame.Data[1]=(unsignedchar)(speed>>8);//高字节//其他参数设置}生成命令帧后,调用CAN通信程序的发送函数,将命令帧发送出去。以SJAl000和82C250组成的CAN通信模块为例,发送函数实现如下:voidCAN_SendFrame(CAN_CommandFrame*frame){unsignedchari;//将标识符和数据写入SJAl000的发送缓冲区*((unsignedchar*)(SJAl000_BASE+0x02))=frame->ID;//写入标识符for(i=0;i<8;i++){*((unsignedchar*)(SJAl000_BASE+0x03+i))=frame->Data[i];//写入数据}//设置发送请求位*((unsignedchar*)(SJAl000_BASE+0x01))|=0x01;//等待发送完成while((*((unsignedchar*)(SJAl000_BASE+0x01))&0x01)==0x01);}在主程序中,根据焊接工艺的不同阶段,调用上述函数生成并发送相应的命令帧,实现对焊接过程的控制。数据接收处理程序:数据接收处理程序的作用是对接收到的CAN总线返回帧数据进行解析和处理,获取焊接过程中的各种参数信息,并根据这些信息做出相应的控制决策。同样,首先定义接收帧的数据结构,与命令帧类似:typedefstruct{unsignedcharID;//标识符unsignedcharData[8];//数据字段}CAN_ReceiveFrame;在CAN总线接收中断服务程序中,当接收到数据帧时,将数据读取到接收缓冲区,并调用数据解析函数进行处理。以SJAl000为例,接收中断服务程序实现如下:voidCAN_RX_ISR(void)interrupt0{CAN_ReceiveFrameReceiveFrame;unsignedchari;//读取标识符ReceiveFrame.ID=*((unsignedchar*)(SJAl000_BASE+0x02));//读取数据for(i=0;i<8;i++){ReceiveFrame.Data[i]=*((unsignedchar*)(SJAl000_BASE+0x03+i));}//调用数据解析函数Parse_ReceiveFrame(&ReceiveFrame);//清除接收中断标志*((unsignedchar*)(SJAl000_BASE+0x09))|=0x01;}数据解析函数根据接收到的帧ID,判断数据类型,并对数据字段进行相应的解析。例如,当接收到的帧ID表示油压数据时,解析数据字段得到油压值:voidParse_ReceiveFrame(CAN_ReceiveFrame*frame){switch(frame->ID){case0x02://假设0x02为油压数据标识{unsignedintpressure=(unsignedint)frame->Data[0]|((unsignedint)frame->Data[1]<<8);//处理油压数据,如显示、存储、判断是否正常等break;}case0x03://假设0x03为顶锻量数据标识{unsignedintdisplacement=(unsignedint)frame->Data[0]|((unsignedint)frame->Data[1]<<8);//处理顶锻量数据break;}//其他数据类型处理default:break;}}通过上述数据接收处理程序,实现了对CAN总线返回帧数据的解析和处理,为焊接过程的监控和控制提供了准确的数据支持。4.2.3焊接过程时序控制程序焊接过程时序控制程序是基于CAN总线的钢轨气压焊控制系统软件的关键部分,它负责根据焊接工艺的不同阶段,精确控制各阶段的时间和参数,确保焊接过程的顺利进行和焊接质量的稳定性。钢轨气压焊的焊接过程主要包括预顶、加热、顶锻等阶段,每个阶段都有严格的时间和参数要求。在软件设计中,采用定时器中断来实现时间的精确控制。以51单片机为例,利用其内部的定时器T0进行定时。首先,在主程序中对定时器T0进行初始化,设置定时时间和工作模式。假设需要定时10ms,晶振频率为12MHz,计算定时器初值:定时时间=(65536-初值)\times机器周期机器周期=12/晶振频率=1μs,10ms对应的机器周期数为10000,所以初值为65536-10000=55536,即0xD8F0。定时器初始化代码如下:voidTimer0_Init(void){TMOD&=0xF0;//清除T0的控制位TMOD|=0x01;//设置T0为模式1(16位定时器)TH0=0xD8;//装入初值高8位TL0=0xF0;//装入初值低8位ET0=1;//允许T0中断EA=1;//开总中断TR0=1;//启动T0}在定时器中断服务程序中,设置一个全局变量TimeCount作为时间计数器,每次中断时TimeCount加1,当TimeCount达到设定的时间值时,触发相应的焊接阶段控制操作。例如,预顶阶段时间为5s,即500个10ms,代码如下:unsignedintTimeCount=0;voidTimer0_ISR(void)interrupt1{TH0=0xD8;//重装初值高8位TL0=0xF0;//重装初值低8位TimeCount++;if(TimeCount>=500){TimeCount=0;//预顶阶段结束,进入加热阶段控制Enter_HeatingStage();}}在Enter_HeatingStage函数中,根据加热阶段的工艺要求,控制加热器的摆动频率、火焰大小等参数,并设置加热阶段的时间。例如,加热阶段时间为120s,即12000个10ms:voidEnter_HeatingStage(void){//设置加热器摆动频率和火焰大小等参数//假设通过发送命令帧控制下位机实现CAN_CommandFrameHeatFrame;HeatFrame.ID=0x04;//假设0x04为加热控制命令标识//设置加热参数到数据字段CAN_SendFrame(&HeatFrame);//设置加热阶段时间TimeCount=0;while(TimeCount<12000){//等待加热时间结束,期间可进行其他操作,如数据采集、监控等//这里可根据实际需求添加代码TimeCount++;}//##五、系统测试与验证###5.1测试环境搭建为了全面、准确地测试基于CAN总线的钢轨气压焊控制系统的性能和功能,搭建了一个模拟实际焊接工况的测试环境。该测试环境主要包括硬件设备和软件工具两部分。在硬件设备方面,搭建了模拟焊接试验台,模拟实际钢轨气压焊的操作场景。试验台配备了与实际焊接设备相似的压接机、加热器、油泵等装置,确保测试环境尽可能接近实际焊接条件。同时,在试验台上安装了压力传感器和位移传感器,用于实时采集焊接过程中的油压和顶锻量数据,以便对控制系统的控制效果进行监测和分析。为了深入分析CAN总线通信过程中的信号质量和数据传输情况,采用了示波器和逻辑分析仪。示波器能够直观地显示CAN总线通信过程中的电压信号波形,通过观察波形的幅度、频率、上升沿和下降沿等参数,可以判断信号是否正常,是否存在干扰或畸变等问题。逻辑分析仪则可以对CAN总线的数据进行解码和分析,获取数据帧的内容、标识符、数据长度等信息,有助于检查数据传输的正确性和完整性。在软件工具方面,使用了专门的测试软件,该软件能够与基于CAN总线的钢轨气压焊控制系统进行通信,发送各种测试命令和数据,模拟实际焊接过程中的各种工况。通过测试软件,可以方便地设置和调整测试参数,如焊接阶段的时间、油压和顶锻量的设定值等,以便对控制系统在不同工况下的性能进行测试。同时,测试软件还具备数据采集和分析功能,能够实时采集控制系统返回的数据,并对数据进行处理和分析,生成测试报告,直观地展示测试结果。###5.2测试方案设计####5.2.1功能测试方案1.**CAN总线通信功能测试**:利用CAN总线分析仪和测试软件,向主节点发送各种类型和长度的CAN帧,包括数据帧、远程帧等,测试主节点能否正确接收和解析这些帧。同时,主节点向各个下位机模块发送控制命令帧,检查下位机模块是否能准确无误地接收命令,并返回相应的状态帧。记录通信过程中的错误帧数量,统计通信成功率,若通信成功率低于99%,则需排查通信故障。2.**油压控制功能测试**:通过测试软件设定不同的油压值,范围覆盖实际焊接过程中可能用到的油压区间,如50-150MPa。控制系统根据设定值控制油泵电机的运行,利用高精度压力传感器实时监测实际油压。对比设定油压值与实际测量油压值,计算两者之间的误差,要求油压控制误差在±0.5MPa以内。在不同的环境温度和干扰条件下重复测试,观察油压控制的稳定性和可靠性。3.**顶锻量控制功能测试**:设置一系列不同的顶锻量目标值,如20-35mm。控制系统控制执行机构进行顶锻操作,使用高精度位移传感器实时测量顶锻量。将实际顶锻量与设定值进行对比,计算顶锻量控制误差,顶锻量控制误差应控制在±1mm以内。多次重复测试,验证顶锻量控制的准确性和重复性。4.**焊接过程时序控制功能测试**:按照钢轨气压焊的标准工艺流程,设定预顶、加热、顶锻等各个焊接阶段的时间和参数。通过测试软件启动焊接过程,利用定时器和数据采集系统监测每个阶段的实际时间和关键参数变化。检查焊接过程是否严格按照设定的时序进行,各阶段的时间偏差是否在允许范围内,如每个阶段的时间偏差不超过±1s。观察各阶段之间的转换是否平稳、准确,有无异常情况发生。####5.2.2性能测试方案1.**响应时间测试**:通过测试软件向控制系统发送控制命令,如启动油泵、调整油压、开始顶锻等命令,使用高精度计时器记录从发送命令到系统做出响应的时间,即从命令发出到相应执行机构开始动作的时间间隔。多次重复测试不同类型的命令,取平均值作为系统的响应时间,要求系统的平均响应时间不超过50ms,以满足焊接过程对实时性的要求。2.**控制精度测试**:在不同的焊接工况下,如不同的焊接速度、环境温度、干扰强度等条件下,对油压和顶锻量进行多次控制测试。利用高精度传感器测量实际的油压和顶锻量值,与设定值进行对比,计算控制误差。统计不同工况下的控制误差分布情况,评估控制系统在不同工况下的控制精度稳定性,要求在各种工况下,油压控制精度保持在±0.5MPa以内,顶锻量控制精度保持在±1mm以内。3.**抗干扰能力测试**:在CAN总线通信线路附近设置强电磁场干扰源,如高频辐射器、大功率电机等,模拟铁路沿线复杂的电磁环境。在干扰环境下,进行CAN总线通信测试和焊接过程控制测试。观察通信是否出现中断、错误帧增加等异常情况,以及控制系统对油压和顶锻量的控制是否受到影响。若通信中断次数在1000次通信中不超过1次,错误帧比例不超过0.1%,且油压和顶锻量的控制误差仍能保持在规定范围内,则认为系统具有良好的抗干扰能力。同时,记录在干扰环境下系统的工作状态和性能变化,分析干扰对系统的影响程度和规律。###5.3测试结果与分析####5.3.1功能测试结果1.**CAN总线通信功能**:经过大量的通信测试,共发送CAN帧10000帧,其中成功接收和解析9980帧,通信成功率达到99.8%。在通信过程中,仅出现20次错误帧,且错误帧均能被及时检测和处理,未对通信造成实质性影响。主节点与下位机模块之间的命令发送和状态返回均准确无误,表明CAN总线通信功能稳定可靠,能够满足钢轨气压焊控制系统的数据传输需求。2.**油压控制功能**:在不同油压设定值下进行测试,结果显示实际油压与设定值的误差均在±0.5MPa以内。例如,当设定油压为80MPa时,多次测量得到的实际油压在79.5-80.5MPa之间波动;设定油压为120MPa时,实际油压在119.5-120.5MPa之间波动。在不同环境温度和干扰条件下,油压控制依然稳定,证明了控制系统对油压的控制精度和稳定性能够满足焊接工艺要求。3.**顶锻量控制功能**:对不同顶锻量目标值进行测试,实际顶锻量与设定值的误差均控制在±1mm以内。如设定顶锻量为25mm时,多次测试得到的实际顶锻量在24-26mm之间;设定顶锻量为30mm时,实际顶锻量在29-31mm之间。多次重复测试结果表明,顶锻量控制具有较高的准确性和重复性,能够满足钢轨气压焊对顶锻量控制的精度要求。4.**焊接过程时序控制功能**:按照设定的焊接工艺时序进行测试,各焊接阶段的实际时间与设定时间偏差均在±1s以内。预顶阶段设定时间为5s,实际时间在4-6s之间;加热阶段设定时间为120s,实际时间在119-121s之间;顶锻阶段设定时间为10s,实际时间在9-11s之间。各阶段之间的转换平稳、准确,无异常情况发生,说明焊接过程时序控制符合工艺要求,能够保证焊接过程的顺利进行。####5.3.2性能测试结果1.**响应时间**:多次测试系统的响应时间,平均响应时间为30ms,满足系统设计要求中不超过50ms的实时性要求。在不同的负载情况下,如同时控制多个执行机构动作时,响应时间略有增加,但仍在可接受范围内,表明系统能够及时响应各种控制命令,具备良好的实时性能。2.**控制精度**:在不同焊接工况下进行控制精度测试,油压控制精度始终保持在±0.5MPa以内,顶锻量控制精度始终保持在±1mm以内。即使在高温、高干扰等恶劣工况下,控制系统依然能够稳定地控制油压和顶锻量,保证了焊接质量的稳定性,说明系统的控制精度能够满足不同工况下的焊接质量要求。3.**抗干扰能力**:在强电磁场干扰环境下进行测试,通信中断次数为0次,错误帧比例为0.05%,远低于规定的1000次通信中不超过1次中断和错误帧比例不超过0.1%的标准。油压和顶锻量的控制误差也未超出规定范围,表明系统具有较强的抗干扰能力,能够在铁路沿线复杂的电磁环境下正常工作,保证了控制系统的可靠性和稳定性。####5.3.3问题与改进措施1.**问题**:在测试过程中,发现偶尔会出现通信延迟的情况,虽然未导致通信中断,但会影响系统的实时性。经过分析,可能是由于CAN总线负载过高,当多个节点同时发送数据时,导致总线竞争激烈,出现通信延迟。2.**改进措施**:优化通信协议,采用优先级调度算法,根据数据的重要性和实时性要求,为不同的CAN帧分配不同的优先级。在总线仲裁时,优先级高的数据帧优先发送,减少高优先级数据的传输延迟。同时,合理调整CAN总线的波特率,在保证通信可靠性的前提下,适当提高波特率,增加数据传输速率,降低总线负载。3.**问题**:在长时间连续运行测试中,发现控制精度有轻微波动,尤其是在油压控制方面,随着运行时间的增加,实际油压与设定值的偏差有逐渐增大的趋势。经检查,可能是由于油泵长时间工作导致油温升高,影响了油泵的性能,进而导致油压控制精度下降。4.**改进措施**:优化控制算法,采用自适应控制算法,根据油泵的工作状态和油温等参数,实时调整控制参数,以补偿油温变化对油泵性能的影响。同时,加强对油泵的散热措施,安装高效的散热装置,降低油泵工作时的油温,保证油泵性能的稳定性,从而提高油压控制精度的稳定性。##六、结论与展望###6.1研究成果总结本研究成功设计并实现了基于CAN总线的钢轨气压焊控制系统,在硬件设计、软件设计和系统测试等方面取得了一系列重要成果。在硬件设计方面,构建了以单片机AT89S52为核心主节点,搭配CAN独立控制器SJAl000与CAN收发器82C250,以及采用周立功公司ICAN系列工业模块作为下位机的数据采集和控制模块的主从结构硬件系统。该硬件架构设计合理,各模块选型恰当,确保了系统能够稳定、可靠地运行。通过精心设计各模块之间的接口电路,实现了数据的高效传输和稳定交互,为整个控制系统的正常工作提供了坚实的硬件基础。软件设计上,运用C语言编写了功能全面的控制系统软件。软件涵盖了初始化CAN控制器、发送命令帧、接收并处理返回帧数据等关键功能模块,能够精准地实现对焊接过程的时序控制和对油压、顶锻量的恒值控制。在焊接过程中,软件严格按照预定的工艺流程,精确控制各个焊接阶段的时间和参数,保证了焊接质量的稳定性和一致性。同时,通过对采集到的油压和顶锻量数据进行实时处理和分析,实现了对焊接过程的有效监控和调整,确保焊接过程始终处于最佳状态。经过系统测试,该控制系统在功能和性能方面表现出色。功能测试结果显示,CAN

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论