12个光纤传感器,对应12路通道,当有元器件件(直径3mm)经过检测区域时,输入有信号,只是时间极短。12路通道的汇总,进入一个容器,总共满100个元器件的时候,关闭总阀门。 要求严格计数,99个或101个均算失败。
每一路通道不会出现同时掉落两个元器件,时间上有先后,间隔时间100ms以上;
不同路通道(比如通道1和通道2)的元器件掉落时间是有可能重合的;
大家帮我想想这个怎么弄才不会有误差。
我想的方案是:
每一路输入都设置脉冲捕捉输入功能,并且在循环中断(循环中断时间设置5ms)里对12路高速输入上升沿计数
利用12路硬件上升沿中断,每一个中断对应每一路通道,每个通道分别计数; 开一个循环中断(扫描周期要短)不停的把12路通道的计数变量进行加运算,满100,立即关闭阀门。
请大家指教,上述两个控制方案有啥不足之处? 或者再看看有别的好的控制方案吗