基于can总线的结晶器振动控制装置制造方法

文档序号:3299061阅读:227来源:国知局
基于can总线的结晶器振动控制装置制造方法
【专利摘要】本发明公开了一种基于CAN总线的结晶器振动控制装置。本发明是一种低成本的带有现场总线接口的结晶器液压振动控制装置,用于构建基于CAN现场总线的多流连铸机振动控制系统,对于改善国内钢铁企业使用的液压振动控制装置大多从国外引进的现状,降低连铸自动化成本,提高连铸自动化水平具有重要意义。本装置使用STM32单片机作为控制器,大大降低了系统的成本。在振动位移检测方面,可采SSI信号,可实现振动位移信号的高速同步采样,同时可提高振动位移检测的精度;在通讯方面,通过CAN总线实现与上位机的通讯,可实现对振动波形参数的实时修改和监控功能。
【专利说明】基于CAN总线的结晶器振动控制装置
【技术领域】
[0001]本发明涉及一种基于CAN总线的结晶器振动控制装置,特别是涉及结晶器振动控制,属于连续铸钢领域。
【背景技术】
[0002]目前国内钢铁企业使用的液压振动控制装置,存在以下缺陷:
[0003]I)功能较完全的振动控制器大都是从国外引进的,成本很高;
[0004]2)—些低成本的结晶器振动控制器现场级设备只具有信号采集与执行控制命令的功能,控制算法通过上位机完成,下位机完成的功能仅仅是采集与执行上位机的命令,在总线通讯出现故障的情况下不能完成工作任务;
[0005]3)现行的许多低成本的控制器在控制参数修改与设置方面存在不足:控制器参数修改一般只能通过在线方式由上位机下发参数,完成控制功能,本机不能独立完成参数修改功能,对于总线的依赖程度过大;
[0006]4)在控制过程监控方面,一些低成本的控制器存在如下缺陷:只能通过总线由上位机组态进行监控,不能在现场完成监控功能。
[0007]基于以上一些技术缺陷,开发低成本、功能完备并带有现场总线接口的结晶器液压振动控制装置,用于构建基于现场总线的多流连铸机振动控制系统,对于钢铁企业发展高效连铸,降低连铸自动化成本,提高连铸自动化水平具有重要意义。

【发明内容】

