CN103873037B - 一种具有开关控制功能的电源 - Google Patents
一种具有开关控制功能的电源 Download PDFInfo
- Publication number
- CN103873037B CN103873037B CN201210537416.8A CN201210537416A CN103873037B CN 103873037 B CN103873037 B CN 103873037B CN 201210537416 A CN201210537416 A CN 201210537416A CN 103873037 B CN103873037 B CN 103873037B
- Authority
- CN
- China
- Prior art keywords
- state
- power supply
- output
- module
- group
- 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
Landscapes
- Power Sources (AREA)
Abstract
本发明实施例提供了一种具有开关控制功能的电源,所述电源包括自动开关控制装置,所述自动开关控制装置包括:开关状态编辑单元,用于生成由多组开关状态构成的开关序列,并根据所述开关序列获得开关状态表;时间序列生成单元,用于生成由多组延时时间构成的时间序列,并根据生成的时间序列获得时间序列表;每一组开关状态与每一组延时时间具有映射关系;输出状态控制单元,用于依据所述开关状态表和所述时间序列表中具有映射关系的每一组开关状态与延时时间,在对应的时间控制电源输出信号的开通或关断。该电源可以节约人工,避免手工操作出错,并且实现精确开延时、关延时控制。
Description
技术领域
本发明涉及通用电子测量测试技术领域,具体地涉及一种具有开关控制功能的电源。
背景技术
线性直流电源作为电子设计中必不可少的工具,既可作为供电电源工作,又可作为测量设备工作,在实验室、科研单位、工业等各个领域均有广泛的应用。随着电子器件的数字化日益普遍,原始的线性模拟电源终将逐渐被数字电源所替代,数字电源具有良好的扩展性、较低的成本、较简单的电路、容易量产、性能稳定等特点,通常都具备电压、电流连续可调功能,以及输出开关功能。
输出开关的控制分为两大类,一是通过在输出端子前面增加独立的继电器,从物理上直接断开连接,使输出端子和输出控制回路之间形成断路,从而切断输出,这类方法在早期的电源中使用较为普遍,如大华DH1718E、固纬GPD-3303系列;二是通过DAC控制使输出控制回路稳定工作在0V,从而使输出端子上测量到的电压为0,起到关断输出的效果,这类方法打开输出和关闭输出均使用同一套控制回路,而不必增加物理开关,避免了物理继电器稳定需要的时间,因此响应时间较快,在数字电源中使用较为普遍,如安捷伦的E36XX系列。
不管采用何种电路来进行输出开关的控制,几乎所有的线性直流电源均在前面板提供了特定的按键给用户来控制输出的开关状态。当用户需要打开输出时,可以按下该键,当用户需要关闭输出时,也可以按下该键,通过在前面板上增加各种指示,比如指示灯、屏幕上显示ON/OFF等,来告知用户当前的输出状态。
当用户的应用场景需要不断开关输出时,比如需要对负载进行不断的上电、断电测试,现有线性可编程直流电源通常提供了两种选择,一是用户自己不断的手动按前面板的输出开关控制键;二是利用部分线性电源的可编程特性,利用其远程接口,如USB接口、LAN接口、RS232接口、GPIB接口等,来编写上位机程序,通过发送远程命令的方式来实现反复开关控制。
现有技术的不足至少包括:
当需要长时间的反复上电、断电操作,虽然控制电源输出打开和关闭就两种状态,但是当反复次数变多后,用户全部靠手动来逐个配置,工作量会比较大,浪费人工;此外,操作也会比较繁琐枯燥、易出错,显然是不现实的。而通过远程接口编程实现,不失为一个较好的方法,但是这种方法涉及到远程接口编程、PC、连接线缆等等各种软、硬件环境,当缺少其中之一时,即无法实现,而且通过远程接口发送命令的方式来实现开关,其发送命令的时间受诸如PC当前运行环境、线缆、接口等各种软硬件环境影响,无法实现精确的开延时和关延时。
发明内容
本发明的目的在于,提供一种具有开关控制功能的电源及其开关控制方法,以节约人工,避免手工操作出错,并且不受环境影响,实现精确开延时、关延时控制。
为达上述目的,本发明实施例提供了一种具有开关控制功能的电源,所述电源包括自动开关控制装置,所述自动开关控制装置包括:
开关状态生成单元,用于生成由多组开关状态构成的开关序列,并根据所述开关序列获得开关状态表;
时间序列生成单元,用于生成由多组延时时间构成的时间序列,并根据生成的时间序列获得时间序列表;每一组开关状态与每一组延时时间具有映射关系;
输出状态控制单元,用于依据所述开关状态表和所述时间序列表中具有映射关系的每一组开关状态与延时时间,在对应的时间控制电源输出信号的开通或关断。
本发明实施例提供的上述技术方案的有益技术效果在于:
1、用内建的码型自动生成开关状态,快捷方便;
2、输出组数高达2048组,可以无限循环,可长时间进行输出开、关冲击;
3、无需用户手动控制开关即可自动进行开关状态的切换;
4、无需用户编写上位机程序进行开关控制,可单机自动进行开关控制,应用简单;
5、精确控制开延时、关延时。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的自动开关控制装置的功能框图;
图2为本发明实施例的延时器的整体工作流程图;
图3为本发明实施例的开关状态生成单元的具体功能框图;
图4为本发明实施例中采用的线性反馈移位寄存器原理框图;
图5为本发明实施例的PN9和PN11序列生成流程图;
图6为本发明例的输出状态控制单元的具体功能框图;
图7为本发明实施例的开关状态生成单元的工作流程图;
图8为本发明实施例的输出状态控制单元工作流程图;
图9为本发明实施例的01码和10码的一种生成流程图;
图10为本发明实施例的01码和10码的另一种生成流程图;
图11为本发明实施例的利用PN码生成开关状态表的流程图;
图12为本发明实施例的延时器菜单结构示意图;
图13为本发明实施例的延时器开时主界面;
图14为本发明实施例的延时器编辑主界面;
图15为本发明实施例的停止条件设置菜单;
图16为本发明实施例的状态生成码型选择菜单。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的目的在于:
现有技术无法较好的满足反复上电、断电这一特殊应用的需求,因此本发明实施例设计了自动开关控制装置以满足如下需求:
1、反复打开、关闭输出的需求;
2、所需设备最少化的需求;
3、节约人工的需求;
4、避免手工操作出错的需求;
5、精确开延时、关延时控制的需求。
虽然输出打开和关闭就两种状态,但是当反复次数变多后,用户全部靠手动来逐个配置,工作量会比较大,操作也会比较繁琐枯燥、易出错,因此在自动开关控制装置的基础上本发明实施例还提供了一种快速编辑开关状态的方法,以满足快捷编辑开关状态的需求。
为实现上述需求,本发明实施例在线性电源中内置一个模块,该模块要能够不需要PC控制即可单机运行,还需要实现较好的时间控制,能够分开控制开延时和关延时时间,由于要脱离PC的参与,该模块还需要提供一个比较便捷的开关状态的编辑方法。
本发明实施例利用定时单元10ms产生一次中断,通知自动开关控制装置进行输出状态的改变,利用一一映射的开关状态表和时间序列表,来获得下一个输出状态。而开关状态生成单元和时间序列生成单元分别提供了时间编辑和开关状态编辑的方法。其中,定时单元的定时值可以让用户确定,但是最小值由处理器型号决定。
图1为本发明实施例的自动开关控制装置的功能框图。如图1所示,本发明实施例的一种具有开关控制功能的电源,包括图1示出的自动开关控制装置,该自动开关控制装置包括:
开关状态生成单元110,用于生成由多组开关状态构成的开关序列,并根据开关序列获得开关状态表10;开关状态包括:开状态和关状态;
时间序列生成单元120,用于生成由多组延时时间构成的时间序列,并根据生成的时间序列获得时间序列表20;每一组开关状态与每一组延时时间具有映射关系;
输出状态控制单元130,用于依据开关状态表10和时间序列表20中具有映射关系的每一组开关状态与延时时间,在对应的时间控制电源输出信号的开通或关断。
具体地,开关状态生成单元110,用于提供人机接口,为用户提供开关状态快捷输入的方式,产生开关状态表驻于内存。
具体地,时间序列生成单元120,用于提供人机接口,为用户提供时间序列快捷输入的方式,产生时间序列表驻于内存。具体实施时,时间序列生成单元120,可用于通过手动编辑方式接收用户通过所述电源的物理按键或虚拟按键输入的由多组延时时间构成的时间序列,生成时间序列表;或者按预先设置的开延时时间和关延时时间,对应开关状态表中所有的开状态统一生成相同的开延时时间,以及为所有的关状态统一生成相同的关延时时间,得到时间序列表;还可以根据预设规则按照延迟时间长度单调上升或单调下降方式得到时间序列,生成时间序列表。
在一较佳实施例中,该电源还进一步包括:定时单元140,用于计时,并根据计时时间周期性的产生中断信号(如10ms中断)。定时单元是作为整个系统的时间基准,基准只有一个。时间序列表20指示每个开关状态的实际持续时间,一张表可以有多个时间,每组开关状态都可以在时间序列表中找到自己的时间。该输出状态控制单元130,还用于依次获取每一组开关状态,根据开关状态控制电源输出信号的开通或关断;同时,依据接收到中断信号的次数记录每一组开关状态的持续时间,并在持续时间达到对应的延时时间后,从开关状态表和时间序列表中获取下一组开关状态。
可选的,该装置还可包括参数验证模块150,用于为各种参数的输入提供合法性验证,规范用户的输入行为。
为方便后续说明,将上述“自动开关控制装置”称之为“开关延时器”,简称“延时器”。各个单元又分别拥有多个模块,将在下面详细阐述。
图2为本发明实施例的延时器的整体工作流程图。如图2所示,包括如下步骤:
201、开始;
202、开关状态编辑;
203、时间序列编辑;
204、打开延时器的输出;
205、定时单元中断使能;
206、输出状态控制;
207、结束。
图3为本发明实施例的开关状态生成单元的具体功能框图。如图3所示,该开关状态生成单元110包括:
开关状态自动生成模块310,用于根据编码类型,自动生成由多组开关状态构成的开关序列,并根据该开关序列获得开关状态表;
存取模块320,用于将开关状态自动生成模块310生成的所述开关状态表保存至存储设备或从存储设备读取开关状态表。
可选的,该开关状态生成单元110还可进一步包括:显示模块330,用于显示用户编辑的开关状态,供用户查看所有组数的开关状态,以及显示当前的开关状态;第一验证模块340,用于验证保存该开关状态表时文件名输入是否合法,以及验证获得的开关状态表是否合法;以及手动编辑模块350,用于接收用户通过该电源的物理按键或虚拟按键输入的由多组开关状态构成的开关序列,并根据该开关序列获得开关状态表。
开关状态生成单元110为用户提供了两类输入方法,一类是可以逐点手动编辑各组的状态;二类是可以通过内建的算法,自动生成开关状态。即该开关状态编辑单元包括:手动编辑模块和/或自动生成模块。同时,该开关状态编辑单元还提供了存取模块用于存储/读取用户编辑的开关状态表,方便下次调用;且提供了显示模块,实时显示用户编辑的内容。
手动编辑模块350提供如下功能:1、当前开关状态的编辑序号可设置,方便直接跳转到指定组进行状态修改;2、可切换指定组的开、关状态。
存取模块320提供如下功能:1、保存用户编辑的当前易失缓冲区中的开关状态表到非易失设备,其可以是内部非易失存储设备,也可以是外部U盘;2、可以调用内部存储设备上已经保存的开关状态文件(表),也可以调用外部U盘上保存的开关状态文件。
显示模块330提供如下功能:1、用合适的形式显示用户编辑的开关状态;2、提供方便用户查看所有组数的开关状态的方式;3、显示当前实际输出状态。
第一验证模块340提供如下功能:1、验证手动编辑时的序号输入是否超上限或者下限;2、验证保存时文件名输入是否合法;3、验证读取时文件是否合法。
本发明实施例中,作为举例,下限为1,上限为2048。上限表示最多可以设置的状态组数。由于内存有限,上限应当存在,根据内存大小不同,上限值可以变化,比如2048组,当存储空间加大后,可以进一步增加到4096组等。
在一个实施例中,开关状态自动生成模块310可以提供如下功能:1、提供01码自动生成开关状态;2、提供10码自动生成开关状态;3、提供PN9、PN11伪随机码生成开关状态;4、根据PN13-PN127中的任一种伪随机码,生成开关状态;5、根据格雷码、或者自定义周期码型生成开关状态。
在另一实施例中,该开关状态自动生成模块310,还可以用于按照用户设置的参数进行拟合,得到拟合曲线,并根据所述拟合曲线生成开关状态。比如可以设置周期和占空比,自动生成方波,而方波的高电平代表开,低电平代表关。甚至可以用PWM生成占空比可变的复杂状态表。
由于开、关就两种状态,优选的,可以用0代表关状态,1代表开状态。此外,还可以用0代表关状态,1代表开状态。01码和10码的区别在于开关序列中是以0开始还是以1开始,也即开关序列是先有开状态后有关状态,还是先有关状态后有开状态,这对于某些应用场合是有区别的。而PN9和PN11分别为位长为9位和11位的伪随机序列,以满足一些需要随机开关电源冲击的应用场合。
伪随机序列指预先可以确定结构的、具有某种随机序列的随机特性的序列,其在一定长度内是随机的。伪随机序列可以用线性反馈移位寄存器生成。
图4为本发明实施例中采用的线性反馈移位寄存器原理框图。每来一次移位时钟,便将反馈信号输入到第1级寄存器,并将第1级寄存器中的值移入第2级,以此类推,完成一次移位操作。由于反馈信号是由n级寄存器中的值进行异或操作生成的,因此移位寄存器各级的状态将不断变化。最多进行2^n-1次移位后,输出序列开始重复,即n级移位寄存器产生的序列的最大周期为2^n-1。n级线性反馈移位寄存器产生的最长序列,称为m序列。周期内,各寄存器中的值不具备任何周期性,因此,在一个周期内,可以认为n级移位寄存器的输出为随机数。通常,可以将最后一级的寄存器的值作为输出。也可以任取其中m位寄存器的值合并成一个m位的数输出。
当移位寄存器的级数及时钟一定时,输出序列就由移位寄存器的初始状态及反馈逻辑完全确定。当移位寄存器的初始值为全0时,线性反馈网络就失去了作用,输出序列一直为0,因此移位寄存器的初始值不能为0。用多项式f(x)来描述线性反馈移位寄存器的反馈连接状态:
若一个n次多项式f(x)满足下列条件
(1)f(x)为既约多项式(即不能分解因式的多项式);
(2)f(x)可整除(xp+1),p=2n-1;
(3)f(x)除不尽(xq+1),q<p。
则称f(x)为本原多项式。
理论证明,当使用本原多项式来作为线性反馈移位寄存器的反馈逻辑函数时,可以得到m序列。
PN9和PN11即n分别为9和11时产生的m序列,对应的本原多项式分别为:PN9:f(x)=x9+x5+1;PN11:f(x)=x11+x9+1。
图5为本发明实施例的PN9和PN11序列生成流程图。如图5所示,利用软件实现上述线性反馈移位寄存器的流程包括如下步骤:
501、开始;
502、用u32Temp记录移位寄存器的当前结果,并赋初值;
503、用au16M[]数组保存小m序列值;
504、计算PN9或者PN11的周期,记为Per;
505、临时变量i=0;
506、判断i是否小于Per,如是,则进入步骤507,如否,则进入步骤511以结束;
507、保存当前移位寄存器的结果到au16M[i]中;
508、异或移位寄存器的相应位得到反馈函数的输出结果;PN9参与异或运算的为bit9和bit5;PN11参与异或运算的为bit11和bit9;
509、将原寄存器中的内容进行左移,将高位移除;
510、将反馈结果放在最低位,i++;步骤510执行完后返回步骤506;
511、结束。
得到的随机序列以16位的形式存在无符号16位数组中,比特顺序为LSB,在m序列的周期内,0和1出现的顺序是随机的,即关和开的状态出现的顺序是随机的。
图6为本发明例的输出状态控制单元的具体功能框图。如图6所示,该输出状态控制单元130具体可以包括:
设置模块610,用于设置开关状态的输出组数。开关状态自动生成模块依据设置的输出组数生成由对应组数的开关状态构成的开关序列。
在另一个实施例中,设置模块610还可用于设置多组开关状态的循环数;还可以包括一个循环控制模块,根据设置模块610设置的循环数,控制其他模块的循环运作。
该输出状态控制单元130还包括:
查表模块620,用于根据该设置模块610设置的循环数,从该开关状态表和该时间序列表按照一一映射的方式依次循环获取每一组开关状态及对应的延时时间;
输出状态修改模块630,用于根据该查表模块620获取的每一组开关状态及对应的延时时间,在该延时时间内控制电源输出信号的开通或关断。
具体地,该设置模块610的功能是:1、输出组数控制,即在一个循环内控制反复开关输出多少次,设为G;2、输出组数的循环数控制,即控制多少个循环,设为N;最终反复开关输出的次数为N*G,N可以为无限,则只要不断电,即可以无限制的循环G组开关切换。
在一较佳实施例中,该输出状态控制单元130还包括:
中断接收模块640,用于接收定时单元的中断通知,并对中断信号的次数进行计时累加,在累加结果达到相应的开关状态的延时时间后,触发查表模块620进行查表操作。
在本发明的较佳实施例中,每组输出时间由定时单元和时间序列表共同确定,定时单元用于时间基准,1s(时间序列表最小值)相当于每100个10ms(定时器基准)。
可选地,该输出状态控制单元130还可进一步包括:终止状态控制模块650,用于当该自动开关控制装置停止工作时,控制该电源的指定终止状态,该电源的指定终止状态包括:该电源的当前输出信号开通、关断或者依据最后一组开关状态控制该电源的输出信号开通或关断。
可选的,该输出状态控制单元130还可进一步包括:提前停止条件控制模块660,用于设置该自动开关控制装置提前停止工作的条件;该提前停止工作的条件包括如下中的一种:当前输出信号的输出电压大于、等于或小于预设的电压阈值;当前输出信号的输出电流大于、等于或小于预设的电流阈值;当前输出信号的输出功率大于、等于或小于预设的功率阈值。终止状态控制模块650,还用于当根据停止条件控制模块660设置的提前停止工作的条件,判断需要提前停止该自动开关控制装置时,使该电源工作在指定终止状态。
可选的,该输出状态控制单元130还可进一步包括:第二验证模块670,用于验证输出组数是否合法,验证循环数是否合法,以及验证电压阈值、电流阈值或者功率阈值是否合法。
具体实施时,终止状态控制模块650实现如下功能:1、控制延时器停止工作时的状态;2、可以在延时器停止工作时使电源当前通道输出关闭、打开或者停在最后一组延时器的输出状态上。
具体实施时,停止条件控制模块660实现如下功能:1、设置延时器提前停止工作的条件;2、可以设置电压或者电流或者功率满足某一条件时停止延时器工作;3、查询停止条件,如果条件满足则通知输出状态修改模块进行状态改变。
具体实施时,中断接收模块640实现如下功能:1、等待定时单元通知,可以是硬件中断实现,也可以是通过系统级的任务同步方式实现,比如信号量、消息、队列等;2、挂起自动开关控制装置,以便处理器可以做其他事情,而不必一直等待自动开关控制装置。
具体实施时,输出状态修改模块630实现如下功能:1、根据停止条件控制模块660的输出结果,判断是否需要提前停止延时器;2、如果需要提前停止延时器,则根据终止状态控制模块650的输出结果,来使本发明实施例的电源工作在指定终止状态;3、根据设置模块610和查表模块620的输出结果,正常改变电源的输出状态。
具体实施时,第二验证模块670实现如下功能:1、验证输出组数是否合法;2、验证循环数是否合法;3、验证条件设置中电压值是否合法;4、验证条件设置中电流值是否合法;5、验证条件设置中功率值是否合法。
下面给出开关状态生成单元110和输出状态控制单元130的详细工作流程图。
图7为本发明实施例的开关状态生成单元的工作流程图。如图7所示,包括如下步骤:
701、开始;
702、判断是否为手动编辑,如是,则进入步骤703,如否,则进入步骤704;
703、进入手动编辑模式,逐点编辑状态;步骤703执行完之后进入步骤713;
704、判断是否自动生成,如是,则进入步骤706,如否,则进入步骤705;
705、判断是否从文件读取,如是,则进入步骤715,如否,则进入步骤713;
706、判断是否为01码,如是,则进入步骤707,如否,则进入步骤708;
707、生成关、开、关….状态;步骤707之后进入步骤713;
708、判断是否为10码,如是,则进入步骤709,如否,则进入步骤710;
709、生成开、关、开...状态;步骤709执行完后进入步骤713;
710、判断是否为PN9,如是,则进入步骤711,如否,则进入步骤712;
711、生成PN9随机开关状态;步骤711之后进入步骤713;
712、生成PN11随机开关状态;
713、显示编辑好的开关状态;
714、判断是否保存当前编辑内容,如是,则进入步骤716,如否,则结束;
715、从本地存储或者U盘中读取开关状态文件;步骤715之后进入步骤713;
716、保存编辑好的开关状态;
717、结束。
图8为本发明实施例的输出状态控制单元工作流程图。如图8所示,包括如下步骤:
801、开始;
802、判断是否收到通知,如是则进入步骤803,如否,则返回步骤802继续判断;
803、判断停止条件是否满足,如是,则进入步骤813-814,如否,则进入步骤804;
804、判断是否当前开关状态延时时间到,如是,则进入步骤806,如否,则进入步骤805;
805、计时累加;步骤805之后返回步骤802;
806、判断是否当前所有输出组数输出完毕,如是,则进入步骤810,如否,则依次进入步骤807-步骤809;在执行步骤806之前,对累加的时间或累加的中断次数清零;
807、查表,取出下一组输出状态(也即开关状态)和持续时间(也即延迟时间);
808、输出组数累加;
809、输出状态修改;步骤809之后返回步骤802;
810、判断是否循环次数为0,如是,则依次进入步骤813-814,如否,则依次进入步骤811-步骤812;
811、查表,取出第一组输出状态和持续时间;
812、循环次数减一,输出组数清0;步骤812之后进入步骤809;
813、终止状态控制;
814、结束。
硬件上采用了前面提到的控制环路的方法来控制输出电压为0和非0,以达到输出关或开的状态,而不使用继电器来控制。
本发明实施例在支持传统的手动操作输出开关的基础上,为了满足周期性输出状态切换需求,内置了01码和10码,可以快速生成周期性开关状态;同时为了满足随机性输出状态切换需求,内置的PN9和PN11可以快速生成伪随机开关状态。通过定时单元的定时中断功能,实现了开延时和关延时的分开控制。
图9为本发明实施例的01码和10码的一种生成流程图。01和10码的区别在于第一组状态为关还是开,其后的状态都是交替出现的,因此如图9所示,其生成流程包括如下步骤:
901、开始;
902、判断是否为01码,如是进入步骤903,如否,进入步骤909;
903、设置State1=关,State2=开;
904、从头开始设置开关状态表,置下标i为0;
905、判断是否下标i>2048?,如是,进入步骤913以结束,如否,进入步骤906;
906、判断是否i为偶数,如是,进入步骤907,如否,进入步骤912;
907、设置位置i处的状态为State1;
908、i自增;步骤908执行完后返回步骤905;
909、判断是否为10码,如是,进入步骤910,如否,进入步骤911;
910、设置State1=开,State2=关;步骤910执行完后进入步骤904;
911、其他码型处理;步骤911执行完后进入步骤913以结束流程;
912、设置位置i处的状态为State2;
913、结束。
图10为本发明实施例的01码和10码的另一种生成流程图。由于01码和10码生成的开关状态是交替出现的,区别在于是偶数组为开还是奇数组为开,所以也可以不生成开关状态表,而直接在输出状态改变时加以控制,如图10所示,包括如下步骤:
1001、开始;
1002、判断是否输出状态改变,如是,进入步骤1003,如否,返回步骤1002继续判断;
1003、判断是否状态为01码,如是,进入步骤1004,如否,进入步骤1005;
1004、判断是否当前输出组数为奇数,如是,进入步骤1006,如否,进入步骤1005;
1005、打开输出;步骤1005之后进入步骤1011以结束流程;
1006、关闭输出;步骤1006之后进入步骤1011以结束流程;
1007、判断是否状态为10码,如是,进入步骤1008,如否,进入步骤1010;
1008、判断是否当前输出组数为偶数,如是,进入步骤1005,如否,进入步骤1009;
1009、关闭输出;步骤1009之后进入步骤1011以结束流程;
1010、从开关状态表中取出相应状态;步骤1010之后进入步骤1011以结束流程;
1011、结束。
图11为本发明实施例的利用PN码生成开关状态表的流程图。如图11所示,采用PN码生成开关状态的方法可以得到伪随机变化的开关状态表,包括如下步骤:
1101、开始;
1102、判断是否为PN9,如是,进入步骤1112,如否,进入步骤1103;
1103、生成PN11序列;1104、从头开始设置开关状态表,置下标i为0;按16位处理,下标m为0;
1105、从PN序列中取出位置m处的16位值u16Temp,k用于记录处理的位域;
1106、判断是否k<16,如是,进入步骤1107,如否,进入步骤1113;
1107、判断是否u16Temp的k位域为0,如是,进入步骤1108,如否,进入步骤1114;
1108、设置开关状态表的i位置处的状态为关;
1109、i自增;
1110、判断是否i<2048,如是,进入步骤1111,如否,进入步骤1115以结束流程;
1111、k自增;步骤1111执行完后返回步骤1106;
1112、生成PN9序列;步骤1112之后进入步骤1004;
1113、m自增,k清0;步骤1113执行完后返回步骤1105;
1114、设置开关状态表的i位置处的状态为开;步骤1114之后进入步骤1109;
1115、结束。
以下通过举一个具体的例子对本发明实施例的技术方案做进一步说明:
本发明实施例的可编程直流线性电源是一款高性价比的线性电源,在该款电源上第一次实现了上述延时器功能。
图12为本发明实施例的延时器菜单结构示意图。如图12所示,延时器相应参数的编辑主要靠菜单软键、数字键和方向键来实现。
图13为本发明实施例的延时器开时主界面。如图13所示,当用户按下Timer按键,并选择延时器开关时,LCD上显示延时器的主界面。
由图13可看出,如标号1301所示,开关状态以图形的方式显示,高电平代表开,低电平代表关,形象直观;如标号1302所示,在右侧区域详细的显示了当前实际输出的电压、电流和功率;如标号1303所示,在左下方显示了当前状态和下一组状态,以及当前状态的输出延时倒计时;在右下方显示了要输出的总组数、循环数以及终止状态等;在最后一行显示了停止条件。如标号1304所示,为了方便控制,在延时器开关打开的情况下,延时设置为禁止操作状态(未激活,无焦点),不允许修改。只有在延时器关闭的状态下,才可以修改各种延时参数。
图14为本发明实施例的延时器编辑主界面。在图14中,标号1401指示开关状态波形显示区,标号1402指示各种参数显示区,标号1403指示手动编辑区,标号1404-1406分别指示第1-3页菜单。如图14所示,当用户按下“延时设置”菜单软键后,进入各种延时参数的配置界面,可以设置输出组数、循环数、终止状态、停止条件等,也包含了对应于开关状态自动生成的模块的“状态生成”选项和对应于时间序列自动生成的模块的“时间生成”选项。
图15为本发明实施例的停止条件设置菜单。如图14-图15所示,当“延时参数”拥有焦点时,可以手动编辑各种的状态和时间:通过上下方向键切换序号行、状态行和时间行,通过左右键切换列,通过数字键可以直接输入要修改的序号和时间,通过前面板OK键可以切换开关状态。当“输出组数”拥有焦点时,可以直接输入实际要输出的组数,在该电源中,输出组数最多2048组。当“循环数”拥有焦点时,按下对应菜单软键可以在“N循环”和“无限”之间切换,当为“N循环”时,可以直接输入循环数,在本实施例的电源中最大循环数为99999;当为“无限”时,则进入无限循环状态。当“终止状态”拥有焦点时,按下对应菜单软键可以在“输出关闭”、“输出打开”、“最后一组”三者之间循环切换;当终止状态选择为输出关闭后,延时器停止工作时将会关闭输出;当终止状态选择为输出打开后,延时器停止工作时将打开输出;当终止状态选择为最后一组后,延时器停止工作时输出状态将停留在最后一组开关状态上保持不变。当按下“停止条件”对应菜单软键后,将进入如图15所示的停止条件的设置菜单。
图16为本发明实施例的状态生成码型选择菜单。如图16所示,可以设置为无——延时器将不监测停止条件,不产生提前停止延时器的动作。可以设置为大于或小于电压值或电流值或功率值——则延时器将实时监测当前的输出状态,如果输出电压或电流或功率满足设置的条件,则提前停止延时器工作。当按下“状态生成”菜单时将进入生成开关状态的码型选择菜单。可以选择的码型有01码、10码、PN9码、PN11码,当选择相应码型后,即自动生成相应开关状态序列,保存在内存缓冲区中。
该延时器采用定时中断的方式产生固定周期的时钟,然后通过轻量级信号量通知接收模块,在输出状态控制单元中通过设置模块、输出状态改变等模块完成一次状态转换。该电源的固定定时中断周期为10ms,而开延时和关延时的最小时间为1s,则每s计数器需要记录的个数为100次。
本发明实施例在计时方式和通信方式上可做如下变形:1、采用查询系统时钟的方式来实现计时;2、采用信号量、消息、队列、全局变量等方式来实现通信;
本发明实施例在状态生成方式上可做如下变形:1、采用其他位长的PN码生成开关状态;例如PN9、PN11、PN13~PN127等;2、采用其他周期性码型生成开关状态;例如采用格雷码、自定义周期码型“110110110”等,可以有多种;3、生成的PN码可以每n位代表一种状态,本发明的实施例是用1位来代表开关状态,也可以用多位来代表开关状态,比如2位,00b和10b表示关、01b和11b表示开等。
本发明实施例在显示形式上可做如下变形:1、开关状态用二进制数字01显示,而不用波形形式显示;2、每页显示的状态可以增减;3、菜单排布上可以调整位置及层次。
本发明实施例的停止条件设置可做如下变形:停止条件可以用与、或、非、大于、小于、等于、电压、电流、功率的有效组合来创造更多更复杂的停止条件。例如,停止条件一为:电流大于预设的电流阈值,停止条件二为电压大于预设的电压阈值,将停止条件一与停止条件二进行逻辑与处理,二者同时满足时,自动开关控制装置提前停止工作;或者将停止条件一与停止条件二进行逻辑或处理,二者有一个满足时,自动开关控制装置提前停止工作。
本发明实施例的输入方法设置可做如下变形:1、手动编辑时可以不用方向键,而改用菜单键控制,比如将序号、状态和时间均独立成相应的菜单,用户可以选中相应菜单后直接修改参数;2、状态生成还可以按照用户设置的参数进行拟合,然后从拟合的曲线中获得状态,比如可以设置周期和占空比,自动生成方波,而方波的高电平代表开,低电平代表关。甚至可以用PWM生成占空比可变的复杂状态表。
本发明实施例的优点在于:
1、用波形的方式显示开、关状态,形象直观;
2、用内建的码型自动生成开关状态,快捷方便;
3、输出组数高达2048组,可以无限循环,可长时间进行输出开、关冲击;
4、无需用户手动控制开关即可自动进行开关状态的切换;
5、无需用户编写上位机程序进行开关控制,可单机自动进行开关控制,应用简单;
6、延时器功能打开后,在屏幕上同时显示了当前组开关状态和下一组开关状态,以及当前状态剩余持续时间,方便用户提前预知下一个状态;
7、可设置提前终止延时器的条件,方便在反复开关实验中,出现用户不希望的输出时能够提前终止实验;
8、可设置终止状态,方便在结束延时器工作后,将设备输出状态控制在用户期望值上。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列(FPGA)或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电脑、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种具有开关控制功能的电源,其特征在于,所述电源包括自动开关控制装置,所述自动开关控制装置包括:
开关状态生成单元,用于生成由多组开关状态构成的开关序列,并根据所述开关序列获得开关状态表;
时间序列生成单元,用于生成由多组延时时间构成的时间序列,并根据生成的时间序列获得时间序列表;每一组开关状态与每一组延时时间具有映射关系;
输出状态控制单元,用于依据所述开关状态表和所述时间序列表中具有映射关系的每一组开关状态与延时时间,在对应的时间控制电源输出信号的开通或关断。
2.根据权利要求1所述的电源,其特征在于,所述电源还包括:
定时单元,用于计时,并根据计时时间周期性的产生中断信号;
所述输出状态控制单元,还用于依次获取每一组开关状态,根据开关状态控制电源输出信号的开通或关断;同时,依据接收到中断信号的次数记录每一组开关状态的持续时间,并在持续时间达到对应的延时时间后,获取下一组开关状态。
3.根据权利要求1所述的电源,其特征在于,所述开关状态生成单元包括:
开关状态自动生成模块,用于根据编码类型,自动生成由多组开关状态构成的开关序列,并根据所述开关序列获得开关状态表;
存取模块,用于将开关状态自动生成模块生成的所述开关状态表保存至存储设备或从存储设备读取开关状态表。
4.根据权利要求3所述的电源,其特征在于,所述开关状态生成单元还包括:
显示模块,用于显示用户编辑的开关状态,供用户查看所有组数的开关状态,以及显示当前的开关状态;
第一验证模块,用于验证保存所述开关状态表时文件名输入是否合法,以及验证获得的开关状态表是否合法;以及
手动编辑模块,用于接收用户通过所述电源的物理按键或虚拟按键输入的由多组开关状态构成的开关序列,并根据所述开关序列获得开关状态表。
5.根据权利要求3所述的电源,其特征在于,所述开关状态自动生成模块,具体用于:根据01码、10码、PN9伪随机码、PN11伪随机码、或者PN13-PN127中的任一种伪随机码,生成开关状态;或者,
根据格雷码、或者自定义周期码型生成开关状态。
6.根据权利要求3所述的电源,其特征在于,所述输出状态控制单元包括:
设置模块,用于设置开关状态的输出组数;
开关状态自动生成模块依据设置的输出组数生成由对应组数的开关状态构成的开关序列。
7.根据权利要求6所述的电源,其特征在于,设置单元还用于设置多组开关状态的循环数;
所述输出状态控制单元还包括:
查表模块,用于根据所述设置模块设置的循环数,从所述开关状态表和所述时间序列表按照一一映射的方式依次循环获取每一组开关状态及对应的延时时间;
输出状态修改模块,用于根据所述查表模块获取的每一组开关状态及对应的延时时间,在所述延时时间内控制电源输出信号的开通或关断。
8.根据权利要求6所述的电源,其特征在于,所述输出状态控制单元还包括:终止状态控制模块,用于当所述自动开关控制装置停止工作时,控制所述电源的指定终止状态,所述电源的指定终止状态包括:所述电源的当前输出信号开通、关断或者依据最后一组开关状态控制所述电源的输出信号开通或关断。
9.根据权利要求8所述的电源,其特征在于,所述输出状态控制单元还包括:提前停止条件控制模块,用于设置所述自动开关控制装置提前停止工作的条件;所述提前停止工作的条件包括如下中的一种:当前输出信号的输出电压大于、等于或小于预设的电压阈值;当前输出信号的输出电流大于、等于或小于预设的电流阈值;当前输出信号的输出功率大于、等于或小于预设的功率阈值;
所述终止状态控制模块,还用于当根据停止条件控制模块设置的提前停止工作的条件,判断需要提前停止所述自动开关控制装置时,使所述电源工作在指定终止状态。
10.根据权利要求9所述的电源,其特征在于,所述输出状态控制单元还包括:第二验证模块,用于验证设置单元设置的输出组数是否合法,验证循环数是否合法,以及验证所述电压阈值、所述电流阈值或者所述功率阈值是否合法。
11.根据权利要求3所述的电源,其特征在于,所述开关状态自动生成模块,还用于按照用户设置的参数进行拟合,得到拟合曲线,并根据所述拟合曲线生成开关状态。
12.根据权利要求2所述的电源,其特征在于,所述时间序列生成单元,用于通过手动编辑方式、按预先设置的开延时时间和关延时时间、或者按预设规则生成时间序列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210537416.8A CN103873037B (zh) | 2012-12-12 | 2012-12-12 | 一种具有开关控制功能的电源 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210537416.8A CN103873037B (zh) | 2012-12-12 | 2012-12-12 | 一种具有开关控制功能的电源 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103873037A CN103873037A (zh) | 2014-06-18 |
CN103873037B true CN103873037B (zh) | 2018-04-24 |
Family
ID=50911225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210537416.8A Active CN103873037B (zh) | 2012-12-12 | 2012-12-12 | 一种具有开关控制功能的电源 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103873037B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105652749B (zh) * | 2016-02-29 | 2019-02-15 | 北京天诚同创电气有限公司 | 多个受控部件的同步控制方法和同步控制系统 |
CN106787881A (zh) * | 2017-01-18 | 2017-05-31 | 钱利斌 | 一种i/o时刻表及制作方法及输出方法及应用其的设备 |
CN112748838B (zh) * | 2019-10-31 | 2022-07-29 | 浙江绍兴苏泊尔生活电器有限公司 | 参数设置方法及电器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2779727Y (zh) * | 2004-11-11 | 2006-05-10 | 北京惠成联合科技有限公司 | 电源定时控制器 |
CN101416502A (zh) * | 2006-03-31 | 2009-04-22 | 丘里奥控股公司 | 重放记录的媒体期间的定时事件 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200805866A (en) * | 2006-07-04 | 2008-01-16 | Powertech Ind Ltd | Charger for current socket and power transmission method |
-
2012
- 2012-12-12 CN CN201210537416.8A patent/CN103873037B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2779727Y (zh) * | 2004-11-11 | 2006-05-10 | 北京惠成联合科技有限公司 | 电源定时控制器 |
CN101416502A (zh) * | 2006-03-31 | 2009-04-22 | 丘里奥控股公司 | 重放记录的媒体期间的定时事件 |
Also Published As
Publication number | Publication date |
---|---|
CN103873037A (zh) | 2014-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103873037B (zh) | 一种具有开关控制功能的电源 | |
CN110399128A (zh) | 代码文件生成方法及装置 | |
CN104391731B (zh) | 一种基于c#的与数据类型无关的编辑方法 | |
CN104720561A (zh) | 烹饪工具及其人机交互界面的控制方法 | |
CN102880155A (zh) | 一种远程控制电阻的系统及方法 | |
CN106354515B (zh) | 基于模型的SystemC代码生成系统 | |
CN106233212A (zh) | 智能功能单元以及可编程逻辑控制器系统 | |
CN104679858A (zh) | 一种查询数据的方法和装置 | |
CN103561342A (zh) | 一种智能电视桌面切换方法、装置及智能电视 | |
CN104991865A (zh) | 软件管理系统及软件管理方法及家用电器 | |
CN101915894B (zh) | 测试数字逻辑器件中实时有限状态机的方法 | |
CN105515551A (zh) | 一种具有任意波编辑功能的信号发生器 | |
CN105446752B (zh) | 应用程序中控件的触发方法、装置及移动终端 | |
CN103869713B (zh) | 一种具有开关延时功能的电源及其工作方法 | |
CN102111129B (zh) | 具有输出噪声信号功能的信号发生器和输出噪声信号的方法 | |
CN103631228A (zh) | 控制系统虚拟化方法 | |
CN105786582A (zh) | 一种程序选择电路及方法 | |
CN208836429U (zh) | 电路和设备 | |
CN101364802A (zh) | 一种测试设备中的毛刺生成方法 | |
CN109782886A (zh) | 一种服务器上电时序的检测方法及装置 | |
CN203953248U (zh) | 烹饪工具 | |
CN101587376A (zh) | 宏指令的快速管理装置及管理方法 | |
CN111968361B (zh) | 一种红外重复码学习方法及应用于物联网的红外遥控系统 | |
CN104459233B (zh) | 一种具有任意波编辑功能的波形产生装置 | |
Jayaraju et al. | Impulse voltage generator modelling using MATLAB |
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 |