VTS配置流程

1.增加型号

在VTS管理界面下,进入到型号管理界面。

管理界面右侧有三个按钮:

从上往下分别是:添加新型号/修改型号信息/删除信号

点击添加新型号按钮

填写 型号名称/脚本路径(可以不用改变)/描述

VTS会为分配一个唯一代号

这个唯一代号随后要

填入到Execl配置文件中。



2.配置EXECL

1.修改产品型号信息

copy一个之前产品的配置文件,

在Typecode中填入之前VTS生成的唯一代号。

在TypeName中填入产品型号名称

ScriptsPath一栏可以不变动




2.LED测试配置


1.保存模板

手动控制产品,在LED全亮和全灭的状态下分别拍摄照片保存成模板图片。

2.画LED的ROI

使用VTS自带的工具画出LED的测试区域

将图片拖进Test界面,电机鼠标右键弹出菜单,可以选择画矩形ROI或者圆形ROI。


使用鼠标在图片画出ROI,ROI坐标信息出现在右侧ROI文本框内。


2.画LED的颜色区间

自VTS自带工具中下拉框选择LED的颜色,界面上会自动生成颜色的HSV区间,点击界面上的过滤按钮,可以查看颜色过滤的效果,并时情况拖动滑块修改颜色区间。在二值化界面可以看到颜色过滤的效果。


你还可以使用GIMP软件,


使用工具栏/工具/颜色拾取工具,按下Shift键,用鼠标点击要查看的区域,查看LED的HSV值,并以此参考修改颜色范围。


GIMP中HSV的区间为:H: 0— 360 S: 0— 100 V: 0— 100

VTS中HSV的区间为:  H: 0— 180 S: 0— 255 V: 0— 255

GIMP的HSV值要按照以上区间变换下得到VTS中对应的HSV值


2.配置LED测试流程



1.使用Camera_OpenCamera打开相机

参数 1:相机索引号 2:相机序列号

返回值 1:成功 0:失败

2.使用SetCameraBalanceRatio设置相机白平衡

参数 1:相机索引号 2:相机白平衡参数(3个数字,用逗号隔开)

返回值 1:成功 0:失败

3.使用SetCameraGain设置相机增益

参数 1:相机索引号 2:相机增益参数

 返回值 1:成功 0:失败

4.使用PowerCtrl打开电源,使用SignalSource_WriteDO控制信号源给仪表上电

PowerCtrl

参数 1:电源输出通道 2:输出电压 3:输出电流 4:输出状态(0:OFF 1:ON)

返回值 1:成功 0:失败

SignalSource_WriteDO

参数 1:信号源ID,信号源电平输出通道,输出状态(0:断开 1:低电平:2:高电平)

 返回值 1:成功 0:失败

5.使用CAN_AddPeriodMsg增加需要发送CAN信号节点

参数 1:USB CAN通道号 2:CAN节点ID 3:CAN节点初始数据 4:发送周期

 返回值 1:成功 0:失败

6.使用Vision_GetLocalImage将保存在本地的模板图片加载到内存中

参数 1:模板图片文件名

返回值 1:模板图片内存地址(类型为bin)

7.使用SetCameraShutter调节相机的曝光

参数 1:相机索引号 2:曝光参数

 返回值 1:成功 0:失败

8.使用Camera_GetImage抓取一张照片用于计算矫正矩阵

参数 1:相机索引号 2:矫正矩阵内存地址(可选)

返回值 1:成功 0:失败


9.使用Camera_SaveImage将抓取的照片保存至本地

参数 1:相机索引号 2:需要保存的图片内存地址 3:保存的路径,名称

 返回值 1:成功 0:失败


10.使用Vision_CalcHomographyMatrix,利用模板图片和之前抓取的图片计算矫正矩阵

参数 1:相机索引号 2:模板图片 3:获取的图片

返回值 得到的矫正矩阵内存地址

11.使用CAN_SetPeriodData发送CAN信号点亮CAN信号灯,使用SignalSource_WriteDO控制信号电平输出点亮硬件信号灯

CAN_SetPeriodData

参数 1:USB CAN通道号 2:CAN节点ID 3:CAN节点数据

 返回值 1:成功 0:失败

12.使用Camera_GetImage获取LED测试图片

13.使用LED_ExclusiveCheck进行LED排他检查

参数 1:相机索引号 2:测试图片 3:ROI 4:排他模板图片 5:不区域排他(可以填写多个,隔开)

返回值:排他区域内的最大亮点面积

14.使用LED_CheckShape进行LED形状检测

参数 1:相机索引号 2:测试图片 3:ROI 4:形状模板图片 5:结果图片保存位置

 返回值:LED灯和模板的差异大小(像素点个数)


