番禺桥检车出租,桥检车出租,番禺桥检车出租公司 基于μC/OS-Ⅱ的直列泵ECU的中断软件设计
番禺桥检车出租,桥检车出租,番禺桥检车出租公司  基于μC/OS-Ⅱ的直列泵ECU的中断软件设计

产品详情



   番禺桥检车出租,桥检车出租,番禺桥检车出租公司  基于μC/OS-Ⅱ的直列泵ECU的中断软件设计  1 转速信号采集模块中断软件设计: 本文中 MC9S12DP256B 微控制器使用 16MHz 外部晶振,总线时钟频率配置为 8MHz,为提高测量精度,在转速信号采集模块中,定时器模块的工作时钟不对总线时钟进行分频处理,即定时器的计数频率也为 8MHz,采用对上升沿进行捕捉的方式,允许输入捕捉中断和定时器溢出中断。 本文中外部脉冲信号由输入捕捉通道 IOC0 引脚输入,当定时器捕捉到上升沿时,计数寄存器 TCNT 当前的值会自动锁存到通道寄存器 TC0 中,同时产生一个中断请求进入输入捕捉中断处理程序。在输入捕捉中断处理程序中,读取 TC0 的值赋给变量,在此引入变量记录前一次捕捉时刻 TC0 的值,在不考虑溢出的情况下,两个相邻上升时间间隔即为当前捕捉时刻计数器值与前次捕捉时刻计数器值之差。但是发动机是一个持续工作的状态,在两次输入捕捉中断之间定时器是有可能发生溢出的,这时直接将两数相减就没有意义了,所以本文引入了定时器溢出中断处理程序,考虑了定时器的溢出次数。在定时器溢出中断子程序中用变量记录两个上升沿之间定时器的溢出次数,则可得到两个相邻上升沿之间定时器标准时钟的周期个数,再由定时器时钟频率和飞轮齿数即可算出当前转速。 值得注意的是,在实际测量中,因为在中断程序响应的小段时间内计数器继续增加有可能造成溢出,使得溢出计数加1,而通道寄存器TC0的值在这段时间是不变的,根据它和溢出计数进行转速计算就会算错。因此在进入输入捕捉中断后还需要读取计数寄存器TCNT的值,判断中断程序响应期间定时器是否发生过溢出,由此确定两个上升沿之间定时器的溢出次数来计算转速。


    番禺桥检车出租,桥检车出租,番禺桥检车出租公司



   2.软件抗干扰措施由于柴油机工作环境比较恶劣,现场干扰信号的频谱很宽,且具有随机性,采用硬件抗干扰措施只能抑制某个频率段的干扰,仍会有一些干扰侵入系统。因此,除了硬件采用相关抗干扰方法外,还要采用软件抗干扰措施。本文采用的软件抗干扰手段主要有以下几种: 



  (1)采用数字滤波方法。本系统在 A/D 转换、转速计算、PID 脉宽计算中采用了算术平均滤波、移动平均滤波和一阶滞后滤波等滤波方法。 在转速的测量中,由于转速本身的波动、随机干扰的存在,除了在硬件电路中对传感器输入的信号进行硬件滤波外,在软件部分还可进行数字滤波。本文采用的是算术平均值滤波和一阶惯性滤波的方法来抑制干扰。一阶惯性滤波算法对周期性干扰具有良好的抑制作用,适用于对波动频率较高的参数进行滤波。其不足之处是会使相位滞后,灵敏度降低。 移动平均滤波先在微控制器的缓冲区中存入 n 个数据,然后每进一个采样值,就将最早测量的数据去掉,对剩下的 n 个数据再取算术平均值。这样,每测量一个采样值,就去掉一个数据,使得每次获得的平均值都是新数据,从而提高了数据处理的速度,减少了对微控制器时间的占用。

 
  (2)开关量输入输出软件抗干扰。输入信号的干扰是叠加在有效电平信号上的一系列离散尖脉冲,作用时间很短,当硬件不能对其加以有效抑制时,可以采用软件重复检测的方法,即每隔 3ms 采集一次开关量,把本次采集的值压入某个字节的最低位,当发现该字节每位的值都相同时,认为是有效的输入。对开关量的输出主要是采取重复输出的方法,重复的周期尽可能短。这样,当输出端口受到某种干扰而输出错误信号后,外部执行设备还来不及作出有效反应而正确的信息又输出了,就可以及时地防止错误动作的发生。 


    番禺桥检车出租,桥检车出租,番禺桥检车出租公司