CN102468827B - 一种任意波形编辑方法及装置 - Google Patents

一种任意波形编辑方法及装置 Download PDF

Info

Publication number
CN102468827B
CN102468827B CN201010531119.3A CN201010531119A CN102468827B CN 102468827 B CN102468827 B CN 102468827B CN 201010531119 A CN201010531119 A CN 201010531119A CN 102468827 B CN102468827 B CN 102468827B
Authority
CN
China
Prior art keywords
waveform
point
voltage
sequence number
starting point
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
Application number
CN201010531119.3A
Other languages
English (en)
Other versions
CN102468827A (zh
Inventor
王悦
王铁军
李维森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rigol Technologies Inc
Original Assignee
Rigol Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Rigol Technologies Inc filed Critical Rigol Technologies Inc
Priority to CN201010531119.3A priority Critical patent/CN102468827B/zh
Publication of CN102468827A publication Critical patent/CN102468827A/zh
Application granted granted Critical
Publication of CN102468827B publication Critical patent/CN102468827B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例提供一种任意波形编辑方法及装置,所述方法包括:获取用户输入的波形起始点的序号和电压;获取用户输入的波形终止点的序号和电压;在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。所述装置包括:获取单元,用于获取用户输入的波形起始点的序号和电压,并获取用户输入的波形终止点的序号和电压;波形生成单元,用于在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。本发明实施例可以方便、快捷的生成起始点到终止点之间的任意波形。

Description

一种任意波形编辑方法及装置
技术领域
本发明涉及电子技术信号产生装置领域,尤其涉及一种任意波形编辑方法及装置。
背景技术
信号发生器是一种用于模拟真实信号输出的装置,随着电子技术的发展,从当初功能单一的信号产生装置——如正弦波发生器、脉冲发生器等,逐渐演变为集多种功能于一身的多功能装置。目前,一般信号发生器均能产生正弦信号、方波、脉冲波、三角波、噪声和内置任意波。不管内置波形有多少种,总是有限的,而用户需要的波形却不一定包含在有限的内置波形集合中,从而提出了一个新的需求——由用户根据需要任意确定信号的形状。为满足这一需求,各信号发生器厂家均将任意波编辑功能作为多功能信号发生器必备的功能。而实现编辑的方式主要有两种,一是利用计算机强大的图形处理能力,开发用于在PC上编辑波形的上位机软件,作为信号发生器的附件随机赠送;二是在下位机上提供简单的任意波形编辑功能,使用户可以逐点编辑波形。而Tek公司在AFG3000中提供了一种行运算的方式,允许用户编辑位于指定点之间的大块数据。
采用上位机软件进行任意波形编辑,可以实现复杂的波形编辑功能,而且操作方便快捷,但是在现场测试时,如果需要编辑波形,则工程师不仅要背着仪器,还必须要背着电脑、连接线等设备,这其实无谓地增加了工程师们的工作负担。
在下位机上提供点编辑的方式,虽然可以实现在下位机编辑任意波形,这种方式编辑几个特征点还可以,但当需要编辑的特征点比较多时,逐点编辑显得繁琐而低效。
Tek公司提供的行运算方式,不失为一种比较好的解决方案,它让用户输入起始点编号和DAC(digital-to-analog converter,数字模拟转换器)码值、终止点编号和DAC码值,然后按下”执行”菜单,则自动在起点和终点按照线性插值的方式,生成批量数据。但该方法主要存在如下不足:编辑过程中纵坐标对应的是DAC码值,是数字量,而输出时是模拟量(电压),这样用户设定起点和终点的DAC码值时,需要自己计算对应的电压是多少,不直观也不方便,处理速度很慢。
发明内容
本发明实施例提供一种任意波形编辑方法及装置,以方便、快捷的生成起始点到终止点之间的任意波形。
一方面,本发明实施例提供了一种任意波形编辑方法,所述方法包括:获取用户输入的波形起始点的序号和电压;获取用户输入的波形终止点的序号和电压;在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。
另一方面,本发明实施例提供了一种任意波形编辑装置,所述装置包括:获取单元,用于获取用户输入的波形起始点的序号和电压,并获取用户输入的波形终止点的序号和电压;波形生成单元,用于在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。
上述技术方案具有如下有益效果:因为采用获取用户输入的波形起始点的序号和电压;获取用户输入的波形终止点的序号和电压;在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据的技术手段,所以达到了方便、快捷的生成起始点到终止点之间的任意波形的技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一种任意波形编辑方法流程图;
图2为本发明实施例想要编辑的波形;
图3为本发明实施例原始图形;
图4为本发明实施例预览执行后的波形;
图5为本发明实施例进行线性插值后的波形;
图6为本发明实施例最终波形;
图7为本发明实施例对图6进行标注的示意图;
图8为本发明实施例块编辑基本流程图;
图9为本发明实施例波表初始化的流程图;
图10为本发明实施例波表初始化流程图;
图11为本发明实施例块编辑线性插值流程图;
图12为本发明实施例的块删除示意图;
图13为本发明实施例的块删除流程图;
图14为本发明实施例的极值点压缩算法流程图;
图15为本发明实施例一种任意波形编辑装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明实施例一种任意波形编辑方法流程图,所述方法包括:
101、获取用户输入的波形起始点的序号和电压。
可选的,所述获取用户输入的波形起始点的序号和电压之前,所述方法还可以包括:获取用户输入的波形的总体参数,所述总体参数包括:可编辑点数、电平上下限、插值方式。用户可以直接输入模拟电压值,单位可选V和mV,比直接输入DAC数字码值更加直观。
102、获取用户输入的波形终止点的序号和电压。
103、在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。
可选的,所述在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据之前,所述方法还可以包括:根据所述用户输入的波形起始点的序号和电压和波形终止点的序号和电压,通过内存到显存之间的数据映射,实时生成预览波形。可选的,所述按照线性插值的方式生成任意波形数据后,所述方法还可以包括:在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,设置删除起始点和删除终止点以删除块数据。可选的,所述按照线性插值的方式生成任意波形数据后,所述方法还可以包括:在生成的所述任意波形数据上绘制标注。可选的,所述按照线性插值的方式生成任意波形数据后,所述方法还可以包括:采用极值点压缩算法,将生成的所述任意波形数据压缩到屏幕上显示。
现有技术主要存在的任意波形编辑方法不直观也不方便,导致处理速度很慢的问题,另外,在行运算下并没有提供整块删除的功能,如果用户需要删除刚执行的行运算结果,需要退出行运算菜单,进入剪切菜单,对要删除的波形执行剪切功能才能删除,操作比较繁琐;其次它的波形显示是采用窗口显示方法,每次仅显示进入窗口内的波形点,而这对于多个特征点比较分散的波形来说,没办法在同一个窗口内显示。本发明上述方法实施例旨在提出一种更加直观方便的任意波形编辑方式,允许用户设置起始点序号和电压、终止点序号和电压,在用户选择”执行”之前,实时生成预览波形,并在用户”执行”之后,在起始点和终止点之间按照线性插值的方式生成任意波数据。同时提供指定起点和终点的删除功能。所有操作均在下位机执行,整个编辑过程均不需要计算机介入,让用户在现场调试时,既不必增加设备,也不必花费太多时间来逐点进行编辑。
本实施例采用了块编辑的方式,让用户可以方便的在下位机实现复杂波形的编辑,下面先简单介绍块编辑的菜单安排、操作方式,并附以操作实例,然后用流程图详细说明具体实现细节。
在本实施例中通过如下步骤可进入块编辑界面:“Arb→创建波形→修改插值类型为线性插值→块编辑”或者“Arb→编辑波形→修改插值类型为线性插值→块编辑”,其中通过创建波形和编辑波形进入的差别仅在于:创建波形可以选择设置可初始化点数,而编辑波形是对上一次编辑波形的再编辑,无法重设初始化点数,对于编辑方式来说并无差别。图2为本发明实施例想要编辑的波形:下面看看怎么一步步得到如图2所示的波形。
首先,按键盘“Arb”键切换信号源到任意波界面,选择“创建波形”菜单,修改初始化点数为1000,修改插值方式为线性插值,电平上限为2.5V,电平下限为-2.5V,默认的波形点数的电压值为电平下限-2.5V,得到原始图形如图3所示。
其次,选择“块编辑”菜单,进入块编辑界面。设置X1等于1,Y1等于2.5V,X2等于100,Y2等于2.5V,则预览执行后的波形如图4所示。
按下“执行”菜单,则实际对X1和X2之间的波形点进行线性插值后的波形如图5所示。
可见实际插值后的波形与预览波形一致。依次按照上述步骤进行编辑,设置合理的X1、Y1、X2、Y2值,进行插值,并得到了最终波形,如图6所示。
如图7所示,为本发明实施例对图6进行标注的示意图。用图7说明波形上的各种标注线条的具体含义:这些标注非常重要,使用户可以直观的进行波形编辑:
①表明当前编辑点的电平值,图中为第800个点对应的电平值为2.5V;
②表明0电平所处的位置;
③这条不带箭头的竖线表明起始点所处的位置,当X1、Y1菜单被选中时,其上有箭头,表明是当前正在操作的位置;
④虚线表示在起点(X1)和终点(X2)之间执行线性插值后的预览波形,在用户执行之前可以先预览波形,而不必真正执行后才能看到波形;
⑤带箭头的竖线表明终点所处的位置,因为当前正在操作终点电平(Y2),所以其上有箭头,表明是当前正在操作的项;
⑥编辑好的波形,真实波表的缩放。
本发明实施例块编辑基本流程图如图8所示,具体包括:
801、用户输入可编辑点数、电平上下限、插值方式等总体参数。
802、根据用户输入的可编辑点数扩展为逻辑内部DDS可接受的波表点数,进行波表初始化。
803、用户设置块编辑相关参数,如起止点位置和电压。
804、判断是否执行插值,如是,则转步骤805;如否,则转步骤806。
805、在起始点和终止点之间进行线性插值,然后转步骤808。
806、判断是否删除块,如是,则转步骤807;如否,则转步骤808。
807、删除起始点和终止点之间的数据,然后转步骤808。
808、将最终的真实波表点数压缩到屏幕上显示。
809、根据设定的起止点参数信息,绘制标注、预览波形。
本实施例的块编辑,分为三大部分,一是各种参数输入的控制,可通过前面板上的键盘、旋钮修改起点和终点的位置及电压,通过前面板的菜单软键可执行插值和块删除;二是真实波表在屏幕上的显示;三是各种标注的绘制。其中,参数输入控制属于键盘驱动的操作,在此不赘述。
如图9所示,为本发明实施例的任意波编辑前后结构示意图,本实施例的任意波编辑在结构上可以看作一个前后台操作的结构:前台程序主要是对显示数据存储区的操作,对应到屏幕上的166×93个像素的波形显示区域,保存的是各波形点的电压值映射到屏幕上的坐标值,并负责完成各种标准的绘制。后台程序主要是对真实数据存储区的操作,最多512K个波形点,每个点占据16bit,负责完成初始波表的初始化、可编辑点与不可编辑点的区分、线性插值操作、块删除操作等直接对真实数据点进行的操作。前后台程序通过内存到显存的数据映射关系进行联系。
1,波表初始化
如图9所示,为本发明实施例波表初始化的流程图。用户设置好初始化点数、电压上下限后即可进行波表初始化。由于FPGA(Field-Programmable Gate Array,现场可编程门阵列)内部实现的DDS(Digital Display Scope,数字显示示波器)要求波表长度需要满足诸如16384、32768等2的整数次幂,所以即使用户设置的点数为2,最终波表也会自动扩展为16384个点,以便满足FPGA内部DDS的波表长度要求。那么,这里用户设置的初始点数2实际上并不是最终波表的长度,而是用户可编辑点的数量。对于自己编辑的波形,用户总是最关心自己所设置的特征点的信息,也就是可编辑点的信息。那么将用户可编辑点在整个波表中如何分布将关系到能否将所有特征点最大程度的占据整个波表,如果将可编辑点依次放在整个波表的前面或者后面,如将两个可编辑点放在16384个波表点数的第1、2个点,或者第16383、16384个点,则用户的编辑能影响的始终就只能是这两个点。显然,对于一个长达16384个点波表来说,两个点的特征将非常不明显。本实施例的采用的策略是:将可编辑点均匀分布在总波形点内。这样,即使在上述的极限条件下(可编辑点2个,总点数16384个),虽然也只能修改两个点的电压值,但通过块编辑可以影响至少8192个点。不管是可编辑点还是不可编辑点,在内存中都是占据16bit,而用户直接操作的是始终是可编辑点,那么怎么从众多的数据点中定位哪些是用户可编辑点呢?最直接的想法是为每个点设置一个标志,用该标志表明是否是可编辑点。如果为每个点定义一个变量来保存该标志,则最终波表有多长,就需要多少个标志变量,这对内存显然是一个比较大的浪费。本实施例中使用的DAC的垂直分比率是14bit,因此波表中16bit的各波形点实际上进入DAC后,最高两位是没有用的,利用这一点,本实施例将波表中数据的最高位是否为1来表明对应点是否可编辑点。
如图10所示,为本发明实施例波表初始化流程图,具体包括:
1001、由用户设置的编辑总点数EditPts得到实际波表点数TotalPts。
由用户设置的可编辑点数EditPts得到实际波形点数TotalPts的原则为:EditPts<2^14,则TotalPts为2^14;2^14<EditPts<2^15,则TotalPts为2^15;依次类推。
1002、得到编辑点分布到总点数中的步进PtStep=TotalPts/EditPts。
1003、将TotalPts个点的初始值均置为0。
1004、以PtStep为步进从第1个点开始设置对应波形点的最高位为1,表明为可编辑点。
2,线性插值
当用户设置好起始点和终止点序号和电压后,按“执行”菜单即开始进行块编辑的插值操作。如图11所示,为本发明实施例块编辑线性插值流程图,具体包括:
1101、将起止点电压转换为码值。
1102、将起止点序号转换为对应内存中的位置。
1103、(Y2-Y1)/(X2-X1)计算电压步进VoltStep,X2-X1计算要插值的点数PtDiff。
1104、以VoltStep为步进,对位于起始点和终止点之间共PtDiff个点进行赋值。
由于用户设置的起始点和终止点序号是在可编辑点中的序号,而进行线性插值是对整个波表的操作,因此需要将起始点和终止点序号对应到在内存中真实波表的位置。由于前面初始化时,已经将可编辑点做了记号,因此这里寻找可编辑点在波表中的位置时,只需要遍历查找整个波表即可。如,起始点序号为3,整个波表长度为16384,则循环变量从0开始在波表中查找最高位为1的点,每找到一个就将计数变量增加,直到计数变量等于3,则跳出循环,此时循环变量的值即为第3个可编辑点在波表中的位置。为了更加直观,用户可设置的起始点和终点电压参数均用以V为单位的模拟电压给出,如1.5V等,而波表中存在的形式是DAC码值,那么如何将用户设置的以V为单位的电压值对应到波表中的DAC码值呢?本实施例采用如下公式实现:
其中,16383为DAC垂直分辨率。上述公式的含义是:将每个点的电压都归一化到0——16383之间。
起始编辑点点和终止编辑点之间的点的电压采用简单的线性插值方式生成,线性插值公式如下:
y=kx+b ……(2)
其中,x为点序号,y为对应点序号的DAC码值。
3,块删除操作
用户设置好起始点和终止点位置后,按下“删除”菜单,即可删除处于起点和终点之间的波形数据,被删除的波形在波表中不再存在。本实施例采用的块删除方法为:将终止位置之后的波形替换起始位置之后的波形,并将删除掉的点清0。如图12所示,为本发明实施例的块删除示意图。
如图13所示,为本发明实施例的块删除流程图,具体包括:
1301、根据起止点序号找到对应内存中的位置,分别记为StartPos,EndPos。
1302、计算要删除的总点数DelPts,计算要删除的可编辑点数DelEditPts。
1303、计算终止位置之后有多少个点MoveDataNum=波形总点数-终止位置。
1304、将终点位置之后的所有点向前移动MoveDataNum个点。
1305、计算删除后剩余点数,用原始总点数-DelPts,根据剩余点数得到新的波表长度,计算原则和波表初始化时一样。
1306、将原来剩余的点数之后的波表清0。
这里有两点需要注意:一是只要起始点和终点序号不一样,删除后,可编辑点一定会减少,而波表总长度却不一定会减少。比如,可编辑点数为1000<2^14,则实际波表长度为2^14;要删除的起始点为100,终止点为200,则删除后,可编辑点会变成900,仍然小于2^14,所以实际波表长度仍然为2^14。二是删除后,为尽量保持原来用户编辑的点,不会再将可编辑点在总波表中均匀进行分布。
4,内存到显存的映射
本实施例的显示屏(例如LCD屏)的列数远远少于实际波表长度,因此如果想将内存中的所有数据都一一对应的搬到屏幕上显然是不可能的,所以不可避免需要使用压缩算法。常用的压缩算法是进行等间隔抽点:根据原始长度和压缩后的长度计算一个抽点步进,然后用该步进从原始波表中逐点取点。这种算法实现简单,一定程度上可以满足要求。但是对于用户编辑的任意波形,如果采用这种算法,很可能每次都跳过了用户的特征点,导致屏幕上根本看不到任何用户编辑的特征点。如果采用窗口显示法:每次仅显示进入窗口内的数据。这样虽然能够分段显示所有点,但没办法将相隔超过窗口长度的特征点同时显示,这样也不方便用户编辑。本实施例采用的算法是:利用极值点压缩方法,将尽可能多的波形特征点保存下来。这种算法虽然最终仍然受限于屏幕像素分辨率,但正常情况下,用户在下位机编辑时,能手动编辑100个特征点的情况并不多,大多数情况下只需要编辑十几个特征点,因此该算法在大多数情况下能够满足要求。
如图14所示,为本发明实施例的极值点压缩算法流程图,具体包括:
1401、设原始波表长度为BigDotNum,压缩后的长度为SmallDotNum。
1402、先将BigDotNum个点压缩成SmallDotNum*2-2个点,记为SmallDotNum2。
1403、计算压缩倍率Multiple=BigDotNum/SmallDotNum2*2。
1404、在原始波表中以Multiple为步进,每Multiple个点压缩出最大、最小两个点。
1405、再将SmallDotNum2个点合并成SmallDotNum个点。
经过压缩后,将大波表压缩成了屏幕上可以显示的长度后,还需要将电压值映射为屏幕上的坐标,才能正确在屏幕上显示。横坐标一一对应即可,纵坐标映射公式如下:
纵坐标值=显示区域右下角坐标-电压值/16383*显示区域高度 ……(3)
5,各种标注及执行块编辑前预览波形的绘制
如前所述,在波形上会绘制各种标注,方便用户编辑。
(1)代表0电平的虚线:绘制在波形显示区域中间,由显示区域左上角和右下角坐标可以确定0电平虚线的起点和终点。
(2)当前编辑点的电平值:用相对于0电平虚线位置的竖线来表示,竖线的横坐标为0电平虚线的起点横坐标,竖线的起始点纵坐标为0电平虚线的起始点纵坐标,竖线的终止点纵坐标根据当前编辑点的电压值和高低电平算出,计算方法如下:
竖线的终止点坐标=显示区域中点纵坐标-当前点电平值/(高电平-低电平)×显示区域高度。
(3)起止点位置标注:先根据前面所说的方法,由可编辑点序号找到在内存中的真实波表数据内的位置,然后由该位置计算在屏幕上的位置,计算方法如下:
屏幕上的相对位置=波表内的位置/波表总长度×波形显示区域能显示的波形点数(166)。
横坐标=显示区域左上角横坐标+屏幕上的相对位置。
标注竖线的上纵坐标=显示区域左上角纵坐标。
标注竖线的下纵坐标=显示区域右下角纵坐标。
并在当前在调点的标注上绘制小箭头,表明正在修改该点的位置或者电压值。
(4)用虚线表示的预览波形:在真正执行块编辑前,预先显示起点和终点之间进行块编辑后的波形轨迹。直接的作法是在用户按下“执行”之前先自动执行一次块编辑操作,然后,将块编辑之后生成的波形映射到屏幕上用虚线进行显示即可。但这种作法,要求用户一修改起点或终点的任何参数就进行一次插值算法,显然比较耗时。考虑到最终显示到屏幕上时都是坐标值,因此可以直接在坐标这一块做文章。本实施例的作法如下:
根据起始点位置和电压值计算出起点在屏幕上的横坐标Sx和纵坐标Sy,再根据终止点位置和电压值计算出终止点在屏幕上的横坐标Ex和纵坐标Ey,用如下公式计算纵坐标步进:
纵坐标步进=(Ey-Sy)/(Ex-Sx)。
在Ex和Ey之间每隔1个点求出横纵坐标,并将该点绘制到屏幕上。
本发明上述实施例的技术效果如下:1,采用块编辑方式,能够方便快捷的生成起始点和终止点的波形,避免了逐点编辑的繁琐。2,和用户的接口参数上采用模拟电压值来控制波形点在波表中的相对位置,比用数字DAC码值来表示更加直观,比如当用户需要特征点以严格的电压值输出的时候,采用直接设置电压的方式就比较方便了。3,采用极值点压缩算法,让尽可能多的特征点同时显示,解决了分段显示时,一次只能看到部分特征点的问题。4,用合理的箭头标注,辅助用户进行编辑,并在真正执行块编辑前,可以用虚线预览波形,方便用户做出是否插值的判断。5,块删除功能的增加,使用户可以大块删除不再需要要的特征点。6,界面简洁直观,利于人机交互。
对应于上述方法实施例,如图15所示,为本发明实施例一种任意波形编辑装置结构示意图,所述装置包括:
获取单元151,用于获取用户输入的波形起始点的序号和电压,并获取用户输入的波形终止点的序号和电压;
波形生成单元152,用于在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。
可选的,所述获取单元151,还用于在获取用户输入的波形起始点的序号和电压之前,获取用户输入的波形的总体参数,所述总体参数可以包括:可编辑点数、电平上下限、插值方式。
可选的,所述波形生成单元可以包括:预览波形生成模块,用于在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据之前,根据所述用户输入的波形起始点的序号和电压和波形终止点的序号和电压,通过内存到显存之间的数据映射,实时生成预览波形。
可选的,所述装置还可以包括:删除单元154,用于所述按照线性插值的方式生成任意波形数据后,在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,设置删除起始点和删除终止点以删除块数据。
可选的,所述装置还可以包括:标注单元155,用于所述按照线性插值的方式生成任意波形数据后,在生成的所述任意波形数据上绘制标注。
可选的,所述装置还可以包括:显示单元153,用于所述按照线性插值的方式生成任意波形数据后,采用极值点压缩算法,将生成的所述任意波形数据压缩到屏幕上显示。
现有技术主要存在的任意波形编辑方法不直观也不方便,导致处理速度很慢的问题,另外,在行运算下并没有提供整块删除的功能,如果用户需要删除刚执行的行运算结果,需要退出行运算菜单,进入剪切菜单,对要删除的波形执行剪切功能才能删除,操作比较繁琐;其次它的波形显示是采用窗口显示方法,每次仅显示进入窗口内的波形点,而这对于多个特征点比较分散的波形来说,没办法在同一个窗口内显示。本发明上述装置实施例旨在提出一种更加直观方便的任意波形编辑装置,允许用户设置起始点序号和电压、终止点序号和电压,在用户选择”执行”之前,实时生成预览波形,并在用户”执行”之后,在起始点和终止点之间按照线性插值的方式生成任意波数据。同时提供指定起点和终点的删除功能。所有操作均在下位机执行,整个编辑过程均不需要计算机介入,让用户在现场调试时,既不必增加设备,也不必花费太多时间来逐点进行编辑。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括上述全部或部分步骤,所述的存储介质,如:ROM/RAM、磁盘、光盘等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种任意波形编辑方法,其特征在于,所述方法包括:
根据用户输入的波形起始点的序号和电压和波形终止点的序号和电压,通过内存到显存之间的数据映射,实时生成预览波形;
获取用户输入的波形起始点的序号和电压;
获取用户输入的波形终止点的序号和电压;
获取用户输入的波形的总体参数,所述总体参数包括:可编辑点数、电平上下限、插值方式,其中,通过波表中数据的最高位是否为1来表明对应点是否为可编辑点,并将可编辑点均匀分布在总波形点内;
在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据。
2.如权利要求1所述方法,其特征在于,所述按照线性插值的方式生成任意波形数据后,所述方法还包括:
在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,设置删除起始点和删除终止点以删除块数据。
3.如权利要求1所述方法,其特征在于,所述按照线性插值的方式生成任意波形数据后,所述方法还包括:
在生成的所述任意波形数据上绘制标注。
4.如权利要求1所述方法,其特征在于,所述按照线性插值的方式生成任意波形数据后,所述方法还包括:
采用极值点压缩算法,将生成的所述任意波形数据压缩到屏幕上显示。
5.一种任意波形编辑装置,其特征在于,所述装置包括:
获取单元,用于获取用户输入的波形起始点的序号和电压,并获取用户输入的波形终止点的序号和电压;
波形生成单元,用于在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据;
其中,所述波形生成单元包括:预览波形生成模块,用于在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,按照线性插值的方式生成任意波形数据之前,根据所述用户输入的波形起始点的序号和电压和波形终止点的序号和电压,通过内存到显存之间的数据映射,实时生成预览波形;
其中,所述获取单元,还用于在获取用户输入的波形起始点的序号和电压之前,获取用户输入的波形的总体参数,所述总体参数包括:可编辑点数、电平上下限、插值方式;
其中,通过波表中数据的最高位是否为1来表明对应点是否为可编辑点,并将可编辑点均匀分布在总波形点内。
6.如权利要求5所述装置,其特征在于,所述装置还包括:
删除单元,用于所述按照线性插值的方式生成任意波形数据后,在所述波形起始点的序号和电压对应的起始点和所述波形终止点的序号和电压对应的终止点之间,设置删除起始点和删除终止点以删除块数据。
7.如权利要求5所述装置,其特征在于,所述装置还包括:
标注单元,用于所述按照线性插值的方式生成任意波形数据后,在生成的所述任意波形数据上绘制标注。
8.如权利要求5所述装置,其特征在于,所述装置还包括:
显示单元,用于所述按照线性插值的方式生成任意波形数据后,采用极值点压缩算法,将生成的所述任意波形数据压缩到屏幕上显示。
CN201010531119.3A 2010-11-03 2010-11-03 一种任意波形编辑方法及装置 Active CN102468827B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010531119.3A CN102468827B (zh) 2010-11-03 2010-11-03 一种任意波形编辑方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010531119.3A CN102468827B (zh) 2010-11-03 2010-11-03 一种任意波形编辑方法及装置

Publications (2)

Publication Number Publication Date
CN102468827A CN102468827A (zh) 2012-05-23
CN102468827B true CN102468827B (zh) 2018-01-16

Family

ID=46072078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010531119.3A Active CN102468827B (zh) 2010-11-03 2010-11-03 一种任意波形编辑方法及装置

Country Status (1)

Country Link
CN (1) CN102468827B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104459233B (zh) * 2013-09-25 2019-01-29 苏州普源精电科技有限公司 一种具有任意波编辑功能的波形产生装置
CN104569517B (zh) * 2013-10-25 2019-06-18 苏州普源精电科技有限公司 一种具有任意波调用功能的波形产生装置
CN105515551B (zh) * 2014-10-14 2020-06-05 普源精电科技股份有限公司 一种具有任意波编辑功能的信号发生器
CN108872902B (zh) * 2018-06-29 2021-05-28 上海东软医疗科技有限公司 波形输出方法和装置
CN110456122B (zh) * 2019-07-22 2021-05-14 国营芜湖机械厂 一种数字波形编辑和对比显示的方法
CN110940841B (zh) * 2019-10-09 2020-12-01 电子科技大学 基于fpga的数字三维示波器快速采集系统
CN113447692B (zh) * 2021-08-31 2021-11-26 深圳市鼎阳科技股份有限公司 具有数据记录功能的示波器及其波形显示方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3649825A (en) * 1969-11-25 1972-03-14 Lucas Industries Ltd Apparatus for function generation by linear interpolation
US3740539A (en) * 1972-02-28 1973-06-19 Tektronix Inc Programmable function generator
CN1959684A (zh) * 2005-10-31 2007-05-09 松下电器产业株式会社 混合信号电路模拟器
US7340357B2 (en) * 2005-05-27 2008-03-04 National Instruments Corporation Arbitrary waveform generator with configurable digital signal processing unit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3649825A (en) * 1969-11-25 1972-03-14 Lucas Industries Ltd Apparatus for function generation by linear interpolation
US3740539A (en) * 1972-02-28 1973-06-19 Tektronix Inc Programmable function generator
US7340357B2 (en) * 2005-05-27 2008-03-04 National Instruments Corporation Arbitrary waveform generator with configurable digital signal processing unit
CN1959684A (zh) * 2005-10-31 2007-05-09 松下电器产业株式会社 混合信号电路模拟器

Also Published As

Publication number Publication date
CN102468827A (zh) 2012-05-23

Similar Documents

Publication Publication Date Title
CN102468827B (zh) 一种任意波形编辑方法及装置
CN102866886B (zh) 一种基于Web的算法动画可视化开发系统
US5999195A (en) Automatic generation of transitions between motion cycles in an animation
CN101572534B (zh) 生物医学信号的波形生成方法及设备
JP3441309B2 (ja) 図的プログラミングにおける機能オブジェクトの表示方法
CN103092585A (zh) 一种用于综合监控软件的图库的组态化设计系统
CN109858161A (zh) 一种基于Midas建模和Matlab转换的Abaqus网格划分方法
CN104462682A (zh) 一种交互式焊接接头坡口图形绘制及参数标注方法
CN110909439A (zh) 一种基于ar的装配方法、装置及终端
CN114816189A (zh) 一种基于云端的工业智能装备远程组态方法
CN101299209B (zh) 一种表格编辑行高亮显示的方法和装置
CN106033334A (zh) 绘制界面元素的方法和装置
CN100511137C (zh) 图标生成装置、计算机可读介质以及生成图标的方法
CN102033751B (zh) Osd屏显的软件适配方法、系统及多媒体终端
CN103179346B (zh) 数字图像处理设备及其控制方法
CN102043628A (zh) Osd应用软件的开发方法、系统及多媒体终端
CN1555008A (zh) 智能虚拟显示器的制作方法
CN112001018A (zh) 一种基于云渲染的高效虚拟仿真实验平台测试方法
CN106843846A (zh) 一种mx框架页面设计器以及设计方法
CN103135891A (zh) 一种用户界面处理的方法及装置
CN108346396A (zh) 一种显示装置及突出显示方法
CN113986445A (zh) 智能交互三维可视化制图系统
CN114065666A (zh) 一种磁性液体密封耐压能力协同仿真分析方法
CN104459233B (zh) 一种具有任意波编辑功能的波形产生装置
CN113468261A (zh) 基于图形编辑引擎构建物联网实体关系的方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant