Advertisement
skaramicke

20m 5 element V-Yagi by SA6HAM

Jun 29th, 2016
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 4.58 KB | None | 0 0
  1. // V shaped Yagi for 14MHz with 5 elements.
  2. // By SA6HAM
  3.  
  4. model ( "20m v-yagi" )
  5. {
  6.     real radiator, reflector, director1, director2, director3, radiatorPos, reflectorPos, director1Pos, director2Pos, director3Pos, feed, angle, wavelength, groundHeight;
  7.     real xTransform, yTransform;
  8.  
  9.     setFrequency(opt);
  10.    
  11.     wavelength = c/14.175;
  12.    
  13.     // Settings
  14.     angle = 45;
  15.     groundHeight = 5.0;
  16.    
  17.     feed = 0.1;
  18.    
  19.     reflector = wavelength * 0.5;
  20.     reflectorPos = - wavelength * 0.221;
  21.        
  22.     radiator = wavelength * 0.492;
  23.     radiatorPos = 0;
  24.    
  25.     director1 = wavelength * 0.46550000;
  26.     director1Pos = wavelength * 0.13;
  27.    
  28.     director2 = wavelength * 0.48;
  29.     director2Pos = director1Pos + wavelength * 0.265;
  30.    
  31.     director3 = wavelength * 0.468;
  32.     director3Pos = director2Pos + wavelength * 0.266;
  33.    
  34.    
  35.     // printf("Pole length: %f meters\n", -reflectorPos + director3Pos) ;
  36.    
  37.    
  38.     xTransform = (100.0 * cos(angle * (pi/180.0)) - sin(angle * (pi/180.0))) / 100.0;
  39.     yTransform = (100.0 * sin(angle * (pi/180.0)) + cos(angle * (pi/180.0))) / 100.0;
  40.    
  41.    
  42.     // Pole
  43.     wire( // Left
  44.         0,  // X
  45.         reflectorPos, // Y
  46.         groundHeight, // Z
  47.         0, // X
  48.         director3Pos, // Y
  49.         groundHeight, // Z
  50.         #30, // Thickness
  51.         21, // Segments
  52.     );
  53.  
  54.        
  55.     repeat(1){
  56.     // Reflector
  57.     wire( // Left
  58.         -reflector / 2 *xTransform - feed/2,  // X
  59.         reflectorPos, // Y
  60.         groundHeight + reflector /2 *yTransform, // Z
  61.         -feed/2, // X
  62.         reflectorPos, // Y
  63.         groundHeight, // Z
  64.         #14, // Thickness
  65.         21, // Segments
  66.     );
  67.     wire( // Center
  68.         -feed/2,  // X
  69.         reflectorPos, // Y
  70.         groundHeight, // Z
  71.         feed/2, // X
  72.         reflectorPos, // Y
  73.         groundHeight, // Z
  74.         #14, // Thickness
  75.         21, // Segments
  76.     );
  77.     wire( // Right
  78.         feed/2,  // X
  79.         reflectorPos, // Y
  80.         groundHeight, // Z
  81.         feed/2 + reflector / 2 * xTransform, // X
  82.         reflectorPos, // Y
  83.         groundHeight + reflector / 2 * yTransform, // Z
  84.         #14, // Thickness
  85.         21, // Segments
  86.     );
  87.     }
  88.    
  89.     // Radiator
  90.         wire( // Left
  91.         -radiator / 2 *xTransform - feed/2,  // X
  92.         radiatorPos, // Y
  93.         groundHeight + radiator /2 *yTransform, // Z
  94.         -feed/2, // X
  95.         radiatorPos, // Y
  96.         groundHeight, // Z
  97.         #20, // Thickness
  98.         21, // Segments
  99.     ); 
  100.     voltageFeed( wire( -feed/2, radiatorPos, groundHeight, feed/2, radiatorPos, groundHeight, #14, 21 ), 1.0, 0.0 ) ;
  101.     wire( // Right
  102.         feed/2,  // X
  103.         radiatorPos, // Y
  104.         groundHeight, // Z
  105.         feed/2 + radiator / 2 * xTransform, // X
  106.         radiatorPos, // Y
  107.         groundHeight + radiator / 2 * yTransform, // Z
  108.         #20, // Thickness
  109.         21, // Segments
  110.     );
  111.    
  112.     repeat(1) { // 1 for director1, 0 for no director1.
  113.     // Director 1
  114.     wire( // Left
  115.         -director1 / 2 *xTransform - feed/2,  // X
  116.         director1Pos, // Y
  117.         groundHeight + director1 /2 *yTransform, // Z
  118.         -feed/2, // X
  119.         director1Pos, // Y
  120.         groundHeight, // Z
  121.         #20, // Thickness
  122.         21, // Segments
  123.     );
  124.     wire( // Center
  125.         -feed/2,  // X
  126.         director1Pos, // Y
  127.         groundHeight, // Z
  128.         feed/2, // X
  129.         director1Pos, // Y
  130.         groundHeight, // Z
  131.         #14, // Thickness
  132.         21, // Segments
  133.     );
  134.     wire( // Right
  135.         feed/2,  // X
  136.         director1Pos, // Y
  137.         groundHeight, // Z
  138.         feed/2 + director1 / 2 * xTransform, // X
  139.         director1Pos, // Y
  140.         groundHeight + director1 / 2 * yTransform, // Z
  141.         #14, // Thickness
  142.         21, // Segments
  143.     );
  144.     }
  145.    
  146.     repeat(1){
  147.     // Director 2
  148.     wire( // Left
  149.         -director2 / 2 *xTransform - feed/2,  // X
  150.         director2Pos, // Y
  151.         groundHeight + director2 /2 *yTransform, // Z
  152.         -feed/2, // X
  153.         director2Pos, // Y
  154.         groundHeight, // Z
  155.         #14, // Thickness
  156.         21, // Segments
  157.     );
  158.     wire( // Center
  159.         -feed/2,  // X
  160.         director2Pos, // Y
  161.         groundHeight, // Z
  162.         feed/2, // X
  163.         director2Pos, // Y
  164.         groundHeight, // Z
  165.         #14, // Thickness
  166.         21, // Segments
  167.     );
  168.     wire( // Right
  169.         feed/2,  // X
  170.         director2Pos, // Y
  171.         groundHeight, // Z
  172.         feed/2 + director2 / 2 * xTransform, // X
  173.         director2Pos, // Y
  174.         groundHeight + director2 / 2 * yTransform, // Z
  175.         #14, // Thickness
  176.         21, // Segments
  177.     );
  178.     }
  179.    
  180.     repeat(1){
  181.     // Director 3
  182.     wire( // Left
  183.         -director3 / 2 *xTransform - feed/2,  // X
  184.         director3Pos, // Y
  185.         groundHeight + director3 /2 *yTransform, // Z
  186.         -feed/2, // X
  187.         director3Pos, // Y
  188.         groundHeight, // Z
  189.         #14, // Thickness
  190.         21, // Segments
  191.     );
  192.     wire( // Center
  193.         -feed/2,  // X
  194.         director3Pos, // Y
  195.         groundHeight, // Z
  196.         feed/2, // X
  197.         director3Pos, // Y
  198.         groundHeight, // Z
  199.         #14, // Thickness
  200.         21, // Segments
  201.     );
  202.     wire( // Right
  203.         feed/2,  // X
  204.         director3Pos, // Y
  205.         groundHeight, // Z
  206.         feed/2 + director3 / 2 * xTransform, // X
  207.         director3Pos, // Y
  208.         groundHeight + director3 / 2 * yTransform, // Z
  209.         #14, // Thickness
  210.         21, // Segments
  211.     );
  212.     }
  213. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement