一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

更新多个风力涡轮机设备的软件和/或固件的制作方法

2022-02-25 23:03:07 来源:中国专利 TAG:


1.本发明涉及更新风力涡轮机的多个设备的软件和/或固件的方法,进一步涉及被适配成控制或执行该方法的计算设备,并且进一步涉及包括该计算设备的风力涡轮机。


背景技术:

2.风力涡轮机可以包括运行用于操作的固件和/或软件的多个设备。随着软件和/或硬件进一步发展,设备需要不时地更新。风力涡轮机的控制系统可以例如包括主计算机和一系列外围设备,诸如i/o站、i/o模块、中枢控制器、转换器控制器和开关,它们全部通过网络(无线的或基于线缆的)被链接,并且出于冗余目的可以部分地基于环形网络。有时,需要利用新的软件或固件来升级或更新主计算机和外围设备。由于该过程会使得涡轮机停止,并且由此不产生任何功率,因此保持升级时间或更新时间尽可能短是至关重要的。
3.常规地,由于长时间持续的更新过程,风力涡轮机的空闲时间是长的。
4.因此,可能需要一种使得能够更新多个风力涡轮机设备的更新方法和计算设备,其中可以减少风力涡轮机的空闲时间,并且可以以可靠且快速的方式来执行软件和/或固件的更新。


技术实现要素:

5.根据独立权利要求的主题可以满足该需要。从属权利要求描述了本发明的有利实施例。
6.根据本发明的实施例,提供了一种更新风力涡轮机的多个设备的软件和/或固件的方法,所述多个设备在通信网络中连接到主计算设备,所述方法包括:在主计算设备处获得关于通信网络的拓扑的信息;在主计算设备处获得更新包;由主计算设备按照拓扑导出的次序、特别地在外围处开始并且向内继续来触发更新针对其存在更新包的所有设备。
7.所述方法可以部分地由主计算设备来执行,并且部分地也可以由需要更新的设备来执行。软件可以包括控制软件和/或测量软件和/或处理软件。固件可以涉及输入输出模块、测量传感器、控制器等的控制。所述设备可以包括输入/输出模块、输入/输出站、开关、断路器、转换器等。
8.通信网络将所述设备中的每一个(不经由任何设备、经由一个或多个其他设备)通信地连接到主计算设备。通信网络的拓扑可以描述特别是关于主计算设备的通信网络的结构和通信网络内的不同设备的(相对)布置。一些设备可以直接连接到主计算设备,一些其他设备可以经由一个或多个仍其他设备间接连接到主计算设备。在所考虑的设备与主计算单元之间的设备越多,所考虑的设备在拓扑中或关于拓扑被布置得向外越远。特别地,所考虑的设备与主计算设备之间的距离可以被设想为反映(或对应于)连接所考虑的设备和主计算设备的链的长度,所述链不包括所考虑的设备与主计算设备之间的任何其他设备、包括所考虑的设备与主计算设备之间的一个或多个其他设备。所述链越长,所考虑的设备离主计算设备就越远。通信网络可以是基于以太网的、基于蓝牙的、或使用其他通信技术的。
拓扑可以部分地是环形、星形或其混合。
9.可以经由另一个通信网络(诸如,互联网或其他)从外部服务器获得更新包。可以首先关于更新包属于或者更新包被定向到所述多个设备中的哪一个来分析更新包。此外,可以基于对相应软件和/或固件的已安装版本的分析以及将所述版本与更新包的版本进行比较来确定所述多个设备中的哪一个需要升级。
10.更新过程可以是有序的过程,其中首先,可以在实际开始触发更新或更新之前确定触发更新或更新所述设备的次序。触发更新(或更新)可以从通信网络的外围处开始,如由拓扑信息所导出的那样,这是因为离主计算设备向外最远的设备被首先触发用于更新,接着是被布置得越来越靠近主计算设备的设备。向内继续触发更新可能意味着从外围越来越朝向主计算设备靠近以用于更新相应设备。当更新被触发的次序是从拓扑导出的时候,与传统方法相比,可以加速整个更新过程。
11.在一个实施例中,可以不按照从拓扑导出的次序将固件升级发送到所有设备。仅重启/重新启动过程可以“智能地”完成、即按照从拓扑导出的次序来完成,这是由于重启/重置可以断开(break)通信链路。
12.根据本发明的实施例,按照拓扑导出的次序来触发更新所述设备包括:触发更新如下设备,针对所述设备,在拓扑中被定位成离主计算设备向外更远的任何其他设备先前都已经被触发用于更新,其中触发更新特别地在循环中执行,直到针对其存在更新包的所有设备都被触发用于更新为止。
13.当被定位成比所考虑的设备离主计算设备向外更远的任何其他设备先前都已经被触发用于更新(或被更新)时,可以通过更新在拓扑中被定位成更靠近主计算设备的设备从而不扰动其他设备的更新。因此,可以避免更新特定设备干扰(或延迟或甚至禁止)更新另一个设备。因此,可以加速更新过程。所述循环可以例如以软件来实现、例如以递归方式来实现。实现所述循环可以使得能够最终更新需要更新的所有设备。
14.根据本发明的实施例,触发更新一设备包括:重启安装了更新包的设备。根据一个实施例,触发更新仅包括:重启安装了更新包的设备。如果仅安装了更新包但是所述设备尚未重启,则认为所述设备还未更新。只有已经安装了更新包并且已经重启了所述设备,更新才能够完成。因此,在该实施例中,重启已经安装了更新包的所有设备可以以有序的方式、特别是按照拓扑导出的次序来执行,如上所描述的那样。然而,在其他实施例中,更新包的供应和/或安装也可以以有序的方式、特别是以拓扑导出的有序方式来执行。
15.根据本发明的实施例,触发更新一设备包括:在所述设备处安装更新包,特别是来自主计算设备存储装置或设备存储装置的更新包。在该实施例中,安装更新包也可以按照拓扑导出的次序来进行。此外,重启也可以按照拓扑导出的次序来执行。
16.在本发明的又其他实施例中,相应更新包向所考虑的设备的供应、或者所有更新包向所述多个设备的供应也可以按照拓扑导出的次序来执行。
17.在其他实施例中,所述供应可以部分并行地执行并且部分按顺序执行。例如,可以并行地向特定第一组设备供应相应软件包,并且可以在供应给第一组设备之后并行地向另一组设备供应更新包。
18.根据本发明的实施例,触发所述设备以用于更新,同时在拓扑中被定位成离主计算设备向外更远的、先前已经被触发用于更新的其他设备仍在安装更新包和/或仍在重启
(即,重启未完成)。
19.当在拓扑中被定位成离主计算设备向外更远的、先前已经被触发用于更新的其他设备仍在安装更新包和/或仍在重启时,更新仍然可以被加速,这是由于用于更新所述设备(比其他设备更靠近主计算设备的设备)的触发将不会干扰更新其他设备,这是由于其他设备可能已经接收到更新包并且可能已经将其本地存储。因此,对于被定位成比被触发用于更新的所述设备离主计算设备向外更远的其他设备而言,至主计算设备的通信链路可能不再是必需的。
20.根据本发明的实施例,所述方法进一步包括:在主计算设备处获得更新包之后、并且特别地在触发更新一设备之前:从主计算设备向至少那些需要或使得能够本地存储更新包的设备供应相应更新包,以用于使得能够利用所述更新包进行更新。从主计算设备向那些需要或使得能够本地存储更新包的设备供应相应更新包也可以按照拓扑导出的次序来执行,或者可以随机地或基于更新包大小来导出。
21.当按照拓扑导出的次序来供应相应更新包时,可以顺序地首先向位于拓扑的外围处的设备、并且然后向被定位成越来越靠近主计算设备的设备供应相应更新包。然后,当已经向外围设备供应了更新包时,那些外围设备可以被触发用于重启,同时仍然向更靠近主计算设备的其他设备供应相应更新包。特别地,以有序方式或以任意方式执行供应相应更新包可能仍然取决于更新包中包含的数据量。当更新包在数据大小方面相对大时,可以按照拓扑导出的次序来执行供应更新包。当更新包在大小方面相对小时,可以对所有设备并行地、或者部分并行地并且部分顺序地执行所述供应。
22.根据本发明的实施例,拓扑针对每个设备指示无其他设备、一个或多个其他设备的链,设备的数量定义了所述链的长度,设备的顺序布置定义了所述链中的设备序列,主计算设备经由所述链连接到该设备,其中按照从链的长度和/或所述链中的设备序列导出的次序来执行供应相应更新包和/或触发更新。
23.所考虑的设备可以经由多于一个链而连接到主计算设备。在这种情况下,具有最小长度的链可以用于定义更新次序。供应相应更新包和/或安装更新包和/或重启安装了更新包的设备可以按照或者可以不按照从链的长度和/或所述链中的设备序列导出的次序来执行。因此,可以进一步简化和加速更新过程。
24.根据本发明的实施例,供应相应更新包和/或触发更新在被布置在最长链的相应末端处的设备处开始,其中特别地,一旦该设备已经接收到或已经安装了更新包,该设备就重启。所述过程然后可以继续到与最长链的相应末端处的设备相邻的设备,其中所述相邻设备更靠近主计算设备。所述过程可以继续到与所述相邻设备相邻的下一个相邻设备,并且可以以这种方式继续,直到所述链的开始处的设备、即直接连接到主计算单元的设备已经被触发用于更新、或者已经安装了更新包、或者已经在安装了更新包的情况下重启为止。
25.根据本发明的实施例,供应相应更新包和/或触发更新在被布置在链的相应末端处的设备处开始执行,并且以朝向被布置在所述链的开始处的设备的次序针对所有设备顺序地执行。因此,所述方法可以以简单的方式来实现、特别是使用递归循环来实现。
26.根据本发明的实施例,执行所述方法,使得在使用所安装的更新包来重启设备之前,在拓扑中向外更远的所有设备至少已经接收到或已经安装了相应更新包、或者甚至已经开始重启或已经完成重启。
27.当被布置在拓扑内的特定位置处的设备在不早于拓扑中向外更远的所有设备已经开始重启或已经完成重启、或者已经至少接收到更新包或者甚至已经安装了相应更新包的情况下被重启时,所考虑的设备的重启可以不干扰或禁止或扰动拓扑中向外更远的设备的更新。
28.根据本发明的实施例,所述方法进一步包括:如果更新包包括主计算设备更新包:在触发更新其他设备中的任一个之前、并且特别是在向任何其他设备供应任何其他更新包之前,更新主计算设备。
29.主计算设备可以控制更新过程。因此,在更新任何其他设备之前首先更新主计算设备是合理的。然而,诸如转换器之类的特定设备可能已经与主计算设备并行地更新。特别地,风力涡轮机的所述多个设备可以被分组为至少两组设备。第一组设备可以按照拓扑导出的次序根据更新方法来更新。至少一个其他组可以按照不同的次序来更新,例如也与主计算设备并行地更新或顺序地更新。因此,所述方法可以适应高灵活性。
30.根据本发明的实施例,避免触发更新如下任何设备:所述设备连接到所述链中的更远离主计算设备的任何其他设备,并且针对其存在更新包但是其尚未被触发用于更新。因此,可以避免干扰向外更远的设备的更新。
31.根据本发明的实施例,所述拓扑信息是从配置数据获得的,或者是通过向所有设备询问它们的连接性来计算的。
32.向所有设备询问它们的连接性或者导出网络拓扑可以由主计算设备来完成。
33.拓扑可以例如被定义或描述为图结构或树结构。
34.应当理解的是,所公开、描述、解释或被应用于多个设备的软件和/或固件的更新方法的特征(单独地或以任何组合)也可以单独地或以任何组合被应用于根据本发明的实施例的计算设备,并且反之亦然。
35.根据本发明的实施例,提供了一种计算设备,所述计算设备被适配成控制或执行根据上面描述的实施例之一的更新方法。
36.此外,根据本发明的实施例,提供了一种风力涡轮机,所述风力涡轮机具有根据前述实施例的计算设备,并且具有在通信网络中连接到所述计算设备的多个设备。
37.本发明的上面限定的方面和另外的方面从下文将描述的实施例的示例中是明显的,并且将参考实施例的示例来解释。下面将参考实施例的示例来更详细地描述本发明,但是本发明不限于这些示例。
附图说明
38.现在参考附图来描述本发明的实施例。本发明不限于所图示或所描述的实施例。
39.图1示意性地图示了根据本发明实施例的包括主计算设备的通信网络,该主计算设备被包括在风力涡轮机中。
40.图2示意性地图示了根据本发明实施例的更新风力涡轮机的多个设备的软件和/或固件的方法的方案。
具体实施方式
41.图1中示意性地图示的风力涡轮机的通信网络1包括主计算设备3,主计算设备3被
适配成控制或执行根据本发明的实施例的更新风力涡轮机的多个设备的软件和/或固件的方法。下面参考图2来描述该更新方法。
42.通信网络1将风力涡轮机的多个设备连接到主计算设备3。特别地,在通信网络1中,连接了多个i/o站或接口站5a、5b、5c。此外,多个开关7a、7b连接在通信网络1内。因此,开关7a、7b直接连接到主计算设备,即在相应开关7a、7b与主计算设备3之间不存在其他设备。相反地,i/o站5a和5c仅经由开关7a连接到主计算设备3。因此,例如,i/o站5c在包括i/o站5c和开关7a的链中连接到主计算设备。i/o站5a经由包括i/o站5a和开关7a的设备链而连接到主计算设备3。
43.通信网络1进一步包括多个i/o模块9a、9b、9c、9d、9e,这些模块在通信网络1的拓扑中仍进一步向外(从主计算设备3)。特别地,i/o模块9c在包括i/o模块9c、i/o站5c和开关7a的链中连接到主计算设备3。i/o模块9b在包括i/o模块9b、i/o站5b、i/o站5c和开关7a的链中连接到主计算设备3。转换器11经由开关7b连接到主计算设备。
44.尽管在图1中未图示,但是应当清楚,在本发明的其他实施例中,可以存在连接到i/o站5a、5b、5c、5中的任一个(或任何其他设备)的多个模块。该链不限于每个i/o站一个模块。此外,可能存在比所图示的i/o站和/或i/o模块更多的i/o站和/或i/o模块。
45.例如,仅当向外更远的其他设备(即,i/o模块9e和i/o模块9d)先前已经被触发用于更新时、特别是在i/o模块9e和i/o模块9d至少已经接收到相应更新包之后(如果它们支持本地存储更新包的话),才触发i/o站5a以用于更新。
46.如果这些设备、i/o模块9e、9d不允许本地存储更新包,则可以从主计算机供应软件包13,同时在i/o模块9e、9d处安装相应更新包。至少在相应更新包13已经安装在被定位成离计算设备向外更远的设备(即,i/o模块9e、9d)处之后,可以触发i/o站5a以用于更新,特别是重启i/o站5a,但不是更早。因此,至用于供应相应软件更新的i/o模块9e、9d的通信链路不能够被中断或扰动。
47.此外,在例如被定位成离主计算设备3向外更远的、先前已经被触发用于更新的i/o模块9d仍在安装更新包和/或仍在重启的同时,可以触发i/o站5a以用于更新。
48.更新包13可以包括一些或所有设备的更新包。通过由主计算设备3适当地寻址相应软件包,可以将相应更新包引导到相关联的设备。
49.根据本发明的实施例,该拓扑针对每个设备(例如,设备9e)指示了链,在这里,该链包括设备9e、9d、5a、7a。一般而言,该链可以不包含其他设备、包含一个或多个其他设备。设备的数量(对于设备的设备9e)可以定义该链的长度和设备的顺序布置,例如,次序9e、9d、5a、7a中的设备序列定义了设备的顺序布置,该顺序布置定义了该链中的设备序列。供应相应更新包13和/或触发更新可以按照从链的长度和/或该链中的设备序列导出的次序来执行。
50.一旦i/o模块9e已经接收到相关联的软件更新包13,设备9e就可以重启,从而安装更新包。该链的末端在这里是i/o模块9e,并且触发更新或更新在该设备9e处开始。随后,触发i/o模块9d以用于更新,随后触发i/o站5a以用于更新,并且仍然随后触发开关7a以用于更新,从而完成该设备链的更新过程。
51.通过确定通信网络1中的每个设备的确切位置,有可能构建如从主计算设备3看到的设置的确切拓扑或拓扑图。使用该拓扑图或拓扑,有可能导出用于更新设备5a、5b、5c、
7a、7b、9a、9b、9c、9d、9e和转换器11的更新次序。根据本发明的实施例,更新过程可以如下那样执行:1)计算或获得网络拓扑,特别是计算如何从主计算设备3看到网络拓扑。这也许是可能的,这是因为主计算设备可能知道特定设备连接到哪个或哪些其他设备。此外,可以从配置文件来获得网络拓扑。
52.2)在下一个步骤中,可以将(一个或多个)新软件包应用到主计算设备3,该软件包还可以包括用于外围设备的软件/固件。可以更新和重启主计算设备3。
53.3)可以将新软件/固件包推送(特别是供应和/或本地存储)到所有外围设备。然而,不应用该新软件/固件(特别是不安装该新软件/固件和/或不重启更新的设备)。取决于带宽,可以并行地或部分顺序地执行该新软件/固件的上传。
54.4)当链中最外面的设备已经接收到该新软件/固件时,将该固件首先应用(例如,安装在该设备处并且该设备可以重启)到该最外面的设备。这可能使得该相应设备离线(至少在重启该设备期间离线)。
55.5)当该最外面的设备已经被更新(例如,包括重启,其中所安装的更新包已经被用于重启该设备)时,它继续到更靠近主计算设备3一个级别的设备,并且将该软件/固件也应用于该更靠近的设备。然后,重复方法步骤(4),如果它准备好的话。
56.一旦该最外面的设备准备好,应用该软件/固件可以针对每个外围设备而开始,并且它不会断开至尚未完成其升级或更新的设备的通信链路。这可以确保在将该固件/软件上载到设备期间没有通信链路被断开,并且安装可以尽早地开始。
57.图2示意性地图示了根据本发明实施例的更新风力涡轮机的多个设备的软件和/或固件的方法15。
58.在方法步骤17中,在主计算设备(例如,图1中所图示的主计算设备3)处接收关于通信网络(例如,图1中所图示的网络1)的拓扑的信息。在方法步骤19处,在主计算设备(例如,图1中所图示的主计算设备3)处获得更新包。在方法步骤21处,按照拓扑导出的次序(即,从设备相对于至主计算设备3的连接的相对连接布置)在针对其存在更新包的所有设备处触发更新。方法15可以进一步包括如上已经描述的另外可选方法步骤。
59.本发明的实施例可以提供以下优点或特征:1)可以改进性能,从而使得能够并行地进行大部分更新过程2)可以减少涡轮机的停机时间或涡轮机的空闲时间。例如,如果必须升级所有风力涡轮机设备,则升级或更新时间可以从70分钟减少到约30分钟。益处可能是:可以使得风力涡轮机比常规已知的更快地操作,从而导致由于软件升级所致的更少停机时间。
60.应当注意的是,术语“包括”不排除其他元件或步骤,并且“一(a或an)”不排除多个。而且,结合不同实施例描述的元件可以被组合。还应当注意的是,权利要求中的参考符号不应当被解释为限制权利要求的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献