基于单片机控制器的汽车仪表指针表盘的快速读数方法转让专利

申请号 : CN201610203469.4

文献号 : CN105783968B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 肖永军熊曾刚李纪平丁么明彭祺屠礼芬

申请人 : 湖北工程学院

摘要 :

本发明提出基于单片机控制器的汽车仪表指针表盘的快速读数方法,包括如下步骤:1)建立一个仪表指针表盘的标准图像;2)对待检测的仪表指针表盘进行拍摄;3)以中心点O为中心,设置一参考线,设定参考线所在圆弧的半径R;在参考线上标定A1点,假设仪表初始状态的指针与A1点与中心点O的连线重合,计算A1点与中心点O连线的斜率;设A1点的坐标为(x,y),提取A1(x,y)坐标的灰度值Y1;调整仪表,使指针进行一定程度的偏转;4)制作离线查询表;5)查询指针的偏转位置:6)计算指针相对于初始位置的相对偏转角为β;7)通过相对偏转角为β计算车速。本发明的优点在于,仅用单片机即可实现,无需需要大量的图像处理及数据计算。

权利要求 :

1.基于单片机控制器的汽车仪表指针表盘的快速读数方法,其特征在于,包括如下步骤:

1)建立一个仪表指针表盘的标准图像,并设定仪表中心点O;

2)对待检测的仪表指针表盘进行拍摄,并对其图像做二值化处理,使其中心点与标准图像的中心点重合;

3)以中心点O为中心,设置一参考线,设定参考线所在圆弧的半径R;在参考线上标定A1点,假设仪表初始状态的指针与A1点与中心点O的连线重合,计算A1点与中心点O连线的斜率;设A1点的坐标为(x,y),提取A1(x,y)坐标的灰度值Y1;调整仪表,使指针进行一定程度的偏转;

4)制作离线查询表,离线查询表内存储有参考线在标准图像内的坐标轨迹An(x,y),其中n取值为1,2,3……..;

5)查询指针的偏转位置:在参考线上设一点A2,假设指针偏转后,指针与A2点、中心点O的连线重合,在待测仪表图像内搜索A2点;根据离线查询表,以灰度值Y1搜索待测仪表图像内的A2点;

6)假设指针相对于初始位置的相对偏转角为β,分别计算出A1与中心点O连线的斜率K1,A2与中心点O连线的斜率K2,则:当A2点所在直角坐标系第三象限时,偏转角可依照下式计算:

β=arctan|(k2-k1)/(1-k1*k2)|

当A2点所在直角坐标系其它象限时,偏转角可依照下式计算:

β=π+arctan|(k2-k1)/(1-k1*k2)|

7)设定指针满偏时的速度为Vmax,偏转角为βmax,那么当指针的相对偏转角为β时,对应的车速为:V=(Vmax-10)/(βmax-0)*β。

2.根据权利要求1所述的基于单片机控制器的汽车仪表指针表盘的快速读数方法,其特征在于,若因光线因素,导致以Y1为参考灰度值无法搜索到参考点时,则应采用新的灰度值Y1±5为参考灰度值进行反复搜索,直到搜索到A2点为止。

3.根据权利要求1所述的基于单片机控制器的汽车仪表指针表盘的快速读数方法,其特征在于,步骤5)中,由于仪表指针具有一定的宽度,反映在待测仪表图像内为十几个像素点的宽度,即说明在参考线上存在K个参考点,设定为A2i,i为1,2,3…K;

当K为偶数时,取A2K/2为实际的参考点,即A2K/2为待搜索的点A2;

当K为奇数时,取A2(K/2+1)为实际的参考点,即A2(K/2+1)为待搜索的点A2。

4.根据权利要求1所述的基于单片机控制器的汽车仪表指针表盘的快速读数方法,其特征在于,仪表中心点O为仪表刻度盘的圆弧圆心。

说明书 :

基于单片机控制器的汽车仪表指针表盘的快速读数方法

技术领域

[0001] 本发明涉及汽车仪表检测领域,尤其涉及基于单片机控制器的汽车仪表指针表盘的快速读数方法。

背景技术

