From 99e4b4d05866ea1ab4699ca5e683cb9c7db608e1 Mon Sep 17 00:00:00 2001 From: CJY Date: Thu, 11 Dec 2025 15:47:04 +0900 Subject: [PATCH] =?UTF-8?q?Modbus=20=EC=B6=94=EA=B0=80=20=EC=99=84?= =?UTF-8?q?=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Document/DLL/InModbus.dll | Bin 11776 -> 14848 bytes INT89DB_26.suo | Bin 215040 -> 225280 bytes INT89DB_26/DataStore.cs | 138 +- INT89DB_26/DialogForms/DialogFormMessage.cs | 1472 +++++++++++++++++ .../DialogForms/DialogFormMessage.designer.cs | 193 ++- INT89DB_26/DialogForms/DialogFormMessage.resx | 429 ++++- .../DialogFormNumKeyPad.designer.cs | 26 +- .../DialogForms/DialogFormNumKeyPad.resx | 82 + .../DialogFormPasswordKeyPad1.designer.cs | 22 + .../DialogFormPasswordKeyPad1.resx | 78 + .../DialogForms/DialogFormYesNo.designer.cs | 176 +- INT89DB_26/DialogForms/DialogFormYesNo.resx | 426 ++++- INT89DB_26/Forms/FormCommunication.cs | 51 +- .../Forms/FormCommunication.designer.cs | 183 +- INT89DB_26/Forms/FormCommunication.resx | 456 +++-- INT89DB_26/Forms/FormFactoryReset.cs | 6 +- INT89DB_26/Forms/FormMain.Designer.cs | 1 + INT89DB_26/Forms/FormMain.cs | 1099 ++++++------ INT89DB_26/Forms/FormMainDisplay.cs | 4 + INT89DB_26/INT89DB_26.csproj | 2 +- INT89DB_26/InModbus/Modbus_30000_Data.cs | 43 + .../bin/Release/INT89DB_26_ImageDll.dll | Bin 2039808 -> 2039808 bytes .../bin/Release/INT89DB_26_ImageDll.pdb | Bin 110080 -> 112128 bytes ...DB_26_ImageDll.csproj.FileListAbsolute.txt | 7 + ..._26_ImageDll.csproj.GenerateResource.Cache | Bin 11154 -> 11154 bytes .../obj/Release/INT89DB_26_ImageDll.dll | Bin 2039808 -> 2039808 bytes .../obj/Release/INT89DB_26_ImageDll.pdb | Bin 110080 -> 112128 bytes 27 files changed, 3777 insertions(+), 1117 deletions(-) diff --git a/Document/DLL/InModbus.dll b/Document/DLL/InModbus.dll index 17c332e6da636ff622f11227957fab06ed2e290a..74b80b08eada9f8b35fa5480c0e04cd03c66df60 100644 GIT binary patch delta 5403 zcmb_g4Qx}_6+YK~@A*B)PWpxSybo%-5=})R(+_O|!L{MkQ^niJCz7 z$;}yczABfDQ|AKZ$K$v65GJ5|#=S2ja*=ds-7#>wz4x_aGFFwl2Q zI>stlFHdB2zpb~@X65FL`|jIHfNihiY#6!JI05Zeox zZ-VzRjC*?%96`-QKBmBrn~UYjklqgir;C@-4}8%$MOAdsh_rD0R%e`K&mFD}oOXTp zz8D5tUkp56U&0bU+`piMmbp3oW6pI8J1A9dj3?c;@-bClQ<+uJFz=j)cg|QkGn8>U zH-VyGacSXwJMAmLczOE@S>O!m?K5z?#`oJk?;WlUoOXTp_8A6R%?x~B?JL4~#TV8G-Awz78!7ysxlyoT6!K5NjH|eH)-kVHX}m z(QH#G7rQ$+Mje`^)?lJiG#3+0~p zd;(TX28*Ivm{CSP0h_|BBS%#!U{_@4R$ zD-@WPQgH}=iW@D(zLmlM;8ilkzHGq}yj!O7821&nImJE>=$?HTH23bAOj4O*ue#t{ zxNM3Y#6Vt(y?g?Z6gz#M6gx?QttlTHwx#?yxKr$+R!$G+g=cxN_aQ9lb{vD4K&Wk? zucx=WpJntCMuwXULQC4Q0+ zCbySg$J7 z=9=MdMz?72Sj0Qoi=w2?J8k= zTtjEYJrDy&y@o!*xmp;}(Whc}5~f0Ynl@>ddLa(`brh1GfNAh|9nF#s!VHK{*EHKv zb0$2=k=EteI6+_q{?Rg)uH%wS+KUnsY~k`=DVYhr9ez7sU^h~;zRbR_NwgqPGnrP> zL`-$m%y2}&a6uq#jJXkTaL7HQoPne_~dAD^fsl+XI80i|giPQawS8Uv{d3l@>e~P-YGU|XF>lqt zs@AUVp8kQZK0Yz`hXY-UyL!6^)@75Zg?eX^SP#FuJGN> z>j!#J(A|~kV{{qKyP-or_PTlu2rFv87TKL9kh$98u2qklV~VdWm}CM>xcEclf!Mnmq@s&vA(vdwz;ulO8u1j zirTqVQ!D0FHP%%$*HzDp*UfEej@Q=@7nSTH#f=*`_YSZ<1?C_hzQ}w2dS|C=(UEsP ztJv}8=LhJYLQPZ+$7p@{WjYd`Kf~%EM9$CMK>Uzxk$ocjhl4E34vV6}QGsF+^m)l* zmQjh;m#(RV(f?({y$=uLV{5?&Z+5M1^V;@)dGXmcfBnMOZ>>JO?9}wX<$BU8X%P!_y{hCp0_ql--1HDRwsaNcTl<*{kuTAH$~}pPJzpCx^&b5&d&{ Z^bX0UNna=|7W8u>HmpAI2^ox8{s-VCo^1dC delta 3069 zcma)8eQZ#CbL$c1lV^>|`m3kH&nYYDcru6teQ6 z7RIzuY}3+~R)9!vV1Uw*js4Mr+7)@Q?jQQ0s!~hKLPw>k(<(IW4=RCL*0o~Or0(4N zUfj@-X_oHq-rqUDd(XM&-FN*8I|~mU-rsbzuW}<;zpEfLI*1A|9}Ti;+>jYNy{=r% z0A!hA7(f-r8r{wUfD`$#G(bIV6k6&1B&b(MclUQTbw^{CX8Y)Ltf zzU63)&Qg|U#?>6AC27%!Ac}`ZBQE+|cZeF!ZNy1WI_FI3WM%&XwrJduQ`q!W5sRT~ zs^M32vx3p>_Wl_O#jBg{korygGbN2#4J?|Jb0ApNF!@~7@bIuR#@vbqY-#!|1Y0dowaL#BVN&Y@7eREf<=(**nBJYUro63$t>aXF~Sr%W*C5gxsK4PRM?==yoaM z!;RudW7NT-=}tW};c-UGWW7us64kK@)jQ-=@iZrHuqsKAv$A`bXB3Izz3_i$llHyJ zD-!0_2-?=L-O#1=DbD@$Sp8&PGzhFiJNxNcfxW?je~17D_Q>_70(*}G{}j-`&W`Rb zu*a-t3V1_EfooWs0$v}IKEL2%-R{CX*6k^{vGW$#7109Fn_bpRfbbaXy4sb98L>r1 zGLZzj%5PsXjIVJJH~Jy=J-ESOcIOkL+cxcB6Py?bO%Pn0g(@6lGzk7+?Y-ioZ@Ymy8u8^ajK6&xSsnCEzc<2jBu zY?o{@5Sd|x%w{c?BXSZ}VbU^;$mw`EQW*K@9}yS9)Kjg}A^20~|*=KF#qs$MYON zelfs}y=6P?O&vpT&}l2e2~mY|RlUL$;N(u^Q7i$*NlNz0cWR zxJO{hE1VsLl|l`&>m}yLQcFQLkNH9%LaoKt3oZE0w_9v9FBrJTL5t>uPRw#MXV1cm zLN_RIpqYn~A-HH^sxy0#$~|G%1~j7+kk#P}&X#bjMBS5-E)r*O)t@0P%W$d_a8=`r)p)QIq>8J3x2Gc9J3;OZ<*DP(D7rmvh1GaZr+ zgx2L(D;MAueyADx`8b5QRk;Yq;YsBZj`t~7;4J)F`3vG}%2oISys2D6`@70@cppAh zzC!$)5+avTe;48+btPez2S^ML>Q4|i!bLE@Pe)QPL;F`7R z!F2IR%TEdQwl+H-{@Kov9k69&+oqkH>EhNz@#n3lNT@R%Pp133I@;2SWPe*nqRVLO zHB#}mRI0Z#vuI&oSE@5rTpBw>@b3^0MSvlU|Ixc8|IXpw*Z1x}|H+bLo9UPBeX`JC zYp|(wp^>0ljY*rVh^k5*@q0D9A~6?p9*%EpoBn*ps=$5NewW6EH^*Q$lU*0D-J6WQ z+V{qhvGr#TZMvn>#>744Mur77e=9R|TcS>z{x$|EzL3~Q=u~1gE$?`;%&MhXQ~HaJ rf0f1YwKcHuzWCCjAi3Q{KkAHr&+>NSKlUE;V|}=z=t_M-#th}ZZ)Xi5 diff --git a/INT89DB_26.suo b/INT89DB_26.suo index 64b4ae0bea29927bf0cb0736a09e782bd95a884e..72b493edb317f3f1b3babae3a873123012aa2204 100644 GIT binary patch delta 11688 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.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + + 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 + gg== + + + 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 + 0AAAAABJRU5ErkJggg== + + + + + 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 + AAAAAElFTkSuQmCC + + + + 17, 17 + WEBPAD diff --git a/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs b/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs index 094548c..5e0099c 100644 --- a/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs +++ b/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormNumKeyPad)); this.labelScreen = new System.Windows.Forms.Label(); this.buttonEnter = new System.Windows.Forms.Button(); this.buttonCancel = new System.Windows.Forms.Button(); @@ -43,6 +44,8 @@ this.buttonNumber4 = new System.Windows.Forms.Button(); this.buttonNumber1 = new System.Windows.Forms.Button(); this.label1 = new System.Windows.Forms.Label(); + this.smartForm1 = new SmartX.SmartForm(); + ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); this.SuspendLayout(); // // labelScreen @@ -226,13 +229,29 @@ // // label1 // + this.label1.BackColor = System.Drawing.Color.Silver; this.label1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.label1.Location = new System.Drawing.Point(3, 3); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(100, 20); this.label1.Text = "keypad"; // - // DialogFormNumKeyPad1 + // smartForm1 + // + this.smartForm1.CenterLocation = false; + this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image"))); + this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL; + this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING; + this.smartForm1.Location = new System.Drawing.Point(0, 0); + this.smartForm1.MainForm = null; + this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME; + this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF; + this.smartForm1.Name = "smartForm1"; + this.smartForm1.Size = new System.Drawing.Size(250, 443); + this.smartForm1.SpecialFunctionClickPointSize = 100; + this.smartForm1.SuspendLayoutInterval = 1; + // + // DialogFormNumKeyPad // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; @@ -254,9 +273,11 @@ this.Controls.Add(this.buttonNumber4); this.Controls.Add(this.buttonNumber1); this.Controls.Add(this.label1); + this.Controls.Add(this.smartForm1); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; - this.Name = "DialogFormNumKeyPad1"; + this.Name = "DialogFormNumKeyPad"; this.Text = "DialogFormNumKeyPad1"; + ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit(); this.ResumeLayout(false); } @@ -278,5 +299,6 @@ private System.Windows.Forms.Button buttonNumber4; private System.Windows.Forms.Button buttonNumber1; private System.Windows.Forms.Label label1; + private SmartX.SmartForm smartForm1; } } \ No newline at end of file diff --git a/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx b/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx index a721046..d34edcc 100644 --- a/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx +++ b/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx @@ -117,6 +117,88 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABwVJREFUeF7t0kEBgDAA + xDCETxzSeNxU0ERDngMZuhNyu7/wa3uuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXt+u0OB7mSc8wEowgfcz9GVkAAAAABJRU5E + rkJggg== + + WEBPAD diff --git a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs index ba01e0d..fe60f8e 100644 --- a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs +++ b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormPasswordKeyPad1)); this.labelScreen = new System.Windows.Forms.Label(); this.buttonEnter = new System.Windows.Forms.Button(); this.buttonNumber9 = new System.Windows.Forms.Button(); @@ -42,6 +43,8 @@ this.buttonNumber4 = new System.Windows.Forms.Button(); this.buttonNumber1 = new System.Windows.Forms.Button(); this.labelSubject = new System.Windows.Forms.Label(); + this.smartForm1 = new SmartX.SmartForm(); + ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); this.SuspendLayout(); // // labelScreen @@ -212,12 +215,28 @@ // // labelSubject // + this.labelSubject.BackColor = System.Drawing.Color.Silver; this.labelSubject.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.labelSubject.Location = new System.Drawing.Point(3, 3); this.labelSubject.Name = "labelSubject"; this.labelSubject.Size = new System.Drawing.Size(100, 20); this.labelSubject.Text = "Password"; // + // smartForm1 + // + this.smartForm1.CenterLocation = false; + this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image"))); + this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL; + this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING; + this.smartForm1.Location = new System.Drawing.Point(0, 0); + this.smartForm1.MainForm = null; + this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME; + this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF; + this.smartForm1.Name = "smartForm1"; + this.smartForm1.Size = new System.Drawing.Size(250, 390); + this.smartForm1.SpecialFunctionClickPointSize = 100; + this.smartForm1.SuspendLayoutInterval = 1; + // // DialogFormPasswordKeyPad1 // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); @@ -239,9 +258,11 @@ this.Controls.Add(this.buttonNumber4); this.Controls.Add(this.buttonNumber1); this.Controls.Add(this.labelSubject); + this.Controls.Add(this.smartForm1); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.Name = "DialogFormPasswordKeyPad1"; this.Text = "DialogFormPasswordKeyPad1"; + ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit(); this.ResumeLayout(false); } @@ -262,5 +283,6 @@ private System.Windows.Forms.Button buttonNumber4; private System.Windows.Forms.Button buttonNumber1; private System.Windows.Forms.Label labelSubject; + private SmartX.SmartForm smartForm1; } } \ No newline at end of file diff --git a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx index a721046..142d49b 100644 --- a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx +++ b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx @@ -117,6 +117,84 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 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 + j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABjFJREFUeF7t0kEBgDAA + xDCETxzSeNxU0ERDngMZuhNyu7/wa3uuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu + Owl7frtDge5knPMB9Ug1gPIHoDoAAAAASUVORK5CYII= + + WEBPAD diff --git a/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs b/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs index 1ef4000..4d3012e 100644 --- a/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs +++ b/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs @@ -30,20 +30,23 @@ { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormYesNo)); this.buttonNo = new System.Windows.Forms.Button(); - this.labelErrorCode = new System.Windows.Forms.Label(); - this.pictureBox1 = new System.Windows.Forms.PictureBox(); - this.panel1 = new System.Windows.Forms.Panel(); this.buttonYes = new System.Windows.Forms.Button(); - this.labelMessage2 = new System.Windows.Forms.Label(); - this.labelMessage1 = new System.Windows.Forms.Label(); - this.panel1.SuspendLayout(); + this.pictureBoxAsterisk = new System.Windows.Forms.PictureBox(); + this.pictureBoxExclamation = new System.Windows.Forms.PictureBox(); + this.pictureBoxHand = new System.Windows.Forms.PictureBox(); + this.labelMessage2 = new SmartX.SmartLabel(); + this.smartForm1 = new SmartX.SmartForm(); + this.labelMessage1 = new SmartX.SmartLabel(); + this.pictureBoxQuestion = new System.Windows.Forms.PictureBox(); + this.labelErrorCode = new SmartX.SmartLabel(); + ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); this.SuspendLayout(); // // buttonNo // - this.buttonNo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40))))); - this.buttonNo.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); - this.buttonNo.ForeColor = System.Drawing.Color.White; + this.buttonNo.BackColor = System.Drawing.Color.WhiteSmoke; + this.buttonNo.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); + this.buttonNo.ForeColor = System.Drawing.Color.Black; this.buttonNo.Location = new System.Drawing.Point(335, 135); this.buttonNo.Name = "buttonNo"; this.buttonNo.Size = new System.Drawing.Size(100, 25); @@ -52,36 +55,11 @@ this.buttonNo.Text = "No"; this.buttonNo.Click += new System.EventHandler(this.buttonNo_Click); // - // labelErrorCode - // - this.labelErrorCode.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); - this.labelErrorCode.Location = new System.Drawing.Point(15, 11); - this.labelErrorCode.Name = "labelErrorCode"; - this.labelErrorCode.Size = new System.Drawing.Size(350, 20); - this.labelErrorCode.Text = "Error 0"; - // - // pictureBox1 - // - this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image"))); - this.pictureBox1.Location = new System.Drawing.Point(11, 20); - this.pictureBox1.Name = "pictureBox1"; - this.pictureBox1.Size = new System.Drawing.Size(50, 50); - // - // panel1 - // - this.panel1.BackColor = System.Drawing.Color.White; - this.panel1.Controls.Add(this.labelMessage2); - this.panel1.Controls.Add(this.labelMessage1); - this.panel1.Controls.Add(this.pictureBox1); - this.panel1.Location = new System.Drawing.Point(15, 34); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(420, 95); - // // buttonYes // - this.buttonYes.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40))))); - this.buttonYes.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); - this.buttonYes.ForeColor = System.Drawing.Color.White; + this.buttonYes.BackColor = System.Drawing.Color.WhiteSmoke; + this.buttonYes.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); + this.buttonYes.ForeColor = System.Drawing.Color.Black; this.buttonYes.Location = new System.Drawing.Point(229, 135); this.buttonYes.Name = "buttonYes"; this.buttonYes.Size = new System.Drawing.Size(100, 25); @@ -90,21 +68,112 @@ this.buttonYes.Text = "Yes"; this.buttonYes.Click += new System.EventHandler(this.buttonYes_Click); // + // pictureBoxAsterisk + // + this.pictureBoxAsterisk.BackColor = System.Drawing.Color.Silver; + this.pictureBoxAsterisk.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxAsterisk.Image"))); + this.pictureBoxAsterisk.Location = new System.Drawing.Point(22, 60); + this.pictureBoxAsterisk.Name = "pictureBoxAsterisk"; + this.pictureBoxAsterisk.Size = new System.Drawing.Size(50, 50); + this.pictureBoxAsterisk.Visible = false; + // + // pictureBoxExclamation + // + this.pictureBoxExclamation.BackColor = System.Drawing.Color.Silver; + this.pictureBoxExclamation.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxExclamation.Image"))); + this.pictureBoxExclamation.Location = new System.Drawing.Point(22, 60); + this.pictureBoxExclamation.Name = "pictureBoxExclamation"; + this.pictureBoxExclamation.Size = new System.Drawing.Size(50, 50); + // + // pictureBoxHand + // + this.pictureBoxHand.BackColor = System.Drawing.Color.Silver; + this.pictureBoxHand.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxHand.Image"))); + this.pictureBoxHand.Location = new System.Drawing.Point(22, 60); + this.pictureBoxHand.Name = "pictureBoxHand"; + this.pictureBoxHand.Size = new System.Drawing.Size(50, 50); + this.pictureBoxHand.Visible = false; + // // labelMessage2 // - this.labelMessage2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); - this.labelMessage2.Location = new System.Drawing.Point(67, 50); + this.labelMessage2.BackPictureBox = this.smartForm1; + this.labelMessage2.BackPictureBox1 = null; + this.labelMessage2.BackPictureBox2 = null; + this.labelMessage2.BorderColor = System.Drawing.Color.Black; + this.labelMessage2.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelMessage2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); + this.labelMessage2.InitVisible = true; + this.labelMessage2.LineSpacing = 0F; + this.labelMessage2.Location = new System.Drawing.Point(78, 90); this.labelMessage2.Name = "labelMessage2"; this.labelMessage2.Size = new System.Drawing.Size(350, 20); + this.labelMessage2.TabIndex = 45; this.labelMessage2.Text = "COM2 port problem. Please contact a manufacturer."; + this.labelMessage2.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; + this.labelMessage2.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelMessage2.Wordwrap = false; + // + // smartForm1 + // + this.smartForm1.CenterLocation = false; + this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image"))); + this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL; + this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING; + this.smartForm1.Location = new System.Drawing.Point(0, 0); + this.smartForm1.MainForm = null; + this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME; + this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF; + this.smartForm1.Name = "smartForm1"; + this.smartForm1.Size = new System.Drawing.Size(450, 170); + this.smartForm1.SpecialFunctionClickPointSize = 100; + this.smartForm1.SuspendLayoutInterval = 1; // // labelMessage1 // - this.labelMessage1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); - this.labelMessage1.Location = new System.Drawing.Point(67, 20); + this.labelMessage1.BackPictureBox = this.smartForm1; + this.labelMessage1.BackPictureBox1 = null; + this.labelMessage1.BackPictureBox2 = null; + this.labelMessage1.BorderColor = System.Drawing.Color.Black; + this.labelMessage1.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelMessage1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); + this.labelMessage1.InitVisible = true; + this.labelMessage1.LineSpacing = 0F; + this.labelMessage1.Location = new System.Drawing.Point(78, 60); this.labelMessage1.Name = "labelMessage1"; this.labelMessage1.Size = new System.Drawing.Size(350, 20); + this.labelMessage1.TabIndex = 44; this.labelMessage1.Text = "COM2 port problem. Please contact a manufacturer."; + this.labelMessage1.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; + this.labelMessage1.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelMessage1.Wordwrap = false; + // + // pictureBoxQuestion + // + this.pictureBoxQuestion.BackColor = System.Drawing.Color.Silver; + this.pictureBoxQuestion.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxQuestion.Image"))); + this.pictureBoxQuestion.Location = new System.Drawing.Point(22, 60); + this.pictureBoxQuestion.Name = "pictureBoxQuestion"; + this.pictureBoxQuestion.Size = new System.Drawing.Size(50, 50); + this.pictureBoxQuestion.Visible = false; + // + // labelErrorCode + // + this.labelErrorCode.BackColor = System.Drawing.Color.Gainsboro; + this.labelErrorCode.BackPictureBox = this.smartForm1; + this.labelErrorCode.BackPictureBox1 = null; + this.labelErrorCode.BackPictureBox2 = null; + this.labelErrorCode.BorderColor = System.Drawing.Color.Black; + this.labelErrorCode.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelErrorCode.InitVisible = true; + this.labelErrorCode.LineSpacing = 0F; + this.labelErrorCode.Location = new System.Drawing.Point(12, 0); + this.labelErrorCode.Name = "labelErrorCode"; + this.labelErrorCode.Size = new System.Drawing.Size(438, 32); + this.labelErrorCode.TabIndex = 43; + this.labelErrorCode.Text = " Error 0"; + this.labelErrorCode.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; + this.labelErrorCode.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelErrorCode.Wordwrap = false; // // DialogFormYesNo // @@ -113,14 +182,20 @@ this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(130)))), ((int)(((byte)(200)))), ((int)(((byte)(250))))); this.ClientSize = new System.Drawing.Size(450, 170); this.ControlBox = false; - this.Controls.Add(this.buttonNo); + this.Controls.Add(this.pictureBoxAsterisk); + this.Controls.Add(this.pictureBoxExclamation); + this.Controls.Add(this.pictureBoxHand); + this.Controls.Add(this.labelMessage2); + this.Controls.Add(this.labelMessage1); + this.Controls.Add(this.pictureBoxQuestion); this.Controls.Add(this.labelErrorCode); - this.Controls.Add(this.panel1); + this.Controls.Add(this.buttonNo); this.Controls.Add(this.buttonYes); + this.Controls.Add(this.smartForm1); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.Name = "DialogFormYesNo"; this.Text = "DialogFormYesNo1"; - this.panel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit(); this.ResumeLayout(false); } @@ -128,11 +203,14 @@ #endregion private System.Windows.Forms.Button buttonNo; - private System.Windows.Forms.Label labelErrorCode; - private System.Windows.Forms.PictureBox pictureBox1; - private System.Windows.Forms.Panel panel1; private System.Windows.Forms.Button buttonYes; - private System.Windows.Forms.Label labelMessage2; - private System.Windows.Forms.Label labelMessage1; + private System.Windows.Forms.PictureBox pictureBoxAsterisk; + private System.Windows.Forms.PictureBox pictureBoxExclamation; + private System.Windows.Forms.PictureBox pictureBoxHand; + private SmartX.SmartLabel labelMessage2; + private SmartX.SmartForm smartForm1; + private SmartX.SmartLabel labelMessage1; + private System.Windows.Forms.PictureBox pictureBoxQuestion; + private SmartX.SmartLabel labelErrorCode; } } \ No newline at end of file diff --git a/INT89DB_26/DialogForms/DialogFormYesNo.resx b/INT89DB_26/DialogForms/DialogFormYesNo.resx index bd0aa44..989d493 100644 --- a/INT89DB_26/DialogForms/DialogFormYesNo.resx +++ b/INT89DB_26/DialogForms/DialogFormYesNo.resx @@ -118,73 +118,371 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + 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 + 0AAAAABJRU5ErkJggg== + + + + + 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 + gg== + + + + + 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 + AAAAAElFTkSuQmCC diff --git a/INT89DB_26/Forms/FormCommunication.cs b/INT89DB_26/Forms/FormCommunication.cs index 3db6e38..668a8c4 100644 --- a/INT89DB_26/Forms/FormCommunication.cs +++ b/INT89DB_26/Forms/FormCommunication.cs @@ -292,6 +292,25 @@ namespace INT89DB_26.Forms } } + private void UpdateDisplaySettingData(int index) + { + switch (index) + { + case 99: // Modbus + if (this.ParentForm.SystemConfig.EthernetOperationMode == 2) // Client일 때만 Start Address 사용 + { + this.labelTitleStartAddress.Visible = true; + this.labelStartAddress.Visible = true; + this.labelStartAddress.Text = this.ParentForm.SystemConfig.ModbusTcpStartAddress.ToString(); + } + break; + default: + this.labelTitleStartAddress.Visible = false; + this.labelStartAddress.Visible = false; + break; + } + } + private void ConnectedIPStatusOut(string value) { this.labelConnectedIP.Text = value; @@ -409,7 +428,7 @@ namespace INT89DB_26.Forms this.comboBoxMode.SelectedIndexChanged -= new EventHandler(this.comboBoxMode_SelectedIndexChanged); this.comboBoxOperationMode.SelectedIndexChanged -= new EventHandler(this.comboBoxOperationMode_SelectedIndexChanged); - if (this.ParentForm.SystemConfig.EthernetMode == 99) + if (this.ParentForm.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) this.comboBoxMode.SelectedText = "Modbus"; else this.comboBoxMode.SelectedIndex = this.ParentForm.SystemConfig.EthernetMode; @@ -580,10 +599,12 @@ namespace INT89DB_26.Forms private void comboBoxMode_SelectedIndexChanged(object sender, EventArgs e) { if (this.comboBoxMode.SelectedText == "Modbus") - this.ParentForm.SystemConfig.EquipmentMode = 99; + this.ParentForm.SystemConfig.EthernetMode = (int)DataStore.CommunicationMode.f99_Modbus; else this.ParentForm.SystemConfig.EthernetMode = this.comboBoxMode.SelectedIndex; + this.UpdateDisplaySettingData(this.ParentForm.SystemConfig.EthernetMode); + this.ParentForm.SaveSystemConfigurationFile(this.ParentForm.SystemConfig); this.UpdateProtocolDescriptionEthernet(); } @@ -840,6 +861,32 @@ namespace INT89DB_26.Forms } } } + private void labelStartAddress_Click(object sender, EventArgs e) + { + string before = "", after = ""; + + before = this.labelStartAddress.Text; + + DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelStartAddress.Text, 5, 0, false, this.ParentForm.SystemConfig.Language); + + if (myKeyPad.ShowDialog() == DialogResult.OK) + { + if (myKeyPad.doubleValue < 0 || myKeyPad.doubleValue > 65535) + { + // 입력범위를 확인하세요 + DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language); + myMsg.ShowDialog(); + } + else + { + this.labelStartAddress.Text = myKeyPad.StringValue; + this.ParentForm.SystemConfig.ModbusTcpStartAddress = myKeyPad.IntValue; + after = this.labelStartAddress.Text; + + this.ParentForm.SaveSystemConfigurationFile(this.ParentForm.SystemConfig); + } + } + } private void buttonTcpSave1_Click(object sender, EventArgs e) { this.buttonTcpSave1.Enabled = false; diff --git a/INT89DB_26/Forms/FormCommunication.designer.cs b/INT89DB_26/Forms/FormCommunication.designer.cs index f7ab948..697891a 100644 --- a/INT89DB_26/Forms/FormCommunication.designer.cs +++ b/INT89DB_26/Forms/FormCommunication.designer.cs @@ -44,6 +44,8 @@ this.smartLabel4 = new SmartX.SmartLabel(); this.labelStaticBaudrate = new SmartX.SmartLabel(); this.groupBoxEthernet = new SmartX.SmartGroupBox(); + this.labelStartAddress = new SmartX.SmartLabel(); + this.labelTitleStartAddress = new SmartX.SmartLabel(); this.buttonEthernetSend = new System.Windows.Forms.Button(); this.buttonEthernetStop = new System.Windows.Forms.Button(); this.buttonEthernetStart = new System.Windows.Forms.Button(); @@ -87,8 +89,6 @@ this.labelHostIP4 = new SmartX.SmartLabel(); this.labelTitleClientServerPort = new SmartX.SmartLabel(); this.timerServer = new System.Windows.Forms.Timer(); - this.labelStartAddress = new SmartX.SmartLabel(); - this.labelTitleStartAddress = new SmartX.SmartLabel(); ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); this.groupBoxSerial.SuspendLayout(); this.groupBoxEthernet.SuspendLayout(); @@ -156,7 +156,7 @@ this.labelTitle.BackPictureBox2 = null; this.labelTitle.BorderColor = System.Drawing.Color.Black; this.labelTitle.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitle.Font = new System.Drawing.Font("New Gulim", 23F, System.Drawing.FontStyle.Bold); + this.labelTitle.Font = new System.Drawing.Font("새굴림", 23F, System.Drawing.FontStyle.Bold); this.labelTitle.ForeColor = System.Drawing.Color.White; this.labelTitle.InitVisible = true; this.labelTitle.LineSpacing = 0F; @@ -182,7 +182,7 @@ this.groupBoxSerial.Controls.Add(this.comboBoxSerial3BaudRate); this.groupBoxSerial.Controls.Add(this.smartLabel4); this.groupBoxSerial.Controls.Add(this.labelStaticBaudrate); - this.groupBoxSerial.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.groupBoxSerial.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.groupBoxSerial.FrameLineColor1 = System.Drawing.Color.Black; this.groupBoxSerial.FrameLineColor2 = System.Drawing.Color.Black; this.groupBoxSerial.FrameLineThickness = 1; @@ -200,7 +200,7 @@ // buttonSerialSend // this.buttonSerialSend.Enabled = false; - this.buttonSerialSend.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); + this.buttonSerialSend.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.buttonSerialSend.Location = new System.Drawing.Point(203, 127); this.buttonSerialSend.Name = "buttonSerialSend"; this.buttonSerialSend.Size = new System.Drawing.Size(165, 30); @@ -215,7 +215,7 @@ this.labelProtocolDescriptionCOM3_2.BackPictureBox2 = null; this.labelProtocolDescriptionCOM3_2.BorderColor = System.Drawing.Color.Black; this.labelProtocolDescriptionCOM3_2.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelProtocolDescriptionCOM3_2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold); + this.labelProtocolDescriptionCOM3_2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold); this.labelProtocolDescriptionCOM3_2.InitVisible = true; this.labelProtocolDescriptionCOM3_2.LineSpacing = 0F; this.labelProtocolDescriptionCOM3_2.Location = new System.Drawing.Point(26, 103); @@ -234,7 +234,7 @@ this.labelProtocolDescriptionCOM3_1.BackPictureBox2 = null; this.labelProtocolDescriptionCOM3_1.BorderColor = System.Drawing.Color.Black; this.labelProtocolDescriptionCOM3_1.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelProtocolDescriptionCOM3_1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold); + this.labelProtocolDescriptionCOM3_1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold); this.labelProtocolDescriptionCOM3_1.InitVisible = true; this.labelProtocolDescriptionCOM3_1.LineSpacing = 0F; this.labelProtocolDescriptionCOM3_1.Location = new System.Drawing.Point(26, 79); @@ -268,7 +268,7 @@ // buttonSave2 // this.buttonSave2.Enabled = false; - this.buttonSave2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); + this.buttonSave2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.buttonSave2.Location = new System.Drawing.Point(26, 127); this.buttonSave2.Name = "buttonSave2"; this.buttonSave2.Size = new System.Drawing.Size(165, 30); @@ -278,7 +278,7 @@ // // comboBoxSerial3Mode // - this.comboBoxSerial3Mode.Font = new System.Drawing.Font("New Gulim", 15F, System.Drawing.FontStyle.Bold); + this.comboBoxSerial3Mode.Font = new System.Drawing.Font("새굴림", 15F, System.Drawing.FontStyle.Bold); this.comboBoxSerial3Mode.Location = new System.Drawing.Point(198, 46); this.comboBoxSerial3Mode.Name = "comboBoxSerial3Mode"; this.comboBoxSerial3Mode.Size = new System.Drawing.Size(170, 29); @@ -287,7 +287,7 @@ // // comboBoxSerial3BaudRate // - this.comboBoxSerial3BaudRate.Font = new System.Drawing.Font("New Gulim", 15F, System.Drawing.FontStyle.Bold); + this.comboBoxSerial3BaudRate.Font = new System.Drawing.Font("새굴림", 15F, System.Drawing.FontStyle.Bold); this.comboBoxSerial3BaudRate.Location = new System.Drawing.Point(91, 46); this.comboBoxSerial3BaudRate.Name = "comboBoxSerial3BaudRate"; this.comboBoxSerial3BaudRate.Size = new System.Drawing.Size(100, 29); @@ -301,7 +301,7 @@ this.smartLabel4.BackPictureBox2 = null; this.smartLabel4.BorderColor = System.Drawing.Color.Black; this.smartLabel4.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.smartLabel4.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.smartLabel4.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.smartLabel4.InitVisible = true; this.smartLabel4.LineSpacing = 0F; this.smartLabel4.Location = new System.Drawing.Point(198, 20); @@ -320,7 +320,7 @@ this.labelStaticBaudrate.BackPictureBox2 = null; this.labelStaticBaudrate.BorderColor = System.Drawing.Color.Black; this.labelStaticBaudrate.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelStaticBaudrate.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelStaticBaudrate.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelStaticBaudrate.InitVisible = true; this.labelStaticBaudrate.LineSpacing = 0F; this.labelStaticBaudrate.Location = new System.Drawing.Point(92, 21); @@ -364,7 +364,7 @@ this.groupBoxEthernet.Controls.Add(this.labelStaticTcpOperationMode); this.groupBoxEthernet.Controls.Add(this.comboBoxOperationMode); this.groupBoxEthernet.Controls.Add(this.comboBoxMode); - this.groupBoxEthernet.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.groupBoxEthernet.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.groupBoxEthernet.FrameLineColor1 = System.Drawing.Color.Black; this.groupBoxEthernet.FrameLineColor2 = System.Drawing.Color.Black; this.groupBoxEthernet.FrameLineThickness = 1; @@ -379,10 +379,53 @@ this.groupBoxEthernet.Text = "TCP_Local"; this.groupBoxEthernet.TextColor = System.Drawing.Color.Black; // + // labelStartAddress + // + this.labelStartAddress.BackColor = System.Drawing.SystemColors.Window; + this.labelStartAddress.BackPictureBox = null; + this.labelStartAddress.BackPictureBox1 = null; + this.labelStartAddress.BackPictureBox2 = null; + this.labelStartAddress.BorderColor = System.Drawing.Color.Black; + this.labelStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.labelStartAddress.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); + this.labelStartAddress.InitVisible = true; + this.labelStartAddress.LineSpacing = 0F; + this.labelStartAddress.Location = new System.Drawing.Point(166, 261); + this.labelStartAddress.Name = "labelStartAddress"; + this.labelStartAddress.Size = new System.Drawing.Size(106, 28); + this.labelStartAddress.TabIndex = 266; + this.labelStartAddress.Text = "100"; + this.labelStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right; + this.labelStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelStartAddress.Visible = false; + this.labelStartAddress.Wordwrap = false; + this.labelStartAddress.Click += new System.EventHandler(this.labelStartAddress_Click); + // + // labelTitleStartAddress + // + this.labelTitleStartAddress.BackPictureBox = this.smartForm1; + this.labelTitleStartAddress.BackPictureBox1 = null; + this.labelTitleStartAddress.BackPictureBox2 = null; + this.labelTitleStartAddress.BorderColor = System.Drawing.Color.Black; + this.labelTitleStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelTitleStartAddress.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); + this.labelTitleStartAddress.ForeColor = System.Drawing.Color.Black; + this.labelTitleStartAddress.InitVisible = true; + this.labelTitleStartAddress.LineSpacing = 0F; + this.labelTitleStartAddress.Location = new System.Drawing.Point(20, 261); + this.labelTitleStartAddress.Name = "labelTitleStartAddress"; + this.labelTitleStartAddress.Size = new System.Drawing.Size(140, 28); + this.labelTitleStartAddress.TabIndex = 265; + this.labelTitleStartAddress.Text = "Start Address"; + this.labelTitleStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; + this.labelTitleStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelTitleStartAddress.Visible = false; + this.labelTitleStartAddress.Wordwrap = false; + // // buttonEthernetSend // this.buttonEthernetSend.Enabled = false; - this.buttonEthernetSend.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); + this.buttonEthernetSend.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.buttonEthernetSend.Location = new System.Drawing.Point(260, 400); this.buttonEthernetSend.Name = "buttonEthernetSend"; this.buttonEthernetSend.Size = new System.Drawing.Size(100, 30); @@ -393,7 +436,7 @@ // buttonEthernetStop // this.buttonEthernetStop.Enabled = false; - this.buttonEthernetStop.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); + this.buttonEthernetStop.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.buttonEthernetStop.Location = new System.Drawing.Point(154, 400); this.buttonEthernetStop.Name = "buttonEthernetStop"; this.buttonEthernetStop.Size = new System.Drawing.Size(100, 30); @@ -404,7 +447,7 @@ // buttonEthernetStart // this.buttonEthernetStart.Enabled = false; - this.buttonEthernetStart.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); + this.buttonEthernetStart.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.buttonEthernetStart.Location = new System.Drawing.Point(48, 400); this.buttonEthernetStart.Name = "buttonEthernetStart"; this.buttonEthernetStart.Size = new System.Drawing.Size(100, 30); @@ -419,7 +462,7 @@ this.labelProtocolDescriptionEthernet_2.BackPictureBox2 = null; this.labelProtocolDescriptionEthernet_2.BorderColor = System.Drawing.Color.Black; this.labelProtocolDescriptionEthernet_2.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelProtocolDescriptionEthernet_2.Font = new System.Drawing.Font("New Gulim", 9F, System.Drawing.FontStyle.Bold); + this.labelProtocolDescriptionEthernet_2.Font = new System.Drawing.Font("새굴림", 9F, System.Drawing.FontStyle.Bold); this.labelProtocolDescriptionEthernet_2.InitVisible = true; this.labelProtocolDescriptionEthernet_2.LineSpacing = 0F; this.labelProtocolDescriptionEthernet_2.Location = new System.Drawing.Point(53, 131); @@ -438,7 +481,7 @@ this.labelProtocolDescriptionEthernet_1.BackPictureBox2 = null; this.labelProtocolDescriptionEthernet_1.BorderColor = System.Drawing.Color.Black; this.labelProtocolDescriptionEthernet_1.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelProtocolDescriptionEthernet_1.Font = new System.Drawing.Font("New Gulim", 9F, System.Drawing.FontStyle.Bold); + this.labelProtocolDescriptionEthernet_1.Font = new System.Drawing.Font("새굴림", 9F, System.Drawing.FontStyle.Bold); this.labelProtocolDescriptionEthernet_1.InitVisible = true; this.labelProtocolDescriptionEthernet_1.LineSpacing = 0F; this.labelProtocolDescriptionEthernet_1.Location = new System.Drawing.Point(53, 105); @@ -452,8 +495,8 @@ // // buttonTcpSave1 // - this.buttonTcpSave1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); - this.buttonTcpSave1.Location = new System.Drawing.Point(285, 291); + this.buttonTcpSave1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); + this.buttonTcpSave1.Location = new System.Drawing.Point(278, 261); this.buttonTcpSave1.Name = "buttonTcpSave1"; this.buttonTcpSave1.Size = new System.Drawing.Size(106, 28); this.buttonTcpSave1.TabIndex = 254; @@ -467,13 +510,13 @@ this.labelHelp.BackPictureBox2 = null; this.labelHelp.BorderColor = System.Drawing.Color.Black; this.labelHelp.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelHelp.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelHelp.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelHelp.ForeColor = System.Drawing.Color.Red; this.labelHelp.InitVisible = true; this.labelHelp.LineSpacing = 0F; - this.labelHelp.Location = new System.Drawing.Point(28, 325); + this.labelHelp.Location = new System.Drawing.Point(27, 306); this.labelHelp.Name = "labelHelp"; - this.labelHelp.Size = new System.Drawing.Size(363, 60); + this.labelHelp.Size = new System.Drawing.Size(357, 60); this.labelHelp.TabIndex = 253; this.labelHelp.Text = "※ IP Configuration 변경 시, 재부팅 후 정상적으로 연결됩니다."; this.labelHelp.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; @@ -491,7 +534,7 @@ this.labelLocalSubnetMask4.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalSubnetMask4.InitVisible = true; this.labelLocalSubnetMask4.LineSpacing = 0F; - this.labelLocalSubnetMask4.Location = new System.Drawing.Point(341, 223); + this.labelLocalSubnetMask4.Location = new System.Drawing.Point(334, 193); this.labelLocalSubnetMask4.Name = "labelLocalSubnetMask4"; this.labelLocalSubnetMask4.Size = new System.Drawing.Size(50, 28); this.labelLocalSubnetMask4.TabIndex = 251; @@ -512,7 +555,7 @@ this.labelLocalSubnetMask3.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalSubnetMask3.InitVisible = true; this.labelLocalSubnetMask3.LineSpacing = 0F; - this.labelLocalSubnetMask3.Location = new System.Drawing.Point(285, 223); + this.labelLocalSubnetMask3.Location = new System.Drawing.Point(278, 193); this.labelLocalSubnetMask3.Name = "labelLocalSubnetMask3"; this.labelLocalSubnetMask3.Size = new System.Drawing.Size(50, 28); this.labelLocalSubnetMask3.TabIndex = 250; @@ -533,7 +576,7 @@ this.labelLocalSubnetMask2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalSubnetMask2.InitVisible = true; this.labelLocalSubnetMask2.LineSpacing = 0F; - this.labelLocalSubnetMask2.Location = new System.Drawing.Point(229, 223); + this.labelLocalSubnetMask2.Location = new System.Drawing.Point(222, 193); this.labelLocalSubnetMask2.Name = "labelLocalSubnetMask2"; this.labelLocalSubnetMask2.Size = new System.Drawing.Size(50, 28); this.labelLocalSubnetMask2.TabIndex = 249; @@ -554,7 +597,7 @@ this.labelLocalSubnetMask1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalSubnetMask1.InitVisible = true; this.labelLocalSubnetMask1.LineSpacing = 0F; - this.labelLocalSubnetMask1.Location = new System.Drawing.Point(173, 223); + this.labelLocalSubnetMask1.Location = new System.Drawing.Point(166, 193); this.labelLocalSubnetMask1.Name = "labelLocalSubnetMask1"; this.labelLocalSubnetMask1.Size = new System.Drawing.Size(50, 28); this.labelLocalSubnetMask1.TabIndex = 248; @@ -571,11 +614,11 @@ this.labelTitleSubnetMask.BackPictureBox2 = null; this.labelTitleSubnetMask.BorderColor = System.Drawing.Color.Black; this.labelTitleSubnetMask.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleSubnetMask.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelTitleSubnetMask.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelTitleSubnetMask.ForeColor = System.Drawing.Color.Black; this.labelTitleSubnetMask.InitVisible = true; this.labelTitleSubnetMask.LineSpacing = 0F; - this.labelTitleSubnetMask.Location = new System.Drawing.Point(27, 223); + this.labelTitleSubnetMask.Location = new System.Drawing.Point(20, 193); this.labelTitleSubnetMask.Name = "labelTitleSubnetMask"; this.labelTitleSubnetMask.Size = new System.Drawing.Size(140, 28); this.labelTitleSubnetMask.TabIndex = 247; @@ -595,7 +638,7 @@ this.labelLocalGateway4.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalGateway4.InitVisible = true; this.labelLocalGateway4.LineSpacing = 0F; - this.labelLocalGateway4.Location = new System.Drawing.Point(341, 257); + this.labelLocalGateway4.Location = new System.Drawing.Point(334, 227); this.labelLocalGateway4.Name = "labelLocalGateway4"; this.labelLocalGateway4.Size = new System.Drawing.Size(50, 28); this.labelLocalGateway4.TabIndex = 246; @@ -616,7 +659,7 @@ this.labelLocalGateway3.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalGateway3.InitVisible = true; this.labelLocalGateway3.LineSpacing = 0F; - this.labelLocalGateway3.Location = new System.Drawing.Point(285, 257); + this.labelLocalGateway3.Location = new System.Drawing.Point(278, 227); this.labelLocalGateway3.Name = "labelLocalGateway3"; this.labelLocalGateway3.Size = new System.Drawing.Size(50, 28); this.labelLocalGateway3.TabIndex = 245; @@ -637,7 +680,7 @@ this.labelLocalGateway2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalGateway2.InitVisible = true; this.labelLocalGateway2.LineSpacing = 0F; - this.labelLocalGateway2.Location = new System.Drawing.Point(229, 257); + this.labelLocalGateway2.Location = new System.Drawing.Point(222, 227); this.labelLocalGateway2.Name = "labelLocalGateway2"; this.labelLocalGateway2.Size = new System.Drawing.Size(50, 28); this.labelLocalGateway2.TabIndex = 244; @@ -658,7 +701,7 @@ this.labelLocalGateway1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalGateway1.InitVisible = true; this.labelLocalGateway1.LineSpacing = 0F; - this.labelLocalGateway1.Location = new System.Drawing.Point(173, 257); + this.labelLocalGateway1.Location = new System.Drawing.Point(166, 227); this.labelLocalGateway1.Name = "labelLocalGateway1"; this.labelLocalGateway1.Size = new System.Drawing.Size(50, 28); this.labelLocalGateway1.TabIndex = 243; @@ -675,11 +718,11 @@ this.labelTitleGateway.BackPictureBox2 = null; this.labelTitleGateway.BorderColor = System.Drawing.Color.Black; this.labelTitleGateway.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleGateway.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelTitleGateway.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelTitleGateway.ForeColor = System.Drawing.Color.Black; this.labelTitleGateway.InitVisible = true; this.labelTitleGateway.LineSpacing = 0F; - this.labelTitleGateway.Location = new System.Drawing.Point(27, 257); + this.labelTitleGateway.Location = new System.Drawing.Point(20, 227); this.labelTitleGateway.Name = "labelTitleGateway"; this.labelTitleGateway.Size = new System.Drawing.Size(140, 28); this.labelTitleGateway.TabIndex = 242; @@ -699,7 +742,7 @@ this.labelLocalIP4.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalIP4.InitVisible = true; this.labelLocalIP4.LineSpacing = 0F; - this.labelLocalIP4.Location = new System.Drawing.Point(341, 189); + this.labelLocalIP4.Location = new System.Drawing.Point(334, 159); this.labelLocalIP4.Name = "labelLocalIP4"; this.labelLocalIP4.Size = new System.Drawing.Size(50, 28); this.labelLocalIP4.TabIndex = 241; @@ -720,7 +763,7 @@ this.labelLocalIP3.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalIP3.InitVisible = true; this.labelLocalIP3.LineSpacing = 0F; - this.labelLocalIP3.Location = new System.Drawing.Point(285, 189); + this.labelLocalIP3.Location = new System.Drawing.Point(278, 159); this.labelLocalIP3.Name = "labelLocalIP3"; this.labelLocalIP3.Size = new System.Drawing.Size(50, 28); this.labelLocalIP3.TabIndex = 240; @@ -741,7 +784,7 @@ this.labelLocalIP2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalIP2.InitVisible = true; this.labelLocalIP2.LineSpacing = 0F; - this.labelLocalIP2.Location = new System.Drawing.Point(229, 189); + this.labelLocalIP2.Location = new System.Drawing.Point(222, 159); this.labelLocalIP2.Name = "labelLocalIP2"; this.labelLocalIP2.Size = new System.Drawing.Size(50, 28); this.labelLocalIP2.TabIndex = 239; @@ -762,7 +805,7 @@ this.labelLocalIP1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); this.labelLocalIP1.InitVisible = true; this.labelLocalIP1.LineSpacing = 0F; - this.labelLocalIP1.Location = new System.Drawing.Point(173, 189); + this.labelLocalIP1.Location = new System.Drawing.Point(166, 159); this.labelLocalIP1.Name = "labelLocalIP1"; this.labelLocalIP1.Size = new System.Drawing.Size(50, 28); this.labelLocalIP1.TabIndex = 238; @@ -779,11 +822,11 @@ this.labelTitleIPAddress.BackPictureBox2 = null; this.labelTitleIPAddress.BorderColor = System.Drawing.Color.Black; this.labelTitleIPAddress.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleIPAddress.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelTitleIPAddress.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelTitleIPAddress.ForeColor = System.Drawing.Color.Black; this.labelTitleIPAddress.InitVisible = true; this.labelTitleIPAddress.LineSpacing = 0F; - this.labelTitleIPAddress.Location = new System.Drawing.Point(27, 189); + this.labelTitleIPAddress.Location = new System.Drawing.Point(20, 159); this.labelTitleIPAddress.Name = "labelTitleIPAddress"; this.labelTitleIPAddress.Size = new System.Drawing.Size(140, 28); this.labelTitleIPAddress.TabIndex = 237; @@ -799,7 +842,7 @@ this.labelStaticTcpMode.BackPictureBox2 = null; this.labelStaticTcpMode.BorderColor = System.Drawing.Color.Black; this.labelStaticTcpMode.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelStaticTcpMode.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelStaticTcpMode.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelStaticTcpMode.InitVisible = true; this.labelStaticTcpMode.LineSpacing = 0F; this.labelStaticTcpMode.Location = new System.Drawing.Point(27, 69); @@ -818,7 +861,7 @@ this.labelStaticTcpOperationMode.BackPictureBox2 = null; this.labelStaticTcpOperationMode.BorderColor = System.Drawing.Color.Black; this.labelStaticTcpOperationMode.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelStaticTcpOperationMode.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.labelStaticTcpOperationMode.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.labelStaticTcpOperationMode.InitVisible = true; this.labelStaticTcpOperationMode.LineSpacing = 0F; this.labelStaticTcpOperationMode.Location = new System.Drawing.Point(27, 33); @@ -857,7 +900,7 @@ this.groupBoxServer.Controls.Add(this.labelLocalPort); this.groupBoxServer.Controls.Add(this.labelTitleServerPort); this.groupBoxServer.Controls.Add(this.labelServerStatus); - this.groupBoxServer.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.groupBoxServer.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.groupBoxServer.FrameLineColor1 = System.Drawing.Color.Black; this.groupBoxServer.FrameLineColor2 = System.Drawing.Color.Black; this.groupBoxServer.FrameLineThickness = 1; @@ -900,7 +943,7 @@ this.labelTitleConnectedIP.BackPictureBox2 = null; this.labelTitleConnectedIP.BorderColor = System.Drawing.Color.Black; this.labelTitleConnectedIP.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleConnectedIP.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold); + this.labelTitleConnectedIP.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold); this.labelTitleConnectedIP.ForeColor = System.Drawing.Color.Black; this.labelTitleConnectedIP.InitVisible = true; this.labelTitleConnectedIP.LineSpacing = 0F; @@ -942,7 +985,7 @@ this.labelTitleServerPort.BackPictureBox2 = null; this.labelTitleServerPort.BorderColor = System.Drawing.Color.Black; this.labelTitleServerPort.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleServerPort.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold); + this.labelTitleServerPort.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold); this.labelTitleServerPort.ForeColor = System.Drawing.Color.Black; this.labelTitleServerPort.InitVisible = true; this.labelTitleServerPort.LineSpacing = 0F; @@ -988,7 +1031,7 @@ this.groupBoxClient.Controls.Add(this.labelHostPort); this.groupBoxClient.Controls.Add(this.labelHostIP4); this.groupBoxClient.Controls.Add(this.labelTitleClientServerPort); - this.groupBoxClient.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); + this.groupBoxClient.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); this.groupBoxClient.FrameLineColor1 = System.Drawing.Color.Black; this.groupBoxClient.FrameLineColor2 = System.Drawing.Color.Black; this.groupBoxClient.FrameLineThickness = 1; @@ -1005,7 +1048,7 @@ // // buttonTcpSave2 // - this.buttonTcpSave2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular); + this.buttonTcpSave2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular); this.buttonTcpSave2.Location = new System.Drawing.Point(274, 90); this.buttonTcpSave2.Name = "buttonTcpSave2"; this.buttonTcpSave2.Size = new System.Drawing.Size(100, 28); @@ -1041,7 +1084,7 @@ this.labelTitleClientServerIP.BackPictureBox2 = null; this.labelTitleClientServerIP.BorderColor = System.Drawing.Color.Black; this.labelTitleClientServerIP.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleClientServerIP.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold); + this.labelTitleClientServerIP.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold); this.labelTitleClientServerIP.ForeColor = System.Drawing.Color.Black; this.labelTitleClientServerIP.InitVisible = true; this.labelTitleClientServerIP.LineSpacing = 0F; @@ -1167,7 +1210,7 @@ this.labelTitleClientServerPort.BackPictureBox2 = null; this.labelTitleClientServerPort.BorderColor = System.Drawing.Color.Black; this.labelTitleClientServerPort.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleClientServerPort.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold); + this.labelTitleClientServerPort.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold); this.labelTitleClientServerPort.ForeColor = System.Drawing.Color.Black; this.labelTitleClientServerPort.InitVisible = true; this.labelTitleClientServerPort.LineSpacing = 0F; @@ -1185,46 +1228,6 @@ this.timerServer.Interval = 1000; this.timerServer.Tick += new System.EventHandler(this.timerServer_Tick); // - // labelStartAddress - // - this.labelStartAddress.BackColor = System.Drawing.SystemColors.Window; - this.labelStartAddress.BackPictureBox = null; - this.labelStartAddress.BackPictureBox1 = null; - this.labelStartAddress.BackPictureBox2 = null; - this.labelStartAddress.BorderColor = System.Drawing.Color.Black; - this.labelStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.labelStartAddress.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold); - this.labelStartAddress.InitVisible = true; - this.labelStartAddress.LineSpacing = 0F; - this.labelStartAddress.Location = new System.Drawing.Point(173, 291); - this.labelStartAddress.Name = "labelStartAddress"; - this.labelStartAddress.Size = new System.Drawing.Size(106, 28); - this.labelStartAddress.TabIndex = 266; - this.labelStartAddress.Text = "100"; - this.labelStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right; - this.labelStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; - this.labelStartAddress.Wordwrap = false; - // - // labelTitleStartAddress - // - this.labelTitleStartAddress.BackPictureBox = this.smartForm1; - this.labelTitleStartAddress.BackPictureBox1 = null; - this.labelTitleStartAddress.BackPictureBox2 = null; - this.labelTitleStartAddress.BorderColor = System.Drawing.Color.Black; - this.labelTitleStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelTitleStartAddress.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold); - this.labelTitleStartAddress.ForeColor = System.Drawing.Color.Black; - this.labelTitleStartAddress.InitVisible = true; - this.labelTitleStartAddress.LineSpacing = 0F; - this.labelTitleStartAddress.Location = new System.Drawing.Point(27, 291); - this.labelTitleStartAddress.Name = "labelTitleStartAddress"; - this.labelTitleStartAddress.Size = new System.Drawing.Size(140, 28); - this.labelTitleStartAddress.TabIndex = 265; - this.labelTitleStartAddress.Text = "Start Address"; - this.labelTitleStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; - this.labelTitleStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; - this.labelTitleStartAddress.Wordwrap = false; - // // FormCommunication // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); diff --git a/INT89DB_26/Forms/FormCommunication.resx b/INT89DB_26/Forms/FormCommunication.resx index 3628710..674af5d 100644 --- a/INT89DB_26/Forms/FormCommunication.resx +++ b/INT89DB_26/Forms/FormCommunication.resx @@ -165,53 +165,52 @@ RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK - j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAACrZJREFUeF7t1jENgAAQ - wMC3w4gELBMUESQQZgQw0vGSm6qgs24LAACh+SYAAP4wWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAz - WAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMF - ABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAA - MYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAz - WAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMF - ABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAsXmuAwCAkMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA - mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ - LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC - AIgZLACAmMECAIgZLACAmMECAIjNfe4AAIRm3RYAAEIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIG - CwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAA - AGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAg - ZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIG - CwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAA - AGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAg - ZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAg9gJXVz/mZFbNFwAAAABJRU5ErkJggg== + j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAACmlJREFUeF7t1jENgEAU + QLFv50YknGWCIoIEwoyJNzapiM6xFwAAIcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAx + wQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEA + xAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIF + ABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJ + FgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAg + JlgAADHBAgCICRYAQEywAABiggUAEJvvuQAACAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB + AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE + BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA + EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW + AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm + WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA + mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA + AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB + AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE + BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA + EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW + AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm + WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA + mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA + AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB + AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE + BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA + EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW + AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm + WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA + mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA + AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB + AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE + BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA + EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW + AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm + WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA + mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA + AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB + AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE + BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA + EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW + AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm + WAAAMcECAIgJFgBAbN77BAAgNMdeAACEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQE + CwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQ + EywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYA + QEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZY + AAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICY + YAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAA + YoIFABATLACA1F4/V1c/5sLrLKMAAAAASUVORK5CYII= @@ -261,28 +260,27 @@ RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK - j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABLBJREFUaEPtm9tP6kgc - gM+/I3vcjXrOXrLr2YOANoAIQkRUrKAWmFWQS4G2Jt6ISIBEqbSU5bYGvL/4Ys6j++LftZHxsDisrifl - 0hq+zFPnN/T3ZSbTdph5N6QceKF8VA9KrXxQDbbm2VzetV76UfOD3jJhd8y7PW4gSVxuYh63YdPqEdX7 - 1vyfKA0rFXoL5na7Go3/kCSN9FZdqxrj52eVRlTv5/BZGLqxsREOh2maZiQJTdMkSfp8Ppit2TY1rFSg - SsNKBfTx+XzhcBj9DakSCoWg1fSsAVXSWSagD0VRaDtpE41GodXY5G//Kn1Uf0+4CACAjPqnmWAwCABw - LONw+D0o6etd5Pf70Vj54PV6AQBK/a+PSnbHvHy7CAI7ymybgkoK+PyR7Pz2GiKRCADA7ph/UPqgGoTP - HzRKVlAUBQBYXnW+HSWapuFbRV9JwvSV5EBfSQ70WMnr9UajUfSqOHqp5Ha7MQyLx+NohTh6puR0OnU6 - nc/nOz09RevE0RslgiB0Ol0kEmFZ9urqCq0WRw+UjEbj5ORkKBRiWZbjuMvLSzRCHF1VcrlcGo3GZrPt - 7e2xLHt8fMzz/MXFBRonju4p4TiOYZjP50un08df4Xn+/PwcDRVHl5S0Wq3JZKIoCnZOg1wud3Z2hkaL - o+NKXq93fHx8YWEhHo83y0AEQZDZjLe0tDQx8bCYkUqlUJs6giBUq1W0mTg6qKRWq00mUzgczmQyqMpX - OI47OTlBW4qjI0pOp1OlUuE4nkwmUYmnsCybTCbR9uJov5LFYjEYDCRJHh4eogYtsCwbi8UIgvj0IqFQ - CL3N87RTiaZpDMNmZma2t7eRmU0k3/SG0TYlq9WqVqtxHE8kEmhGoum2ktvt1uv1ZrN5c3Pz6OgITacd - dFXJbrdrtdq1tbWDgwM0kfbRbaWdnZ0Xpum20FWlZDJZrVaLxSLHcWgi7aOrSgzD7O/v/1VHEAQ0lzbR - bSVIJpOp1Wod6q7eKDEMs7u7WygUisUiz/NoUuLomRKE47jXD0KO425ubu7u7v5+kfv7e/Q2z9N+JYZh - 0un0K+cMQRBub2/R9uLoiBLDMFtbW6VS6X+7K5/P12o1tLE4OqUEYVm2Uqnk8/lsNova1MnlcvL4uGgm - FotVKpXnBiHP83L6BGxGEIRyuZzL5RAljuNk9qHeTCaTaR2EHMfJbzmlmUQiUa1Wy+Vy48GVzWbluujV - DM/zpVKpMQhlvDTZTCqVKhQKcH6X9wJyM4lE4s8619fXaJ04eqYEP0y+fPlyd3eHVoijl0odoq8kB/pK - cqCvJAfeoNKTLYZDygGX+2H78dvZCDqkHLAtWgEAJEmigfIhEAgAAIxW/aPShGkM7ntHA+XD+vo6AOCT - 9udHpZGx71ZWlwEA3/QvlXTw+/0AgIWluScHFDTGz3CbfyQSQVtIG5IkAQAej2dU+xN6MsZsm4JWMtrW - D/sHAIBNq9FjJPWimLLqYITX6w0Gg9FolKIoWmJQFBWJRAKBADyU4PF4tGZNk0XLKbOxyVHnigOKSZ9F - p70x3p5VejjLNKZQGUYtcybcubhCLBMuQlJlZXV50bFgmjX8rvulNfn/VpJ7+QcoZ43JL5we4wAAAABJ - RU5ErkJggg== + j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABIRJREFUaEPtm+lTIkcY + h/PvrMkmtbvZHJW4WS6huAShRFxwFBWQKIg4iMYqz/Ioscr7ilcsb/3iF8uP5ot/V35uv8GBXV22tpmZ + 3uKp5sP09AzvU93zdveI37wwPHuivDY/11v50fS8JMiS8hGlnyw/OP3WcNu7eFc8oUti8eg7KWhrML8y + fVcSPEqR0ktDjdNvi8djdGki8acuoeASic5Yp8XzVqmA8qAE42apiTXt7e3NZrNDQ0N/6RIEJstyKpVi + 0fqC9eiMgggpoYr5oB1k6FLd09/fz6wamtylSg6/lfkMDg5Sc0HI5XLMyuj6/UHptfn7aCyKWoH6R0km + k0Hwbe0SG373SshvqEqn09REQJLJJBQMzt9ICfla3C5isI5CnmBKNWz+0W1+K4eBgQEooG/ulTAZ4wDJ + nk6KCbIaLNo7I1+PEoYYLLCqqCrpmKqSCFSVREBjJSxesNakA05oqRSPx2022/T0NB1zQjOlSCTicDiw + hTk+PqYqTmijFI1G4YPF2PLy8sXFBdVyQgMlj8fjcrmwCYXP2tra+fk5neCEqkqxWMxisQSDwYmJCfis + rKysr6+fnZ3RaU6opyRJEpIBHp75+XnIMKB0enpKLTihkpLdbvd6vVj2s84psLGxcXJyQo04UXElzDx1 + dXWhUAjJmjwUbG5uCpbxWltbrdb7lxn5fJ4kioHS4eEhteZEBZXMZjMGWzabXVpaIoMPQMY7ODigCzhR + ESVMoyaTSZKkubk5iv0R8GihDV3GCf5Kfr/f7XbLsrywsECBPw6UJicnMfO+eRJMYnT3MuCphHshTTc2 + No6OjpZkti/ks1YY3JQCgQAeHgy22dlZCoQfaithQe10On0+3/Dw8OLiIkXBFVWVwuEwptHu7u6ZmRn6 + /gqgttLY2NgTaZoLqiohBWOu3NnZwQxD318B1H6Wpqam/nkPlgIUAm/UVmJg7B0dHVWou7RRAuPj49vb + 27DCloFi4YRmSgz0UvmDEI2vrq5ub2//fZK7uzu6exnwVwLY5JWZM2B+fX1Nl3GiIkpgZGRkd3f3k921 + tbWFJ5Cu4USllBhY6e3v7yPu1dVVkigGu1oxNhdKsNCG1WODEIlEpC2gEgy/vb099Amp/A88BX41iYnr + w0EIJfFepyjBvgPDDN1VmLigJ+pLLyXwQTIsDEKBX00qyefzWGew/C72C2QlGIR/v+fy8pKqOKGZEsDG + 5ObmBqshOuaElkoVoqokAlUlEagqicBXqFT0E0N8IIdjiNJ5ASn6ISg+wZYAjmVZpvMC0tfXBwVPwElK + Vq8Rx6lUis4LSE9PDxTe2H8hpVfGbzs621H1WX+l0g/pdBrBh1qb4UJKKBbPW9QCDEpqKAh4XhB2V1dX + rf3nIiUUX7CeWQn0s37WP8DWYC6IPCi9MNTUBxysRTKZzGQyuVwOyRGZUFcgJAwl5AP2TwnoH7vPorAo + UrovRldtpKONiemflki4MN4KpVQJ5aWxxuSu9Td7pUhLR7Q9GovqqiCTtbSFvE3uPxy/lkTOykeUxC6G + Z/8BKGeNyS3v/jQAAAAASUVORK5CYII= @@ -332,103 +330,98 @@ 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 + EPAlSQAAAABJRU5ErkJggg== @@ -478,43 +471,39 @@ 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 - RK5CYII= + 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 + /75aOx5brnAAAAAASUVORK5CYII= @@ -564,36 +553,35 @@ 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 - ku/cAAAAAElFTkSuQmCC + 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 + 6AJaAAAAAElFTkSuQmCC @@ -606,6 +594,6 @@ False - 37 + 49 \ No newline at end of file diff --git a/INT89DB_26/Forms/FormFactoryReset.cs b/INT89DB_26/Forms/FormFactoryReset.cs index 08c3614..49adca2 100644 --- a/INT89DB_26/Forms/FormFactoryReset.cs +++ b/INT89DB_26/Forms/FormFactoryReset.cs @@ -140,9 +140,9 @@ namespace INT89DB_26.Forms structItem.DummyBool2 = false; structItem.DummyBool3 = false; structItem.DummyBool4 = false; - structItem.DummyInt1 = 0; - structItem.DummyInt2 = 0; - structItem.ModbusTcpStartAddress = 0; + structItem.FeedbackSampleCount = 10; + structItem.FeedbackIgnorePackages = 5; + structItem.ModbusTcpStartAddress = this.ParentForm.SystemConfig.ModbusTcpStartAddress; structItem.Serial3BaudRate = this.ParentForm.SystemConfig.Serial3BaudRate; structItem.Serial3Mode = this.ParentForm.SystemConfig.Serial3Mode; structItem.EthernetServerAddress = ""; diff --git a/INT89DB_26/Forms/FormMain.Designer.cs b/INT89DB_26/Forms/FormMain.Designer.cs index d419bb1..97de1d2 100644 --- a/INT89DB_26/Forms/FormMain.Designer.cs +++ b/INT89DB_26/Forms/FormMain.Designer.cs @@ -104,6 +104,7 @@ this.smartTCPMultiServer.MaxReceiveBufferSize = 1000; this.smartTCPMultiServer.Port = 5001; this.smartTCPMultiServer.ReceiveTimeout = 3000; + this.smartTCPMultiServer.OnReceiveHandler += new SmartX.SmartTCPMultiServer.ReceiveHandler(this.smartTCPMultiServer_OnReceiveHandler); // // FormMain // diff --git a/INT89DB_26/Forms/FormMain.cs b/INT89DB_26/Forms/FormMain.cs index e25416e..a2e5db2 100644 --- a/INT89DB_26/Forms/FormMain.cs +++ b/INT89DB_26/Forms/FormMain.cs @@ -79,6 +79,8 @@ namespace INT89DB_26.Forms public OptionParameterItem CurrentOptionParameterItem; // User public CollectionUser CurrentCollectionUser; + // 현재 선택 된 피드백 설정 값 + public FeedbackConfiguration CurrentFeedbackItem; // 열별 중량 데이터 public Collection CollectionWeightData; // 장비테스트모드 열별 중량 데이터 @@ -298,6 +300,10 @@ namespace INT89DB_26.Forms this.CurrentOptionParameterItem = new OptionParameterItem(); this.CurrentCollectionUser = new CollectionUser(); this.CurrentAlarmList = new AlarmList(); + this.CurrentFeedbackItem = new FeedbackConfiguration(); + this.Current30000ModbusData = new Modbus_30000_Data(); + this.Current40000ModbusData = new Modbus_40000_Data(); + this.Modbus = new Modbus(); // SystemFile1 폴더 생성 if (Directory.Exists(this.PathSystemFileFolder1) == false) @@ -313,22 +319,22 @@ namespace INT89DB_26.Forms } private void DefaultSetting2() { - // Ethernet Static setting - if (this.smartConfigs.IPSettings.DHCPEnable == 1) - { - this.smartConfigs.IPSettings.DHCPEnable = 0; - - this.smartConfigs.IPSettings.DeviceIP = "192.168.3.10"; - this.smartConfigs.IPSettings.SubNetMask = "255.255.255.0"; - this.smartConfigs.IPSettings.GateWay = "192.168.3.1"; - - this.smartConfigs.IPSettings.Save(); - this.smartConfigs.IPSettings.SetApply(); - } - // 이더넷 if (this.SystemConfig.IsEthernetEnable == true) { + // Ethernet Static setting + if (this.smartConfigs.IPSettings.DHCPEnable == 1) + { + this.smartConfigs.IPSettings.DHCPEnable = 0; + + this.smartConfigs.IPSettings.DeviceIP = "192.168.11.205"; + this.smartConfigs.IPSettings.SubNetMask = "255.255.255.0"; + this.smartConfigs.IPSettings.GateWay = "192.168.11.1"; + + this.smartConfigs.IPSettings.Save(); + this.smartConfigs.IPSettings.SetApply(); + } + if (this.SystemConfig.EthernetOperationMode == 1) { try @@ -343,6 +349,8 @@ namespace INT89DB_26.Forms { } } + else if (this.SystemConfig.EthernetOperationMode == 2) + this.EthernetClientDisconnect(); } } @@ -1069,6 +1077,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[0].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[0].WeightString = receiveData.Substring(2, 5); this.CollectionWeightData[0].ADCValue = receiveData.Substring(7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(0); } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1096,6 +1107,15 @@ namespace INT89DB_26.Forms this.EthernetWrite(this.Protocol_STD1(1, this.CollectionWeightData[0])); else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2 this.EthernetWrite(this.Protocol_STD2(1, this.CollectionWeightData[0])); + else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(0), this.SystemConfig.ModbusTcpStartAddress + (1 * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1111,6 +1131,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[1].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[1].WeightString = receiveData.Substring(2, 5); this.CollectionWeightData[1].ADCValue = receiveData.Substring(7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(1); } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1138,6 +1161,15 @@ namespace INT89DB_26.Forms this.EthernetWrite(this.Protocol_STD1(2, this.CollectionWeightData[1])); else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2 this.EthernetWrite(this.Protocol_STD2(2, this.CollectionWeightData[1])); + else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(1), this.SystemConfig.ModbusTcpStartAddress + (2 * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1153,6 +1185,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[2].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[2].WeightString = receiveData.Substring(2, 5); this.CollectionWeightData[2].ADCValue = receiveData.Substring(7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(2); } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1180,6 +1215,15 @@ namespace INT89DB_26.Forms this.EthernetWrite(this.Protocol_STD1(3, this.CollectionWeightData[2])); else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2 this.EthernetWrite(this.Protocol_STD2(3, this.CollectionWeightData[2])); + else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(2), this.SystemConfig.ModbusTcpStartAddress + (3 * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1195,6 +1239,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[3].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[3].WeightString = receiveData.Substring(2, 5); this.CollectionWeightData[3].ADCValue = receiveData.Substring(7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(3); } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1222,6 +1269,15 @@ namespace INT89DB_26.Forms this.EthernetWrite(this.Protocol_STD1(4, this.CollectionWeightData[3])); else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2 this.EthernetWrite(this.Protocol_STD2(4, this.CollectionWeightData[3])); + else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(3), this.SystemConfig.ModbusTcpStartAddress + (4 * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1237,6 +1293,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[4].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[4].WeightString = receiveData.Substring(2, 5); this.CollectionWeightData[4].ADCValue = receiveData.Substring(7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(4); } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1264,6 +1323,15 @@ namespace INT89DB_26.Forms this.EthernetWrite(this.Protocol_STD1(5, this.CollectionWeightData[4])); else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2 this.EthernetWrite(this.Protocol_STD2(5, this.CollectionWeightData[4])); + else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(4), this.SystemConfig.ModbusTcpStartAddress + (5 * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1279,6 +1347,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[5].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[5].WeightString = receiveData.Substring(2, 5); this.CollectionWeightData[5].ADCValue = receiveData.Substring(7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(5); } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1306,6 +1377,15 @@ namespace INT89DB_26.Forms this.EthernetWrite(this.Protocol_STD1(6, this.CollectionWeightData[5])); else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2 this.EthernetWrite(this.Protocol_STD2(6, this.CollectionWeightData[5])); + else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(5), this.SystemConfig.ModbusTcpStartAddress + (6 * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1323,6 +1403,9 @@ namespace INT89DB_26.Forms this.CollectionWeightData[i].Weight = Helper.StringToWeight(receiveData.Substring(i * 12 + 2, 5), this.SystemConfig.DecimalPlaces); this.CollectionWeightData[i].WeightString = receiveData.Substring(i * 12 + 2, 5); this.CollectionWeightData[i].ADCValue = receiveData.Substring(i * 12 + 7, 5); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) + this.Update30000ModbusData(i); } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) @@ -1340,6 +1423,19 @@ namespace INT89DB_26.Forms { this.DataBackup(this.CollectionWeightData); this.ChildFormMainDisplay.UpdateUpdateStartWeightDisplay(this.EquipmentStatus, this.CollectionWeightData); + + if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus + { + if (this.SystemConfig.EthernetOperationMode == 2) // Client + { + for (int i = 0; i < this.SystemConfig.EquipmentColumns; i++) + { + byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP( + this.Protocol_Modbus_Client_Write_Lane_Data_TCP(i), this.SystemConfig.ModbusTcpStartAddress + ((i + 1) * 50) + 140); + this.EthernetClientWeightDataForModbus(etherByteData); + } + } + } } else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest) { @@ -1812,6 +1908,10 @@ namespace INT89DB_26.Forms double passValue = this.Current30000ModbusData.PassValue; double overValue = this.Current30000ModbusData.OverValue; double tareValue = this.Current30000ModbusData.TareValue; + double lowLimit = this.Current30000ModbusData.LowLimit; + double highLimit = this.Current30000ModbusData.HighLimit; + double deadZoneLow = this.Current30000ModbusData.DeadZoneLowLimit; + double deadZoneHigh = this.Current30000ModbusData.DeadZoneHighLimit; int equipmentStatus; if (this.EquipmentStatus == DataStore.EquipmentStatus.Start) @@ -1864,6 +1964,66 @@ namespace INT89DB_26.Forms for (int i = 0; i < 2; i++) madeData[madeDataIndex + i] = length4Value[1 - i]; break; + case (int)ModbusDefine._30000_Modbus.HighLimit_High: + length4Value = GetBytes((Single)highLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.HighLimit_Low: + length4Value = GetBytes((Single)highLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_High: + length4Value = GetBytes((Single)deadZoneHigh); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_Low: + length4Value = GetBytes((Single)deadZoneHigh); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_High: + length4Value = GetBytes((Single)deadZoneLow); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_Low: + length4Value = GetBytes((Single)deadZoneLow); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.LowLimit_High: + length4Value = GetBytes((Single)lowLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.LowLimit_Low: + length4Value = GetBytes((Single)lowLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.SampleCount_High: + length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.SampleCount_Low: + length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.IgnoreCount_High: + length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.IgnoreCount_Low: + length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; #endregion #region #1 @@ -2400,540 +2560,6 @@ namespace INT89DB_26.Forms break; #endregion - #region #7 - case (int)ModbusDefine._30000_Modbus._7_Update: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].Update); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_Grade: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].Grade); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_Weight_High: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[6].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_Weight_Low: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[6].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_UnderCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_UnderCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_PassCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_PassCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_OverCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_OverCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_NGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_NgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_ExNGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_ExNgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_TotalCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._7_TotalCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - #endregion - - #region #8 - case (int)ModbusDefine._30000_Modbus._8_Update: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].Update); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_Grade: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].Grade); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_Weight_High: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[7].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_Weight_Low: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[7].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_UnderCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_UnderCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_PassCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_PassCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_OverCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_OverCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_NGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_NgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_ExNGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_ExNgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_TotalCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._8_TotalCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - #endregion - - #region #9 - case (int)ModbusDefine._30000_Modbus._9_Update: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].Update); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_Grade: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].Grade); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_Weight_High: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[8].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_Weight_Low: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[8].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_UnderCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_UnderCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_PassCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_PassCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_OverCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_OverCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_NGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_NgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_ExNGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_ExNgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_TotalCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._9_TotalCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - #endregion - - #region #10 - case (int)ModbusDefine._30000_Modbus._10_Update: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].Update); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_Grade: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].Grade); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_Weight_High: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[9].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_Weight_Low: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[9].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_UnderCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_UnderCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_PassCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_PassCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_OverCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_OverCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_NGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_NgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_ExNGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_ExNgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_TotalCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._10_TotalCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - #endregion - - #region #11 - case (int)ModbusDefine._30000_Modbus._11_Update: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].Update); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_Grade: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].Grade); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_Weight_High: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[10].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_Weight_Low: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[10].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_UnderCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_UnderCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_PassCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_PassCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_OverCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_OverCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_NGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_NgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_ExNGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_ExNgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_TotalCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._11_TotalCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - #endregion - - #region #12 - case (int)ModbusDefine._30000_Modbus._12_Update: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].Update); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_Grade: - length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].Grade); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length2Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_Weight_High: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[11].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_Weight_Low: - if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop) - length4Value = GetBytes((Single)0.0); - else - length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[11].Weight); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_UnderCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_UnderCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].UnderCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_PassCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_PassCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].PassCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_OverCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_OverCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].OverCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_NGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_NgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].NGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_ExNGCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_ExNgCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].ExNGCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_TotalCount_High: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[3 - i]; - break; - case (int)ModbusDefine._30000_Modbus._12_TotalCount_Low: - length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].TotalCount); - for (int i = 0; i < 2; i++) - madeData[madeDataIndex + i] = length4Value[1 - i]; - break; - #endregion - default: length2Value = GetBytes(0); for (int i = 0; i < 2; i++) @@ -3080,6 +2706,10 @@ namespace INT89DB_26.Forms double passValue = this.Current30000ModbusData.PassValue; double overValue = this.Current30000ModbusData.OverValue; double tareValue = this.Current30000ModbusData.TareValue; + double lowLimit = this.Current30000ModbusData.LowLimit; + double highLimit = this.Current30000ModbusData.HighLimit; + double deadZoneLow = this.Current30000ModbusData.DeadZoneLowLimit; + double deadZoneHigh = this.Current30000ModbusData.DeadZoneHighLimit; int equipmentStatus; if (this.EquipmentStatus == DataStore.EquipmentStatus.Start) @@ -3132,6 +2762,66 @@ namespace INT89DB_26.Forms for (int i = 0; i < 2; i++) madeData[madeDataIndex + i] = length4Value[1 - i]; break; + case (int)ModbusDefine._30000_Modbus.HighLimit_High: + length4Value = GetBytes((Single)highLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.HighLimit_Low: + length4Value = GetBytes((Single)highLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_High: + length4Value = GetBytes((Single)deadZoneHigh); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_Low: + length4Value = GetBytes((Single)deadZoneHigh); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_High: + length4Value = GetBytes((Single)deadZoneLow); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_Low: + length4Value = GetBytes((Single)deadZoneLow); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.LowLimit_High: + length4Value = GetBytes((Single)lowLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.LowLimit_Low: + length4Value = GetBytes((Single)lowLimit); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.SampleCount_High: + length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.SampleCount_Low: + length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; + case (int)ModbusDefine._30000_Modbus.IgnoreCount_High: + length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[3 - i]; + break; + case (int)ModbusDefine._30000_Modbus.IgnoreCount_Low: + length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages); + for (int i = 0; i < 2; i++) + madeData[madeDataIndex + i] = length4Value[1 - i]; + break; #endregion #region #1 @@ -4095,6 +3785,14 @@ namespace INT89DB_26.Forms this.Current30000ModbusData.PassValue = Helper.StringToWeight(this.CurrentProductItem.PassRange, this.SystemConfig.DecimalPlaces); this.Current30000ModbusData.OverValue = Helper.StringToWeight(this.CurrentProductItem.OverRange, this.SystemConfig.DecimalPlaces); this.Current30000ModbusData.TareValue = Helper.StringToWeight(this.CurrentProductItem.TareRange, this.SystemConfig.DecimalPlaces); + this.Current30000ModbusData.HighLimit = Helper.StringToWeight(this.CurrentFeedbackItem.HighLimit, this.SystemConfig.DecimalPlaces); + this.Current30000ModbusData.DeadZoneHighLimit = + Helper.StringToWeight((int.Parse(this.CurrentProductItem.PassRange) - int.Parse(this.CurrentFeedbackItem.DeadZone)).ToString(), this.SystemConfig.DecimalPlaces); + this.Current30000ModbusData.DeadZoneLowLimit = + Helper.StringToWeight(this.CurrentProductItem.PassRange + this.CurrentFeedbackItem.DeadZone, this.SystemConfig.DecimalPlaces); + this.Current30000ModbusData.LowLimit = Helper.StringToWeight(this.CurrentFeedbackItem.LowLimit, this.SystemConfig.DecimalPlaces); + this.Current30000ModbusData.SampleCount = (UInt32)this.SystemConfig.FeedbackSampleCount; + this.Current30000ModbusData.IgnoreCount = (UInt32)this.SystemConfig.FeedbackIgnorePackages; } public void Update30000ModbusData(int index) { @@ -4570,8 +4268,8 @@ namespace INT89DB_26.Forms structItem.DummyBool2 = false; structItem.DummyBool3 = false; structItem.DummyBool4 = false; - structItem.DummyInt1 = 0; - structItem.DummyInt2 = 0; + structItem.FeedbackSampleCount = this.SystemConfig.FeedbackSampleCount; + structItem.FeedbackIgnorePackages = this.SystemConfig.FeedbackIgnorePackages; structItem.ModbusTcpStartAddress = this.SystemConfig.ModbusTcpStartAddress; structItem.EthernetServerAddress = this.SystemConfig.EthernetServerAddress; @@ -4633,8 +4331,8 @@ namespace INT89DB_26.Forms structItem.DummyBool2 = false; structItem.DummyBool3 = false; structItem.DummyBool4 = false; - structItem.DummyInt1 = 0; - structItem.DummyInt2 = 0; + structItem.FeedbackSampleCount = 0; + structItem.FeedbackIgnorePackages = 0; structItem.ModbusTcpStartAddress = item.ModbusTcpStartAddress; structItem.EthernetServerAddress = item.EthernetServerAddress; @@ -4685,6 +4383,8 @@ namespace INT89DB_26.Forms this.SystemConfig.Serial3BaudRate = structItem.Serial3BaudRate; this.SystemConfig.Serial3Mode = structItem.Serial3Mode; this.SystemConfig.IsLogin = structItem.IsLogin; + this.SystemConfig.FeedbackSampleCount = structItem.FeedbackSampleCount; + this.SystemConfig.FeedbackIgnorePackages = structItem.FeedbackIgnorePackages; if (structItem.InverterQTY < 1 || structItem.InverterQTY > 4) { @@ -4874,6 +4574,35 @@ namespace INT89DB_26.Forms this.smartFileIO.Close(); } + public void LoadProductFile(ref Collection values) + { + string fullFilePath = ""; + StructProductItem structItem; + + this.smartFileIO.Close(); + fullFilePath = this.PathSystemFileFolder2 + "ProductItem.int"; + this.smartFileIO.FilePathName = fullFilePath; + + this.smartFileIO.Open(this.BufferSmartUart); + + if (this.smartFileIO.ReadStructureAllBuffer() == true) + { + for (int i = 0; i < 1000; i++) + { + structItem = (StructProductItem)this.smartFileIO.ReadStructureBuffer(typeof(StructProductItem), i); + + values[i].Number = structItem.Number; + values[i].Name = structItem.Name; + values[i].LotNo = structItem.LotNo; + values[i].OverRange = structItem.OverRange; + values[i].PassRange = structItem.PassRange; + values[i].UnderRange = structItem.UnderRange; + values[i].TareRange = structItem.TareRange; + } + } + + this.smartFileIO.Close(); + } #endregion #region JudgmentSetItem File @@ -5229,6 +4958,125 @@ namespace INT89DB_26.Forms } #endregion + #region FeedbackItem File + private void CreateFeedbackItemFile() + { + string fullFilePath = ""; + StructFeedbackConfiguration structItem; + Collection collectionProductItem; + + collectionProductItem = new Collection(); + for (int i = 0; i < 1000; i++) + collectionProductItem.Add(new ProductItem()); + + this.LoadProductFile(ref collectionProductItem); + + this.smartFileIO.Close(); + fullFilePath = this.PathSystemFileFolder2 + "FeedbackItem.int"; + this.smartFileIO.FilePathName = fullFilePath; + this.smartFileIO.Open(this.BufferSmartUart); + + this.CurrentFeedbackItem.Initialization(); + + for (int i = 0; i < 1000; i++) + { + structItem.HightLimit = collectionProductItem[i].OverRange; + structItem.LowLimit = collectionProductItem[i].UnderRange; + structItem.DeadZone = this.CurrentFeedbackItem.DeadZone; + + structItem.DummyBool1 = false; + structItem.DummyBool2 = false; + structItem.DummyBool3 = false; + + structItem.DummyInt1 = 1; + structItem.DummyInt2 = 1; + structItem.DummyInt3 = 1; + + structItem.DummyString1 = ""; + structItem.DummyString2 = ""; + structItem.DummyString3 = ""; + + this.smartFileIO.WriteStructure_Begin(structItem, i); + } + this.smartFileIO.WriteStructure_End(); + } + public void SaveFeedbackItemFile(FeedbackConfiguration item, int index) + { + bool fileCheck = false; + string fullFilePath = ""; + StructFeedbackConfiguration structItem; + + this.smartFileIO.Close(); + fullFilePath = this.PathSystemFileFolder2 + "FeedbackItem.int"; + this.smartFileIO.FilePathName = fullFilePath; + + FileInfo fileInfo = new FileInfo(fullFilePath); + fileCheck = fileInfo.Exists; + + if (fileCheck == false) + this.CreateFeedbackItemFile(); + else + this.smartFileIO.Open(this.BufferSmartUart); + + structItem.HightLimit = item.HighLimit; + structItem.LowLimit = item.LowLimit; + structItem.DeadZone = item.DeadZone; + + structItem.DummyBool1 = false; + structItem.DummyBool2 = false; + structItem.DummyBool3 = false; + + structItem.DummyInt1 = 1; + structItem.DummyInt2 = 1; + structItem.DummyInt3 = 1; + + structItem.DummyString1 = ""; + structItem.DummyString2 = ""; + structItem.DummyString3 = ""; + + this.smartFileIO.WriteStructure_Begin(structItem, index); + this.smartFileIO.WriteStructure_End(); + + this.smartFileIO.Close(); + } + public void LoadFeedbackItemFile(ref FeedbackConfiguration item, int index) + { + bool fileCheck = false; + string fullFilePath = ""; + StructFeedbackConfiguration structItem; + + this.smartFileIO.Close(); + fullFilePath = this.PathSystemFileFolder2 + "FeedbackItem.int"; + this.smartFileIO.FilePathName = fullFilePath; + + FileInfo fileInfo = new FileInfo(fullFilePath); + fileCheck = fileInfo.Exists; + + if (fileCheck == false) + this.CreateFeedbackItemFile(); + else + this.smartFileIO.Open(this.BufferSmartUart); + + try + { + structItem = (StructFeedbackConfiguration)this.smartFileIO.ReadStructure(index, typeof(StructFeedbackConfiguration)); + + item.HighLimit = structItem.HightLimit; + item.LowLimit = structItem.LowLimit; + item.DeadZone = structItem.DeadZone; + } + catch + { + DialogFormMessage myMsg = new DialogFormMessage(17, this.SystemConfig.Language); + myMsg.ShowDialog(); + + this.smartFileIO.Close(); + } + + this.smartFileIO.Close(); + } + #endregion + #region UserLevel1File private void CreateUserLevel1File() { @@ -5799,6 +5647,9 @@ namespace INT89DB_26.Forms // 변수 초기 셋팅2 this.DefaultSetting2(); + this.Update30000ModbusData(); + for (int i = 0; i < this.SystemConfig.EquipmentColumns; i++) + this.Update30000ModbusData(i); // 통신 OPEN this.OpenSmartUartLink(); @@ -5849,6 +5700,152 @@ namespace INT89DB_26.Forms this.CommunicationCheckCount += 1; } } + private void smartTCPMultiServer_OnReceiveHandler(SmartTCPMultiServer.CHandleClinet.READINFO datas) + { + int ret = 0; + byte[] readByte; + string strRecData = ""; + byte[] sendOPCDatas = new byte[57]; + byte[] sendModbusDatas; + byte[] madeDatas; + + try + { + readByte = datas.receiveDatas; + strRecData = SmartTCPMultiServer.ConvertAsciiByteToString(readByte); + } + catch + { + return; + } + + switch (this.SystemConfig.EthernetMode) + { + case (int)DataStore.CommunicationMode.f99_Modbus: + #region Modbus TCP + if (this.smartTCPMultiServer.ClientInfoList != null) + { + if (readByte[7] == 0x03) // Read Holding Register + { + #region Read Holding Register + try + { + byte[] responseData; + byte errorCheck = this.Modbus.CheckRequestSpecialDataErrorTCP(readByte, ModbusFunctionCode.FunctionCode_03); + + if (errorCheck == 0x00) + responseData = this.Modbus.MakeTCPResponseData(readByte, this.Protocol_Modbus_Server_Read_Lane_Data_TCP(readByte), ModbusFunctionCode.FunctionCode_03); + else + responseData = this.Modbus.MakeTCPErrorResponseData(readByte, errorCheck, ModbusFunctionCode.FunctionCode_03); + + foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList) + { + this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData); + } + + // 로그 + if (this.IsCommunicationLogOpen == true) + { + this.smartFileCommunicationLog.WriteString(string.Format("Receive TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(readByte))); + this.smartFileCommunicationLog.WriteString(string.Format("Send TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(responseData))); + } + } + catch + { + } + #endregion + } + else if (readByte[7] == 0x10) // Write Multiple Register + { + #region Write Multiple Register + try + { + byte[] errorResponseData = new byte[9]; + byte[] responseData = new byte[12]; + byte errorCheck = this.Modbus.CheckRequestSpecialDataErrorTCP(readByte, ModbusFunctionCode.FunctionCode_16); + + if (errorCheck == 0x00) + { + for (int i = 0; i < 12; i++) + responseData[i] = readByte[i]; + responseData[5] = 0x06; + + foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList) + { + this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData); + } + + this.ReceiveModbusTCPWriteManager(readByte); + } + else + { + for (int i = 0; i < 5; i++) + errorResponseData[i] = readByte[i]; + + // Length + errorResponseData[5] = 0x03; + // Unit ID + errorResponseData[6] = 0x01; + // Function Code + errorResponseData[7] = 0x90; + // Error Code + errorResponseData[8] = errorCheck; + + foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList) + { + this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData); + } + } + + // 로그 + if (this.IsCommunicationLogOpen == true) + { + this.smartFileCommunicationLog.WriteString(string.Format("Receive TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(readByte))); + this.smartFileCommunicationLog.WriteString(string.Format("Send TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(responseData))); + } + } + catch + { + } + #endregion + } + else // Read Input Register(0x04) + { + #region Read Input Register + try + { + byte[] responseData; + byte errorCheck = this.Modbus.CheckRequestSpecialDataErrorTCP(readByte, ModbusFunctionCode.FunctionCode_04); + + if (errorCheck == 0x00) + responseData = this.Modbus.MakeTCP04ResponseData(readByte, this.Protocol_Modbus_Server_Read_Lane_Data_TCP(readByte)); + else + responseData = this.Modbus.MakeTCP04ErrorResponseData(readByte, errorCheck); + + foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList) + { + this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData); + } + + // 로그 + //if (this.IsCommunicationLogOpen == true) + //{ + //this.smartFileCommunicationLog.WriteString(string.Format("Receive TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(readByte))); + //this.smartFileCommunicationLog.WriteString(string.Format("Send TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(responseData))); + //} + } + catch + { + } + #endregion + } + } + #endregion + break; + default: + break; + } + } private void timerAdcLog_Tick(object sender, EventArgs e) { diff --git a/INT89DB_26/Forms/FormMainDisplay.cs b/INT89DB_26/Forms/FormMainDisplay.cs index d5fc492..e090dd3 100644 --- a/INT89DB_26/Forms/FormMainDisplay.cs +++ b/INT89DB_26/Forms/FormMainDisplay.cs @@ -1145,6 +1145,7 @@ namespace INT89DB_26.Forms else { this.UpdateUnderRangeChange(myKeyPad.StringValue); + this.ParentForm.Update30000ModbusData(); } } } @@ -1165,6 +1166,7 @@ namespace INT89DB_26.Forms else { this.UpdatePassRangeChange(myKeyPad.StringValue); + this.ParentForm.Update30000ModbusData(); } } } @@ -1184,6 +1186,7 @@ namespace INT89DB_26.Forms else { this.UpdateOverRangeChange(myKeyPad.StringValue); + this.ParentForm.Update30000ModbusData(); } } } @@ -1203,6 +1206,7 @@ namespace INT89DB_26.Forms else { this.UpdateTareRangeChange(myKeyPad.StringValue); + this.ParentForm.Update30000ModbusData(); } } } diff --git a/INT89DB_26/INT89DB_26.csproj b/INT89DB_26/INT89DB_26.csproj index 5e4d412..116600b 100644 --- a/INT89DB_26/INT89DB_26.csproj +++ b/INT89DB_26/INT89DB_26.csproj @@ -45,7 +45,7 @@ Off - + False ..\Document\DLL\InModbus.dll diff --git a/INT89DB_26/InModbus/Modbus_30000_Data.cs b/INT89DB_26/InModbus/Modbus_30000_Data.cs index c8ee47a..1472345 100644 --- a/INT89DB_26/InModbus/Modbus_30000_Data.cs +++ b/INT89DB_26/InModbus/Modbus_30000_Data.cs @@ -13,6 +13,12 @@ namespace INT89DB_26.Int_Modbus private double m_PassValue; private double m_OverValue; private double m_TareValue; + private double m_HighLimit; + private double m_DeadZoneHighLimit; + private double m_DeadZoneLowLimit; + private double m_LowLimit; + private UInt32 m_SampleCount; + private UInt32 m_IgnoreCount; private Collection m_LaneModbusData; #endregion @@ -95,6 +101,37 @@ namespace INT89DB_26.Int_Modbus } } + public double HighLimit + { + get { return this.m_HighLimit; } + set { this.m_HighLimit = value; } + } + public double DeadZoneHighLimit + { + get { return this.m_DeadZoneHighLimit; } + set { this.m_DeadZoneHighLimit = value; } + } + public double DeadZoneLowLimit + { + get { return this.m_DeadZoneLowLimit; } + set { this.m_DeadZoneLowLimit = value; } + } + public double LowLimit + { + get { return this.m_LowLimit; } + set { this.m_LowLimit = value; } + } + public UInt32 SampleCount + { + get { return this.m_SampleCount; } + set { this.m_SampleCount = value; } + } + public UInt32 IgnoreCount + { + get { return this.m_IgnoreCount; } + set { this.m_IgnoreCount = value; } + } + public Collection ModbusLaneData { get { return this.m_LaneModbusData; } @@ -109,6 +146,12 @@ namespace INT89DB_26.Int_Modbus this.PassValue = 200.0; this.OverValue = 300.0; this.TareValue = 0.0; + this.HighLimit = 300.0; + this.DeadZoneHighLimit = 0.0; + this.DeadZoneLowLimit = 0.0; + this.LowLimit = 100.0; + this.SampleCount = 0; + this.IgnoreCount = 0; this.ModbusLaneData = new Collection(); this.ModbusLaneData.Clear(); diff --git a/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.dll b/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.dll index f61f4eaa5ae5b73083f243d33ea123dd0d50c1da..218decac5d43de50a069eeec6f77863b36e3c6ca 100644 GIT binary patch delta 25099 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 delta 25111 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 CG4l-o diff --git a/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.pdb b/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.pdb index abe3c70e92a7f772bafed6815d672e3858a14df5..d6528e37b8d71b31dc29badc0052f16cae37a3af 100644 GIT binary patch literal 112128 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 delta 26 icmbOfJ}G>IFcTy5WD%yv>>pFbZ2M`euL=+V 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 delta 25111 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 CG4l-o diff --git a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.pdb b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.pdb index abe3c70e92a7f772bafed6815d672e3858a14df5..d6528e37b8d71b31dc29badc0052f16cae37a3af 100644 GIT binary patch literal 112128 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 KCJ+