使用图形文件控制电气部件
文献发布时间:2023-06-19 11:19:16
相关申请的交叉引用
本申请要求于2019年12月6日提交的且题为“CONTROLLING ELECTRICALCOMPONENTS USING GRAPHICS FILES”的美国临时专利申请第62/945,085号的优先权,该美国临时申请的公开内容通过引用以其整体并入本文。
背景
电气部件可以整合到系统中,以协调它们的行为。这种控制有时以软件控制的形式实现,其中处理器执行以机器可读代码制定的指令,以使电气部件相应地操作。然而,这种控制可以被认为是相对高级且复杂的,因为它要求装置具有复杂架构,并且它可能容易中断或存在不稳定行为。所需要的是一种硬件实现的控制架构,其允许电气部件的系统以高灵活性执行复杂且动态可修改的操作。
概述
在第一方面中,一种方法包括:访问动画图形文件和掩模(mask)图形文件;生成对应于动画图形文件的第一二进制序列,并生成对应于掩模图形文件的第二二进制序列;以及将第一二进制序列和第二二进制序列输出到控制电气部件阵列的硬件。
实现方式可以包括下列特征中的任何特征或全部。输出所述第一二进制序列和所述第二二进制序列包括传输二进制文件,所述二进制文件包括所述第一二进制序列和所述第二二进制序列。动画图形文件和所述掩模图形文件具有通用图形文件类型。所述通用图形文件类型支持无损数据压缩。动画图形文件或掩模图形文件中的至少一者具有每种颜色八个位。动画图形文件或掩模图形文件中的至少一者具有每种颜色16个位。动画图形文件或掩模图形文件中的至少一者具有三个平面。动画图形文件或掩模图形文件中的至少一者具有四个平面。该方法还包括读取第一标志以将所述动画图形文件与所述掩模图形文件进行区分。生成所述第一二进制序列或生成所述第二二进制序列中的至少一个包括读取指示处理方向的第二标志。该方法还包括使用所述第一二进制序列和所述第二二进制序列来操作所述电气部件阵列。
在第二方面中,存储在非暂时性介质中的计算机程序产品包括当由处理器执行时使处理器执行操作的指令,该操作包括:访问动画图形文件和掩模图形文件;生成对应于动画图形文件的第一二进制序列,并生成对应于掩模图形文件的第二二进制序列;以及将第一二进制序列和第二二进制序列输出到控制电气部件阵列的硬件。
在第三方面中,一种方法包括:访问第一动画图形文件、第二动画图形文件、掩模图形文件和关于电气部件阵列的预定电阈值;对来自第一动画图形文件和第二动画图形文件以及掩模图形文件的行的组合执行逐像素计算,逐像素计算中每一个计算包括通过将来自第一动画图形文件的第一动画像素值与来自掩模图形文件的第一掩模像素值相乘来确定第一缩放像素值,通过将来自第二动画图形文件的第二动画像素值与来自掩模图形文件的第二掩模像素值相乘来确定第二缩放像素值,并且确定第一缩放像素值和第二缩放像素值的和;以及生成反映逐像素计算的结果是否超过关于电气部件阵列的预定电阈值的输出。
实现方式可以包括下列特征中的任何特征或全部特征。执行逐像素计算包括对来自所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件的所有可能的行组合执行逐像素计算。所述输出指示逐像素计算的结果超过关于所述电气部件阵列的预定电阈值,并且其中所述方法还包括调整所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者。电气部件阵列包括发光二极管(LED),其中所述预定电阈值包括电流上限,并且其中调整所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者包括降低亮度值。所述输出指示逐像素计算的结果不超过关于所述电气部件阵列的预定电阈值,并且其中,所述输出还包括描述所述电气部件阵列的计算的电气值。该计算的电气值包括关于第一动画图形文件、第二动画图形文件和掩模图形文件的所有行组合的平均总电流。该计算的电气值包括在第一动画图形文件、第二动画图形文件和掩模图形文件的所有行组合当中的最高总电流。电气部件阵列包括发光二极管(LED)。逐像素计算的结果包括基于作为像素存储在所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件中的数据来计算关于所述LED中的每个LED颜色的估计电流。关于LED中的每个LED颜色的估计电流是平均电流或最大电流中的至少一个。逐像素计算的结果包括关于LED中的每个LED的估计电流。关于LED的每个LED的估计电流是平均电流或最大电流中的至少一个。第一动画图形文件和所述第二动画图形文件中的每一行与由所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件定义的图案序列中的帧相关联,并且其中,行中的每个像素与所述电气部件阵列中的相应电气部件相关联。执行所述逐像素计算包括处理所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件中的每一者的第一行,并且随后在多次迭代中处理所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件中的每一者的下一行。第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者具有与所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的另一者不同的时间长度,所述方法还包括在到达所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者的末尾之后,开始所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者的另一个循环。第一动画图形文件、第二动画图形文件和掩模图形文件中的每一者中的一系列行与由第一动画图形文件、第二动画图形文件和掩模图形文件定义的图案序列的时间流相关联。第一动画图形文件、第二动画图形文件和掩模图形文件具有通用图形文件类型。通用图形文件类型支持无损数据压缩。第一动画图形文件、第二动画图形文件或掩模图形文件中的至少一者具有每种颜色八个位。第一动画图形文件、第二动画图形文件或掩模图形文件中的至少一者具有每种颜色16个位。第一动画图形文件、第二动画图形文件或掩模图形文件中的至少一者具有三个平面。第一动画图形文件、第二动画图形文件或掩模图形文件中的至少一者具有四个平面。生成输出包括在显示设备上呈现消息。该方法还包括基于所述第一动画图形文件和所述第二动画图形文件来操作所述电气部件阵列。
在第四方面中,存储在非暂时性介质中的计算机程序产品包括当由处理器执行时使处理器执行操作的指令,该操作包括:访问第一动画图形文件、第二动画图形文件、掩模图形文件和关于电气部件阵列的预定电阈值;对来自第一动画图形文件、第二动画图形文件和掩模图形文件的行的组合执行逐像素计算,逐像素计算中每一个计算包括通过将来自第一动画图形文件的第一动画像素值与来自掩模图形文件的第一掩模像素值相乘来确定第一缩放像素值,通过将来自第二动画图形文件的第二动画像素值与来自掩模图形文件的第二掩模像素值相乘来确定第二缩放像素值,并且确定第一缩放像素值和第二缩放像素值的和;以及生成反映逐像素计算的结果是否超过关于电气部件阵列的预定电阈值的输出。
在第五方面中,一种方法包括:访问对应于动画图形文件的第一二进制序列,以及对应于掩模图形文件的第二二进制序列;根据第二二进制序列将第一二进制序列的部分彼此组合以生成数字位流;以及传输数字位流以控制电气部件阵列。
实现方式可以包括下列方面中的任何方面或全部。动画图形文件中的每一行与由所述动画图形文件和所述掩模图形文件定义的图案序列中的帧相关联,并且其中行中的每一像素与所述电气部件阵列中的相应电气部件相关联。将所述第一二进制序列的部分彼此组合包括处理所述动画图形文件和所述掩模图形文件中每一者的第一行,并且随后在多次迭代中处理所述动画图形文件和所述掩模图形文件中每一者的下一行。动画图形文件或所述掩模图形文件中的至少一者具有与所述动画图形文件或所述掩模图形文件中的另一者不同的时间长度,所述方法还包括在到达所述动画图形文件或所述掩模图形文件中的至少一者的末尾之后,开始所述动画图形文件或所述掩模图形文件中的至少一者的另一个循环。动画图形文件或所述掩模图形文件中每一者中的一系列行与由所述动画图形文件和所述掩模图形文件定义的图案序列的时间流相关联。该方法还包括访问对应于相应掩模图形文件的多个第二二进制序列,以及访问指定了组合的配置文件,每个组合包括所述动画图形文件中的至少两个动画图形文件和所述掩模图形文件中的一个掩模图形文件。组合中每一个组合对应于稳定状态或过渡状态。该方法还包括调节从第一稳定状态到第二稳定状态的变化,其中所述配置文件指定介于所述第一稳定状态和所述第二稳定状态之间的过渡状态。电气部件阵列包括发光二极管(LED)。传输数字位流以控制所述电气部件阵列包括将所述数字位流传输至用于所述LED中的相应LED的驱动器。将所述数字位流传输到用于所述LED中的相应LED的驱动器包括通过驱动器的菊链传输所述数字位流。该方法还包括使用所述动画图形文件生成所述第一二进制序列,以及使用所述掩模图形文件生成所述第二二进制序列。
在第六方面中,一种装置包括:非易失性存储器,其存储对应于相应动画图形文件的第一二进制序列,以及对应于掩模图形文件的第二二进制序列;电气部件阵列;以及硬件,其根据第二二进制序列将第一二进制序列的部分彼此组合以生成用于电气部件阵列的数字位流。
实现方式可以包括下列特征中的任何特征或全部。电气部件阵列包括发光二极管(LED)。生成用于电气部件阵列的数字位流包括将所述数字位流传输至用于所述LED中的相应LED的驱动器。将所述数字位流传输到用于所述LED中的相应LED的驱动器包括通过驱动器的菊链传输所述数字位流。电气部件阵列包括电动机。电气部件阵列包括电加热器。电气部件阵列包括电致动器。硬件包括:二进制乘法器,其对第一二进制序列的至少一部分执行乘法;以及二进制加法器,其对由二进制乘法器生成的乘积执行加法。
在第七方面中,一组图形文件包括:第一动画图形(AG)文件,其包括第一AG素,第一AG像素中每一个包括第一AG值;第二AG文件,其包括第二AG像素,第二AG像素中每一个包括第二AG值;以及掩模图形(MG)文件,其包括MG像素,MG像素中每一个包括MG值,MG值中的第一MG值针对第一AG值中的一个第一AG值指定第一数值因子,MG值中的第二MG值针对第二AG值中的一个第二AG值指定第二数值因子,该MG像素定义以下项之和:(i)所述第一数值因子乘以所述第一AG值中的所述一个第一AG值,以及(ii)所述第二数值因子乘以所述第二AG值中的所述一个第二AG值。
应当认识到,前面的概念和下面更详细讨论的另外的概念的所有组合(假设这些概念不相互矛盾)都被设想为本文公开的创造性主题的一部分。特别地,出现在本公开结尾处的要求保护的主题的所有组合被认为是本文公开的创造性主题的一部分。
附图简述
图1示出了可用于创建图形文件的系统的示例。
图2示出了可以使用图形文件来控制电气部件阵列的操作的系统的示例。
图3示意性地示出了电气部件的示例。
图4示意性地示出了电气部件阵列的示例。
图5示出了发光二极管(LED)阵列的示例。
图6示意性地示出了用于LED的驱动器的菊链的示例。
图7示出了动画图形文件的示例。
图8示出了包括动画图形文件和掩模图形文件的图形文件的示例。
图9-11示出了方法的示例。
图12是可用于生物和/或化学分析的示例系统的示意图。
图13示出了计算设备的示例架构。
详细描述
本公开描述了助于改善电气部件的操作的系统、技术和/或制品。在一些实施方式中,图形文件用于对电气设备的复杂操作进行建模并对其进行控制。例如,图形文件可用于驱动动态图案(dynamic patterns)中的发光二极管(LED)的操作,同时在不使用交叉淡入淡出(cross-fades)的情况下允许在硬件级别在模式之间进行无缝改变。图形文件可以包括包含图案内容的两个或更多个动画图形文件、以及定义动画图形文件的内容的组合的至少一个掩模图形文件。在创建图形文件之后,程序可以处理图形文件,以根据图形文件来确定通过操作LED所放置的电气需求。如果违反了电气限制,可以修改图形文件以符合限制。如果没有违反电气限制,可以输出关于可用于监测和维护系统的LED操作的估计电气特性。程序可以将图形文件转换成二进制文件,并且系统中的硬件可以使用二进制文件来组合来自动画图形文件和掩模图形文件的内容,以根据定义图案驱动电气部件(例如,LED)。配置文件可以指定硬件要使用的图形文件的不同组合。
本文中的示例提到图形文件。图形文件可以包括一种或更多种形式的数字数据。图形文件可以与一个或更多个图像文件压缩算法相关联。压缩算法可以以无损(即,该算法支持无损数据压缩并保存未压缩数据的完美副本)或有损(即,该算法支持有损数据压缩且不保存未压缩数据的完美副本)为特征。数字数据可以在图形文件中以像素的形式被组织。每个像素可以与一个或更多个值相关联,有时称为图形文件的平面(plane)。图形文件可以具有任意数量的平面。在一些实现方式中,图形文件具有三个或四个平面。例如,三个平面可以分别指图形文件的红色平面、绿色平面和蓝色平面。例如,透明度可以作为平面(例如,第四平面)被包含在图形文件中。每种颜色可以用具有某个数量的位(有时称为色深)的像素值来表示。图形文件的任何颜色都可以有任意数量的位。在一些实现方式中,颜色具有8位深度,对应于多达256个可能的颜色值。在一些实现方式中,颜色具有16位深度,对应于多达65,536个可能的颜色值。图形文件可以以阵列的形式组织像素。例如,图形文件中的像素阵列可以包括像素行和列。图形文件的任何维度都可以指的是图形文件的长度。在一些实现方式中,两个或更多个图形文件在其相应阵列的至少一个维度上可以具有相同数量的像素(例如,相同数量的列)。图形文件的相应长度可以指每个图形文件中的行数。例如,具有比另一个图形文件更多行数的数字数据的图形文件可以被称为在时间上比另一个图形文件更长。
本文中的示例提到二进制序列。二进制序列可以包括有序的一组位,有时称为二进制数字。在一些实现方式中,二进制序列可以包括由相应的1和0表示的一系列位。在以有形的形式保存和存储之前,这一组位可以被表征为二进制序列。为了保持二进制序列的位,它们可以被组装成二进制文件的形式,其可以被存储在计算机可读存储介质中。例如,二进制文件可以包括以组排列的位(例如,字节)。
本文中的示例提到数字位流。数字位流可以用于系统的主控制器(例如,包含电气部件的仪器或其他装置的处理器)和驱动相应电气部件的集成电路(例如,驱动一个或更多个LED的芯片)之间的通信。数字位流可以是以相对低电流传输的逻辑电平信号。例如,数字位流可以向集成电路输送用于电气部件(例如,发光LED)的电流量的信息。在一些实现方式中,可以使用时钟/数据信令方法来传送数字位流。例如,将主控制器和集成电路相互连接的一根导线可以用作将数字位流发送到集成电路的数据线。将主控制器和集成电路相互连接的另一根导线可以用作时钟线,以用于发送触发集成电路在数据线上记录来自数字位流的下一个数字位的脉冲。
本文中的示例提到数字脉冲。数字脉冲可以是驱动相应电气部件的集成电路的输出(例如,驱动一个或更多个LED的芯片的输出)。数字脉冲可以是解释数字位流的集成电路的结果。也就是说,可以传输数字位流来控制电气部件的阵列。在一些实现方式中,数字脉冲可以指示有多少电流通过LED管芯。数字脉冲可以是被设计成驱动一个或更多个LED的电数据脉冲的序列(例如,具有标称“开”值或“关”值)。在一些实现方式中,每个LED包括多个管芯,并且可以为不同管芯提供相应的数字脉冲,以生成LED的特定输出。数字脉冲是驱动一个或更多个LED(包括但不限于LED带(strip))的电力流。
本文中的示例提到标志。标志可以由任何可控实体来表示,所述可控实体可以被操纵以在被解释时输送或不输送特定状态或其他消息。在一些实现方式中,标志可以包括一个或更多个位,该一个或更多个位的值可以指示特定文件的特征(例如,类型)。例如,不同的图形文件可以通过设置标志来相互区分。作为另一示例,可以使用标志来指定在特定图形文件中的指定处理方向。标志可以存储在正在访问或试图访问图形文件的部件可访问的位置。在一些实现方式中,标志可以存储在图形文件中,使得部件可以通过访问文件来读取标志。在一些实现方式中,标志可以存储在存储器中,其中部件可以在访问图形文件之前或访问图形文件的同时访问标志。
本文中的示例提到输出数字数据。输出数字数据可以包括使用有形介质(例如,由通过物理基板传播的信号)和/或使用无形介质(例如,由以电磁辐射形式传播的信号)来输送数字数据。例如,表示一个或更多个文件(例如,图形文件)的数字数据可以以从一个部件到至少一个其他部件的一个或更多个传输的形式输出。传输可以包括有线和/或无线通信。多种协议中的任何一种都可以用于传输或以其他方式输出数字数据。
本文中的示例提到软件或软件系统。软件可以被设计用于一个或更多个计算机(例如,中央处理单元(CPU)或图形处理单元(GPU),并且可以使用多种编程语言中的任何一种(包括但不限于高级编程语言或机器语言)来制定。可以执行软件来定义可以执行指定任务的一个或更多个应用。软件可以包括固件或由固件组成。在一些实现方式中,固件可以控制系统中的一种或更多种类型的硬件。固件和/或其他软件可以由系统保存(例如,在非易失性存储器中)。
本文中的示例提到硬件或硬件系统。硬件可以包括一种或更多种类型的物理部件作为装置或其他系统的有形方面。在一些实现方式中,硬件包括能够提供一种或更多种类型的操作或其他功能的数字电子器件。数字电子器件可以包括一种或更多种类型的电路,包括但不限于被设计成控制电气部件的操作的集成电路。
本文中的示例提到电气部件。电气部件基于电力操作,并执行一种或更多种类型的操作。电气部件可以基于直流(DC)电力和/或交流(AC)电力运行。电气部件可以操作以输出一种或更多种类型的能量。在一些实现方式中,电气部件输出电磁辐射。例如,电气部件可以是光源(例如,可见光谱中的光)。电气部件可以包括但不限于一组发光二极管(LED)。电气部件可以操作以输出一种或更多种形式的机械运动。在一些实现方式中,电气部件包括机电设备。例如,电气部件可以包括由一个或更多个控制信号驱动的一个或更多个电动机(例如,感应电动机或同步电动机)。作为另一示例,电气部件可以用于电致动一种或更多种类型的机械运动。例如,螺线管或其他类型的换能器可以使用电磁体来将电能和/或磁能转换成运动(例如,线性机械运动)。电气部件可以操作以输出热能。在一些实现方式中,电气部件包括一种或更多种类型的电加热器。例如,一个或更多个电加热器可以通过选择性地使电流流过一个或更多个电阻元件来操作。作为另一示例,感应加热器可以通过用交变磁场穿透导电材料来操作。
图1示出了可用于创建图形文件的系统100的示例。系统100可以与本文其他地方描述的一个或更多个其他示例一起使用。系统100可以便于电气部件的操作模式的创建。此外,操作模式也可以由不具备电气部件的硬件细节的专业知识(例如,没有直接知识)的人来创建。在一些实现方式中,系统100通过提供一种过程设计方法来服务于这样的目标,该过程设计方法包括:抽象化所涉及的硬件类型;进行直观的解释;和/或生成可转换成硬件专用数据的输出,以用于驱动一种或更多种类型的电气部件。系统100可以为用户(例如图形设计者)提供定义在电气部件阵列的两个或更多个操作模式之间的转换的能力。
在一些实现方式中,操作系统100的人是图形设计者。图形设计者可以使用系统100来设计由耦合到装置的LED阵列输出的图案。例如,LED可以输出复杂图案,以指示装置的一个或更多个当前操作状态(例如,稳定状态),并且图案可以被动态修改或实时切换以指示状态过渡(例如,过渡状态)。此处,系统100包括图形软件102。在一些实现方式中,图形软件102是许多图形设计者熟悉的标准或众所周知的图形说明工具。在一些实现方式中,图形软件102被配置成生成具有一种或更多种类型的图形文件格式的图形文件并将其输出。例如,图形软件102包括诸如
图形软件102可以提供用于创建和/或修改图形文件的图形内容的一个或更多个功能。在一些实现方式中,图形软件102包括亮度工具104,其可用于设置和/或修改一种或更多种类型的图形文件的亮度值。例如,亮度工具104可以操纵图形文件中一个或更多个单个像素的颜色值。在一些实现方式中,图形软件102包括色调工具106,其可用于设置和/或修改一种或更多种类型的图形文件的色调值。例如,色调工具106可以操纵图形文件中对于一个或更多个单个像素的色调值。在一些实现方式中,图形软件102包括饱和度工具108,其可用于设置和/或修改一种或更多种类型的图形文件的饱和度值。例如,饱和度工具108可以操纵图形文件中一个或更多个单个像素的光强度和/或光谱分布。在一些实现方式中,图形软件102包括水平工具(level tool)110,其可用于设置和/或修改一种或更多种类型的图形文件的水平值。例如,水平工具110可以移动和/或拉伸图形文件中一个或更多个单个像素的亮度水平。在一些实现方式中,图形软件102包括曲线工具(curve tool)112,其可用于设置和/或修改一种或更多种类型的图形文件的曲线值。例如,曲线工具112可以调整图形文件中在整个图像色调范围内的一个或更多个点。图形软件102中也可以或替代地包括其他功能。
图形软件102可以生成一个或更多个图形文件114。在一些实现方式中,一个或更多个图形文件114可以包括动画图形文件(AF)116。例如,动画图形文件116包含用于操作电气部件阵列的图案内容(例如,以单个像素值为单位)。在一些实现方式中,一个或更多个动画图形文件116可以包括掩模图形文件(MF)118。例如,掩模图形文件118定义(例如,通过单个像素值)来自两个或更多个动画图形文件116的内容的组合(例如,通过缩放来自动画图形文件116的一个或更多个像素值并组合缩放后的值)。
动画图形文件116和掩模图形文件118可以具有一种或更多种文件格式。在一些实现方式中,动画图形文件116可以包括3级或4级图形文件类型,其特征在于8位色深或16位色深,并且支持无损或有损图像压缩。例如,动画图形文件116可以是便携式网络图形(PNG)文件。作为另一示例,动画图形文件116可以是弹性图像传输系统(FITS)文件。在一些实现方式中,掩模图形文件118可以包括3级或4级图形文件类型,其特征在于8位色深或16位色深,并且支持无损或有损图像压缩。例如,掩模图形文件118可以是PNG文件。作为另一示例,掩模图形文件118可以是FITS文件。这样,动画图形文件116和掩模图形文件118可以具有通用图形文件类型,或者可以具有彼此不同的图形文件类型。
动画图形文件116和掩模图形文件118中的一者或更多者可以与涉及至少相对应的图形文件的预期处理或计划处理的标志相关联。标志可以被包括在动画图形文件116和/或掩模图形文件118中,或者与动画图形文件116和/或掩模图形文件118分开实现。在一些实现方式中,标志涉及图形文件的类型之间的差异。例如,动画图形文件116和掩模图形文件118可以通过对标志的设置来彼此区分。
动画图形文件116和/或掩模图形文件118可以在被应用以控制电气部件的操作之前进行分析。这里,动画图形文件116和/或掩模图形文件118可以被提供给系统100中的分析程序120。分析程序120可以以存储在非暂时性介质中的计算机可读指令的形式来实现。在一些实现方式中,分析程序120可以评估由动画图形文件116和掩模图形文件118指定的操作特征是否符合一个或更多个适用的电阈值。这种评估可以包括分析程序120基于存储为动画图形文件116和掩模图形文件118中的像素的数据来计算关于LED(例如,关于LED中的每个LED颜色)的估计电流。例如,关于电气部分阵列的电阈值可以被定义并且对系统100(例如,在系统100内或其他地方)是可访问的。分析程序120可以评估使用LED阵列呈现由动画图形文件116和掩模图形文件118定义的图案针对LED或控制LED的装置是否可能需要过大的电流。例如,分析程序120可以在进行这种确定时,对来自动画图形文件116和掩模图形文件118的行组合执行逐像素计算。
分析程序120可以生成一个或更多个输出122。在一些实现方式中,输出可以基于根据掩模图形文件118和动画图形文件116的多个实例计算最终输出电流或控制参数值。在一个示例中,这种计算可以表示为:
F=A×M,
其中,F是最终输出电流或控制参数值的向量(例如,3×1矩阵),A是动画图形文件116的矩阵(例如,3×3矩阵),而M是掩模图形文件118的向量(例如,3×1矩阵)。例如,假设LED中每一个具有三个管芯(分别称为R、G和B),它们将使用所确定的最终值来驱动。对每个像素执行上述的计算F(即,逐像素计算)给出了最终输出电流或控制参数值,其将被应用于LED中的管芯。例如,像素的结果F的值可以是
基于动画图形文件和掩模图形文件,可以以一种或更多种方式评估一个或更多个计算出的F值,以确定是否电气部件阵列的至少一个预定电阈值是被超过。分析程序120可以执行这样的评估。在一些实现方式中,可以评估F的各个值(例如,与预定的电阈值进行比较),以确保通过任何单个管芯的电流不会过大。例如,如果预定的电阈值低于95,则上述最终值F将被视为过大。如果F超过预定的电阈值,则可以降低F计算中的一个或更多个值。
在一些实现方式中,可以确定和评估F值的总和(例如,与预定的电阈值进行比较),以确保通过给定LED封装的电流不会过大。例如,如果预定的电阈值低于114,即这些值的总和,则上述最终值将被认为是过大的。如果F中的值的总和超过预定的电阈值,则可以降低在F的计算中的一个或更多个值。
在一些实现方式中,可以确定和评估(例如,与预定的电阈值相比较)关于电气部件的整个阵列(例如,对于该串中的所有LED)的全部F中的所有值的总和,以确保通过给定电气部件阵列的电流不会过大。如果全部F的值的总和超过预定的电阈值,则可以降低在对一个或更多个F的计算中的一个或更多个值。
在一些实现方式中,输出122指示逐像素计算的结果符合(例如,不超过)关于电气部件阵列的电阈值。例如,输出122可以反映上述计算的最终值F没有超过电阈值。在一些实现方式中,输出122可以包括描述电气部件阵列的计算的电气值。可以输出多个不同的计算的电气值中的任何一个。在一些实现方式中,计算的电气值包括动画图形文件和掩模图形文件的所有行组合的平均总电流。在一些实现方式中,计算的电气值包括动画图形文件和掩模图形文件的所有行组合当中的最高总电流(例如,电流上限)。在一些实现方式中,电气部件阵列包括LED,并且计算的电气值包括用于LED中的每个LED的颜色的电流。例如,用于LED中的每个LED的颜色的电流是平均电流或最大电流中的至少一个。在一些实现方式中,计算的电气值包括用于LED中的每个LED的电流。例如,用于LED中的每个LED的电流是平均电流或最大电流中的至少一个。
分析程序120的使用例示了一种方法的执行,该方法包括访问第一动画图形文件和第二动画图形文件(例如,动画图形文件116)和掩模图形文件(例如,掩模图形文件118),以及关于电气部件阵列的预定电阈值(例如,上述示例中的100的电阈值);对来自第一动画图形文件和第二动画图形文件以及掩模图形文件的行组合(例如,通过分析程序120)执行逐像素计算,每个逐像素计算包括:通过将来自第一动画图形文件的第一动画像素值与来自掩模图形文件的第一掩模像素值相乘来确定第一缩放像素值,通过将来自第二动画图形文件的第二动画像素值与来自掩模图形文件的第二掩模像素值相乘来确定第二缩放像素值,并且确定第一缩放像素值和第二缩放像素值的和;以及生成输出(例如,输出122),该输出反映逐像素计算的结果(例如,计算结果F)是否超过关于电气部件阵列的预定电阈值。该方法可以通过执行存储在非暂时性介质(例如,分析程序120)中的计算机程序产品的指令来执行。
动画图形文件116和/或掩模图形文件118可以在被应用以控制电气部件的操作之前进行转换。这里,动画图形文件116和/或掩模图形文件118可以被提供给系统100中的转换程序124。转换程序124可以以存储在非暂时性介质中的计算机可读指令的形式来实现。在一些实现方式中,转换程序124可以使用动画图形文件116和掩模图形文件118生成输出126。在一些实现方式中,输出126包括对应于动画图形文件116的相应的第一二进制序列,以及对应于掩模图形文件118的第二二进制序列。第一二进制序列中的每一个可以通过将动画图形文件116中对应一个转换成二进制形式来生成。在一些实现方式中,动画图形文件116和掩模图形文件118中的每一者都包括十六进制形式的值。例如,每个第一二进制序列可以包括以二进制形式表示的动画图形文件116之一的像素值。第二二进制序列可以通过将掩模图形文件118转换成二进制形式来生成。例如,第二二进制序列可以包括以二进制形式表示的掩模图形文件118的像素值。第一二进制序列和第二二进制序列可以被包括在输出126的一个或更多个二进制文件中。
转换程序124的使用例示了方法的执行,该方法包括:访问动画图形文件(例如,动画图形文件116)和掩模图形文件(例如,掩模图形文件118)的;生成对应于动画图形文件的第一二进制序列,并生成对应于掩模图形文件的第二二进制序列;以及将第一二进制序列和第二二进制序列(例如,统称为输出126))输出到控制电气部件阵列的硬件。该方法可以通过执行存储在非暂时性介质(例如,转换程序124)中的计算机程序产品的指令来执行。
图2示出了可以使用图形文件来控制电气部件阵列的操作的系统200的示例。系统200可以与本文其他地方描述的一个或更多个其他示例一起使用。系统200包括非易失性存储器202(例如,闪存、磁存储介质和/或光存储介质)和硬件系统204。硬件系统204包括处理器205(例如,图13中的处理设备1302,包括但不限于CPU或GPU)、电气部件208-1、208-2、…208-N的阵列206,其中N是大于或等于2的正整数。处理器205可以包括二进制乘法器205A和二进制加法器205B。
系统200包括软件系统210。软件系统210可以基于存储在非易失性存储器202中的数据来操作,并且可以通过基于处理器的指令的执行(例如,通过处理器205)来实现操作。系统200包括算固件系统212。固件系统212可以基于存储在非易失性存储器202中的数据来操作,并且可以通过基于处理器的指令的执行(例如,通过处理器205)来实现。
软件系统210的作用可以是当系统200(例如,装置)的状态改变时通知固件系统212。可以定义多种不同状态中的任何一种。例如,当系统200包括被配置用于分析核酸材料的装置(例如,系统200是定序器)时,系统200的状态可以包括但不限于空闲状态(例如,系统200当前没有分析核酸材料);预运行状态(例如,系统200其自身当前正准备分析核酸材料);测序状态(例如,系统200当前正在分析核酸材料);或者完成状态(例如,系统200已经完成分析核酸材料,但是还没有(已经)进入空闲状态)。系统200的每个状态可以将其与使用LED阵列呈现的预定图案相关联。例如,图案可以包括动画图形文件和掩模图形文件(例如,图1的动画图形文件116和掩模图形文件118)的循环组合。一个或更多个状态可以被认为是稳定状态,以及一个或更多个状态可以被认为是过渡状态。稳定状态可以重复,直到状态发生变化。例如,稳定状态可以具有一个或更多个过渡状态,该一个或更多个过渡状态被定义为在呈现稳定状态的图案之前顺序地和/或重复地呈现在LED阵列上,其可以循环(例如,无限期地,直到软件系统210指示改变状态)。过渡状态可以重复一次或更多次迭代。配置文件214可以定义适用图案。在一些实现方式中,配置文件214被存储在非易失性存储器202中,并指定适用于系统200的一个或更多个状态的图案。软件系统210可以调节从第一稳定状态(例如,预运行)到第二稳定状态(例如,测序)的改变,并且配置文件214可以指定介于第一稳定状态和第二稳定状态之间的过渡状态(例如,指定应该在预运行图案之后和测序图案之前呈现的过渡图案)。
软件系统210可以包括一个或更多个附加功能。在一些实现方式中,软件系统210包括转换程序124。在软件系统210内实现转换程序124可以确保系统200转换一个或更多个动画图形文件218和一个或更多个掩模图形文件220以用于控制电气部件的阵列206的能力。
系统200可以访问一个或更多个二进制文件216。在一些实现方式中,二进制文件216可以是图1中的转换程序124的输出(例如,输出126)。二进制文件216可以包括对应于相应图形文件的一个或更多个二进制序列。这里,示出了动画图形文件218和掩模图形文件220。也就是说,二进制文件216示出了由图1中的转换程序124输出第一二进制序列和第二二进制序列可以包括传输包括第一二进制序列和第二二进制序列的二进制文件。在一些实现方式中,由配置文件214定义的每个组合包括动画图形文件218中的至少两个动画图形文件和掩模图形文件220中的一个掩模图形文件。
固件系统212的作用可以是访问来自软件系统210的状态改变通知,并为硬件系统204准备传输数字位流以控制电气部件阵列206所需的信息。例如,数字位流可以被传输到用于LED的驱动器,并且驱动器可以基于数字位流生成用于LED的数字脉冲。在一些实现方式中,固件系统212可以读取由配置文件214定义的二进制文件216的所需组合,协调至少一些二进制文件216的加载(例如,从图1中的转换程序124加载到非易失性存储器202中),并通知硬件系统204在哪里找到相关的二进制文件216。此外,硬件系统204的作用可以是基于一个或更多个掩模图形文件220中的像素值来组合非易失性存储器202中的二进制文件216,并且构建数字位流并将其传输到LED 208-1、208-2、…208-N的阵列206。在一些实现方式中,处理器205包括数字位流部件222,其执行至少一些二进制文件216的组合并构建用于阵列206的数字位流。在一些实现方式中,数字位流部件222访问(例如,接收)由二进制乘法器205A执行的乘法和由二进制加法器205B执行的加法的结果,并基于这些结果生成数字位流。例如,关于LED 208-1、208-2、…208-N进行的一个呈现的图案信息可以被认为是图案序列中的一个帧,该序列是通过向LED驱动器连续传输数字位的多个帧来执行的。可以使用任何帧呈现速率。在一些实现方式中,数字位流部件222可以提供每秒多个帧的操作,包括但不限于每秒几十帧(例如每秒大约30帧)。
作为数值示例,考虑涉及第一、第二和第三动画图形文件和一个掩模文件的情况。此外,假设第一动画图形文件中的一个像素具有值(12,25,8),第二动画图形文件中的一个像素具有值(42,0,61),第三动画图形文件中的一个像素具有值(4,50,29),并且掩模图形文件具有值(90,99,33)。在一些实现方式中,在掩模图形文件或在所有动画图形文件中,除数可以用作归一化因子(例如,8位实现方式中的数字255),但是为了简单起见,在该示例中省略了归一化因子。将上述像素值转换为二进制会产生以下二进制文件:
(0001100,0011001,0001000)作为第一动画图形文件的像素的二进制文件;
(0101010,0000000,0111101)作为第二动画图形文件的像素的二进制文件;
(0000100,0110010,0011101)作为第三动画图形文件的像素的二进制文件;和
(1011010,1100011,0100001)作为掩模图形文件的像素的二进制文件。
数字位流部件222可以包括二进制乘法器和二进制加法器。数字位流部件222可以使用二进制乘法器将第一动画图形文件的第一值与掩模图形文件的第一值相乘;将第二动画图形文件的第一值与掩模图形文件的第二值相乘;以及将第三动画图形文件的第一值与掩模图形文件的第三值相乘。这些乘法生成多个乘积(这里是三个乘积)。数字位流部件222可以使用二进制加法器将这些乘积求和为单个值,该单个值是LED的第一管芯的控制参数(例如,LED的红色管芯的控制参数)。数字位流部件222可以使用二进制乘法器来执行关于三个动画图形文件的第二值与掩模图形文件的值的新乘法,并且使用二进制加法器来将这些乘积求和为单个值,该单个值是用于LED的第二管芯的控制参数(例如,用于LED的绿色管芯的控制参数)。数字位流部件222可以使用二进制乘法器来执行关于三个动画图形文件的第三值与掩模图形文件的值的新乘法,并且使用二进制加法器来将这些乘积求和为单个值,该单个值是用于LED的第三管芯的控制参数(例如,用于LED的蓝色管芯的控制参数)。
系统200示出了包括非易失性存储器(例如,非易失性存储器202)的装置的示例,该非易失性存储器存储对应于相应动画图形文件(例如,动画图形文件218)的第一二进制序列(例如,二进制文件216),以及对应于掩模图形文件(例如,掩模图形文件220之一)的第二二进制序列(例如,二进制文件216);电气部件(例如,LED 208-1、208-2、…208-N)的阵列(例如,阵列206);以及硬件(例如,硬件系统204),其根据第二二进制序列将第一二进制序列的部分彼此组合(例如,通过数字位流部件222),以生成用于电气部件阵列的数字位流。
系统200的使用示出了方法的执行示例,该方法包括:访问对应于动画图形文件(例如,动画图形文件218)的第一二进制序列(例如,二进制文件216),以及对应于掩模图形文件(例如,掩模图形文件220之一)的第二二进制序列(例如,二进制文件216);根据第二二进制序列将第一二进制序列的部分彼此组合以生成数字位流;以及将数字位流传输(例如,通过数字位流部件222)到电气部件(例如,LED 208-1、208-2、…208-N)的阵列(例如,阵列206)。
图3示意性地示出了电气部件300的示例。电气部件300可以与本文其他地方描述的一个或更多个其他示例一起使用。电气部件300中的一些可以被实现为图2中的LED 208-1、208-2、…208-N的一部分,可以替代LED 208-1、208-2、…208-N被实现、或是除了LED208-1、208-2、…208-N之外实现电气部件300中的一些。也就是说,图2中的阵列206可以替代地或附加地包括电气部件300中的一些或全部。
电气部件302对应于LED。在一些实现方式中,LED包括一个或更多个管芯,该一个或更多个管芯被配置为在接收电力时生成光。例如,每个管芯可以包括至少一个p-n结,其中通过电子和电子空穴彼此的复合来产生光。在一些实现方式中,LED包括不同颜色的多个管芯。例如,LED可以包括相应的红色、绿色和蓝色管芯。每个LED可以具有用于接收电力以控制其操作的多个控制引脚。电气部件302的阵列可以被布置成输出多色光的复杂图案,该图案可以经历图案变化而没有LED的不连续或变暗。
电气部件304对应于电动机。在一些实现方式中,电动机(例如,通过旋转机械轴(shaft)或(例如,在泵、风扇、电梯或车辆上))的其他轴(axis)将供应的电能转换成机械运动。例如,电动机可以包括由定子控制操作的转子。电气部件304的阵列可被布置成执行复杂运动模式并经历(例如,在相应的稳定状态和过渡状态之间)模式改变。
电气部件306对应于电加热器。在一些实现方式中,电加热器可以执行一个或更多个物理位置的热控制。例如,加热模式可以支持在制造厂的加工、存储设施所在的日间热区或住宅区的基于使用的加热模式。
电气部件308对应于电致动器。在一些实现方式中,一个或更多个电致动器使用电磁力来致动一个或更多个物理对象(例如,杠杆、泵或工具)以执行复杂的机械操作模式。
图4示意性地示出了电气部件阵列400的示例。阵列400可以与本文其他地方描述的一个或更多个其他示例一起使用。阵列400可以被组织成多个子阵列。这里,示出了子阵列402-1、402-2、…、402-N,其中N是大于或等于2的整数。子阵列402-1、402-2、…、402-N中的每一个可以包括一个或更多个电气部件。这里,子阵列402-1中示出了电气部件404-1、404-2、…、404-M,其中M是大于或等于2的整数。这里,子阵列402-2中示出了电气部件406-1、406-2、…、406-P,其中P是大于或等于2的整数。这里,子阵列402-N中示出了电气部件408-1、408-2、…、408-Q,其中Q是大于或等于2的整数。这样,N个子阵列402-1、402-2、…、402-N中的每一个可以具有与另一个子阵列相同或不同数量的电气部件。根据图3中的一种或更多种类型的电气部件的多个电气部件可以根据阵列400排列。
图5示出了LED的阵列500的示例。阵列500可以与本文其他地方描述的一个或更多个其他示例一起使用。阵列500包括LED带502,该LED带502包括其上安装有一系列LED 504的电路板。阵列500包括LED带506,该LED带506包括其上安装有一系列LED 508的电路板。LED带502和506可以彼此相同或彼此不同(例如,具有不同数量和/或排列的LED)。在一些实现方式中,LED带502和506可以被安装在光导或漫射体的不同侧(例如,在其相对端处),以便当根据图形文件定义的一个或更多个图案被激活时,在光导或漫射体上生成视觉图案。光导和/或漫射体可以具有任何形状,包括如所示的U形。可以使用其他形状。在一些实现方式中,LED带502可以被认为是上LED带,并且在这样的实现方式中LED带506可以被认为是下LED带。
图6示意性地示出了用于LED的驱动器的菊链600的示例。菊链600可以与本文其他地方描述的一个或更多个其他示例一起使用。菊链600可以包括多个驱动器。这里,示出了驱动器602-1、602-2、…、602-N,其中N是大于或等于2的整数。驱动器602-1、602-2、…、602-N中的每一个可以与一个或更多个LED相关联。这里,LED 604-1、604-2、…、604-M由驱动器602-1驱动,其中M是大于或等于2的整数。这里,LED 606-1、606-2、…、606-P由驱动器602-2驱动,其中P是大于或等于2的整数。这里,LED 608-1、608-2、…、608-Q由驱动器602-N驱动,其中Q是大于或等于2的整数。这样,N个驱动器602-1、602-2、…、602-N中的每一个可以具有与另外的驱动器相同或不同数量的LED。根据图3中的一种或更多种类型的电气部件的多个电气部件可以根据菊链600排列。作为另一示例,数字位流部件222(图2)可以将数字位流传输到驱动器602-1、602-2、…、602-N,每个驱动器可以生成相应的数字脉冲,以使菊链600的LED呈现复杂图案和/或图案变化。
在一些实现方式中,标准图形文件(包括但不限于PNG和/或FITS文件)可用于表示电气部件(例如,LED)的阵列和这些电气部件的操作模式(例如,由LED呈现的动画模式)。这种或其他标准图形文件格式的使用可以允许标准图形软件(例如,图1中的图形软件102)用于生成二进制文件,以控制电气部件的复杂的和动态改变的操作模式。
图7示出了动画图形文件700的示例。图7的着色对于区分由三种不同的红色、绿色和蓝色值及它们的组合实现的不同颜色表示的值的梯度是重要的。动画图形文件700可以与本文其他地方描述的一个或更多个其他示例一起使用。动画图形文件700包括以行和列的集合排列的像素(例如,多色值集合)。动画图形文件700包括第一行702和最后一行704。处理行的顺序可以更改,因此术语“第一”和“最后”仅用于说明目的。示意性地示出为箭头的维度706在这里平行于动画图形文件700的行延伸。在一些实现方式中,部件维度706中的每个像素对应于对应的单个电气部件。例如,第一行702中的每个像素可以与阵列中的相应LED相关联,等等。示意性地如箭头所示的时间维度708在这里平行于动画图形文件700的列延伸。时间维度708可以与由动画图形文件和掩模图形文件定义的图案序列的时间流相关联。这样,动画图形文件700中的一系列行可以与由动画图形文件和掩模图形文件定义的图案序列的时间流相关联。也就是说,动画图形文件700的一列中的每个像素可以与沿时间维度708在时间上排列的电气部件阵列中的相应电气部件相关联,并且每行可以(与掩模图形文件和一个或更多个其他动画图形文件相结合)与图案序列中的帧相关联。
动画图形文件700中可以包括关于电气部件的两个或更多个子阵列的图案。在一些实现方式中,区域710(例如,列的最左边的一半)可以与电气部件的第一子阵列相关联,并且区域712(例如,列的最右边的一半)可以与电气部件的第二子阵列相关联。电气部件的第一子阵列可以对应于第一组LED(例如,图5中LED带502中的LED 504)。电气部件的第二子阵列可以对应于第二组LED(例如,图5中LED带506中的LED 508)。通过相应地设置动画图形文件700的值,可以生成任何类型的图案。例如,在当前示例中,LED将在LED阵列的整个跨度(例如,宽度)上呈现蓝色、紫色和橙色的摇摆(wavering)图案。
图8示出了包括动画图形文件802和804以及掩模图形文件806的图形文件800的示例。图8针对动画图形文件802和掩模图形文件806的着色对于区分由三种不同的红色、绿色和蓝色值及它们的组合实现的不同颜色表示的值的梯度是重要的。动画图形文件802和804和/或掩模图形文件806可以与本文其他地方描述的一个或更多个其他示例一起使用。一组图形文件可用于使硬件呈现复杂的动画图案,也可用于或者替代地用于实现动态效果,如运动、画中画、增亮、淡化、混合和图案转换。
动画图形文件802和804将使用掩模图形文件806进行缩放和组合,这里称为逐像素计算。例如,分析程序120(图1)可以执行逐像素计算。在逐像素计算中,图形文件800中的每一个可以独立于其他文件循环通过。在一些实现方式中,每个图形文件800的行中的像素对应于单个电气部件,并且图形文件800的相应行对应于图案的执行期间的时间流逝。硬件可以在逐像素计算中不断循环通过所有图形文件800(例如,以恒定速率)。图形文件800中的一个或更多个可以具有与另一个图形文件不同的时间长度。这样,当到达图形文件的末尾时,对图形文件800中的一个的处理可以重新开始(例如,开始另一个循环)。例如,逐像素计算中的处理可以从动画图形文件802的第一行808开始、从动画图形文件804的第一行810开始以及从掩模图形文件806的第一行812开始。每个逐像素计算可以包括将来自动画图形文件802和804的像素值与来自掩模图形文件806的值进行缩放(例如,相乘),并对缩放后的像素值求和。可以对图形文件800的相应行中的每个像素按顺序执行逐像素计算。在一行的逐像素计算完成之后,处理可以继续进行图形文件800中每一个的下一行。当在逐像素计算中到达动画图形文件804的最后一行814时,处理可以循环到动画图形文件804的第一行810,并继续动画图形文件802和掩模图形文件806的后续行。当在逐像素计算中到达动画图形文件802的最后一行816时,处理可以循环到动画图形文件802的第一行808,并继续动画图形文件804和掩模图形文件806的后续行。当到达掩模图形文件806的最后一行818时,处理可以循环到掩模图形文件806的第一行812,并继续动画图形文件802和804的后续行。这样,逐像素计算可以在处理的多次迭代中被执行。一个或更多个图形文件800(例如掩模图形文件806)可以将其与关于处理方向的标志相关联。例如,利用标志的一个设置,例如位值为0,可以在从第一行812到最后一行818的方向上处理掩模图形文件806。作为另一示例,利用标志的另一个设置,例如位值为1,可以在从最后一行818到第一行812的方向上处理掩模图形文件806。因此,本文使用的术语“第一”和“最后”仅用于说明目的,且不一定表示处理方向。也就是说,生成二进制序列(例如,以二进制文件的形式)可以包括读取指示处理方向的标志。
逐像素计算可以由分析程序120对动画图形文件116和掩模图形文件118(图1)执行,以评估操作控制参数是否会导致电气部件超过预定的电阈值。在一些实现方式中,图形文件800中的每个像素包含三个值,对于红色、绿色和蓝色各一个值。此外,LED可以包括三种颜色的管芯,对于红、绿、蓝各一个管芯。动画图形文件802和804中的每一个中的三个值可以控制被提供来驱动相对应的LED中的三个彩色管芯的电流量。掩模图形文件806中任何给定像素的三个值可用于在将动画图形文件802和804的相对应像素相加在一起以导出发送到LED彩色管芯的最终值之前缩放它们。
在使用三个动画图形文件的示例中,三个动画像素可以按一个掩模像素的定义进行缩放和组合。假设分别使用下标a、b和c来将来自相应动画图形文件的动画像素进行彼此区分。另一方面,掩模像素使用下标m。此外,每个像素的红色、绿色和蓝色值分别使用大写字母R、G和B来表示。以下关系式说明了可以执行的逐像素计算,以计算由下标f表示的最终图形值:
也即,掩模图形文件的阵列(例如,3×1阵列)可以乘以动画图形文件的阵列(例如,3×3阵列),以得到最终像素值的阵列(例如,3×1阵列)。这里,X是可用于将最终值保持在可允许范围内的归一化因子。也就是说,掩模像素中的绿色值用于缩放动画图形文件a中的整个像素;掩模像素中的红色值用于缩放动画图形文件b中的整个像素;以及,掩模像素中的蓝色值用于缩放动画图形文件c中的整个像素。
更一般地说,可以使用对应的掩模图形文件来组合每像素具有多个值的两个或更多个动画图形文件。以下示例涉及P个动画图形文件和一个掩模图形文件,其中每个像素都有P个颜色值,其中P是大于或等于2的正整数。此外,每个像素包括N个颜色值,其中N是大于或等于2的正整数。因此,A
回到涉及图形文件800的示例,动画图形文件802在这里是摇摆的蓝色和紫色的动画循环,动画图形文件804在这里是摇摆的白色阴影和黑色阴影的动画循环,并且掩模图形文件806是定义动画图形文件802和804的混合的掩模文件。这里,在掩模图形文件806的顶部20%部分的亮红色表示来自动画图形文件804的像素正以相对高的比例因子呈现在LED阵列上。也就是说,控制对应的LED的最终输出电流或控制参数值是来自动画图形文件802的缩放像素值与来自动画图形文件804的缩放像素值的和。掩模图形文件806的中间20%到80%部分在这里表示发生了三种效果。首先,红色逐渐变暗(例如,由于掩模图形文件806的像素中红色值的值逐渐减小),导致动画图形文件804的像素的亮度在该时间段内逐渐减小。第二,在掩模图形文件中引入了绿色像素的形状,这表明从两个LED带(例如,图5中的LED带502和506)的后角处的LED开始,呈现来自动画图形文件802的像素带,并且随着时间推移移动到两个LED带的中心。第三,掩模图形文件806中的绿色像素的强度逐渐增加,导致来自动画图形文件802的像素的亮度在该时间段内逐渐增加。最后,对于掩模图形文件806的底部20%,相对暗的红色和亮的绿色导致来自动画图形文件804的暗像素呈现在LED带的大多数LED上,其中来自动画图形文件802的亮像素带呈现在LED带中间的LED上。
在完成(work through)掩模图形文件806的整个时段期间,动画图形文件802和804连续循环,使得来自动画图形文件802和804中每一个的摇摆的颜色图案被应用到LED带中的LED,尽管亮度和位置由掩模图形文件806决定。
如果第三动画图形文件已经与图形文件800一起使用,其对颜色、亮度和位置的贡献可以由掩模图形文件806中的蓝色来确定。也就是说,如果一个或更多个动画图形文件没有被使用,则掩模图形文件806中的相对应的颜色值可以被设置为零。
在一些实现方式中,图形文件800之间的所有可能的行组合可以由分析程序120对动画图形文件116和掩模图形文件118(图1)以逐像素计算来处理,以评估操作控制参数是否会导致电气部件超过预定的电阈值。例如,处理可以从基于第一行808、第一行810和第一行812的逐像素计算开始,并且处理可以在不同行组合的迭代中继续,其中循环发生在文件的末尾。当处理再次到达第一行808、第一行810和第一行812的行组合时,处理可以终止,因为已经计算了该组合。这样,执行逐像素计算可以包括对来自动画图形文件802和804以及掩模图形文件806的所有可能的行组合执行逐像素计算。
图9-11分别示出了方法900、方法1000和方法1100的示例。方法900、方法1000和方法1100中的一个或更多个可以与本文其他地方描述的其他示例一起使用。除非另有说明,方法的一个或更多个操作可以以不同顺序执行,和/或可以执行更多或更少的操作。
从方法900开始,在902处,可以访问动画图形文件和掩模图形文件。例如,图形文件可以使用系统100生成,并且可以由转换程序124(图1)访问。
在904处,可以生成对应于相应动画图形文件的第一二进制序列和对应于掩模图形文件的第二二进制序列。在一些实现方式中,转换程序124(图1)可以将动画图形文件和掩模图形文件的像素值的十进制数转换成二进制数。例如,转换程序124(图1)可以生成输出126。
在906处,第一二进制序列和第二二进制序列可以被输出到控制电气部件阵列的硬件。例如,二进制序列可以由系统100(图1)以二进制文件的形式保存,并且转换程序124可以将二进制文件输出到控制阵列206的系统200(图2)。
现在转到方法1000,在1002处,可以访问动画图形文件、掩模图形文件和表示关于电气部件阵列的电阈值的值。例如,图形文件可以使用系统100生成,并且可以由分析程序120(图1)访问。
在1004处,可以对来自动画图形文件和掩模图形文件的行组合执行逐像素计算。逐像素计算可以包括如由来自掩模图形文件的对应像素值所定义的对来自动画图形文件的缩放像素值的组合。
再次参考图8,动画图形文件802和804可以在1004处以逐像素计算使用掩模图形文件806来缩放和组合。例如,分析程序120(图1)可以执行逐像素计算。在逐像素计算中,图形文件800中的每一个图形文件可以独立于其他文件循环通过。在一些实现方式中,每个图形文件800的行中的像素对应于单个电气部件,并且图形文件800的相应行对应于图案执行期间的时间流逝。硬件可以在逐像素计算中不断循环通过所有图形文件800(例如,以恒定速率)。一个或更多个图形文件800可以具有与另一个图形文件不同的时间长度。这样,当到达图形文件的末尾时,对图形文件800中的一个图形文件的处理可以重新开始(例如,开始另一个循环)。例如,逐像素计算中的处理可以从动画图形文件802的第一行808开始、从动画图形文件804的第一行810开始以及从掩模图形文件806的第一行812开始。每个逐像素计算可以包括将来自动画图形文件802和804的像素值与来自掩模图形文件806的值进行缩放(例如,相乘),并对缩放后的像素值求和。可以对图形文件800的相应行中的每个像素按顺序执行逐像素计算。在对一行的逐像素计算完成之后,处理可以继续进行图形文件800中每一个图形文件的下一行。当在逐像素计算中到达动画图形文件804的最后一行814时,处理可以循环到动画图形文件804的第一行810,并继续动画图形文件802和掩模图形文件806的后续行。当在逐像素计算中到达动画图形文件802的最后一行816时,处理可以循环到动画图形文件802的第一行808,并继续动画图形文件804和掩模图形文件806的后续行。当到达掩模图形文件806的最后一行818时,处理可以循环到掩模图形文件806的第一行812,并继续动画图形文件802和804的后续行。这样,逐像素计算可以在处理的多次迭代中执行。
在1006处,可以生成反映逐像素计算的结果是否符合(例如,不超过)电气部件阵列的电阈值的输出。例如,分析程序120可以生成输出122(例如,图形文件的修改和/或描述电气部件阵列的计算的电气值)。在一些实现方式中,在1006处生成的输出可以包括用户可感知的一个或更多个显现。例如,显示设备1338(图13)可以呈现输送评估的图形文件是否会超过预定的电阈值的消息,该预定的电阈值包括但不限于电流限制。
现在转到方法1100,在1102处,可以访问对应于动画图形文件的第一二进制序列和对应于掩模图形文件的第二二进制序列。例如,系统200可以访问转换程序124通过将动画图形文件116和掩模图形文件118(图1)从一个数字形式(例如,十六进制)转换成二进制形式而生成的二进制文件216(图2)。
在1104处,根据第二二进制序列将第一二进制序列的部分彼此组合,以生成数字位流。例如,数字位流部件222(图2)可以通过执行二进制数的二进制乘法且通过执行二进制乘积的二进制加法来组合对应于参考图形文件800(图8)描述的示例的二进制文件。由数字位流部件222(图2)执行的组合可以生成作为逻辑电平信号的数字位流。
在1106处,可以传输数字位流来控制电气部件阵列。在一些实现方式中,硬件系统204(图2)可以在一个或更多个电导体上传输数字位流,以控制参考图4描述的任何电气部件。例如,数字位流可以被传输到用于一个或更多个电气部件的驱动器。
图12是可用于生物和/或化学分析的示例系统1200的示意图。在一些实现方式中,本文描述的系统和/或技术可以是系统1200的一部分。系统1200可以操作来获得与至少一种生物和/或化学物质相关的任何信息或数据。在一些实现方式中,载体1202供应待分析的物质。例如,载体1202可以包括保持物质的盒(cartridge)或任何其他部件。在一些实现方式中,系统1200具有容器1204以至少在分析期间接收载体1202。容器1204可以在系统1200的外壳1206中形成开口。例如,系统1200的一些或所有部件可以处于外壳1206内。
系统1200可以包括用于对载体1202的物质进行生物和/或化学分析的光学系统1208。光学系统1208可以执行一个或更多个光学操作,包括但不限于对物质的照明和/或成像。例如,光学系统1208可以包括本文其他地方描述的任何或所有系统。作为另一示例,光学系统1208可以执行本文其他地方描述的任何或所有操作。
系统1200可以包括用于提供与生物和/或化学分析相关的热处理的热系统1210。在一些实现方式中,热系统1210热调节待分析的物质和/或载体1202的至少一部分。
系统1200可以包括用于管理与生物和/或化学分析相关的一种或更多种流体的流体系统1212。在一些实现方式中,可以为载体1202或其物质提供流体。例如,流体可以被添加到载体1202的物质中和/或从载体1202的物质中移除。
系统1200包括便于与生物和/或化学分析相关的输入和/或输出的用户接口1214。仅举几个示例,用户接口可用于为系统1200的操作指定一个或更多个参数和/或用于输出生物和/或化学分析的结果。例如,用户接口1214可以包括一个或更多个显示屏(例如,触摸屏)、键盘和/或点击设备(例如,鼠标或触控板)。
系统1200可以包括系统控制器1216,系统控制器1216可以控制系统1200用于执行生物和/或化学分析的一个或更多个方面。系统控制器1216可以控制容器1204、光学系统1208、热系统1210、流体系统1212和/或用户接口1214。系统控制器1216可以包括至少一个处理器和具有用于处理器的可执行指令的至少一个存储介质(例如,存储器)。
图13示出了可用于实现本公开的各方面的计算设备1300的示例架构,包括本文描述的任何系统、装置和/或技术、或者可以在各种可能的实施例中可使用的任何其他系统、装置和/或技术。
图13所示的计算设备可以用于执行本文描述的操作系统、应用程序和/或软件模块(包括软件引擎)。
在一些实施例中,计算设备1300包括至少一个处理设备1302(例如,处理器),诸如中央处理单元(CPU)。许多制造商提供多种处理设备,例如Intel或Advanced MicroDevices。在该示例中,计算设备1300还包括系统存储器1304和将包括系统存储器1304的各种系统部件耦合到处理设备1302的系统总线1306。系统总线1306是可被使用的许多类型的总线结构之一,其包括但不限于存储器总线或存储器控制器、外围总线和使用各种总线架构中任一种总线架构的本地总线。
可以使用计算设备1300实现的计算设备的示例包括台式计算机、膝上型计算机、平板计算机、移动计算设备(诸如智能电话、触摸板移动数字设备或其他移动设备)、或者被配置为处理数字指令的其他设备。
系统存储器1304包括只读存储器1308和随机存取存储器1310。在只读存储器1308中可以存储基本输入/输出系统1312,该基本输入/输出系统1312包含诸如在启动期间用于在计算设备1300内转移信息的基本例程。
在一些实施例中,计算设备1300还包括用于存储数字数据的辅助存储设备1314,例如硬盘驱动器。辅助存储设备1314通过辅助存储接口1316连接到系统总线1306。辅助存储设备1314及其相关联的计算机可读介质为计算设备1300提供计算机可读指令(包括应用程序和程序模块)、数据结构和其他数据的非易失性和非暂时性存储。
尽管本文描述的示例环境采用硬盘驱动器作为辅助存储设备,但是在其他实施例中使用其他类型的计算机可读存储介质。这些其他类型的计算机可读存储介质的示例包括盒式磁带、闪存卡、数字视频盘、伯努利盒式磁带、光盘只读存储器、数字多功能盘只读存储器、随机存取存储器或只读存储器。一些实施例包括非暂时性介质。例如,计算机程序产品可以有形地体现在非暂时性存储介质中。另外,这种计算机可读存储介质可以包括本地存储或基于云的存储。
在辅助存储设备1314和/或系统存储器1304中可以存储多个程序模块,包括操作系统1318、一个或更多个应用程序1320、其他程序模块1322(诸如本文描述的软件引擎)和程序数据1324。计算设备1300可以利用任何合适的操作系统,例如Microsoft Windows
在一些实施例中,用户通过一个或更多个输入设备1326向计算设备1300提供输入。输入设备1326的示例包括键盘1328、鼠标1330、麦克风1332(例如,用于语音和/或其他音频输入)、触摸传感器1334(诸如触摸板或触敏显示器)和手势传感器1335(例如,用于手势输入)。在一些实现方式中,输入设备1326基于存在、接近度和/或运动来提供检测。在一些实现方式中,用户可以走进他们的家,并且这可以触发对处理设备的输入。例如,输入设备1326然后可以促进用户的自动化体验。其他实施例包括其他输入设备1326。输入设备可以通过耦合到系统总线1306的输入/输出接口1336连接到处理设备1302。这些输入设备1326可以通过任意数量的输入/输出接口连接,例如并行端口、串行端口、游戏端口或通用串行总线。输入设备1326和输入/输出接口1336之间的无线通信也是可能的,并且,仅举几个例子,在一些可能的实施例中包括红外、蓝牙无线技术、802.11a/b/g/n、蜂窝、超宽带(UWB)、ZigBee或其他射频通信系统。
在该示例实施例中,诸如监视器、液晶显示设备、投影仪或触敏显示设备的显示设备1338也经由诸如视频适配器1340的接口连接到系统总线1306。除了显示设备1338之外,计算设备1300可以包括各种其他外围设备(未示出),诸如扬声器或打印机。
计算设备1300可以通过网络接口1342连接到一个或更多个网络。网络接口1342可以提供有线和/或无线通信。在一些实现方式中,网络接口1342可以包括用于发送和/或接收无线信号的一个或更多个天线。当用于局域网环境或广域网环境(例如因特网)时,网络接口1342可以包括以太网接口。其他可能的实施例使用其他通信设备。例如,计算设备1300的一些实施例包括用于通过网络通信的调制解调器。
计算设备1300可以包括至少某种形式的计算机可读介质。计算机可读介质包括可由计算设备1300访问的任何可用介质。通过示例,计算机可读介质包括计算机可读存储介质和计算机可读通信介质。
计算机可读存储介质包括在任何设备中实现的易失性和非易失性、可移除和不可移除的介质,该介质被配置成存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息。计算机存储介质包括但不限于随机存取存储器、只读存储器、电可擦除可编程只读存储器、闪存或其它存储器技术、光盘只读存储器、数字多用途光盘或其它光学存储装置、盒式磁带、磁带、磁盘存储装置或其它磁性存储设备、或可以用于存储期望信息并可以由计算设备1300访问的任何其它介质。
计算机可读通信介质通常包含计算机可读指令、数据结构、程序模块或诸如载波或其它传输机制的调制数据信号中的其它数据并包括任何信息传递介质。术语“调制数据信号”是指一种信号,其一个或更多个特征以在信号中编码信息的方式被设置或改变。举例来说,计算机可读通信介质包括有线介质(诸如有线网络或直接有线连接)以及无线介质(诸如声学、射频、红外和其他无线介质)。上面任一个的组合也被包括在计算机可读介质的范围内。
图13所示的计算设备也是可编程电子设备的示例,其可以包括一个或更多个这样的计算设备,并且当包括多个计算设备时,这样的计算设备可以与合适的数据通信网络耦合在一起,以便共同执行本文公开的各种功能、方法或操作。
以下示例说明了本主题的一些方面。
示例1:一种方法,包括:
访问动画图形文件和掩模图形文件;
生成对应于所述动画图形文件的第一二进制序列,并生成对应于所述掩模图形文件的第二二进制序列;和
将所述第一二进制序列和所述第二二进制序列输出到控制电气部件阵列的硬件。
示例2:根据示例1所述的方法,其中,输出所述第一二进制序列和所述第二二进制序列包括传输二进制文件,所述二进制文件包括所述第一二进制序列和所述第二二进制序列。
示例3:根据示例1至2中任一项所述的方法,其中,所述动画图形文件和所述掩模图形文件具有通用图形文件类型。
示例4:根据示例3所述的方法,其中,所述通用图形文件类型支持无损数据压缩。
示例5:根据示例1至4中任一项所述的方法,其中,所述动画图形文件或所述掩模图形文件中的至少一者具有每种颜色八个位。
示例6:根据示例1至4中任一项所述的方法,其中,所述动画图形文件或所述掩模图形文件中的至少一者具有每种颜色16个位。
示例7:根据示例1至6中任一项所述的方法,其中,所述动画图形文件或所述掩模图形文件中的至少一者具有三个平面。
示例8:根据示例1至6中任一项所述的方法,其中,所述动画图形文件或所述掩模图形文件中的至少一者具有四个平面。
示例9:根据示例3至8中任一项所述的方法,还包括读取第一标志以将所述动画图形文件与所述掩模图形文件进行区分。
示例10:根据示例1至9中任一项所述的方法,其中,生成所述第一二进制序列或生成所述第二二进制序列中的至少一者包括读取指示处理方向的第二标志。
示例11:根据示例1至10中任一项所述的方法,还包括使用所述第一二进制序列和所述第二二进制序列来操作所述电气部件阵列。
示例12:一种计算机程序产品,其被存储在非暂时性介质中并且包括当由处理器执行时使所述处理器执行操作的指令,所述操作包括:
访问动画图形文件和掩模图形文件;
生成对应于所述动画图形文件的第一二进制序列,并生成对应于所述掩模图形文件的第二二进制序列;和
将所述第一二进制序列和所述第二二进制序列输出到控制电气部件阵列的硬件。
示例13:一种方法,包括:
访问第一动画图形文件、第二动画图形文件、掩模图形文件和关于电气部件阵列的预定电阈值;
对来自所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件的行的组合执行逐像素计算,所述逐像素计算中的每一个逐像素计算包括:通过将来自所述第一动画图形文件的第一动画像素值与来自所述掩模图形文件的第一掩模像素值相乘来确定第一缩放像素值,通过将来自所述第二动画图形文件的第二动画像素值与来自所述掩模图形文件的第二掩模像素值相乘来确定第二缩放像素值,并且确定所述第一缩放像素值和所述第二缩放像素值的和;以及
生成反映所述逐像素计算的结果是否超过关于所述电气部件阵列的所述预定电阈值的输出。
示例14:根据示例13所述的方法,其中,执行所述逐像素计算包括对来自所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件的所有可能的行的组合执行所述逐像素计算。
示例15:根据示例13至14中任一项所述的方法,其中,所述输出指示所述逐像素计算的结果超过关于所述电气部件阵列的所述预定电阈值,并且其中,所述方法还包括调整所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一个。
示例16:根据示例15所述的方法,其中,所述电气部件阵列包括发光二极管(LED),其中,所述预定电阈值包括电流上限,并且其中,调整所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者包括降低亮度值。
示例17:根据示例13至16中任一项所述的方法,其中,所述输出指示所述逐像素计算的结果不超过关于所述电气部件阵列的所述预定电阈值,并且其中,所述输出还包括描述所述电气部件阵列的计算的电气值。
示例18:根据示例17所述的方法,其中,所述计算的电气值包括用于所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件的所有行组合的平均总电流。
示例19:根据示例17至18中任一项所述的方法,其中,所述计算的电气值包括在所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件的所有行组合当中的最高总电流。
示例20:根据示例13至19中任一项所述的方法,其中,所述电气部件阵列包括发光二极管(LED)。
示例21:根据示例20所述的方法,其中,所述逐像素计算的结果包括基于作为像素存储在所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件中的数据来计算关于所述LED中的每个LED颜色的估计电流。
示例22:根据示例21所述的方法,其中,关于所述LED中的每个LED颜色的估计电流是平均电流或最大电流中的至少一个。
示例23:根据示例20至22中任一项所述的方法,其中,所述逐像素计算的结果包括关于所述LED中的每个LED的估计电流。
示例24:根据示例23所述的方法,其中,关于所述LED的每个LED的估计电流是平均电流或最大电流中的至少一个。
示例25:根据示例13至24中任一项所述的方法,其中,所述第一动画图形文件和所述第二动画图形文件中的每一行与由所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件定义的图案序列中的帧相关联,并且其中,所述行中的每个像素与所述电气部件阵列中的相应电气部件相关联。
示例26:根据示例25所述的方法,其中,执行所述逐像素计算包括处理所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件中的每一者的第一行,并且随后通过多次迭代处理所述第一动画图形文件和所述第二动画图形文件以及所述掩模图形文件中的每一者的下一行。
示例27:根据示例26所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者具有与所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的另一者不同的时间长度,所述方法还包括在到达所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者的末尾之后,开始所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者的另一个循环。
示例28:根据示例13至27中任一项所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件中的每一者中的一系列行与由所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件定义的图案序列的时间流相关联。
示例29:根据示例13至28中任一项所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件和所述掩模图形文件具有通用图形文件类型。
示例30:根据示例29所述的方法,其中,所述通用图形文件类型支持无损数据压缩。
示例31:根据示例13至30中任一项所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者具有每种颜色八个位。
示例32:根据示例13至30中任一项所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者具有每种颜色16个位。
示例33:根据示例13至32中任一项所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者具有三个平面。
示例34:根据示例13至32中任一项所述的方法,其中,所述第一动画图形文件、所述第二动画图形文件或所述掩模图形文件中的至少一者具有四个平面。
示例35:根据示例13至34中任一项所述的方法,其中,生成所述输出包括在显示设备上呈现消息。
示例36:根据示例13至35中任一项所述的方法,还包括基于所述第一动画图形文件和所述第二动画图形文件来操作所述电气部件阵列。
示例37:一种计算机程序产品,其被存储在非暂时性介质中并且包括当由处理器执行时使所述处理器执行操作的指令,所述操作包括:
访问第一动画图形文件、第二动画图形文件、掩模图形文件和关于电气部件阵列的预定电阈值;
对来自所述第一动画图形文件、所述第二动画图形文件以及所述掩模图形文件的行组合执行逐像素计算,所述逐像素计算中的每一个逐像素计算包括:通过将来自所述第一动画图形文件的第一动画像素值与来自所述掩模图形文件的第一掩模像素值相乘来确定第一缩放像素值,通过将来自所述第二动画图形文件的第二动画像素值与来自所述掩模图形文件的第二掩模像素值相乘来确定第二缩放像素值,并且确定所述第一缩放像素值和所述第二缩放像素值的和;以及
生成反映所述逐像素计算的结果是否超过关于所述电气部件阵列的所述预定电阈值的输出。
示例38:一种方法,包括:
访问对应于动画图形文件的第一二进制序列和对应于掩模图形文件的第二二进制序列;
根据所述第二二进制序列将所述第一二进制序列的部分彼此组合,以生成数字位流;和
传输所述数字位流来控制电气部件阵列。
示例39:根据示例38所述的方法,其中,所述动画图形文件中的每一行与由所述动画图形文件和所述掩模图形文件定义的图案序列中的一帧相关联,并且其中,所述行中的每一像素与所述电气部件阵列中的相应电气部件相关联。
示例40:根据示例38至39中任一项所述的方法,其中,将所述第一二进制序列的部分彼此组合包括处理所述动画图形文件和所述掩模图形文件中每一者的第一行,并且随后通过多次迭代处理所述动画图形文件和所述掩模图形文件中每一者的下一行。
示例41:根据示例40所述的方法,其中,所述动画图形文件或所述掩模图形文件中的至少一者具有与所述动画图形文件或所述掩模图形文件中的另一者不同的时间长度,所述方法还包括在到达所述动画图形文件或所述掩模图形文件中的至少一者的末尾之后,开始所述动画图形文件或所述掩模图形文件中的至少一者的另一个循环。
示例42:根据示例38至41中任一项所述的方法,其中,所述动画图形文件或所述掩模图形文件中每一者中的一系列行与由所述动画图形文件和所述掩模图形文件定义的图案序列的时间流相关联。
示例43:根据示例38至42中任一项所述的方法,还包括访问对应于相应掩模图形文件的多个第二二进制序列,以及访问指定组合的配置文件,每个组合包括所述动画图形文件中的至少两个动画图形文件和所述掩模图形文件中的一个掩模图形文件。
示例44:根据示例43所述的方法,其中,组合中的每一个对应于稳定状态或过渡状态。
示例45:根据示例44所述的方法,还包括调节从第一稳定状态到第二稳定状态的变化,其中,所述配置文件指定介于所述第一稳定状态和所述第二稳定状态之间的过渡状态。
示例46:根据示例38至45中任一项所述的方法,其中,所述电气部件阵列包括发光二极管(LED)。
示例47:根据示例46所述的方法,其中,传输所述数字位流以控制所述电气部件阵列包括将所述数字位流传输到用于所述LED中的相应LED的驱动器。
示例48:根据示例47所述的方法,其中,将所述数字位流传输到用于所述LED中的相应LED的驱动器包括通过驱动器的菊链传输所述数字位流。
示例49:根据示例38至48中任一项所述的方法,还包括使用所述动画图形文件生成所述第一二进制序列,以及使用所述掩模图形文件生成所述第二二进制序列。
示例50:一种装置,包括:
非易失性存储器,所述非易失性存储器存储对应于相应动画图形文件的第一二进制序列、以及对应于掩模图形文件的第二二进制序列;
电气部件阵列;和
硬件,所述硬件根据所述第二二进制序列将所述第一二进制序列的部分彼此组合,以生成关于所述电气部件阵列的数字位流。
示例51:根据示例50所述的装置,其中,所述电气部件阵列包括发光二极管(LED)。
示例52:根据示例51所述的装置,其中,生成关于所述电气部件阵列的所述数字位流包括将所述数字位流传输到用于所述LED中的相应LED的驱动器。
示例53:根据示例52所述的装置,其中,将所述数字位流传输到用于所述LED中的相应LED的驱动器包括通过驱动器的菊链传输所述数字位流。
示例54:根据示例50所述的装置,其中,所述电气部件阵列包括电动机。
示例55:根据示例50所述的装置,其中,所述电气部件阵列包括电加热器。
示例56:根据示例50所述的装置,其中,所述电气部件阵列包括电致动器。
示例57:根据示例50至56中任一项所述的装置,其中,所述硬件包括:
二进制乘法器,所述二进制乘法器对所述第一二进制序列的至少一部分执行乘法;和
二进制加法器,所述二进制加法器对由所述二进制乘法器生成的乘积执行加法。
示例58:一组图形文件,包括:
第一动画图形(AG)文件,其包括第一AG像素,所述第一AG像素中的每一个第一AG像素包括第一AG值;
第二AG文件,其包括第二AG像素,所述第二AG像素中每一个第二AG像素包括第二AG值;和
掩模图形(MG)文件,其包括MG像素,所述MG像素中每一个MG像素包括MG值,所述MG值中的第一MG值针对所述第一AG值中的一个第一AG值指定第一数值因子,所述MG值中的第二MG值针对所述第二AG值中的一个第二AG值指定第二数值因子,所述MG像素定义以下项之和:(i)所述第一数值因子乘以所述第一AG值中的所述一个第一AG值,和(ii)所述第二数值因子乘以所述第二AG值中的所述一个第二AG值。
在整个本说明书中使用的术语“基本上”和“大约”用于描述并考虑到例如由于处理中的变化而引起的小波动。例如,它们可以指小于或等于±5%,诸如小于或等于±2%,诸如小于或等于±1%,诸如小于或等于±0.5%,诸如小于或等于±0.2%,诸如小于或等于±0.1%,诸如小于或等于±0.05%。此外,当在本文中使用时,诸如“一个(a)”或“一个(an)”的不定冠词意味着“至少一个”。
应当认识到,前面的概念和下面更详细讨论的另外的概念的所有组合(假设这些概念不相互矛盾)都被设想为本文公开的创造性主题的一部分。特别地,出现在本公开结尾处的要求保护的主题的所有组合被认为是本文公开的创造性主题的一部分。
许多实现方式已经被描述。然而,将要理解的是,在没有偏离本说明书的精神和范围的情况下,可以进行各种更改。
此外,图中描绘的逻辑流程不要求所示的特定顺序或相继的顺序来实现期望的结果。另外,从所描述的流程中可以提供其他过程,或者可以消除过程,并且可以将其他部件添加到所描述的系统或从所描述的系统移除其他部件。因此,其他实现方式在随附的权利要求的范围内。
虽然如本文描述已经示出了所描述实现方式的某些特征,但是本领域中的技术人员现在将想到很多修改、替换、改变和等效形式。因此,应当理解,所附权利要求旨在覆盖落入实现方式的范围内的所有这样的修改和改变。应当理解,它们仅仅是作为示例而非限制给出的,并且可以在形式和细节上进行各种改变。本文描述的装置和/或方法的任何部分可以以任何组合(除了相互排斥的组合)进行组合。本文描述的实现方式可以包括所描述的不同实现方式的功能、部件和/或特征的各种组合和/或子组合。
- 使用图形文件控制电气部件
- 自行车用电气部件和使用该电气部件的自行车用拨链器