一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于FPGA的多路位置比较输出装置的制作方法

2021-09-10 18:36:00 来源:中国专利 TAG:多路 装置 输出 位置 测控

一种基于fpga的多路位置比较输出装置
技术领域
1.本发明涉及测控技术领域,尤其涉及一种基于fpga的多路位置比较输出装置。


背景技术:

2.随着视觉识别技术的高速发展,生产流水线开始使用高速摄像头对产品形状特征或铭牌信息等进行质量点检,实现每个产品应检尽检。为了避免检测的随机性,对同一个产品会采取多个摄像头在不同位置进行拍摄采样对比的方式。通常采用以下实施方式,以光纤传感器作为起始信号,当产品通过光纤传感器时锁存并记录产品位置,在随后的运动中,周期依次检查产品是否到了任意一个拍照位,是则输出对应的控制脉冲触发摄像头拍照(图12)。因此,生产现场对高速的多路位置比较并产生控制脉冲输出的功能提出要求。但是,当前市场上可以完成位置比较功能的产品都要依托于运动控制卡,存在成本较高的问题,并且运动控制卡往往只提供单路的位置比较,无法满足当前多路比较的需求。


技术实现要素:

3.本发明的目的就在于为了解决上述问题而提供一种基于fpga的多路位置比较输出装置。
4.本发明通过以下技术方案来实现上述目的:
5.本发明由按键操作面板、led显示面板、通用arm控制器以及通用fpga器件组成,所述通用fpga器件上设置有光纤传感器脉冲输入接口、多路控制脉冲输出接口和增量式编码器接口,所述通用fpga器件通过fsmc并行总线接口与所述通用arm控制器连接,所述通用fpga器件的控制输入端与所述按键操作面板连接,所述通用fpga器件的显示信号输出端与所述led面板连接。
6.所述的光纤传感器脉冲输入接口包含光耦隔离器件,实现位置比较装置电路与外部电路的隔离,通过共地操作可实现不同电平外部脉冲的输入。
7.所述的多路控制脉冲输出接口包含光耦隔离器件,通过共地操作可实现不同电平控制脉冲的输出。
8.所述的按键操作面板和led显示面板共同组成位置比较装置的参数设置面板接口,通过数据接口和控制接口与fpga连接,由fpga锁存原始参数数据。
9.所述的通用arm控制器通过fsmc并行总线接口与fpga相连,接收并处理fpga锁存的面板接口设置参数,然后传递到fpga中。
10.所述通用fpga器件内包括参数接口模块、位置接收模块、产品初始位置队列模块、全局滴答计数模块、多路并行位置比较模块以及脉冲调整模块。
11.参数接口模块:接收参数设置面板的原始参数数据,向arm发送原始参数数据,存储通用arm控制器下发的设置参数值,实现参数的实时更新和调用;
12.位置接收模块:接收并处理编码器接口输入的abz差分信号,实现编码器脉冲的实时计数,输出当前位置值与溢出标志;
13.产品初始位置队列模块:以光纤脉冲作为触发信号,获取当前产品的位置脉冲计数,并以此作为产品的初始位置,同时提供产品位置初始信息的高速有序存储和调用;
14.全局滴答计数模块:以fpga外部晶振的clk上升沿作为时钟滴答,实现一个全局定时器,基于较短周期的定时器,可快速遍历上述队列的位置,实现高速的位置比较;
15.多路并行位置比较模块:利用fpga并行处理的优势,同步进行产品多路位置比较,以及生成原始控制脉冲;
16.脉冲调整模块:接收多路位置比较模块生成的多路原始控制脉冲信号,根据参数设置对原始脉冲的周期、占空比和电平进行调整输出。
17.更进一步地,所述的位置接收模块包含了编码器脉冲计数溢出判断算法:当光纤脉冲触发时,对比当前编码器位置值与上一时刻编码器位置值,如果当前编码器位置值小于上一时刻编码器位置值,则认为发生溢出,对溢出标志取反。
18.更进一步地,所述的产品初始位置队列模块由入队接口、队列存储ram以及出队接口组成,其中队列存储ram可存储位置数量大于光纤传感器位置和最后一个摄像头位置之间的产品数量,从而最先入队的产品位置会被最新的产品位置覆盖,实现一种环型的队列。
19.更进一步地,所述的产品初始位置队列模块采用以下算法实现有序的入队、存储和出队:入队接口以输入脉冲的突变沿作为判断条件,当输入脉冲出现上升沿或下降沿,从所述的位置接收模块获取当前的编码器位置值及溢出标志,并写入ram中,同时ram的地址指针offset加1;出队接口则以所述的全局滴答计数模块输出的定时器中断作为判断条件,当定时器中断信号产生后,从队头到队尾逐一取出队列ram的位置值,每次定时器中断发生执行一次。
20.更进一步地,所述的多路并行位置比较模块由多个单路位置比较计算模块组成,可以根据需要灵活决定位置比较器完成多少路的比较计算。
21.更进一步地,所述的多路并行位置比较中的单路位置比较计算模块包含对编码器计数溢出前后的位置值判断算法:获取位置接收模块当前的溢出标志,与位置队列模块中的每一个位置对应的溢出标志做对比,如果标志值不一致,说明当前位置值是溢出后的计数值,而队列位置值是溢出前的计数值。
22.本发明的有益效果在于:
23.本发明是一种基于fpga的多路位置比较输出装置,与现有技术相比,本发明具有以下有益效果:
24.1、采用按键面板和led面板实现位置比较装置参数的灵活设置。
25.2、采用环型队列存储产品的初始位置信息,减少了对通用fpga器件的存储资源消耗。
26.3、具备编码器位置计数的溢出判断以及计数溢出前后位置比较判断算法,保证了多路位置比较装置长时间运行的稳定性。
27.4、采用fpga的并行处理特性,可实现产品位置的多路并行比较,从而产生满足需求的脉冲控制信号,保证了对多个摄像头的高速有序控制。
28.5、采用通用的fpga逻辑处理,可以在多种fpga平台上实现,包括价格较低的fpga平台,解决了当前位置比较器成本较高的问题。
附图说明
29.图1是本发明的总体框架图;
30.图2是本发明的光纤传感器脉冲输入接口示意图;
31.图3是本发明的多路控制脉冲输出接口示意图;
32.图4是本发明包含的通用fpga器件内部逻辑模块架构图;
33.图5是本发明包含的位置接口编码器计数溢出判断算法流程图;
34.图6是本发明包含的产品初始位置队列模块组成结构图;
35.图7是本发明包含的产品初始位置队列入队接口算法流程图;
36.图8是本发明包含的产品初始位置队列出队接口算法流程图;
37.图9是本发明包含的全局滴答计数模块的定时器时序图;
38.图10是本发明包含的多路并行位置比较模块框架图;
39.图11是本发明包含的单路位置比较算法流程图;
40.图12是本发明具体实施方式的一种应用场景示意图。
具体实施方式
41.下面结合附图对本发明作进一步说明:
42.如附图1所示,本发明由按键操作面板、led显示面板、通用arm控制器以及通用fpga器件组成,所述通用fpga器件上设置有光纤传感器脉冲输入接口、多路控制脉冲输出接口和增量式编码器接口,所述通用fpga器件通过fsmc并行总线接口与所述通用arm控制器连接,所述通用fpga器件的控制输入端与所述按键操作面板连接,所述通用fpga器件的显示信号输出端与所述led面板连接。
43.如附图2所示,光纤传感器脉冲输入接口包含光耦隔离器件,实现位置比较装置电路与外部电路的隔离,通过共地操作可实现不同电平外部脉冲的输入。
44.如附图3所示,所述的多路控制脉冲输出接口包含光耦隔离器件,通过共地操作可实现不同电平控制脉冲的输出。
45.按键操作面板和led显示面板共同组成位置比较装置的参数设置面板接口,通过数据接口和控制接口与fpga连接,由fpga锁存原始参数数据。
46.通用arm控制器通过fsmc并行总线接口与fpga相连,将面板接口设置的参数传递到fpga中。
47.如附图4所示,通用fpga器件包含以下的内部逻辑模块:
48.1)参数接口模块,接收参数设置面板的原始参数数据,向arm发送原始参数数据,存储通用arm控制器下发的设置参数值,实现参数的实时更新和调用;参数包括多路位置输入滤波时间、输出脉冲占空比、输出脉冲正反相、多路的相对位置比较值以及位置比较允许误差等。
49.2)位置接收模块,接收并处理编码器接口输入的abz差分信号,实现编码器脉冲的实时计数,输出当前位置值与溢出标志;其中,如附图5所示,溢出标志由编码器脉冲计数溢出判断算法产生:当光纤脉冲触发时,对比当前编码器位置值与上一时刻编码器位置值,如果当前编码器位置值小于上一时刻编码器位置值,则认为发生溢出,对溢出标志取反。
50.3)产品初始位置队列模块,以光纤脉冲作为触发信号,获取当前产品的位置脉冲
计数,并以此作为产品的初始位置。如附图6所示,该模块由入队接口、队列存储ram以及出队接口组成,其中队列存储ram可存储位置数量大于光纤传感器位置和最后一个摄像头位置之间的产品数量,从而最先入队的产品位置会被最新的产品位置覆盖,实现一种环型的队列。同时,采用以下算法实现有序的入队、存储和出队:如附图7所示,入队接口以光纤脉冲的突变沿作为判断条件,当光纤脉冲出现上升沿或下降沿,从所述的位置接收模块获取当前的编码器位置值及溢出标志,并写入ram的offset地址中,同时地址指针offset加1,如果offset到达地址最大值则清零;如附图8所示,出队接口则以所述的全局滴答计数模块输出的定时器中断作为判断条件,当定时器中断信号产生后,从队头到队尾逐一取出队列ram的位置值,每次定时器中断发生执行一次。实现了产品位置初始信息的高速有序存储和调用。
51.4)全局滴答计数模块,以fpga外部晶振的clk上升沿作为时钟滴答,实现一个全局定时器。如附图9所示,本应用实例采用16位寄存器记录时钟的滴答,当时钟滴答计数到达规定数值,计数清零,且意味着一次所有产品的位置比较处理结束,从而保证位置信息的有序比较。并且基于较短周期的定时器,可快速遍历生产线的产品位置,完成高速的位置比较。
52.5)多路并行位置比较模块,如附图10所示,由多个单路位置比较计算模块组成,可以根据需要灵活决定位置比较器完成多少路的比较计算。利用fpga并行处理的优势,同步进行产品多路位置比较。在单路位置比较计算模块中采用编码器计数溢出前后的位置值判断算法:如附图11所示,获取位置接收模块当前的溢出标志,与位置队列模块中的每一个位置对应的溢出标志做对比,如果标志值不一致,说明当前位置值是溢出后的计数值,而队列位置值是溢出前的计数值,采取的补偿方式完成比较计算,反之则直接相减。最后,若该产品到达在允许误差内的任意一个摄像头相对位置,则立刻生成摄像头的原始控制脉冲。从而实现了高速的多路并行位置比较以及脉冲生成处理。
53.6)脉冲调整模块,接收多路位置比较模块生成的多路原始控制脉冲信号,并调用参数存储模块中的输出脉冲占空比参数、输出脉冲正反相参数,对原始脉冲的脉宽、占空比以及电平进行调整,从而满足不同品牌的摄像头控制脉冲形式需求,提升了本发明的泛用性。
54.综上,本发明提供了一种基于fpga的多路位置比较脉冲输出装置,通过fpga的并行处理特性,完成生产线上多个产品的高速多路位置比较,并产生满足需求的脉冲控制信号,实现了对多个摄像头的高速有序控制。同时,本发明采用通用的fpga逻辑处理,因此原则上可以在多种fpga平台上实现,包括价格较低的fpga,解决了当前位置比较器成本较高的问题。
55.以上显示和描述了本发明的基本原理和主要特征及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