首页 理论教育 AMT控制技术:高频脉冲信号对MCU时钟频率和测量精度的影响

AMT控制技术:高频脉冲信号对MCU时钟频率和测量精度的影响

更新时间:2025-01-17 工作计划 版权反馈
【摘要】:在高频输入的情况下,这些脉冲造成的中断频率会高于主程序运行中断的频率,也就是说在一个主程序计算循环中,可能出现一个信号产生多次中断。当输入信号的频率很高时,需要考虑的问题是MCU的时钟频率高低和测量精度的关系。输入信号的最高允许频率为MCU内实际时钟计数器的时钟脉冲频率,最低输入信号的脉冲周期最长不应该超过时钟计数器所能计数的时间。

现代车辆中使用了不少调频信号,还有一些用固定频率但调节占空比大小的PWM信号,它们都以一系列脉冲串的形式输出。这些输入信号都可以采用脉冲的上升沿或/和下降沿来触发硬件捕获中断。这里的“中断”是指MCU里中断主程序的运行而处理突发事件的一种行为。在捕获中断后,中断处理程序会使用该中断发生的时间和上一次中断所发生的时间来计算脉冲的周期或脉冲的占空比。这些计算出的值将被存储起来供信息中心调用进行滤波,或转变成相应物理量(如转速)供应用程序使用。

在高频输入的情况下,这些脉冲造成的中断频率会高于主程序运行中断的频率,也就是说在一个主程序计算循环中,可能出现一个信号产生多次中断。这样,前面由中断得到的计算结果可能会被后面的中断所得到的计算结果所取代。不过这是允许的,CPU得到的总是最新的值。当输入信号的频率很高时,需要考虑的问题是MCU的时钟频率高低和测量精度的关系。当输入信号的频率大于MCU的时钟频率时就无法测量,即使输入信号频率低于时钟频率但接近时钟频率,计算精度也会大打折扣。另一方面,当输入信号的频率很低时,可能在主程序运行很多次后仍见不到信号变化(无捕获中断)。这除了计数器有溢出的可能外,还在新脉冲出现前不能更新信号变量,而使信号变量一直保持原有数值。所以时钟脉冲频率的选择要考虑到高速时脉冲的测量精度和低速时计数器溢出等问题。输入信号的最高允许频率为MCU内实际时钟计数器的时钟脉冲频率,最低输入信号的脉冲周期最长不应该超过时钟计数器所能计数的时间。

常用的转速传感器有两种:VR和霍尔转速传感器。这两种传感器都和一个带齿的信号轮配合来测量转速。轮子旋转时,位置固定的传感器和旋转的信号轮之间的表面距离会发生变化,这种距离的变化会使经过传感器的磁通量发生变化,传感器的输出电压就反映了这个磁通的变化。VR传感器的输出信号是正弦波信号,幅度和频率都和转速成正比关系,所以TCU必须对这种信号先整形成方波后才能使用。开关型霍尔传感器输出的是0~5V的方波。从两脉冲之间的时间(周期)可计算出转速、加速度。AMT系统中常见的脉冲串信号有如下几种。

(1)发动机转速信号

发动机控制器使用的转速信号通常来自发动机曲轴上的36-1或60-2信号轮相配的转速传感器。36-1是指在有36个齿的信号齿轮上故意去掉一个齿作为绝对位置的记号。60-2是60个齿里连续去掉2个齿。传感器遇到一个齿就发出一个脉冲。由于这个信号轮有缺齿,所以脉冲信号不连续,它的信号不能直接简单地使用。通常ECU会发出修改后的脉冲串用于仪表,TCU借用此仪表信号则比较简单方便。通常发动机每旋转一圈发出x 个0~5V或电源电压的方波。这在标定时可以根据每圈发出脉冲的个数这一实际情况来设定脉冲数和转速(r/min)的关系,以满足不同系统的实际情况。