[0002] 仪表是汽车驾驶员的一个重要显示窗口,用于显示汽车实时状态以及车身参数等信息,是汽车整车上的一套非常重要的部件。因此,对于汽车仪表生产厂家来说,出厂仪表需要进行全检,以确保产品百分百合格率。商用汽车仪表大多采用步进电机式组合仪表,由步进电机带动指针进行偏转指示。由于指针偏转角度存在检测困难,偏转值不易转化为电信号,针对商用汽车仪表的检测大多采用人工进行逐项检测,在仪表生产中存在效率低下等问题。虽然有研究表明采用视频检测方法进行指针偏转的检测,但是视频检测需要进行大量的图像处理算法,一般的单片机控制器无法胜任图像处理工作。因此,视频检测多采用专用的视频处理器,其价格昂贵,开发难度较大,且功耗较高,一般不易集成在检测台上。

发明内容

[0003] 本发明的目地在于提供一种适合于在一般单片机控制器上运行的汽车仪表指针表盘的快速读数方法。
[0004] 本发明为解决其技术问题所采用的技术方案是,
[0005] 基于单片机控制器的汽车仪表指针表盘的快速读数方法,包括如下步骤:
[0006] 1)建立一个仪表指针表盘的标准图像,并设定仪表中心点O;
[0007] 2)对待检测的仪表指针表盘进行拍摄,并对其图像做二值化处理,使其中心点与标准图像的中心点重合;
[0008] 3)以中心点O为中心,设置一参考线,设定参考线所在圆弧的半径R;在参考线上标定A1点,假设仪表初始状态的指针与A1点与中心点O的连线重合,计算A1点与中心点O连线的斜率;设A1点的坐标为(x,y),提取A1(x,y)坐标的灰度值Y1;调整仪表,使指针进行一定程度的偏转;
[0009] 4)制作离线查询表,离线查询表内存储有参考线在标准图像内的坐标轨迹An(x,y),其中n取值为1,2,3……..;
[0010] 5)查询指针的偏转位置:在参考线上设一点A2,假设指针偏转后,指针与A2点、中心点O的连线重合,在待测仪表图像内搜索A2点;根据离线查询表,以灰度值Y1搜索待测仪表图像内的A2点;
[0011] 6)假设指针相对于初始位置的相对偏转角为β,分别计算出A1与中心点O连线的斜率K1,A2与中心点O连线的斜率K2,则:
[0012] 当A2点所在直角坐标系第三象限时,偏转角可依照下式计算:
[0013] β=arctan|(k2-k1)/(1-k1*k2)|
[0014] 当A2点所在直角坐标系其它象限时,偏转角可依照下式计算:
[0015] β=π+arctan|(k2-k1)/(1-k1*k2)|
[0016] 7)设定指针满偏时的速度为Vmax,偏转角为βmax,那么当指针的相对偏转角为β时,对应的车速为:V=(Vmax-10)/(βmax-0)*β。
[0017] 优选地,若因光线因素,导致以Y1为参考灰度值无法搜索到参考点时,则应采用新的灰度值Y1±5为参考灰度值进行反复搜索,直到搜索到A2点为止。
[0018] 优选地,步骤5)中,由于仪表指针具有一定的宽度,反映在待测仪表图像内为十几个像素点的宽度,即说明在参考线上存在K个参考点,设定为A2i,i为1,2,3…K;
[0019] 当K为偶数时,取A2K/2为实际的参考点,即A2K/2为待搜索的点A2;
[0020] 当K为奇数时,取A2(K/2+1)为实际的参考点,即A2(K/2+1)为待搜索的点A2。
[0021] 本发明的优点在于,克服了大多数视频应用无法在单片机上实现的缺陷,仅用单片机即可实现汽车仪表指针表盘的快速读数,无需需要大量的图像处理及数据计算。

附图说明

[0022] 图1是快速检测方法原理示意图;
[0023] 图2是经过二值化处理的车速仪表盘;
[0024] 图3是指针平面上参考点像素选取示意图。

具体实施方式

