<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:wfw="http://wellformedweb.org/CommentAPI/">
<channel>
<title>LuckyDu - 智能制造</title>
<link>http://blog.anlucky.cn/index.php/mes</link>
<atom:link href="http://blog.anlucky.cn/index.php/feed/mes" rel="self" type="application/rss+xml" />
<language>zh-CN</language>
<description>智能制造，MES生产执行系统，达索Apriso开发平台</description>
<lastBuildDate>Fri, 13 Dec 2024 10:30:11 +0800</lastBuildDate>
<pubDate>Fri, 13 Dec 2024 10:30:11 +0800</pubDate>
<item>
<title>新能源电池工序工艺</title>
<link>http://blog.anlucky.cn/index.php/mes/cell/234</link>
<guid>http://blog.anlucky.cn/index.php/mes/cell/234</guid>
<pubDate>Fri, 13 Dec 2024 10:30:11 +0800</pubDate>
<dc:creator>都依凡</dc:creator>
<description><![CDATA[新能源电池智造工序工艺分类按照外观形态不同，锂离子电池可以分为圆柱电池、方形电池以及软包电池等。圆柱形电池以圆柱形锂离子电池为例，从整体来看，电池生产工序可以概括为3大工段，21道工序。3大工段...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<h1>新能源电池智造工序工艺</h1><h2>分类</h2><p>按照外观形态不同，锂离子电池可以分为圆柱电池、方形电池以及软包电池等。</p><h3>圆柱形电池</h3><p>以圆柱形锂离子电池为例，从整体来看，电池生产工序可以概括为3大工段，21道工序。3大工段分别是前段工序（极片制备）、中段工序（电芯装配）、后段工序（化成封装）。21道工序分别是负极匀浆、正极匀浆、涂布、辊压、分切、制片、卷绕、入壳、底焊、滚槽、烘烤、注液、焊接、封口、清洗、套膜、活化、化成、陈化、分选、分容。</p><h2>1. 前段工序(极片制备)</h2><p>前段工序主要是极片制备阶段，包括正（负）极匀浆、涂布、辊压、分切、制片。</p><h3>正（负）极匀浆</h3><p>将正（负）极活性物质、导电剂、粘结剂等正（负）极物质混合在一起的混料过程，混料是把电池活性物质材料和辅料，在溶剂中进行高度分散形成牛顿型高粘度流体，达到将活性物质、导电剂、粘结剂及其它添加剂充分混合，均匀分散的目的。</p><h3>涂布</h3><p>将浆料通过涂布机在集流体表面涂覆一层厚度均匀的涂层，再经过烘道加热将溶剂除去，得到极片。</p><h3>辊压</h3><p>涂布完成后，极片需通过辊压机调整轧辊间隙、收放卷位置、张力等，并用试片试压，确保试压后的试片厚度符合工艺参数要求。</p><h3>分切</h3><p>将较宽的极片用分切机分切成单颗电芯所需要的宽度。</p><h3>制片</h3><p>在制片机上焊接极耳并在极耳位置贴上绝缘胶包覆裸露的集流体和极耳。</p><h2>2. 中段工序(电芯装配)</h2><p>中段工序主要是完成电芯的制备，包括卷绕、入壳、底焊、辊槽、烘烤、注液、焊接、封口、清洗、套膜。</p><h3>卷绕</h3><p>是由条状正负极极片和隔膜通过卷绕机卷成圆柱形卷芯，这一工序管控要点在于负极极片必须完全包覆正极极片，而隔膜必须完全包覆负极极片，对工艺精度的要求非常高。</p><h3>入壳、底焊、辊槽</h3><p>卷芯完成后需放入钢壳并通过底焊使得负极耳与钢壳连接，这时整个钢壳就是电池的负极，再通过辊槽固定钢壳内的卷芯。</p><h3>烘烤</h3><p>将已入壳的卷芯置于烘烤箱中烘烤，直至卷芯的水分含量达到标准后才能转入下一工序。</p><h3>注液</h3><p>通过注液机将电解液注入烘烤后水分要求合格的卷芯。注液完成后，锂电池的四大主材均被应用到电芯之中。</p><h3>焊接</h3><p>将盖板与正极耳焊接在一起，这时整个盖板就是电池的正极，焊接的管控点在于防止虚焊、偏焊及盖帽外观不良。</p><h3>封口</h3><p>将钢壳与盖板密封，使壳体内的电芯体处于完全密封的状态，与外界环境隔离，避免物质交换。</p><h3>清洗</h3><p>清洗工序的目的是清除电池钢壳表面残留的电解液，防止电解液腐蚀钢壳。</p><h3>套膜</h3><p>套膜工序是保证电芯正负极端分开，防止外部电路发生短路，同时使电池有一定的美观度。</p><h2>3.后段(化成封装)</h2><p>完成中段工序意味着一颗外形完整的电芯制造已经结束。之后就是后段工序，此工序主要目的是将电芯激活，经过检测、分选、组装，形成锂离子电池成品。主要包括活化、化成、陈化、分选、分容。</p><h3>活化</h3><p>电芯套膜之后在恒温环境搁置一段时间，使电解液充分浸润极片和隔膜，防止因电解液浸润不均匀而导致析锂。</p><h3>化成</h3><p>通过第一次充电，使得电芯激活，此过程中负极表面会形成一层稳定的固体电解质相界面（SEI）膜。电池在化成后，才能体现真实的电性能；没有经过化成的电池，无法进行正常充放电。</p><h3>陈化</h3><p>将化成后某一荷电状态的电芯在一定温度环境下搁置一段时间，并测试搁置前后电池的电压，根据电压下降情况筛选、分类，排除外界因素的影响，剔除压降大或压降异常的电芯。  分选  根据电芯交流内阻大小分选出不同内阻档位电芯，剔除内阻异常电芯。</p><h3>分容</h3><p>分容即分析容量。电池在制造过程中，因工艺原因使电池的实际容量不可能完全一致，通过一定的充放电检测，将电池按容量分类的过程称为分容。</p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>http://blog.anlucky.cn/index.php/mes/cell/234#comments</comments>
<wfw:commentRss>http://blog.anlucky.cn/index.php/feed/mes</wfw:commentRss>
</item>
<item>
<title>Apriso 代码状态修改&amp;amp;&amp;amp;GPM打包报错问题查找</title>
<link>http://blog.anlucky.cn/index.php/mes/Apriso/208</link>
<guid>http://blog.anlucky.cn/index.php/mes/Apriso/208</guid>
<pubDate>Wed, 17 Jan 2024 11:17:00 +0800</pubDate>
<dc:creator>都依凡</dc:creator>
<description><![CDATA[Apriso 代码状态修改使用场景例如：​    我们实际开发中，不免得有一些紧急情况需要直接在生产环境中直接修改代码，而我们在实际开发当中并不会使用一个环境进行开发，一般情况下会使用多个环境，...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<h1>Apriso 代码状态修改</h1><h2>使用场景</h2><p>例如：</p><p>​    我们实际开发中，不免得有一些紧急情况需要直接在生产环境中直接修改代码，而我们在实际开发当中并不会使用一个环境进行开发，一般情况下会使用多个环境，而我们的代码一般会使用  <strong>Apriso 中的 GPM(GlobalProcessManager) 工具</strong> 进行将开发环境的代码进行打包发送至生产环境</p><p><strong>在一般情况下，因代码是GPM打包发送，无法对代码进行直接修改，需要修改其状态才可修改代码，如下的SQL语句就实现了修改数据库中存储状态的字段而进行改变我们的代码状态</strong></p><pre><code class="lang-sql">--LAYOUT状态修改  布局
SELECT SL.*  FROM SF_LAYOUT SL
WHERE SL.NAME = &#039;IL_QMS_CPKMonitor&#039;;

--SCREEN状态修改  画面
SELECT SSR.* FROM SF_SCREEN SS
LEFT JOIN SF_SCREEN_REVISION SSR ON SS.ID = SSR.SCREENID
WHERE SS.NAME = &#039;ScreenName&#039;;
-- 根据上方查询的ID进行修改Screen的状态
UPDATE SF_SCREEN_REVISION SSR SET REVISIONSTATUSID = 4  WHERE ID = ScreenID;

--VIEW状态修改  视图
SELECT SVR.* FROM SF_VIEW SV
LEFT JOIN SF_VIEW_REVISION SVR ON SV.ID = SVR.VIEWID 
WHERE SV.NAME = &#039;ViewName&#039;;
-- 根据上方查询的View的ID进行修改View的状态
UPDATE SF_VIEW_REVISION SET REVISIONSTATUSID = 4  WHERE ID = ViewID;

--Operation状态修改  操作
SELECT O.REVISIONSTATUSID,O.* FROM OPERATION O
WHERE OPERATIONCODE = &#039;OperationName&#039;;
-- 根据操作的名字进行修改操作的状态
UPDATE OPERATION SET REVISIONSTATUSID = 4 WHERE OPERATIONCODE = &#039;OperationName&#039;;

-- 字典项表名称
SELECT * FROM LITERAL_DICTIONARY LD WHERE LD.DESCRIPTION = &#039;字典名&#039;;

-- 系统参数查询
SELECT * FROM SYSTEM_PARAMETER SP WHERE SP.FUID = &#039;&#039;;</code></pre><blockquote>GPM (GlobalProcessManager) 在打包发布过程中会有一个FUID报错，亦可以使用这些SQL进行查询是哪些代码未正确打包</blockquote><h2>注意</h2><p>为了我们的代码统一性，若直接修改了正式环境的代码要将代码同步至开环境和测试环境，以免影响后续功能的修改和优化</p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>http://blog.anlucky.cn/index.php/mes/Apriso/208#comments</comments>
<wfw:commentRss>http://blog.anlucky.cn/index.php/feed/mes</wfw:commentRss>
</item>
<item>
<title>Apriso 定时任务(Job创建和停止)</title>
<link>http://blog.anlucky.cn/index.php/mes/Apriso/182</link>
<guid>http://blog.anlucky.cn/index.php/mes/Apriso/182</guid>
<pubDate>Tue, 16 Jan 2024 11:11:07 +0800</pubDate>
<dc:creator>都依凡</dc:creator>
<description><![CDATA[Apriso 创建Job打开软件搜索 Job Sche或者中文环境下搜索点击这里添加输入Job名称和配置对应的配置通常我们是不允许Job任务进行并行的比如： 我们两秒执行一个Job任务，但是我们...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<h1>Apriso 创建Job</h1><p>打开软件<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/2018133290.png" alt="image-20230720102643421.png" title="image-20230720102643421.png"></p><p>搜索 Job Sche</p><p>或者中文环境下搜索<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/3758005640.png" alt="image-20230803165841392.png" title="image-20230803165841392.png"></p><p><img src="http://blog.anlucky.cn/usr/uploads/2024/01/2694005246.png" alt="image-20230720103953473.png" title="image-20230720103953473.png"></p><p>点击这里添加<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1247213267.png" alt="image-20230720104029948.png" title="image-20230720104029948.png"></p><p>输入Job名称和配置对应的配置<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/566437476.png" alt="image-20230720104259250.png" title="image-20230720104259250.png"></p><blockquote><p>通常我们是不允许Job任务进行并行的</p><p>比如： 我们两秒执行一个Job任务，但是我们每一个Job任务在执行的时候，所需要的时间是三秒或更长时间，若允许并行执行，那么这个Job任务就会出现问题，所以我们一般情况下会取消 </p><p>勾选Allow multiple concurrent executions</p></blockquote><p>创建此Job要执行的任务，operation，若是上面配置不保存无法添加Operation <br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1786634598.png" alt="image-20230720104629613.png" title="image-20230720104629613.png"></p><p>为这个operation创建一个名称<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/568042519.png" alt="image-20230720110140155.png" title="image-20230720110140155.png"></p><h2>运行方式</h2><h3>手动执行一次</h3><p>选中要执行的Job 然后查询Enable是否勾选，未勾选点击这里勾选，然后左边的运行就可以点击了，点击一次将执行一次<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1329651727.png" alt="image-20230720111658855.png" title="image-20230720111658855.png"></p><h3>设置定时运行</h3><p>首先点击对应的Job任务，进行对应的配置，点击加号进行配置<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/3418891140.png" alt="image-20230720112047458.png" title="image-20230720112047458.png"></p><p>为这个定时任务起一个名称<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/3921754692.png" alt="image-20230720112205222.png" title="image-20230720112205222.png"></p><p>设置定时时间<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/3795762799.png" alt="image-20230720112614526.png" title="image-20230720112614526.png"></p><p>启动方式和手动执行启动一次的方式一样</p><h2>停止定时运行</h2><p>点击后面的 Disable Job 即可停止 Job定时任务</p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>http://blog.anlucky.cn/index.php/mes/Apriso/182#comments</comments>
<wfw:commentRss>http://blog.anlucky.cn/index.php/feed/mes</wfw:commentRss>
</item>
<item>
<title>Apriso Tab标签页面切换</title>
<link>http://blog.anlucky.cn/index.php/mes/Apriso/169</link>
<guid>http://blog.anlucky.cn/index.php/mes/Apriso/169</guid>
<pubDate>Tue, 16 Jan 2024 11:03:00 +0800</pubDate>
<dc:creator>都依凡</dc:creator>
<description><![CDATA[Apriso Tab标签页面切换页面创建创建一个Screen（屏幕），至少需要两个layout，如图，不一定要和图片一致的布局，自定义的也可以，只要是两个容器，一个用来做Tab切换按钮，一个用来...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<h1>Apriso Tab标签页面切换</h1><h2>页面创建</h2><p>创建一个Screen（屏幕），至少需要两个layout，如图，不一定要和图片一致的布局，自定义的也可以，只要是两个容器，一个用来做Tab切换按钮，一个用来做切换的效果主显示<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/307077729.png" alt="image-20230724151402460.png" title="image-20230724151402460.png"></p><h2>连接组件</h2><p>这里使用Top区域连接一个<code>protalTab</code> 组件，这里在主区域连接一个Grid（表格），然后我们更改这两个组件对应的视图和操作中的状态使得程序可以正常运行起来<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/910668926.png" alt="image-20230724152109122.png" title="image-20230724152109122.png"></p><h2>添加可切换的组件</h2><p>在左侧找到屏幕浏览器窗口，找到和我们Gird同一个区域的地方，右键弹出菜单，选择复制并链接更改视图，然后添加我们想要切换的组件，并更改其运行状态<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/77278691.png" alt="image-20230724152320470.png" title="image-20230724152320470.png"></p><h3>更改切换视图的运行状态</h3><p>在屏幕浏览器中选择我们对应的组件，然后在右侧属性栏中可以看到我们的三条杠，点击进入视图更改状态，然后点击打开视图操作切换我们的操作状态（可以在右侧属性栏中还是三条杠找到对应的入口）</p><h2>添加Tab组件中的按钮</h2><h3>方法一</h3><p>进入Tab页面的视图中，添加按钮<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/3662830830.png" alt="image-20230724153109849.png" title="image-20230724153109849.png"></p><p><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1651815020.png" alt="image-20230724153240008.png" title="image-20230724153240008.png"></p><p><strong>注意，类型要选择为标签（TAB）</strong></p><p>设置为如图<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/4155698433.png" alt="image-20230724153458352.png" title="image-20230724153458352.png"></p><p>这里因为我们添加的是对应的组件按钮，我们需要将他切换为布局按钮，点击左侧的实体浏览器，选择我们添加的按钮，右键弹出菜单，选择否决行动</p><p><strong>注意，这里在布局中添加按钮和在组件中添加按钮的图标是不一样的</strong><br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1517235565.png" alt="image-20230724154715127.png" title="image-20230724154715127.png"></p><p>然后就完成了按钮的添加</p><h3>方法二</h3><p>直接添加到布局中，类型选择标签（Tab）,然后就完成了<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1763850139.png" alt="image-20230724153629855.png" title="image-20230724153629855.png"></p><p><strong>注意，以上两种方法没有特别推荐，个人喜好，喜欢什么就用什么方式</strong></p><h2>设置切换效果</h2><p>点击实体浏览器，选择我们的按钮，比如我这里选择Grid按钮，然后在右侧选择 Change View 选项，对我们指定区域跳转什么内容进行设置，其中Tree按钮一样的设置原理<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1591497510.png" alt="image-20230724155652207.png" title="image-20230724155652207.png"></p><p>然后运行测试，这里就会看到切换效果</p><h2>细节？</h2><p>在切换时，我们希望他的Tab选择有选中的效果，我们需要对他进行如下设置</p><p>进入我们的Tab的操作层，点击实体浏览器的最外层，在右侧属性栏中找到界面，添加输入（SelectedAction）名字可以是别的，但是输入输出名称要一样<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/1669649339.png" alt="image-20230724161349105.png" title="image-20230724161349105.png"></p><p>然后选择我们的DefaultAction更改一下输入，变为我们刚刚设置的名称，在Action输出中多输出一份，名称选择我们刚刚添加的名称<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/2083140819.png" alt="image-20230724161546306.png" title="image-20230724161546306.png"></p><p><strong>注意，我们这里更改了参数，需要对其进行参数刷新，Operation编译，否则不生效报错</strong></p><p>这样实现选中的效果就完成了，但是我们希望他显示默认页面，需要进行如下设置（要完成参数刷新编译操作，否则报错）<br><img src="http://blog.anlucky.cn/usr/uploads/2024/01/399179393.png" alt="image-20230724162038110.png" title="image-20230724162038110.png"></p><p>这里进入我们的界面层，同样选择最外层部分，</p><h3>实现原理</h3><p>Tab的选中效果是根据他的DefaultAction来进行确认的，当我们选择一个按钮，在Change view 他会进行一个跳转页面，然后会将我们的Action传递过去，比如点击GRID按钮，他这里传递的是一个Grid，在页面跳转完成之后，Apriso会进行一个页面刷新，此时我们页面中已经接收到这个Grid，就会传入，在渲染的时候就会将我们的值进行传递渲染，实现一个选中效果</p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>http://blog.anlucky.cn/index.php/mes/Apriso/169#comments</comments>
<wfw:commentRss>http://blog.anlucky.cn/index.php/feed/mes</wfw:commentRss>
</item>
</channel>
</rss>