"BM5A-01.txt"의 두 판 사이의 차이
잔글 |
잔글 |
||
6번째 줄: | 6번째 줄: | ||
40 CLEAR SCREEN | 40 CLEAR SCREEN | ||
50 OPTION BASE 1 | 50 OPTION BASE 1 | ||
− | 60 DIM A$[ | + | 60 DIM A$[90],Eol$[1] |
− | 70 GOSUB Fileopen | + | 70 INTEGER No,Stat,Pos1,Pos_x,Pos_y,Pos_z |
− | + | 80 GOSUB Fileopen | |
− | + | 90 Eol$=CHR$(13) | |
100 ASSIGN @Bm5a TO 701;EOL Eol$ | 100 ASSIGN @Bm5a TO 701;EOL Eol$ | ||
− | 110 | + | 110 Meas=2 !!!!!!!!!!!!!!!!!!!!!!! |
− | 120 OUTPUT @File;"No.,Time,Range,FOV,Tc,duv,X,Y,Z,x,y,u',v'" | + | 120 SELECT Meas |
− | + | 130 CASE 1 !순수한 측정 | |
− | + | 140 OUTPUT @File;"No.,Time,Stat,Range,FOV,Tc,duv,X,Y,Z,x,y,u',v'" | |
− | + | 150 FOR No=1 TO 10 | |
− | + | 160 GOSUB Measure | |
− | + | 170 OUTPUT @File;No,Time$;",";Stat,Range,Fov,Tc,Duv,X,Y,Z,Xs,Ys,U,V | |
− | + | 180 NEXT No | |
− | + | 190 CASE 2 !AC 전압 100~220V 에 따른 측정 | |
− | + | 200 ASSIGN @Power TO 705 | |
− | + | 210 OUTPUT @Power;"CURR:LEV 1" !!!!!!!!!!!! 1A | |
− | + | 220 OUTPUT @Power;"OUTP ON" | |
− | + | 230 OUTPUT @File;"No.,Time,ACV[V],Stat,Range,FOV,Tc,duv,X,Y,Z,x,y,u',v'" | |
− | + | 240 FOR No=50 TO 220 | |
− | + | 250 OUTPUT @Power;"VOLT ";No | |
− | + | 260 GOSUB Measure | |
− | + | 270 OUTPUT @File;No-49,Time$;",";No,Stat,Range,Fov,Tc,Duv,X,Y,Z,Xs,Ys,U,V | |
− | + | 280 NEXT No | |
− | + | 290 OUTPUT @Power;"VOLT 0" | |
− | + | 300 OUTPUT @Power;"OUTP OFF" | |
− | + | 310 END SELECT | |
− | + | 320 STOP | |
− | + | 330 Measure: ! | |
− | + | 340 OUTPUT @Bm5a;"M2 ST" | |
− | + | 350 Time$=TIME$(TIMEDATE) | |
− | + | 360 WAIT .1 | |
− | + | 370 ENTER @Bm5a;A$ | |
− | + | 380 DISP No,Time$,A$ | |
− | + | 390 Stat=VAL(A$[2,2]) | |
− | + | 400 IF Stat=0 THEN !측정 데이터가 정상이면 수행한다. | |
− | + | 410 ! 첫측정만 유효하다. !!!!!! | |
− | + | 420 Range=VAL(A$[8,8]) ! 1,2,3,4,5 | |
− | + | 430 SELECT VAL(A$[12,12]) ! 1,2,3,4 | |
− | + | 440 CASE 1 | |
− | + | 450 Fov=.1 !degree | |
− | + | 460 CASE 2 | |
− | + | 470 Fov=.2 | |
− | + | 480 CASE 3 | |
− | + | 490 Fov=1 | |
− | + | 500 CASE 4 | |
− | + | 510 Fov=2 | |
− | + | 520 END SELECT | |
− | + | 530 !!!!!!!!!!!!!!!!!!!!!!!!!! | |
− | + | 540 Pos1=POS(A$,"Tc =") | |
− | + | 550 IF A$[Pos1+5,Pos1+5]="*" THEN | |
+ | 560 Tc=0 | ||
+ | 570 Duv=0 | ||
+ | 580 Pos_x=POS(A$,"X=") | ||
+ | 590 Pos_y=POS(A$,"Y=") | ||
+ | 600 Pos_z=POS(A$,"Z=") | ||
+ | 610 X=VAL(A$[Pos_x+4,Pos_x+12]) | ||
+ | 620 Y=VAL(A$[Pos_y+4,Pos_y+12]) | ||
+ | 630 Z=VAL(A$[Pos_z+4,Pos_z+12]) | ||
+ | 640 ELSE | ||
+ | 650 Tc=VAL(A$[18,23]) | ||
+ | 660 Duv=VAL(A$[29,34]) | ||
+ | 670 X=VAL(A$[39,47]) | ||
+ | 680 Y=VAL(A$[52,60]) | ||
+ | 690 Z=VAL(A$[65,73]) | ||
+ | 700 END IF | ||
+ | 710 Xs=PROUND(X/(X+Y+Z),-4) !Xs=x | ||
+ | 720 Ys=PROUND(Y/(X+Y+Z),-4) !Ys=y | ||
+ | 730 U=PROUND(4*X/(X+15*Y+3*Z),-4) | ||
+ | 740 V=PROUND(9*Y/(X+15*Y+3*Z),-4) | ||
+ | 750 END IF | ||
+ | 760 RETURN | ||
+ | 770 Fileopen: ! | ||
+ | 780 DIM Filename$[20],Dhms$[8],Time$[8],Date$[11] | ||
+ | 790 Time$=TIME$(TIMEDATE) | ||
+ | 800 Date$=DATE$(TIMEDATE) | ||
+ | 810 Dhms$=Date$[1;2]&Time$[1;2]&Time$[4;2]&Time$[7;2] | ||
+ | 820 Filename$=Dhms$&".txt" | ||
+ | 830 CREATE Filename$,1 | ||
+ | 840 ASSIGN @File TO Filename$;FORMAT ON | ||
+ | 850 RETURN | ||
+ | 860 END | ||
</pre> | </pre> |
2024년 3월 13일 (수) 16:18 기준 최신판
10 ! 1 2 3 4 5 6 7 8 20 !12345678901234567890123456789012345678901234567890123456789012345678901234567890 30 !D0TFRAR2UCF2 Tc = 8202 duv= 0.017 X= 2.609E+01 Y= 3.003E+01 Z= 3.551E+01 40 CLEAR SCREEN 50 OPTION BASE 1 60 DIM A$[90],Eol$[1] 70 INTEGER No,Stat,Pos1,Pos_x,Pos_y,Pos_z 80 GOSUB Fileopen 90 Eol$=CHR$(13) 100 ASSIGN @Bm5a TO 701;EOL Eol$ 110 Meas=2 !!!!!!!!!!!!!!!!!!!!!!! 120 SELECT Meas 130 CASE 1 !순수한 측정 140 OUTPUT @File;"No.,Time,Stat,Range,FOV,Tc,duv,X,Y,Z,x,y,u',v'" 150 FOR No=1 TO 10 160 GOSUB Measure 170 OUTPUT @File;No,Time$;",";Stat,Range,Fov,Tc,Duv,X,Y,Z,Xs,Ys,U,V 180 NEXT No 190 CASE 2 !AC 전압 100~220V 에 따른 측정 200 ASSIGN @Power TO 705 210 OUTPUT @Power;"CURR:LEV 1" !!!!!!!!!!!! 1A 220 OUTPUT @Power;"OUTP ON" 230 OUTPUT @File;"No.,Time,ACV[V],Stat,Range,FOV,Tc,duv,X,Y,Z,x,y,u',v'" 240 FOR No=50 TO 220 250 OUTPUT @Power;"VOLT ";No 260 GOSUB Measure 270 OUTPUT @File;No-49,Time$;",";No,Stat,Range,Fov,Tc,Duv,X,Y,Z,Xs,Ys,U,V 280 NEXT No 290 OUTPUT @Power;"VOLT 0" 300 OUTPUT @Power;"OUTP OFF" 310 END SELECT 320 STOP 330 Measure: ! 340 OUTPUT @Bm5a;"M2 ST" 350 Time$=TIME$(TIMEDATE) 360 WAIT .1 370 ENTER @Bm5a;A$ 380 DISP No,Time$,A$ 390 Stat=VAL(A$[2,2]) 400 IF Stat=0 THEN !측정 데이터가 정상이면 수행한다. 410 ! 첫측정만 유효하다. !!!!!! 420 Range=VAL(A$[8,8]) ! 1,2,3,4,5 430 SELECT VAL(A$[12,12]) ! 1,2,3,4 440 CASE 1 450 Fov=.1 !degree 460 CASE 2 470 Fov=.2 480 CASE 3 490 Fov=1 500 CASE 4 510 Fov=2 520 END SELECT 530 !!!!!!!!!!!!!!!!!!!!!!!!!! 540 Pos1=POS(A$,"Tc =") 550 IF A$[Pos1+5,Pos1+5]="*" THEN 560 Tc=0 570 Duv=0 580 Pos_x=POS(A$,"X=") 590 Pos_y=POS(A$,"Y=") 600 Pos_z=POS(A$,"Z=") 610 X=VAL(A$[Pos_x+4,Pos_x+12]) 620 Y=VAL(A$[Pos_y+4,Pos_y+12]) 630 Z=VAL(A$[Pos_z+4,Pos_z+12]) 640 ELSE 650 Tc=VAL(A$[18,23]) 660 Duv=VAL(A$[29,34]) 670 X=VAL(A$[39,47]) 680 Y=VAL(A$[52,60]) 690 Z=VAL(A$[65,73]) 700 END IF 710 Xs=PROUND(X/(X+Y+Z),-4) !Xs=x 720 Ys=PROUND(Y/(X+Y+Z),-4) !Ys=y 730 U=PROUND(4*X/(X+15*Y+3*Z),-4) 740 V=PROUND(9*Y/(X+15*Y+3*Z),-4) 750 END IF 760 RETURN 770 Fileopen: ! 780 DIM Filename$[20],Dhms$[8],Time$[8],Date$[11] 790 Time$=TIME$(TIMEDATE) 800 Date$=DATE$(TIMEDATE) 810 Dhms$=Date$[1;2]&Time$[1;2]&Time$[4;2]&Time$[7;2] 820 Filename$=Dhms$&".txt" 830 CREATE Filename$,1 840 ASSIGN @File TO Filename$;FORMAT ON 850 RETURN 860 END