一种数字仪表的制作方法

文档序号:9260055阅读:201来源:国知局
一种数字仪表的制作方法
【技术领域】
[0001]本发明涉及一种数字仪表,尤其是一种显示流畅平滑便于准确读取数据的数字仪表。
【背景技术】
[0002]伴随着数字电子显示技术的不断进步,其正在飞速地从高端设备的应用,发展到工厂视频文本控制、机电一体化的安全监控以及人们日常生活中所接触到的汽车、电梯、智能家居等生活的方方面面。由于信息技术的发展以及电子消费品市场在最近几年的普遍应用已经证明HMI (Human Machine Interface人机接口)对客户的重要性,以此逐步形成现场总线CAN这种有效支持分布式控制或实时控制的串行通信网络。同时基于嵌入式技术的高可靠、低功耗、长寿命、小体积、高性能的功能以及文本、视频显示形式在现实世界的大规模应用,数字显示系统越来越成为汽车工业、节能减排、信息家电、仪器仪表等电子信息领域不可或缺的一部分。通过对于市场上现有数字仪表的显示功能进行深入调查后发现:有的数字仪表只是单纯的文本显示,不能满足人们对实时动态信息准确的掌握;有的数字仪表只是视频显示,不能较直观、精确的满足人们对准确数字的要求;而有的数字仪表虽然既能显示文本又能显示视频,但是在实际应用中要不就是在显示图像的细节处理方面存在毛刺,要不就是高昂的价格让人却步。面对电子显示技术日益发展和成熟的新时代,此类产品具有如下缺点:a、不能支持视频、表盘、文本的综合显示;b、数字仪表不能实现平滑、流畅的显示,还达不到与机械表盘同样的显示效果;C、没有结合CAN总线接口的优点。

【发明内容】

[0003]本发明的目的就是解决上述的难题,提供一种数字仪表使数字仪表的指针运动显示流畅平滑,便于准确的读取仪表数据。
[0004]本发明的目的是通过如下的电路模块和控制步骤实现的,其包括:显示器,显示器连接显示模块,显示模块连接CPU,CPU连接程序存储器和数据存储器,CPU还连接数据通讯接口,所述显示模块在CPU控制下通过如下步骤在显示器上显示测量数据:
(1)测量数据经数据通讯接口存入数据存储器中的公用数据区;
(2)查询共用数据区中是否有测量数据更新,如果有测量数据更新则进入下一个步骤(3)进行处理,如果没有测量数据更新则仍继续查询;
(3)将测量更新的数据转换为指针数据;
(4)先将更新前的指针数据作为当前指针数据,然后按照指针数据在仪表指针图像库中的排列顺序,从仪表指针图像库中更新前的指针数据开始,循环执行本步骤:将在仪表指针图像库中当前指针数据对应的仪表指针图像放入叠加图层,接着将背景图层中存储的仪表表盘图像调出与从叠加图层调出的仪表指针图像叠加后形成显示图像,然后将显示图像显示在显示器上,接着将仪表指针图像库中下一个显示位置的指针数据作为当前指针数据,直到当前指针数据超越了更新后的指针数据即结束本循环步骤; (5)返回步骤(2)。
[0005]所述的步骤(I)显示控制前进行如下步骤的初始化:
a.将仪表的量程和刻度数设置在仪表表盘图像上,并将表盘图像存入背景图层中;
b.在仪表表盘图像上从量程起始位置开始,仪表指针每旋转I个旋转精度,就将相应角度下对应形状的仪表指针图像依次存入仪表指针库中,直到量程的终点位置为止,所述的I个旋转精度为旋转角度0.1°至1°。
[0006]将获得的测量数据转换为仪表的指针数据采用如下步骤:
一、根据测量数据确定在显示时,仪表指针位于表盘图像中的象限位置;
二、根据测量数据所处的象限位置确定指针的旋转角度,将指针的旋转角度作为指针数据。
[0007]如所述仪表的指针旋转角度在0°到180°之间,且仪表的指针沿逆时针方向旋转,测量数据中没有负值,则将获得的测量数据转换为指针数据采用如下步骤:
A.如果测量数据大于仪表量程的上限,就将仪表量程的上限作为指针数据;如果测量数据小于仪表量程的下限,就将仪表量程的下限作为指针数据;
B.如果测量数据在仪表量程的范围内,将仪表量程的上限减去仪表量程的下限得到差值;用指针指向仪表上限时指针所需的旋转角度减去指针指向仪表下限时指针所需的旋转角度得到的角度差;差值除以角度差得到比例系数;比例系数乘以测量数据得到预显数据;判断仪表指针库中是否有该预显数据,如果有该预显数据,就将该预显数据作为指针数据,如果没有该预显数据,则在仪表指针库中取小于预显数据的一个角度为下比较角度,且该下比较角度与预显数据间差值的绝对值小于一个旋转精度,在仪表指针库中取大于预显数据的一个角度为上比较角度,且该上比较角度与预显数据间差值的绝对值小于一个旋转精度,取上比较角度与下比较角度的中间值,如果预显数据大于该中间值,则取上比较角度作为指针数据,如果预显数据小于该中间值,则取下比较角度作为指针数据。
[0008]如所述仪表的指针旋转角度在0°到180°之间,指针既能沿逆时针方向旋转又能沿顺时针方向旋转,测量数据中既有正值,又有负值,则将获得的测量数据转换为指针数据采用如下步骤:
A.如果测量数据大于仪表量程的上限,就将仪表量程的上限作为指针数据;如果测量数据小于仪表量程的下限,就将仪表量程的下限作为指针数据;
B.如果测量数据在仪表量程的范围内,将仪表量程的上限减去仪表量程的下限得到差值,仪表上限时指针的旋转角度减去仪表下限时指针的旋转角度得到的角度差,差值除以角度差得到比例系数,比例系数乘以测量数据得到预处理数据,预处理数据如果为正值,则将90°减去预处理数据作为预显数据,预处理数据如果为负值,则将180°减去预处理数据的绝对值作为预显数据,判断仪表指针库中是否有该预显数据,如果有该预显数据,就将该预显数据作为指针数据,如果没有该预显数据,则在仪表指针库中取小于预显数据的一个角度为下比较角度,且该下比较角度与预显数据间差值的绝对值小于一个旋转精度,在仪表指针库中取大于预显数据的一个角度为上比较角度,且该上比较角度与预显数据间差值的绝对值小于一个旋转精度,取上比较角度与下比较角度的中间值,如果预显数据大于该中间值,则取上比较角度作为指针数据,如果预显数据小于该中间值,则取下比较角度作为指针数据。
[0009]所述的步骤(4)替换为如下内容:首先将背景图层中存储的仪表表盘图像调出,接着将文字叠加在仪表表盘图像上,然后将叠加了文字的仪表表盘图像放回背景图层,接下来将更新前的指针数据作为当前指针数据,然后按照指针数据在仪表指针图像库中的排列顺序,从仪表指针图像库中更新前的指针数据开始,循环执行本步骤:将在仪表指针图像库中当前指针数据对应的仪表指针图像放入叠加图层,接着将背景图层中存储的仪表表盘图像调出与从叠加图层调出的仪表指针图像叠加后形成显示图像,然后将显示图像显示在显示器上,接着将仪表指针图像库中下一个显示位置的指针数据作为当前指针数据,直到当前指针数据超越了更新后的指针数据即结束本循环步骤。
[0010]所述的步骤(4)替换为如下内容:首先将背景图层中存储的仪表表盘图像调出,接着将文字叠加在仪表表盘图像上,然后将叠加了文字的仪表表盘图像放回背景图层,接下来将更新前的指针数据作为当前指针数据,然后按照指针数据在仪表指针图像库中的排列顺序,从仪表指针图像库中更新前的指针数据开始,循环执行本步骤:将在仪表指针图像库中当前指针数据对应的仪表指针图像放入叠加图层,接着将背景图层中存储的仪表表盘图像调出与从叠加图层调出的仪表指针图像叠加后形成显示图像,然后将显示图像与从数据通讯接口获得的视频图像直接叠加形成混合图像,然后将混合图像显示在显示器上,接着将仪表指针图像库中下一个显示位置的指针数据作为当前指针数据,直到当前指针数据超越了更新后的指针数据即结束本循环步骤。
[0011]所述的显示模块包括:显示控制器和显存,显示控制器为爱普生S1D13506显示芯片。所述显示模块连接CPLD辅助显示控制器,CPLD辅助显示控制器直接连接显示器。所述CPLD辅助显示控制器连接视频采集模块。
[0012]本发明通过显示模块不断实时将测量数据转化为仪表指针图像的不断旋转变化,使数字仪表的指针运动显示流畅平滑,便于准确的读取仪表数据,对指针的叠加操作使用了透过叠加方式,避免了图像叠加覆盖时覆盖掉背景信息。本发明利用分层功能,把文本的显示和提示信息,都在背景层完成,这样不会影响到指针的显示效果,还可将从视频监视设备传输过来的显示内容,在不经过显存的情况下,直接叠加到显示器的数据线上,提高了视频处理的效率,也很好的解决了显示多种叠加模式的问题。
【附图说明】
[0013]图1为本发明的组成模块的结构图,图2为本发明的显示状态图。
【具体实施方式】
[0014]本发明实施例1包括:显示器,显示器连接显示模块,显示模块连接CPU,CPU连接程序存储器和数据存储器,CPU连接数据通讯接口。CPU采用日立SH7708系列的32位RISC处理器进行信号处理。显示模块包括:显示控制器和显存,显示控制器为爱普生S1D13506显示芯片,爱普生S1D13506显示芯片连接显存,显存为512KB的高速动态RAM。数据通讯接口包括:CAN总线模块和RS232隔离通讯模块。CPU连接SDRAM型的数据储器和Flash型的程序存储器,CPU还连接有CPLD辅助控制器,CPLD辅助控制器采用美国莱迪思(lattice )的一片128个宏单元的LC4128V-144,用来管理芯片间的逻辑关系,提高整个系统的容错性和准确性。显示器则采用800*600分辨率的TFT液晶显示器。
[0015]在本发明出厂前进行如下步骤的初始化:
a.将仪表的量程和刻度数设置在仪表表盘图像中,并将表盘图像存入背景图层中,本实施仪表的量程为0-100,刻度总数为101,其O位在仪表表盘图像的右侧;
b.根据仪表表盘图像中的量程,从量程起始位置开始每旋转仪表指针每旋转I个旋转精度,将相应角度的仪表指针图像依次存入仪表指针库中,直到量程的终点位置为止,所述的I个旋转精度为旋转角度1°,此步骤建立了在仪表指针每一个旋转精度下,相应仪表指针图像与仪表指针旋转角度的对应关系,即从0°至180°每隔Γ存入一个当前旋转转度的仪表指针图像,且仪表指针库排列顺序为依据旋转角度的逐渐增大依次存储仪表指针图像。
[0016]在本发明工作中,显示模块在CPU控制下通过如下步骤在显示上显示测量数据:
(1)测量数据经数据通讯接口存入数据存储器中的公用数据区;
(2)查询共用数据区中是否有测量数据更新,如果有测量数据更新则进入下一个步骤(3)进行处理,如果没有测量数据更新则仍继续查询;
(3)将测量数据转换为指针数据,指针数据为经过处理的能够在仪表指针图像库找到对应位置仪表指针图像的数据,因为测量数据与仪表指针图像不是一一对应关系,需要预先进行处理以保持测量数据与指针仪表指针图像的对应关系;
(4)先将更新前的指针数据作为当前指针数据,然后按照指针数据在仪表指针图像库中的排列顺序,从仪表指针图像库中更新前的指针数据开始,循环执行本步骤:将在仪表指针图像库中当前指针数据对应的仪表指针图像放入叠加图层,接着将背景图层中存储的仪表表盘图像调出与从叠加图层调出的仪表指针图像叠加后形成显示图像,然后将显示图像显示在显示器上,接着将仪表指针图像库中下一个显示位置的指针数据作为当前指针数据,直到当前指针数据超越了更新后的指针数据即结束本循环步骤;仪表表盘图像与仪表指针图像的叠加是透过式叠加,即仅仪表指针图像覆盖地方仪表表盘图像不能透过显示,其他地方仪表表盘图像正常显示;
(5)返回步骤(2)。
[0017]将指针的旋转点作为直角平面坐标系的原点,测量数据大于等于O且小于50时指针经旋转后最终的显示位置位于直角坐标系的第一象限,测量数据大于50且小于等于100时指针经旋转后最终的显示位置位于直角坐标系的第二象限。仪表的指针旋转角度在0°到180°之间,指针沿逆时针方向旋转,且测量数据中没有负值,则将获得的测量数据转换为仪表的指针数据采用如下步骤:
A.判断测量数据是否在仪表量程的范围内,如果测量数据大于仪表量程的上限,就将仪表量程的上限作为指针数据;如果测量数据小于仪表量程的下限,就将仪表量程的下限作为指针数据;
B.如果测量数据在仪表量程的范围内,将仪表量程的上限减去仪表量程的下限得到差值,仪表上限时指针的旋转角度减去仪表下限时指针的旋转角度得到的角度差,差值除以角度差得到比例系数,即比例系数为:I (100-0)/ (180-0) 1=5/9,比例系数乘以测量数据得到预显数据,预显数据即将要显示仪表指针的旋转角度,根据已经建立的仪表指针图像与仪表指针旋转角度的对应关系,判断仪表指针库中是否有该预显数据,如果有该预显数据,就将该预显数据作为指针数据,如果没有该预显数据的角度,则在仪表指针库中取小于预显数据的一个角度为下比较角度,且下比较角度与预显数据的绝对差值小于一个旋转精度,在仪表指针库中取大于预显数据的一个角度为上比较角度,且上比较角度与预显数据的绝对差值小于一个旋转精度,取上比较角度与下比较角度的中间值,如果预显数据大于该中间值,则取上比较角度作为指针数据,如:预显数据为30.16°,由于I个旋转精度为旋转角度1°,则取大于30.16°的上比较角度31° ,取小于30.16°的下比较角度30°,而30.16°小于30°与31°的中间数值30.5°,故将预显数据30.16°转换为指针数据时,指针数据为30°,如果预显数据小于该中间值,则取下比较角度作为指针数据,如:预显数据为30.65°,由于I个旋转精度为旋转角度1°,则取大于30.16°的上比较角度31°,取小于30.16°的下
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1