此增强功能已经包含在2006年发布(R2006a)。之前的产品发布,读下面的任何可能的解决方法:
编码器董事会有一个固定大小的计数器寄存器的16位,24位或32位。无论大小,寄存器总是最终溢出和卷。这可以发生在积极或消极的方向。
一些董事会提供硬件机制占溢出或滚动。作为一项最佳实践,应该设计模型总是处理溢出或滚动。最初的计算对于某些应用程序可以处理这个问题。
处理注册滚动,您可以使用标准的仿真软件模块设计以下计数器算法类型:金宝app
翻转计数器计算滚动的数量
扩展计数器——提供了一个扩展计数器不限制寄存器的大小
附加的文件包含示例翻转计数器和扩展计数器模块(处理正方向翻转)。
你可以使用这些块模型或修改您的模型。连接编码器的输出块,这些块。
这些计数器执行以下:
- 翻转计数器计数的次数一个编码器的输出块滚了。它有正方向滚动和负方向滚动。
查看这个翻转计数器中使用的算法实现,右键单击“展期计数器”子系统和选择看面具下的选项。
- 延长计数器需要编码器的输出块提供了一个计数,并不是限制寄存器的大小。对于一个n位寄存器,这柜台应该能够计算值大于2 ^ (n - 1)。
笔记使用计数器样本块
- 在仿真软件无缝操作,柜台提供正确的信息块。金宝app
- 确定发生翻转时,模型比较连续两个编码器输出和寻找一个大跳。一个大跳指示寄存器溢出。
你选择的阈值定义了一个大跳。阈值越小,越有可能连续模型的误解在编码器计数翻转。阈值越大,越有可能模型不会检测翻转。在理想的情况下,选择一个数字,一半是寄存器的大小(例如,2 ^ (n - 1)),其中n是位寄存器的大小。
- 一些驱动程序块允许最初的起始值加载到寄存器中。您必须将该值传递给翻转块调整抵消。
- 翻转块每个翻转代表需要知道有多少数量。一般来说,这个数字是2 ^ n,其中n是位寄存器的大小。