[0008]一种基于CAN总线的结晶器振动控制装置,微处理器、模拟信号调理模块还包括:SSI高速同步采集模块、SSI高速同步采集模块输入端与振动位移传感器接口相连接,SSI高速同步采集模块输出端与微处理器相连接,微处理器用于完成现场信号采集、SSI协议振动位移信号采集,根据本机或上位机设置的控制参数、经过控制算法运算处理,控制信号通过微处理器中的内部控制信号输出模块进入控制信号输出模块,控制信号输出模块进行D/A转换后与结晶器振动液压伺服阀连接;CAN总线监控信号通过微处理器内的总线通讯模块进入CAN总线接口模块,CAN总线接口模块与CAN总线相连接进行在线监控;本机监控通过微处理器内的触摸屏驱动模块与触摸屏模块连接。
[0009]进一步:现场信号采集包括:拉坯速度传感器信号、两路阀芯位置信号、两路液压腔压力信号、两路振动位移信号、开关量信号;所述拉坯速度传感器信号、两路阀芯位移信号及两路液压腔压力信号通过模拟信号调理模块送入微处理器;两路振动位移信号通过SSI高速同步采集模块送入微处理器;开关量信号通过输入开关量电气隔离模块进行电气隔离后送入微处理器后,微处理器按照触摸屏或CAN总线设定的参数处理后输出结晶器振动液压伺服阀振动的控制及监控信号。
[0010]进一步:微处理器包括:内部模拟信号采集模块,内部SSI信号采集模块,控制算法模块,振动波形发生器模块,主程序模块,初始化模块,震动参数修改模块,定时器配置模块,通讯数据封装模块,控制信号输出模块,数字量输出模块,触摸屏驱动模块,总线通讯模块,显示程序模块。
[0011]进一步:所述模拟信号调理模块包含有I/V变换电路,将电流信号转换为O?
3.3V的电压信号,完成所采集的拉速、阀芯位移、液压缸腔内压力信号的调理。
[0012]进一步:SSI高速同步采集模块,可同步采集两路25位SSI振动位移信号,将两路SSI振动位移信号按字节分时输出,传送给微处理器。
[0013]进一步:所述内部模拟信号采集模块,对于两路阀芯位移信号、两路液压腔压力信号实现同步采集;
[0014]所述内部SSI信号采集模块通过控制SSI高速同步采集模块,分别将SSI高速同步采集模块采集的两路振动位移信号按字节读出;
[0015]振动波形发生器模块可以产生经过离散化的正弦波与非正弦波,具有标准正弦信号发生函数、任意非正弦信号发生函数以及非正弦信号发生函数;
[0016]主程序模块,在每一个周期振动完成后自动配置参数。包含读取参数程序;波形发生器模块;显示程序;配置定时器程序;振动位移采集程序;通讯数据封装模块;
[0017]初始化模块,可以初始化显示屏的显示项目包括:振动装置的工作状态是否正常、警告信息的提示、当前输出的数值等、波形参数显示用于提示当前产生波形的种类、波形特征参数、当前波形参数的设置方式、波形的离散化参数,能初始化I/o资源与振动控制装置的外设,显示欢迎界面;所述波形特征参数:包括偏斜率、振幅、频率;当前波形参数的设置方式采用本机设定或上位机设定;
[0018]振动参数设置模块,具有参数标志[a h f],具有通用参数修改程序,具有参数修改程序,可以实时修改波形参数,可根据修改的幅度自动设置修改任意波形参数的修改方式为一次修改或多次修改;任意波形参数:包括偏斜率a,振幅h,以及振动频率f ;
[0019]通讯数据封装模块,可以将传感器信号,控制信号,控制参数,波形参数封装成数据包,传感器信号:包括拉速、阀芯位移、压力、振动位移;
[0020]控制算法模块对两路伺服阀实现互相独立的控制运算。
[0021]进一步:主程序模块通过调用初始化模块完成控制器的初始化功能;主程序模块通过参数读取程序实现对于控制器参数的设置,通过震动参数修改模块实现波形参数的设置与修改;主程序模块通过定时器配置模块实现波形输出频率的设置;主程序模块在读取第一个波形曲线的点之后,开始一个定值控制的过程,定值控制的过程为:主程序模块首先采集振动位移,之后进行一次运算,然后输出一个控制信号,最后判断定时器时间是否达至IJ,如果没有达到,则重复此过程一次,如果定时器时间已经达到,则结束此过程,所述的振动位移采集通过主程序模块调用内部SSI信号采集模块控制SSI高速同步采集模块实现,输出控制信号通过主程序模块调用内部控制信号输出模块完成;主程序模块采集拉速信号、两路阀芯位置、两路液压腔压力,通过调用内部模拟信号采集模块实现对拉速信号、两路阀芯位置、两路液压腔压力信号的采集;主程序模块对数据进行打包并且上传,主程序模块通过调用通讯数据封装模块实现数据的打包,主程序模块通过总线通讯模块由CAN总线接口模块实现与CAN总线相连实现与上位机之间的通讯;主程序模块完成控制参数的本地显示,主程序模块调用参数显示程序模块通过触摸屏驱动模块控制触摸屏模块实现控制装置参数的本地显示;主程序模块能判断一个周期的控制是否完成,如果一个控制周期完成,则重新读取参数,如果没有完成,则读取当前振动曲线中的下一个离散化的点,开始另外一次定值控制,所述一个控制周期是指:根据当前波形参数所设置的一个正弦或非正弦周期中所有的点都已全部读取。
[0022]进一步:程序流程如下:
[0023]I)初始化;
[0024]2)读取来自本机设置或者上位机下发的控制参数;
[0025]3)按照参数读取的结果设置波形参数;
[0026]4)产生振动波形;
[0027]5)设置显示屏;
[0028]6)按照波形的频率设置定时器;
[0029]7)读取波形数据中的第一个点;
[0030]8)采集振动位移;
[0031]9)进行一次运算;
[0032]10)输出一个控制信号;
[0033]11)判断定时器时间是否达到,如果没有达到则返回8)重新采集数据,运算输出,如果时间到了,则结束这个循环;
[0034]在每一个定值控制周期中,只要定时器设定是时间不到,就不断对振动位移信号进行采样及控制,使控制系统的输出与给定值匹配。
[0035]12)在一个控制循环结束之后读取计数器的数值,判断一个曲线周期的控制是否完成,如果完成,则重新开始读取参数,如果没有完成则读取下一个波形的点开始下一个周期的定制控制。
[0036]进一步:振动参数设置模块,具有参数标志[a h f],具有通用参数修改程序,具有参数修改程序,可以实时修改波形参数,可根据修改的幅度自动设置修改任意波形参数的修改方式为一次修改或多次修改;波形参数:包括偏斜率a,振幅h,以及振动频率f ;振动参数设置模块可以读取当前参数,并读取当前设定的参数值;振动参数设置模块比较当前振幅与振幅的设定值,如果数值不相等,则设置参数标志为[a h f] = [010],调用通用参数修改程序,完成调用之后,重置[a h f] = [000],如果数值相等,则比较下一个波形参数,振动参数设置模块比较当前偏斜率与偏斜率的设定值,如果数值不相等,则设置参数标志为[a h f] = [100],调用通用参数修改程序,完成调用之后,重置[a h f] = [000],如果数值相等,则比较下一个波形参数,振动参数设置模块比较当前频率与频率的设定值,如果数值不相等,则设置参数标志为[a h f] = [001],调用通用参数修改程序,完成调用之后,重置[a hf ] = [000],如果数值相等,则比较下一个波形参数;
[0037]进一步:振动参数设置模块,其流程如下:
[0038]I)读取由参数读取程序取回的波形参数值;
[0039]2)读取当前正在使用波形的参数;
[0040]3)比较两组参数中的振幅是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,比较下一个参数;
[0041]4)比较两组参数中的偏斜率是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,比较下一个参数;
[0042]5)比较两组参数中的频率是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,跳出该程序,结束设置过程。
[0043]进一步:通用参数修改程序根据参数标志[a h f],对操作变量x、x0、1、N、X实现赋值,根据i是否小于N判断否正处于参数修改的过渡过程中:如果i〈N,则参数的修改处于过渡过程,进行一步修改,否则处于最后一次,或者不在此过程中;进一步,判断i是否等于N确定是否处于最后一次修改的过程中,如果i=N,则处于最后一步,完成最后一步修改,否则,不在修改的过渡过程中;进一步,判断X与xO的差距,若判断为过大,则开始计算修改总次数N、修改次数1、步进值X,接着进行第一步修改,否则,直接修改当前参数xO ;通用参数修改程序通过调用参修改程序完成参数的最终修改;
[0044]进一步:通用参数修改程序流程如下:
[0045]I)读取参数标志,确定需要修改的参数,并对变量X (设定值)、xO (初始值),赋值如果标志向量为[a h f] = [001],则 x=f, x0=f0 ; [a h f] = [010],则 x=h, x0=h0 ; [a hf] = [100]JlJX=a,X0=a0。根据参数向量设置不同的最大变化范围(ΛX)为AF、ΛΗ、ΔΑ,相应的修改步长值(X)为:F、H、A,并且设定修改的次数的参量i为if、ih、ia并设置次数参量 N 为 Nf, Nh, Na ;
[0046]2)比较当前i与N的大小,若i〈N,则说明目前参数正在步进修改的过程中,则i加1,xO增加一步的数值,即:χ0=χ0+Χ。若i不小于N则表明参数修改的状态处于步进修改最后一步或者还未进行参数修改范围的判断,进行下一步比较;
[0047]3)比较i与N是否相等,如果相等,则目前正处于步进修改的最后一步,设定值X与当前值xO之间的差距已经小于设定的范围,则i加1,直接将设定值赋值给当前值,如果不相等,则参数的变化范围尚未判断,则进入下一步判断参数的变化范围;
[0048]4)如果参数的变化范围大于或者等于对应的最大范围ΔΧ,直接改变参数会造成对系统的冲击,则分阶段改变,接着确定完成更改所需要周期数N,更改X的符号以确定修改的方向,重置i的数值为1,增加xO之后调用参数修改程序进行设置第一步的参数,如果参数变化的范围小于ΛΧ,则可以直接改变。
[0049]进一步:参数修改程序通过读取标志位完成波形参数的赋值,并且将通用参数修改程序的操作变量1、N、X导出。
[0050]进一步:参数修改程序,其流程如下:
[0051 ] I)读取参数标志向量;
[0052]2)根据参数标志向量对相应的波形参数完成赋值;
[0053]3)导出通用参数修改程序的变量,保存工作过程。
[0054]本专利技术的优点:
[0055]1.系统构成
[0056]本控制装置选用STM32单片机作为微处理器,比MCS-51系列8位单片机具有更加强大的性能,SMT32单片机成本较低,在保证性能的基础上可以大大降低控制器的成本。
[0057]2.数据采集[0058]本装置采集的数据包括SSI位移信号,拉速信号,阀芯反馈信号,液压腔的压力信号,振动位移SSI信号使用基于FPGA设计的高速同步数据采集模块进行采集,其余的信号采用模拟量输入,经过信号调理后送入微处理器;
[0059]3.信号调理
[0060]信号调理电路用于处理送入微处理器的模拟量与数字量。模拟量包括拉速,阀芯反馈信号,压力信号。数字量包括振动位移信号,以及启动,准备好信号;
[0061]通过I/V变换,将现场变送器输出的4?20mA电流信号转换为O?3.3V电压信号,送入微处理器,使用微处理器内部12位ADC转换为数字信号;
[0062]通过基于FPGA的高速同步采集模块采集SSI格式的位移信号,经过该模块的处理后,使用8位信号分时传输送入微处理器;
[0063]4.通讯
[0064]本装置通过CAN总线与上位机之间进行通信,通过微处理器内部的CAN控制器,以及片外的CAN收发器模块,与现场CAN总线相连,将本控制装置(下位机)采集的数据及控制参数上传,并且接收上位机送到总线上的控制信号;
[0065]5.参数修改与波形监控
[0066]通过控制器本身的TFTIXD触摸屏模块可以设置、修改参数并显示振动波形,控制器可脱离上位机独立完成控制任务;
[0067]6.振动波形的产生与修改
[0068]控制系统的给定信号为参数可实时修改的非正弦波,系统产生非正弦波的方法为:(1)根据用户设置的值或者上位机下发的通讯数据确定非正弦波的波形参数;(2)选择需要产生的波形,同样是根据用户定义或者通讯数据进行确定;(3)根据波形选择的结果调用正弦波或非正弦波发生子程序产生离散化的波形数据存入内存中;(4)据用户设定的振动频率或者通讯数据对频率的设定配置定时器,按照一定的周期调用内存中波形数据;
[0069]每完成一个周期的波形输出之后检查参数是否修改,如果修改则重新对波形数据进行配置,产生新的波形。为了防止波形参数修改范围过大对系统产生冲击,波形参数的修改采用步进式,如果改变范围超过程序允许的范围,参数的修改将分多次完成;
[0070]7.本专利收益效果
[0071 ] 与现有技术相比,本专利的有益效果是:在数据采集方面,本发明使用了同步串行技术SSI,实现了 25位SSI格式的振动位移信号的高速同步采集,并且提高了信号采集的精度,在SSI信号采集模块与微处理器之间使用了分时输出的方式,大大节省了微处理器的硬件资源;在通讯方面,本发明利用CAN总线实现与总线上其他设备之间的通讯,与常用的RS-485总线技术相比具有突出的可靠性、实时性和灵活性,在总线速率、传输距离、总线检测能力、通信实时性方面有较强的优势;在控制器方面,本控制装置作为一个专用的结晶器振动控制装置,使用STM32单片机作为微处理器,比MCS-51系列8位单片机具有更加强大的性能,由于目前国内钢铁企业使用的液压振动控制装置,大都是从国外引进的,而SMT32单片机成本较低,故该发明可以大大降低控制器的成本;本装置自身具有参数设置与修改的功能,在上位机发生故障的情况下,仍然可以运行,保证生产顺利进行。
【专利附图】

