如果只有一个光电信号,这个计算是比较粗糙的。大致如下;
初始化:对放料轴光电信号进行计数。是分配普通输入点用来计数还是高速输入点。这个要看你的这个光电信号产生的脉宽和实际卷轴速度来定。
用:轴的光电信号作为起始触发条件。每100MS进行一次运算。也就是线速度乘以100MS。得到这100MS内拉出多少长度的纸。并做累加,直到下一个光电信号的到来,才清除寄存器,做下一轮运算。
当:轴的运转光电信号计数等于2的时候。也就是轴刚好转完1整圈的时候。你把上面N多个100MS长度做的累加值拿出来就是你一圈纸的周长。
########################
你已经有周长了,还搞不定卷径?!
~~~~~~~~~~~~~~~~~~~~~~~~~~~
不过这个卷径是刚刚放出去纸的卷径。(前一卷径)不是你现在的卷径。
你现在的卷径还需要再减掉一个纸厚度才是你现在的真正卷径!
当然,如果纸头厚度相比于卷径非常小。也可以直接认为前一卷径和现在卷径相同。
###############################
最后:常规业内都是用1K编码器作为脉冲信号输出。很少用一个光电信号的做法。
希望能帮到你。