一种视觉软件框架系统及控制方法与流程

未命名 08-22 阅读:134 评论:0


1.本发明涉及一种视觉软件框架系统及控制方法。


背景技术:

2.近年来,随着视觉应用的需求不断提升,市面上存在多种视觉开发平台,多种平台之间存在差异,但是现有的视觉软件框架系统无法兼容多种品牌相机,因此即需要一个软件系统满足多种开发平台兼容的需求。


技术实现要素:

3.针对上述问题,本发明提出了一种视觉软件框架系统,兼容了多种品牌相机、兼容多种视觉开发二次开发平台。本软件搭建在window操作系统中,使用各品牌相机时要搭建其品牌相机的驱动。
4.本发明所述的一种视觉软件框架系统,其特征在于:包括视觉软件框架和视觉软件工作流程,视觉软件框架包括相机驱动单元、加载单元、通讯单元、数据存储单元;所述加载单元通过通讯单元与相机驱动单元信号连接,所述数据存储单元通过通讯单元与加载单元、动力锂电池自动分档系统的plc系统信号连接;视觉软件工作流程包括图像处理流程、数据处理流程;
5.相机驱动单元与多个相机信号连接,用于对相机常用的触发模式、网线的传输包功能进行开放调用,并支持相机的断线重连、图像队列缓存以及aoi设置功能;
6.加载单元通过读写文件进行程序的设置,以及相关配置的更新;所述加载单元与相机驱动单元信号连接,当相机应用程序启动时,加载预设的相机控制器;其中所述相机控制器控制相机驱动单元、显示相机结果画面、管理相机与plc系统进行通讯的通讯功能,显示相机、通讯以及信号采集的状态;其中相机与plc系统进行通讯的通讯功能包括相机使用通讯进行软触发;
7.通讯单元基于socket,并支持udp、tcp/ip服务器通讯,用于实现相机控制器(camcontroller控件)与相机驱动单元之间、相机控制器(camcontroller控件)与机器人之间,以及相机控制器与plc系统之间的通讯;
8.所述的数据存储单元可以将图片、通讯日志等信息按照指定的格式进行存储;
9.所述的图像处理流程是一个由视觉库编写而成的多线程,期间所有操作与数据结果都在这个当前线程中,获取图像队列中的图像,并利用图像处理程序对图像进行处理,输出标准的结果;
10.所述的数据处理流程将图像处理流程的结果数据进行分析,判断每个数据的意义,然后将数据进行处理,最后将返回结果进行发送给下一步运行结构(如模组或机器人)。
11.通讯单元与相机驱动单元信号连接,比如通过通讯进行软触发相机拍照。
12.数据存储单元通过加载单元得到的配置文件判断是否保存数据;以及将配置文件中的相机参数通过相机控制器(camcontroller控件)修改相机的设置,如触发模式,爆光亮
度等等。
13.利用本发明所述的一种视觉软件框架系统的控制方法,其特征在于,包括以下步骤:
14.步骤1启动视觉软件框架系统,视觉软件框架系统会自动读取本地的参数文件,加载对应的相机控制器;其中对应的相机控制器定义了对相机驱动单元的操作;
15.步骤2对socket参数、相机参数、项目参数进行设置和初始化,第一次打开时会生成默认的初始化参数,修改保存后,初始化时会加载已有配置;
16.步骤3基于socket的通讯单元运行,等待接受机器人触发;启动相机,相机处于待连接状态;
17.步骤4当电池在拍照位,机器人(模组)发送通讯请求、socket接受机器人触发拍照请求,这时视觉软件框架系统调用相机驱动单元让相机进行拍照;
18.步骤5通讯单元触发拍照后,相机驱动单元将图片传入图像队列中,通讯指令存入命令队列中。通讯指令和图片在队列中的顺序保存一致,确保一条指令对应一张图片,不同的指令对图片的处理方式不同;
19.步骤6通过视觉处理算法获取图像队列中的图片,然后根据指令队列中的指令选择指定的图像检测程序进行处理;
20.处理算法方式:图像标定、模板匹配、软件触发、定位电池、离线测试等;。
21.步骤7获取视觉处理算法的结果,ok、ng及其他数据;
22.步骤8将视觉处理算法的结果反馈给plc系统,同时传输至相机控制器(camcontroller控件)的显示区;
23.步骤9将第8步得结果反馈到显示界面,显示界面将显示电池的检测参数、结果等信息。
24.步骤10对操作结果进行存图,记录操作。
25.步骤11工作结束。
26.本发明的有益效果是:可以兼容多种相机,多种视觉二次开发平台输入输出规范化的视觉软件框架。整个软件系统支持海康、basler、华睿等相机,开发平台支持halcon、opencv、visionmaster算法库,操作简单、系统功能完善的解决方案;系统中的各个部分经过长时间稳定性测试,保证框架的稳定性。
附图说明
27.图1是本发明的视觉软件框架系统的ji控制方法流程。
28.图2是本发明的视觉软件框架系统的单元架构图。
29.图3是本发明的视觉软件框架的各单元连接框图
具体实施方式
30.以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
31.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
32.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
33.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
34.在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接或彼此可通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
35.在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
36.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
37.本发明所述的一种视觉软件框架系统,包括视觉软件框架和视觉软件工作流程,所述视觉软件框架包括相机驱动单元、加载单元、通讯单元以及数据存储单元,所述加载单元通过通讯单元与相机驱动单元信号连接,所述数据存储单元通过通讯单元与加载单元、动力锂电池自动分档系统的plc系统信号连接;所述视觉软件工作流程包括图像处理流程和数据处理流程;
38.所述相机驱动单元与多个相机信号连接,对相机常用的触发模式、网线的传输包功能进行开放调用,并支持相机的断线重连、图像队列缓存以及aoi设置功能;
39.所述加载单元通过读写文件进行程序的设置,以及相关配置的更新;加载单元与相机驱动单元信号连接,用于当相机应用程序启动时,加载预设的配置文件与相机控制器,其中所述相机控制器用于控制相机驱动单元、显示相机结果画面、管理相机与其他设备系统进行通讯的通讯功能,用于显示相机、通讯以及信号采集的状态;
40.所述通讯单元基于socket,并支持udp、tcp/ip服务器通讯,实现相机控制器与相机驱动单元之间、相机控制器与机器人之间,以及相机控制器与plc系统之间的通讯;
41.所述数据存储单元通过通讯单元与动力锂电池自动分档系统的plc系统信号连接,数据存储单元将图片、通讯日志等信息按照指定的格式进行存储;
42.所述图像处理流程是一个由视觉库编写而成的多线程,期间所有操作与数据结果都在这个当前线程中,获取图像队列中的图像,并利用图像处理程序对图像进行处理,输出标准的结果;
43.所述的数据处理流程将图像处理流程的结果数据进行分析,判断每个数据的意义,然后将数据进行处理,最后将返回结果进行发送给下一步运行结构。
44.数据存储单元支持保存通讯数据、处理结果、原图、图像处理效果图,追溯图像处理情况,通过加载单元得到的配置文件判断是否保存数据;以及将配置文件中的相机参数通过相机控制器修改相机的设置。
45.图1是利用本发明所述的一种视觉软件框架系统的控制方法的实现流程,适用于用于运行有视觉软件框架系统的设备,包括但不仅限于动力锂电池自动分档系统中。上述方法流程包括以下步骤:
46.步骤1启动视觉软件框架系统,视觉软件框架系统通过加载单元自动读取本地的参数文件,加载对应的相机控制器(camcontroller控件);其中相机控制器(camcontroller控件)定义了对相机驱动单元的操作。
47.步骤2对socket参数、相机参数、项目参数进行设置和初始化,第一次打开时会生成默认的初始化参数,修改保存后,初始化时会加载已有配置;
48.socket参数:通讯协议、通讯地址、通讯端口等等;
49.相机参数:相机触发模式、相机曝光亮度、相机采集图片格式、相机增益等等。
50.项目参数:是否保存图片、是否保存日志、电池定位参数等等。
51.步骤3基于socket的通讯单元运行,等待接受机器人触发;启动相机,相机处于待连接状态;
52.步骤4当电池在拍照位,机器人(模组)发送通讯请求、socket接受机器人触发拍照请求,这时视觉软件框架系统调用相机驱动单元让相机进行拍照,
53.步骤5通讯单元触发拍照后,相机驱动单元将图片传入图像队列中,通讯指令存入命令队列中。通讯指令和图片在队列中的顺序保存一致,确保一条指令对应一张图片,不同的指令对图片的处理方式不同。
54.步骤6通过视觉处理算法获取图像队列中的图片,然后根据指令队列中的指令选择指定的图像检测程序进行处理;
55.处理算法方式:图像标定、模板匹配、软件触发、定位电池、离线测试等等。
56.步骤7获取视觉处理算法的结果,ok、ng及其他数据;
57.步骤8将视觉处理算法的结果反馈给其他操作系统,同时传输至相机控制器(camcontroller控件)的显示区;
58.步骤9将第8步得结果反馈到显示界面,显示界面将显示电池的检测参数、结果等信息。
59.步骤10对操作结果进行存图,记录操作。
60.步骤11工作结束。
61.尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例
性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

