CN1781063A - 具有线性频率变化的可编程逻辑控制器的脉冲输出功能 - Google Patents
具有线性频率变化的可编程逻辑控制器的脉冲输出功能 Download PDFInfo
- Publication number
- CN1781063A CN1781063A CN 200480011133 CN200480011133A CN1781063A CN 1781063 A CN1781063 A CN 1781063A CN 200480011133 CN200480011133 CN 200480011133 CN 200480011133 A CN200480011133 A CN 200480011133A CN 1781063 A CN1781063 A CN 1781063A
- Authority
- CN
- China
- Prior art keywords
- frequency
- pulse
- output
- user
- pulse frequency
- 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.)
- Pending
Links
Images
Landscapes
- Programmable Controllers (AREA)
Abstract
某些示例性实施例提供了一种用于产生脉冲输出的方法,该方法包括:自动地将第一用户规定的脉冲频率改变为第二脉冲频率;以及根据用户规定的线性时间率变化,以在该第一用户规定的脉冲频率和该第二脉冲频率之间变化的频率自动地从该可编程逻辑控制器中输出多个脉冲。
Description
相关申请的交叉参考
本申请要求于2003年2月26日提交的未决的临时申请序列号为60/450,210(申请人案卷号为2003P02866US)的优先权。
背景
可编程逻辑控制器可以配备在其离散输出点上产生脉冲输出的一些装置,所述离散输出点能够被用来控制步进电动机、受脉冲输入控制的伺服电动机控制器的运动,和/或用于由输入脉冲频率、脉宽和/或脉冲数控制的其它设备。
所期望的运动曲线可以按照期望的脉冲频率与时间比较来进行描述。这样的曲线可以用在工业中,以便例如描述确定工具位置的电动机的速度,其中传送给运动系统的脉冲频率控制转速。现今用在工业中的典型的运动系统具有从每转200个脉冲到每转200000个脉冲的比例因数。从最小频率到最大频率的典型加速时间可以从几毫秒变化到高达许多秒。实际的运动对象往往要移动特定的距离,该特定的距离表示为特定的脉冲数,同时满足有关加速的约束条件以及加速度的变化。有关加速的约束条件和加速度的变化可能具有许多的促动因素中的任何一个,这些促动因素包括:控制电动机的转矩负载,限制传动系统上的磨损,防止对工具、工件和/或所处理的材料的损坏,和/或限制噪声等等。加速度的受控变化可能被包含或可能不被包含在特定的应用中,但是却日益得到重视,因为用户争取更高速的运动而不引入破坏性的震动。
概要
某些示例性实施例提供了一种用于产生脉冲输出的方法,该方法包括:自动地将第一用户规定的脉冲频率改变为第二脉冲频率;以及根据用户规定的线性时间率(linear-time-rate)变化以在第一用户规定的脉冲频率和第二脉冲频率之间变化的频率自动地从可编程逻辑控制器中输出多个脉冲。
附图简述
通过下列详细说明和附图能够更好地理解可能的实施例的宽泛组合,其中:
图1是系统1000的示例性实施例的框图;
图2是方法2000的示例性实施例的流程图;
图3是信息装置3000的示例性实施例的框图;
图4是示例性的典型的期望的运动曲线4000的图;和
图5是系统5000的示例性实施例的框图。
定义
当在这里使用下列术语时,应用下列所附的定义:
可编程逻辑控制器(PLC)-跟随被编程的指令来提供对于机器的自动监控和/或控制功能和/或通过评估一组输入来进行处理的装置。例如,PLC能够被用来使机械加工、包装、材料处理和/或其它应用中的复杂功能自动化。PLC能够用于控制工业过程。
脉冲-包括延续一段预定时间周期的预定振幅的电压的瞬态波。
脉冲列-能够控制运动装置的运行的一系列脉冲,所述运动装置例如是:运动控制器,诸如步进电动机控制器、伺服控制器、致动器控制器等等;运动驱动器,诸如步进驱动器、伺服驱动器等等;和/或致动器,诸如步进电动机、伺服电动机、线性电动机、电动机、滚珠螺杆、伺服阀、液压致动器、气动阀等等。所述运动装置能够将脉冲的数目、频率和/或长度解释为针对某些运动的命令。
脉冲发生器-生成脉冲的装置。
脉冲输出-从装置中提供的一系列脉冲。
频率-规定的周期性现象在规定的间隔内出现的次数。例如,脉冲频率能够从每秒1个脉冲变化到每秒10000个脉冲。施加到受运动控制的系统上的脉冲列的频率将典型地与运动装置的速度成正比,并且由此在这里可互换地使用术语(脉冲列的)频率和(运动装置的)速度。
加速度-频率相对于时间的变化。
加速度率(jerk)-加速度相对于时间的变化。
线性时间率变化-脉冲变量(例如频率、加速度、加速度率等等)相对于时间的变化,其特征在于每单位时间变化的常增量。
脉冲频率输出曲线-脉冲频率相对于时间或脉冲计数的所期望变化的表示(例如图形表示、表格表示等等)或等效表示,诸如运动装置的速度和位置的表示,由此速度与脉冲频率有关,而位置与脉冲计数有关。例如,脉冲频率输出曲线能够规定:对于运行的开始500个脉冲,脉冲频率应该从每秒10个脉冲增加到每秒100个脉冲,而之后对于接下来的300个脉冲则保持恒定,然后以规定速率降低,在达到每秒20个脉冲之后脉冲输出停止。整体来看,可以把脉冲频率输出曲线视为规范(specification)和/或可以将其视为规范的集合,每个规范都与曲线的一个或多个组分有关,所述组分诸如是线段。
规范-说明或特征描述。
线段-通过某些参数(比如初始频率、初始加速度)以及加速度相对于时间的变化和线段如何结束的规范来表征(或详细说明)脉冲频率输出曲线的部分。线段如何结束的规范可能是特定脉冲计数的结束、或达到特定频率目标或某个外部事件。
变化的极性-变化率是正的还是负的。
自动地-以实质上与外界影响或控制无关的方式进行动作或操作。例如,自动照明开关在以它的角度“看到”人时就能够接通,而无需人手动地操作该照明开关。
详细说明
某些示例性实施例提供了针对可编程逻辑控制器的脉冲输出功能。脉冲输出功能能够提供装置,用于产生用户规定的脉冲频率,用于根据随时间变化的用户规定的线性速率(恒定加速度)来改变脉冲频率,和/或用于响应于加速度相对于时间的用户规定的线性变化来改变频率。所述功能能够供给用户规定的脉冲频率输出曲线,所述曲线包括无穷大和无穷混合的线段序列,每个线段都表示逐渐增加的频率、逐渐降低的频率和/或恒定的频率输出。频率幅度、频率变化的速率和极性、以及加速度变化的速率和极性都能够针对每个线段而独立地加以规定。每个线段的长度都能够被独立地规定为脉冲数、为将被外部事件终止的不定长度和/或为将通过达到规定的频率目标而被终止的不定长度。所规定的线段的操作能够被中断(如例如,通过紧急停止功能来中断)。在这样的线段中断时,能够突然地终止脉冲输出,和/或能够将过渡按规定安排到新规定的线段(如例如,紧急停机序列中的项),而不在脉冲发生中间断。
可编程逻辑控制器能够配备在其离散输出点上产生脉冲输出的一些装置,所述离散输出点能够被用来控制步进电动机、受脉冲输入控制的伺服电动机控制器,和/或用于由输入脉冲频率、脉宽和/或脉冲数控制的其它设备。作为简单的实施方式,可编程逻辑控制器能够集中于脉宽的用户规范。可编程逻辑控制器能够包括用于传送用户规范序列以便产生所期望的脉宽输出曲线的装置。可编程逻辑控制器能够包括在规范点之间内插脉宽的变化以便在遵照所规定的脉宽的斜坡变化的同时总体上减少不希望的脉宽中的间断的装置。
要认识到脉宽是逆相关于频率的。当用户期望的规范在于频率和频率的变化时,依赖于脉宽和脉宽规范的变化的机制可能是不便于使用的。特别是,在试图描述频率相对于时间的变化(加速度)以及加速度相对于时间的变化时,脉宽和脉宽规范的变化的使用可能需要不方便地大量的点,以便以足够的精度来描述线段。
根据典型的期望规则来计算频率目标并将这些频率目标转换为脉宽所需要的算术运算是相当简单的。针对低成本应用的典型的可编程逻辑控制器具有有限的可用的处理能力。某些应用可能需要数百千赫到兆赫的脉冲输出频率。某些应用针对如由典型的可编程逻辑控制器在逐个脉冲基础上所需的要执行的加速度变化、频率变化和频率到脉宽的转换计算不允许充分的时间。
某些示例性实施例能够提供专用逻辑来执行这些计算,其与输入数据流水线机制相耦合以允许及时新数据的连贯提供,还能够提供状态机逻辑以管理所述计算,向脉冲发生器传送正确的计算结果,并且管理所期望的操作模式之间的过渡。所述专用逻辑能够使用定点计算而非通常更复杂且更昂贵的浮点计算机制。特别是,在特定时间计算目标频率和目标加速度能够被执行为递增变化的累加。通过允许独立地规定这样的累加率,能够缩放定点加法以涵盖否则可能需要过度字长或浮点计算硬件的变化值的频率/时间/速率的范围。
图1是系统1000的示例性实施例的框图。系统1000能够包括诸如可编程逻辑控制器(“PLC”)1100之类的信息装置,该可编程逻辑控制器1100包括经由连接器1130耦合到脉冲发生器1140的主处理器1120。在某些实施例中,脉冲发生器1140能够连接到诸如系统底板和/或PLC 1100的扩展输入/输出总线之类的连接器1300。
脉冲发生器1140能够被集成到PLC 1100。也就是,一旦被安装,脉冲发生器1140就能够成为PLC 1100的组件,而非独立式的装置。脉冲发生器1140能够包括运动处理器1150,该运动处理器1150具有诸如双端口RAM之类的存储器1160。运动处理器1150可以是市场上可买到的通用微处理器。在另一个实施例中,运动处理器1150可以是专用集成电路(ASIC),该专用集成电路已经被设计来在其硬件和/或固件中实现依照本发明的实施例的至少一部分方法。在又一个实施例中,运动处理器1150可以是现场可编程门阵列(FPGA)。
存储器1160能够包含可以软件来实现的指令,所述软件能够采取本领域众所周知的众多形式中的任何一种。脉冲发生器1140还可以包括通信接口1170,比如总线、连接器、电话线接口、无线网络接口、蜂窝式网络接口、局域网接口、宽带电缆接口等等。
脉冲发生器1140能够影响运动装置。运动装置可以是任何能够由可变频率脉冲列控制的装置,该装置包括:运动控制器,比如步进电动机控制器、伺服控制器、致动器控制器等等;运动驱动器,比如步进驱动器、伺服驱动器等等;和/或致动器,比如步进电动机、伺服电动机、线性电动机、电动机、滚珠螺杆、伺服阀、液压致动器、气动阀等等。脉冲发生器1140能够产生称作脉冲列的一系列脉冲。根据某些示例性实施例,可变频率脉冲发生器能够产生可以在频率、计数、宽度和/或差动宽度中变化(在这里也称为“脉宽的变化”)的脉冲列。在运动装置处,脉冲列的频率能够控制速度,和/或脉冲计数能够控制位置。
脉冲发生器1140能够被连接到与PLC 1100分离的运动控制器1300。运动控制器1300能够被连接到运动驱动器和/或致动器1400。脉冲发生器1140还能够经由网络1500被连接到与PLC 1100分离的运动控制器1600。网络1500可以是公共交换电话网(PSTN)、无线网络、蜂窝式网络、局域网、因特网等等。运动控制器1600能够被连接到运动驱动器和/或致动器1700。此外,脉冲发生器1140能够被连接于集成到PLC 1100的运动控制器1180。运动控制器1180能够被连接到运动驱动器和/或致动器1200。
被连接到网络1500的还可以是信息装置1900,比如传统的电话、电话的部件、蜂窝式电话、移动终端、蓝牙装置、发信机、传呼机、传真机、计算机终端、个人计算机等等。信息装置1900能够被用来编程脉冲发生器1140、与脉冲发生器1140进行交互和/或监控脉冲发生器1140。
图2是方法2000的示例性实施例的流程图。在动作2100,能够比如从图形式脉冲频率输出曲线中接收到和/或导出第一用户规定的线段规范。所述曲线可以包括多个线段,每个线段都表示从递增的频率输出、递减的频率输出和/或恒定频率输出中选择的频率输出。至少第一线段可以包括第一或初始脉冲频率规范。每个线段都可以包括多个用户可指定的变化特征,比如变化的幅度、变化率、变化的极性、持续时间和/或长度。一个或多个线段能够具有按脉冲数规定的长度。一个或多个线段能够具有可通过预定的外部事件或达到预定的频率目标而终止的不定长度。
在动作2150,能够接收到或导出附加的后续线段规范。附加的线段规范可以包括新的第一频率、新的线性时间率变化和/或新的线段终止规范。
在动作2200,脉宽能够根据脉冲频率来加以计算。与当前线段相关联的用户规定的线性时间率(“LTR”)变化能够被应用于确定下一个脉冲的频率。LTR变化可能是脉冲频率相对于时间的变化、受控系统速度相对于时间的变化、脉冲加速度相对于时间的变化、和/或受控系统加速度相对于时间的变化。
在动作2300,可以作比较以判断是否已经达到对应于第二用户规定的脉冲频率的目标脉冲频率。第二用户规定的脉冲频率可能是明确规定的频率目标,累积频率变化直到达到规定的脉冲计数的结果、和/或累积频率变化直到出现外部事件的结果。如果尚未达到目标频率,则控制可以返回到动作2200,并且能够继续以在用户规定的第一脉冲频率和第二脉冲频率之间变化的频率来输出脉冲。如果已经达到目标频率(或线段的末尾),则控制可以转到动作2400。
在动作2400,能够自动地改变用户规定的线性时间率变化,比如从脉冲频率输出曲线的一个线段变化到后续的线段。所述曲线可以由多个线段组成,每个线段都具有如终止于达到多个脉冲时规定的长度、由外部事件终止的不定长度、和/或通过达到规定频率目标而终止的长度。如果新的后续线段规范可以从动作2201中获得,则就能够使这个新的规范有效并且所述过程能够在动作2200重新开始。如果在动作2201尚未接收到后续的线段,则控制可以转到动作2500。
在动作2500,能够停止脉冲的输出。
图3是信息装置3000的示例性实施例的框图,所述信息装置能够表示图1的信息装置1100、1300、1600和/或1900等等中的任何一个。信息装置3000能够包括多个众所周知的组件中的任何一个,诸如一个或多个网络接口3100、一个或多个处理器3200、包含指令3400的一个或多个存储器3300、一个或多个输入/输出(I/O)装置3500、和/或耦合到I/O装置3500的一个或多个用户接口3600,等等。
正如在这里使用的,术语“信息装置”指的是任何能够处理信息的装置,比如任何通用和/或专用计算机,诸如像个人计算机、工作站、服务器、小型计算机、大型机、巨型计算机、计算机终端、膝上型电脑、可佩带的计算机,和/或个人数字助理(PDA)、移动终端、蓝牙装置、发信机、“智能”电话(比如像Handspring Treo之类的装置)、消息传送业务(例如Blackberry)接收机、传呼机、传真机、蜂窝式电话、传统电话、电话的部件、已编程的微处理器或微控制器和/或外围集成电路元件、ASIC或其它集成电路、诸如离散元件电路之类的硬件电子逻辑电路、和/或诸如PLD、PLA、FPGA或PAL等等之类的可编程逻辑器件等等。一般而言,能够实现在此所述的至少一部分方法、结构、和/或或图形用户接口的有限状态机驻留在其上的任何装置都可以被用作信息装置。信息装置能够包括众所周知的组件,比如一个或多个网络接口、一个或多个处理器、包含指令的一个或多个存储器、和/或一个或多个输入/输出(I/O)装置、一个或多个用户接口等等。
正如在这里使用的,术语“网络接口”指的是任何能够将信息装置耦合到网络的装置、系统或子系统。例如,网络接口可以是电话、蜂窝式电话、蜂窝式调制解调器、电话数据调制解调器、传真调制解调器、无线收发机、以太网卡、电缆调制解调器、数字用户线接口、网桥、集线器、路由器或其它类似装置。
正如在这里使用的,术语“处理器”指的是用于处理机器可读指令的装置。处理器可以是中央处理单元、本地处理器、远程处理器、并行处理器和/或分布式处理器等等。所述处理器可以是通用微处理器,比如由加利福尼亚州圣克拉拉的英特尔公司制造的Pentium III系列的微处理器。在另一个实施例中,所述处理器可以是已经被设计来在其硬件和/或固件中实现在此所公开的至少一部分实施例的专用集成电路(ASIC)或现场可编程门阵列(FPGA)。
正如在这里使用的,“存储器”指的是任何能够进行数据存储的硬件元件,诸如非易失性存储器、易失性存储器、随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、磁性介质、硬盘、软盘、磁带、光介质、光盘、高密度盘(CD)、数字通用光盘(DVD)和/或raid阵列等等。
正如在这里使用的,术语“固件”指的是被存储在只读存储器(ROM)中的机器可读指令。ROM可以包括PROM和EPROM。
正如在这里使用的,术语“I/O装置”指的是任何感觉定位的输入和/或输出装置,比如听觉定位的、视觉定位的、触觉定位的、嗅觉定位的和/或味觉定位的装置,该装置例如包括:监视器、显示器、投影机、高架显示器、键盘、小键盘、鼠标、跟踪球、操纵杆、游戏键盘、操纵轮、触垫、触板、定点装置、话筒、扬声器、摄像机、照相机、扫描仪、打印机、触觉装置、振动器、触觉模拟器和/或触觉垫,可能包括能将I/O装置附加或连接到其上的端口。
正如在这里使用的,术语“触觉”指的是人类运动感觉和人类触觉。在许多可能的触觉体验之中有众多的感觉,以非视觉、非听觉和非嗅觉方式至少局部感觉到的感观上的身体位置差异和基于时间的感觉上的变化,包括下列的体验:能触知的接触(正在接触的)、主动接触、抓、压、摩擦、牵引、滑动、拉伸、推动、扭转、冲击、击穿、振动、运动、加速、震动、脉冲、定向、四肢位置、重力、肌理、间隙、隐藏、粘性、疼痛、痒、潮湿、温度、热传导和热容量。
正如在这里使用的,术语“用户接口”指的是任何用于向用户呈现信息和/或从用户那里请求信息的装置。用户接口包括下列中的至少一种:文本元件、图形元件、音频元件、视频元件、动画元件和/或触觉元件。文本元件可以例如由打印机、监视器、显示器、投影机等等来提供。图形元件可以例如通过监视器、显示器、投影机和/或诸如光、标志、信标等等之类的可视指示装置来提供。音频元件可以例如通过扬声器、话筒和/或其它声音生成和/或接收装置来提供。视频元件或动画元件可以例如通过监视器、显示器、投影机和/或其它可视装置来提供。触觉元件可以例如通过超低频扬声器、振动器、触觉刺激器、触觉垫、模拟器、键盘、小键盘、鼠标、跟踪球、操纵杆、游戏键盘、操纵轮、触垫、触板、定点装置和/或其它触觉装置等等来提供。
用户接口可以包括一个或多个文本元件,诸如一个或多个字母、数字、符号等等。用户接口可以包括一个或多个图形元件,诸如图像、照片、图画、图标、窗口、标题栏、面板、工作表、标签、制图、矩阵、表、表格、日历、大纲视图、框架、对话框、静态文本、文本框、列表、选项表、弹出式列表、下拉列表、菜单、工具条、平台、复选框、单选按钮、超链接、浏览器、按钮、控件、调色板、预览面板、彩色转盘、刻度盘、滑动块、滚动条、光标、状态栏、分档器(stepper)和/或进度指示器等等。文本和/或图形元件能够用来对下述进行选择、编程、调整、改变、规定等等:外观、背景色、背景风格、边界风格、边界厚度、前景色、字体、字形、字号、对齐方式、行距、缩进、最大数据长度、有效性、询问、光标类型、指针类型、自动尺寸缩放、位置和/或维度等等。用户接口可以包括一个或多个音频元件,诸如:音量控制、音调控制、速度控制、声音选择器和/或用于控制音频播放、速度、暂停、快进、倒退等等的一个或多个元件。用户接口可以包括一个或多个视频元件,诸如控制视频播放、速度、暂停、快进、倒退、放大、缩小、旋转和/或倾斜等等的元件。用户接口可以包括一个或多个动画元件,诸如控制动画播放、暂停、快进、倒退、放大、缩小、旋转、倾斜、颜色、密度、速度、频率、外观等等的元件。用户接口可以包括一个或多个触觉元件,诸如应用触觉刺激、推动、按压、振动、运动、位移、温度等等的元件。
在某些示例性的实施例中,借助于一个或多个用户接口3600、诸如图形用户接口,用户能够提供所期望的运动曲线。
图4是示例性的典型的所期望运动曲线4000的图,该运动曲线4000是按照所期望的脉冲频率与时间比较来进行描述的。这样的曲线可以被用于工业中,以便描述例如确定工具位置的电动机的速度,其中传送给运动系统的脉冲频率控制转速。现今用在工业中的典型的运动系统具有从每转200个脉冲到每转200000个脉冲的比例因数。从最小频率到最大频率的典型加速时间能够从几毫秒变化到高达许多秒。实际的运动对象往往要移动特定的距离,该特定的距离被表示为特定的脉冲数,同时满足有关加速的约束条件以及加速度的变化。有关加速的约束条件和加速度的变化可能具有许多的促动因素中的任何一个,这些促动因素包括:控制电动机的转矩负载,限制传动系统上的磨损,防止对工具、工件和/或所处理的材料的损坏,和/或限制噪声等等。由说明性曲线的弯曲部分表示的加速度的受控变化可能被包含或可能不被包含在特定的应用中,但是却日益得到重视,因为用户谋求更高速的运动而不引入破坏性的震动。
由图4中的曲线表示的运动能够随着0和某一最小有限频率之间的突然变化而起动和停止。这可能是系统性质最低限度所需的,因为频率可被表达为一系列有限宽度的脉冲。此外,典型的电动机具有例如为最高额定速度的5%或10%的最低起动和停止速度,在所述最小值以下,电动机可能会停转或不规律地运行。在最初变到最低起始频率的步骤之后,加速度能够平滑地增加到某一最大量,然后能够平滑地减少到零,从而在曲线的顶部达到恒定速度,接下来则是类似的逆过程以平滑地减慢至最低速度并停止。正如在这里使用的,因数df指的是每单位时间的频率的变化,而因数ddf描述了每单位时间的df的变化。也就是,df表示加速度,而ddf表示加速度的变化率。
在运动曲线4000内可能是许多种状态4100-4900,所述状态可以由一个或多个线段组成,并且能够按如下来描述所述状态:
4100:以某一最低的非零起始频率开始运动;
4200:df>0和ddf>0,频率(fn+1=fn+df)和加速度(dfn+1=dfn+ddf)正在增加,其以按df规范的时间间隔部分中规定的规则间隔tn来更新;
4300:df>0,ddf=0,频率正以恒定加速度增加;
4400:df>0,ddf<0,频率正在增加,但是加速度正在降低;
4500:df=0,ddf=0,频率恒定;
4600:df<0,ddf<0,频率正在降低,加速度是负的并且幅度在增大;
4700:df<0,ddf=0,频率正在降低,加速度是恒量;
4800:df<0,ddf>0,频率正在降低,加速度是负的并且幅度在降低;和
4900:运动达到某一最终的最低频率,然后停止。
每个线段的参数能够独立地加以规定或根据前一段加以维持。这个示例有意是不对称的,以便说明线段描述的灵活性。线段的数量可以是可无限扩展的,并且能够从某一外部存储器中加载。术语“线段”指的是由来自于流水线寄存器的单个负载控制的曲线的一部分,而不论该曲线是否是直的。
尽管图4表示起动、加速到某一恒定频率、减速并停止的简单的运动曲线,但是实际上可能需要并且可能供应更复杂的曲线。这样的曲线可包括通过插入不同幅度的加速度而连接的多个恒定速度的间隔,并且也许包括无限延长的段,这需要输入到系统的某一外部信号或外部数据以确定下一步的计时和性质。考虑到应用上的相当大的灵活性,针对该曲线的每段的参数都能够独立加以规定,或根据先前的段加以维持。
图5是系统5000的示例性实施例的框图,其可以包括许多组件。例如,可以使用起始频率(sf)变量5110来确定工作频率(wf)变量5210。增量(delta)频率流水线(dfh)变量5120能被用来确定增量频率(df)变量5220。双增量(delta delta)频率流水线(ddfh)变量5130能被用来确定双增量频率(ddf)变量5230。比较流水线(cmprh)变量5140能被用来确定比较(cmpr)变量5430。控制和/或状态标志5150能够控制状态机5440的操作。加法器5310能够给工作频率(wf)变量5210提供新的值和/或给比较变量5430提供输入。加法器5320能够给增量频率(df)变量5220提供新的值。间隔计时器5330能够向状态机5440提供输入以控制应用加法器5310和加法器5320操作的速率。除法器5410能够从工作频率变量5210和/或源频率5420中接收输入,并能够输出可以流向脉宽计数器5610的脉宽变量5510。
在各种示例性的实施例中,能够提供下列特征中的任何一个:
1.脉冲发生器,其通过以规则的规定间隔对规定的频率添加或减去规定的频率增量来产生频率相对于时间的线性变化(加速度),继之以除法器机制,其将频率规范转换为脉宽规范,继之以脉宽生成器,其根据脉宽规范通过对固定基准频率的时钟进行计数产生所期望的脉冲输出;
2.脉冲发生器,其通过以规则的规定间隔对规定的频率增量添加或减去规定的加速度增量来产生加速度相对于时间的线性变化,继之以用于计算新规定的频率的机制,并且后续是如第(1)项中所述的除法器和脉宽生成器机制;
3.如第(1)项或第(2)项中所述的脉冲发生器,其配备具有控制状态机的流水线数据寄存器,以便频率、频率的变化和加速度的变化这一系列的规范都可以被加载和执行而不间断脉冲输出,每个规范(线段)的持续时间都是由所计数的脉冲数来控制的;
4.如第(1)项或第(2)项中所述的脉冲发生器,其配备具有控制状态机的流水线数据寄存器,以便频率、频率的变化和加速度的变化这一系列的规范都可以被加载和执行而不间断脉冲输出,每个规范(线段)的持续时间都是通过达到规定的频率目标而终止的;
5.如第(1)项或第(2)项中所述的脉冲发生器,其配备具有控制状态机的流水线数据寄存器,以便频率、频率的变化和加速度的变化这一系列规范都可以被加载和执行而不间断脉冲输出,每个规范(线段)的持续时间都是由来自于任意的外界事件的命令而终止的;
6.如第(1)至第(5)项中所述的脉冲发生器,其配备用于中断所计划的规范系列以用新的规范(如例如紧急停机序列)来代替而不间断脉冲输出的装置;
7.如第(1)项或第(2)项中所述的脉冲发生器,其包括更新间隔计数器和已编码的间隔规范,所规定的间隔的持续时间控制对频率和加速度的递增加法的重复,并由此与增量大小一致地控制频率和加速度的变化率。具有大范围间隔选择的可编程间隔的使用扩展了可以利用给定的频率的精度、加速度的精度和定点格式的递增变化规范来控制的斜率(频率或加速度的变化)的范围;
8.脉冲发生器,其组合了第(3)项、第(4)项、第(5)项、第(6)项中的2个或多个特征,具有能够以任意顺序来混合规范特征的数据寄存器流水线和状态机逻辑;
9.脉冲发生器,其组合了第(3)项、第(4)项、第(5)项、第(6)项的1个或多个特征,配备有识别序列的最后一步并在最后的规范结束时精确地停止脉冲列输出的装置;
10.脉冲发生器,其包括如上面第(6)项中所述的用于检测初期的数学误差并中断所计划的规范系列以用新的规范(例如,紧急停机序列)来代替的装置;
11.脉冲发生器,其包括如上面第(6)项中所述的用于检测所提供数据的不足(流水线欠载运行)并中断所计划的规范系列以用新的规范(例如,紧急停机序列)来代替的装置;
12.集成电路中的第(1)项至第(11)项中任何一项的实施;
13.在可编程逻辑控制器中包括第(1)项至第(11)项中任何一项;
14.在具有通用处理装置和通信装置的集成装配中包括第(1)项至第(11)项中任何一项,这允许由借助于网络或其它通信介质所发出的通用计算程序或命令来控制所述功能;
15.在具有通用处理装置和通信装置的集成电路中包括第(1)项至第(11)项中的任何一项,这允许由借助于网络或其它通信介质所发出的通用计算程序或命令来控制本发明的功能;
16.与第(1)-(11)项的脉冲发生功能结合地使用与通用处理装置集成的多功能高速计数装置,以便在受控频率脉冲列操作的无限延长的序列上监控绝对和相对位置(脉冲计数);和/或
17.利用如上所述的脉冲发生器系统的可选时钟输入频率的使用,所述脉冲发生器系统是作为扩展可以利用给定数据宽度寄存器和运算元件而被处理的脉冲频率的有用范围的装置。
在某些示例性实施例中,可以将脉冲列生成功能包含在集成电路中,所述集成电路具有通用处理器、通用通信电路、用于对脉冲列生成功能产生的脉冲进行计数的可编程高速计数器和/或其它便于可编程逻辑控制器的实施例的专用电路。脉冲生成功能的输出能够被耦合到可编程逻辑控制器的离散输出,所述可编程逻辑控制器可以是晶体管、光耦合晶体管、继电器和/或其它将脉冲作为适合于各种终端接收机的电信号加以传送的开关器件。
下列说明为了清楚起见假定具有示例性描述的数据格式的特定示例性寄存器中的特定示例性实施方式,所述数据格式对于用于操纵和检查的通用处理器而言是可存取的。在这个示例性实施例中由通用处理器执行的动作是说明书中的“处理器”所引起的。
就频率和每单位时间频率的变化而言,线性斜坡脉冲列输出(Ipto)系统能够允许脉冲列的规范。操作模式可以如下:
主要操作模式:
run_steps_n:针对规定的脉冲数,从规定的频率开始运行,并以每单位时间规定的速率改变所述频率。在脉冲计数结束时,加载新的步骤(step)规范。
run_steps_f:从规定的频率开始运行,并以每单位时间规定的速率改变所述频率,直到达到规定的频率目标。一获得规定的频率,就加载新的步骤规范。
run_continuous:以恒定频率运行无限的时间。
过渡状态:
异常中止:由于异常中止命令或某些错误事件而进入异常中止状态。异常中止模式停止任何进行中的频率变化,并且使流水线加载或状态过渡失效。用于适度停机的可靠设置是可能的,或可以仅仅命令所述单元停止。
last_step_n:针对规定的脉冲数,从规定的频率开始运行,并以每单位时间规定的速率改变所述频率。在脉冲计数结束时停止。
last_step_f:从规定的频率开始运行,并以每单位时间规定的速率改变所述频率,直到达到规定的频率目标。一获得规定的频率就停止。
规定所述操作的数据寄存器是:
起始频率(sf):第一频率值,其将用于生成脉宽规范。
工作频率(wf):当前所使用的频率。
源频率(src_f):通常设置为系统时钟频率。系统时钟中的输出脉冲宽度=整数(src_f/wf)。
增量频率(df):这被存储为包括幅度值以加到工作频率上的合成值和规定进行加法的间隔的比率值。这个寄存器是由固件通过加载dfh(增量频率流水线)来访问的。带符号的加法wf<=wf+df_magnitude,当df保持恒定时,其按规则的计数时钟间隔进行重复提供了频率随时间的线性变化。大范围的间隔选择允许wf+df_magnitude的定点计算,以覆盖非常宽范围的所期望的频率斜率。
频率的增量变化(ddf):与df寄存器的幅度和符号部分的格式相同,并且是由固件通过加载ddfh(双增量频率流水线)来访问的。带符号的加法df<=df+ddf,其按规则的计数时钟间隔进行重复提供了加速度相对于时间的线性变化。在当前的实施方式中,df和ddf寄存器都是按相同的调度来更新的。ddf寄存器更新的可选调度也是可能的。
比较(cmpr):在run_steps_n中,这个寄存器对脉冲进行计数。在run_steps_f中,这个寄存器包含所期望的终点频率的值。这个寄存器是由固件通过加载cmprh(比较寄存器流水线)来访问的。
模式:正常操作模式的已编码的规范:run_steps_n、run_steps_f、run_continuous、last_step_n、last_step_f。这个代码实际被嵌在df/dfh寄存器的32位字段中。当df<=dfh时,检查新的代码并确定新步骤的工作模式。固件可以查询df寄存器中的模式位以核实当前的工作状态。
脉宽(pw):仅仅为诊断使用而进行的读取,包含系统时钟中的当前使用的脉宽值。
控制/状态标志:
运行:运行/停止。
异常中止:固件命令进入异常中止模式,保持频率恒定并阻塞流水线加载。在add_error的情况下,固件设置此位以确认对add_error的认识和确认所述lpto已经自动进入异常中止模式。
run_ack:lpto正在运行的状态机确认。
abort_ack:Ipto已经注意到异常中止位断言并处于异常中止模式的状态机确认。
active_pulse:脉冲被提交或在进行中的指示符。主要是在序列的末尾有用,在所述序列中active_pulse的否定表示所述序列结束。
pipe_loaded:表示某一管道寄存器(sf、dfh、cmprh)被加载。pipe_loaded的否定发信号通知固件需要新信息以继续线性pto序列。
add_error:表示lpto已经遇到某一状况,该状况使得频率中的进一步自动变化变得有问题。通用术语add error包括:所有可能被检测到并被报告的数学错误、数据格式错误和流水线状态错误。一add_error,lpto就自动地进入异常中止模式。
传送流水线命令(xfr_pipe):写入xfr_pipe地址使得lpto状态机加载分频器并且准备好产生新序列的第一脉冲。用于从空闲的状态下起动机器或获得新的规范以保留run_continuous状态。
基本操作
处理器加载src_f、即可以用来按计数时钟的数目测量脉宽的系统时钟的频率。假定src_f对于全部的运动保持恒定。src_f对于系统而言可以是固定的,或被提供作为某个可选时钟源。
处理器依照要求加载剩余的数据流水线寄存器wfh、dfh、ddfh和cmprh,并且写入xfr_pipeline命令以加载工作寄存器wf、df、ddf、cmpr。典型地,流水线寄存器现在是利用为下一个线段准备好的第二组数值来写入的。
初始的工作频率规范wf被加载到除法器中。所述除法器通过用除法src_f/wf来确定第一脉宽规范。除法结果被加载到缓存的脉宽规范寄存器pw中。
一起动命令,脉宽计数器就获取pw的值,并开始通过计数时钟来产生脉冲。每个输出脉冲对于规定的pw计数的近似一半是高的,而对于剩余的pw计数是低的。在每个pw计数结束时,从除法器中取出新的缓存的pw的值,并且数清另一个脉宽。
在数清脉宽的同时,按照df寄存器的时间规范部分规定的,将间隔计时器标记为更新事件。在每个更新事件上,给wf加载以wf+df的新值,给df加载df+ddf的新值。这个df和ddf以等间距时间递增的规则加法执行下列计算:
wf=wf(0)+df*时间
df=df(0)+ddf*时间
随着缩放积累,用定点加法来代替乘法。
每个新的频率值wf都被加载到除法器中,该除法器产生新的脉宽技术规范pw=src_f/wf。pw的最新值对脉宽计数器是有效的,以用来在每个脉冲边界上计时下一个脉冲。注意:脉宽在序列各处变化,而更新间隔是固定的。pw的新值可能出现在一个脉冲期间的任何时刻,并且可以在下一个脉冲开始需要新的pw之前用更新的值来替代。同步机确保仅仅将有效的pw值传送给脉宽计数器。
这个操作继续,直到线段的末尾为止。根据操作的模式,线段的末尾由下列来标记:
随着cmpr寄存器中的递减计数,结束规定的脉冲数(run_steps_n或last_step_n),
wf达到如cmpr寄存器中规定的频率(run_steps_f或last_step_f),或
来自于处理器的xfr_pipeline命令,正常脱离run_continuous段,
处理器命令异常中止,错误脱离任何模式。
run_steps_n或run_steps_f段一结束,就将来自流水线寄存器的新的规范加载到工作寄存器,新的线段开始,并且通知处理器,以便可以根据需要为另一线段加载新的流水线寄存器值。它们规范中承载的模式有可能变化的附加线段可以被无限地加载。
last_step_n或last_step_f一结束,命令脉宽计数器停止在脉冲结束时发出脉冲,并且通知处理器过程结束。在它们的规范中承载的模式有可能变化的附加线段可以被无限地加载。
在run_continuous模式期间的xfr_pipeline命令使新的线段规范被加载,这可以包括模式上的变化。典型地,这将是run_steps_f线段过渡到新的速度或last_step_f段减速到平滑停止。在它们的规范中承载的模式有可能变化的附加线段可以被无限地加载。
异常中止命令可以作为对内部错误(例如,数学运算中的非法结果)或外部事件(例如,较大的可编程逻辑控制系统中意外的停机请求)的响应来被启动。异常中止命令停止更新间隔计时器、除法器和流水线加载的操作,从而使系统准备好将针对新线段进行设置。脉宽计数器以所规定的最后一个pw值继续发出脉冲,以便以恒速维持外部的电动机或其它目标装置。处理器可以命令立即停止,或更加典型地,在流水线寄存器中加载新线段规范并且执行xfr_pipeline命令以启动新的段。新线段可以平稳过渡到新的工作点或平稳减速直到停止。
Ipto状态机的状态变化能够由下列简化代码来加以描述:
process advance_state: if current_state=idle then if all pipe registers loaded and xfr_pipe=′1′then load pipe registers to working registers wf<=sf df<=dfh,ddf<=ddfh cmpr<=cmprh start divider wait for divider complete current_state<=loaded end if;--使xfr pipe有效 end if;-- if current_state=loaded then if run_cmd=′1′then current_state<=find_active_state; elsif any pipe loaded and xfr_pipe=′1′then current_state<=loading operation in idle end if;--运行或不运行 end if;--加载状态 -------------------find_active_state:新流水线状态-------- if current_state=find_active_state then case mode_request is when run_steps_f_id=>current_state<=run_steps_f; when run_steps_n_id=>current_state<=run_steps_n; when run_cont_id=>current_state<=run_cont; when last_step_f_id=>current_state<=last_step_f; when last_step_n_id=>current_state<=last_step_n; when others=>current_state<=finish; end case;--模式选择 end if;--找到有效状态 <dp n="d18"/> -----------------------------run steps n------------ if current_state=run_steps_n then if run_cmd=′1′and abort_cmd=′0′then if add_error=′1′then current_state<=abort; elsif pulse count complete =′1′ then current_state<=find_active_state end if;--一步的结束 elsif run_cmd=′0′then current_state<=estop; elsif abort_cmd=′1′then current_state<= abort; end if;--命令脱离 end if;--run_steps_n状态 -------------------------------last step n--------------- if current_state=last_step_n then if run_cmd=′1′and abort_cmd=′0′then if add error=′1′then current_state<=abort; elsif pulse count complete =′1′ then current_state<=finish; end if;--一步的结束 elsif run_cmd=′0′then current_state<=estop; elsif abort_cmd=′1′then current_state<=abort; end if;--命令脱离 end if;--last_step_n状态 -------------------------------run steps f------------- if current_state=run_steps_f then if run_cmd=′1′and abort_cmd=′0′then if frequency goal reached=′1′then current_state<=find_active_state; end if;--一步的结束 <dp n="d19"/> elsif run_cmd=′0′then current_state<=estop; elsif abort_cmd=′1′then current_state<=abort; end if;--命令脱离 end if;--run_steps_n状态 ------------------------------last step f------------ if current_state=last_step_f then if run_cmd=′1′and abort_cmd=′0′then if frequency goal reached=′1′then current_state <=finish; end if;--一步的结束 elsif run_cmd=′0′then current_state<=estop; elsif abort_cmd=′1′then current_state<=abort; end if;--命令脱离 end if;--last_step_n状态 --------------------------------run continuous------------- --在xfr_pipe之后的脉冲上升沿上从run continuous中退出 --启动除法,然后当除法结束时过渡到新状态 if current_state=run_cont then if run_cmd=′1′and abort_cmd=′0′then if xfr_pipe command then load pipe registers to working registers, start divider wait for divider complete current_state<=find_active_state; end if;--xfr pipe elsif run_cmd=′0′then current_state<= estop; elsif abort_cmd=′1′then current_state<=abort; end if;--运行/异常中止组合 end if;--run continuous状态 <dp n="d20"/> ------------------------------异常中止------------- if current_state=abort then if run_cmd=′0′then current_state<=estop; elsif abort_cmd=′0′and add error=′0′then current_state<=run_cont; end if;--异常中止脱离 end if;--异常中止状态 ------------禁止和完成--------冗余状态 if current_state=estop then if active_pulse=′0′and run_cmd=′0′then current_state<=idle;end if; end if;--禁止状态 if current_state=finish then if active_pulse=′0′and run_cmd=′0′then current_state<=idle;end if; end if;--完成状态 end process advance_state;-----------------------------------------------------------
在每个状态中执行的动作用下列简化代码来加以描述: if current_state=run_steps_n or current_state=last_step_n then if periodic_update=′1′then---在预定的间隔处 update wf<=f+df,df=df+ddf checking for overflow and negative result if add error detected,signal state machine and firmware else,signal divider to find new pulse width= src_f/wf end if;--报告或不报告add error <dp n="d21"/> end if;--周期性更新事件 end if;--或者比较n模式-------------------------------------------------------------
if current_state=run_steps_n then if rising pulse edge,count down cmpr,checking for negative result if negative cmpr(due to loading pulse count=0) signal add_error elsif pulse count complete then if new cmprh value loaded then transfer loaded pipe registers signal state machine to find new state else,signal add_error end if;--使管道入口有效或无效 end if;--使目标错误为零或不为零 end if;--计数脉冲事件情形 end if;--run_steps_n情形-------------------------------------------------------------
if current_state=last_step_n then {same as run_steps_n except signal state machine to finish on pulse count complete} end if;--run_steps_n情形-------------------------------------------------------------
if current_state=run_cont then if xfr_pipe command then if new cmprh value loaded then transfer any loaded pipe registers on next rising pulse edge else,signal add_error <dp n="d22"/> end if;--使管道入口有效或无效 end if;--管道xfr事件 end if;--run continuous情形-----------------------------------------------------------
if current_state=run_steps_f or current_state=last_step_f then --更新f+df,检查比较结果 if periodic_update=′1′then if df positive,(increasing f),and wf+df not greater than compare or df negative,and wf+df still greater than compare then wf<=wf+df,df<=df+ddf signal divider to find new pulse width=src_f/wf else-新的f超过规定目标 wf<=cmpr signal divider to find new pulse width=src_f/wf if new cmprh value loaded then transfer loaded pipe registers signal state machine to find new state else,signal add_error end if;--使管道入口有效或无效 end if;--频率比较情形 end if;--周期性更新 end if;--或者比较f模式
寄存器
注意:当读取包含“无关”位(x)的寄存器时,那些“无关”位(x)总是归0。
x | 寄存器名:PLSO_Delta_Frequency_Pipeline_Register(PLSODFH)大小:双字(32位)存取:只写复位值:00000000Hdf_pipe_loaded标志被设置在lsb写入上关于xfr_pipeline事件,当且仅当加载dfh_lsb时df<=dfh。参见PLSODF寄存器有关位字段的说明 |
寄存器名:PLSO_Delta_Delta_Frequency_Pipeline_Register(PLSODDFH)大小:双字(32位)存取:只写复位值:00000000Hddf_pipe_loaded标志被设置在lsb写入上关于xfr_pipeline事件,当且仅当加载ddfh_lsb时ddf<=ddfh参见PLSODDF寄存器有关位字段的说明 |
x | 寄存器名:PLSO_Compare_Pipeline_Register(PLSOCMPRH)大小:双字(32位)存取:只写复位值:00000000Hcmpr_pipe_loaded标志被设置在lsb写入上关于xfr_pipeline事件,当且仅当加载cmprh_lsb时cmpr<=cmprh参见PLSOCMPR寄存器有关使用的说明如果是run_steps_n状态,则零值或负值将产生一个脉冲。如果过渡到run_steps_n状态且CMPRH未加载,则脉冲将在先前序列中最后一个脉冲结束处停止。 |
x | 寄存器名:PLSO_Working_Frequency_Register(PLSOWF)大小:双字(32位)存取:只读,未被锁存以供在斜坡期间稳定读取,其能够在异常中止、run continuous或当DF值字段=0时被可靠地读取。复位值:00000000H关于xfr_pipeline事件,当且仅当加载cmprh_lsb时WF<=SF当运行时,能够在异常中止或run continuous模式时以所选间隔可靠地读取WF<=WF+DF |
x | 寄存器名:PLSO_Delta_Frequency_(PLSODF)大小:双字(32位)存取:只读,在管道加载附近不可靠地读取复位值:00000000H位31:增量F的符号位位30:28:步骤的运行模式000,100,111=停止/空闲步骤001=运行步骤,对脉冲计数进行比较(run_steps_n)010=运行步骤,对频率进行比较(run_steps_f)011=run continuous(run_cont)101=最末步骤,对脉冲计数进行比较(last_step_n)110=最末步骤,对频率进行比较(last_step_f)注意:dF的模式和符号能够被记录为单个读取。对于STAT寄存器内容的检查给出脉冲发生器的当前工作状态的说明。位27:24:DF加法之间的间隔的4位代码0001=>2^80010=>2^100011=>2^12.....1001=>2^241111=>2^1(仅仅测试使用)其它=>2^7(除法器能够支持的最快速率)位23:0:DF值,13位整数+11位分数 |
x | 寄存器名:PLSO_Delta_Delta_Frequency_(PLSODDF)大小:双字(32位)存取:只读,在管道加载附近不可靠地读取复位值:00000000H位31:双增量F的符号位位30:24未使用位23:0:DDF值,13位整数+11位分数 |
x | 寄存器名:PLSO_Compare_Register(PLSOCMPR)大小:双字(32位)存取:只读,在计数脉冲步骤或在管道加载附近不可靠地读取复位值:00000000H脉冲计数目标值,或以与PLSOSF相同的格式比较频率目标值脉冲计数:从加载的值到1递减计数,然后传送流水线频率比较:如果DF为正的,则迭代WF+DF直到大于比较值为止如果DF为负的,则迭代WF+DF直到小于比较值为止当范围超出WF<=CMPR时,传送流水线 |
X | 寄存器名:PLSO_Pulse_Width_Register(PLSOPW)大小:双字(26位有效,其它=0)存取:只读,在斜坡期间或管道加载附近不可靠地读取复位值:00000000H仅仅诊断使用:除法器的输出。整数时钟/脉冲 |
013AH | 寄存器名:PLSO_transfer_pipeline(PLSOXFRP)大小:--存取:只写复位值:--传送流水线地址:写入这个地址将加载的流水线移动到工作寄存器。正常的启动:·写PLSOSF,PLSODFH,PLSOCMPRH·将任意值写入到PLSOXFRP·随意地写入PLSOSF |
通过阅读上述详细说明和某些示例性实施例的附图,还有其它实施例对于本领域机技术人员而言将容易变得显而易见。应当理解的是,许多的变形、修改和附加的实施例都是可能的,所以,所有这类变形、修改和实施例都将被视作处于所附权利要求的精神和范围之内。例如,不管本申请的任何部分(例如,标题、领域、背景、概要、摘要、附图等等)的内容是什么,除非相反地清楚地规定,否则都不需要在本申请的任何权利要求中包括任何特定描述或说明的动作或元件、任何这类动作的特定序列、或任何这类元件的特定的相互关系。此外,任何动作都能被重复,任何动作都能由多个实体来执行,和/或任何元件都能被复制。此外,任何动作或元件都能被排除,动作的序列能够改变,和/或元件的相互关系能够改变。所以,实质上要把所述说明和附图视作为说明性的,而不是限制性的。此外,当在这里描述任何数量或范围时,除非另有清楚地阐明,否则那个数量或范围就是近似的。当在这里描述任何范围时,除非另有清楚地阐明,否则那个范围就包括在其中的所有值以及在其中的所有子范围。在这里已引入作为参考的任何材料(例如,美国专利、美国专利申请、书、文章等等)中的任何信息,其仅仅是被引入作为参考,从而在这类信息与这里所阐述的其它陈述和附图之间不存在矛盾。倘若这类矛盾存在,包括将使权利要求无效的矛盾,那么就明确地将所引入作为参考的材料中的任何这类矛盾信息在此不引入来作为参考。
Claims (42)
1.一种用于从可编程逻辑控制器中产生脉冲输出的方法,其包括:
在可编程逻辑控制器中,自动地将第一用户规定的脉冲频率改变为第二脉冲频率;以及
根据用户规定的线性时间率变化,以在所述第一用户规定的脉冲频率和所述第二脉冲频率之间变化的频率自动地从所述可编程逻辑控制器中输出多个脉冲。
2.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是脉冲频率相对于时间的变化。
3.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是受控系统速度相对于时间的变化。
4.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是脉冲加速度相对于时间的变化。
5.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是受控系统加速度相对于时间的变化。
6.根据权利要求1所述的方法,其进一步包括:
接收表示所述用户规定的线性时间率变化的信号。
7.根据权利要求1所述的方法,其进一步包括:
计算对应于所述第一用户规定的脉冲频率和所述第二脉冲频率之间的所述用户规定的线性时间率变化的多个脉冲频率。
8.根据权利要求1所述的方法,其进一步包括:
计算对应于所述第一用户规定的脉冲频率和所述第二脉冲频率之间的所述用户规定的线性时间率变化的多个脉冲加速度。
9.根据权利要求1所述的方法,其进一步包括:
计算对应于所述第二脉冲频率的目标脉冲频率,该第二脉冲频率是用户规定的。
10.根据权利要求1所述的方法,其进一步包括:
计算对应于所述第二脉冲频率的目标脉冲频率,该第二脉冲频率是非用户规定的。
11.根据权利要求1所述的方法,其进一步包括:
计算对应于所述用户规定的线性时间率变化的目标脉冲加速度。
12.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从图形脉冲频率输出曲线中接收到的。
13.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从图形脉冲频率输出曲线中导出的。
14.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从脉冲频率输出曲线中接收到的,所述脉冲频率输出曲线包括多个线段,每个线段都表示从递增的频率输出、递减的频率输出和恒定的频率输出中选出的频率输出。
15.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从脉冲频率输出曲线中接收到的,所述脉冲频率输出曲线包括多个线段,每个线段都包括多个用户可规定的变化特征。
16.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从脉冲频率输出曲线中接收到的,所述脉冲频率输出曲线包括多个线段,每个线段都包括从变化的幅度、变化率、变化的极性、持续时间和长度中选出的用户可规定的特征。
17.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从脉冲频率输出曲线中接收到的,所述脉冲频率输出曲线包括多个线段,该线段中的至少一个具有规定为多个脉冲的长度。
18.根据权利要求1所述的方法,其中所述用户规定的线性时间率变化是从脉冲频率输出曲线中接收到的,所述脉冲频率输出曲线包括多个线段,该线段中的至少一个具有可通过预定的外部事件或达到预定的频率目标而终止的不定长度。
19.根据权利要求1所述的方法,其进一步包括:
突然终止所述多个脉冲。
20.根据权利要求1所述的方法,其进一步包括:
自动地将所述用户规定的线性时间率变化从脉冲频率输出曲线的一个线段变成后续的线段,所述脉冲频率输出曲线包括多个线段,每个线段都具有规定为多个脉冲的长度、通过外部事件而终止的不定长度、或通过达到规定的频率目标而终止的长度。
21.根据权利要求1所述的方法,其中所述第二脉冲频率是累积频率的变化直到达到规定的脉冲计数的结果。
22.根据权利要求1所述的方法,其中所述第二脉冲频率是累积频率的变化直到外部事件发生的结果。
23.根据权利要求1所述的方法,其中所述第二脉冲频率是明确规定的频率目标。
24.一种包含动作指令的机器可读介质,其包括:
在可编程逻辑控制器中,自动地将第一用户规定的脉冲频率改变为第二脉冲频率;以及
根据用户规定的线性时间率变化,以在所述第一用户规定的脉冲频率和所述第二脉冲频率之间变化的频率自动地从所述可编程逻辑控制器中输出多个脉冲。
25.一种用于产生脉冲输出的系统,其包括:
脉冲发生器,其适应于通过以规则的规定间隔对规定的频率添加或减去规定的频率增量以创建频率规范而产生频率相对于时间的线性变化,
除法器机制,其适应于将该频率规范转换为脉宽规范,
脉宽生成器,其适应于通过根据该脉宽规范对固定基准频率的时钟进行计数来产生所期望的脉冲输出。
26.根据权利要求25所述的系统,其中所述脉冲发生器适应于通过对所述规定的频率增量添加或减去规定的加速度增量来产生加速度相对于时间的线性变化。
27.根据权利要求25所述的系统,其进一步包括多个流水线数据寄存器和控制状态机,所述流水线数据寄存器和所述控制状态机适应于一结束针对第一脉冲输出的规定的脉冲计数就提供从该第一脉冲输出的规范到第二脉冲输出规范的所计划的自动变化。
28.根据权利要求25所述的系统,其进一步包括多个流水线数据寄存器和控制状态机,所述流水线数据寄存器和所述状态机适应于一达到针对第一脉冲输出的规定的频率目标就提供从该第一脉冲输出的规范到第二脉冲输出规范的所计划的自动变化。
29.根据权利要求25所述的系统,其进一步包括多个流水线数据寄存器和控制状态机,所述流水线数据寄存器和所述状态机适应于提供从第一脉冲输出规范到第二脉冲输出规范的所计划的自动变化,该第一脉冲输出规范的持续时间被无限地扩展直到发生外部事件为止。
30.根据权利要求25所述的系统,其进一步包括多个流水线数据寄存器和控制状态机,所述流水线数据寄存器和所述状态机适应于异常中止进行中的脉冲输出规范的执行。
31.根据权利要求25所述的系统,其进一步包括多个流水线数据寄存器和控制状态机,所述流水线数据寄存器和所述状态机适应于阻塞从第一脉冲输出规范到第二脉冲输出规范的所计划的自动变化。
32.根据权利要求25所述的系统,其进一步包括多个流水线数据寄存器和控制状态机,所述控制状态机包括异常中止状态,在所述异常中止状态中通过执行下列操作来中断第一当前执行的线段的动作:暂停频率和加速度的进一步的变化;以及暂停从该第一当前执行的线段的规范到第二计划的线段的规范的所计划的自动变化;当新的规范代替所述第二计划的线段时允许稳态脉冲列的维持,其中异常中止状态是通过外部命令、通过初期的数学错误的检测、或是通过与所述第二计划的线段相关联的不完整的规范数据的检测而进入的。
33.根据权利要求25所述的系统,其进一步包括更新间隔计数器和已编码的规定的间隔。
34.根据权利要求25所述的系统,其进一步包括更新间隔计数器和已编码的规定的间隔,规则的规定的间隔的持续时间控制对频率和加速度的递增加法的重复。
35.根据权利要求25所述的系统,其进一步包括停止器(halter),其适应于一结束最后的规范就精确地停止脉冲输出。
36.根据权利要求25所述的系统,其进一步包括计数器,该计数器适应于在受控频率脉冲列操作的无限扩展的序列上监控绝对和相对位置。
37.根据权利要求25所述的系统,其进一步包括计数器,该计数器适应于在受控频率脉冲列操作的无限扩展的序列上监控脉冲计数。
38.根据权利要求25所述的系统,其进一步包括可选时钟输入频率。
39.根据权利要求25所述的系统,其中所述系统是以集成电路实现的。
40.根据权利要求25所述的系统,其中所述系统是以可编程逻辑控制器实现的。
41.根据权利要求25所述的系统,其中所述系统是以包括网络接口的信息装置实现的。
42.根据权利要求25所述的系统,其中所述系统是以包括因特网接口的信息装置实现的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US45021003P | 2003-02-26 | 2003-02-26 | |
US60/450,210 | 2003-02-26 | ||
US10/770,663 | 2004-02-03 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110389608.4A Division CN102393674B (zh) | 2003-02-26 | 2004-02-26 | 产生脉冲输出的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1781063A true CN1781063A (zh) | 2006-05-31 |
Family
ID=36770664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200480011133 Pending CN1781063A (zh) | 2003-02-26 | 2004-02-26 | 具有线性频率变化的可编程逻辑控制器的脉冲输出功能 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1781063A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103733150A (zh) * | 2011-08-03 | 2014-04-16 | 三菱电机株式会社 | 程序生成装置及可编程逻辑控制器 |
CN104716931A (zh) * | 2013-12-17 | 2015-06-17 | 罗伯特·博世有限公司 | 产生脉冲的方法以及产生脉冲所用的电子设备的电路装置 |
CN109831185A (zh) * | 2018-12-25 | 2019-05-31 | 无锡信捷电气股份有限公司 | 调制多段plc脉冲的方法及装置 |
CN111145812A (zh) * | 2018-11-02 | 2020-05-12 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
-
2004
- 2004-02-26 CN CN 200480011133 patent/CN1781063A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103733150A (zh) * | 2011-08-03 | 2014-04-16 | 三菱电机株式会社 | 程序生成装置及可编程逻辑控制器 |
CN103733150B (zh) * | 2011-08-03 | 2016-04-20 | 三菱电机株式会社 | 程序生成装置及可编程逻辑控制器 |
CN104716931A (zh) * | 2013-12-17 | 2015-06-17 | 罗伯特·博世有限公司 | 产生脉冲的方法以及产生脉冲所用的电子设备的电路装置 |
CN104716931B (zh) * | 2013-12-17 | 2017-10-13 | 罗伯特·博世有限公司 | 产生脉冲的方法以及产生脉冲所用的电子设备的电路装置 |
CN111145812A (zh) * | 2018-11-02 | 2020-05-12 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
CN111145812B (zh) * | 2018-11-02 | 2023-09-15 | 爱思开海力士有限公司 | 存储器装置及其操作方法 |
CN109831185A (zh) * | 2018-12-25 | 2019-05-31 | 无锡信捷电气股份有限公司 | 调制多段plc脉冲的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1261694A (zh) | 信息处理装置、信息处理系统及信息提供介质 | |
CN102393674B (zh) | 产生脉冲输出的方法和系统 | |
CN1815439A (zh) | 用于目标设备显示模拟的方法和系统 | |
CN1855040A (zh) | 带有可重用得分和建议的可重据用数的资源创作 | |
CN1758246A (zh) | 用于脱机显示和辅助信息导航的数据缓存 | |
CN1713158A (zh) | 信息显示设备、信息显示方法、以及计算机程序 | |
CN1153948A (zh) | 序列控制用编程系统和执行序列控制程序的控制单元 | |
CN1869925A (zh) | 计算机图形系统中的进行控件风格定制的方法 | |
CN1703671A (zh) | 用于编程智能模块的向导 | |
US20060015844A1 (en) | Automatic hardware and firmware generation for multi-function custom controls | |
JP2022163059A (ja) | 作業指示システムおよび方法 | |
Swindells et al. | The role of prototyping tools for haptic behavior design | |
CN1781063A (zh) | 具有线性频率变化的可编程逻辑控制器的脉冲输出功能 | |
EP3989068A1 (en) | Performing a computerized task with diverse devices | |
Bertelsen et al. | Augmented reality as a design tool for mobile interfaces | |
US8225145B2 (en) | Information processing apparatus and diagnosis result notifying method | |
JP2005149406A5 (zh) | ||
JP2008096935A (ja) | 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体 | |
CN1302374C (zh) | 程序执行装置以及用于其中的程序执行方法和程序 | |
CN1920808A (zh) | 显示装置、显示方法以及存储有显示程序的存储介质 | |
JP2009301523A (ja) | タッチパネル式操作電子機器 | |
CN1882064A (zh) | 具有画面控制窗功能的图像系统及其控制方法 | |
JP2007295143A (ja) | 画像処理装置 | |
US9690754B2 (en) | System and method for document creation | |
JP2011145977A (ja) | 画像処理プログラム、および画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: SIEMENS BUILDING TECH AG Free format text: FORMER OWNER: SIEMENS INDUSTRIAL AUTOMATION, INC. Effective date: 20100729 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20100729 Address after: American Georgia Applicant after: Siemens Building Tech AG Address before: Georgia, USA Applicant before: Siemens Industrial Automation, Inc. |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20060531 |