15.使用LED_CheckColor进行LED颜色检查检测

参数 1:相机索引号 2:测试图片 3:ROI 4:颜色区间 5:结果图片保存位置

返回值:LED颜色区间过滤后面积(像素点个数)

16.使用Vision_DeleteMomeryImage将LED测试图片从内存中删除

参数 1:相机索引号 2:待删除图片图

 返回值:1:成功 0失败


2.配置指针测试流程


1.使用Camera_OpenCamera打开相机

 2.使用SetCameraBalanceRatio设置相机白平衡

3.使用SetCameraGain设置相机增益

 4.使用SignalSource_WriteDO控制信号源给仪表上电

5.使用CAN_AddPeriodMsg增加需要发送CAN信号节点

 6.使用Vision_GetLocalImage将保存在本地的模板图片加载到内存中

7.使用SetCameraShutter调节相机的曝光

8.使用Camera_GetImage抓取一张照片用于计算矫正矩阵

9.使用Camera_SaveImage将抓取的照片保存至本地

10.使用Vision_CalcHomographyMatrix,利用模板图片和之前抓取的图片计算矫正矩阵

11.使用CAN_SetPeriodData发送CAN信号驱动CAN信号指针,使用SignalSource_SetResistor

控制信号源输出电阻驱动燃油指针

SignalSource_SetResistor

参数 1:信号源ID,信号源电阻输出通道,输出阻值

返回值 1:成功 0:失败

12.使用Camera_GetImage抓取背景图片1

13.使用Camera_GetImage抓取背景图片2(背景图片1和背景图片2的指针要在不同位置)

14.使用Pointer_CalcBackground将背景图片1和背景图片2合成成背景图片

参数 1:相机索引号 2:背景图片1 3:背景图片2

返回值:合成后的背景图片内存地址


15.使用Camera_GetImage抓取指针测试图片

16.使用Pointer_GetPointerFromBackground,结合指针测试图片和背景图片提取指针

参数 1:相机索引号 2:指针图片 3:背景图片 4:指针ROI 5:指针颜色区间 6:结果图片保存位置

返回值 提取的指针直线内存位置(bin)


17.使用Vision_DeleteMomeryImage将测试图片从内存中删除

18.使用Pointer_CalMotorAxisCenter计算电机中心点。函数需要传入的参数是之前取到的2个指针,返回2个指针的交点坐标

参数 1:相机索引号 2:指针1 3:指针2

返回值 指针中心坐标内存位置

19.使用Pointer_CalcPointerAngle计算指针角度。函数使用之前取到的指针和指针交点计算指针的角度

参数 1:相机索引号 2:指针 3:指针中心坐标

返回值 指针角度


20.使用Pointer_CalcScaleAngle计算刻度角度。函数使用该出的ROI获取刻度点坐标,用刻度点坐标和指针中心店坐标计算刻度角度。

参数 1:相机索引号 2:背景图片 3:指针中心坐标  4:刻度ROI

返回值 刻度角度

21.使用Pointer_CalcAngleOffset计算指针偏差角度。函数将之前得到的指针角度减去刻度点角度得到指针偏差角度。

参数 1:相机索引号 2:指针角度 3:刻度角度

返回值 指针偏差角度


3.进度条测试

使用LCD_CheckBar 测试进度条数量。

参数 1:相机索引号 2:测试图片 3:测试区域ROI 4:方块的长宽范围(最小宽度:最大宽度:最小高度:最大高度)

返回值 进度条个数

4.字符识别

使用OCR_GetText 识别文本

参数 1:相机索引号 2:测试图片 3:测试区域ROI 4:字体名称

返回值:识别的字符串

4.声音测试

使用Sound_StartRecord开始录音

参数 1:录音时长(单位:秒) 2:录音文件保存位置及名称

返回值 1:成功 0:失败

使用Sound_CheckInRange检查声音大小

参数 1:录音文件保存位置及名称

返回值 声音强度

5.按键测试

使用LCD_CheckKey 检测按键

参数 1:相机索引号 2:测试图片 3:测试区域ROI

返回值 按键图标白色像素点比例

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,403评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,382评论 25 709
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,740评论 0 38
  • 对于习惯了windows的用户来说,学习linux是相当不容易的,从图形界面转换到命令行是一个不容易的过程,我们需...
    静等凌风阅读 2,915评论 0 1
  • 胡老师说演出服买吧。 问她为啥~ “因为租要一天二百而买只要一百啊!” 哈哈哈~ 结果链接发过来一看,纳尼?婚纱?...
    嫏嬛素素阅读 1,267评论 0 0