技术特征:
1.一种视觉软件框架系统,其特征在于:包括视觉软件框架和视觉软件工作流程,所述视觉软件框架包括相机驱动单元、加载单元、通讯单元以及数据存储单元,所述加载单元通过通讯单元与相机驱动单元信号连接,所述数据存储单元通过通讯单元与加载单元、动力锂电池自动分档系统的plc系统信号连接;所述视觉软件工作流程包括图像处理流程和数据处理流程;所述相机驱动单元与多个相机信号连接,对相机常用的触发模式、网线的传输包功能进行开放调用,并支持相机的断线重连、图像队列缓存以及aoi设置功能;所述加载单元通过读写文件进行程序的设置,以及相关配置的更新;加载单元与相机驱动单元信号连接,用于当相机应用程序启动时,加载预设的配置文件与相机控制器,其中所述相机控制器用于控制相机驱动单元、显示相机结果画面、管理相机与其他设备系统进行通讯的通讯功能,用于显示相机、通讯以及信号采集的状态;所述通讯单元基于socket,并支持udp、tcp/ip服务器通讯,实现相机控制器与相机驱动单元之间、相机控制器与机器人之间,以及相机控制器与plc系统之间的通讯;所述数据存储单元通过通讯单元与动力锂电池自动分档系统的plc系统信号连接,数据存储单元将图片、通讯日志等信息按照指定的格式进行存储;所述图像处理流程是一个由视觉库编写而成的多线程,期间所有操作与数据结果都在这个当前线程中,获取图像队列中的图像,并利用图像处理程序对图像进行处理,输出标准的结果;所述的数据处理流程将图像处理流程的结果数据进行分析,判断每个数据的意义,然后将数据进行处理,最后将返回结果进行发送给下一步运行结构。2.如权利要求1所述的一种视觉软件框架系统,其特征在于:数据存储单元支持保存通讯数据、处理结果、原图、图像处理效果图,追溯图像处理情况,通过加载单元得到的配置文件判断是否保存数据;以及将配置文件中的相机参数通过相机控制器修改相机的设置。3.利用权利要求2所述的一种视觉软件框架系统的控制方法,其特征在于,包括以下步骤:步骤1启动视觉软件框架系统,视觉软件框架系统会自动读取本地的参数文件,加载对应的相机控制器;其中对应的相机控制器定义了对相机驱动单元的操作;步骤2对socket参数、相机参数、项目参数进行设置和初始化,第一次打开时会生成默认的初始化参数,修改保存后,初始化时会加载已有配置;步骤3基于socket的通讯单元运行,等待接受机器人触发;启动相机,相机处于待连接状态;步骤4当电池在拍照位,机器人(模组)发送通讯请求、socket接受机器人触发拍照请求,这时视觉软件框架系统调用相机驱动单元让相机进行拍照;步骤5通讯单元触发拍照后,相机驱动单元将图片传入图像队列中,通讯指令存入命令队列中。通讯指令和图片在队列中的顺序保存一致,确保一条指令对应一张图片,不同的指令对图片的处理方式不同;步骤6通过视觉处理算法获取图像队列中的图片,然后根据指令队列中的指令选择指定的图像检测程序进行处理;处理算法方式:图像标定、模板匹配、软件触发、定位电池、离线测试等;。
步骤7获取视觉处理算法的结果,ok、ng及其他数据;步骤8将视觉处理算法的结果反馈给plc系统,同时传输至相机控制器(camcontroller控件)的显示区;步骤9将第8步得结果反馈到显示界面,显示界面将显示电池的检测参数、结果等信息。步骤10对操作结果进行存图,记录操作。步骤11工作结束。

技术总结
本发明公开了一种视觉软件框架系统,包括视觉软件框架和视觉软件工作流程,视觉软件框架包括相机驱动单元、加载单元、通讯单元以及数据存储单元;视觉软件工作流程包括图像处理流程;相机驱动单元用于对相机常用的触发模式、网线的传输包功能进行开放调用,并支持相机的断线重连、图像队列缓存以及AOI设置功能;加载单元用于当相机应用程序启动时,加载预设CamController控件;通讯单元用于实现单元之间的通讯;图像处理流程用于获取图像队列中的图像,利用图像处理程序对图像进行处理,输出标准结果;数据存储单元通过通讯单元与PLC系统信号连接;本发明还包括一种控制方法。本发明的有益效果是:可以兼容多种相机,适用多种视觉二次开发平台输入输出规范化。视觉二次开发平台输入输出规范化。视觉二次开发平台输入输出规范化。


技术研发人员:郭凯华 孟宇锋 曹骥 曹政
受保护的技术使用者:浙江杭可科技股份有限公司
技术研发日:2023.03.17
技术公布日:2023/8/21
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