home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Antennas
/
Antennas_CD-ROM_Walnut_Creek_September_1996.iso
/
w4mb
/
vol2
/
basic
/
frod.asc
< prev
next >
Wrap
Text File
|
1996-06-30
|
10KB
|
230 lines
2 ON ERROR GOTO 60000
3 CLS
10 PRINT " ***************************************************************"
20 PRINT " * FERRITE CORE LOOP ANTENNAS *"
30 PRINT " * PRZEDPELSKI, LOOP ANTENNA DESIGN, RF DESIGN, N/D, 1982 *"
40 PRINT " * JOHNSON AND JASIK, ANTENNA ENGG. HANDBOOK, 2ND ED *"
50 PRINT " * KRAUS, ANTENNAS, 2ND ED. *"
60 PRINT " * PROGRAM BY R.P. HAVILAND, W4MB *"
70 PRINT " * COPYRGHT 1990 *"
80 PRINT " * MINILAB BOOKS, DAYTONA BEACH, FL 32121-1086 *"
90 PRINT " ****************************************************************"
100 DEF FNP(X)=INT(100*X+.5)/100
110 PI=3.141592
200 DIM LD(12,10)
210 FOR M=0 TO 12
220 FOR N=0 TO 10
230 READ LD(M,N)
240 NEXT N
250 NEXT M
400 PRINT " THE ACCURACY OF THIS PROGRAM DEPENDS PRIMARILY ON THE ACCURACY"
410 PRINT " OF THE VALUES FOR EFFECTIVE PERMABILITY OF THE LOOP CORE"
420 PRINT " WHETHER IRON POWDER OR FERRITE. RECOMMENDED PROCEEDURE IS TO"
430 PRINT " WIND A TEST COIL, MEASURE L AND Q, THEN DETERMINE "
440 PRINT " EFFECTIVE PERMABILITY BY USING THE ROUTINES PROVIDED."
450 PRINT " THE LOOP WINDING IS ASSUMED TO BE CENTERED ON THE ROD"
460 PRINT " PARALLEL TUNING IS ASSUMED:SEE FIRST REFERENCE FOR SERIES."
470 PRINT " FOR MOST DESIGNS, OUTPUT S/N IS THE SAME AS RECEIVED S/N"
480 PRINT
500 INPUT " PAPER COPY OF DESIGN DATA Y/N";P$
510 IF P$="Y" THEN LPRINT " DESIGN DATA FOR FERRITE ROD ANTENNA"
520 LPRINT
600 INPUT " ENTER DESIGN LOWEST TUNING FREQUENCY, MHZ";MINF
605 IF P$="Y" THEN LPRINT " DESIGN LOWEST TUNING FREQUENCY, MHZ";MINF
610 PRINT " PARALLEL TUNING GIVES BETTER PASSBAND CHARACTERISTICS,"
620 PRINT " SERIES TUNING GIVES SLIGTHTLY GREATER SIGNAL OUTPUT"
630 INPUT " ENTER MAXIMUM TUNING CAPACITY, PICOFARADS";MAXC
635 IF P$="Y" THEN LPRINT " MAXIMUM TUNING CAPACITY, PICOFARADS";MAXC
640 MAXC=MAXC*.000001
650 INPUT " ENTER MINIMUM TUNING CAPACITY, PF";MINC
655 IF P$="Y" THEN LPRINT " MINIMUM TUNING CAPACITY, PF";MINC
660 MINC=MINC*.000001
670 INPUT " ENTER ESTIMATED STRAY CIRCUIT CAPACITY, PF";STRC
675 IF P$="Y" THEN LPRINT " ESTIMATED STRAY CIRCUIT CAPACITY, PF";STRC
680 STRC=STRC*.000001
690 MAXLAM=299.8/MINF
700 INPUT " ENTER DIAMETER OF FERRITE ROD, INCHES";DR
705 IF P$="Y" THEN LPRINT " DIAMETER OF FERRITE ROD, INCHES";DR
710 INPUT " ENTER LENGTH OF FERRITE ROD, INCHES";LR
715 IF P$="Y" THEN LPRINT " LENGTH OF FERRITE ROD, INCHES";LR
720 LOD=LR/DR
730 IF LOD<2 OR LOD>80 THEN PRINT "OUT OF RANGE":GOTO 700
800 PRINT "ENTER M= MATERIAL PERMABILITY KNOWN"
810 PRINT " E= EFFECTIVE PERMABILITY KNOWN"
820 PRINT " L= TEST COIL INDUCTANCE KNOWN"
830 PRINT " D= DESIGN AND MEASURED RESONANT FREQUENCY KNOWN"
840 PRINT " F= TEST COIL RESONANT FREQUENCY KNOWN"
850 INPUT M$
900 IF M$="M" THEN GOSUB 4000:GOTO 1000
910 IF M$="E" THEN GOSUB 5000:GOTO 1000
920 IF M$="L" THEN GOSUB 6000:GOTO 1000
930 IF M$="D" THEN GOSUB 7000:GOTO 1000
940 IF M$="F" THEN GOSUB 8000:GOTO 1000
950 GOTO 720
1000 PRINT
1010 CT=MAXC+STRC
1020 XC=1/(2*PI*MINF*CT):XL=XC
1030 IND=XL/(2*PI*MINF)
1040 PRINT " REQUIRED COIL INDUCTANCE=";FNP(IND);"UH"
1045 IF P$="Y" THEN LPRINT " REQUIRED COIL INDUCTANCE=";FNP(IND);"UH"
1050 PRINT " COIL LENGTH IS TYPICALLY";FNP(LR/4);"INCHES"
1060 INPUT " ENTER DESIGN LENGTH OF COIL, INCHES";LCOIL
1065 IF P$="Y" THEN LPRINT " DESIGN LENGTH OF COIL, INCHES";LCOIL
1100 FA=1-.17*LCOIL/LR
1110 NCOIL=SQR(IND*(18*DR+40*LR)/(MUEFF*FA*DR*DR))
1120 PRINT " REQUIRED COIL TURNS=";INT(NCOIL)
1125 IF P$="Y" THEN LPRINT " REQUIRED COIL TURNS=";INT(NCOIL)
1230 WDIA= LCOIL/NCOIL
1240 AWG=40*(LOG(.41/WDIA)/LOG(92))+2
1250 PRINT " FOR SINGLE LAYER COIL,"
1260 PRINT " MAXIMUM WIRE SIZE IS #";INT(AWG);" AWG ENAMELED WIRE"
1270 INPUT " ENTER DESIGN WIRE SIZE, AWG";AWG
1275 IF P$="Y" THEN LPRINT " DESIGN WIRE SIZE, AWG";AWG
1280 WDIA=.41/92^((AWG+2)/40)
1400 INPUT " ENTER COIL Q, 0=USE CALCULATED VALUE";CQ
1410 IF CQ<>0 THEN 1450
1420 RCOIL=PI*NCOIL*SQR(4*MINF/5.7*1E-08)
1430 RRAD=197*MUEFF*MUEFF*NCOIL*NCOIL*(MINF*LR*PI/11803)^4
1440 RLOSS=PI^4/2*MINF*1000000!*MUEFF*MUIMAG/MUREAL*NCOIL*NCOIL*DR*DR/LR/39.37*.0000001
1450 CQ=XL/(RCOIL+RRAD+RLOSS)
1454 PRINT " UNLOADED Q=";INT(CQ)
1455 IF P$="Y" THEN LPRINT " UNLOADED Q=";INT(CQ)
1460 PRINT " MAX TUNING FREQUENCY=";MINF*SQR((MAXC+STRC)/(MINC+STRC))
1465 IF P$="Y" THEN LPRINT " MAX TUNING FREQUENCY=";MINF*SQR((MAXC+STRC)/(MINC+STRC))
1470 PRINT
1600 INPUT " ENTER LOAD RESISTANCE OF ANTENNA,OHMS";RO
1605 IF P$="Y" THEN LPRINT " LOAD RESISTANCE OF ANTENNA,OHMS";RO
1610 EIND=1.355E-05*MUEFF*NCOIL*PI*DR*DR/4*MINF*FA
1620 PRINT " COIL INDUCED VOLTAGE=";
1630 PRINT USING "##.##^^^^";EIND;
1635 IF P$="Y" THEN LPRINT " COIL INDUCED VOLTAGE=";
1636 IF P$="Y" THEN LPRINT USING "##.##^^^^";EIND;
1640 PRINT "VOLTS FOR 1 VOLT/METER FIELD"
1650 ELOAD=RO*CQ/(XL*CQ+RO)
1655 IF P$="Y" THEN LPRINT "VOLTS FOR 1 VOLT/METER FIELD"
1656 IF P$="Y" THEN LELOAD=RO*CQ/(XL*CQ+RO)
1660 PRINT " VOLTAGE ACROSS LOAD=";
1670 PRINT USING "##.##^^^^"; ELOAD;
1675 IF P$="Y" THEN LPRINT " VOLTAGE ACROSS LOAD=";
1676 IF P$="Y" THEN LPRINT USING "##.##^^^^"; ELOAD;
1680 PRINT " VOLTS FOR 1 VOLT/METER FIELD"
1700 BW=MINF/CQ*1000000!
1710 PRINT USING " BANDWIDTH= ##.#^^^^";BW;:PRINT " HZ"
1715 IF P$="Y" THEN LPRINT " VOLTS FOR 1 VOLT/METER FIELD"
1716 IF P$="Y" THEN LPRINT USING " BANDWIDTH= ##.#^^^^";BW;:PRINT " HZ"
1740 PRINT
1800 PRINT " ENTER F= FREQUENCY SCAN"
1810 PRINT " N= NEW DESIGN CONDITIONS"
1820 PRINT " R= REVISE DESIGN"
1830 PRINT " Q= QUIT"
1840 INPUT T$
1850 IF T$="F" THEN 2000
1860 IF T$="N"THEN 600
1870 IF T$="R"THEN 700
1880 IF T$="Q" THEN STOP
1890 GOTO 1800
2000 CLS
2010 CRANG=MAXC-MINC
2020 CDEL=CRANG/10
2030 PRINT "STEP","FREQ, MHZ","E-OUT, V/V","BW, HZ"
2035 IF P$="Y" THEN LPRINT "STEP","FREQ, MHZ","E-OUT, V/V","BW, HZ"
2100 FOR N=0 TO 10
2110 CTUN=MAXC+STRC-N*CDEL
2120 TUNF=MINF*SQR((STRC+MAXC)/CTUN)
2130 XC=1/(2*PI*TUNF*CTUN):XL=XC
2140 RCOIL=PI*NCOIL*SQR(4*TUNF/5.7*1E-08)
2150 RRAD=197*MUEFF*MUEFF*NCOIL*NCOIL*(TUNF*LR*PI/11803)^4
2160 RLOSS=PI^4/2*TUNF*1000000!*MUEFF*MUIMAG/MUREAL*NCOIL*NCOIL*DR*DR/LR/39.37*.0000001
2170 CQ=XL/(RCOIL+RRAD+RLOSS)
2180 ELOAD=RO*CQ/(XL*CQ+RO)
2190 BW=MINF/CQ*1000000!
2500 PRINT N,FNP(TUNF),
2510 PRINT USING "##.##^^^^"; ELOAD,
2520 PRINT ,FNP(BW)
2525 IF P$="Y" THEN LPRINT N,FNP(TUNF),
2526 IF P$="Y" THEN LPRINT USING "##.##^^^^"; ELOAD,
2527 IF P$="Y" THEN LPRINT ,FNP(BW)
2530 NEXT N
2540 PRINT
2550 GOTO 1800
4000 CLS 'LINEAR INTERPOLATE, ROD PERMABILITY KNOWN
4010 INPUT "ENTER ROD PERMABILITY";PERM
4020 IF PERM>1000 THEN 4500
4030 IF PERM=1 THEN MUEFF=1:GOTO 4800
4040 UIND=0 'DO TABLE LOOKUP
4050 LDIND=0
4060 IF LD(UIND,0)<PERM THEN UIND=UIND+1:GOTO 4050
4070 IF LD(0,LDIND)<LOD THEN LDIND=LDIND+1:GOTO 4060
4100 D1=LD(UIND,LDIND)-LD(UIND-1,LDIND) 'PAIR INTERPOLATE
4110 D2=LD(UIND,LDIND-1)-LD(UIND-1,LDIND-1)
4120 UDIF=LD(UIND,0)-LD(UIND-1,0)
4130 LDDIF=LD(0,LDIND)-LD(0,LDIND-1)
4135 INUDIF=LD(UIND,0)-PERM
4140 INLDDIF=LD(0,LDIND)-LOD
4150 VAL1=LD(UIND,LDIND)-D1*INUDIF/UDIF
4160 VAL2=LD(UIND,LDIND-1)-D2*INUDIF/UDIF
4170 D3=VAL1-VAL2 'FINAL INTERPOLATE
4180 MUEFF=VAL1-D3*INLDDIF/LDDIF
4190 GOTO 4600
4500 MUEFF=2.934*LOD^1.394 'LIMIT CASE
4600 INPUT " ENTER REAL PART OF EFFECTIVE PERMABILITY, 0=UNKNOWN";MUREAL
4610 IF MUREAL=0 THEN MUREAL=PERM:MUIMAG=.01*PERM:GOTO 4800
4620 INPUT " ENTER IMAGINARY PART OF EFFECTIVE PERMABILITY";MUIMAG
4800 PRINT "ROD PERMABILITY=";PERM
4810 PRINT "EFFECTIVE PERMABILITY=";FNP(MUEFF)
4999 RETURN
5000 CLS 'EFFECTIVE PERMABILITY KNOWN
5010 PRINT " USE MEASURED OR DATA-SHEET VALUE"
5020 INPUT " ENTER EFFECTIVE PERMABILITY";MUEFF
5030 INPUT " ENTER REAL PART OF EFFECTIVE PERMABILITY, 0=UNKNOWN";MUREAL
5040 IF MUREAL=0 THEN MUREAL=MUEFF:MUIMAG=.01*MUEFF:GOTO 5060
5050 INPUT " ENTER IMAGINARY PART OF EFFECTIVE PERMABILITY";MUIMAG
5060 RETURN
6000 CLS 'TEST WINDING MEASURED INDUCTANCE KNOWN
6010 INPUT " ENTER MEASURED INDUCTANCE OF TEST COIL, UH";LMES
6020 INPUT " ENTER NUMBER OF TURNS OF TEST COIL";NTEST
6030 INPUT " ENTER LENGTH OF TEST COIL, INCHES";LTEST
6040 FA=1-.17*LTEST/LR
6050 MUEFF=LMES*4*LTEST/FA*(9*DR+10*LTEST)/DR/DR/NTEST/NTEST
6060 PRINT " EFFECTIVE PERMABILITY=";FNP(MUEFF)
6070 MUREAL=MUEFF:MUIMAG=.01*MUEFF 'RATIO ONLY USED
6080 RETURN
7000 CLS 'TEST RESONANT FREQUENCY KNOWN
7010 INPUT " ENTER DESIGN FREQUENCY, MHZ";FDES
7020 INPUT " ENTER MEASURED FREQUENCY, MHZ";FMES
7030 INPUT " ENTER EFFECTIVE PERMABILITY AS DESIGNED";MUEDES
7040 MUEFF=MUEDES*FMES/FDES
7050 PRINT " MEASURED EFFECTIVE PERMABILITY=";FNP(MUEFF)
7060 MUREAL=MUEFF:MUIMAG=.01*MUEFF 'RATIO ONLY USED
7070 RETURN
8000 CLS
8010 INPUT " ENTER NUMBER OF TURNS OF TEST COIL";NTEST
8020 INPUT " ENTER LENGTH OF TEST COIL, INCHES";LTEST
8030 INPUT " ENTER PARALLEL CAPACIANCE RESONATING TEST COIL, PF";CRES
8040 INPUT " ENTER RESONANT FREQUENCY, MHZ";FRES
8100 FA=1-.17*LTEST/LR
8110 XC=1/2/PI/FRES/CRES
8120 XL=XC
8130 L=XL/2/PI/FRES
8140 MUEFF=LTEST/FA*(9*DR+10*LTEST)/DR/DR/NTEST/NTEST
8150 PRINT " THE TEST COIL INDUCTANCE=";FNP(L);"UH"
8160 PRINT " THE EFFECTIVE PERMABILITY=";FNP(MUEFF)
8999 RETURN
59999 STOP
60000 PRINT "ERROR";ERR;"AT LINE";ERL
60010 STOP
62000 DATA 0,2,4,6,8,10,15,20,40,60,80
62010 DATA 5,3.6,4.2,4.7,4.8,4.9,4.95,4.97,4.99,5,5
62020 DATA 10,4.9,7,8.1,8.95,9.05,9.6,9.9,1,10,10
62030 DATA 20,5.7,10,14,16,17,18,18.8,19.5,20,20
62040 DATA 30,6.3,11.5,16,19.5,22,26,28,19.5,30,30
62050 DATA 50,6.5,15,20.1,27,31,38,42,48,49.5,49.9
62060 DATA 70,6.6,17,23,30,37,42,54,63,68,69.5
62070 DATA 100,6.7,17.2,25,34,42,55,71,90,96,98
62080 DATA 200,6.8,17.4,28,39,51,70,102,160,180,190
62090 DATA 300,6.9,17.6,28.5,42,53,90,120,210,260,280
62100 DATA 500,7,17.7,29,44,55,95,160,295,370,420
62110 DATA 700,7.1,17.8,29.8,46,58,96,180,340,500,560
62120 DATA 1000,7.2,18,30,47,60,97,190,395,590,700
62130 END