TCU对每一圈发出的脉冲个数范围有一定的要求。脉冲数越多,越能及时探测到较低的发动机转速。如发动机转速为600r/min时,每秒钟旋转10圈,每圈的周期是100ms。如果每圈只有一个脉冲,那么每100ms才能收到一个脉冲,也就是100ms才能有效地更新一次转速。如果每圈有2个脉冲,那么每50ms就能更新一次转速。如果每圈有10个脉冲,则每10ms就可以得到一个更新的转速数据。但是探测300r/min的转速时,更新时间就变为20ms。如果能进行准确的插值运算,则数据的更新速度可以大为提高。但如果每一圈发出的脉冲太多,中断函数工作量就会增大,因为在发动机高速旋转时,控制器要处理的中断就很多。在脉冲太多的情况下,常采用减频处理,即跳过一个或几个中断后才进行一次完整的中断处理。

能及时准确地探测到发动机的低转速很重要,这对防止发动机熄火很关键,也对低速换档自动起步、坡道起步、蠕动等的控制很有帮助。

(2)变速器输入轴转速信号

这是变速器输入轴转速传感器输出的信号。变速器的输入轴通常接发动机的输出轴或电动车主驱动电动机的输出轴。为了方便起见,除了特殊说明外,下文中提到变速器输入轴时就简称为输入轴。输入轴每旋转一圈,输入轴转速传感器会发出x个0~5V或接近电源电压的方波信号。每转一圈所产生的方波个数x取决于信号轮上齿的个数,这可在标定时设定,以满足不同系统的要求。

如果离合器已接合,则输入轴转速和发动机转速应该一致。如果已挂好档,则输入轴的转速和输出轴的转速应该成固定关系,即该档位的速比。

传统MT上一般没有输入轴转速传感器。

(3)变速器输出轴转速信号

这是变速器输出轴转速传感器输出的信号。变速器的输出轴通常接差动箱或差动齿轮组。为了方便起见,除了特殊说明外,下文中提到变速器输出轴时就简称为输出轴,请别和发动机或电动机的输出轴混淆了。和输入轴转速信号类似,输出轴每旋转一圈,传感器会发出x个0~5V或接近电源电压的方波信号。由于输出轴和汽车的驱动车轮相连,在车轮不打滑时输出轴转速和车速就有一个固定的关系。每转一圈所发出方波的个数取决于相配的信号轮上齿的个数,这在标定时根据具体齿数设定以满足不同系统的要求。在低档情况下,输出轴的转速远低于输入轴的转速。由于在低速时输出轴的转速很低,所以,输出轴每转一圈所发出的脉冲数不能太少,应能满足测量1.5km/h的车速为好,否则不能准确判断停车状态和蠕动速度。在高档情况下,输出轴的转速可能高于输入轴的转速,所以输出轴的转速变化范围大,对这个信号的要求也就会高于输入轴转速传感器。

原手动档车的车速仪表信息来源于手动变速器输出轴传感器的信号。这个信号通常精度较低。

挂好档后,且离合器已接合,则可以从发动机转速信号和现有变速器档位直接计算出车速:

978-7-111-54221-6-Chapter02-3.jpg

正如前面所说,在挂好档和离合器接合时,发动机转速、输入轴转速、输出轴转速这三者有着固定的关系,因此可用三者之间的相关性来进行故障诊断和相互代用。但是在未挂好档或没有完全接合离合器时,这种关系就不一定存在。

在一个系统中,测量转速时,信号轮每转一圈产生的脉冲数可由信号轮的齿数确定,也可通过试验方法测定。试验测定的方法:在汽车直接档(传动比为1∶1)运行的条件下,挂好档,离合器接合,用示波器或数据记录仪记录传感器的输出信号。

图2-2为一个实测的示波器信号记录。通道1是发动机飞轮信号(60-2),两个缺齿信号之间就是发动机轴旋转了一圈。通道2是ECU送往仪表板的发动机转速信号(2脉冲/圈)。通道3是输入轴转速信号(9.5脉冲/圈)。通道4是输出轴转速信号(18脉冲/圈)。

及时准确地探测最低车速很重要,它对平路/坡道起步和蠕动控制来说很关键。如果输出轴的脉冲数不够多,那么在低档时挂上档后,可从输入轴转速信号导出输出轴转速。

978-7-111-54221-6-Chapter02-4.jpg

图2-2 转速信号关系

(4)执行机构驱动电动机转速信号

前面说到AMT执行机构的位移可以由位置传感器或转角传感器来检测,也可以用脉冲信号来表示。有些电动机本身带有脉冲发生器,输出和转速成正比的频率脉冲。对脉冲进行计数就可以测量位移。和模拟量位移信号不同的是,这种脉冲位移信号只能指示相对位置,而不能指示“绝对位置”。“绝对位置”的获取依赖于准确寻找一个已知的参考点,如位置两端的死点。

(5)转速信号的清零问题

如果不采用插值法,所有脉冲转速信号都要在脉冲到来时才能更新转速,更新的值为相邻两次脉冲间隔时间的函数。但当速度为零时,因为没有脉冲输出,所以按通常的方法也就不能更新转速变量,那么该变量就会保持到零速前的转速值而永远不归零。

解决的办法是采用插值法,或当等待时间到达某一值时,自动清零。或者,当转速低于某一个值时就设置该转速为零,以免长时间转速信号得不到更新,这个所设置的转速值即被称为置零点。如果置零点设置得太高,则会影响精度。比如发动机转速置零点标得太高,则转速清零太早。如断电接合离合器时会由于发动机转速实际不为零而使车子往前冲;如果转速清零晚一点,则等待置零时间长,在这等待时间里,发动机转速值不变化。

对变速器输出轴置零点标定得太高也会影响汽车静止状态的准确判断,影响汽车起步、上坡起步等的控制。

如果变速器输入轴置零点标定得太高,那么在静止挂档时可能会打齿。因为输入轴转速值被置为零但实际不是零,而输出轴实际为零,所以当输入轴转速过早清零则会过早判定为已同步而造成挂档打齿。

以等待时间为参考量来估计低转速值为好。如5ms没有脉冲中断,那么脉冲周期至少是5ms,可设置转速为5ms周期对应的转速值,如10ms没有脉冲中断,那么脉冲周期至少是10ms,因此可更改转速为10ms周期对应的转速值。这种方法的缺点是设置转速值永远高于实际值。对于一个计算周期为5ms的系统,其中庸的方法是,如果5ms没有发生脉冲中断,则脉冲周期设置为7.5ms;如果10ms没有脉冲中断,则可设置周期为12.5ms。

(6)PWM占空比脉冲串信号

有些传感器的输出信号是以经过脉宽调制的PWM脉冲串信号形式发出的,被测量的物理量和所发出的PWM信号的占空比成一固定关系。如果所用MCU不能直接检测PWM占空比,则对这种信号必须采用上升沿和下降沿都触发中断来进行占空比计算。

(7)车轮信号(www.xing528.com)

要在任何时候都能取得真正的车速信号不是那么容易,所以这里要多讲几句。对于配备有ABS或车身稳定控制(VSC)系统的车辆,应该可以从CAN总线上读取4个车轮的转速信号。但是在同一个车速下,4个车轮转速信号可能是有区别的。

①左、右轮的转速值不一定相等,比如转弯时不同,主动轮打滑时不同,胎压不同时各车轮转速也不同。

②主动轮的轮速信号不能代表车速信号,因为主动轮在一些情况下会打滑空转,此时的实际车速会低于从主动轮速信号上导出的车速。

③在转毂上运行时,从动车轮通常不运转。

车辆拐弯时左车轮和右车轮的转速有差别。如果车轮没有打滑,则可通过这两者之差判别转弯角度的大小。另外,根据主动车轮有可能打滑而从动车轮打滑的可能性很小的事实,可知前驱车辆的两个后车轮的信号能比较真实地反映车速,所以通过主动车轮和从动车轮之间的速差可判别轮胎是否打滑。在AMT系统车速信号的应用中应注意以下几个地方:

①在AMT系统中,车速信号可能会应用到如下几个方面:

•起步(档位已接合)。

•动态检测路面坡度,决定换档模式和换档点(档位已接合)。

