ๅใฎใใผใใงใฏใใใซใใฎ่ฆ่ฆๅใๅฎไบใใใใฎๅไฝใใทใใฅใฌใผใใใใใใฎ็ฐกๅใชในใฏใชใใใไฝๆใใพใใใ
Flapใจๅผใฐใใ1ใคใฎใใใซใใใใ1ใคใฎใใซใ๏ผFlap1๏ผใฎใณใใณใใ่กจ็คบใใใณ้ไฟกใใพใใใใฎใใผใฟใใคใณใใฏใใใฎใใใซใฎใในใฆใฎในใฏใชใใใงๆๅฎใใใพใใ่ช็ถใช็ๅใ็ใใพใ-่คๆฐใฎใใซใใใใๅ ดๅใฏใฉใใใใฐใใใงใใ๏ผใใใฆใ2ใคใงใใใใพใใใใใใฆใๆฐๅใๆฐ็พใใใใซใฏๆฐๅ๏ผๅๆฃใทในใใ WinCC OAใจๆฐ็พไธใฎไฟกๅทใฎๅ ดๅใ้ๅฎณใซใฏใชใใพใใใใใฎ็นๅฎใฎใทในใใ ใไฝฟ็จใใใฆใใLarge Hadron Colliderใ่ฆใฆใใใใใพใใใงใ๏ผใ
ๆใใใชใชใใทใงใณใฏใๆฐๅใๆฐ็พใๆฐๅใฎใใใซใไฝๆใใใใจใงใใๅใใผใฟใใคใณใใฏๆ็คบ็ใซๆๅฎใใใใใใไธๆใใพใใNDPไธญใซ้ฟใใใใชใใใใใชๅคๆดใฎๅ ดๅใ้ทใใฆ้ขๅใงใ่ซๅคงใชไบบไปถ่ฒปใใใใๆใใใใใพใใ
ๅฅใฎใชใใทใงใณใงใใใใใใ ใใงใฏใใใพใใใใๆขๅญใฎใใใซใซๅบใฅใใฆใใณใใฌใผใใไฝๆใใใใจใงใใ[ใใใซ]โ[ใใใซใซๅๅใไปใใฆไฟๅญ]ใกใใฅใผ้ ็ฎใ้ธๆใใฆใๆขๅญใฎใใฉใใใใใซใฎใณใใผใไฝๆใใพใใใใPanel_ref.pnlใจใใๅๅใ่จญๅฎใใพใใใ๏ผๆซๅฐพใฎ_refใฏๅ็ งใใคใพใใชใณใฏใใพใใฏๅฟ ่ฆใซๅฟใใฆใใณใใฌใผใใๆๅณใใพใ๏ผ
Flap_refใใใซใ้ใใพใใใ๏ผไฟๅญๅพใซใจใซใใ้ใๅฟ ่ฆใใใใพใ๏ผใใกใใฅใผใใ[็ทจ้]โ[ใใใซในใฏใชใใใฎ็ทจ้]ใ้ธๆใใฆใใใใซในใฏใชใใใ็ทจ้ใใพใใใใใใฎใใใซใฎใในใฆใฎใฐใฉใใฃใใฏใใชใใใฃใใฎใในใฆใฎในใฏใชใใใๅซใใฆใฃใณใใฆใ้ใใพใใ
, , . , .. : Flap1, Flap2 Flap3 . , , Flap1 , $- ( ยซ-ยป). Find&Replace . .
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ// [RECTANGLE3] [3] - [Initialize]
// SimpleCtrlScriptStart {invalid}
main()
{
EP_setRotation();
}
void EP_setRotation()
{
dyn_errClass err;
if( !dpExists( "System1:" + $dp + ".Inputs.Position:_online.._value") )
{
setValue("", "color", "_dpdoesnotexist");
return;
}
dpConnect("EP_setRotationCB",
"System1:" + $dp + ".Inputs.Position:_online.._value");
err = getLastError();
if (dynlen(err) > 0)
setValue("", "color", "_dpdoesnotexist");
}
void EP_setRotationCB(string dp1, int iNewValue)
{
float MIN_VALUE = 0;
float MAX_VALUE = 90;
float MIN_ROTATION = 0;
float MAX_ROTATION = 90;
float fRotation;
fRotation = ( 1.0 * (MAX_ROTATION - MIN_ROTATION) / (MAX_VALUE - MIN_VALUE)) *
(iNewValue - MIN_VALUE) + MIN_ROTATION;
if (fRotation > MAX_ROTATION) fRotation = MAX_ROTATION;
else if (fRotation < MIN_ROTATION) fRotation = MIN_ROTATION;
setValue("", "rotation", fRotation);
}
// SimpleCtrlScript {EP_setRotation}
// DP {System1:" + $dp + ".Inputs.Position}
// DPConfig {:_online.._value}
// DPType {int}
// PVSSRange {0}
// Min {0}
// Max {90}
// MinRotation {0}
// MaxRotation {90}
// SimpleCtrlScriptEnd {EP_setRotation}
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ// [PUSH_BUTTON1] [4] - [Clicked]
main(mapping event)
{
dpSet("System1:" + $dp + ".Commands.Open", 1, "System1:" + $dp + ".Commands.Close", 0);
}
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ// [PUSH_BUTTON2] [5] - [Clicked]
main(mapping event)
{
dpSet("System1:" + $dp + ".Commands.Open", 0, "System1:" + $dp + ".Commands.Close", 1);
}
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
:
System1:Flap1.Inputs.Position:online..value
:
System1:" + $dp + ".Inputs.Position:online..value
, , (System1), $dp, , , .. โ . + . . , , . $dp (Flap2, ) .
, $- . , , .
. Flaps. .
Flap_ref Flaps. $- โ .
, $dp Flap1. ยซSave and Run in QuickTest Modeยป , 1 Open Close โ , . , -, , ( , , , , ).
Flap2
. (), - . ? , ( ) Flap1. .
, . , , -. dpConnect callback-, callback-. .
Control Manager (, ยซ-num 2ยป). , .
DPEไฝ็ฝฎใซๆฉ่ฝใ่จญๅฎใใใๆงๆใใใใใใ3็ช็ฎใฎใใซใใฏใพใ ็ป้ขใซ่กจ็คบใใใฆใใพใใ๏ผๅฎ้ใใขใใซใซ่ฟฝๅ ใใใฎใฏ็ก้งใงใ๏ผใ