Commit 3142a26b 张东亮

上料口发送rfid更改

1 个父辈 c1867010
此文件类型无法预览
此文件类型无法预览
此文件类型无法预览
此文件类型无法预览
此文件类型无法预览
此文件的差异被折叠, 点击展开。
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<add key="App_AutoRun" value="1" /> <add key="App_AutoRun" value="1" />
<add key="App_Title" value="料架缓存线" /> <add key="App_Title" value="料架缓存线" />
<!--Server address--> <!--Server address-->
<add key="http.server" value="http://10.85.162.124/myproject/" /> <add key="http.server" value="http://10.21.69.201/smdbox/" />
<!--storeType--> <!--storeType-->
<add key="store_count" value="1" /> <add key="store_count" value="1" />
<!--start one store config--> <!--start one store config-->
...@@ -19,14 +19,17 @@ ...@@ -19,14 +19,17 @@
<add key="DIMS" value="60" /> <add key="DIMS" value="60" />
<add key="DOMS" value="300" /> <add key="DOMS" value="300" />
<!--AGV调度服务器地址--> <!--AGV调度服务器地址-->
<add key="AgvServerIp" value="10.85.162.40" /> <add key="AgvServerIp" value="127.0.0.1" />
<add key="AgvServerPort" value="9501" />
<!--是否调试状态--> <!--是否调试状态-->
<add key="IsInDebug" value="0" /> <add key="IsInDebug" value="0" />
<add key ="Agv_Log_Open" value ="1"/> <add key="Agv_Log_Open" value="1" />
<!--RFID服务端端口-->
<add key="RfidServer_Port" value="13001" />
</appSettings> </appSettings>
<log4net> <log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="logs/vmiLine.log" /> <file type="log4net.Util.PatternString" value="logs/Line.log" />
<param name="Encoding" value="UTF-8" /> <param name="Encoding" value="UTF-8" />
<appendToFile value="true" /> <appendToFile value="true" />
<param name="MaxSizeRollBackups" value="30" /> <param name="MaxSizeRollBackups" value="30" />
...@@ -37,17 +40,16 @@ ...@@ -37,17 +40,16 @@
</layout> </layout>
</appender> </appender>
<appender name="TheRFID" type="log4net.Appender.RollingFileAppender"> <appender name="TheRFID" type="log4net.Appender.RollingFileAppender">
<file value="logs/TheRFID.log"/> <file value="logs/TheRFID.log" />
<param name="Encoding" value="UTF-8" /> <param name="Encoding" value="UTF-8" />
<appendToFile value="true"/> <appendToFile value="true" />
<rollingStyle value="Date"/> <rollingStyle value="Date" />
<param name="MaxSizeRollBackups" value="30" /> <param name="MaxSizeRollBackups" value="30" />
<datePattern value="yyyy-MM-dd"/> <datePattern value="yyyy-MM-dd" />
<layout type="log4net.Layout.PatternLayout"> <layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t]%-5p %m%n" /> <conversionPattern value="[%date][%t]%-5p %m%n" />
</layout> </layout>
</appender> </appender>
<logger name="RollingLogFileAppender"> <logger name="RollingLogFileAppender">
<level value="Info" /> <level value="Info" />
<appender-ref ref="RollingLogFileAppender" /> <appender-ref ref="RollingLogFileAppender" />
...@@ -56,13 +58,13 @@ ...@@ -56,13 +58,13 @@
<level value="Error" /> <level value="Error" />
<appender-ref ref="TheRFID" /> <appender-ref ref="TheRFID" />
</logger> </logger>
<root> <root>
<level value="Info" /> <level value="Info" />
<appender-ref ref="RollingLogFileAppender" /> <appender-ref ref="RollingLogFileAppender" />
</root> </root>
</log4net> </log4net>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup> </startup>
<system.web> <system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider"> <membership defaultProvider="ClientAuthenticationMembershipProvider">
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OnlineStore.ACSingleStore</RootNamespace> <RootNamespace>OnlineStore.ACSingleStore</RootNamespace>
<AssemblyName>CacheLineClient</AssemblyName> <AssemblyName>CacheLineClient</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
<PublishUrl>publish\</PublishUrl> <PublishUrl>publish\</PublishUrl>
......
...@@ -217,9 +217,9 @@ ...@@ -217,9 +217,9 @@
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAHBwcAAAAAABTU1QAqqqrAP///wAAAAALWVxdHnl8fTmGiIlQio2NXouN AAAAAAAAAAAAAAAAAAAAAAAAHBwcAAAAAABTU1QAqqqrAP///wAAAAALWVxdHnl8fTmGiIlQio2NXouN
jl+KjY5gio2OYImLjF+ChIVSbnFyPkVISCcAAAAYAAAADwAAAA4AAAAQAAAAEQAAABIAAAASAAAAEgAA jl+KjY5gio2OYImLjF+ChIVSbnFyPkVISCcAAAAYAAAADwAAAA4AAAAQAAAAEQAAABIAAAAgvAAAEgAA
ABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAASAAAAEgAAABEAAAAQAAAADwAAAA4AAAAMAAAACwAA ABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAAgvAAAEgAAABEAAAAQAAAADwAAAA4AAAAMAAAACwAA
AAsAAAAKAAAACQAAAAgAAAAHAAAABgAAAAYAAAAFAAAABAAAAAQAAAADAAAAAwAAAAIAAAACAAAAAgAA AAgvAAAKAAAACQAAAAgAAAAHAAAABgAAAAYAAAAFAAAABAAAAAQAAAADAAAAAwAAAAIAAAACAAAAAgAA
AAEAAAABAAAAAQEBAQEAAAAAi4qJAIKCfwAAAAADa2ppHYKBfk+KiYeTmZmX0qippvS8vbv/zcrI/87A AAEAAAABAAAAAQEBAQEAAAAAi4qJAIKCfwAAAAADa2ppHYKBfk+KiYeTmZmX0qippvS8vbv/zcrI/87A
vP+9m5f/oGhi/4pDPP+AMSr/gTMs/8KopP/HyMX/q5OP/6yalv5+f33MCAgHigAAAFwAAAAbAAAAAAAA vP+9m5f/oGhi/4pDPP+AMSr/gTMs/8KopP/HyMX/q5OP/6yalv5+f33MCAgHigAAAFwAAAAbAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
...@@ -228,7 +228,7 @@ ...@@ -228,7 +228,7 @@
Fw54e3w2pqmqb8XFxqfPysrO2tHR6NjKyPPPurj3yrKw98qysPfKsrD3zbi199fHxfPXzczpysTE0bm4 Fw54e3w2pqmqb8XFxqfPysrO2tHR6NjKyPPPurj3yrKw98qysPfKsrD3zbi199fHxfPXzczpysTE0bm4
ua+Nj5CATU9PUwUGBjYAAAAtAAAALgAAAC8AAAAwAAAAMAAAADEAAAAxAAAAMQAAADEAAAAxAAAAMQAA ua+Nj5CATU9PUwUGBjYAAAAtAAAALgAAAC8AAAAwAAAAMAAAADEAAAAxAAAAMQAAADEAAAAxAAAAMQAA
ADAAAAAvAAAALgAAAC0AAAArAAAAKQAAACcAAAAlAAAAIwAAACEAAAAeAAAAHAAAABoAAAAYAAAAFgAA ADAAAAAvAAAALgAAAC0AAAArAAAAKQAAACcAAAAlAAAAIwAAACEAAAAeAAAAHAAAABoAAAAYAAAAFgAA
ABQAAAATAAAAEQAAAA8AAAAOAAAADAAAAAsAAAAKAAAACAAAAAcAAAAEAAAAAQAAAARNTEsaaWlnTH59 ABQAAAATAAAAEQAAAA8AAAAOAAAADAAAAAgvAAAKAAAACAAAAAcAAAAEAAAAAQAAAARNTEsaaWlnTH59
e5OQkI7Spqak9Lq7uf/Mysf/0MPA/7+fm/+ia2b/i0Q9/4I1Lv+BNC3/gzYw/4I1Lv+CNS7/v6Of/8TE e5OQkI7Spqak9Lq7uf/Mysf/0MPA/7+fm/+ia2b/i0Q9/4I1Lv+BNC3/gzYw/4I1Lv+CNS7/v6Of/8TE
wv96Uk7/bTs2/7Oppvtqa2m5AAAAggAAAG4AAAAyAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA wv96Uk7/bTs2/7Oppvtqa2m5AAAAggAAAG4AAAAyAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
...@@ -236,7 +236,7 @@ ...@@ -236,7 +236,7 @@
AAAAAAAAEBAQAAAAAABlZWYA////AEhJShqanJ1cxsbHqtjPz+PQubf6vpeS/6dwa/+YWVL/kU1G/4xF AAAAAAAAEBAQAAAAAABlZWYA////AEhJShqanJ1cxsbHqtjPz+PQubf6vpeS/6dwa/+YWVL/kU1G/4xF
Pv+KQTr/ikE6/4pBOv+MQzz/kEtD/5dWT/+kamX/uY6K/8qwrfvPxMTosK+vvGttboMXFxhVAAAARQAA Pv+KQTr/ikE6/4pBOv+MQzz/kEtD/5dWT/+kamX/uY6K/8qwrfvPxMTosK+vvGttboMXFxhVAAAARQAA
AEUAAABGAAAARwAAAEcAAABHAAAARwAAAEcAAABHAAAARgAAAEYAAABGAAAARQAAAEQAAABCAAAAQAAA AEUAAABGAAAARwAAAEcAAABHAAAARwAAAEcAAABHAAAARgAAAEYAAABGAAAARQAAAEQAAABCAAAAQAAA
AD4AAAA7AAAAOQAAADYAAAA0AAAAMQAAAC8AAAAsAAAAKgAAACcAAAAkAAAAIgAAAB8AAAAcAAAAGgAA AD4AAAA7AAAAOQAAADYAAAA0AAAAMQAAAC8AAAAgvAAAKgAAACcAAAAkAAAAIgAAAB8AAAAcAAAAGgAA
ABYAAAARAAAAETk4NyRdXFtPdHNyj4eGhc2enpzztbWz/8jGw//MwL3/vqCc/6FtZ/+MR0D/gjUu/4Ez ABYAAAARAAAAETk4NyRdXFtPdHNyj4eGhc2enpzztbWz/8jGw//MwL3/vqCc/6FtZ/+MR0D/gjUu/4Ez
Lf+FOTL/iD85/4xEPv+LQz3/hTs0/4I1Lv+9oZz/xMTC/35ZVf9VGhX/f1VR/7WvrPVUVFOlAAAAeQAA Lf+FOTL/iD85/4xEPv+LQz3/hTs0/4I1Lv+9oZz/xMTC/35ZVf9VGhX/f1VR/7WvrPVUVFOlAAAAeQAA
AHMAAABIAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AHMAAABIAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
...@@ -244,7 +244,7 @@ ...@@ -244,7 +244,7 @@
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAoKCgA////ADU2NxScn59f0M7Ov9nK AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAoKCgA////ADU2NxScn59f0M7Ov9nK
yPW/mJX/nWBa/4xEPP+GOzP/hjoy/4c7NP+HPDX/hz01/4g9Nf+IPTX/iD01/4c8Nf+HPDT/hjs0/4U5 yPW/mJX/nWBa/4xEPP+GOzP/hjoy/4c7NP+HPDX/hz01/4g9Nf+IPTX/iD01/4c8Nf+HPDT/hjs0/4U5
Mv+FOTL/iUA5/5hYUf+3jIf/0L2797u4uM9pa2uLDAwMWAAAAEsAAABMAAAATQAAAE0AAABNAAAATQAA Mv+FOTL/iUA5/5hYUf+3jIf/0L2797u4uM9pa2uLDAwMWAAAAEsAAABMAAAATQAAAE0AAABNAAAATQAA
AE0AAABMAAAATAAAAEwAAABMAAAATAAAAEsAAABJAAAASAAAAEYAAABEAAAAQQAAAD8AAAA9AAAAOgAA AE0AAABMAAAATAAAAEwAAABMAAAATAAAAEsAAABJAAAAgvAAAEYAAABEAAAAQQAAAD8AAAA9AAAAOgAA
ADgAAAA1AAAAMwAAADAAAAAtAAAAKQAAACQAAAAjIyMjMk1NTFlpaWeVfn170ZOTkvOqq6n/vry6/8S7 ADgAAAA1AAAAMwAAADAAAAAtAAAAKQAAACQAAAAjIyMjMk1NTFlpaWeVfn170ZOTkvOqq6n/vry6/8S7
t/+4nZn/n21o/4lGQP9/NC3/fjIr/4I3Mf+HPjf/i0Q9/49JQ/+STkj/lVNN/5JOSP+IPzj/gjUu/7qc t/+4nZn/n21o/4lGQP9/NC3/fjIr/4I3Mf+HPjf/i0Q9/49JQ/+STkj/lVNN/5JOSP+IPzj/gjUu/7qc
l//Dw8H/fVlV/1YcF/9YHxr/kXBr/6+tquo8PDuPAAAAbgAAAG8AAABYAAAAIwAAAAIAAAAAAAAAAAAA l//Dw8H/fVlV/1YcF/9YHxr/kXBr/6+tquo8PDuPAAAAbgAAAG8AAABYAAAAIwAAAAIAAAAAAAAAAAAA
...@@ -253,10 +253,10 @@ ...@@ -253,10 +253,10 @@
BgAAAAAAcXFyAAAAAAWEhoZDycjIsNfHxvO3jIf/lFFK/4c8Nf+HPDT/iD42/4g/N/+JPzf/iT83/4k/ BgAAAAAAcXFyAAAAAAWEhoZDycjIsNfHxvO3jIf/lFFK/4c8Nf+HPDT/iD42/4g/N/+JPzf/iT83/4k/
N/+JPzf/iD83/4g+N/+IPjf/iD43/4g+N/+IPjb/iD42/4g9Nv+IPTX/hjsz/4Y6Mv+PSUL/r314/8y4 N/+JPzf/iD83/4g+N/+IPjf/iD43/4g+N/+IPjb/iD42/4g9Nv+IPTX/hjsz/4Y6Mv+PSUL/r314/8y4
tvavra3ER0lJdwAAAE8AAABMAAAATQAAAE0AAABNAAAATQAAAE0AAABNAAAATQAAAE0AAABNAAAATAAA tvavra3ER0lJdwAAAE8AAABMAAAATQAAAE0AAABNAAAATQAAAE0AAABNAAAATQAAAE0AAABNAAAATAAA
AEsAAABKAAAASAAAAEYAAABEAAAAQgAAAEAAAAA+AAAAOwAAADkAAAA1AAAAMAAAAC8dHRw+Pz8+YF9e AEsAAABKAAAAgvAAAEYAAABEAAAAQgAAAEAAAAA+AAAAOwAAADkAAAA1AAAAMAAAAC8dHRw+Pz8+YF9e
XZh1dXPRi4uJ86ChoP+0s7H/u7Kv/7KZlf+abGf/hUZA/3ozLP95MCn/fjUv/4I7Nf+HQTv/i0dB/49M XZh1dXPRi4uJ86ChoP+0s7H/u7Kv/7KZlf+abGf/hUZA/3ozLP95MCn/fjUv/4I7Nf+HQTv/i0dB/49M
Rf+RT0n/kk9J/5NQSv+VVE7/k1BK/4lAOv+BNCz/tI+L/8bHxf+FZGD/Vx0Y/1ggGv9dJSD/pIyH/6Sk Rf+RT0n/kk9J/5NQSv+VVE7/k1BK/4lAOv+BNCz/tI+L/8bHxf+FZGD/Vx0Y/1ggGv9dJSD/pIyH/6Sk
ot0pKSh9AAAAZQAAAGYAAABdAAAANQAAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ot0pKSh9AAAAZQAAAGYAAABdAAAANQAAAAgvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoKCgAAAAAAP///wAyMzQVq62teNnS0uHDn5v/lVNM/4c8 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoKCgAAAAAAP///wAyMzQVq62teNnS0uHDn5v/lVNM/4c8
Nf+IPjb/iUA4/4pAOP+JQDj/iUA4/4lAOP+JQDj/iT84/4lAOP+JPzj/iT84/4k/OP+JPzj/iT83/4k/ Nf+IPjb/iUA4/4pAOP+JQDj/iUA4/4lAOP+JQDj/iT84/4lAOP+JPzj/iT84/4k/OP+JPzj/iT83/4k/
...@@ -278,7 +278,7 @@ ...@@ -278,7 +278,7 @@
AAAAAAAAAAAAAAAAAAAAAAAAAAAAADU1NgASEhIAAAAAAHl6ezzU09PHz7Wy/5hXUP+IPjb/ikE5/4tC AAAAAAAAAAAAAAAAAAAAAAAAAAAAADU1NgASEhIAAAAAAHl6ezzU09PHz7Wy/5hXUP+IPjb/ikE5/4tC
Ov+LQjr/i0I6/4tCOv+LQjr/i0I6/4tCOv+LQjr/i0I6/4pCOv+KQTr/ikI6/4tBOv+KQTn/ikE5/4pB Ov+LQjr/i0I6/4tCOv+LQjr/i0I6/4tCOv+LQjr/i0I6/4pCOv+KQTr/ikI6/4tBOv+KQTn/ikE5/4pB
Of+KQTn/ikE5/4pAOf+KQDn/iUA4/4lAOP+JPzj/iT84/4k/OP+JPzf/hzs0/5BLRP/Bnpr/vLm50jw9 Of+KQTn/ikE5/4pAOf+KQDn/iUA4/4lAOP+JPzj/iT84/4k/OP+JPzf/hzs0/5BLRP/Bnpr/vLm50jw9
PnEAAABMAAAATQAAAE0AAABNAAAATQAAAE0AAABNAAAATQAAAE0AAABLAAAASAAAAEcPDw9SLS0sb0tL PnEAAABMAAAATQAAAE0AAABNAAAATQAAAE0AAABNAAAATQAAAE0AAABLAAAAgvAAAEcPDw9SLS0sb0tL
SqFgYF7SdHRy84iIhv+ampj/o56b/56Mif+LZ2P/d0I9/2wuKP9rKiT/bi0n/3IzLf92ODL/ez04/39C SqFgYF7SdHRy84iIhv+ampj/o56b/56Mif+LZ2P/d0I9/2wuKP9rKiT/bi0n/3IzLf92ODL/ez04/39C
Pf+CRkD/hEhC/4VHQf+ERD7/gkA6/4A7Nf9/ODH/fzUu/380Lf+AMyz/gTMs/4Q4Mf+MRT7/kU1H/4pC Pf+CRkD/hEhC/4VHQf+ERD7/gkA6/4A7Nf9/ODH/fzUu/380Lf+AMyz/gTMs/4Q4Mf+MRT7/kU1H/4pC
O/+BMyz/sYiD/9PV0v+TeHT/Vx4Z/1kgG/9ZIRv/WSAb/1cdGP+HYFv/ura0+WVlZJgAAABOAAAATAAA O/+BMyz/sYiD/9PV0v+TeHT/Vx4Z/1kgG/9ZIRv/WSAb/1cdGP+HYFv/ura0+WVlZJgAAABOAAAATAAA
...@@ -358,7 +358,7 @@ ...@@ -358,7 +358,7 @@
Pf+KQTn/oWZg/8OysP9mPTn/XSgk/10pJf9dKCP/XCYi/1slIf9aJSD/WiQf/1okH/9bJB//WyQf/1wk Pf+KQTn/oWZg/8OysP9mPTn/XSgk/10pJf9dKCP/XCYi/1slIf9aJSD/WiQf/1okH/9bJB//WyQf/1wk
H/9dJSD/XiUg/18lIP9gJiH/YSYh/2InIf9jJyL/ZCgi/2YoI/9nKSP/aCkk/2oqJP9rKiX/biwm/3Qu H/9dJSD/XiUg/18lIP9gJiH/YSYh/2InIf9jJyL/ZCgi/2YoI/9nKSP/aCkk/2oqJP9rKiX/biwm/3Qu
KP97MSr/fzIr/4EzLP+BMyz/gTMs/4EzLP+BMyz/gTMs/4I1Lv+JQTr/kU1G/41GQP+CNS7/m2Fa/87M KP97MSr/fzIr/4EzLP+BMyz/gTMs/4EzLP+BMyz/gTMs/4I1Lv+JQTr/kU1G/41GQP+CNS7/m2Fa/87M
yf+vn5z/XSch/1kgG/9ZIRv/WSEb/1khG/9XHhj/dEhD/6ejoe5SUlFHAAAAEwAAABQAAAASAAAAEAAA yf+vn5z/XSch/1kgG/9ZIRv/WSEb/1khG/9XHhj/dEhD/6ejoe5SUlFHAAAAEwAAABQAAAAgvAAAEAAA
AA4AAAAMAAAACgAAAAgAAAAGAAAABAAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AA4AAAAMAAAACgAAAAgAAAAGAAAABAAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAPj4+AAAAAAm/wMCb0Lez/5NORv+RSkL/kEpE/6BbP/+skSf/g48V/3ts AAAAAAAAAAAAAAAAAAAAAAAAPj4+AAAAAAm/wMCb0Lez/5NORv+RSkL/kEpE/6BbP/+skSf/g48V/3ts
Lv+QT0H/k0xF/5NMRf+OWET/eKxk/2mzV/9qt2D/b7ts/12dPf9usmL/dcB3/5CKUP/Yqnz/06dq/8eU Lv+QT0H/k0xF/5NMRf+OWET/eKxk/2mzV/9qt2D/b7ts/12dPf9usmL/dcB3/5CKUP/Yqnz/06dq/8eU
......
...@@ -87,7 +87,7 @@ ...@@ -87,7 +87,7 @@
// //
this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip1; this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip1;
this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon"))); this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
this.notifyIcon1.Text = "VMI流水线客户端"; this.notifyIcon1.Text = "料架缓存客户端";
this.notifyIcon1.Visible = true; this.notifyIcon1.Visible = true;
// //
// contextMenuStrip1 // contextMenuStrip1
......
...@@ -369,7 +369,7 @@ namespace OnlineStore.VMILineClient ...@@ -369,7 +369,7 @@ namespace OnlineStore.VMILineClient
private void btnNeedLeave_Click(object sender, EventArgs e) private void btnNeedLeave_Click(object sender, EventArgs e)
{ {
AgvClient.NeedLeave(txtname.Text, txtShelfId.Text); AgvClient.NeedLeave(txtname.Text, txtShelfId.Text);
// AgvClient.SetStatus(txtname.Text, txtShelfId.Text,Asa.ClientAction.NeedLeave); // AgvClient.SetStatus(txtname.Text, txtShelfId.Text,Agv.ClientAction.NeedLeave);
} }
private void btnNeedEntry_Click(object sender, EventArgs e) private void btnNeedEntry_Click(object sender, EventArgs e)
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace OnlineStore.VMILineClient.Properties { namespace OnlineStore.ACSingleStore.Properties {
using System; using System;
...@@ -19,7 +19,7 @@ namespace OnlineStore.VMILineClient.Properties { ...@@ -19,7 +19,7 @@ namespace OnlineStore.VMILineClient.Properties {
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。 // (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources { internal class Resources {
...@@ -39,7 +39,7 @@ namespace OnlineStore.VMILineClient.Properties { ...@@ -39,7 +39,7 @@ namespace OnlineStore.VMILineClient.Properties {
internal static global::System.Resources.ResourceManager ResourceManager { internal static global::System.Resources.ResourceManager ResourceManager {
get { get {
if (object.ReferenceEquals(resourceMan, null)) { if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OnlineStore.VMILineClient.Properties.Resources", typeof(Resources).Assembly); global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OnlineStore.ACSingleStore.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp; resourceMan = temp;
} }
return resourceMan; return resourceMan;
......
...@@ -8,11 +8,11 @@ ...@@ -8,11 +8,11 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace OnlineStore.VMILineClient.Properties { namespace OnlineStore.ACSingleStore.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.7.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
......
...@@ -33,7 +33,7 @@ namespace OnlineStore.Common ...@@ -33,7 +33,7 @@ namespace OnlineStore.Common
public static string IsInDebug = "IsInDebug"; public static string IsInDebug = "IsInDebug";
public static string AgvServerIp = "AgvServerIp"; public static string AgvServerIp = "AgvServerIp";
public static string AgvServerPort = "AgvServerPort";
public static string Agv_Log_Open = "Agv_Log_Open"; public static string Agv_Log_Open = "Agv_Log_Open";
public static string RfidServer_Port = "RfidServer_Port"; public static string RfidServer_Port = "RfidServer_Port";
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OnlineStore.DeviceLibrary</RootNamespace> <RootNamespace>OnlineStore.DeviceLibrary</RootNamespace>
<AssemblyName>DeviceLibrary</AssemblyName> <AssemblyName>DeviceLibrary</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
...@@ -36,20 +36,20 @@ ...@@ -36,20 +36,20 @@
<Prefer32Bit>false</Prefer32Bit> <Prefer32Bit>false</Prefer32Bit>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Asa.IOModule.AIOBOX"> <Reference Include="Agv">
<HintPath>..\..\dll\Asa.IOModule.AIOBOX.dll</HintPath> <HintPath>..\..\dll\Agv.dll</HintPath>
</Reference> </Reference>
<Reference Include="Asa.RFID"> <Reference Include="Agv.Client">
<HintPath>..\..\dll\Asa.RFID.dll</HintPath> <HintPath>..\..\dll\Agv.Client.dll</HintPath>
</Reference> </Reference>
<Reference Include="Client"> <Reference Include="Asa.IOModule.AIOBOX">
<HintPath>..\..\dll\Client.dll</HintPath> <HintPath>..\..\dll\Asa.IOModule.AIOBOX.dll</HintPath>
</Reference> </Reference>
<Reference Include="CodeLibrary"> <Reference Include="Asa.RFID.HiStation">
<HintPath>..\..\..\RC32-SZBOSCH-ACSingleStore\dll\CodeLibrary.dll</HintPath> <HintPath>..\..\dll\Asa.RFID.HiStation.dll</HintPath>
</Reference> </Reference>
<Reference Include="halcondotnet"> <Reference Include="Asa.RFID.IReadAll">
<HintPath>..\..\..\RC32-SZBOSCH-ACSingleStore\dll\halcondotnet.dll</HintPath> <HintPath>..\..\dll\Asa.RFID.IReadAll.dll</HintPath>
</Reference> </Reference>
<Reference Include="HFReader9CSharp, Version=1.0.0.0, Culture=neutral, processorArchitecture=AMD64"> <Reference Include="HFReader9CSharp, Version=1.0.0.0, Culture=neutral, processorArchitecture=AMD64">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
......
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID, 类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID,
PRO,IO模块对应的DI数量,IO_DILength,10.85.162.17#16,,,,,,, PRO,IO模块对应的DI数量,IO_DILength,10.21.69.168#16,,,,,,,
PRO,IO模块对应的DO数量,IO_DOLength,10.85.162.17#16,,,,,,, PRO,IO模块对应的DO数量,IO_DOLength,10.21.69.168#16,,,,,,,
PRO,IO模块IP,PRO_AOI_IP_1,10.85.162.17,,,,,,, PRO,IO模块IP,PRO_AOI_IP_1,10.21.69.168,,,,,,,
,,,,,,,,,, ,,,,,,,,,,
DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0, DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0,
DI,放行按钮,Pass_BTN,1,PRO_AOI_IP_1,0,放行按钮,X02,DI-02,0, DI,放行按钮,Pass_BTN,1,PRO_AOI_IP_1,0,放行按钮,X02,DI-02,0,
...@@ -26,6 +26,6 @@ PRO,L1线入口节点名称,L1_In_AgvName,A2,,,,,,, ...@@ -26,6 +26,6 @@ PRO,L1线入口节点名称,L1_In_AgvName,A2,,,,,,,
PRO,L1线出口节点名称,L1_Out_AgvName,A1,,,,,,, PRO,L1线出口节点名称,L1_Out_AgvName,A1,,,,,,,
PRO,L2线入口节点名称,L2_In_AgvName,A4,,,,,,, PRO,L2线入口节点名称,L2_In_AgvName,A4,,,,,,,
PRO,L2线出口节点名称,L2_Out_AgvName,A3,,,,,,, PRO,L2线出口节点名称,L2_Out_AgvName,A3,,,,,,,
PRO,L1线出口RFIDIP,L1_Out_RFIDIP,192.168.103.108,,,,,, , PRO,L1空料串线出口RFIDIP,L1_Out_RFIDIP,10.21.69.1,,,,,, ,
PRO,L2线出口RFIDIP,L2_Out_RFIDIP,192.168.103.107,,,,,, , PRO,L2上料线出口RFIDIP,L2_Out_RFIDIP,10.21.69.46,,,,,, ,
PRO,休眠秒数(秒),SleepSeconds,40,,,,,,, PRO,休眠秒数(秒),SleepSeconds,40,,,,,,,
using Asa.RFID; 
using OnlineStore.Common; using OnlineStore.Common;
using System; using System;
using System.Collections.Concurrent; using System.Collections.Concurrent;
...@@ -11,10 +11,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -11,10 +11,10 @@ namespace OnlineStore.DeviceLibrary
{ {
public class RFIDManager public class RFIDManager
{ {
private static ReadAll readAll =new ReadAll ("TheRFID"); private static Asa.RFID.ReadAll readAll =new Asa.RFID.ReadAll ("TheRFID");
private static bool IsOpen = false; private static bool IsOpen = false;
// private static ConcurrentDictionary<string, string> LastRfidMap = new ConcurrentDictionary<string, string>(); // private static ConcurrentDictionary<string, string> LastRfidMap = new ConcurrentDictionary<string, string>();
public static void Open(string[] iparray) public static void Open()
{ {
if (IsOpen) if (IsOpen)
{ {
...@@ -27,7 +27,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -27,7 +27,7 @@ namespace OnlineStore.DeviceLibrary
{ {
port = 13001; port = 13001;
} }
// readAll.Received += ReadAll_Received; //readAll.Received += ReadAll_Received;
// readAll.Log += ReadAll_Log; // readAll.Log += ReadAll_Log;
LogUtil.info("RFID Server Open,port=" + port); LogUtil.info("RFID Server Open,port=" + port);
readAll.Start(port); readAll.Start(port);
......
 
using Asa; using Agv;
using OnlineStore.Common; using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary; using OnlineStore.LoadCSVLibrary;
using System; using System;
...@@ -78,8 +78,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -78,8 +78,7 @@ namespace OnlineStore.DeviceLibrary
// { // {
//} //}
AgvClient.SetCancelState(false); RFIDManager.Open();
RFIDManager.Open(new string[] { Config.L1_Out_RFIDIP, Config.L2_Out_RFIDIP });
runStatus = RunStatus.HomeMoving; runStatus = RunStatus.HomeMoving;
MoveInfo.NewMove(LineMoveType.ReturnHome); MoveInfo.NewMove(LineMoveType.ReturnHome);
ReturnHome(); ReturnHome();
...@@ -176,7 +175,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -176,7 +175,6 @@ namespace OnlineStore.DeviceLibrary
WarnMsg = ""; WarnMsg = "";
RFIDManager.Close(); RFIDManager.Close();
AgvClient.SetCancelState(true);
mainTimer.Enabled = false; mainTimer.Enabled = false;
serverConnectTimer.Enabled = false; serverConnectTimer.Enabled = false;
StopMove(); StopMove();
...@@ -246,9 +244,17 @@ namespace OnlineStore.DeviceLibrary ...@@ -246,9 +244,17 @@ namespace OnlineStore.DeviceLibrary
} }
else if (runStatus.Equals(RunStatus.Runing)) else if (runStatus.Equals(RunStatus.Runing))
{ {
LoadLineTimerProcess(); if(IsDebug)
{
AgvClient.SetCancelState(true);
}
else
{
AgvClient.SetCancelState(false);
LoadLineTimerProcess();
EmptyLineTimerProcess();
}
EmptyLineTimerProcess();
LoadAreaTimerProcess(); LoadAreaTimerProcess();
...@@ -324,8 +330,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -324,8 +330,8 @@ namespace OnlineStore.DeviceLibrary
else if (span1.TotalMilliseconds > StopDownMS) else if (span1.TotalMilliseconds > StopDownMS)
{ {
il1_outstopCheckWarch.Stop(); il1_outstopCheckWarch.Stop();
ClientAction currA = AgvClient.GetAction(Config.L1_Out_AgvName); Agv.ClientAction currA = AgvClient.GetAction(Config.L1_Out_AgvName);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
if (IOManager.IOValue(IO_Type.L1_OutStopDown).Equals(IO_VALUE.HIGH)) if (IOManager.IOValue(IO_Type.L1_OutStopDown).Equals(IO_VALUE.HIGH))
{ {
...@@ -335,13 +341,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -335,13 +341,21 @@ namespace OnlineStore.DeviceLibrary
} }
//如果入口无料架即可进入 //如果入口无料架即可进入
if (IOManager.IOValue(IO_Type.L1_InCheck).Equals(IO_VALUE.LOW)) if (IOManager.IOValue(IO_Type.L1_InCheck).Equals(IO_VALUE.LOW) && AgvClient.GetAction(Config.L1_In_AgvName).Equals(ClientAction.None))
{ {
AgvClient.NeedEnter(Config.L1_In_AgvName, ""); AgvClient.NeedEnter(Config.L1_In_AgvName, "");
}else }else if(IOManager.IOValue(IO_Type.L1_InCheck).Equals(IO_VALUE.HIGH) && AgvClient.GetAction(Config.L1_In_AgvName).Equals(ClientAction.NeedEnter))
{ {
AgvClient.SetToNone(Config.L1_In_AgvName, ""); AgvClient.SetToNone(Config.L1_In_AgvName, "");
} }
//如果是出口无料架,NeedLeave状态,改为None
if ((IOManager.IOValue(IO_Type.L1_OutCheck).Equals(IO_VALUE.LOW) || LastL1OutShelfId.Equals("000")) &&
AgvClient.GetAction(Config.L1_Out_AgvName).Equals(ClientAction.NeedLeave))
{
il1_outstopCheckWarch.Stop();
LogUtil.info(" 空料串线体出口无料架/rfid未读到,更改[" + Config.L1_Out_AgvName + "] 状态[None] ");
AgvClient.SetToNone(Config.L1_Out_AgvName, "");
}
} }
private DateTime il2_lastCallAgvTime = DateTime.Now.AddMinutes(-5); private DateTime il2_lastCallAgvTime = DateTime.Now.AddMinutes(-5);
private Stopwatch il2_outstopCheckWarch = new Stopwatch(); private Stopwatch il2_outstopCheckWarch = new Stopwatch();
...@@ -381,8 +395,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -381,8 +395,8 @@ namespace OnlineStore.DeviceLibrary
{ {
il2_lastCallAgvTime = DateTime.Now; il2_lastCallAgvTime = DateTime.Now;
LogUtil.info(" 上料线体出口有料架" + LastL1OutShelfId + ",呼叫agv小车[" + Config.L2_Out_AgvName + "] [NeedLeave] "); LogUtil.info(" 上料线体出口有料架" + LastL2OutShelfId + ",呼叫agv小车[" + Config.L2_Out_AgvName + "] [NeedLeave] ");
AgvClient.NeedLeave(Config.L2_Out_AgvName, LastL1OutShelfId); AgvClient.NeedLeave(Config.L2_Out_AgvName, LastL2OutShelfId);
} }
} }
} }
...@@ -399,19 +413,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -399,19 +413,20 @@ namespace OnlineStore.DeviceLibrary
} }
} }
//如果入口无料架即可进入 //如果入口无料架即可进入
if (IOManager.IOValue(IO_Type.L2_InCheck).Equals(IO_VALUE.LOW)) if (IOManager.IOValue(IO_Type.L2_InCheck).Equals(IO_VALUE.LOW) && AgvClient.GetAction(Config.L2_In_AgvName).Equals(ClientAction.None))
{ {
AgvClient.NeedEnter(Config.L2_In_AgvName, ""); AgvClient.NeedEnter(Config.L2_In_AgvName, "");
} }
else else if(IOManager.IOValue(IO_Type.L2_InCheck).Equals(IO_VALUE.HIGH) && AgvClient.GetAction(Config.L2_In_AgvName).Equals(ClientAction.NeedEnter))
{ {
AgvClient.SetToNone(Config.L2_In_AgvName, ""); AgvClient.SetToNone(Config.L2_In_AgvName, "");
} }
//如果是出口无料架,NeedLeave状态,改为None //如果是出口无料架,NeedLeave状态,改为None
if (IOManager.IOValue(IO_Type.L2_OutCheck).Equals(IO_VALUE.LOW) && AgvClient.GetAction(Config.L2_Out_AgvName).Equals(ClientAction.NeedLeave)) if ((IOManager.IOValue(IO_Type.L2_OutCheck).Equals(IO_VALUE.LOW) || LastL2OutShelfId.Equals("000")) &&
AgvClient.GetAction(Config.L2_Out_AgvName).Equals(ClientAction.NeedLeave))
{ {
il2_outstopCheckWarch.Stop(); il2_outstopCheckWarch.Stop();
LogUtil.info(" 上料线体出口无料架 ,更改[" + Config.L2_Out_AgvName + "] 状态[None] "); LogUtil.info(" 上料线体出口无料架/rfid未读到,更改[" + Config.L2_Out_AgvName + "] 状态[None] ");
AgvClient.SetToNone(Config.L2_Out_AgvName, "" ); AgvClient.SetToNone(Config.L2_Out_AgvName, "" );
} }
} }
...@@ -421,9 +436,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -421,9 +436,9 @@ namespace OnlineStore.DeviceLibrary
private void LoadAreaTimerProcess() private void LoadAreaTimerProcess()
{ {
//人工取料 //人工取料
if (IOManager.IOValue(IO_Type.L2_LoadSig).Equals(IO_VALUE.HIGH)) if (IOManager.IOValue(IO_Type.L2_LoadSig).Equals(IO_VALUE.HIGH) && IOManager.IOValue(IO_Type.Pass_BTN).Equals(IO_VALUE.HIGH))
{ {
StopIOMove(IO_Type.Pass_BTN,1500); StopIOMove(IO_Type.L2_LoadStopDown, 1500);
//if (IOManager.IOValue(IO_Type.L1_OutCheck).Equals(IO_VALUE.HIGH) && IOManager.IOValue(IO_Type.L2_InCheck).Equals(IO_VALUE.LOW)) //if (IOManager.IOValue(IO_Type.L1_OutCheck).Equals(IO_VALUE.HIGH) && IOManager.IOValue(IO_Type.L2_InCheck).Equals(IO_VALUE.LOW))
//{ //{
...@@ -585,27 +600,27 @@ namespace OnlineStore.DeviceLibrary ...@@ -585,27 +600,27 @@ namespace OnlineStore.DeviceLibrary
Alarm(AlarmType.SuddenStop); Alarm(AlarmType.SuddenStop);
} }
} }
else if (IOManager.IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.HIGH) && IOManager.IOValue(IO_Type.Reset_BTN).Equals(IO_VALUE.HIGH)) //else if (IOManager.IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.HIGH))//&& IOManager.IOValue(IO_Type.Reset_BTN).Equals(IO_VALUE.HIGH)
{ //{
//收到复位信号,若报警直接复位,若不报警且无操作,回到待机点 // //收到复位信号,若报警直接复位,若不报警且无操作,回到待机点
if (alarmType.Equals(AlarmType.None) && isInSuddenDown.Equals(false)) // if (alarmType.Equals(AlarmType.None) && isInSuddenDown.Equals(false))
{ // {
if (MoveInfo.MoveType.Equals(LineMoveType.None)) // if (MoveInfo.MoveType.Equals(LineMoveType.None))
{ // {
LogUtil.info("收到复位信号,当前无报警,暂不复位"); // LogUtil.info("收到复位信号,当前无报警,暂不复位");
} // }
else // else
{ // {
LogUtil.info("收到复位信号,当前无报警, 在" + MoveInfo.MoveType + "处理中,暂不复位"); // LogUtil.info("收到复位信号,当前无报警, 在" + MoveInfo.MoveType + "处理中,暂不复位");
} // }
} // }
else // else
{ // {
//收到复位信号 // //收到复位信号
LogUtil.info("收到复位信号,自动复位"); // LogUtil.info("收到复位信号,自动复位");
Reset(); // Reset();
} // }
} //}
} }
} }
......
using Asa; using Agv;
using OnlineStore.Common; using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary; using OnlineStore.LoadCSVLibrary;
using System; using System;
......
 
using Asa; using Agv;
using Asa.RFID;
using OnlineStore.Common; using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary; using OnlineStore.LoadCSVLibrary;
using System; using System;
...@@ -15,8 +14,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -15,8 +14,9 @@ namespace OnlineStore.DeviceLibrary
public class AgvClient public class AgvClient
{ {
private static string ServerIp = ConfigAppSettings.GetValue(Setting_Init.AgvServerIp); private static string ServerIp = ConfigAppSettings.GetValue(Setting_Init.AgvServerIp);
private static Asa.AgvClient agvClient; private static int ServerPort = ConfigAppSettings.GetIntValue(Setting_Init.AgvServerPort);
public static Dictionary<string, Asa.ClientAction> actionMap = new Dictionary<string, Asa.ClientAction>(); private static Agv.AgvClient agvClient;
public static Dictionary<string, Agv.ClientAction> actionMap = new Dictionary<string, Agv.ClientAction>();
public static List<string> NodeList = new List<string>(); public static List<string> NodeList = new List<string>();
private static bool isInit = false; private static bool isInit = false;
public static void Init() public static void Init()
...@@ -26,26 +26,22 @@ namespace OnlineStore.DeviceLibrary ...@@ -26,26 +26,22 @@ namespace OnlineStore.DeviceLibrary
if (!isInit) if (!isInit)
{ {
isInit = true; isInit = true;
agvClient = new Asa.AgvClient(ServerIp); agvClient = new Agv.AgvClient();
agvClient.CancelState = true; agvClient.Received += AgvClient_Received;
agvClient.Log += AgvClient_Log;
agvClient.Arrive += AgvClient_Arrive;
agvClient.Ready += AgvClient_Ready;
agvClient.CloseDoor += AgvClient_CloseDoor;
} }
actionMap = new Dictionary<string, Asa.ClientAction>(); actionMap = new Dictionary<string, Agv.ClientAction>();
//foreach (string key in NodeList) //foreach (string key in NodeList)
//{ //{
// actionMap.Add(key, Asa.ClientAction.None); // actionMap.Add(key, Agv.ClientAction.None);
//} //}
agvClient.Connect(); agvClient.Connect(ServerIp,ServerPort);
foreach (string str in NodeList) foreach (string str in NodeList)
{ {
SetStatus(str); SetStatus(str);
LogUtil.info("agv init ,SetStatus[" + str + "]=none "); LogUtil.info("agv init ,SetStatus[" + str + "]=none ");
} }
SetCancelState(false);
} }
catch (Exception ex) catch (Exception ex)
{ {
...@@ -53,22 +49,26 @@ namespace OnlineStore.DeviceLibrary ...@@ -53,22 +49,26 @@ namespace OnlineStore.DeviceLibrary
} }
} }
public static void SetCancelState(bool isCancel) private static void AgvClient_Received(Agv.Node node)
{ {
agvClient.CancelState = isCancel; AgvClient_Ready(node.Name,node.RFID);
} }
private static void AgvClient_CloseDoor(string id, string rfid)
/// <summary>
/// 设置是否屏蔽AGV状态
/// </summary>
/// <param name="cancel"></param>
public static void SetCancelState(bool cancel)
{ {
//RFIDData data = new RFIDData(content); agvClient.CancelState = cancel;
LogUtil.info("收到 AgvClient_CloseDoor [" + id + "] [" + rfid + "] ");
} }
public static void SetStatus(string id, string shelfId = "", ClientAction action = ClientAction.None, ClientLevel level = ClientLevel.Low) public static void SetStatus(string id, string shelfId = "", Agv.ClientAction action = Agv.ClientAction.None, Agv.ClientLevel level = Agv.ClientLevel.Low)
{ {
// ClientAction currA = GetAction(id); // ClientAction currA = GetAction(id);
if (actionMap.ContainsKey(id)) if (actionMap.ContainsKey(id))
{ {
ClientAction currA = actionMap[id]; //相同状态就设置一次 Agv.ClientAction currA = actionMap[id]; //相同状态就设置一次
if (currA.Equals(action)) if (currA.Equals(action))
{ {
return; return;
...@@ -83,7 +83,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -83,7 +83,7 @@ namespace OnlineStore.DeviceLibrary
string logName = "收到 AgvClient_Ready [" + id + "] [" + rfid + "] "; string logName = "收到 AgvClient_Ready [" + id + "] [" + rfid + "] ";
LogUtil.info(logName); LogUtil.info(logName);
UpdateAction(id, Asa.ClientAction.Ready); UpdateAction(id, Agv.ClientAction.Ready);
if (id.Equals(LineManager.Config.L1_In_AgvName)) if (id.Equals(LineManager.Config.L1_In_AgvName))
{ {
LineManager.Line.UpdateSleep(false); LineManager.Line.UpdateSleep(false);
...@@ -224,40 +224,33 @@ namespace OnlineStore.DeviceLibrary ...@@ -224,40 +224,33 @@ namespace OnlineStore.DeviceLibrary
} }
} }
} }
private static void AgvClient_Arrive(string id, string rfid)
{
UpdateAction(id, Asa.ClientAction.Arrive);
// RFIDData data = new RFIDData(content);
LogUtil.info("收到 AgvClient_Arrive [" + id + "] [" +rfid + "] ");
}
public static bool SetToNone(string id, string shelfId = "") public static bool SetToNone(string id, string shelfId = "")
{ {
ClientAction currA = GetAction(id); Agv.ClientAction currA = GetAction(id);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
SetStatus(id, shelfId, ClientAction.None); SetStatus(id, shelfId, Agv.ClientAction.None);
return true; return true;
} }
return false; return false;
} }
public static bool NeedEnter(string id, string shelfId) public static bool NeedEnter(string id, string shelfId)
{ {
ClientAction currA = GetAction(id); Agv.ClientAction currA = GetAction(id);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
SetStatus(id, shelfId, ClientAction.NeedEnter); SetStatus(id, shelfId, Agv.ClientAction.NeedEnter);
return true; return true;
} }
return false; return false;
} }
public static bool NeedLeave(string id, string shelfId) public static bool NeedLeave(string id, string shelfId)
{ {
ClientAction currA = GetAction(id); Agv.ClientAction currA = GetAction(id);
if (currA.Equals(ClientAction.None) || currA.Equals(ClientAction.NeedLeave) || currA.Equals(ClientAction.NeedEnter)) if (currA.Equals(Agv.ClientAction.None) || currA.Equals(Agv.ClientAction.NeedLeave) || currA.Equals(Agv.ClientAction.NeedEnter))
{ {
SetStatus(id, shelfId, ClientAction.NeedLeave); SetStatus(id, shelfId, Agv.ClientAction.NeedLeave);
return true; return true;
} }
return false; return false;
...@@ -270,36 +263,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -270,36 +263,16 @@ namespace OnlineStore.DeviceLibrary
} }
return agvClient.IsConn; return agvClient.IsConn;
} }
//public static void SendRFID(string NodeName, string rfid)
//{
// agvClient.SendRFID(NodeName, rfid);
//}
private static void AgvClient_Log(string s)
{
try
{
bool isLog = ConfigAppSettings.GetIntValue(Setting_Init.Agv_Log_Open).Equals(1);
if (isLog)
{
LogUtil.info(" AGV " + ServerIp + " Log : " + s);
}
}
catch (Exception ex)
{
LogUtil.error("AgvClient_Log 出错:" + ex.ToString());
}
}
public static Asa.ClientAction GetAction(string NodeName) public static Agv.ClientAction GetAction(string NodeName)
{ {
if (actionMap.ContainsKey(NodeName)) if (actionMap.ContainsKey(NodeName))
{ {
return actionMap[NodeName]; return actionMap[NodeName];
} }
return Asa.ClientAction.None; return Agv.ClientAction.None;
} }
public static void UpdateAction(string name, Asa.ClientAction action) public static void UpdateAction(string name, Agv.ClientAction action)
{ {
if (actionMap.ContainsKey(name)) if (actionMap.ContainsKey(name))
{ {
...@@ -316,6 +289,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -316,6 +289,7 @@ namespace OnlineStore.DeviceLibrary
{ {
if (agvClient != null) if (agvClient != null)
{ {
SetCancelState(true);
agvClient.Close(); agvClient.Close();
} }
} }
......
...@@ -31,7 +31,7 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -31,7 +31,7 @@ namespace OnlineStore.LoadCSVLibrary
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
public static string Reset_BTN = "Reset_BTN"; //public static string Reset_BTN = "Reset_BTN";
/// <summary> /// <summary>
///DI,放行按钮,Pass_BTN,1,PRO_AOI_IP_1,0,放行按钮,X02,DI-02,0, ///DI,放行按钮,Pass_BTN,1,PRO_AOI_IP_1,0,放行按钮,X02,DI-02,0,
/// </summary> /// </summary>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!