•车速计算用于正常换档点(档位已接合)。

•换档时同步(档位未接合)。

•车辆静止判别(不清楚档位是否接合)。

•加速度计算(坡度探测等,不清楚档位是否接合)。

②车速信号来源。前面说到,车速信号可通过CAN总线发来的ABS轮速信号、变速器输出轴转速信号(低速时无信号)、由输入轴转速信号导出的输出轴转速信号(挂好档后)、由发动机转速信号导出的输出轴转速信号(挂好档和离合器接合后)得到。

③提高变速器上输出轴转速信号是较佳选择,可消除对CAN总线的依赖,但增加了成本。可从以下几个方面改善变速器上输出轴转速信号:

a)增加信号轮的齿数可以降低能检测到的最低转速,但是相对噪声会增加。少齿相当于有计算平均值的滤波器。这个可用一个简单的例子来描述:如果一个信号轮有20个齿,那么齿轮每旋转一圈,传感器就会发出20个信号脉冲。从每两个相邻脉冲发出时间的间隔就可以计算出在这一个1/20圈的瞬间里齿轮旋转的速度。如果对每两个相邻的1/20圈的瞬间速度求平均值,那么得到的是在这1/10圈里的平均速度,这是一种滤波方式。如果一个信号轮只有10个齿,那么齿轮每旋转一圈,传感器就会发出10个脉冲。从每两个脉冲发出时间的间隔也就可以计算出在这1/10圈的瞬间齿轮旋转的速度。这和前面20个齿但求平均值滤波的效果是相类似的,所以也是相当于滤了波,但是这个信号的更新时间相对长了。

b)使用脉冲信号的上升沿和下降沿进行中断可提高转速分辨率1倍,但是因为高电平和低电平一般不是各占50%,而且和传感器的间隙有关,所以滤波比较麻烦。

c)为了消除每一圈的齿间误差带来的信号噪声,背景滤波是很有用的。将实时信号减去背景周期性噪声就是真正信号。背景周期性噪声的获得是在恒速下得到的一圈内的实时转速曲线。由于加工的误差,齿间的间隙可能不一致,那么尽管齿轮的旋转是恒速的,但传感器遇到齿的间隔不一样。对于宽间隙的齿,相遇的间隔时间就比窄间隙齿的时间要长,得到的瞬间速度就不一样。每转一圈这个转速快慢变化就重复一次。这就是背景噪声。要想从信号中把这个背景噪声滤掉,只要将这个噪声从信号中减去就可以了。

④为了提高冗余,可采用如下故障处理和信号切换方法:

a)在换档模式处于摘档完成前和挂档完成后(档位是接合的),并且输入轴转速传感器没有故障的情况下,输入轴转速和输出轴转速有固定关系,为

最终输出轴转速=输入轴转速/速比(不依赖CAN总线,很独立)

b)在换档模式处于摘档完成后和挂档完成前,如CAN总线有问题,但输出轴转速信号无故障,则有

最终输出轴转速=输出轴转速信号

c)在所有非换档期间输入轴、输出轴转速传感器有故障但CAN总线无故障的情况下,有

最终输出轴转速=发动机转速/速比(依赖于CAN总线发出的发动机转速)

d)在所有非换档期间CAN总线有故障的情况下,有

最终输出轴转速=输入轴转速/速比或输出轴转速(不依赖于CAN总线)

e)在换档同步期间,CAN总线有问题,输出轴转速信号故障,则进入故障模式,系统采用开环同步控制。因为此时既不能依赖外部信号,也不能依赖自身的信号进行闭环控制,只能采用开环控制。控制的效果会比较差。

将其归纳起来,见表2-2。

表2-2 故障处理和信号切换方法

978-7-111-54221-6-Chapter02-5.jpg

从一个信号切换到另一个信号的瞬间,输出信号可能会有跳变,这个跳变对加速度的计算影响很大。一定要采用渐变方式剔除切换瞬间的跳变量。CAN故障包括从CAN发来的信号本身故障,所以要检查CAN信号的合法性。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