微计算机转让专利

申请号 : CN201810783747.7

文献号 : CN109117395B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 铃木慎一泷常雄一

申请人 : 瑞萨电子株式会社

摘要 :

本公开的实施例涉及微计算机。微计算机被提供用于每个工业装置以对它们进行同步控制,并且微计算机包括CPU、外围模块和通信接口。外围模块基于特定控制参数控制外部装置。通信接口包括时间寄存器,所述时间寄存器以时间序列与其它设备同步。如果连续设置的校正时间与时间寄存器匹配,则通信接口向CPU和外围模块发出CPU中断和外围模块中断。响应于外围模块中断,外围模块将控制参数从当前值变为更新值。响应于CPU中断,CPU启动更新程序来计算控制参数的下一更新值并将计算值写入到外围模块。

权利要求 :

1.一种由微计算机执行以基于操作控制参数生成用于控制外部装置的操作的操作控制信号的方法,所述微计算机包括CPU、第一寄存器和第二寄存器,所述方法包括如下步骤:(a)经由网络与其它设备通信;

(b)基于经由所述网络的通信将第一时间和第二时间与所述其它设备同步;

(c)将所述第一时间与所述第二时间进行比较;

(d)基于所述第一时间与所述第二时间的所述比较的结果,将存储在所述第二寄存器中的更新值传送至所述第一寄存器,所述第一寄存器存储所述操作控制参数的当前值;

(e)基于所述操作控制参数的所述当前值生成用于控制所述外部装置的操作的所述操作控制信号;以及

(f)基于所述第一时间与所述第二时间的所述比较的所述结果,计算所述操作控制参数的另一更新值,

其中所述操作控制信号是脉冲宽度调制控制信号,以及其中所述操作控制参数是所述脉冲宽度调制的占空比。

2.根据权利要求1所述的方法,其中所述第二时间包括校正时间;

其中所述校正时间是经由所述网络供应的;以及其中所述更新值在所述校正时间被用作所述操作控制参数。

3.根据权利要求2所述的方法,还包括如下步骤:(g)保持多个所述校正时间,将所述第一时间与所述第二时间进行比较,以及如果发现匹配,则按所述校正时间被供应的相同顺序,将所述校正时间应用至所述第二时间。

4.根据权利要求2所述的方法,其中步骤(d)包括如下步骤:保持所述操作控制参数的多个更新值,以及按基于所述第一时间与所述第二时间的所述比较的所述结果来计算数据的相同顺序,更新由所述数据保持的所述操作控制参数的所述当前值。

5.根据权利要求4所述的方法,其中所述操作控制信号包括三相控制信号。

6.根据权利要求1所述的方法,还包括如下步骤:(h)保持开始时间和校正时间,其中所述开始时间是基于经由所述网络的通信供应的;

其中所述校正时间指定用于将所述操作控制参数从所述当前值更新为所述更新值的时间,以及

其中所述步骤(d)包括如下步骤:由在所述操作控制参数的、在所述开始时间处的初始值来更新所述操作控制参数的所述当前值。

7.一种由微计算机执行以基于操作控制参数生成用于控制外部装置的操作的操作控制信号的方法,所述微计算机包括CPU、第一寄存器和第二寄存器,所述方法包括如下步骤:(a)经由网络与其它设备通信;

(b)基于经由所述网络的通信将第一时间和第二时间与所述其它设备同步;

(c)将所述第一时间与所述第二时间进行比较,以及如果发现匹配,则向所述CPU发出CPU中断,以及向外围模块发出外围模块中断;

(d)基于所述外围模块中断,将存储在所述第二寄存器中的更新值传送至所述第一寄存器,所述第一寄存器存储所述操作控制参数的当前值;

(e)基于所述操作控制参数的所述当前值生成用于控制所述外部装置的操作的所述操作控制信号;以及

(f)基于所述第一时间与所述第二时间的所述比较的结果,计算所述操作控制参数的另一更新值;

其中所述操作控制信号是脉冲宽度调制控制信号,以及其中所述操作控制参数是所述脉冲宽度调制的占空比。

8.根据权利要求7所述的方法,其中所述第二时间包括校正时间;

其中所述校正时间是经由所述网络供应的;以及其中所述更新值在所述校正时间被用作所述操作控制参数。

9.根据权利要求8所述的方法,还包括如下步骤:(g)保持多个所述校正时间,将所述第一时间与所述第二时间进行比较,以及如果发现匹配,则按所述校正时间被供应的相同顺序,将所述校正时间应用至所述第二时间。

10.根据权利要求7所述的方法,其中所述外围模块中断可选择为被耦合至多个外部装置中的一个外部装置。

11.根据权利要求8所述的方法,其中步骤(d)包括如下步骤:保持所述操作控制参数的多个更新值,以及按基于所述第一时间与所述第二时间的所述比较的所述结果来计算数据的相同顺序,更新由所述数据保持的所述操作控制参数的所述当前值。

12.根据权利要求11所述的方法,其中所述操作控制信号包括三相控制信号。

13.根据权利要求7所述的方法,还包括如下步骤:(h)保持开始时间和校正时间,其中所述开始时间是基于经由所述网络的通信供应的;

其中所述校正时间指定用于将所述操作控制参数从所述当前值更新为所述更新值的时间,以及

其中所述步骤(d)包括如下步骤:由在所述操作控制参数的、在所述开始时间处的初始值来更新所述操作控制参数的所述当前值。

说明书 :

微计算机

[0001] 本申请是于2013年11月25日提交的申请号为201310603564.X、名称为“微计算机”的中国发明专利申请的分案申请。
[0002] 相关申请的交叉引用
[0003] 本文通过引用引入2012年11月26日提交的日本专利申请No.2012‑257304的全部公开内容,包括说明书、附图和摘要。

技术领域

[0004] 本发明涉及适于控制工业装置的微计算机。更具体地,本发明涉及对于同步控制特别有用的微计算机。

背景技术

