CN107797840B - 同界面多表盘指针平滑转动控制方法及系统 - Google Patents
同界面多表盘指针平滑转动控制方法及系统 Download PDFInfo
- Publication number
- CN107797840B CN107797840B CN201711090316.4A CN201711090316A CN107797840B CN 107797840 B CN107797840 B CN 107797840B CN 201711090316 A CN201711090316 A CN 201711090316A CN 107797840 B CN107797840 B CN 107797840B
- Authority
- CN
- China
- Prior art keywords
- pointer
- time
- rotation
- quadratic function
- quadratic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Abstract
本发明揭示了同界面多表盘指针平滑转动控制方法及系统,其中同界面多表盘指针平滑转动控制方法,通过构建最大量程角度和对应转动时间的二次函数以及某一时间点和该时间点对应的指针转动位置的二次函数,计算得到实际需要转动角度对应的转动时间和总刷新次数,进而可以通过判断指针刷新次数与总刷新次数来确认指针是否移动到目标位置,并在未移动到目标位置时,通过二次函数的嵌套计算出指针每次刷新时应转动的角度来进行指针的控制,从而使指针的转动过程呈二次函数的曲线进行变化,本专利设计精巧,方法简单,能够充分利用二次函数自身是平滑曲线的特性,使指针平滑转动,避免直接跳转造成的无法显示指针转动过程及用户体验感、可视性不佳的问题。
Description
技术领域
本发明涉及仪表显示领域,尤其是同界面多表盘指针平滑转动控制方法及系统。
背景技术
显示器是一种数据链系统装置的显示终端,能显示本装置的位置、方位、速度和高度等以及周围安装同样装置载体相对于本装置的位置的仪器,现有的液晶显示器中的表盘指针根据外部接收到的数据来显示指向位置。
指针从一个位置转动到另一个位置,当不做平滑处理时,看到的显示为指针瞬间在下一个位置显示,显示器中能看到指针的位置移动,但指针的立刻跳转,使得画面看上去显得僵硬,不能分清指针是顺时针转动还是逆时针转动到下一个位置的,对于转动过程的显示不清楚,尤其是对于一些需要通过指针转动方向来表征不同结果的仪表,指针转动的平滑处理就更为重要。
发明内容
本发明的目的就是为了解决现有技术中存在的上述问题,提供同界面多表盘指针平滑转动控制方法及系统。
本发明的目的通过以下技术方案来实现:
同界面多表盘指针平滑转动控制方法,包括如下步骤:
S1,定义所有表盘中的最大量程角度φmax和对应的最大转动时间T之间的第一二次函数,求出第一二次函数的二次项系数、一次项系数及常数,并得到任意表盘每次需要转动的角度x和需要转动的总时间y之间的通用二次函数;
S2,判断指针显示位置是否需要变化,当需要变化时,执行S3步骤,当不需要变化时,重新判断指针显示位置是否需要变化;
S3,根据指针要转动到的目标位置,确定指针实际需要转动的角度φ实,并根据上述通用二次函数,求出实际需要转动的总时间T实以及在实际需要转动的总时间T实内,指针刷新总次数F,同时,指针刷新计数n开始计数;
S4,增加一次指针刷新计数n,判断指针刷新计数n是否等于指针刷新总次数F;
S5,当判断指针刷新计数n等于指针刷新总次数F,指针位于目标位置,刷新计数n清零,执行S2步骤;
S6,当判断指针刷新计数n不等于指针刷新总次数F,定义一次指针转动所需的总时间中的部分时间t与该部分时间t内指针转动的角度φt之间的第二二次函数,根据任一表盘的最大量程角度和对应的最大转动时间满足所述第二二次函数及第一二次函数,计算出所述第二二次函数的二次项系数、一次项系数及常数,得到该部分时间t与该部分时间t内指针的转动角度φt的通用关系式,并根据上述通用关系式计算出第n次刷新对应的时间内,指针的转动角度φt,并使指针移动到该位置;
S7,判断指针的目标位置是否有新变化;
S8,当判断指针的目标位置有新变化时,执行S3步骤;
S9,当判断指针的目标位置没有新变化时,执行S4。
优选的,所述的同界面多表盘指针平滑转动控制方法,其中:所述最大量程角度φmax和对应的最大转动时间T之间的第一二次函数为T=a*φmax 1/2,a为二次项系数,则任意表盘的指针每次需要转动的角度x和需要转动的总时间y之间的通用二次函数为y=a*x1/2 。
优选的,所述的同界面多表盘指针平滑转动控制方法,其中:在所述S6步骤中,所述指针转动的角度φt和该部分时间t之间的第二二次函数为φt=c*t1/2,c为二次项系数,并得到某一时间t时,指针的转动角度φt的计算公式为φt=[φmax/(a*φmax 1/2)1/2]*t1/2,计算得到第n次刷新时,指针的转动角度φt=[φmax/(a*φmax 1/2)1/2]*(n/f)1/2,其中f为指针每秒刷新次数。
同界面多表盘指针平滑转动控制系统,包括
函数确定单元,用于建立表盘的最大量程角度φmax和对应的最大转动时间T之间的第一二次函数,并求出第一二次函数的二次项系数、一次项系数及常数,得到实际需要转动角度φ实和需要转动的时间T实之间的第一二次函数;
指针状态判断单元,用于判断指针显示位置是否需要变化,当需要转动时发信号给第一计算单元,当不需要转动时,重新判断指针显示位置是否需要变化;
第一计算单元,用于根据指针要转动到的目标位置,确定指针实际需要转动的角度φ实,并根据上述通用二次函数,求出实际需要转动的总时间T实以及在实际需要转动的总时间T实内,指针刷新总次数F;同时,控制指针刷新计数n开始计数;
第一判断单元,用于增加一次指针刷新计数n,判断指针刷新计数n是否等于指针刷新总次数F;
第一结果执行单元,用于当判断指针刷新计数n等于指针刷新总次数F,指针位于目标位置,刷新计数n清零,并发信号给所述指针状态判断单元;
第二结果执行单元,用于
当判断指针刷新计数n不等于指针刷新总次数F,定义一次指针转动所需的总时间中的部分时间t与该部分时间t内指针转动的角度φt之间的第二二次函数,根据任一表盘的最大量程角度和对应的最大转动时间满足所述第二二次函数及第一二次函数,计算出所述第二二次函数的二次项系数、一次项系数及常数,得到该部分时间t与该部分时间t内指针的转动角度φt的通用关系式,并根据上述通用关系式计算出第n次刷新对应的时间内,指针的转动角度φt,并使指针移动到该位置;
第二判断单元,用于判断指针的目标位置是否有新变化,并当判断指针的目标位置有新变化时,发信号给所述第一计算单元;当判断指针的目标位置没有新变化时,发信号给所述第一判断单元。
本发明技术方案的优点主要体现在:
本专利设计精巧,方法简单,通过构建最大量程角度和对应转动时间的二次函数以及某一时间点和该时间点对应的指针转动位置的二次函数,计算得到实际需要转动角度对应的转动时间和总刷新次数,进而可以通过判断指针刷新次数与总刷新次数来确认指针是否移动到目标位置,并在未移动到目标位置时,通过二次函数的嵌套计算出指针每次刷新时应转动的角度来进行指针的控制,从而使指针的转动过程呈二次函数的曲线进行变化,能够充分利用二次函数自身是平滑曲线的特性,使指针平滑转动,避免直接跳转造成的无法显示指针转动过程及用户体验感、可视性不佳的问题。
本发明实时显示性好,准确度较高,界面友好,直观性强,可靠性高,成本低,不受软件限制,可移植性强,运用性较广,可运用于各类显示器仪表领域,可以实现同一界面上指针转动的平滑,因此,实用性较好,易于推广应用,具有较大实用价值。
附图说明
图1是本发明的方法过程图;
图2是本发明的系统框图。
具体实施方式
本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而形成的技术方案,均落在本发明要求保护的范围之内。
本发明揭示了同界面多表盘指针平滑转动控制方法,如附图1所示,包括如下步骤:
S1,定义所有表盘中的最大量程角度φmax和对应的最大转动时间T之间的第一二次函数,求出第一二次函数的二次项系数、一次项系数及常数,并得到任意表盘的指针每次需要转动的角度x(即指针每次从当前位置转动到目标位置的角度)和需要转动的总时间y之间的通用二次函数表盘。
优选,所述最大量程角度φmax和对应的最大转动时间T之间的第一二次函数为T=a*φmax 1/2,其中a为二次项系数,上述函数实际是二次函数的反函数,由于最大转动时间是由人为决定在最大量程下它转多少时间合适,然后不同的量程下所用的时间,是根据经验及实际效果,人为设定二次函数是一种指针平滑的计算方式,并确认参数a,在计算得到参数a后,则任意表盘的指针每次需要转动的角度x和需要转动的总时间y之间的通用二次函数为y=a*x1/2 。
S2,实时判断指针显示位置是否需要变化,当判断需要变化时,即指针需要转动,执行S3步骤,当不需要变化时,即指针不需要转动,重新判断指针显示位置是否需要变化。
S3,当指针角度变化时,接受指针需要转动到的目标位置的信息,从而可以根据指针要转动到的目标位置和当前位置,确定指针实际需要转动的角度φ实,并根据上述通用二次函数y=a*x1/2,求出转动上述实际需要转动的角度φ实所实际需要转动的总时间T实=a*φ实 1/2;另外,由于指针每秒的刷新次数为f,因此可以计算在需要转动的时间T实内,指针刷新总次数F=f*T实,同时,指针刷新计数n开始计数,指针刷新计数n记录的是指针实际的刷新次数;并且,可以得到指针每刷新一次的时间为T实/F。
S4,增加一次指针刷新计数n,判断指针刷新计数n是否等于所述指针刷新总次数F。
S5,当判断指针刷新计数n等于指针刷新总次数F,即表明,指针转动的时间已达到转动到目标位置所需要的转动时间,此时指针位于目标位置,然后将刷新计数n清零,执行S2步骤,重新判断指针显示位置是否需要变化。
S6,当判断指针刷新计数n不等于指针刷新总次数F,即表明,指针转动的时间尚未达到转动到目标位置所需要的转动时间。
因此为了确认每一次指针刷新时,指针移动到的位置,可定义不同时间t下,指针转动的角度φt和该时间t之间的第二二次函数或三角函数,优选建立它们的二次函数,即定义一次指针转动所需的总时间中的部分时间t与该部分时间t内指针转动的角度φt之间的第二二次函数,优选,该部分时间t与该部分时间内所述指针转动的角度φt和之间的第二二次函数为φt=c*t1/2(该公式表示的是在某一次指针的目标位置需要改变时,从初始位置转动到目标位置所需要的总时间中的任一段时间t和该段时间t内指针转动角度之间的关系),其中c为二次项系数,为常数,且可得c=φt/t1/2。
根据该部分时间t与对应次目标位置改变时指针需要转动的总时间的关系(该部分时间t是对应次目标位置改变时需要转动的总时间的部分时间)以及某一次目标位置改变指针需要转动的总时间由最大量程角度φmax和对应的最大转动时间T之间的第一二次函数决定,所有表盘中的最大量程角度φmax和对应的最大转动时间T满足φt=c*t1/2,可得φmax=cT1/2,得c=φmax/T1/2,将公式T=a*φmax 1/2可得到,c=[φmax/(a*φmax 1/2)1/2],进而可得到某一时间t时,指针的转动角度φt的计算公式为φt=[φmax/(a*φmax 1/2)1/2]*t1/2。
进一步,根据第二二次函数计算出第n次刷新时,指针的转动角度φt,具体的,由于指针每刷新一次的时间为T实/F,则第n次刷新时,指针转动的时间t=n*T实/F=n/f,将其带入公式φt=[φmax/(a*φmax 1/2)1/2]*t1/2,则计算出指针第n次刷新时的转动角度φt=[φmax/(a*φmax 1/2)1/2]*(n/f)1/2,其中f为指针每秒刷新次数,此位置即指针当前刷新时要移动到的位置,并使指针移动到该转动角度对应的位置。
S7,判断指针的目标位置是否有新的变化;
S8,当判断指针的目标位置有新的变化时,执行S3步骤;
S9,当判断指针的目标位置没有新的变化时,执行S4。
本专利同时揭示了实现上述方法的同界面多表盘指针平滑转动控制系统,如附图2所示,包括函数确定单元、指针状态判断单元、第一计算单元、第一判断单元、第一结果执行单元、第二结果执行单元以及第二判断单元。
所述函数确定单元用于定义所有表盘中的最大量程角度φmax和对应的最大转动时间T之间的第一二次函数,求出第一二次函数的二次项系数、一次项系数及常数,并得到任意表盘每次需要转动的角度x和需要转动的总时间y之间的通用二次函数。
所述指针状态判断单元用于判断指针显示位置是否需要变化,当需要变化时,发信号给第一计算单元,当不需要变化时,重新判断指针显示位置是否需要变化。
所述第一计算单元用于根据指针要转动到的目标位置,确定指针实际需要转动的角度φ实,并根据上述任意表盘的指针每次需要转动的角度和需要转动的时间之间的通用二次函数,求出实际需要转动的总时间T实以及在实际需要转动的总时间T实内,指针刷新总次数F,同时,指针刷新计数n开始计数。
所述第一判断单元用于增加一次指针刷新计数n,判断指针刷新计数n是否等于指针刷新总次数F。
所述第一结果执行单元,用于当判断指针刷新计数n等于指针刷新总次数F,指针位于目标位置,刷新计数n清零,并发信号给所述指针状态判断单元。
所述第二结果执行单元用于当判断指针刷新计数n不等于指针刷新总次数F,定义不同时间t下,指针转动的角度φt和该部分时间t之间的第二二次函数,根据某一次目标位置改变指针需要转动的总时间由最大量程角度φmax和对应的最大转动时间T之间的第一二次函数决定,得到某一时间t时,指针的转动角度φt的计算公式,并根据上述公式计算出第n次刷新时,指针的转动角度φt,并使指针移动到该位置。
所述第二判断单元用于判断指针的目标位置是否有新变化,并当判断指针的目标位置有新变化时,发信号给所述第一计算单元;当判断指针的目标位置没有新变化时,发信号给所述第一判断单元。
本发明尚有多种实施方式,凡采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。
Claims (4)
1.同界面多表盘指针平滑转动控制方法,其特征在于:包括如下步骤:
S1,定义所有表盘中的最大量程角度φmax和对应的最大转动时间T之间的第一二次函数,求出第一二次函数的二次项系数、一次项系数及常数,得到任意表盘的指针每次需要转动的角度x和需要转动的总时间y之间的通用二次函数;
S2,判断指针显示位置是否需要变化,当需要变化时,执行S3步骤,当不需要变化时,重新判断指针显示位置是否需要变化;
S3,根据指针要转动到的目标位置,确定指针实际需要转动的角度φ实,并根据S1中通用二次函数,求出实际需要转动的总时间T实以及在实际需要转动的总时间T实内,指针刷新总次数F,同时,指针刷新计数n开始计数;
S4,增加一次指针刷新计数n,判断指针刷新计数n是否等于指针刷新总次数F;
S5,当判断指针刷新计数n等于指针刷新总次数F,指针位于目标位置,刷新计数n清零,执行S2步骤;
S6,当判断指针刷新计数n不等于指针刷新总次数F,定义一次指针转动所需的总时间中的部分时间t与该部分时间t内指针转动的角度φt之间的第二二次函数,根据任一表盘的最大量程角度和对应的最大转动时间满足所述第二二次函数及第一二次函数,计算出所述第二二次函数的二次项系数、一次项系数及常数,得到该部分时间t与该部分时间t内指针的转动角度φt的通用关系式,并根据上述通用关系式计算出第n次刷新对应的时间内,指针的转动角度φt,并使指针移动到该位置;
S7,判断指针的目标位置是否有新变化;
S8,当判断指针的目标位置有新变化时,执行S3步骤;
S9,当判断指针的目标位置没有新变化时,执行S4。
2.根据权利要求1所述的同界面多表盘指针平滑转动控制方法,其特征在于:所述最大量程角度φmax和对应的最大转动时间T之间的第一二次函数为T=a*φmax 1/2,其中a为二次项系数,则任意表盘的指针每次需要转动的角度x和需要转动的总时间y之间的通用二次函数为y=a*x1/2 。
3.根据权利要求2所述的同界面多表盘指针平滑转动控制方法,其特征在于:在所述S6步骤中,所述指针转动的角度φt和该部分时间t之间的第二二次函数为φt=c*t1/2,c为二次项系数,并得到某一时间t时,指针的转动角度φt的计算公式为φt=[φmax/(a*φmax 1/2)1/2]*t1/2,计算得到第n次刷新时,指针的转动角度φt=[φmax/(a*φmax 1/2)1/2]*(n/f)1/2,其中f为指针每秒刷新次数。
4.同界面多表盘指针平滑转动控制系统,其特征在于:包括
函数确定单元,用于定义所有表盘中的最大量程角度φmax和对应的最大转动时间T之间的第一二次函数,求出第一二次函数的二次项系数、一次项系数及常数,并得到任意表盘每次需要转动的角度x和需要转动的总时间y之间的通用二次函数;
指针状态判断单元,用于判断指针显示位置是否需要变化,当需要变化时,发信号给第一计算单元,当不需要变化时,重新判断指针显示位置是否需要变化;
第一计算单元,用于根据指针要转动到的目标位置,确定指针实际需要转动的角度φ实,并根据上述通用二次函数,求出实际需要转动的总时间T实以及在实际需要转动的总时间T实内,指针刷新总次数F;同时,控制指针刷新计数n开始计数;
第一判断单元,用于增加一次指针刷新计数n,判断指针刷新计数n是否等于指针刷新总次数F;
第一结果执行单元,用于当判断指针刷新计数n等于指针刷新总次数F,指针位于目标位置,刷新计数n清零,并发信号给所述指针状态判断单元;
第二结果执行单元,用于当判断指针刷新计数n不等于指针刷新总次数F,定义一次指针转动所需的总时间中的部分时间t与该部分时间t内指针转动的角度φt之间的第二二次函数,根据任一表盘的最大量程角度和对应的最大转动时间满足所述第二二次函数及第一二次函数,计算出所述第二二次函数的二次项系数、一次项系数及常数,得到该部分时间t与该部分时间t内指针的转动角度φt的通用关系式,并根据上述通用关系式计算出第n次刷新对应的时间内,指针的转动角度φt,并使指针移动到该位置;
第二判断单元,用于判断指针的目标位置是否有新变化,并当判断指针的目标位置有新变化时,发信号给所述第一计算单元;当判断指针的目标位置没有新变化时,发信号给所述第一判断单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711090316.4A CN107797840B (zh) | 2017-11-08 | 2017-11-08 | 同界面多表盘指针平滑转动控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711090316.4A CN107797840B (zh) | 2017-11-08 | 2017-11-08 | 同界面多表盘指针平滑转动控制方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107797840A CN107797840A (zh) | 2018-03-13 |
CN107797840B true CN107797840B (zh) | 2020-12-08 |
Family
ID=61549437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711090316.4A Active CN107797840B (zh) | 2017-11-08 | 2017-11-08 | 同界面多表盘指针平滑转动控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107797840B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189520A (zh) * | 2018-07-27 | 2019-01-11 | 浙江中科领航汽车电子有限公司 | 一种基于qml动画属性实现汽车仪表指针平滑转动的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004325155A (ja) * | 2003-04-23 | 2004-11-18 | Calsonic Kansei Corp | 車両計器装置の検査方法および検査装置並びに車両計器装置用検査プログラム |
CN103439660A (zh) * | 2013-08-23 | 2013-12-11 | 江苏新通达电子科技股份有限公司 | 一种用于测试汽车仪表步进电机转动的方法 |
CN106357176A (zh) * | 2016-09-28 | 2017-01-25 | 上海雷尼威尔技术有限公司 | 智能农机仪表指针转动的平滑处理方法 |
CN106406360A (zh) * | 2016-08-31 | 2017-02-15 | 惠州华阳通用电子有限公司 | 一种虚拟仪表指针旋转控制方法及装置 |
-
2017
- 2017-11-08 CN CN201711090316.4A patent/CN107797840B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004325155A (ja) * | 2003-04-23 | 2004-11-18 | Calsonic Kansei Corp | 車両計器装置の検査方法および検査装置並びに車両計器装置用検査プログラム |
CN103439660A (zh) * | 2013-08-23 | 2013-12-11 | 江苏新通达电子科技股份有限公司 | 一种用于测试汽车仪表步进电机转动的方法 |
CN106406360A (zh) * | 2016-08-31 | 2017-02-15 | 惠州华阳通用电子有限公司 | 一种虚拟仪表指针旋转控制方法及装置 |
CN106357176A (zh) * | 2016-09-28 | 2017-01-25 | 上海雷尼威尔技术有限公司 | 智能农机仪表指针转动的平滑处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107797840A (zh) | 2018-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108759835B (zh) | 一种定位方法、装置、可读存储介质及移动终端 | |
AU2006330744B2 (en) | Method and apparatus of obtaining improved location accuracy using magnetic field mapping | |
CN105527009B (zh) | 一种具有自校准功能的称重系统及其方法 | |
EP2620916A2 (en) | Visualization of uncertain times series | |
JP3256332B2 (ja) | 距離計測方法ならびに距離計測装置 | |
US20150355337A1 (en) | GNSS Mobile Base Station and Data Collector with Electronic Leveling | |
CN102607684B (zh) | 一种体重管理信息控制系统及体重管理信息显示方法 | |
US10557870B2 (en) | Apparatus and method for time correlated signal acquisition and viewing | |
CN107797840B (zh) | 同界面多表盘指针平滑转动控制方法及系统 | |
CN103234504A (zh) | 一种误差标定、补偿方法及其计算机程序、可读介质 | |
CN110208589A (zh) | 一种时域信号的波形测量方法及测量装置、数字示波器 | |
CN111327876A (zh) | 目标跟踪显示方法、装置、电子设备及机器可读存储介质 | |
CN109335443A (zh) | 一种货架定位系统、方法和装置 | |
CN103134941B (zh) | 显示仪表盘指针转动的平滑处理方法 | |
CN115531875A (zh) | 虚拟场景缩放方法、装置、存储介质与电子设备 | |
EP2889582A1 (en) | Information management system | |
CN115495038A (zh) | 音频调整方法、装置、电子设备及可读存储介质 | |
CN114391822A (zh) | 数据修正方法、数据修正装置、电子设备和可读存储介质 | |
EP3021081A1 (en) | Display control device | |
CN103838660B (zh) | 一种提示角度调整的方法及电子设备 | |
EP3655723B1 (en) | Device and method for combined altitude display | |
CN108318723B (zh) | 一种波形缩放方法、装置及系统 | |
CN115060945A (zh) | 光标测量方法、系统、终端设备及介质 | |
CN110377186B (zh) | 一种虚拟键盘的生成方法及装置 | |
CN111146986A (zh) | 磁编码器的位置定位方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |