扬声器
|
成绩单
|
| 艾萨克·希曼加 |
你好,早上好。 |
| 珍妮丝勒博,JMP |
嗨,艾萨克,你好吗。 |
| 艾萨克·希曼加 |
做得很好,你好吗。 |
| 珍妮丝勒博,JMP |
好的,谢谢你,我是丹,今天我要为你制作演示文稿。 |
| 艾萨克·希曼加 |
太棒了。 |
| 珍妮丝勒博,JMP |
我看不到你以撒。 |
| 艾萨克·希曼加 |
是的,我很抱歉在这里设置它。 |
| 珍妮丝勒博,JMP |
好的,只是为了让你知道我们现在正在录音。 |
| |
绝对酷我觉得我们以前见过。 |
| 艾萨克·希曼加 |
我敢肯定,我们可能有一个峰会,如果它在任何地方。 |
| 珍妮丝勒博,JMP |
好的,很好,你今天过得怎么样。 |
| 艾萨克·希曼加 |
做得很好,你好吗。 |
| 珍妮丝勒博,JMP |
很好很好,我喜欢你的背景,你肯定会用这种美丽的颜色。 |
| 艾萨克·希曼加 |
谢谢你。 |
| |
好的。 |
| 珍妮丝勒博,JMP |
我只是要回顾一些事情,我只需要与你再次确认。 |
| |
您的演讲者姓名公司和摘要标题。 |
| |
好的,你们有任何共同演示者吗?好吧,你同意我们记录这个并将其发布到发现发现峰会档案。 |
| 艾萨克·希曼加 |
绝对的,我想,我也打算在我的网站上将我的结局发布到记录中,以防万一发生什么事,所以我们会得到它的副本,这对你来说没问题。 |
| 珍妮丝勒博,JMP |
嗯,我不知道这是否会影响任何东西的质量。 |
| 艾萨克·希曼加 |
我不应该经常这样做吗? |
| 珍妮丝勒博,JMP |
好的,我让你带头,我是你的背景看起来不错你的麦克风听起来不错,只是想再次确认你的手机和电脑通知已关闭。 |
| 艾萨克·希曼加 |
应该是,但我会再次检查只是因为什么时候。 |
| 珍妮丝勒博,JMP |
我把你的作品称为。 |
| |
进而。 |
| |
能量8和1920乘10天,你有没有在后台养宠物。 |
| 艾萨克·希曼加 |
所以。 |
| 珍妮丝勒博,JMP |
它可能会发出噪音,就像我的猫可能会那样,所以我推荐了他。 |
| 艾萨克·希曼加 |
好吧,理论上,我是今天唯一一个回家的人。 |
| 珍妮丝勒博,JMP |
您是否关闭了 Skype 或任何其他发出噪音的应用程序。 |
| 艾萨克·希曼加 |
访问我把这个关掉是的。 |
| |
好的。 |
| 艾萨克·希曼加 |
是的,所以我认为唯一应该像你一样,当我们开始时,我实际上会把你的音量调低,以防万一发生什么事我能看到你,但它只会如果其他事情确实发出噪音,请保持安静哦。 |
| 珍妮丝勒博,JMP |
嗯,我要做的是。 |
| |
我只是要在这里给你一些更多的指示,我要让自己静音并隐藏我的视频,你可以分享你的屏幕以进行演示。 |
| |
而且,在我将自己静音之前,我会先做我的 54321,然后给自己几秒钟,然后你可以继续自我介绍。 |
| |
开始录音,你可以开始你的演讲,然后,当你告诉我今天的演讲结束时,我希望你喜欢它,无论你想说什么,然后我会停止为你录音。 |
| |
很好,如果我们一开始就喜欢它,但你不高兴,你知道我们可以停下来重新开始,所以我对这一切都很酷。 |
| 艾萨克·希曼加 |
好的,现在希望这不会是你想要多接近 35 分钟的问题,当我练习时,我的意思是它在 34 和 36 之间徘徊是你想读 35 分钟还是。 |
| 珍妮丝勒博,JMP |
你知道这很好,我的意思是做你必须做的任何事情我知道一个人,如果他们告诉你 30 到 40 分钟的时间,我们就在 20 分钟一分钟。 |
| 艾萨克·希曼加 |
是的,在某个地方,我记得他们可能在那里给出了 35 个范围。 |
| 珍妮丝勒博,JMP |
这很酷,别担心。 |
| 艾萨克·希曼加 |
好的,很好,很完美。 |
| 珍妮丝勒博,JMP |
好的,所以我们正在云端录制。 |
| |
我们可以看到。 |
| |
哦,看起来很好,看起来很好吃。 |
| 艾萨克·希曼加 |
完美的。 |
| 珍妮丝勒博,JMP |
是的。 |
| |
所以,你准备好我的视频了吗? |
| 艾萨克·希曼加 |
让我们看看怎么样,这样你就没有计时器相机来在我上面设置计时器,所以我可以做 30。 |
| 珍妮丝勒博,JMP |
我的意思是做任何你想做的事,因为这将开始。 |
| |
我的意思是,老实说,如果你认为它是 35 并且你去到 32 那很好,如果你再多一点那很好。 |
| |
好的。 |
| 艾萨克·希曼加 |
所以我在这里得到了一切。 |
| |
好的。 |
| 珍妮丝勒博,JMP |
好的,所以你感觉很好,因为我要做。 |
| |
我会做 54321 并让自己静音。 |
| |
让我们看看你在那里僵住了 好吧,所以你准备好了。 |
| 艾萨克·希曼加 |
好的。 |
| 珍妮丝勒博,JMP |
我想,到 4321 为止。 |
| 艾萨克·希曼加 |
我的名字是 Isaac Himanga,我将展示我在 ADM 使用的工作流程,以使用多变量模型优化制造流程。 |
| |
我将从提取数据和构建模型开始,找到现实的最佳条件,识别异常条件,最后使用当前数据对模型进行评分。 |
| |
这里有很多关于各个平台的其他信息,所以我不会讨论每个步骤的细节,我只会突出一些常用的功能,而是尝试展示整个工作流程。 |
| |
我会说大多数分析的细节量都比 45 分钟多一点。 |
| |
因此,请转至 JMP 社区中本次演讲的文章以获取更多详细信息和信息,包括带有步骤屏幕截图的期刊,我将在此处快速完成。 |
| |
我将首先简要概述 ADM 和一般工作流程。 |
| |
然后我将把这个演示文稿放在一边,向您展示 JMP 中的过程。 您将看到获取和清理数据的样子,使用分析器找出多个条件, |
| |
使用模型驱动的多元控制图平台,编写脚本来针对该模型对新数据进行评分,最后,我将返回到本演示文稿,简要介绍一种使用 JMP 对该模型进行连续评分的方法。 |
| |
首先,稍微介绍一下 ADM。 |
| |
ADM 的宗旨是释放大自然的力量,丰富生活品质。 |
| |
我们将天然产品转化为用于食品和饮料、补充剂、宠物和牲畜营养品的完整成分和香料组合, |
| |
和更多。 凭借遍布全球食物链各个环节的一系列无与伦比的能力,我们为客户提供解决当今和未来全球挑战的优势。 |
| |
其中一项功能是使用数据分析来改进我们的制造流程,包括我将要讨论的方法。 |
| |
我是相对较新的重点改进和分析卓越中心的一员。 |
| |
我们不断壮大的团队投资于此类技术,以帮助我们的 800 家设施、300 个食品和饲料加工地点以及我们公司在世界各地的其他部门使用我们的数据做出更好的决策。 |
| |
现在,概述工作流程。 |
| |
我今天要回顾的四个步骤仅代表完整分析的一部分。 为了节省时间,我将省略一些我认为对每个数据集都至关重要的事情, |
| |
比如可视化数据、使用验证、减少变量、用其他模型证实结果,以及调整实验室和过程数据。 |
| |
获取数据,构建模型,在 JMP 中按需为该模型评分,然后持续对模型评分。 |
| |
JMP 具有支持每个步骤的工具,包括一系列数据库连接、多元建模建模工具,如偏最小二乘法、主成分和模型驱动的多元控制图平台,当然还有 JMP 脚本语言或 JSL。 |
| |
让我们从获取数据开始。 尽管有许多可用的数据库连接和脚本选项,但我们需要一种快速的方法从我们的流程历史数据库中提取数据, |
| |
一种名为 PI 的流行产品,无需编写查询或导航表结构。 自定义加载项是大多数数据集的答案。 该插件相对...最近发布到 JMP 社区。 |
| |
另外两个加载项可协助此过程。 一个,通常称为脚本工具,包括一个选项,用于快速获取脚本以重新创建计算列 |
| |
与大多数 JMP 平台内置的保存脚本功能结合使用时。 JMP 用户可以根据需要快速重新创建分析并评分。 |
| |
最后一个插件,称为 JMP 模型引擎,也是最新的。 它使用从 PItool 的加载项保存到数据表的配置文件和信息来获取数据。 |
| |
这可以使用列公式或任何其他 JSL 脚本进行计算,然后将结果写回历史记录。 |
| |
时间关系,我将很快完成最后一步,但同样,我鼓励您使用以下链接查找有关 JMP 社区的更多详细信息 |
| |
本演示文稿的议程幻灯片。 |
| |
这些插件中的每一个都经过彻底检查以删除敏感信息,但我们正在将用户转移到社区上发布的相同代码。 因此,如果您有想法以及如何改进它们,请随时通过 JMP 社区与我们合作,或通过 GitHub 与我们合作。 |
| |
有了这个,让我们打开 JMP。 |
| |
在幕后,ADM...或 JMP PItool 的插件使用几个不同的 PI 产品来提取数据,包括 SQL DAS、OLEDB 和 ODBC。 设置说明可在此平台的帮助菜单中找到。 |
| |
今天,我们将从 5 月 1 日中午开始提取一组 PItag 的数据,然后我们将在每天中午之前提取另一个值,直到今天。 |
| |
我们将为一组特定的标签执行此操作,这些标签列在此处... |
| |
在这个盒子里。 请注意,我们实际上包含了所谓的友好标记或一个比 PIhistorian 中的名称更具描述性的名称,可帮助我们稍后在数据表中识别这些列。 周围都是这些小问号 |
| |
...围绕加载项提供更多信息,包括我们今天将使用的这种友好标记格式的描述。 |
| |
当我点击运行查询时,它会打开一个看起来像这样的数据表。 它有一组用于该数据表中所有数值的列。 |
| |
它有一组用于任何字符串值的列,因此如果您在 PItag 中存储了字符,它将提取这些字符。 我们还可以看到该 PItag 的状态 |
| |
对于每一行。 |
| |
同样在该数据表的列属性中,如果我们打开列信息,我们将看到用于提取该数据点的信息,包括 PItag, |
| |
呼叫类型和间隔。 对于更复杂的查询,例如平均值或最大值,我们将在此处查看更多信息。 |
| |
我会注意到,这是经过重新调整并且列名已更改的真实数据,但是我们今天将看到的分析看起来应该与使用来自我们的一个设施的实际数据的真实分析非常相似。 |
| |
最后,我要指出,这里有一个脚本保存到名为 PI 数据源的数据表中,该脚本与加载项中实际显示的脚本相同 |
| |
它包含在这里也可用的 SQL。 再次在幕后,这使用 |
| |
SQL DAS 或 PI DAS 以便从 PI 获取该信息,这就是所有...它将运行以获取该数据的所有脚本。 我们将在今天的演讲接近尾声时回来再次使用它。 |
| |
好的,现在我们有了数据,我们需要清理这些数据。 我们今天将使用多元工具来做到这一点,特别是主成分分析。 我将从该数据表中提取所有数值并将其放入 y 列列表中,然后 |
| |
马上,我们可以看到一些值具有...相当多的值对于组件一的得分特别低。 如果您查看这些负载 |
| |
不同的因素,我们可以看到组件一包括该数据集中所有不同流的高负载。 |
| |
所以这告诉我左边的所有这些值在整个系统中都有很高的流量。 使用一些工程知识,我可以说这代表了该过程的停机时间,所以我将继续隐藏和排除所有这些值。 |
| |
既然我们已经这样做了,我们将重新计算主成分分析,所以我们将使用重做和重做分析,然后关闭旧的分析。 |
| |
现在我们可以看到负载可能更有意义一些。 例如,主成分 3 解释了流 2 中的大部分变化,这里有一点分离。 |
| |
前三个组件解释了大部分变化,因此我将在查找此数据集中的其他异常值时使用这三个组件。 |
| |
为此,我将打开异常值分析并将分量数更改为三个。 |
| |
然后我们可以看到T平方图,我也可以打开归一化的DModX图 |
| |
查看具有一个或多个分数的极值的点或具有单个分数的点 |
| |
基于该数据集中针对该特定角色的所有其他列,列或具有意外值或超出预期范围的值的单个单元格。 |
| |
现在,我们将通过排除所有高于控制上限的 T 平方和 DModX 值来快速清理此数据集。 |
| |
清理数据集时通常要做的另一件事是转换列,我想展示脚本工具加载项的一个功能,它使 |
| |
它甚至试图申请和 |
| |
转移到新的公式列菜单。 如果我选择三列或任意数量的列并转到自定义转换选项,该选项将再次作为该脚本工具加载项的一部分加载, |
| |
我可以选择一个 Savitzkey-Golay 转换并点击 OK,它会在数据表的末尾添加三列,其中包含一个包含该转换的公式。 |
| |
我会注意到,我们所做的清洁工作可以直接在 PLS 中完成。 不过,我经常先使用 PCA。 |
| |
好的,现在我们已经清理了我们的数据集,我们需要实际构建一个模型 |
| |
尝试并预测...我们的工艺条件。 也许是关于这个数据集的另一个快速说明,我们在这里有一个流目标。 |
| |
今天,我们的目标将是使用尽可能少的流量来创建一定数量的目标流量,并考虑一些...... |
| |
考虑对这些质量参数的一些限制。 因此,因为流一是我们主要感兴趣的,我将切换到偏最小二乘模型并使用该流...y 中的目标流和所有其他变量作为 X 因子。 |
| |
我现在只接受所有的默认值,我将提前一点,立即使用四个因素。 |
| |
当我打开这四个因素时, |
| |
我们会看到前两个 |
| |
代表 |
| |
工厂通常在订单中更改的变量......以调整他们运行流程的速度。 因此,如果他们需要或多或少地制造此目标流量,他们通常会更改因子 1 以实现该目标速率。 |
| |
另一方面,因素 2 主要与这些质量参数有关,它们实际上是我们无法控制的输入质量参数。 |
| |
所以这不是我们可以改变的。 因此,即使因子 3 和因子 4 相对......解释了相对较小的变化量 |
| |
我们的目标流程,它们解释了我们的因素一的相对少量的变化,那些是我们实际上可以控制的,因此我们将能够使用这些来优化我们的流程。 |
| |
为了使用它......所以我们已经建立了一个模型来解释我们数据的变化。 |
| |
为了使用该信息,我们需要保存其中一些列或将来自该列的预测保存到我们数据集中的新列 |
| |
我们将在几分钟内在预测分析器中使用它。 |
| |
我们将利用 JMP 16 中添加的一些新功能,允许我们将 Y 和 X 变量的预测保存为 X 分数公式。 当我们打开分析器时,我认为这将有助于说明为什么这变得重要。 |
| |
因此,我们已将所有三个预测、X 预测和 T 方格保存回我们的数据表。 这些应该是底部的新列,作为这些 X 分数的函数。 |
| |
我们还可以快速查看 PLS 平台内的距离和 T 平方图,我们看到虽然有一些变量具有相当高的 DModX 或 T 平方,但没有什么太极端的。 |
| |
这些分数通常被保存或总是与变量名称一起保存,当您保存越来越多或经历模型的多次迭代时,这些名称可能会变得混乱。 所以脚本工具包含另一个函数,称为重命名列, |
| |
这将允许您为 PLS 选择示例查询。 这里有一个非常复杂的正则表达式模式, |
| |
但请注意,它会输出一组标准名称,这些名称对于数据表中的 PLS、PCA 和其他平台看起来相同。 |
| |
所以在这种情况下,我实际上要复制一个特定的前缀,我们将放在所有这些列之前,表明这是我们要在线进行质量控制的模型,它是该模型的第一个修订版。 |
| |
当我更改名称时,我们可以看到它自动更改了数据集中所有这些列的名称。 |
| |
所以我们建立了一个模型来解释 |
| |
这些列,但我们还没有做的是我们最初的目标是弄清楚如何使用尽可能少的流量来产生一定数量的流量......我们的目标流量。 为此,我们将使用分析器。 请注意,当我们打开分析器时, |
| |
我们可以将所有这些预测值(因此不是 X 分数本身,而是预测值和 T 平方)添加到此预测公式部分。 |
| |
然后,当它打开时,我们将在 X 轴上看到模型中的所有分数或潜在变量。 |
| |
我们可以看到,当我们移动这些分数之一时,它会自动将所有这些观察到的变量移动到一起 |
| |
以这些成分中的每一种的负载比率。 所以重要的是,看看这些流三和四,它们总是一起移动。 无论我们移动哪个分数, |
| |
这个模型明白这两个分数是相关的。 也许一个是他们可以控制的流量计,也许是第二个 |
| |
是同一条线上的第二个流量计,但无论如何它看起来不像工厂能够在不沿同一方向移动另一个的情况下移动一个。 |
| |
因此,我们的目标是为这些分数中的每一个找到可以优化我们流程的值。 |
| |
在我们这样做之前,我们需要告诉 JMP 我们要优化的是什么。 我们需要说明的是,我们有一个我们试图达到的特定流速和我们试图达到的某些质量参数。 |
| |
所以我们首先要告诉它我们不关心大多数这些列的值。 所以我们将选择我们保存的所有列, |
| |
我们将标准化属性,我们将为所有这些不同的列添加无响应限制。 |
| |
然后我们将返回并调整响应限制。 对于我们关心的列,它可以更具描述性。 例如,流目标将返回到响应限制,我们将指示我们希望匹配该列的值 140。 |
| |
同样,对于质量一,我们希望达到 |
| |
20.15. |
| |
对于流程一,我们希望最小化该值。 |
| |
最后,我们需要确保我们得到的解决方案接近系统的正常运行范围,所以我们不想在我们构建 PLS 的区域之外进行推断。 |
| |
为此,我们将使用此 T 平方列,并指出我们希望最小化 T 平方 |
| |
这样它就低于该 PLS 平台中显示的控制上限。 在这里我们可以看到控制上限是 9.32,所以我们将使用它作为这里的最小值。 |
| |
我们现在应该在分析器中看到的是,低于 9.32 的每个值都是同样可以接受的,并且当您超过 9.32 时,它会越来越不受欢迎。 |
| |
在图形菜单下,我将再次打开分析器,并再次将所有这些预测和 T 平方公式放入 Y 预测公式中。 |
| |
我们仍然看到底部的 X 分数,但现在我们也在右侧看到了这些合意性函数。 |
| |
T 平方的合意性函数再次开始下降至 9.32 以上。 在流量 1 的低值处可取性最高,我们已经为目标流量和质量参数设定了目标。 |
| |
因为我们已经定义了所有这些,我们现在可以去最大化合意性。 |
| |
这将尝试为这些分数中的每一个找到值,因此,我们数据集中所有观察到的变量的值 |
| |
实现此目标流程并实现我们之前定义的目标。 |
| |
请注意,它几乎达到了完整目标,但看起来有点低。 它确实达到了我们的 20.15 |
| |
它在我们给出的 T 平方范围内。 很可能 JMP 认为合意性的这种微小降低不如减少流量重要,因此我们可以通过控制单击此合意性函数并将重要性更改为 10 来解决此问题。 |
| |
现在,如果我们再次优化它,它应该更接近流目标。 不过,在我们这样做之前,我会将这些因子设置保存到底部的这张表中,以便我们可以比较前后。 然后我们将继续并最大限度地提高吸引力。 |
| |
看起来它已经完成了,我们仍然在 T 平方的范围内。 |
| |
它达到了我们要求的 20.15,而且肯定更接近 140。 所以现在我们可以再次将这些因子设置保存到数据表中。 |
| |
我们现在应该有一些可以反馈给制造工厂的因素,然后说,嘿,这里是我们推荐的参数。 |
| |
像这样使用多变量分析的好处,我们之前讨论过那些流三和四是相关的, |
| |
使用这种方法,我们应该能够为工厂提供他们实际能够运行的合理值。 |
| |
如果你告诉他们为第三流运行一个高值而为第四流运行一个低值,他们可能会看着你说这是不可能的。 |
| |
这些应该更合理。 请注意,并非所有这些变量都必须是工厂可以控制的自变量。 其中一些可能是 |
| |
结果,或者它们可能只是与其他变量相关。 从理论上讲,如果工厂改变了他们可以控制的所有事情,其他事情应该就位。 |
| |
所以现在我们已经优化了这个模型,下一步通常是确保或验证我们是否正常运行。 因此,一旦将最佳条件放入其中,最好使用相同的模型对新行或新数据进行评分并了解该过程是否如我们预期的那样运行? |
| |
为此,我们将使用从 PLS 平台保存的相同预测分数,但这次我们将使用模型驱动的多元控制图中的预测分数 |
| |
在质量和工艺下。 |
| |
我将使用时间并将其放入时间 ID,因此我们将在所有图表上看到实际日期,而不是查看行号,并将 X 分数放入流程中。 |
| |
不幸的是,范围在这些图表上并不总是正确工作,所以如果我稍微放大一点,我们会看到这里有高 T 平方的时期,而高 T 平方主要是流动的结果二、三、四和一,所以所有的东西都流入…… |
| |
是这个 T 平方的高贡献者。 如果我们单击它并将鼠标悬停在其中一个条形上,如果我再次单击该点,那么我们将看到该单个值的控制图......个人 |
| |
我们选择的点在该图表上突出显示的变量。 |
| |
不过,我将隐藏这一点,不仅要看 T 平方,我们还可以对 DModX 或 SPE 做同样的事情,如果你还在看 SPE。 再来一次, |
| |
这并不总是正确的。 |
| |
所以我们将放大 |
| |
DModX 值再次。 |
| |
因此,与基于其他行、该行中的其他数据的预期相比,DModX 将指示单个列具有高值或低值的点。 |
| |
在这里我们可以看到,这点主要是由于流 5 造成的异常值。 |
| |
我确实发现贡献比例热图对于查看旧数据中的模式非常有用,例如,当一个变量可能是一个高影响因素或在很长一段时间内或某段时间内表现异常时. |
| |
所以这是一个图表,它可能……我们可能想每天早上查看,例如,或定期查看,过程是否正常运行? |
| |
你进来,你想打开它看看,我现在有什么应该调整的,以便让我们的过程重新得到控制? |
| |
因此,为了做到这一点,我们希望重新创建从提取 PI 数据到打开 MDMCC 平台的整个分析,并通过单击按钮即可使用所有这些分析。 |
| |
为此,我们将编写一个包含三个步骤的 JSL 脚本。 它将从 PI 获取数据,我们将添加计算列,然后在多变量控制图平台中打开我们拥有的模型。 |
| |
从 PI 获取数据。 如果我们回到原来的数据表,我们... |
| |
PI 工具加载项运行后打开,我们可以看到这个 PI 数据源脚本保存到该表。 如果我们编辑该脚本并复制它,我们可以将其粘贴到新的脚本窗口中。 |
| |
我只会做一个改变。 我们不会从 5 月开始提取数据,而是从 8 月 1 日开始提取数据。 |
| |
现在我们需要添加那些计算列。 所以请记住我们...在 PLS 平台中,我们使用保存的分数...另存为 X 分数公式选项。 |
| |
为了重新创建这些,我们只需选择数据表中的所有列并使用在该脚本工具加载项中再次添加的复制列脚本功能。 |
| |
一旦我们复制了列脚本,我们就回到我们创建的这个新脚本中,我们将粘贴一堆新的列公式以再次重新创建所有这些列。 |
| |
最后,模型驱动的多元控制 |
| |
图表有一个???大多数其他平台,您可以在其中将脚本保存到剪贴板,然后将其粘贴到同一个脚本窗口中。 |
| |
现在,如果我们想象这是新的一天,我们已经关闭了一切,我想看看我们的流程是如何进行的,我会运行这个相同的脚本。 请注意,我可以用 |
| |
一个特定的斜线斜线,然后是一个感叹号,以便在脚本打开时自动运行。 |
| |
当我点击运行时,它会打开一个数据表,它看起来与我们的原始表一样。 它有所有相同的列。 |
| |
添加了那些计算列,所以我们把这些分数和所有的预测都放进去,它也打开了模型驱动的多元控制图平台 |
| |
在这里我们可以看到 DModX 的这个最近的值实际上相当高,所以最近的数据有一些异常值,在这种情况下,质量三。 |
| |
同样,根据其他参数,质量 3 看起来不像预期值。 在这种特殊情况下,这可能意味着, |
| |
由于质量 3 是一个输入参数,而质量 1、2 和 3 通常是相关的,这可能意味着质量 3 是一个糟糕的实验室样品,或者它可能意味着这是一种我们以前从未使用过的新材料。 |
| |
好,最后我们来说说一种连续运行这个模型的方法。 所以这是按需重新创建的, |
| |
我们写了一个 JSL 脚本来运行它,但有时它是有益的 |
| |
或者我们发现将这些结果写回我们的 PI 历史数据库是有益的,以便他们可以使用 |
| |
我们设施的操作员。 所以在最后几分钟,我想介绍这个插件,它被称为模型引擎插件, |
| |
这将快速在线对模型进行评分。 我应该注意,这应该仅用于建议。 这不是提供关键信息或闭环控制的可接受方法。 |
| |
为此,您可以考虑从公式库中导出公式并使用其他一些软件包对其进行评分。 |
| |
如前所述,该模型中可用的一些预测和信息 |
| |
在它发生的那一刻,最有价值。 所以知道是什么导致了昨天的问题很好,但知道现在发生了什么 |
| |
意味着使用当前模型结果做出决策,并允许在某些问题成为大问题之前加以解决。 |
| |
当然有很多方法可以为模型评分,但是 JMP 脚本语言、JSL、 |
| |
使用他们已经习惯的现有可视化和趋势工具套件,提供了一种在我们制造设施的操作员面前获取预测和异常信息的方法。 |
| |
一对模型引擎或运行 JMP 的计算机以及启动任务调度程序的特定加载项,被设置为定期运行存储在特定目录中的所有模型。 |
| |
所有配置都是通过两种类型的配置文件完成的,一个引擎配置文件和一个模型配置文件,用于每个要评分的模型。 |
| |
让我们从该模型配置文件开始。 还记得 PI 工具加载项如何将源信息保存到数据表中吗? |
| |
现在,可以使用相同的信息来填充模型配置文件,该文件告诉模型引擎如何下载具有单行的表,该表包含它需要从中计算值的所有模型输入。 |
| |
之后,脚本工具插件快速保存脚本以重新创建从 PLS 和任何其他平台保存的列, |
| |
可能包括可以从模型版本控制图表平台保存的 T 平方和 DModX 贡献。 这些新的列脚本也保存在模型配置文件或同一目录中的单独文件中。 |
| |
最后,引擎配置文件定义了引擎如何与 PI 工具所在的数据源通信。 |
| |
加载项...PI 工具加载项使用 OLDB 的地方 |
| |
和 SQL 查询获取数据,模型引擎使用 PI Web API 直接向 PI 读取和写入数据。 |
| |
通过在引擎配置文件中定义一组函数,该引擎还可以与许多其他数据源进行通信。 |
| |
注意定义了一组心跳标签,它允许数据源和其他模型引擎知道这个引擎的状态。 |
| |
每个模型也有自己的一组心跳标签,因此如果一台机器停止对特定模型评分,另一个引擎将自动接管。 |
| |
同样,这个模型引擎的想法并不打算用于关键应用程序,但我发现它使我们能够非常快速地从部署和探索性分析转向在线预测或质量控制解决方案。 |
| |
在此,感谢大家的出席。 请记住,JMP 社区提供了有关每个插件和我今天使用的期刊的更多信息。 |
| 珍妮丝勒博,JMP |
很棒的工作很棒。 |