[0005] 一些类型的装备(诸如交流(AC)伺服系统、通用变频器以及可编程逻辑控制器(PLC))需要同步控制。这样的工业装置需要通过在特定时间发出特定指令来控制工业马
达。为工业装置提供微计算机,并允许变频器使用等于脉宽调制(PWM)控制信号的指令来控
制工业马达。脉宽以占空比表示,占空比即代表高和低时段之间的比率的百分比。工业装置
可以同时操作用于一系列工艺。在这样的情况下,为每个工业装置提供的微计算机控制对
应的工业马达。工业装置需要同步时间(时间同步),以便以特定时间顺序一致地发出一系
列指令。
[0006] 工业装置之间的时间同步所需的同步精度迅速趋向于严格。在一些情况下,需要精度如微秒或小于微秒那么高。基于串行通信的通信或者专有通信已经被用于工业装置的
时间同步。近年来,对于向以太网附加同步功能的同步以太网通信(以下简称为同步以太
网),存在着日益增长的需求。同步以太网包括基于IEEE1588标准的以太网/IP或工业以太
网(Profinet)以及基于环或菊花链网络的工业以太网(EtherCAT)。时间同步精度往往越来
越严格。遵循IEEE1588标准的一些同步以太网技术支持微秒或小于微秒那么高的精度。
[0007] 专利文献1中公开的工业控制器包括彼此耦合的多个单元,每个单元具有精度在纳秒级的钟控功能。在这些单元中,一个用作主设备(master),其它作为从设备(slave)。设
置调整装置来使从设备的时间轴逐步地接近主设备的时间轴。
[0008] 专利文献2中公开的技术可以在不需要调整定时的情况下在联网的控制器之间同步处理程序的执行。针对每个控制器预先编程时间表,以执行协同操作。每个控制器包括以
跟踪绝对时间的时钟模块和用于控制同步的时钟同步装置。如果发生发起程序的事件,则
控制器广播事件发生的时间作为对于其它控制器的触发。控制器在接收到该触发时,向该
触发添加特定延迟时间以生成延迟触发。控制器根据该延迟触发来发起一系列程序。
[0009] 专利文献3中公开的技术确保联网控制器和设备之间的时间同步精度。主设备包括主全局定时器。每个设备包括从全局定时器和操作周期定时器。主设备发送包含时间戳
的分组,时间戳设置有由主全局定时器指示的全局时间。每个从设备接收该分组以执行纠
错,即,使用时间戳指示的周期控制同步定时以及从全局定时器指示的时间差,将操作周期
定时器与周期控制进行同步。
[0010] 专利文献4中公开的动作控制系统根据不断变化的网络负载情形支持同步操作并且免于同步误差。主设备监视通信延迟并且强制从设备在等于当前时间加上延迟时间的时
间启动同步操作。
[0011] 专利文献5中公开的通信控制系统提供多个控制器,每个控制器包括通信控制器和致动器,并且操控控制目标。控制器经由网络耦合并且可以彼此同步地操作。第二实施例
提供使用遵循IEEE1588的时间同步协议的时间同步的通信控制系统。整个通信控制系统使
得时间同步。然后,通信控制器从控制器获取通信延迟并且在将控制指令传送给控制器时
调整通信延迟。
[0012] 专利文献6中公开的数据传送器将接收到的图像数据变为来自其它图像信息设备的图像数据。图像信息设备包括时钟处理部分,该时钟处理部分生成与从网络接收到的时
间信息同步的当前时间。当经由网络检测到与从系统控制器接收到的特定时间匹配时,图
像信息设备改变接收到的数据。即使在跟随改变的I帧与下一I帧之间输入改变请求,这也
使得能够与图像帧(I帧)同步地改变图像数据。
[0013] 专利文献
[0014] 专利文献1:日本未审专利公开No.2009‑157913
[0015] 专利文献2:日本未审专利公开No.2007‑213474
[0016] 专利文献3:日本未审专利公开No.2002‑164872
[0017] 专利文献4:日本未审专利公开No.2007‑226492
[0018] 专利文献5:日本未审专利公开No.2012‑60207
[0019] 专利文献6:日本未审专利公开No.2000‑59406

发明内容

[0020] 本发明人研究了专利文献1至专利文献6,发现以下问题。
[0021] 为了同步控制,将工业装置联网。一个主设备耦合到同一网络。工业装置之一可以用作主设备。主设备根据统一参考时间发出指定执行时间的指令。基于该指令控制诸如马
达之类的设备。如果仅主设备被设置有时钟来对参考时间进行钟控,则作为从设备的工业
装置由于通信延迟几乎无法提供同步控制。专利文献4中公开的技术考虑通信延迟向从设
备提供用于启动处理的时间。通信延迟随着网络负载变化,并因此受到周期性的监视。专利
文献1中公开的技术为作为从设备的每个工业装置提供时钟。该技术校正主时钟与从时钟
之间的误差并将这些时钟以纳秒量级的精度同步。这类似于专利文献3中公开的技术。假设
其中作为从设备的每个工业装置具有与主设备同步的时钟并且在预定时间调度处理。在这
样的情况下,如专利文献2中所述,可以使用预先存储启动处理的时间的时间表来将处理进
行同步。然而,根据专利文献2,作为从设备的控制器接收启动处理的触发,并通过向接收到
的触发添加指定延迟时间而生成延迟触发,并且根据延迟触发启动一系列处理程序。这类
似于专利文献5中公开的技术。简单地使用预先存储启动处理的时间的时间表,无法取得时
间同步。
[0022] 一般而言,工业装置使用微计算机控制诸如马达之类的控制设备。微计算机包括控制信号输入/输出部分,控制网络接口和诸如马达之类的设备。微计算机执行控制程序来
生成控制信号。如专利文献1中所述的那样,作为从设备的工业装置包括微计算机并且可以
设置有与主设备以纳秒量级的精度同步的时钟。如在专利文献2中所述的那样,从工业装置
可以设置有预先存储启动处理的时间的时间表,并提供允许微计算机启动处理的触发。在
这种情况下,多个从设备以纳秒量级的时间同步。期望以相当高精度的时间出现触发。微计
算机基于触发启动处理,但无法以相当高的精度控制诸如马达之类的设备。微计算机被供
给有触发作为中断。微计算机的中断处理包括开销,诸如将正在运行的程序保存在寄存器
中,确定中断原因,以及分流中断的处理。这些处理需要几十个至几百个步骤。该处理随着
前一活跃程序或其它因素的情形而大大变化。即使微计算机每个步骤操作十纳秒,中断处
理的开销也需要几百纳秒至几微秒。也就是,处理变化包括在输入触发的时间与在诸如马
达之类的设备的控制信号上反映处理结果的时间之间的、范围从几百纳秒到几微秒的中断
处理开销。
[0023] 如果工业装置的同步控制需要几毫秒的精度,则范围从几百纳秒到几微秒的上述变化极小。然而,如果需要精度为1微秒或低于1微秒那么高,则这样的变化是显著的。专利
文献6中描述的图像信息设备能够实现纳秒量级精度的帧同步。刚好需要帧同步来在帧接
收和显示之间切换。帧同步完全基于硬件,与变化因素无关。然而,复杂处理使得它实际上
不可能与大量执行步骤中的变化因素无关地使用硬件来控制工业装置。工业装置不可避免
地使用软件控制。不可能避免包括中断处理开销的范围从几百纳秒到几微秒的变化。因此,
难以确保时间同步和延迟时间。
[0024] 以下描述用于解决这些问题的方式。通过参照说明书中的以下描述和所附附图,可以容易地确定本发明的这些和其它目的和新颖特征。
[0025] 本发明的实施例提供以下装置。
[0026] 用于控制工业装置中的诸如马达之类的设备的微计算机包括:CPU、用于基于指定参数控制外部装置的外围模块以及能够经由网络与其它设备通信的通信接口。通信接口包
括时间寄存器和事件寄存器。时间寄存器保持用于基于经由网络的通信与其它设备同步的
时间。通信接口将时间寄存器中保持的值与事件寄存器中保持的值进行比较。如果发现匹
配,则通信接口向CPU发出CPU中断,并且向外围模块发出外围模块中断。外围模块包括比较
寄存器和缓冲寄存器。比较寄存器保持用于控制外部装置的参数的当前值。缓冲寄存器保
持参数的更新值。外围模块生成控制信号以基于保持在比较寄存器中的当前值控制外部装
置。响应于外部模块中断,外围模块向比较寄存器传送存储在缓冲寄存器中的更新值以更
新当前值。响应于CPU中断,CPU启动参数更新程序以计算参数的下一更新值并将计算的更
新值写入到缓冲寄存器。
[0027] 下面概述实施例提供的效果。
[0028] 高度精确的同步和延迟时间可以确保参数校正时间,而不会受由于CPU中断和用于执行参数更新程序的时间的变化导致的开销影响。

附图说明

[0029] 图1是示出根据第一实施例的微计算机的配置的框图;
[0030] 图2例示了用于时间同步的设备的网络配置;
[0031] 图3是示出根据第一实施例的微计算机的操作的定时图;
[0032] 图4是示出根据第二实施例的微计算机的配置的框图;
[0033] 图5是示出微计算机与外部设备之间的耦合的框图;
[0034] 图6是示出根据第二实施例的定时器的配置的框图;
[0035] 图7是示出根据第二实施例的定时器的操作的定时图;
[0036] 图8是示出根据第二实施例的微计算机的复位例行程序的流程图;
[0037] 图9是示出根据第二实施例的微计算机的CPU中断例行程序的流程图;
[0038] 图10是示出根据第二实施例的微计算机响应于定时器中断的处理的流程图;
[0039] 图11是示出根据第三实施例的微计算机的配置的框图;
[0040] 图12是示出根据第三实施例的微计算机的复位例行程序的流程图;
[0041] 图13是示出根据第三实施例的微计算机的CPU中断例行程序的流程图;
[0042] 图14是根据第三实施例的微计算机响应于定时器中断的处理的流程图;
[0043] 图15是示出根据第四实施例的微计算机的配置的框图;
[0044] 图16是示出根据第四实施例的微计算机的复位例行程序的流程图;
[0045] 图17是示出根据第五实施例的微计算机的配置的框图;
[0046] 图18是根据第五实施例的微计算机的复位例行程序的流程图;
[0047] 图19提供示出根据第五实施例的微计算机响应于定时器中断的处理和CPU中断例行程序的流程图;以及
[0048] 图20提供示出根据第五实施例的微计算机响应于计数器计数方向的改变的处理和比较匹配中断例行程序的流程图。

具体实施方式

