|
|
|
SAMPLE PROGRAMS
Date: 10/05/95 Program: SAMPLE PROGRAMS Model: DDE Word Demo Version: 2.6 Revision: A Input Type: AC Max V: 132.000 Max F: 0.000 Nom V: 115.000 Nom F: 0.000 Min V: 98.000 Min F: 0.000 Number of Outputs: 3
Name NomV MaxI NomI MinI Load Path +5V 5.000 20.000 10.000 1.000 1 1 +12V 12.000 5.000 2.500 0.000 2 2 -12V 12.000 1.000 0.500 0.000 3 3
Variables:
t0 REAL t1 REAL bookmark[80] STRING DataSheet$[80] STRING date[80] STRING elapse[80] STRING final[80] STRING led[80] STRING lfd[80] STRING lfi[80] STRING model[80] STRING remote[80] STRING sn[8] STRING temp[80] STRING time[80] STRING WORDexe[80] STRING PassFail[6] STRING min INTEGER sec INTEGER x INTEGER v INTEGER
1 /*check if first time through*/ 2 If (!IsVar(FirstTime)) 3 /*if first time through define variable*/ 4 Define Variable(FirstTime,INT,FALSE,0,0) 5 /*identify word .exe file and path*/ 6 Format String(WORDexe,c:\\winword\\winword.exe) 7 /*identify custom printout .doc file and path*/ 8 Format String(DataSheet$,c:\\apg\\log\\dataform.doc) 9 /*open word and load document*/ 10 Run An Application(%WORDexe% /r %DataSheet$%,v,1) 11 /*associate 'bookmarks' with array elements*/ 12 bookmark[0]="Inrush" 13 bookmark[1]="LineI" 14 bookmark[2]="Eff" 15 bookmark[3]="pf" 16 bookmark[4]="VoltV1" 17 bookmark[5]="VoltV2" 18 bookmark[6]="VoltV3" 19 bookmark[7]="LoadV1" 20 bookmark[8]="LoadV2" 21 bookmark[9]="LoadV3" 22 bookmark[10]="LineV1" 23 bookmark[11]="LineV2" 24 bookmark[12]="LineV3" 25 bookmark[13]="RMSV1" 26 bookmark[14]="RMSV2" 27 bookmark[15]="RMSV3" 28 bookmark[16]="PeakV1" 29 bookmark[17]="PeakV2" 30 bookmark[18]="PeakV3" 31 bookmark[19]="OVPV1" 32 bookmark[20]="OVPV2" 33 bookmark[21]="OVPV3" 34 bookmark[22]="ILimV1" 35 bookmark[23]="ILimV2" 36 bookmark[24]="ILimV3" 37 bookmark[25]="TotV1" 38 bookmark[26]="TotV2" 39 bookmark[27]="TotV3" 40 bookmark[28]="UpV1" 41 bookmark[29]="UpV2" 42 bookmark[30]="UpV3" 43 bookmark[31]="PowerGood" 44 bookmark[32]="lfd" 45 bookmark[33]="lfi" 46 PassFail[0]="<Fail>" 47 PassFail[1]="PASS" 48 EndIf 49 TestStart: 50 t0=time/1000 51 /*perform required tests using link names*/ 52 /*link array=bookmark[#] contains "bookmark"*/ 53 Init Analog Seq Comp(4,250,20,4.5,+5V Turn On Time,bookmark[25]) 54 Init Analog Seq Comp(2,250,20,11.5,+12V Turn On Time,bookmark[26]) 55 Init Analog Seq Comp(3,250,20,11.5,-12V Turn On Time,bookmark[27]) 56 Test Sequencing(Up,PowerOn) 57 Test AC Inrush(5,1,bookmark[0]) 58 PowerOff 59 Setup TimeInterval Test(Dual,Up,4.75,Up,2.5,4,150,100000,Single) 60 PowerOn 61 Report TimeInterval Results(1000000,Power Good Turn On Delay,50,10,uS,1,bookmark[31]) 62 Test AC Line Current(5,1,bookmark[1]) 63 Test Efficiency(85,65,0.65,AC,0,Aux,bookmark[2]) 64 Test True Power Factor(90,50,bookmark[3]) 65 Test Vout Setpoint(1,5.25,4.75,0,_NO,a$,_NO,bookmark[4]) 66 Test Vout Setpoint(2,12.25,11.75,0,_NO,a$,_NO,bookmark[5]) 67 Test Vout Setpoint(3,12.25,11.75,0,_NO,a$,_NO,bookmark[6]) 68 Test Regulation Load(1,2,0,_PerCent,MinI(1),MaxI(1),0,_YES,bookmark[7]) 69 Test Regulation Load(2,2,0,_PerCent,MinI(2),MaxI(2),0,_YES,bookmark[8]) 70 Test Regulation Load(3,2,0,_PerCent,MinI(3),MaxI(3),0,_YES,bookmark[9]) 71 Test Regulation Line(1,2,0,_PerCent,MinLV,MaxLV,0,_YES,LineV,bookmark[10]) 72 Test Regulation Line(2,2,0,_PerCent,MinLV,MaxLV,0,_YES,LineV,bookmark[11]) 73 Test Regulation Line(3,2,0,_PerCent,MinLV,MaxLV,0,_YES,LineV,bookmark[12]) 74 Test Noise & Ripple(1,100,10,0,_HIGH,20,1,_NO,0,bookmark[13],bookmark[16]) 75 Test Noise & Ripple(2,100,10,0,_HIGH,20,1,_NO,0,bookmark[14],bookmark[17]) 76 Test Noise & Ripple(3,100,10,0,_HIGH,20,1,_NO,0,bookmark[15],bookmark[18]) 77 Test OVP(1,1,5.5,7,25,0,6.5,5.8,2.5,1,_NO,bookmark[19]) 78 Recycle Power(0,0,LineV) 79 Test OVP(2,2,12.5,15,25,0,14.5,13,2.5,1,_NO,bookmark[20]) 80 Recycle Power(0,0,LineV) 81 Test OVP(3,3,12.5,15,25,0,14.5,13,2.5,1,_NO,bookmark[21]) 82 Recycle Power(0,0,LineV) 83 Test OverLoad Constant I(1,28,25,23,30,1,0,10,0,_NO,0,Over I Pot,0,bookmark[22]) 84 Test OverLoad Constant I(2,8,6,5.5,9,0.5,0,10,0,_NO,0,Over I Pot,0,bookmark[23]) 85 Test OverLoad Constant I(3,2,1.5,1.3,2,0.1,0,10,0,_NO,0,Over I Pot,0,bookmark[24]) 86 /*test remote shutdown*/ 87 Pick a Relay(9) 88 Measure DC Voltage(PathFor(1),5.5,0) 89 Check Test Limits(Logic,Remote Shutdown,1,Meter<1,1,1,0) 90 remote=PassFail[_TESTSTATUS==_PASS] 91 Drop a Relay(9) 92 /*verify LED is lit*/ 93 Message Box(Is the LED lit?,LED Visual Check,2,4) 94 Check Test Limits(Logic,LED Check,1,_MBRET==_YES,1,1,0) 95 led=PassFail[_TESTSTATUS==_PASS] 96 /*test line monitor setpoints*/ 97 /*decreasing line*/ 98 Test Line Monitor(5,-1.5,90,70,-0.5,0,85,80,bookmark[32]) 99 /*increasing line*/ 100 Test Line Monitor(5,1.5,80,90,0.5,0,88,83,bookmark[33]) 101 Set Line Voltage(NomLV,0,1) 102 /*test holdup*/ 103 Init Analog Seq Comp(4,100,20,4.5,+5V Holdup,bookmark[28]) 104 Init Analog Seq Comp(2,100,20,11.5,+12V Holdup,bookmark[29]) 105 Init Analog Seq Comp(3,100,20,11.5,-12V Holdup,bookmark[30]) 106 Test Sequencing(Down,PowerOff) 107 /*retrieve other program data*/ 108 sn=_UUTSERIALNBR$ 109 model=_UUTMODEL$ 110 date=GetDate$ 111 time=GetTime$ 112 final=PassFail[_UUTSTATUS==_PASS] 113 /*calculate and report elapse test time*/ 114 t1=(time/1000)-t0 115 min=t1/60 116 sec=t1%60 117 Format String(elapse,%0(min)%:%0(sec)%) 118 TestEnd: 119 /*pass DDE Information to Word*/ 120 For(x=0,x<34,x++) 121 /*place chklim data in temp variable*/ 122 Request DDE Data(CHKLIM,RESULT,%bookmark[x]%,temp) 123 /*transfer temp to word bookmarks*/ 124 Poke DDE Data(WinWord,%DataSheet$%,%bookmark[x]%,%2(temp)%) 125 /*end result of this request/poke cycle is*/ 126 Next 127 /*transfer discrete data elements to Word*/ 128 /*Item is literal bookmark name.*/ 129 /*data string variable contains data to send*/ 130 Poke DDE Data(WinWord,%DataSheet$%,model,%model%) 131 Poke DDE Data(WinWord,%DataSheet$%,sn,%sn%) 132 Poke DDE Data(WinWord,%DataSheet$%,date,%date%) 133 Poke DDE Data(WinWord,%DataSheet$%,time,%time%) 134 Poke DDE Data(WinWord,%DataSheet$%,remote,%remote%) 135 Poke DDE Data(WinWord,%DataSheet$%,led,%led%) 136 Poke DDE Data(WinWord,%DataSheet$%,final,%final%) 137 Poke DDE Data(WinWord,%DataSheet$%,elapse,%elapse%) 138 /*send the Print command to winword*/ 139 Execute DDE Cmd(WinWord,%DataSheet$%,[FilePrint]) /***End of File***/
Copyright © 1995 - 2001, Autotest Company, All Rights Reserved.