CN105075155A - 自动化装置和用于减少时间抖动的方法 - Google Patents
自动化装置和用于减少时间抖动的方法 Download PDFInfo
- Publication number
- CN105075155A CN105075155A CN201480019419.XA CN201480019419A CN105075155A CN 105075155 A CN105075155 A CN 105075155A CN 201480019419 A CN201480019419 A CN 201480019419A CN 105075155 A CN105075155 A CN 105075155A
- Authority
- CN
- China
- Prior art keywords
- clock
- time
- automation equipment
- communication
- system clock
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01F—MEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
- G01F1/00—Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
- G01F1/05—Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow by using mechanical effects
- G01F1/10—Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow by using mechanical effects using rotating vanes with axial admission
- G01F1/12—Adjusting, correcting, or compensating means therefor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/12—Plc mp multi processor system
- G05B2219/1211—Exchange control, I-O data to other plc, using separate synchronizing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W56/00—Synchronisation arrangements
- H04W56/001—Synchronization between nodes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Fluid Mechanics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Programmable Controllers (AREA)
Abstract
本发明涉及一种自动化装置(200),该自动化装置包括具有第一***时钟的操作***(210)和具有第二***时钟的通信***(230)。就此该第一***时钟设置用于控制操作***(210)的***时间周期(213)并且该第二***时钟设置用于控制通信***(230)的***时间周期(231)。此外该第一***时钟和该第二***时钟是时间同步的。
Description
技术领域
背景技术
在自动化技术中值得注意的是,对于控制技术需求的持续提高,该控制技术例如是SPS(Speicher-Programmierbare-Steuerung,可编程控制器)。既对于SPS程序,又对于实时通信***而要求越来越短的用于将进程数据传送到现场总线设备的周期时间。甚至使用到了基于以太网的***来替代至今为止所使用的现场总线***,例如Interbus或Profibus类型的总线***。
自动化装置具有多个通信层,例如作为一层的数据总线、作为接着较高一层的通信***、其上的应用层和作为最高层的操作***。在当前的通信***中常常设置为,使多个通信用户之间同步。例如从文献EP2110754A1中已知这样类型的通信。其建议一种用于对作为开放的自动化***的通信用户的总线用户之间进行同步的方法。
通信用户之间的同步例如可以根据IEEE1588标准而完成,其中经常以所谓的时钟同步的同步形式而使用到同步。在时钟同步的同步过程中,使通信用户的一个当地时钟***或多个当地时钟***相互校准并由此同步。这意味着,在同步后所有通信用户具有相同的时基。从该时基能够得出用于同步通信的更多必要时间点。
在具有同步的通信用户的自动化装置中,就通信方面可能产生冲突。就此,诱因可以是多个应用(Anwendungen),也称为应用程序(Applikationen),例如运动控制,也称为Motion-Control。这样的运动控制既需要应用较短的周期时间也需要通信***的较短的周期时间。应用***和通信***这两个***额外地以有利的方式彼此同步。如果缺少这种同步,甚至可能出现时间抖动,该时间抖动可能降低***性能。时间抖动理解为一种干扰,这种干扰引起了对传输时间脉冲的精确性的偏差,其中这种时间抖动由于数字信号传输中的时间抖动而是可察觉到的。尽管有应用***和通信***之间的同步,还是可能出现时间抖动,因为为了建立这种同步,而优选地在自动化装置中的实时操作***中使用中断操作。那么这些中断操作就可能相互地干扰。
发明内容
本发明的目的在于,提供一种改良的自动化装置,其中进一步减少了时间抖动的出现。
该目的这样达成,即,通过提供一种自动化装置,该自动化装置包括具有第一***时钟的操作***和具有第二***时钟的通信***。就此,该第一***时钟设置用于控制该操作***的***时间周期并且该第二***时钟设置用于控制该通信***的***时间周期。此外该第一***时钟和该第二***时钟是时间同步的。
此外本发明的目的还通过一种用于运行具有操作***和通信***的自动化装置的方法而达成,即,通过设置提供第一***时钟和提供第二***时钟。就此第一***时钟预设了该操作***的工作时钟并且该第二***时钟预设了该通信***的工作时钟。此外还设置,使该方法包括第一***时钟和第二***时钟的同步。
时间同步意味着,这两个***,即,该操作***和该通信***彼此校准。这在时间上预设的周期中进行,从而使例如由操作***产生的中断操作与由通信***产生的中断操作之间不会互相干扰。通过这个对干扰的避免再次减少了时间抖动。中断操作理解为,为了其它的、通常较短的、但是时间关键的进程而在短时间内中断常态程序的运行。中断请求(IRQ)理解为对中断操作的请求并且是为了中断操作而待解决的事件。在下面的附图中示出了引起中断操作的中断请求(IRQ)的时间点。用于执行其它操作而接受中断请求的程序,例如SPS程序,可以理解为中断服务的程序。
附图说明
下文中参照附图说明现有技术以及本发明的思想。其中:
图1示出了根据现有技术的具有非同步的操作***时钟的自动化装置;
图2示出了根据本发明的具有同步的操作***时钟的自动化装置;
图3示出了一种用于在通信***和操作***之间的同步的实施例;
图4示出了另一种用于在通信***和操作***之间的同步的实施例;以及
图5示出了另一种用于在通信***和操作***之间的同步的实施例。
具体实施方式
图1示出了根据现有技术的、具有非同步的操作***时钟的自动化装置的一种实施例。在图1中所示的自动化装置100具有不同的通信层面。最高层面形成了操作***110。在其下的层面中,即在应用层120中,执行应用122。在应用层120下方接下来是通信***130,在该通信***下面是具有输入方向141和输出方向142的以太网总线140,其中在输入方向141上传输输入数据143并且在输出方向142上传输输出数据144。
在图1中可见的是,在当前现有技术中常见的、通信***130和操作***110之间不同步的工作。在操作***110的一部分中借助于调度程序111生成操作***110的***时钟以及相应的***中断,其中调度程序111又与硬件计时器112相连。在图1中相对于每个***周期113,该***周期也称为Systick(***节拍)周期,示意性地重复示出了一个能够以软件的形式实施的调度程序111。硬件计时器112生成***时钟,也称作***节拍定时器(System-Tick),从而使中断114能够在规律的间隔内在操作***层面110中产生并且在操作***110内部进一步得以使用。该***节拍定时器周期113限定了每两个中断114之间的时间间隔。
每个操作***指令都导致了操作***的调度程序111的执行。但是额外地,所谓的***节拍定时器也是必要的,***节拍定时器确保了对调度程序111的周期性控制并因此作为实时操作***的时基。***节拍定时器通常通过周期性中断而实现,该周期性中断由硬件计时器提供。在常见的自动化装置100中,用于运行该硬件计时器112的时钟***与通信***130的时钟***并不同步。这些时钟***因此以不同速度运行并且相对彼此而连续漂移。
此外图1在应用层120上示出了应用周期121,SPS程序122在该应用周期内工作。该SPS程序122又由中断请求123而启动,其中该中断请求123由通信***130的***时钟而生成。在图1中通信周期131具有四个相同长度的时间块132、133、134、135,这些时间块分别能够产生一个或多个中断123。这四个时间块132、133、134、135共同形成通信周期131。
在图1的自动化装置100中存储器可编程的控制装置除了操控时间关键的应用(例如运动控制)以外同时也操控其它较不时间关键的应用。较不时间关键的应用的例子有可视管理(例如自动化进程的可视管理)或者工作数据的获取(例如用于测量值的分析)。由于时间关键的应用而在自动化装置100中经常使用一种实时工作的操作***110。这样的实时操作***110通常设有附加的实时功能,这些实时功能例如允许了对于时间限制无条件的遵守以及对于进程行为的可预见性。
在自动化装置100的目前为止常见的实时操作***110中,如图1中示例性示出的,为了在通信***130和应用122之间建立同步而使用到中断请求(IRQ)123,其中该应用122例如为SPS程序。这个中断请求123可以通过通信***130生成,其中所述中断请求的生成例如基于IEEE1588标准。这样的中断请求123促使了,在实时操作***110的控制下执行所谓的中断服务程序。通过这种中断服务程序而引起SPS程序122的执行。就此,该SPS程序122直接在所谓的中断服务线程内运行,或者通过操作***110的事件机制而执行。就此该中断服务线程在自动化装置100内部得到较高的优先级,因此遵循了时间的限制并且确保了对进程行为的可预见性。
不过通过操作***110的非同步的特性却可能相对于通信***130而发生通信冲突,因为与通信***130的中断请求123相比,以较高的优先级来处理操作***110的中断请求114。中断服务程序的执行分别通过中断请求114、123而触发并且以各个相应中断请求的优先级来处理。因此存在两个不同的时钟***,即,基于操作***110的***周期113的第一***时钟和基于通信***130的通信周期131的第二***时钟,这两个***时钟相互间并不同步。该第一***时钟理解为***周期113的重复性开始。该第二***时钟理解为通信周期131的重复性开始。这两个时钟***以不同的速度运行并且彼此间持续漂移。尽管SPS程序122借助于由通信***130生成的中断请求而同步于通信***130,还是产生了时间抖动。操作***的部分,即使仅是调度程序111,都以高于中断服务线程123的优先级而工作并可能因此置换中断服务线程123。这引起了,使得该服务线程较晚地开始或者中断。这会发生的原因是因为缺少多个时钟***之间的同步而使得用于执行中断服务线程123的时间点与操作***调度程序111的时间点偶尔重合。起因是彼此漂移的时钟***。因此这只是时间问题:什么时候时间点会重叠,而使得操作***110的中断请求114与通信***130的中断请求123产生冲突。
在图1中,在SPS程序122的时间进程过程中出现了时间抖动124,在SPS程序122的开始和终止示出了所述的时间抖动。这个时间抖动124由于来自操作***110的中断请求114与来自通信***130的中断请求123之间的冲突而生成。这个时间抖动124是不期望的并且在根据本发明的实施中保持为较少的或者得以避免。
类似于图1,图2示出了一种自动化装置200的结构,该自动化装置具有操作***210、应用层220、位于应用层下的通信***230和具有输入方向241以及输出方向242的以太网总线240,其中在输入方向241上传输输入数据243以及在输出方向242上来传输输出数据244。
在图2中示出了一种自动化装置200,该自动化装置包括具有第一***时钟的操作***210以及具有第二***时钟的通信***230。就此该第一***时钟设置用于控制操作***210的***时间周期213并且该第二***时钟设置用于控制通信***230的***时间周期231。就此通信***230的***时间周期231相对于通信***230的通信周期231。此外该第一***时钟和该第二***时钟是时间同步的。在该实施例中,操作***210是实时操作***。这意味着,也能够通过自动化装置200来运行一个或多个时间关键的应用,例如运动控制或SPS控制。就此所有的或者至少大量的进程几乎是同时地(多任务地)通过实时操作***210而执行。就此,该实时操作***210调控资源的分配并且解决发生的冲突。在应用层220或应用程序层220的应用222可以在多个进程或线程中执行,这些应用根据所需的实时特性而相应具有较高或较低的优先级。这同样地适用于操作***210。这些进程和线程通过操作***调度程序211而控制,该调度程序决定了接下来哪些线程或进程应该开始、继续、中断或终止。就此,该调度程序211本身以有利的方式而以最高优先级而运行,因此该调度程序能够恰当地完成其任务。
根据本发明而对产生了操作***Systick213的时钟***进行同步,并且甚至在图2的实施例中使该时钟***与通信***时钟***以及额外相应地与通信周期231同步。就此可以毫无困难地实现,不再借助于硬件计时器而产生Systick213,而是为此而使用到了来自通信***230的中断请求。该Systick时间点应该能够就此在整个通信周期231中选择,从而能够确定出并且选择最佳的时间点。同样地,减速(Untersetzung)(仅在每第n次触发)可以为有意义的,以便于能够为了通信周期231和操作***Systick213来选择出不同的周期时间(整数因子)。
如果因为不能从通讯***230生成足够多不同的中断请求而使该设置并不能简单地实现,也可以使用如图5中所示的具有非同步时钟***的硬件计时器512。硬件计时器512能够以所谓的单脉冲模式(Single-Shot-Modus)来运行,这意味着,硬件计时器512不再生成周期性中断请求。而是替代性地,以时间长度t2来编程并启动该硬件计时器512。如图5中所示,在经过时间长度t2后,就会由硬件计时器512一次性地触发中断请求507。硬件计时器512的编程和启动在通信中断请求223的服务线程中进行,该中断请求用于已同步的SPS程序222的执行。由此也可在此自由地确定通信周期231中的时间点。通过在IRQ服务线程中仅在每个第n次进行编程并启动硬件计时器512,也能够同样地实现减速。
在根据本发明的方法中,通过使用硬件计时器512应该考虑到这样生成的IRQ的略增大的误差,因为硬件计时器512的基础时钟***始终不是同步的。尽管如此,却可以避免了连续的时间漂移,因为硬件计时器512一再地重新起始于一个同步的时间点。硬件计时器512的不同步的时间脉冲***仅对硬件计时器512所编程的时长本身造成影响。通过测量出图5中所示的实际时长t2并且对硬件计时器512的编程相应地修改,就能够额外地实现优化。
通过所建议的方法能够减少或甚至完全避免由操作***调度程序的周期性调用而导致的时间抖动。时间点不再相对彼此而漂移,由此确保了既定的时间性关系。
在图2中可以设置为,在自动化装置200中第一***时钟和第二***时钟源自通信***230。就此在图3至5中给出了进一步的实施例。在下文中应用和应用程序的概念以同义词的方式而使用并因此可以互换。
与图1的实施例不同的是,在图2的实施例中,力求达到同步的工作,从而使操作***210的***时钟与通信***230的***时钟同步。像图1中一样,图2的操作***210具有调度程序211,该调度程序能够以规律的间隔生成中断请求214,从而产生操作***210的***周期213。如图1中一样,通信周期231也具有四个同样长度的时间块232、233、234、235,这些时间块能够分别生成一个或多个中断请求223。该中断请求223可以启动应用程序或应用222,像是SPS程序。这四个时间块232、233、234、235整体形成了通信周期231。与图1不同的是,在图2中操作***210与通信***230同步。这种同步意味着,操作***210和通信***230这两个***通过使用例如共同的时钟源而时间上相互校准。因此在图2的实施例中鉴于调度程序211方面就不再使用到例如图1中所示的、作用于调度程序111的自由运转的硬件计时器112。自由运转的硬件计时器就此理解为一种以硬件形式而提供的计时器,该计时器无需外界的控制或同步而自主地工作。相反地,根据本发明通信***230自身作为时钟源而用于操作***210。接下来的图3至5就此示出了用于实现同步的不同的实施例。在图5中设置了一种硬件计时器512,不过该硬件计时器512却是由软件来控制和触发的,该软件在其方面由通信***的时钟而控制。
在图3中示出了同步的第一种替代方案,其中,通信***330的时间块301、302分别能够触发中断请求303、304,其中该第一时间块301的第一中断请求303用于启动应用305,而该第二时间块302的第二中断请求304用于启动操作***层面310上的调度程序306。从图3中能够看出,第一中断请求303和第二中断请求304分别交替性地访问不同的***层,即中断请求303访问应用层320并且中断请求304访问操作***层310。第一中断请求303以及第二中断请求304分别从通信***330的***时钟生成。在图3中通信周期331具有两个同样长度的时间块301、302,这两个时间块分别能够生成一个或多个中断请求303、304。第一中断请求303和第二中断请求304都由通信***330来从时间块301、302中的各一个提供。为应用305提供第一中断请求303并且为操作***310提供第二中断请求304。
图4示出了第二种替代性方案,用于提供通信***430和操作***410之间的同步。就此通过通信周期431的起始而启动通信中断请求403,该中断请求触发应用,例如SPS程序405,或者触发了具有时长t1的应用层420中的服务线程。在时长t1的终止时,也即是在应用405的终止时,生成了第二中断请求404。该第一中断请求403从通信***430的***时钟生成并且作用于操作***410的第二中断请求404从应用405中生成。就此,通过应用405直接将第二中断请求发送给调度程序406,而由应用405向操作***410提出第二中断请求404。在图4中通信周期431具有两个相同长度的时间块401、402,这两个时间块分别能够生成一个或多个中断请求403。
在图4的实施例中确保了,不会在图2的自动化装置200的内部产生中断请求的冲突,因为在下一个中断请求404在操作***层410上启用前,首先执行SPS程序405。不过,图4的实施例可能会导致一定的时间偏差,因为根据不同的应用时长t1也不同。以这种方式能够减少时间抖动124,但是可能却不能够将其完全排除。针对用于避免可变的应用长度对操作***410的影响的优化的实施方式,在图5中提供另一种替代性方案。
图2的自动化装置200可以具有如图5的实施例中所示的硬件定时器或硬件计时器512。该硬件计时器512用于第一***时钟和第二***时钟之间的同步。如图4所示,通信***530的中断请求503启动了作为应用层520中时长为t1的SPS程序505的应用。在该SPS程序505内生成另一个中断请求504,该中断请求启动硬件计时器512,从而该硬件计时器允许了在应用***层510中使用的下一个中断请求507生成前先经过一个时长t2。用于启动硬件计时器504的第二中断请求504在图5中与通信***130生成的第一中断请求503几乎时间相同地产生。但是该第二中断请求504却也能够以与第一个生成的中断请求503明显时间偏移的方式而实施。硬件计时器512的时长t2能够自由地选择,从而能够确保了,在为操作***510中的调度程序506生成第二中断请求507之前,应用层520中的具有时长t1的SPS程序505至少已完成。就此达到了,在应用层520中的SPS程序505的终止与硬件计时器512所生成的中断请求507的起始时间之间,经过一个时长t2。这个时长t2可以作为缓冲,该缓冲确保在为操作***510触发中断请求507的情况下不会产生任何不一致性。图5中的该硬件计时器512具有延滞装置的功能。此外该硬件计时器512以单脉冲模式而运行。该硬件计时器512以有利的方式在应用505的时长t1的前三分之一的时间内启动。这进一步优化了操作***510的稳定性并且减少了这样的可能性,即,在例如通信周期531的时间块502内生成下一个中断请求前,应用505还没有终止。
通过图5的实施例提供一种解决方案,这个解决方案允许了应用505的不同时长t1,而不会因此在操作***510内产生偏差。该硬件计时器512就此充当了缓冲器并确保了用于触发操作***中断请求507的恒定时间间隔。在这种实施方式中,只要这样选择时长t2,即,该时长至少时间上在时长t1的SPS程序505终止后结束,那么如图1所示的时间抖动124就极不可能发生。就此,在图5中通信周期531具有两个相同长度时间块501、502,这些时间块能够分别生成一个或多个中断请求503。
根据图2至5的实施例可以设置,能够在整个通信周期331、431、531中自由地选择中断请求303、403、503的时间点。就此,该中断请求的时间点可以有目的性地选择,从而该中断请求不会与操作***的其它中断请求产生任何冲突或置换。此外,在所有实施例中可以设置为,如在图2中已说明的,设置同步过程中第二***时钟相对于第一时钟的减速。
就此示例性地描述SPS程序222通过通信***230的同步。该同步也可以按照相同的原理通过其它***而实现,例如通过运动核心(Motion-Kernel)。
此外可以设置为,存在多个通信***,这些通信***分别具有两个***时钟,其中第二***时钟分别与共用的操作***的第一***时钟同步,从而使每一个第二***时钟都与第一***时钟同步。按照相同的方法原则上可以同步任意数量的***,例如使多个实时通信***、运动核心以及一个或多个SPS应用同时与实时操作***210同步。如所述地,从时钟***而推导出该操作***Systick和所有其他的时间点,以便于确保既定的时间性关系。为了避免可能的时间抖动,有必要这样技术性地选择出所需的时间点(中断请求),即,在自动化装置200中的实时相关的部件中,尽量不会在相互之间以及通过操作***Systick而产生置换或中断。
在本发明的范围内也可以结合图2至图5中的实施例。因此例如在图3至图5中可能在通信周期内设置两个以上的时间块。此外,能够以一个自动化装置而同时单独地实现图3至图5的多个替代性方案,例如通过转换为不同的工作模式。还可能的是,使不同的替代方案在一种工作类型中结合,从而例如仅在各第二个通信周期中使用到根据图5的硬件计时器512,并且在每个中间通信周期中可应用图3或图4的变型的其中之一。
Claims (12)
1.一种自动化装置(200),所述自动化装置包括:
具有用于控制操作***(210)的***时间周期(213)的第一***时钟的操作***(210);
具有用于控制通信***(230)的***时间周期(231)的第二***时钟的通信***(230);
其特征在于,
所述第一***时钟和所述第二***时钟是时间同步的。
2.根据权利要求1所述的自动化装置,其中所述操作***(210)是实时操作***。
3.根据权利要求1或2所述的自动化装置,其中所述第一***时钟和所述第二***时钟能够源自所述通信***(230)。
4.根据权利要求1至3中任意一项所述的自动化装置,其中,能够由所述通信***(230)向所述操作***(210)提出中断请求(304)。
5.根据权利要求1至4中任意一项所述的自动化装置,其中,能够由应用(405)向所述操作***(210)提出中断请求(404)。
6.根据权利要求4所述的自动化装置,其中,所述应用(405)是运动控制应用或SPS控制应用。
7.根据权利要求1至6中任意一项所述的自动化装置,其中,能够在整个通信周期(331,431,531)中自由地选择中断请求(303,403,503)的时间点。
8.根据权利要求1至7中的任意一项所述的自动化装置,其中,在同步过程中设置所述第二***时钟相对于所述第一***时钟的减速。
9.根据权利要求1至8中任意一项所述的自动化装置,其中,该自动化装置(200)具有多个通信***,所述通信***分别具有第二***时钟,其中所述第二***时钟与共用的操作***(210)的所述第一***时钟同步,从而使每个所述第二***时钟与所述第一***时钟同步。
10.根据权利要求1至9中任意一项所述的自动化装置,其中,所述自动化装置具有硬件计时器(512),所述硬件计时器能够用于所述第一***时钟与所述第二***时钟之间的同步。
11.根据权利要求10所述的自动化装置,其中,所述硬件计时器(512)能够以单脉冲模式而工作和/或其中所述硬件计时器(512)在应用(505)的时长的前三分之一的时间内启动。
12.一种用于运行具有操作***(210)和通信***(230)的自动化装置(200)的方法,其中所述方法包括:
提供第一***时钟,所述第一***时钟预设了所述操作***(210)的工作时钟;
提供第二***时钟,所述第二***时钟预设了所述通信***(230)的工作时钟;
其特征在于,
所述第一***时钟和所述第二***时钟之间的同步。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102013005748.5 | 2013-04-05 | ||
DE102013005748.5A DE102013005748A1 (de) | 2013-04-05 | 2013-04-05 | Automatisierungseinrichtung und Verfahren zur Reduzierung von Jittern |
PCT/EP2014/056529 WO2014161854A1 (de) | 2013-04-05 | 2014-04-01 | Automatisierungseinrichtung und verfahren zur reduzierung von jittern |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105075155A true CN105075155A (zh) | 2015-11-18 |
CN105075155B CN105075155B (zh) | 2018-09-21 |
Family
ID=50424248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480019419.XA Active CN105075155B (zh) | 2013-04-05 | 2014-04-01 | 自动化装置和用于减少时间抖动的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9677920B2 (zh) |
EP (1) | EP2982063B1 (zh) |
CN (1) | CN105075155B (zh) |
DE (1) | DE102013005748A1 (zh) |
ES (1) | ES2835338T3 (zh) |
WO (1) | WO2014161854A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578847A (zh) * | 2020-12-21 | 2021-03-30 | 青岛鼎信通讯股份有限公司 | 一种基于Linux***的多MCU时钟同步方案 |
CN115061896A (zh) * | 2022-06-30 | 2022-09-16 | 南方电网科学研究院有限责任公司 | 一种电磁暂态仿真操作***的抖动时间计算方法及装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105116802B (zh) * | 2015-08-17 | 2017-09-26 | 华北水利水电大学 | 一种确定性时钟抖动的产生装置及方法 |
US10444788B2 (en) * | 2017-08-22 | 2019-10-15 | Wind River Systems, Inc. | Device, system, and method for synchronizing time partition windows |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1451107A (zh) * | 2000-01-10 | 2003-10-22 | 西门子公司 | 通用运动控制装置 |
US20050086406A1 (en) * | 2003-08-08 | 2005-04-21 | Frank Noha | Real time interrupt module for operating systems and time triggered applications |
CN101118436A (zh) * | 2007-09-03 | 2008-02-06 | 石毅 | 一种新型的基于多cpu并行处理技术的开放式数控***实现方法 |
CN101405676A (zh) * | 2006-03-22 | 2009-04-08 | 罗伯特·博世有限公司 | 用于在数据传输***与数据传输***的用户的主处理器之间传送数据的方法和数据传输*** |
CN101578806A (zh) * | 2007-03-28 | 2009-11-11 | 株式会社安川电机 | 通信装置、同步通信***及同步通信方法 |
CN101819426A (zh) * | 2009-02-27 | 2010-09-01 | 中国科学院沈阳计算技术研究所有限公司 | 工业以太网数控***实时与非实时***内核数据同步方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08123520A (ja) * | 1994-10-25 | 1996-05-17 | Mitsubishi Electric Corp | 駆動制御指令装置と複数台の駆動制御指令装置の同期制御システム及びその同期制御方法 |
DE19626287A1 (de) | 1996-07-01 | 1997-02-13 | Abb Management Ag | Verfahren zum Betrieb eines Antriebssystems und Vorrichtung zur Durchführung des Verfahrens |
DE10038915A1 (de) * | 2000-08-09 | 2002-02-21 | Siemens Ag | Verfahren und Vorrichtung zur Erzeugung eines synchronen Verhaltens mehrerer Computer |
JP4903201B2 (ja) | 2005-06-23 | 2012-03-28 | ヒルシャー ゲゼルシャフト フュア ジステームアウトマツィオーン ミット ベシュレンクテル ハフツング | オープンなオートメーションシステムのバス加入機器のデータ通信方法 |
-
2013
- 2013-04-05 DE DE102013005748.5A patent/DE102013005748A1/de not_active Withdrawn
-
2014
- 2014-04-01 EP EP14714697.1A patent/EP2982063B1/de active Active
- 2014-04-01 ES ES14714697T patent/ES2835338T3/es active Active
- 2014-04-01 US US14/779,299 patent/US9677920B2/en active Active
- 2014-04-01 CN CN201480019419.XA patent/CN105075155B/zh active Active
- 2014-04-01 WO PCT/EP2014/056529 patent/WO2014161854A1/de active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1451107A (zh) * | 2000-01-10 | 2003-10-22 | 西门子公司 | 通用运动控制装置 |
US20050086406A1 (en) * | 2003-08-08 | 2005-04-21 | Frank Noha | Real time interrupt module for operating systems and time triggered applications |
CN101405676A (zh) * | 2006-03-22 | 2009-04-08 | 罗伯特·博世有限公司 | 用于在数据传输***与数据传输***的用户的主处理器之间传送数据的方法和数据传输*** |
CN101578806A (zh) * | 2007-03-28 | 2009-11-11 | 株式会社安川电机 | 通信装置、同步通信***及同步通信方法 |
CN101118436A (zh) * | 2007-09-03 | 2008-02-06 | 石毅 | 一种新型的基于多cpu并行处理技术的开放式数控***实现方法 |
CN101819426A (zh) * | 2009-02-27 | 2010-09-01 | 中国科学院沈阳计算技术研究所有限公司 | 工业以太网数控***实时与非实时***内核数据同步方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578847A (zh) * | 2020-12-21 | 2021-03-30 | 青岛鼎信通讯股份有限公司 | 一种基于Linux***的多MCU时钟同步方案 |
CN115061896A (zh) * | 2022-06-30 | 2022-09-16 | 南方电网科学研究院有限责任公司 | 一种电磁暂态仿真操作***的抖动时间计算方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2982063A1 (de) | 2016-02-10 |
US20160048156A1 (en) | 2016-02-18 |
ES2835338T3 (es) | 2021-06-22 |
WO2014161854A1 (de) | 2014-10-09 |
US9677920B2 (en) | 2017-06-13 |
CN105075155B (zh) | 2018-09-21 |
EP2982063B1 (de) | 2020-09-30 |
DE102013005748A1 (de) | 2014-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984267B (zh) | 工业服务器的微内核架构控制***及工业服务器 | |
CN109557890B (zh) | 控制装置 | |
EP3462257B1 (en) | Control system and control device | |
JP6626240B2 (ja) | コントローラ | |
CN105075155A (zh) | 自动化装置和用于减少时间抖动的方法 | |
JP6406466B1 (ja) | 制御装置、制御方法および制御プログラム | |
WO2019058861A1 (ja) | 制御システムおよび制御装置 | |
US9720400B2 (en) | Synchronous control device | |
WO2018186358A1 (ja) | 制御装置、制御方法および制御プログラム | |
JP2013511784A (ja) | 並列プログラム制御 | |
US11977362B2 (en) | Control device and distributed control system | |
EP3361635B1 (en) | Control system and pulse output device | |
WO2019107022A1 (ja) | 制御装置および制御方法 | |
US11886170B2 (en) | Control system, setting device and setting program | |
US20180121235A1 (en) | Apparatus and method for processing a plurality of tasks | |
WO2019064348A1 (ja) | コントローラ | |
JP5549455B2 (ja) | プログラマブルコントローラシステムおよびそのプログラム更新方法 | |
JP7327225B2 (ja) | ロボット制御システムおよび制御方法 | |
EP3779622B1 (en) | Control device | |
Schimmel et al. | Distributed online change for IEC 61499 | |
WO2022185589A1 (ja) | 情報処理装置、方法およびプログラム | |
KR101513393B1 (ko) | 프로그램 작성 장치 및 프로그래머블 로직 컨트롤러 | |
WO2019176755A1 (ja) | ネットワークシステム | |
EP4036670A1 (en) | Control device | |
WO2020255486A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |