"BM5A-01.txt"의 두 판 사이의 차이

(새 문서: Topcon BM-5A 색채휘도계 <pre> 10 CLEAR SCREEN 20 DIM A$[55] 30 GOSUB Fileopen 40 ASSIGN @Bm5a TO 701 50 OUTPUT @Bm5a;"ST" 60 ENTER @Bm5a;A$ 70 DI...)
 
잔글
 
(같은 사용자의 중간 판 하나는 보이지 않습니다)
1번째 줄: 1번째 줄:
 
[[Topcon BM-5A 색채휘도계]]  
 
[[Topcon BM-5A 색채휘도계]]  
 
<pre>
 
<pre>
10    CLEAR SCREEN
+
10 !        1        2        3        4        5        6        7        8
20     DIM A$[55]
+
20  !12345678901234567890123456789012345678901234567890123456789012345678901234567890
30     GOSUB Fileopen
+
30  !D0TFRAR2UCF2 Tc =  8202 duv= 0.017 X= 2.609E+01 Y= 3.003E+01 Z= 3.551E+01
40     ASSIGN @Bm5a TO 701
+
40     CLEAR SCREEN
50     OUTPUT @Bm5a;"ST"
+
50    OPTION BASE 1
60    ENTER @Bm5a;A$
+
60     DIM A$[90],Eol$[1]
70    DISP A$
+
70    INTEGER No,Stat,Pos1,Pos_x,Pos_y,Pos_z
80     OUTPUT @File;A$
+
80     GOSUB Fileopen
90    STOP
+
90     Eol$=CHR$(13)
100 Fileopen:  !
+
100    ASSIGN @Bm5a TO 701;EOL Eol$
110   DIM Filename$[20],Dhms$[8]
+
110    Meas=2 !!!!!!!!!!!!!!!!!!!!!!!
120   Time$=TIME$(TIMEDATE)
+
120    SELECT Meas
130   Date$=DATE$(TIMEDATE)
+
130    CASE 1 !순수한 측정
140   Dhms$=Date$[1;2]&Time$[1;2]&Time$[4;2]&Time$[7;2]
+
140      OUTPUT @File;"No.,Time,Stat,Range,FOV,Tc,duv,X,Y,Z,x,y,u',v'"
150   Filename$=Dhms$&".txt"
+
150      FOR No=1 TO 10
160   CREATE Filename$,1
+
160        GOSUB Measure
170   ASSIGN @File TO Filename$;FORMAT ON
+
170        OUTPUT @File;No,Time$;",";Stat,Range,Fov,Tc,Duv,X,Y,Z,Xs,Ys,U,V
180   RETURN
+
180      NEXT No
190   END
+
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 기준 최신판

Topcon BM-5A 색채휘도계

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