【附图说明】[0072]图1为一种基于CAN总线的结晶器振动控制装置机构图;
[0073]图2为结晶器多流振动控制的总体方案机构图;
[0074]图3为SSI数据采集模块电路图;
[0075]图4为主程序模块流程图;
[0076]图5为初始化模块流程图;
[0077]图6为参数读取程序流程图;
[0078]图7为参数设置模块流程图;
[0079]图8为参数向量结构图;
[0080]图9为通用参数修改模块流程图;
[0081]图10为参数修改模块流程图;
[0082]图11为显示程序模块流程图;
[0083]图12为波形发生器模块流程图;
[0084]图13为波形曲线发生程序流程图;
[0085]图14为控制装置电路原理图。
【具体实施方式】
[0086](一)基于CAN总线的结晶器多流振动控制系统的构建
[0087]本控制装置可用于实现一种基于现场总线的结晶器多流振动控制系统。如图2所示,在该控制系统系统中,结晶器振动控制器通过产生振动波形控制液压振动装置按设定的振动曲线振动,完成生产任务。所述主机(上位机)通过CAN总线与从机(振动控制器)进行通讯。主机在该系统中可以对结晶器多流振动控制过程进行监控,在线修改振动及控制参数,并发送给从机,直接对振动过程进行控制。从机(振动控制器)直接采集现场数据并产生振动波形,经数据处理及运算后,对液压缸伺服阀进行控制。当主机发生故障时,从机可脱离主机独立工作。
[0088](二)基于CAN总线的结晶器振动控制器
[0089]微处理器1、模拟信号调理模块2,还包括:SSI信号振动位移检测接口模块3、SSI信号振动位移检测接口模块3输入端与振动位移传感器接口相连接,SSI信号振动位移检测接口模块3输出端与微处理器I。
[0090]从机(控制装置)采集数据并输出液压缸的控制信号,采用STM32单片机作为控制装置的微处理器,外围电路包括:模拟信号调理模块2、SSI高速同步采集模块3、控制信号输出模块8、输入开关量电气隔尚模块4、输出开关量电气隔尚模块7、CAN总线接口模块5、电源模块以及触摸屏模块6,实现数据采集、信号调理、通讯、参数修改、波形监控功能。
[0091]现场信号采集包括:拉坯速度传感器信号、两路阀芯位移信号、两路液压腔压力信号、两路振动位移信号、开关量信号;所述拉坯速度传感器信号、两路阀芯位移信号及两路液压腔压力信号通过模拟信号调理模块2送入微处理器I ;两路振动位移信号通过SSI信号振动位移检测接口模块3送入微处理器I ;开关量信号4通过电气隔离送入微处理器I后,微处理器I按触摸屏或CAN总线设定的参数处理后输出结晶器振动液压伺服阀振动的控制及监控信号。
[0092]所述微处理器I内部程序包括:内部模拟信号采集模块10,内部SSI信号调理模块11,控制算法模块12,振动波形发生器模块13,主程序模块14,初始化模块15,震动参数修改模块16,定时器配置模块17,通讯数据封装模块18,控制信号输出模块19,数字量输出模块20,触摸屏驱动模块21,总线通讯模块22。
[0093]所述模拟量输入模块2,可以采集拉速、阀芯位移、液压缸腔内压力信号,模拟量输入模块2包含有I/V变换电路,将电流信号转换为O?3.3V的电压信号。
[0094]所述采集的现场信号包括:拉坯速度传感器信号、两路阀芯位移信号、两路液压腔压力信号、两路振动位移信号、开关量信号;上述拉坯速度传感器信号、两路阀芯位移信号、两路液压腔压力信号、两路振动位移信号、开关量信号由现场对应的传感器采集,通过现场传感器接口送入控制装置,拉坯速度传感器、两路阀芯位移信号及通过两路液压腔压力信号模拟信号调理模块送入微处理器I ;两路振动位移信号通过SSI信号振动位移检测接口模块3送入微处理器I ;开关量信号通过经电气隔离送入微处理器1,送入微处理器I的信号经触摸屏或CAN总线设定的参数通过微处理器I处理后输出结晶器振动液压伺服阀振动的控制及监控信号。
[0095]微处理器I通过运行主程序模块14完成本控制装置的所有功能,主程序模块14工作流程如下:
[0096]I)初始化,配置单片机的接口、时钟、中断等以及设置控制器的默认参数等;
[0097]2)读取来自本机设置或者上位机下发的控制参数;
[0098]3)按照参数读取的结果设置波形参数;
[0099]为了防止由于修改参数而产生的冲击,本程序采取两方面的措施:第一是系统给定波形的改变从一个周期振动完成后的位移过零点开始;第二是设计具有步进修改参数功能的参数设置子程序。
[0100]4)产生振动波形;
[0101]振动波形的产生方法为首先产生非正弦波或正弦波的曲线上经过离散化的点,然后根据波形的频率配置定时器按照一定的周期输出这些点,形成波形曲线,在振动控制过程中,本程序通过波形的离散化,将一个周期的随动控制转换为多次定值控制,根据设定的频率改变每一产生给定的时间间隔。
[0102]5)设置显示屏,显示必要的信息;
[0103]6)按照波形的频率设置定时器,设置输出波形值的时间间隔;
[0104]7)读取波形数据中的第一个点;
[0105]8)采集振动位移;
[0106]9)进行一次运算;
[0107]10)输出一个控制信号;
[0108]11)判断定时器时间是否达到,如果没有达到则返回8)重新采集数据,运算输出,如果时间到了,则结束这个循环;
[0109]在每一个定值控制周期中,只要定时器设定是时间不到,就不断对振动位移信号进行采样及控制,使控制系统的输出与给定值匹配。
[0110]12)在一个控制循环结束之后读取计数器的数值,判断一个曲线周期的控制是否完成,如果完成,则重新开始读取参数,如果没有完成则读取下一个波形的点开始下一个周期的定制控制。[0111]初始化程序模块如图5所示,用于完成控制器的一些硬件的配置和程序缺省值的设置;其工作过为:
[0112]I)微处理器的初始化,单片机的初始化过程主要是指配置系统的中断,配置系统时钟等过程;
[0113]2) I/O的初始化,I/O的初始化用于配置单片机的I/O资源,包括端口资源复用,端口时钟的配置等;
[0114]3)初始化显示,由于液晶显示器的读取数据速度一般比单片机慢很多,所以在实时监控的程序的设计中,可以将一些固定不变的内容首先输出到屏幕上,实时监控数据仅需要为屏幕传送很少量的数据,可以提高系统的效率;
[0115]4)外设的初始化,包括外设的芯片的使能,工作模式的配置等,通过对单片机的引脚操作可以实现;
[0116]5)软件缺省值设置,包括振动控制参数的设置,默认波形参数的设置,在没有本地修改以及在线修改的情况系,保证控制器在默认状态下运行;
[0117]6)欢迎界面显示,通过该界面可以了解初始化的完成情况,完成之后显示为工作的界面。(三)现场信号的采集
[0118]将现场传感器检测信号送入控制装置的采样模块,装置采样的控制信号包括SSI信号,与4?20mA的模拟信号。
[0119]SSI高速同步采集模块3与现场的振动位移传感器I接口和振动位移传感器2接口相连,微处理器模块I通过主程序模块14调用内部SSI信号采集模块11控制SSI高速同步采集模块3完成对两路SSI振动位移信号的同步采集,并且按字节读出后,送入位处理器中。
[0120]SSI高速同步采集模块3实现由高速同步采集芯片构成,将现场传感器输出的两路SSI信号的CLK-,CLK+, DATA+, DATA-与此模块的对应端相连,模块的8位数据输出,SSI模块的控制信号以及转换状态端口与微处理器的GPIO端口相连,当需要采样时,微处理器可以通过使能信号使微处理器同时对两路SSI信号采样,通过SSI装置的转换标志信号对输出信号进行区分,使微处理器能够识别信号来源于某一路与同一路信号的不同位。对于不同精度的位移信号可以通过对SSI芯片的格式设置端子的高低电平实现区分,若为16位精度的位移信号则模块将收到的信号分成8位信号,分两次输入微处理器,若为24或25位的控制信号,则分3次或者4次进行输出,传入微处理器中;
[0121]内部SSI信号采集模块11工作过程为:首先使能SSI芯片,同时启动两个通道的转换,等待转换结束,SSI数据为25位,按字节分4次从芯片中读出,首先读取通道I的数据,之后读取通道2的数据;
[0122]SSI高速同步采集模块3电路如图3所示,电路中DCHOO?DCH07为通道I的8位数据输出,DCHlO?DCH17为通道2的8位数据输出,SSI_CH1,SSI_CH2为通道I与通道2的采集数据输入端,MDO与MDl为时钟频率选择端。控制端包括start,end, cs,用于启动转换,标示转换结束,以及使能SSI数据采集芯片;
[0123]该模块还具有输出数据格式选择的功能,通过对输出数据格式位的高低电平的设置可以将输出转换为二进制码或格雷码输出;
[0124]模拟信号的输入包括拉速,两个液压缸阀芯位置,两个液压腔压力信号。模拟信号调理模块2分别与拉坯速度传感器接口、阀芯位置传感器I接口、阀芯位置传感器2接口、液压腔压力传感器I接口和液压腔压力传感器2接口相连,微处理器模块I通过主程序模块14调用模拟信号采集模块10完成对经过模拟信号调理模块调理之后的两路阀芯位移信号、两路液压腔压力信号以及拉速信号的采集,两路阀芯位移信号、两路液压腔压力信号为同步采集,两路阀芯位置、两路液压腔压力信号的采集为同步采集;
[0125]模拟信号调理模块2接收来自现场的4?20mA电流信号,通过I/V变换转换为微处理器可识别的O?3.3V电压信号送入微处理器I的GPIO端口,内部模拟信号采集模块10将GPIO设置为12位ADC模式,实现12位模数转换。
[0126](四)参数读取与设置
[0127]本控制装置的控制参数的设定与修改可以通过两种方式实现:可以由上位机设定参数后,通过CAN总线将控制参数传入控制器;也可以通过本装置的触摸屏进行参数的修改,可以通过触摸屏对非正弦振动的振幅、振动频率和偏斜率进行修改,为了防止振动冲击,在修改振动频率时,控制器会根据频率的变化量确定修改方案(一次修改或者分多次修改)。
[0128]本机参数设置方式:微处理器I通过主程序模块14调用触摸屏驱动模块21控制触摸屏模块6检测触摸屏模块6上操作,完成振动控制的本机设置;
[0129]在线参数设置方式:微处理器I通过主程序模块14调用CAN总线通讯模块22控制CAN总线接口模块5读取来上位由CAN总线发送的控制参数,完成在线设置;
[0130]参数读取与设置的【具体实施方式】如下:
[0131]主程序模块14通过调用参数读取程序,确定控制装置的参数,参数读取程序的流程如下:
[0132]I)判断上位机是否发送参数,如果接收到了上位发送的参数,则设定上位机的参数,直接返回;
[0133]2)如果未收到上位机参数,则读取本地的参数,如果本机设置了参数则使用设置的参数,如果本机未设置参数,则返回,使用缺省值。
[0134]振动参数修改模块16的流程图如图7所示,该模块实现波形参数的分阶段改变。参数改变的方式以及阶段的个数由通用参数修改程序确定。当波形参数(包括振幅、偏斜率、频率)变化范围大于某一个值时,如果直接改变,由于范围过大会对系统的稳定运行造成冲击,为了防止此类现象的发生,需要分阶段改变参数。如果波形参数的变化范围小于设定的数值,则直接修改波形的参数,如果大于设定的数值,则首先根据修改后的频率与修改前的频率确定需要修改的周期的个数N和每个周期中修改的变化量ΛΧ (X包括:频率F、振幅H、偏斜率A),之后每个周期中输出一个振动频率变化了 Λ X的非正弦波,经过N个周期完成频率的修改。此模块工作过程如下:
[0135]I)读取由参数读取程序取回的波形参数值;
[0136]2)读取当前正在使用波形的参数;
[0137]3)比较两组参数中的振幅是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,比较下一个参数;
[0138]4)比较两组参数中的偏斜率是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,比较下一个参数;
[0139]5)比较两组参数中的频率是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,跳出该程序,结束设置过程;
[0140]通用参数修改程序通过参数标志向量识别需要修改的参数,然后根据参数变化的范围确定修改的方式(一次修改或者多次修改),此程序的流程图如图9所示,程序的工作过程如下:
[0141]I)读取参数标志,确定需要修改的参数,并对变量X (设定值)、X(I (初始值),赋值如果标志向量为[a h f] = [001],则 xsf^x。=;!;.。; [a h f] = [010],则 x=h, x0=h0 ; [a h f] = [100],则x=a,Χ(ι=%。根据参数向量设置不同的最大变化范围(Λ X)为Λ F、Λ H、Λ Α,相应的修改步长值(X)为:F、H、A,并且设定修改的次数的参量i为if、ih、ia并设置次数参量N为Nf、Nh、Na,对应参量与标志位的关系如图8所示;
[0142]2)比较当前i与N的大小,若i〈N,则说明目前参数正在步进修改的过程中,则i加1,xO增加一步的数值,即ufxdX。若i不小于N则表明参数修改的状态处于步进修改最后一步或者还未进行参数修改范围的判断,进行下一步比较;
[0143]3)比较i与N是否相等,如果相等,则目前正处于步进修改的最后一步,设定值X与当前值xO之间的差距已经小于设定的范围,则i加1,直接将设定值赋值给当前值,如果不相等,则参数的变化范 围尚未判断,则进入下一步判断参数的变化范围;
[0144]4)如果参数的变化范围大于或者等于对应的最大范围ΔΧ,直接改变参数会造成对系统的冲击,则分阶段改变,接着确定完成更改所需要周期数N,更改X的符号以确定修改的方向,重置i的数值为1,增加Xtl之后调用参数修改程序进行设置第一步的参数,如果参数变化的范围小于ΛΧ则可以直接改变。
[0145]参数修改程序完成用于对波形参数完成赋值,供波形发生程序使用这些数值发生波形,在完成赋值之后将通用参数修改程序的变量导出以记录当前某个参数的修改状态。程序流程图如图7所示,工作过程如下:
[0146]I)读取参数标志向量;
[0147]2)根据参数标志向量对相应的波形参数完成赋值;
[0148]3)导出通用参数修改程序的变量,保存工作过程。
[0149]波形发生模块如图8所示,通过读取参数修改程序所设置的波形参数产生离散化的波形,其工作过程如下:
[0150]I)初始化参数,读取参数修改程序所设置的波形参数(振幅),%(偏斜率),fQ (频率);
[0151]2)根据选择的波形生成波形曲线,如果为正弦波,则调用正弦信号发生函数,产生的离散化的点存储在数组中,如果为非正弦波,则调用任意非正弦波发生函数,存储非正弦曲线的各个点,正弦波与非正弦波发生函数如图9所示;
[0152](五)振动控制
[0153]振动控制系统的给定信号为非正弦波,振动参数(偏斜率、振幅、振频等)可由上位机设置并通过CAN总线下发控制装置,也可由控制装置自带的触摸屏进行设定。非正弦波形离散化的点数由控制精度而确定,单片机内部的非正弦信号发生程序根据波形参数以及点数生成一个周期的非正弦波的数值,存入单片机的内存中;
[0154]控制器对两路振动位移信号进行采集后,分别与给定值进行比较,并进行PID运算,将计算结果用16位数字信号输出;
[0155]对于液压缸伺服阀的两路控制作用,采用相互独立的程序模块进行同步控制,对液压缸两侧振动位移的不同设定值分别控制,从而配合结晶器直线或者弧线的运动方式;
[0156]系统振动控制的方案为PID控制,控制系统的给定为非正弦曲线,在控制程序中,首先按照控制精度的要求将设定的非正弦曲线进行离散化,将离散化的数值存入微处理器I的一段存储空间中,本装置在离散化时对一个周期的非正弦信号进行了 360次采样,将一个周期的随动控制转换为360次定值控制,根据设定的频率改变每一产生给定的时间间隔,在每一个定值控制周期中对振动位移信号进行多次采样及PID控制,使控制系统的输出与给定值匹配。为了防止由于修改参数而产生的冲击,系统给定波形的改变从一个周期振动完成后的位移过零点开始。
[0157](六)监控与通讯
[0158]本机监控方式:微处理器I通过主程序模块14调用触摸屏驱动模块21控制触摸屏模块6在触摸屏模块6上显示本机监控信息,完成振动控制的本机监控;
[0159]在线监控方式:微处理器I通过主程序模块14调用CAN总线通讯模块22控制CAN总线接口模块5由CAN总线向上位机发送控制参数,完成在线监控;
[0160]通讯:本控制装置与上位机之间通过CAN总线进行通讯,CAN总线的物理层与数据链路层由CAN控制器和CAN收发器共同构成,本发明使用的微处理器I自带一个bxCAN控制器,支持CAN协议2.0A和2.0。CAN总线控制器与物理总线之间的接口由CAN收发器构成,CAN总线接口模块5采用TJA1050作为CAN收发器与物理总线之间连接,微处理器I与CAN总线接口模块5连接,CAN总线接口模块5通过接线端子同CAN总线连接,实现与上位机之间的通讯。控制器与上位机之间的通讯包括控制器数据上传与上位机数据的下发;
[0161]上位机通过下发非正弦振动波形参数,控制算法参数,伺服阀使能信号等控制数据实现对各流振动的控制;
[0162]控制装置为上位机打包上传振动波形参数,控制参数,阀门使能信号,安全阀信号,准备信号,振动位移信号,压力,拉速,阀芯反馈,开关量输入信号等,供上位机对各流振动情况进行监控。
[0163](七)控制信号的输出
[0164]为了保证控制精度,在微处理器I内部通过主程序调用控制算法模块经过运算之后调用内部控制信号输出模块19以16位形式从GPIO 口输出,通过SPI总线输送至控制信号输出模块8控制伺服阀动作,控制信号输出模块8与1#伺服阀控制接口和2#伺服阀控制接口相连,制信号输出模块8通过16位数/模转换芯片AD5660,转换为电压信号,经过V/I转换电路之后转换为伺服阀要求的电流信号;
[0165]由于液压缸两侧的振动要求是同步的,故两路控制信号的输出必须同步。本控制装置中,外部DAC与微处理器之间通过SPI总线相连,在PID运算完成后,首先将信号储存在单片机内,输出时,将数据锁存至ADC芯片中,然后同时使能两个DAC芯片,使芯片同时启动转换;[0166]微处理器I对应的GPIO 口输出控制信号接入开关量电器隔离模块7,开关量电器隔离模块7与1#伺服阀使能、2#伺服阀使能、伺服阀使能和安全阀使能的接口相连,控制输出端的12V电平的输出,开关量电器隔离模块7使用ULN2803驱动外部继电器输出开关量。
【权利要求】
1.一种基于CAN总线的结晶器振动控制装置,微处理器(I)、模拟信号调理模块(2)其特征在于:还包括:SSI高速同步采集模块(3)、SSI高速同步采集模块(3)输入端与振动位移传感器接口相连接,SSI高速同步采集模块(3)输出端与微处理器(I)相连接,微处理器(I)用于完成现场信号采集、SSI协议振动位移信号采集,根据本机或上位机设置的控制参数、经过控制算法运算处理,控制信号通过微处理器(I)中的内部控制信号输出模块(19)进入控制信号输出模块(8),控制信号输出模块(8)进行D/A转换后与结晶器振动液压伺服阀连接;CAN总线监控信号通过微处理器(I)内的总线通讯模块(22)进入CAN总线接口模块(5),CAN总线接口模块(5)与CAN总线相连接进行在线监控;本机监控通过微处理器(I)内的触摸屏驱动模块(21)与触摸屏模块(6 )连接。
2.根据权利要求1所述的一种基于CAN总线的结晶器振动控制装置,其特征在于:现场信号采集包括:拉坯速度传感器信号、两路阀芯位置信号、两路液压腔压力信号、两路振动位移信号、开关量信号;所述拉坯速度传感器信号、两路阀芯位移信号及两路液压腔压力信号通过模拟信号调理模块(2)送入微处理器(I);两路振动位移信号通过SSI高速同步采集模块(3)送入微处理器(I);开关量信号通过输入开关量电气隔离模块(4)进行电气隔离后送入微处理器(I)后,微处理器(I)按触摸屏或CAN总线设定的参数处理后输出结晶器振动液压伺服阀振动的控制及监控信号。
3.根据权利要求1所述的一种基于CAN总线的结晶器振动控制装置,其特征在于:微处理器(I)包括:内部模拟信号采集模块(10),内部SSI信号采集模块(11),控制算法模块(12),振动波形发生器模块(13),主程序模块(14),初始化模块(15),震动参数修改模块(16),定时器配置模块(17),通讯数据封装模块(18),控制信号输出模块(19),数字量输出模块(20),触摸屏驱动模块(21),总线通讯模块(22),显示程序模块(23)。
4.根据权利要求2所述的一种基于CAN总线的结晶器振动控制装置,其特征在于:所述模拟信号调理模块(2)包含有I/V变换电路,将电流信号转换为O~3.3V的电压信号,完成所采集的拉速、阀芯位移、液压缸腔内压力信号的调理。
5.根据权利要求1所述一种基于CAN总线的结晶器振动控制装置,其特征在于:SSI高速同步采集模块(3 ),可同步采集两路25位SSI振动位移信号,将两路SSI振动位移信号按字节分时输出,传送给微控制器。
6.根据权利要求3所述一种基于CAN总线的结晶器振动控制装置,其特征在于:所述内部模拟信号采集模块(10),对于两路阀芯位移信号、两路液压腔压力信号实现同步采集; 所述内部SSI信号采集模块(11)通过控制SSI高速同步采集模块(3),分别将SSI高速同步采集模块(3)采集的两路振动位移信号按字节读出; 振动波形发生器模块(13)可以产生经过离散化的正弦波与非正弦波,具有标准正弦信号发生函数、任意非正弦信号发生函数以及非正弦信号发生函数; 主程序模块(14),在每一个周期振动完成后自动配置参数。包含读取参数程序;波形发生器模块;显示程序;配置定时器程序;振动位移采集程序;通讯数据封装模块; 初始化模块(15),可以初始化显示屏的显示项目包括:振动装置的工作状态是否正常、警告信息的提示、当前输出的数值等、波形参数显示用于提示当前产生波形的种类、波形特征参数、当前波形参数的设置方式、波形的离散化参数,能初始化I/O资源与振动控制装置的外设,显示欢迎界面;所述波形特征参数:包括偏斜率、振幅、频率;当前波形参数的设置方式采用本机设定或上位机设定; 振动参数设置模块(16),具有参数标志[a h f],具有通用参数修改程序,具有参数修改程序,可以实时修改波形参数,可根据修改的幅度自动设置修改任意波形参数的修改方式为一次修改或多次修改;任意波形参数:包括偏斜率a,振幅h,以及振动频率f ; 通讯数据封装模块(18),可以将传感器信号,控制信号,控制参数,波形参数封装成数据包,传感器信号:包括拉速、阀芯位移、压力、振动位移; 控制算法模块(12)对两路伺服阀实现互相独立的控制运算。
7.根据权利要求3所述一种基于CAN总线的结晶器振动控制装置,其特征在于:主程序模块(14)通过调用初始化模块(15)完成控制器的初始化功能;主程序模块(14)通过参数读取程序实现对于控制器参数的设置,通过震动参数修改模块(16)实现波形参数的设置与修改;主程序模块(14)通过定时器配置模块(17)实现波形输出频率的设置;主程序模块(14)在读取第一个波形曲线的点之后,开始一个定值控制的过程,定值控制的过程为:主程序模块(14)首先采集振动位移,之后进行一次运算,然后输出一个控制信号,最后判断定时器时间是否达到,如果没有达到,则重复此过程一次,如果定时器时间已经达到,则结束此过程,所述的振动位移采集通过主程序模块(14)调用内部SSI信号采集模块(11)控制SSI高速同步采集模块(3)实现,输出控制信号通过主程序模块(14)调用内部控制信号输出模块(19)完成;主程序模块(14)采集拉速信号、两路阀芯位置、两路液压腔压力,通过调用内部模拟信号采集模块(10)实现对拉速信号、两路阀芯位置、两路液压腔压力信号的采集;主程序模块(14)对数据进行 打包并且上传,主程序模块(14)通过调用通讯数据封装模块(18)实现数据的打包,主程序模块(14)通过总线通讯模块(22)由CAN总线接口模块(5)实现与CAN总线相连实现与上位机之间的通讯;主程序模块(14)完成控制参数的本地显示,主程序模块(14)调用参数显示程序模块(23)通过触摸屏驱动模块(21)控制触摸屏模块(6)实现控制装置参数的本地显示;主程序模块(14)能判断一个周期的控制是否完成,如果一个控制周期完成,则重新读取参数,如果没有完成,则读取当前振动曲线中的下一个离散化的点,开始另外一次定值控制,所述一个控制周期是指:根据当前波形参数所设置的一个正弦或非正弦周期中所有的点都已全部读取。
8.根据权利要求7所述一种基于CAN总线的结晶器振动控制装置,其特征在于:程序流程如下: 1)初始化; 2)读取来自本机设置或者上位机下发的控制参数; 3)按照参数读取的结果设置波形参数; 4)产生振动波形; 5)设置显示屏; 6)按照波形的频率设置定时器; 7)读取波形数据中的第一个点; 8)采集振动位移; 9)进行一次运算; 10)输出一个控制信号;11)判断定时器时间是否达到,如果没有达到则返回8)重新采集数据,运算输出,如果时间到了,则结束这个循环; 在每一个定值控制周期中,只要定时器设定是时间不到,就不断对振动位移信号进行采样及控制,使控制系统的输出与给定值匹配。 12)在一个控制循环结束之后读取计数器的数值,判断一个曲线周期的控制是否完成,如果完成,则重新开始读取参数,如果没有完成则读取下一个波形的点开始下一个周期的定制控制。
9.根据权利要求3所述一种基于CAN总线的结晶器振动控制装置,其特征在于:振动参数设置模块(16),具有参数标志[a h f],具有通用参数修改程序,具有参数修改程序,可以实时修改波形参数,可根据修改的幅度自动设置修改任意波形参数的修改方式为一次修改或多次修改;波形参数:包括偏斜率a,振幅h,以及振动频率f ;振动参数设置模块(16)可以读取当前参数,并读取当前设定的参数值;振动参数设置模块(16)比较当前振幅与振幅的设定值,如果数值不相等,则设置参数标志为[a h f] = [010],调用通用参数修改程序,完成调用之后,重置[a h f] = [000],如果数值相等,则比较下一个波形参数,振动参数设置模块(16)比较当前偏斜率与偏斜率的设定值,如果数值不相等,则设置参数标志为[ahf] = [100],调用通用参数修改程序,完成调用之后,重置[a h f] = [000],如果数值相等,则比较下一个波形参数,振动参数设置模块(16)比较当前频率与频率的设定值,如果数值不相等,则设置参数标志为[a h f] = [001],调用通用参数修改程序,完成调用之后,重置[ah f] = [000],如果数值相等,则比较下一个波形参数。
10.根据权利要求9所述一种基于CAN总线的结晶器振动控制装置,其特征在于:振动参数设置模块(16),其流程如下: O读取由参数读取程序取回的波形参数值; 2)读取当前正在使用波形的参数; 3)比较两组参数中的振幅是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,比较下一个参数; 4)比较两组参数中的偏斜率是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,比较下一个参数; 5)比较两组参数中的频率是否相等,如果相等则比较下一个参数,如果不相等,则修改参数标志向量,调用通用参数修改程序修改参数的数值,之后清空标志向量,跳出该程序,结束设置过程。
11.根据权利要求9所述一种基于CAN总线的结晶器振动控制装置,其特征在于:通用参数修改程序根据参数标志[a h f],对操作变量X、X(l、1、N、X实现赋值,根据i是否小于N判断否正处于参数修改的过渡过程中:如果i〈N,则参数的修改处于过渡过程,进行一步修改,否则处于最后一次,或者不在此过程中;进一步,判断i是否等于N确定是否处于最后一次修改的过程中,如果i=N,则处于最后一步,完成最后一步修改,否则,不在修改的过渡过程中;进一步,判断X与Xtl的差距,若判断为过大,则开始计算修改总次数N、修改次数1、步进值X,接着进行第一步修改,否则,直接修改当前参数Xtl ;通用参数修改程序通过调用参修改程序完成参数的最终修改。
12.根据权利要求11所述一种基于CAN总线的结晶器振动控制装置,其特征在于:通用参数修改程序流程如下: 1)读取参数标志,确定需要修改的参数,并对变量X(设定值)、xO (初始值),赋值如果标志向量为[a h f] = [001],则 x=f, x0=f0 ; [a h f] = [010],则 x=h, x0=h0 ; [a h f] = [100],则x=a,Χ(ι=%。根据参数向量设置不同的最大变化范围(Λ X)为Λ F、Λ H、Λ Α,相应的修改步长值(X)为:F、H、A,并且设定修改的次数的参量i为if、ih、ia并设置次数参量N为Nf、Nh、Na; 2)比较当前i与N的大小,若i〈N,则说明目前参数正在步进修改的过程中,则i加1,Xtl增加一步的数值,即:Χ(ι=Χο+Χ。若i不小于N则表明参数修改的状态处于步进修改最后一步或者还未进行参数修改范围的判断,进行下一步比较; 3)比较i与N是否相等,如果相等,则目前正处于步进修改的最后一步,设定值X与当前值Xtl之间的差距已经小于设定的范围,则i加1,直接将设定值赋值给当前值,如果不相等,则参数的变化范围尚未判断,则进入下一步判断参数的变化范围; 4)如果参数的变化范围大于或者等于对应的最大范围ΔΧ,直接改变参数会造成对系统的冲击,则分阶段改变,接着确定完成更改所需要周期数N,更改X的符号以确定修改的方向,重置i的数值为1,增加Xtl之后调用参数修改程序进行设置第一步的参数,如果参数变化的范围小于ΛΧ,则可以直接改变。
13.根据权利要求9所述一种基于CAN总线的结晶器振动控制装置,其特征在于:参数修改程序通过读取标志位完成波形参数的赋值,并且将通用参数修改程序的操作变量1、N、X导出。
14.根据权利要求13所述一种基于CAN总线的结晶器振动控制装置,其特征在于:参数修改程序,其流程如下: 1)读取参数标志向量; 2)根据参数标志向量对相应的波形参数完成赋值; 3)导出通用参数修改程序的变量,保存工作过程。
【文档编号】B22D11/053GK103736951SQ201310731091
【公开日】2014年4月23日 申请日期:2013年12月26日 优先权日:2013年12月26日
【发明者】李文涛, 高彤, 肖俊生, 左鸿飞 申请人:内蒙古科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1