Compare commits
19 Commits
master
...
feature/WCF测试
Author | SHA1 | Date |
---|---|---|
SIC1016\caipeilun | 643dacd05e | |
SIC1016\caipeilun | 44ec8248ea | |
SIC1016\caipeilun | 7188603b44 | |
SIC1016\caipeilun | 9bcdc71064 | |
SIC1016\caipeilun | 13165c4ffa | |
SIC1016\caipeilun | 031edee5e3 | |
SIC1016\caipeilun | a9c0f29980 | |
SIC1016\caipeilun | bca006ba9e | |
SIC1016\caipeilun | 8ab0519714 | |
hanqiangqiang | d9e71d9797 | |
hanqiangqiang | 77ff0b679c | |
hanqiangqiang | 87d6405f72 | |
SIC1016\caipeilun | 062ce6ee2c | |
hanqiangqiang | b3c4acd0b5 | |
hanqiangqiang | aa1e661396 | |
hanqiangqiang | 70fd69c079 | |
HQQ | 3c79392d87 | |
hanqiangqiang | 232231960c | |
SIC1016\caipeilun | 6c04dc230a |
|
@ -14,6 +14,7 @@ using Aitex.Core.Util;
|
|||
using Aitex.Core.Utilities;
|
||||
using Aitex.Sorter.Common;
|
||||
using MECF.Framework.Common.Equipment;
|
||||
using MECF.Framework.Common.MultiProcess.ProcessCenter;
|
||||
using MECF.Framework.Common.Schedulers;
|
||||
using MECF.Framework.Common.SubstrateTrackings;
|
||||
using MECF.Framework.RT.Core.Managers.PDS;
|
||||
|
@ -1157,8 +1158,30 @@ namespace SicModules.PMs
|
|||
private bool FsmAbortTask(object[] param)
|
||||
{
|
||||
Result ret = Result.RUN;
|
||||
|
||||
AbortRoutine();
|
||||
|
||||
var workenable = SC.GetValue<bool>("System.MultiProcessMode");
|
||||
if (workenable)
|
||||
{
|
||||
//1.确认连接状态
|
||||
var r = (bool)DATA.Poll($"MultiProcessClient.IsConnected");
|
||||
if (!r)
|
||||
{
|
||||
EV.PostWarningLog("MultiProcessClient", $"MultiProcessClient disconnect, can not do Operation");
|
||||
}
|
||||
else
|
||||
{
|
||||
//2.通知服务器自己进入空闲状态,取消加热基数
|
||||
OP.DoOperation($"MultiProcessClient.UpdateChamberState", Module, "QuitHeating");
|
||||
r = (bool)DATA.Poll($"MultiProcessClient.IsConnected");
|
||||
if (!r)
|
||||
{
|
||||
EV.PostWarningLog("MultiProcessClient", $"MultiProcessClient disconnect, can not do Operation");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == Result.FAIL || ret == Result.DONE)
|
||||
return false;
|
||||
return ret == Result.RUN;
|
||||
|
@ -1261,6 +1284,25 @@ namespace SicModules.PMs
|
|||
return false;
|
||||
}
|
||||
|
||||
var workenable = SC.GetValue<bool>("System.MultiProcessMode");
|
||||
if (workenable)
|
||||
{
|
||||
//1.确认连接状态
|
||||
var r = (bool)DATA.Poll($"MultiProcessClient.IsConnected");
|
||||
if (!r)
|
||||
{
|
||||
EV.PostWarningLog("MultiProcessClient", $"MultiProcessClient disconnect, can not do Process");
|
||||
return false;
|
||||
}
|
||||
//2.问询能否进行Process流程
|
||||
r = (bool)DATA.Poll($"MultiProcessClient.{Module}.CanEnterProcessNow");
|
||||
if (!r)
|
||||
{
|
||||
EV.PostWarningLog("MultiProcessClient", $"MultiProcessClient reject, can not do Process");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
_preprocessRoutine.Init((string)param[0], (bool)param[1], (bool)param[2]);
|
||||
Result ret = StartRoutine(_preprocessRoutine);
|
||||
if (ret == Result.FAIL || ret == Result.DONE)
|
||||
|
@ -1302,6 +1344,27 @@ namespace SicModules.PMs
|
|||
//StopProcess();
|
||||
}
|
||||
}
|
||||
|
||||
var workenable = SC.GetValue<bool>("System.MultiProcessMode");
|
||||
if (workenable)
|
||||
{
|
||||
//1.确认连接状态
|
||||
var r = (bool)DATA.Poll($"MultiProcessClient.IsConnected");
|
||||
if (!r)
|
||||
{
|
||||
EV.PostWarningLog("MultiProcessClient", $"MultiProcessClient disconnect, can not do Operation");
|
||||
}
|
||||
else
|
||||
{
|
||||
//2.通知服务器自己进入空闲状态,取消加热基数
|
||||
OP.DoOperation($"MultiProcessClient.UpdateChamberState", Module, "QuitProcess");
|
||||
r = (bool)DATA.Poll($"MultiProcessClient.IsConnected");
|
||||
if (!r)
|
||||
{
|
||||
EV.PostWarningLog("MultiProcessClient", $"MultiProcessClient disconnect, can not do Operation");
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -70,14 +70,15 @@
|
|||
<system.serviceModel>
|
||||
<bindings>
|
||||
<netTcpBinding>
|
||||
<binding name="Aitex_netTcpBinding" maxReceivedMessageSize="102400000" receiveTimeout="infinite">
|
||||
<binding name="Aitex_netTcpBinding" maxReceivedMessageSize="102400000" receiveTimeout="infinite">
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="1048576" maxArrayLength="163840000" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
|
||||
<security mode="None">
|
||||
<transport clientCredentialType="None"/>
|
||||
<message clientCredentialType="None"/>
|
||||
</security>
|
||||
</binding>
|
||||
</netTcpBinding>
|
||||
|
||||
</netTcpBinding>
|
||||
</bindings>
|
||||
<services>
|
||||
<service behaviorConfiguration="BasicBehavior" name="Aitex.Core.Account.AccountService">
|
||||
|
@ -104,6 +105,13 @@
|
|||
bindingConfiguration="Aitex_netTcpBinding"
|
||||
contract="MECF.Framework.Common.PLC.IWcfPlcService"
|
||||
name="Client_IWcfPlcService"/>
|
||||
|
||||
<endpoint address="net.tcp://192.168.12.102:9999/MultiProcessService"
|
||||
behaviorConfiguration="EndpointBehavior"
|
||||
binding="netTcpBinding"
|
||||
bindingConfiguration="Aitex_netTcpBinding"
|
||||
contract="MECF.Framework.Common.MultiProcess.ProcessCenter.IMultiProcessService"
|
||||
name="Client_IMultiProcessService"/>
|
||||
</client>
|
||||
<behaviors>
|
||||
<serviceBehaviors>
|
||||
|
@ -121,9 +129,9 @@
|
|||
</behavior>
|
||||
</serviceBehaviors>
|
||||
<endpointBehaviors>
|
||||
<behavior name="EndpointBehavior">
|
||||
<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
|
||||
</behavior>
|
||||
<behavior name="EndpointBehavior">
|
||||
<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
|
||||
</behavior>
|
||||
</endpointBehaviors>
|
||||
</behaviors>
|
||||
</system.serviceModel>
|
||||
|
|
|
@ -24,7 +24,9 @@
|
|||
<config default="false" name="RecipeSaveToDB" description="Recipe文件保存到数据库" max="" min="" paramter="" tag="" unit="" type="Bool" visible="false" />
|
||||
<config default="true" name="IsPMHostSignalTower" description="是否使用PM PLC控制三色灯;如果设定为False,则使用TM PLC控制三色灯" max="" min="" paramter="" tag="" unit="" type="Bool" visible="false" />
|
||||
<config default="false" name="SingleSessionLoginMode" description="是否启用单会话登录模式,即同一个账户同一时间仅允许一个UI登录" max="" min="" paramter="" tag="" unit="" type="Bool" />
|
||||
|
||||
<config default="false" name="MultiProcessMode" visible="false" description="是否启用多机台工艺限制,即限制同一局域网内的机台同时进行工艺的数量" max="" min="" paramter="" tag="" unit="" type="Bool" />
|
||||
<config default="Sic08" name="MachineName" visible="false" description="机台名称" max="" min="" paramter="" tag="" unit="" type="String" />
|
||||
|
||||
<configs name="Scheduler" visible="false">
|
||||
<config default="15" name="WaitLoadTimeOut" description="Wait Load TimeOut" max="1000" min="1" paramter="" tag="" unit="s" type="Double" visible="false" />
|
||||
<config default="2" name="WaferCountBelowWhichStartNewProcessJob" description="Wafer Count Below Which Start New Process Job" max="25" min="1" paramter="" tag="" unit="" type="Integer" visible="false" />
|
||||
|
|
|
@ -30,7 +30,7 @@ namespace SicRT.Instances
|
|||
// aeTemp.Initialize(_address, _enableLog);
|
||||
// QueueDevice(aeTemp);
|
||||
//}
|
||||
|
||||
|
||||
if (SC.GetConfigItem("NSXBreakerII.EnableDevice").BoolValue)
|
||||
{
|
||||
var NSX = new NSXBreakerII("TM", "NSXBreakerII", "NSXBreakerII");
|
||||
|
|
|
@ -24,6 +24,7 @@ using SicRT.Equipments.Systems;
|
|||
using SicModules.PMs.RecipeExecutions;
|
||||
using MECF.Framework.UI.Client.TrayThickness.HistoryData;
|
||||
using MECF.Framework.Common.Aitex.Core.Common.DeviceData;
|
||||
using MECF.Framework.Common.MultiProcess.ProcessCenter;
|
||||
|
||||
namespace SicRT.Instances
|
||||
{
|
||||
|
@ -56,6 +57,7 @@ namespace SicRT.Instances
|
|||
|
||||
ConnectionManager.Instance.Initialize();
|
||||
|
||||
MultiProcessClient.Instance.Initialize();
|
||||
|
||||
string ioProviderPathFile = PathManager.GetCfgDir() + "IoProviderConfig.xml";
|
||||
|
||||
|
|
|
@ -237,6 +237,7 @@
|
|||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
<endpoint address="net.tcp://localhost:8771/QueryDataService" behaviorConfiguration="EndpointBehavior" binding="netTcpBinding" bindingConfiguration="Aitex_netTcpBinding" contract="MECF.Framework.Common.DataCenter.IQueryDataService" name="Client_IQueryDataService" />
|
||||
<endpoint address="net.tcp://localhost:8773/RecipeService" behaviorConfiguration="EndpointBehavior" binding="netTcpBinding" bindingConfiguration="Aitex_netTcpBinding" contract="MECF.Framework.Common.RecipeCenter.IRecipeService" name="Client_IRecipeService" />
|
||||
<endpoint address="net.tcp://localhost:8775/AccountService" behaviorConfiguration="EndpointBehavior" binding="netTcpBinding" bindingConfiguration="Aitex_netTcpBinding" contract="Aitex.Core.Account.IAccountService" name="Client_IAccountService" />
|
||||
|
||||
|
||||
</client>
|
||||
</system.serviceModel>
|
||||
<startup>
|
||||
|
|
|
@ -494,6 +494,7 @@ namespace SicUI.Client
|
|||
public void Reset()
|
||||
{
|
||||
InvokeClient.Instance.Service.DoOperation("System.Reset");
|
||||
|
||||
}
|
||||
|
||||
public void BuzzerOff()
|
||||
|
|
|
@ -1833,6 +1833,20 @@ namespace SicUI.Models.PMs
|
|||
return;
|
||||
}
|
||||
|
||||
//确认同时Process的腔体数量是否达标;若配置中屏蔽此项可立即生效,无需重启
|
||||
//var workenable = (bool)QueryDataClient.Instance.Service.GetConfig("System.MultiProcessMode");
|
||||
//if (workenable)
|
||||
//{
|
||||
// //先发送一次状态
|
||||
// InvokeClient.Instance.Service.DoOperation("MultiProcessClient.UpdateChamberState");
|
||||
|
||||
// var r = QueryDataClient.Instance.Service.GetData($"MultiProcessClient.{Module}.CanEnterProcessNow");
|
||||
// if (r == null || (bool)r == false)
|
||||
// {
|
||||
// DialogBox.ShowError("Can't Enter ProcessIdle because of MultiProcess Limit");
|
||||
// }
|
||||
//}
|
||||
|
||||
//如果加热Enable未打开则返回
|
||||
if (!AllHeatEnable)
|
||||
{
|
||||
|
|
|
@ -847,6 +847,12 @@
|
|||
<ItemGroup>
|
||||
<Resource Include="Resources\Images\find.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\SicRT\SicRT.csproj">
|
||||
<Project>{5EAFA05F-C2C0-40B3-9C8F-46D8559148D0}</Project>
|
||||
<Name>SicRT</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PreBuildEvent>
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue