home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / david4 / antswrpc.bas next >
BASIC Source File  |  1986-11-22  |  7KB  |  147 lines

  1. 10 GOSUB 950
  2. 20 CLS:PRINT CHR$(23):PRINT"WOULD YOU LIKE A":PRINT"DESCRIPTION OF THE PROGRAM":PRINT" ( Y OR N )"
  3. 30 I$=INKEY$:IF I$="" THEN 30
  4. 40 IF I$="Y" THEN 70
  5. 50 IF I$<>"N" THEN 20
  6. 60 GOTO 80
  7. 70 GOSUB 1050
  8. 80 CLS:PRINT CHR$(23):PRINT"WHICH DO YOU WISH?":PRINT:PRINT"1--ANTENNA DESIGN CALCULATIONS"
  9. 90 PRINT:PRINT"2-VSWR CALCULATIONS":PRINT:PRINT"3-TERMINATE FUNCTION":PRINT:PRINT"INPUT CHOICE --->";
  10. 100 I$=INKEY$:IF I$="" THEN 100
  11. 110 IF I$="3" THEN END
  12. 120 U=VAL(I$)
  13. 130 IF U>2 OR U<1 THEN 80:ELSE CLS:ON U GOTO 590,140
  14. 140 CLS:PRINT"----VOLTAGE STANDING WAVE RATIO CALCULATIONS--"
  15. 150 PRINT:PRINT"FOLLOWING OPTIONS ARE AVAILABLE:"
  16. 160 PRINT"1) INPUT FORWARD POWER & REFLECTED POWER, CALCULATE VSWR"
  17. 170 PRINT"2) INPUT FORWARD PWR & VSWR, CALCULATE REFLECTED POWER"
  18. 180 PRINT"3) INPUT VSWR, CALCULATE % REFLECTED POWER"
  19. 190 PRINT"4) INPUT FORWARD POWER, VSWR, TRANSMISSION LINE IMPEDANCE"
  20. 200 PRINT"CALCULATE MAX. VOLTAGE AND CURRENT ON TRANSMISSION LINE"
  21. 210 PRINT"5) RESTART PROGRAM":PRINT
  22. 220 PRINT"INPUT CHOICE --->"
  23. 230 I$=INKEY$:IF I$="" THEN 230
  24. 240 D=VAL(I$)
  25. 250 IF D<1 OR D>5 THEN 140:ELSE ON D GOTO 260,340,390,420,80
  26. 260 CLS:INPUT"ENTER -->FORWARD POWER";A:IF A<=0 THEN 260:ELSE INPUT"ENTER -->REFLECTED POWER";B:IF B<0 THEN 260:ELSE CLS
  27. 270 IF B>A THEN PRINT"ERROR...REFLECTED POWER CANNOT EXCEED FORWARD POWER":FOR X=1 TO 1000:NEXT X:GOTO 260
  28. 280 X=B/A:IF ABS(1-X)<.0001 THEN S=999999!:GOTO 310
  29. 290 Y=SQR(X):S=(1+Y)/(1-Y)
  30. 300 IF S<326 THEN S=INT(S*100+.5)/100
  31. 310 PRINT"FORWARD POWER -";A;" WATTS";
  32. 320 PRINT"REFLECTED POWER -";B;" WATTS";
  33. 330 PRINT"VSWR =";S;"/1":GOSUB 930:K=0:GOTO 510
  34. 340 CLS:INPUT"ENTER -->FORWARD POWER";A:IF A<0 THEN 340
  35. 350 INPUT"ENTER --VSWR";S:IF S<1 THEN PRINT"VSWR CANNOT BE LESS THAN 1, PLEASE ENTER AGAIN":GOTO 350:ELSE Y=(S-1)/(S+1)
  36. 360 B=A*Y*Y:CLS:B=INT(B*10+.5)/10
  37. 370 PRINT"FORWARD POWER  ";A;"WATTS";:PRINT  "VSWR  ";S;"/1"
  38. 380 PRINT"REFLECTED POWER =";B;" WATTS":GOSUB 930:K=0:GOTO 510
  39. 390 CLS:INPUT"ENTER -->VSWR";S:IF S<1 THEN PRINT"VSWR  MUST BE GREATER THAN 1"FOR N1=1 TO 1000:NEXT:GOTO 390:ELSE Y=(S-1)/(S+1):C=INT(Y*Y*10000+.5)/100
  40. 400 CLS:PRINT"VSWR =";S;"/1":PRINT"REFLECTED POWER =";C;"%"
  41. 410 PRINT"REFLECTED POWER =";C;"%":GOSUB 930:K=0:GOTO 510
  42. 420 CLS:INPUT"ENTER --FORWARD POWER";A:IF A<=0 THEN PRINT"FORWARD POWER MUST BE POSITIVE":FOR N1=1 TO 1000:NEXT:GOTO 420
  43. 430 INPUT"ENTER -->VSWR";S:IF S<1 THEN PRINT"VSWR MUST BE GREATER THAN 1":GOTO 430
  44. 440 INPUT"ENTER -->TRANS. LINE IMPEDANCE";G:IF G<=0 THEN PRINT"IMPEDANCE MUST BE POSITIVE":GOTO 440
  45. 450 E=SQR(A*S*G):E=INT(E*100+.5)/100
  46. 460 I=INT(E/G*100+.5)/100:CLS
  47. 470 PRINT"FORWARD POWER =";A;"WATTS":PRINT"VSWR =";S;"/1"
  48. 480 PRINT"LINE IMPEDANCE =";G;"OHMS"
  49. 490 PRINT"MAX. LINE VOLTAGE =";E;"VOLTS"
  50. 500 PRINT"MAX. LINE CURRENT =";I;"AMPERES"
  51. 510 PRINT"CONTINUE IN THIS MODE (Y OR N)"
  52. 520 T$=INKEY$:IF T$="" THEN 520
  53. 530 CLS
  54. 540 IF LEFT$(T$,1)<>"Y" AND LEFT$(T$,1)<>"N" THEN 510
  55. 550 IF LEFT$(T$,1)="N" AND K=0 THEN 150
  56. 560 IF LEFT$(T$,1)="N" AND K=1 THEN CLS:GOTO 600
  57. 570 IF LEFT$(T$,1)="Y" AND K=1 THEN 680
  58. 580 IF LEFT$(T$,1)="Y" AND K=0 THEN ON D GOTO 260,340,390,420
  59. 590 CLS:PRINT" -- ANTENNA LENGTH CALCULATIONS --"
  60. 600 PRINT"FOLLOWING OPTIONS ARE AVAILABLE:"
  61. 610 PRINT:PRINT"1 -- HALF WAVE DIPOLE":PRINT:PRINT"2 -- QUARTER WAVE VERTICAL"
  62. 620 PRINT:PRINT"3 -- 3/4 WAVELENGTH VERTICAL"
  63. 630 PRINT:PRINT"4 -- 5/8 WAVELENGTH VERTICAL":PRINT:PRINT"5 -- RESTART PROGRAM"
  64. 640 U=0:PRINT"INPUT CHOICE -->"
  65. 650 I$=INKEY$:IF I$="" THEN 650
  66. 660 U=VAL(I$)
  67. 670 IF U>5 OR U<1 THEN 590
  68. 680 CLS:IF U=5 THEN 80
  69. 690 IF U=1 THEN N=468
  70. 700 IF U=2 THEN N =234
  71. 710 IF U=3 THEN N=702
  72. 720 IF U=4 THEN N=585
  73. 730 F=0:PRINT:INPUT"ENTER DESIRED RESONANT FREQUENCY (F) IN MHZ--> ";F:CLS
  74. 740 IF F<.022 THEN PRINT"FREQUENCY TOO LOW":K=1:GOTO 510
  75. 750 IF F>1000 THEN PRINT"FREQUENCY TOO HIGH":K=1:GOTO 510
  76. 760 L=N/F:P=N/(L*L):P=P*1000
  77. 770 I=L-INT(L):G=INT(L):I=I*12:I=INT(I*100+.5)/100
  78. 780 M=L*.3048:M=INT(M*10000+.5)/10000:PRINT"RESONANT FREQUENCY =";F;"MHZ"
  79. 790 PRINT"LENGTH =";G;"FT";I;"IN.":PRINT M;"METERS"
  80. 800 L=L/2:I=L-INT(L):I=I*12:I=INT(I*100+.5)/100:G=INT(L):M=L*.3048:M=INT(M*10000+.5)/10000
  81. 810 IF U<>1 THEN 830
  82. 820 PRINT"HALF LENGTH =";G;"FT.";I;"IN.":PRINT M;"METERS"
  83. 830 IF U=1 THEN A$="1/2 WAVE DIPOLE"
  84. 840 IF U=2 THEN A$="1/4 WAVE VERT"
  85. 850 IF U=3 THEN A$="3/4 WAVE VERT"
  86. 860 IF U=4 THEN A$="5/8 WAVE VERT"
  87. 870 PRINT"RESONANT FREQUENCY WILL CHANGE ";INT(P/12*100+.5)/100;"KHZ PER INCH"
  88. 880 PRINT A$
  89. 890 PRINT"SHORTENING WILL RAISE RESONANT  FREQUENCY";
  90. 900 PRINT" LENGTHENING WILL LOWER IT";
  91. 910 'FORX=0TO127:SET(X,0):SET(X,29):NEXTX:FORY=1TO28:SET(0,Y):SET(127,Y):NEXTY
  92. 920 GOTO 510
  93. 930 'FOR X=22TO105:SET(X,2):SET(X,15):NEXTX:FORY=2TO15:SET(22,Y):SET(105,Y):NEXTY
  94. 940 RETURN
  95. 950 REM   INSTRUCTIONS
  96. 960 H$=STRING$(32,"I")
  97. 970 CLS:PRINT CHR$(23):PRINT H$;:PRINT:PRINT:PRINT:PRINT TAB(9);"ANTENNA DESIGN":PRINT
  98. 980 PRINT TAB(14);"AND":PRINT
  99. 990 PRINT TAB(6);"VOLTAGE STANDING WAVE":PRINT
  100. 1000 PRINT TAB(10);"CALCULATIONS"
  101. 1010 FOR X=31 TO 448 STEP 32:PRINT"I";:NEXT X
  102. 1020 FOR X=32 TO 479 STEP 32:PRINT"I";:NEXT X
  103. 1030 PRINT H$;
  104. 1040 FOR X=1 TO 2000:NEXT:RETURN
  105. 1050 CLS:PRINT CHR$(23)
  106. 1060 PRINT TAB(3)" --- ANTENNA DESIGN ---":PRINT:PRINT
  107. 1070 PRINT"ANTENNA DESIGN IS A PROGRAM"
  108. 1080 PRINT"TO DESIGN ANTENNAS THAT ARE"
  109. 1090 PRINT"RESONANT AT A GIVEN FREQUENCY.
  110. 1100 PRINT:PRINT"THE ANTENNAS INCLUDED ARE :"
  111. 1110 PRINT" 1 -- HALF WAVE DIPOLE"
  112. 1120 PRINT" 2 -- QUARTER WAVE VERTICAL"
  113. 1130 PRINT" 3 -- 3/4 WAVE VERTICAL"
  114. 1140 PRINT" 4 -- 5/8 WAVE VERTICAL"
  115. 1150 PRINT:PRINT"PRESS ENTER TO CONTINUE":INPUT I$
  116. 1160 CLS:PRINT CHR$(23)
  117. 1170 PRINT" THE PROGRAM FINDS THE LENGTH"
  118. 1180 PRINT"OF THE ANTENNA AND PREDICTS HOW"
  119. 1190 PRINT"MUCH THE RESONANT FREQUENCY"
  120. 1200 PRINT"WILL CHANGE PER INCH CHANGE IN"
  121. 1210 PRINT"ANTENNA LENGTH."
  122. 1220 PRINT:INPUT"PRESS ENTER TO CONTINUE";I$:CLS:PRINT CHR$(23)
  123. 1230 PRINT" --- VOLTAGE STANDING WAVE ---"
  124. 1240 PRINT TAB(10);"CALCULATIONS":PRINT
  125. 1250 PRINT"  VOLTAGE STANDING WAVE RATIO"
  126. 1260 PRINT"IS USED IN TUNING AN ANTENNA OR"
  127. 1270 PRINT"IN ANALYZING THE PERFORMANCE"
  128. 1280 PRINT"OF AN ANTENNA ALONG WITH IT'S"
  129. 1290 PRINT"TRANSMISSION LINE."
  130. 1300 PRINT:INPUT"PRESS ENTER TO CONTINUE";I$
  131. 1310 CLS:PRINT CHR$(23)
  132. 1320 PRINT" IT FINDS THE VSWR FROM THE"
  133. 1330 PRINT"FORWARD POWER AND THE REFLECTED"
  134. 1340 PRINT"POWER, IT FINDS THE REFLECTED"
  135. 1350 PRINT"POWER FROM THE FORWARD POWER AND"
  136. 1360 PRINT"THE VSWR, AND IT CALCULATES THE"
  137. 1370 PRINT"PERCENTAGE OF REFLECTED POWER"
  138. 1380 PRINT"FOR A SPECIFIED VSWR.":PRINT
  139. 1390 PRINT"  THE PROGRAM ALSO FINDS THE"
  140. 1400 PRINT"MAXIMUM VOLTAGE AND MAXIMUM"
  141. 1410 PRINT"CURRENT ON THE TRANSMISSION"
  142. 1420 PRINT"LINE FEEDING THE ANTENNA.":PRINT
  143. 1430 INPUT"PRESS ENTER TO CONTINUE";I$
  144. 1440 RETURN
  145. URRENT ON THE TRANSMISSION"
  146. 1420 PRINT"LINE FEEDING THE ANTENNA.":PRINT
  147. 1430 INPUT"PRESS ENTER TO CONTIN