[0049] 1.实施例概要
[0050] 下面概述本申请公开的代表性实施例。在下面的描述中,括号中的参考标号对应于所附附图中所示的那些参考标号,并且仅指示对应组件概念的示例。
[0051] <1>比较事件寄存器与时间寄存器(参见图1至图3)
[0052] 微计算机(1)包括CPU(2)、用于基于指定参数控制外部装置的外围模块(4)、以及能够经由网络(92)与其它设备(91)通信的通信接口(3,7)。
[0053] 通信接口包括第一寄存器(11)、第二寄存器(12)和比较电路(14)。第一寄存器保持用于基于经由网络的通信与其它设备同步的时间。比较电路将第一寄存器中保持的值与
第二寄存器中保持的值进行比较。如果发现匹配,则比较电路向CPU发出CPU中断(INT_C),
并且向外围模块发出外围模块中断(INT_T)。
[0054] 外围模块包括第三寄存器(21)和第三寄存器(22)。第三寄存器保持参数的当前值。第四寄存器保持参数的更新值。外围模块生成控制信号(32)以基于当前值控制外部装
置。
[0055] CPU能够响应于CPU中断执行参数更新程序来开始计算参数的更新值并且将更新值写入到第四寄存器。
[0056] 外围模块响应于外围模块中断向第三寄存器传送第四寄存器中存储的值。
[0057] 从而,对于参数校正时间可以确保高度精确的同步和延迟时间,而不受由于CPU中断和执行参数更新程序的时间的变化导致的开销影响。
[0058] <2>PWM控制
[0059] 根据项1,外围模块生成脉宽调制的控制信号以驱动外部耦合设备(93)。参数提供用于指定脉宽调制占空比的值。通信接口将校正时间(tevent)写入到第二寄存器。校正时
间经由网络被供给到通信接口,并指定用于将参数从当前值更新为更新值的时间。参数更
新程序计算在校正时间将提供给参数的更新值。
[0060] 从而,可以基于高度精确的时间同步操作外部耦合设备。
[0061] <3>根据第一实施例的事件缓冲器(参见图4至图10)
[0062] 通信接口包括第一缓冲器(13),该第一缓冲器能够保持至少一条数据并以与输入数据的顺序输出保持的数据。通信接口将校正时间写入第一缓冲器,将第一寄存器中保持
的值与第二寄存器中保持的值进行比较,并且如果发现匹配,则将来自第一缓冲器的输出
写入到第二寄存器。
[0063] 这使得能够减少对用于将校正时间从CPU(2)写入到通信接口(3)的定时的限制。
[0064] <4>中断选择电路
[0065] 根据项(2),外围模块中断经由中断选择电路(9)耦合到外围模块。
[0066] 这使得能够选择外围模块作为外围模块中断的目标,并且提高微计算机的通用特性。
[0067] <5>PWM生成器电路
[0068] 根据项(2),外围模块中断直接耦合到外围模块。
[0069] 外围模块包括PWM生成器电路(20_3)和第四寄存器(22_3),并且包括第二缓冲器(17),该第二缓冲器能够保持至少一条数据并且以输入数据的相同顺序输出保持的数据。
PWM生成器电路基于第三寄存器(21_3)中保持的电流值来生成脉宽调制的控制信号,并且
当输入外围模块中断时,将从第二缓冲器输出的值传送到第三寄存器。
[0070] 这使得能够减少对用于将参数从CPU(2)写入到外围模块(4_3)的定时的限制。
[0071] <6>相位调整电路
[0072] 根据项5,PWM生成器电路生成3相控制信号。外围模块进一步包括可变延迟电路(30_U,30_V,30_W)、相位调整电路(29)和相位寄存器(18)。可变延迟电路与3相控制信号对
应地插入。相位调整电路向可变延迟电路供给延迟量。相位寄存器向相位调整电路供给相
位调整参数。
[0073] 这能够实现对需要相位调整的外部装置(诸如马达之类)的同步控制。
[0074] <7>启动时的同步
[0075] 根据项1,外围模块生成脉宽调制的控制信号以控制外部耦合设备(93)。参数提供用于表示脉宽调制占空比的值。
[0076] 通信接口将开始时间(tstart)和校正时间(tevent)写入到第二寄存器。开始时间经由网络被提供到通信接口。校正时间指定用于将参数从当前值更新为更新值的时间。
[0077] 参数更新程序包括在开始时间将参数的初始值写入到第三寄存器、响应于开始时间的CPU中断允许外围模块中断以及禁止后续的CPU中断的步骤。
[0078] 这使得能够确保开始时间时的高度精确的同步和延迟时间。
[0079] <8>控制多个设备
[0080] 根据项7,外围模块生成多组脉宽调制的控制信号以控制多个外部耦合设备(93_1和93_2)。参数提供代表与每组控制信号对应的脉宽调制占空比的多组值。
[0081] 通信接口包括对应于多组控制信号的多个第二寄存器,并且将开始时间和校正时间写入到每个第二寄存器。开始时间和校正时间经由网络被供给到通信接口并且对应于每
组控制信号。
[0082] 比较电路将第一寄存器中保持的值与第二寄存器中保持的值(12_1和12_2)进行比较。如果发现匹配,则比较电路向外围模块发出对应于多组控制信号的多个外围模块中
断(INT_T1和INT_T2)。
[0083] 外围模块包括对应多组控制信号的第三寄存器和第四寄存器,并且基于对应于每组控制信号的当前值生成该多组控制信号。
[0084] 外围模块响应于外围模块中断将对应第四寄存器中存储的值传送给对应第三寄存器。
[0085] 这使得能够独立地供给用于控制外部装置的参数的校正时间,并且提供更加高度精确和更多样的同步控制。
[0086] 2.实施例的具体描述
[0087] 将更详细地描述实施例。
[0088] 第一实施例
[0089] 图1是示出根据第一实施例的微计算机的配置的框图。微计算机1包括CPU 2、通信接口3、外围模块4和存储器5。通信接口3可以经由网络与其它设备91通信。外围模块4基于
指定参数控制外部装置。这些组件经由总线6彼此耦合。微计算机1可以配置为根据已知设
计和制造技术在单个衬底上形成的大规模集成(LSI)电路。
[0090] 通信接口3包括同步通信部分10、时间寄存器11、事件寄存器12和比较电路14。端子31耦合到网络92并且设置有与同步通信部分10耦合的物理接口7。物理接口7提供满足网
络92的物理层规范的电路。如果网络92为以太网,则提供以太网电路7。时间寄存器11基于
经由网络92的通信钟控与其它设备同步的本地时间。时间寄存器11包括通过时钟信号以指
定精度驱动的计数器。参照同步通信部分10经由网络92接收的主时间来校准时间寄存器
11。图2例示了时间同步的设备的网络配置。主设备90经由网络92耦合到从设备91_1至91_
N。如图2所示,网络92使用例如菊花链拓扑。网络92可以经由集线器使用星形拓扑。此外,网
络92可以是有线或无线的并且可以以任意形式获得。主设备90和从设备91_1至91_N中的每
一个包括用于保持时间的时钟装置。从设备91_1至91_N中的每一个允许对应的时钟装置将
其时间与主设备90的时间A同步。时钟装置的时间不需要总是等于时间A。可以在它们之间
提供指定偏移。设备之间的时间差包括指定给设备的偏移时间和网络上的传输延迟。根据
IEEE1588标准,例如以太网帧通信可以将N个从设备(91_1至91_N)的时间(B1至BN)调整为
主设备90的时间A。
[0091] 事件寄存器保持用于更新控制外部装置的参数的时间(校正时间)。校正时间经由网络92相继地输入到微计算机1。CPU 2经由通信接口3的同步通信部分10接收校正时间。
CPU 2将接收到的校正时间相继地写入到事件寄存器12。如果写入的校正时间还没有逝去,
则CPU 2可以接收新的校正时间。在这样的情况下,CPU 2通过将新的校正时间存储在例如
存储器5中来维持新的校正时间。
[0092] 比较电路14将时间寄存器11中保持的值(本地时间)与事件寄存器12中保持的值(校正时间)进行比较。如果发现匹配,则比较电路14向CPU 2发出CPU中断INT_C,并且向外
围模块4发出外围模块中断INT_T。CPU中断INT_C和外围模块中断INT_T可以在不同的时间
或者同时发生。
[0093] 外围模块4包括外部装置控制信号生成器20、比较寄存器21和缓冲寄存器22。比较寄存器21保持控制外部装置的参数的当前值。缓冲寄存器22保持更新的参数值。外部装置
控制信号生成器20生成控制信号以基于比较寄存器21中保持的当前值控制外部装置。控制
信号32经由端口8输出。如果外部装置代表例如AC马达,则控制信号32等于PWM信号。参数提
供确定占空比的值。端口8提供将用于驱动LSI端子的信号或者从该端子供给的信号引入到
内部的电路。使用已知电路和设备技术来配置端口8。端口8可以包括驱动电路、输入电路、
电平转换电路、上拉电路、抵御静电破坏的保护电路或保护元件、输入/输出转换电路和端
子功能转换电路。
[0094] 例如,CPU 2提供可以执行存储器5中存储的程序的处理器。CPU2可以执行参数更新程序。当被供给有CPU中断INT_C时,参数更新程序开始计算参数的更新值并将计算的更
新值写入到缓冲寄存器22。外围模块4包括传送电路23。当被供给有外围模块中断INT_T时,
传送电路23将待存储于缓冲寄存器22中的值传送给比较寄存器21。
[0095] 存储器5可作为随机存取存储器(RAM)、只读存储器(ROM)或二者的组合来获得。存储器5可以存储由CPU 2执行的程序或数据。可获得总线6作为示例装置,以将CPU 2和存储
器5与其它组件耦合并且可以以另外的方式进行配置。例如,总线6可以附加地提供有外部
总线接口以使用其它外部存储器,或者可以包含高速缓存存储器或存储器管理单元。
[0096] 图3是示出根据第一实施例的微计算机的操作的定时图。时间寄存器11的值在图3中被阴影化,并且代表被实时钟控的本地时间tclock。控制这些装置以与主设备同步,并且
将这些装置耦合到网络92以保持相应的本地时间。为了遵循IEEE1588标准,例如本地时间
与主设备管理的时间以纳秒量级的高精度同步。在经由网络92相继输入到微计算机1的校
正时间tevent(0)、tevent(1)、tevent(2)等处,更新用于控制外部装置的参数。CPU 2将第
一校正时间tevent(0)写入到事件寄存器12。同时,CPU 2向缓冲寄存器22写入将在校正时
间处更新的参数的值p(0)。在时间t1处,假设时间寄存器11中保持的本地时间tclock与事
件寄存器12中保持的校正时间tevent(0)匹配。然后,向CPU 2发出CPU中断INT_C。向外围模
块4发出外围模块中断INT_T。当外围模块中断INT_T输入到外围模块4时,传送电路23将存
储于缓冲寄存器22中的第一更新值p(0)传送给比较寄存器21。外部装置控制信号生成器20
针对由更新值p(0)指定的占空比(p(0))生成控制信号32。在发出外围模块中断INT_T之后
延迟发生,直到上述一系列操作针对由更新值p(0)指定的占空比(p(0))生成控制信号32。
可以将该延迟限制到若干周期。延迟周期的数目可以是恒定的。这是因为不需要软件,并且
设计完全取决于硬件。根据上述示例,外部装置控制信号生成器20生成并输出其占空比可
用的信号。然而,信号并不限于此。任何信号如果它在从比较寄存器21供给的参数的控制下
则就可用。例如,可用信号包括其幅度随参数变化的高频信号以及其频率随参数变化的交
流信号。该示例使用一个参数,但并不限于此。可以使用多个参数。
[0097] 当在时间t1处输入CPU中断INT_C时,CPU 2开始计算t2时的下一更新值p(1)。在输入CPU中断INT_C之后出现一些延迟(开销),直到中断处理开始计算参数的更新值。当输入
CPU中断INT_C时,CPU 2确定中断原因。CPU 2参照矢量表查找中断原因。CPU 2获取与中断
处理的中断原因对应的分流地址。为了也中断激活处理,CPU2保存通用寄存器的内容并且
然后分流到矢量表中指定的目的地地址来开始中断处理。以此方式,在输入中断信号之后
出现一些延迟,直到中断处理开始。由于CPU中断导致的开销也随着要保持的数据量或总线
业务量而变化。
[0098] 在中断处理中,CPU 2执行参数更新程序来计算参数的下一更新值p(1)。此外,CPU 2在例如时间t3向事件寄存器12写入下一校正时间tevent(1)。根据第一CPU中断,CPU 2可
以检测到第一校正时间tevent(0)已经过去。在由该中断激活的中断处理例行程序期间CPU 
2刚好需要向事件寄存器12写入下一校正时间tevent(1)。这可以防止下一校正时间在已经
写入的校正时间到达之前被覆盖。CPU 2已经计算时间t4处的下一更新值p(1),然后将该值
写入到缓冲寄存器22。该处理以包括在中断处理例行程序中,使得可以防止缓冲寄存器22
中保持的值在前一更新值p(0)传送到比较寄存器21之前被覆盖。
[0099] 在时间t5处,本地时间tclock与校正时间tevent(1)匹配。然后,发出外围模块中断INT_T。更新值p(1)从缓冲寄存器22被传送到比较寄存器21。在时间t5,控制信号32的占
空比变为由更新值p(1)指定的值占空比(p(1))。在时间t5,CPU中断INT_C也发生以启动中
断处理。在时间t6,CPU 2开始计算下一更新值p(2)。在时间t8,CPU完成计算并且将该值写
入到缓冲寄存器22。在相同的中断处理例行程序中,在时间t7将下一校正时间tevent(2)写
入到事件寄存器12。
[0100] 如上所述,由于CPU中断导致的开销改变开始计算更新值p(1)的时间t2或者也可以改变用于完成更新值p(1)的计算的时间t4。然而,更新值p(1)作为控制信号32的输出在
时间t5反映在占空比中。在时间t5,本地时间tclock与指定校正时间tevent(1)匹配。假设
将相同的校正时间tevent(1)指定给从设备91_1至91_N。然后,时间t2和t4随着从设备91_1
至91_N上的CPU中断导致的开销以及执行参数更新程序的时间变化而变化。另一方面,在时
间t5将参数更新为更新值p(1)。在时间t5,设备以与本地时间tclock的同步精度那么高的
精度而同步。本地时间tclock在设备之间高度精确地同步。在时间t5,本地时间tclock与指
定校正时间tevent(1)匹配。因此,指定相同校正时间tevent(1)的设备以与本地时间
tclock的同步精度那么高的精度彼此同步。
[0101] 因此,对于参数校正时间,可以确保高度精确的同步和延迟时间,而不受由于CPU中断和执行参数更新程序的时间变化导致的开销影响。
[0102] 上述实施例以及稍后的实施例包含诸如同一时间或时间匹配之类的表达。这样的表达并不旨在于被严格理解,而是暗示诸如流水线之类的硬件配置误差的若干周期。
[0103] 第二实施例
[0104] 图4是示出了根据第二实施例的微计算机的配置的框图。与根据第一实施例的通信接口3相比,微计算机1中包括的通信接口3进一步包括事件缓冲器13。事件缓冲器13包括
寄存器15_1和15_2。事件缓冲器13以写入校正时间的顺序向事件寄存器12传送从总线6写
入的校正时间。事件缓冲器13可以被配置为例如先入先出(FIFO)移位寄存器。如果时间寄
存器11中的值与事件寄存器12中的值匹配,则事件缓冲器13向事件寄存器12传送存储于其
中的最早值。如果配置为FIFO系统,则事件缓冲器13连续移位后续值。由于提供了事件缓冲
器13,所以CPU 2可以向事件缓冲器13相继写入接收到的校正时间tevent(0)、tevent(1)、
tevent(2)等。假设不提供事件缓冲器13并且在本地时间tclock到达校正时间tevent(0)之
前将下一校正时间tevent(1)写入到事件寄存器12。在这样的情况下,在校正时间tevent
(0)处不更新参数。如果在晚于tevent(1)的时间处将下一校正时间tevent(1)写入事件寄
存器12,则在校正时间tevent(1)不更新参数。作为结果,限制了将校正时间tevent(1)写入
事件寄存器12的定时。例如,对于当本地时间tclock匹配校正时间tevent(0)时出现的CPU
中断INT_C,执行中断处理例行程序。在中断处理例行程序中,下一校正时间tevent(1)刚好
需要被分配给事件寄存器12。在这种情况下,存储器5存储接收到的校正时间tevent(0)、
tevent(1)、tevent(2)等。如实施例中所述的那样,事件缓冲器13可以减少对将校正时间从
CPU 2写入到通信接口3的定时的限制,并且降低CPU中断INT_C的中断处理例行程序上的负
载。
[0105] 微计算机1包括两个外围模块4_1和4_2,每个外围模块包括定时器,该定时器作为用于生成PWM控制的控制信号的外部装置控制信号生成器20。外围模块4_1和4_2分别经由
端口8_1和8_2向端子32_1和32_2输出PWM控制信号。稍后将描述用于生成PWM控制信号的定
时器配置和操作。微计算机1进一步包括中断选择电路9。中断选择电路9包括能够将供给的
外围模块中断INT_T选择性地与外围模块4_1和4_2以及各种外围模块(未示出)耦合的选择
电路。实施例选择耦合到外围模块4_1和4_2。中断选择电路9可以选择外围模块作为外围模
块中断的目标,并且提高微计算机的通用特性。
[0106] 微计算机1进一步包括编码器信号输入部分19。编码器信号输入部分19被经由端口8_3供给有编码器信号(未示出)。编码器信号监视外部装置的操作。从CPU 2经由总线6访
问编码器信号输入部分19。
[0107] 图5是示出了微计算机与外部设备之间的耦合的框图。微计算机1分别经由变频器94_1和94_2与两个AC马达93_1和93_2耦合。三相信号Iu_1、Iv_1和Iw_1驱动AC马达93_1。变
频器94_1从三相互补PWM控制信号TU1_UP、TU1_UN、TU1_VP、TU1_VN、TU1_WP和TU1_WN生成三
相信号Iu_1、Iv_1和Iw_1。类似地,三相信号Iu_2、Iv_2和Iw_2驱动AC马达93_2。变频器94_2
根据三相互补PWM控制信号TU2_UP、TU2_UN、TU2_VP、TU2_VN、TU2_WP和TU2_WN生成三相信号
Iu_2、Iv_2和Iw_2。AC马达93_1和93_2分别设置有用作位置检测器编码器95_1和95_2。编码
器信号检测AC马达93_1和93_2的位置并且经由端口8_3输入到微计算机的编码器信号输入
部分19。
[0108] 图6是示出根据第二实施例的定时器的配置的框图。该图也包含比较寄存器21、缓冲寄存器22和传送电路23。与三相互补PWM控制信号对应,比较寄存器21包括寄存器TCRA
(21_A)、TCRB(21_B)和TCRC(21_C)。缓冲寄存器22包括寄存器TBRA(22_A)、TBRB(22_B)和
TBRC(22_C)。作为外围模块中断的示例,当被供给有INT_T时,传送电路23将缓冲寄存器
TBRA(22_A)的值传送到比较寄存器TCRA(21_A),将缓冲寄存器TBRB(22_B)的值传送到比较
寄存器TCRB(21_B),并将缓冲寄存器TBRC(22_C)的值传送到比较寄存器TCRC(21_C)。
[0109] 作为外围模块4的示例,定时器模块4_1和4_2分别包括计数器24_1和24_2、比较器27_1和27_2以及输出控制部分28。定时器模块4_1和4_2可以等同地配置或者可以不等同地
配置。通常,作为微计算机的外围模块的定时器是多种多样的。所示的配置示例也提供通用
定时器的设置示例。计数器24_1和24_2包括寄存器TCNT1和TCNT2,并且能够递增和递减。
CPU 2可以经由总线6对计数器24_1和24_2进行读取或写入,但详细的电路配置未示出。计
数器24_1和24_2可以根据作为外围模块中断的定时器中断来在递增和递减之间进行切换。
[0110] 比较电路27_1将计数器24_1和24_2的寄存器TCNT1和TCNT2的值与比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)的值进行比较。比较电路27_1向输出控制部分28输
出匹配信号的六个组合。比较电路27_2将计数器24_1和24_2的寄存器TCNT1和TCNT2的值与
空载时间(dead time)寄存器TDDR(25)的值进行比较。比较电路27_2向输出控制部分28输
出匹配信号的两个组合。
[0111] 输出控制部分28基于供给的匹配信号生成并输出三相互补PWM控制信号TU1_UP、TU1_UN、TU1_VP、TU1_VN、TU1_WP和TU1_WN。
[0112] 图7是示出根据第二实施例的定时器的操作的定时图。水平轴代表时间。垂直轴从顶部到底部代表定时器中断INT_T、作为计数器24_1和24_2的寄存器TCNT1和TCNT2的值的
模拟表示的TCNT以及三相互补PWM控制信号TU1_UP、TU1_UN、TU1_VP、TU1_VN、TU1_WP和TU1_
WN的波形。比较电路27_1根据定时器计数器与比较寄存器之间的比较匹配生成占空比,即,
定时器计数器TCNT1和TCNT2与比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)。
[0113] 计数器24_1和24_2在从t0到t7的时段期间作为上计数器操作,也就是,从第一定时器中断到使用放置在空载时间寄存器TDDR(25)中的偏移值的下一定时器中断。在时间t7
处的定时器中断将递增变为递减。然后计数器24_1和24_2作为下计数器操作。每当定时器
中断出现时,递增和递减就随后交替。
[0114] 在时间t0处的第一定时器中断分别向比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)供给初始值TthA1、TthB1和TthC1。图7中的TCNT轴提供供给值的模拟表示。在时间t1
处,TCNT1匹配比较寄存器TCRC(21_C)。比较电路27_1向输出控制部分28输出该结果。输出
控制部分28将三相互补PWM控制信号之一TU1_WN从低电平倒相为高电平。随后,时间t2处的
TCNT1与TthB1之间的匹配使TU1_VN倒相。时间t3处的TCNT2与TthC1之间的匹配使TU1_WP倒
相。时间t4处的TCNT1与TthA1之间的匹配使TU1_UN倒相。时间t5处的TCNT2与TthB1之间的
匹配使TU1_VP倒相。时间t6处的TCNT2与TthA1之间的匹配使TU1_UP倒相。如上所述,时间t7
处的定时器中断将递增变为递减。时间t8处的TCNT2与TthA1之间的匹配使TU1_UP倒相。时
间t9处的TCNT2与TthB1之间的匹配使TU1_VP倒相。时间t10处的TCNT1与TthA1之间的匹配
使TU1_UN倒相。时间t11处的TCNT2与TthC1之间的匹配使TU1_WP倒相。时间t12处的TCNT1与
TthB1之间的匹配使TU1_VN倒相。
[0115] 时间t3处的定时器中断分别将比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)的值更新为更新值TthA2、TthB2和TthC2。为此,定时器中断INT_T允许传送电路23将缓冲寄
存器TBRA(22_A)的值传送给比较寄存器TCRA(21_A)、将TBRB(22_B)的值传送给TCRB(21_B)
以及将TBRC(22_C)的值传送给TCRC(21_C)。CPU 2预先将更新值TthA2、TthB2和TthC2写入
到缓冲寄存器TBRA(22_A)、TBRB(22_B)和TBRC(22_C)。此后,时间t14和t26之间的时段重复
与时间t1和t13之间的时段相同的操作。更新比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC
(21_C)的值改变输出的三相互补PWM控制信号TU1_UP、TU1_UN、TU1_VP、TU1_VN、TU1_WP和
TU1_WN的占空比。
[0116] CPU 2用于计算和写入更新值TthA2、TthB2、TthC2的时间随着由于CPU中断导致的开销以及用于执行参数更新程序的时间而变化。当比较寄存器TCRA(21_A)、TCRB(21_B)和
TCRC(21_C)的值分别更新为更新值TthA2、TthB2、TthC2时,更新时间与时间t13处的定时器
中断同步。时间t13处的定时器中断发生在从设备之间同步的本地时间tclock处。用于生成
定时器中断的时间也在从设备之间高度精确地同步。因此,也可以在从设备之间将该时间
与比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)的更新值高度精确地同步。
[0117] 尽管已经描述了使用定时器模块4_1控制AC马达93_1的方法,但同样的方法使用定时器模块4_2控制AC马达93_2,为简洁起见省略描述。以与其它从设备控制的AC马达和其
它外部装置高度精确同步地控制两个AC马达93_1和93_2。
[0118] 对于参数校正时间可以确保高度精确同步和延迟时间,而不受由于CPU中断导致的开销以及用于执行参数更新程序的时间变化的影响。因此,外部耦合设备(马达)可以基
于高度精确的时间同步而操作。
[0119] 下面描述使用三相互补PWM输出控制马达的微计算机的初始化操作。图8是示出根据第二实施例的微计算机的复位例行程序的流程图。
[0120] 输入复位以驱动微计算机。然后微计算机将定时器模块4_1和4_2以及通信接口3从模块备用状态释放(S1)。
[0121] 微计算机初始化定时器模块4_1(S2)。微计算机向定时器计数器TCNT1分配空载时间并向定时器计数器TCNT2分配0。微计算机分别向缓冲寄存器TCRA(21_A)、TCRB(21_B)和
TCRC(21_C)分配参数TthA、TthB和TthC。参数TthA、TthB和TthC分别指定U相、V相和W相的占
空比。微计算机将同样的参数TthA、TthB和TthC分配给比较寄存器TCRA(21_A)、TCRB(21_B)
和TCRC(21_C),并将空载时间分配给空载时间寄存器TDDR。在复位例行程序中,CPU 2直接
向比较寄存器21和空载时间寄存器25分配初始值。CPU 2不需要随后的更新。如果定时器模
块4_1是通用的,则微计算机配置用于允许缓冲寄存器TBRA(22_A)、TBRB(22_B)和TBRC(22_
C)对应于比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)的设置。微计算机配置用于支
持从TU1_UP、TU1_UN、TU1_VP、TU1_VN、TU1_WP和TU1_WN的输出的设置。
[0122] 在如上所述那样初始化定时器模块4_1之后,微计算机基于来自通信接口3的定时器中断实现定时器模块4_1的参数传送(S3)。微计算机为来自通信接口3的CPU中断分配有
效优先级(S4)。微计算机将端口8_1初始化为耦合到三相互补PWM控制信号TU1_UP、TU1_UN、
TU1_VP、TU1_VN、TU1_WP和TU1_WN的输出(S5)。微计算机开始对定时器计数器TCNT1和TCNT2
进行计数(S6)。微计算机等待来自通信接口3的CPU中断INT_C(S7)。
[0123] 下面描述CPU中断例行程序和定时器中断的微计算机处理。在上述初始化之后,微计算机等待CPU中断INT_C和定时器中断INT_T。当出现CPU中断INT_C时,CPU 2执行CPU中断
例行程序。定时器模块4_1执行指定处理。
[0124] 图9是示出根据第二实施例的微计算机的CPU中断例行程序的流程图。当出现来自通信接口3的CPU中断INT_C时,CPU 2从通信接口3清除中断标志(S11)。CPU 2确定AC马达
93_1是否供给编码器信号(S12)。如果供给编码器信号,则CPU 2从编码器信号输入部分19
引入编码器信号(S13)。CPU 2使用参数更新程序计算将为U相、V相和W相更新的占空比,并
计算对应的参数TthA、TthB和TthC(S14)。如果在S13引入编码器信号,则CPU 2向参数添加
该值用于占空比计算。CPU 2向定时器模块4_1的缓冲寄存器TBRA(22_A)、TBRB(22_B)和
TBRC(22_C)分配在S14处计算的参数TthA、TthB和TthC,以配置接下来将更新的占空比的值
(S15)。
[0125] 图10是示出根据第二实施例的微计算机响应于定时器中断的处理的流程图。当从通信接口3出现定时器中断INT_T时,分配给定时器模块4_1的缓冲寄存器TBRA(22_A)、TBRB
(22_B)和TBRC(22_C)的参数TthA、TthB和TthC分别传送给比较寄存器TCRA(21_A)、TCRB
(21_B)和TCRC(21_C)(S16)。更新比较寄存器TCRA(21_A)、TCRB(21_B)和TCRC(21_C)的值改
变了输出的三相互补PWM控制信号TU1_UP、TU1_UN、TU1_VP、TU1_VN、TU1_WP和TU1_WN的占空
比。
[0126] 在发生CPU中断INT_C之后,如参照图9描述的那样,CPU 2计算和写入更新值TthA2、TthB2和TthC2的时间随着由于CPU中断导致的开销和用于执行参数更新程序的时间
而变化。在发生定时器中断INT_T之后,定时器模块4_1更新比较寄存器TCRA(21_A)、TCRB
(21_B)和TCRC(21_C)的值的时间在若干时钟循环内的延迟之后跟随定时器中断INT_T,并
且与定时器中断INT_T高度精确地同步。用于生成定时器中断INT_T的时间在从设备之间高
度精确地同步。因此,也可以在从设备之间将该时间与比较寄存器TCRA(21_A)、TCRB(21_B)
和TCRC(21_C)的更新值高度精确地同步。
[0127] 尽管已经描述了使用定时器模块4_1控制AC马达93_1的方法,但为简洁起见省略描述同样的方法使用定时器模块4_2控制AC马达93_2。以与其它从设备控制的AC马达和其
它外部装置高度精确同步地控制两个AC马达93_1和93_2。
[0128] 对于参数校正时间可以确保高度精确同步和延迟时间,而不受由于CPU中断导致的开销以及用于执行参数更新程序的时间变化的影响。因此,外部耦合设备(马达)可以基
于高度精确的时间同步而操作。
[0129] 第三实施例
[0130] 图11是示出根据第三实施例的微计算机的配置的框图。根据第二实施例的微计算机包括定时器模块4_1和4_2作为两个外围模块4。另一方面,根据第三实施例的微计算机包
括一个外围模块4_3,该外围模块4_3包括PWM信号生成器20_3。与定时器20_1和20_2不同,
PWM信号生成器20_3直接被供给有占空比值以生成PWM控制的控制信号并经由端口8将其从
微计算机1的端子32输出。CPU 2、通信接口3、存储器5和编码器19与根据第二实施例的微计
算机中的那些类似地配置。然而,从通信接口3输出的外围模块中断INT_T直接输入到外围
模块4_3,而不使用中断选择电路9。
[0131] 外围模块4_3包括PWM生成器电路20_3、占空比缓冲器17、占空比寄存器21_3和传送电路23_3。占空比缓冲器17包括寄存器22_3、15_3等。例如,占空比缓冲器17包括FIFO移
位寄存器。当CPU 2从总线6写入占空比值时,占空比缓冲器17以占空比值写入的顺序传送
并输出占空比值。当接收外围模块中断INT_T时,传送电路23_3将占空比值从占空比缓冲器
17中的最后寄存器22_3传送到占空比寄存器21_3。占空比缓冲器17将其中保持的占空比值
依次移位。占空比缓冲器17中的最后寄存器22_3对应于根据第一和第二实施例的缓冲寄存
器22。PWM信号生成器20_3针对其占空比值保持在占空比寄存器21_3中的占空比生成控制
信号。
[0132] 占空比缓冲器17可以减少对CPU 2将占空比值写入外围模块4_3的定时的限制。
[0133] 下面描述微计算机上的初始化操作。图12是示出根据第三实施例的微计算机的复位例行程序的流程图。
[0134] 输入复位以启动微计算机。然后,微计算机将外围模块4_3和通信接口3从模块备用状态释放(S21)。微计算机初始化占空比寄存器21_3(S22)。尽管图11示出了占空比寄存
器21_3用于一个系统,但微计算机包括三个占空比寄存器21_3用于对应U相、V相和W相的三
个系统。在S22处,微计算机向占空比寄存器供给适当的初始值。微计算机向占空比缓冲器
17供给U相、V相和W相占空比更新值(S23)。微计算机向PWM生成器电路20_3供给三相互补
PWM生成所需的诸如空载时间之类的参数(S24)。微计算机初始化定时器中断以在定时器中
断出现时更新PWM占空比(S25)。微计算机将端口8配置为U相、V相和W相输出(S26)。微计算
机等待定时器中断(S27)。
[0135] 图13是示出根据第三实施例的微计算机的CPU中断例行程序的流程图。当出现来自通信接口3的CPU中断INT_C时,CPU 2将中断标志从通信接口3清除(S31)。CPU 2确定编码
器信号输入部分19是否供给编码器信号(S32)。如果供给编码器信号,则CPU 2从编码器信
号输入部分19引入编码器信号(S33)。微计算机计算占空比(S34)。微计算机在占空比计算
期间向参数添加在S33处引入的编码器信号的值。微计算机向占空比缓冲器17供给在S34处
计算的占空比以更新占空比(S35)。
[0136] 图14是示出根据第三实施例的微计算机响应于定时器中断的处理的流程图。当从通信接口3出现定时器中断INT_T时,传送电路23_3将放置在占空比缓冲器17中的占空比传
送到占空比寄存器20_3。
[0137] 对于参数校正时间,可以确保高度精确同步和延迟时间,而不受由于CPU中断导致的开销以及执行参数更新程序的时间变化影响。因此,外部耦合设备(马达)可以基于高度
精确的时间同步而操作。也可以减少对CPU 2向外围模块4_3写入占空比值的定时的限制。
[0138] 第四实施例
[0139] 图15是示出根据第四实施例的微计算机的配置的框图。与图11所示的根据第三实施例的微计算机相比,根据第四实施例的微计算机在PWM信号生成器20_3之后进一步包括
可变延迟电路30_U、30_V和30_W、相位调整电路29以及相位寄存器18。可变延迟电路30_U、
30_V和30_W分别对应于U相、V相和W相输出。相位调整电路29控制可变延迟电路。相位寄存
器18向相位调整电路29供给U相、V相和W相。
[0140] 图16是示出根据第四实施例的微计算机的复位例行程序的流程图。S41至S46等同于图12中的S21至S26,为了简洁起见,省略描述。在S46之后,微计算机配置相位寄存器
(S47)。微计算机向可变延迟电路30_U、30_V和30_W供给延迟量δ(0)、δ(1)和δ(2)。在完成所
有初始化设置之后,微计算机等待定时器中断INT_T(S48)。在初始化之后,微计算机响应于
与参照图13和图14描述的第三实施例类似的定时器中断和来自通信接口3的CPU中断而操
作,为简洁起见省略描述。
[0141] 独立地将延迟供给到从PWM信号生成器20_3输出的U相、V相和W相控制信号,使得可以配置U相、V相和W相之间的相位关系。这实现对需要相位调整的诸如马达之类的外部装
置的同步控制。
[0142] 另一方面,可以配置微计算机,使得PWM信号生成器20_3仅生成PWM控制信号的一个系统。可变延迟电路30_U、30_V和30_W均可以具有基本120度的相位差。这可以将占空比
缓冲器17、传送电路23_3和占空比寄存器21_3限制为仅一个系统。
[0143] 第五实施例
[0144] 图17是示出根据第五实施例的微计算机的配置的框图。第五实施例简化了图4所示的根据第二实施例的微计算机,并且提供应用微计算机仅启动工业马达、而不控制它们
用于校正的示例。如果同时启动多个马达,则定时控制器4_1控制第一马达。定时控制器4_2
控制第二马达。通信接口3包括两个事件寄存器12_1和12_2以及同步通信部分10、时间寄存
器11和比较电路14。例如,通信接口3处理遵循IEEE1588标准的同步以太网的协议。比较电
路14将存储在时间寄存器11中的本地时间与存储在事件寄存器12_1和12_2中的时间进行
比较。如果本地时间匹配任意时间,则比较电路14发出中断INT_C。如果本地时间匹配事件
寄存器12_1和12_2,则比较电路14分别发出定时器中断INT_T1和INT_T2。选择定时器中断
INT_T1和INT_T2,使得中断选择电路9将它们分别供给到定时器模块4_1和4_2。CPU 2、存储
器5、总线6、以太网电路7、定时器模块4_1和4_2、端口8_1和8_2以及编码器信号输入部分19
类似于图4所示的根据第二实施例的微计算机中的那些进行配置。
[0145] 下面描述在使用同步以太网提供工业装置之间的时间同步的系统中在预定启动时间(tstart(0)和tstart(1))启动工业马达的实施例。启动时间(tstart(0)和tstart(1))
预先写入到存储器5或者根据以太网通信经由同步通信部分10从外部获取并且存储在存储
器5中。CPU 2使用CPU核芯,CPU核芯强调适于马达控制的操作性能。CPU 2经由编码器引入
控制参数(诸如角速度、转矩和相位),执行用于校正占空比的计算,并配置参数以便向定时
器模块4_1和4_2输出指定占空比。CPU 2在对应于待启动的马达的事件寄存器12_1和12_2
中存储所获取的启动时间(tstart(0)和tstart(1))。例如,假设第一马达在启动时间
tstart(0)启动并且第二马达在启动时间tstart(1)启动。然后,CPU 2向对应于第一马达的
事件寄存器12_1写入启动时间tstart(0)并且向对应于第二马达的事件寄存器12_2写入启
动时间tstart(1)。比较电路14将事件寄存器12_1和12_2中的启动时间与时间寄存器11中
的本地时间进行比较。如果它们匹配,则比较电路14生成CPU中断INT_C和定时器中断INT_
T1和INT_T2。中断选择电路9将定时器中断INT_T1和INT_T2分别与定时器模块4_1和4_2耦
合。定时器模块4_1和4_2为由输入参数指定的占空比生成控制信号。生成的控制信号经由
端口8_1和8_2供给到作为外部装置的变频器。然后变频器驱动马达。例如,三相互补PWM信
号驱动马达。该信号一般用于工业马达并且包括三个正向和反向相位。作为来自编码器信
号输入部分19的编码器信号,引入关于马达的角速度和位置信息。
[0146] 下面描述使用三相互补PWM输出控制马达的微计算机上的初始化操作。图18是示出根据第五实施例的微计算机的复位例行程序的流程图。
[0147] 输入复位以启动微计算机。然后微计算机将定时器模块4_1和4_2和通信接口3从模块备用状态释放(S41)。为了初始化定时器模块4_1,微计算机初始化指定占空比的参数、
设置空载时间和配置波形输出(S42)。为了初始化定时器模块4_2,微计算机类似地初始化
指定占空比的参数、设置空载时间并且配置波形输出(S43)。微计算机向事件寄存器12_1分
配定时器模块4_1的启动时间tstart(0)。微计算机向事件寄存器12_1分配定时器模块4_2
的启动时间tstart(1)。微计算机将来自通信接口3的定时器中断INT_T1和INT_T2耦合到定
时器模块4_1和4_2,并且实现定时器中断(S45)。微计算机向来自通信接口3的CPU中断分配
有效优先级(S46)。微计算机将端口8_1和8_2指定为输出(S47)。从定时器模块4_1和4_2输
出的三相互补PWM控制信号耦合到端口8_1和8_2。微计算机等待来自通信接口3的CPU中断
INT_C(S48)。
[0148] 下面描述CPU中断例行程序和定时器中断的微计算机处理。在上述初始化之后,微计算机等待CPU中断INT_C和定时器中断INT_T1和INT_T2。当出现CPU中断INT_C时,CPU 2执
行CPU中断例行程序。当出现定时器中断INT_T1和INT_T2时,定时器模块4_1和4_2执行指定
处理。图19提供示出根据第五实施例的微计算机响应于定时器中断的处理和CPU中断例行
程序的流程图。当从通信接口3出现CPU中断INT_C时,CPU 2确定中断原因(S51)。在S51处,
中断原因可以对应于事件寄存器12_2。在这种情况下,CPU 2禁止对应于事件寄存器12_2的
中断(S52)。CPU 2关断对应于事件寄存器12_2的中断标志(S53)。CPU 2允许定时器模块4_2
的比较匹配中断并且支持占空比校正(S54)。在S51,中断原因可能对应于事件寄存器12_1。
在这种情况下,CPU 2禁止对应于事件寄存器12_1的中断(S55)。CPU 2关断对应于事件寄存
器12_1的中断(S56)。CPU 2允许定时器模块4_1的比较匹配中断并且支持占空比校正
(S57)。
[0149] 当从通信接口3出现对应于事件寄存器12_1的定时器中断INT_T1时,CPU 2启动定时器模块4_1的定时器(S58)。当从通信接口3出现对应于事件寄存器12_2的定时器中断
INT_T2时,CPU 2启动定时器模块4_2的定时器(S59)。
[0150] 图20提供示出根据第五实施例的微计算机响应于计数器的计数方向改变的处理和比较匹配中断例行程序的流程图。当从定时器模块4_1出现比较匹配中断时,CPU 2关断
定时器模块4_1的比较匹配中断标志(S61)。CPU 2确定是否输入编码器信号(S62)。如果输
入编码器信号,则CPU 2将其从编码器信号输入部分19引入(S63)。CPU 2计算占空比(S64)。
如果在S63处引入编码器信号,则CPU 2将其值添加到参数用于占空比计算。CPU 2通过向定
时器模块4_1的缓冲寄存器22_1供给用于输出计算的占空比的参数来更新占空比(S65)。定
时器模块4_1的计数器(定时器)20_1的计数方向从递增变为递减,或者反之亦然。然后,传
送电路23_1将占空比指定参数传送给定时器模块4_1的比较寄存器21_1。占空比指定参数
已经供给到定时器模块4_1的缓冲寄存器。当从定时器模块4_2发生比较匹配中断时,CPU 2
关断定时器模块4_2的比较匹配中断标志(S67)。CPU 2确定是否输入编码器信号(S68)。如
果输入编码器信号,则CPU 2将其从编码器信号输入部分19引入(S69)。CPU 2计算占空比
(S70)。如果在S63引入编码器信号,则CPU 2将其值添加到参数用于占空比计算。CPU 2通过
向定时器模块4_2的缓冲寄存器22_2供给用于输出计算的占空比的参数来更新占空比
(S71)。定时器模块4_2的计数器(定时器)20_2的计数方向从递增变为递减,或者反之亦然。
然后,传送电路23_2将占空比指定参数传送到定时器模块4_2的比较寄存器21_2(S72)。占
空比指定参数已经供给到定时器模块4_2的缓冲寄存器。
[0151] 这能够使得独立地供给参数的校正时间,以启动和控制外部装置,并且提供更高度精确和多样化的同步控制。
[0152] 尽管已经描述了本发明的特定优选实施例,但应明确理解到的是,本发明并不限于此,而是可以在本发明的精神和范围内另外进行各种实施。
[0153] 例如,诸如CPU 2、存储器5和总线6之类的微计算机的基本部件可以符合任意处理器架构。CPU 2可以作为包括多处理器的任意处理器获得。总线6可以是分层化的,以包括高
速缓存存储器或存储器管理单元。存储器5可以在片上获得或作为ROM、RAM或其组合来获
得。