[0025] 为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合图示与具体实施例,进一步阐述本发明。
[0026] 如图1所示,为快速检测方法原理示意图。图中以仪表中心点O为中心,设定一参考线,参考线与仪表刻度线为同心圆,均以O点为圆心,A1、A2为参考线上的点,A1与中心点O的连线的斜率为K1,A2与中心点O的连线的斜率为K2。
[0027] 假设仪表初始状态的指针与A1与中心点O的连线重合,而经过外部信号输入后,指针发生了偏转,当前指针与A2与中心点O的连线重合,指针的相对偏转角(相对于初始位置)为β,β角的计算如下:
[0028] 当A2点所在X1-Y1直角坐标系第三象限时,偏转角可依照下式计算:
[0029] β=arctan|(k2-k1)/(1-k1*k2)|
[0030] 当A2点所在X1-Y1直角坐标系其它象限时,偏转角可依照下式计算:
[0031] β=π+arctan|(k2-k1)/(1-k1*k2)|
[0032] 以汽车仪表板上的车速表为例进行说明,经过二值化后的车速表如图2所示,其中白色表示像素点为亮点,亮度值为255,黑色表示像素点为暗点,亮度值为0,仪表盘最大车速为140Km/h,最小为10Km/h(实际代表0值)。以刻度线0Km/h为起点,即当指针指向10Km/h时,对应偏转角为0°;而当指针指向140Km/h时,偏转角为195°。考虑到仪表盘的盘面的均匀性,因此实际测试时,如果当前偏转角为β(单位以度表示),则指针指向的车速V计算为:
[0033] V=(140-10)/(195-0)*β
[0034] 根据上述的原理,本实例例提供了如下仪表指针的快速检测方法,包括如下步骤:
[0035] 第一步:建立一个仪表指针表盘的标准图像,并设定仪表中心点O;考虑到汽车仪表附带有面膜,仪表刻度线及仪表指针均受仪表背光照亮,其它位置则相对较暗,仪表中心点O为刻度盘的圆弧圆心。
[0036] 第二步:对待检测的仪表指针表盘进行拍摄,并对其图像做二值化处理,使其中心点与标准图像的中心点重合;
[0037] 假设摄像头采用OV7670,其视场为640×480,使视场中心(320,288)与车速仪表的中心点O重合,调整摄像头的焦距,使仪表完成铺满整个摄像头的视场,如图2所示。
[0038] 第三步:选择参考线所在圆弧的半径R。
[0039] 为减小设计误差,半径R的选取应尽可能大,应尽可能靠近仪表刻度线,且要保证参考线圆弧上无无其它明显的亮点存在,除了仪表指针上的像素点之外。
[0040] 第四步:标定A1点,并计算A1点与原点O连线的斜率
[0041] 考虑到仪表指针具有一定的宽度,且需要搜索参考线,在实际使用时,无法进行大量的图像处理进行搜索特征点像素,则需要事先将待搜索像素根据第三步所选择的参考半径R制作成离线查询表,查询参考线在标准图像内的坐标轨迹An(x,y),其中n取值为1,2,3……..。
[0042] 使仪表指针归零,并进行了A1(x,y)坐标的标定,提取A1(x,y)坐标的灰度值Y1。进行调整仪表,使指针进行一定程度的偏转,然后进入第五步执行。
[0043] 第五步:在视场内搜索A2点。
[0044] 以灰度值Y1搜索视场内的离、线查询表内的像素坐标,找到相应的特征点A2。如图3所示,由于仪表指针具有一定的宽度,往往反映在摄像头的视场内为十几个像素点的宽度,也就是说在参考线上存在K个参考点,即A2i,i为1,2,3…K。
[0045] 当K为偶数时,取A2K/2为实际的参考点。即A2K/2为待搜索的点A2;
[0046] 当K为奇数时,取A2(K/2+1)为实际的参考点。即A2(K/2+1)为待搜索的点A2。
[0047] 若因光线因素,导致以Y1为参考灰度值无法搜索到参考点时,则应采用新的灰度值Y1±5为参考灰度值进行反复搜索,直到搜索到A2点为止。
[0048] 第六步:计算偏转角β。
[0049] 根据A1、A2以及O点坐标,分别计算出A1-O连线的斜率K1,A2-O连线的斜率K2,并进而利用前述公式计算出偏转角β。
[0050] 当A2点所在直角坐标系第三象限时,偏转角可依照下式计算:
[0051] β=arctan|(k2-k1)/(1-k1*k2)|
[0052] 当A2点所在直角坐标系其它象限时,偏转角可依照下式计算:
[0053] β=π+arctan|(k2-k1)/(1-k1*k2)|
[0054] 第七步:计算车速仪表盘显示的实际车速V。
[0055] 设定指针满偏时的速度为Vmax,偏转角为βmax,那么当指针的相对偏转角为β时,对应的车速为:V=(Vmax-10)/(βmax-0)*β。
[0056] 当所测量的仪表盘发生变化时,最大、最小车速、最大、最小偏转角均要进行标定。
[0057] 以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。