Bitmap generator for microstrip coupler (part of atlc)
create_bmp_for_microstrip_coupler [-b bmp_size] [-v] w s g h t Er1 Er2 filename
This man page is not a complete set of documentation - the complexity of the atlc project makes man pages not an ideal way to document it, although out of completeness, man pages are produced. The best documentation that was current at the time the version was produced should be found on your hard drive, usually at
/usr/local/share/atlc/docs/html-docs/index.html
although it might be elsewhere if your system administrator chose to install the package elsewhere. Sometimes, errors are corrected in the documentation and placed at http://atlc.sourceforge.net/ before a new release of atlc is released. Please, if you notice a problem with the documentation - even spelling errors and typos, please let me know.
create_bmp_for_microstrip_coupler is a pre-processor for atlc, part of atlc properties of a two and three conductor electrical transmission line of arbitrary cross section. The program create_bmp_for_microstrip_coupler is used as a fast way of generating bitmaps (there is no need to use a graphics program), for microstrip couplers. Hence if the dimensions of a coupler are known the odd mode, even mode, differential mode and common mode impedances can be found. If you know what impedances you require and want to find the dimentions, then use find_optimal_dimensions_for_microstrip_coupler instead. This makes repeated calls to create_bmp_for_microstrip_coupler. The structure for which bitmaps are generated by create_bmp_for_microstrip_coupler is shown below.
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ^
G G |
G G |
G G |
G G |
G G |
G G |
G | G |
G | G |
G | G H
G v <--g--><--w--><---s---><--w--><--g--> G |
GGGGGGGGGG ccccccc ccccccc GGGGGGGG |
GGGGGGGGGG.......ccccccc.........ccccccc.......GGGGGGGG |
G.^.....................................^.............G |
G.|.....................................|.............G |
G.|t.Dielectric, permittivity=Er2.......h.............G |
G.|...(3.7 for FR4 PCB).................|.............G |
G.......................................V.............G |
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG |
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG. v
<------------------------W---------------------------->
The parameters 'W' and 'H' and the inner dimensions of the a metal enclosure. These will generall be quite large compared to the dimensions of the the PC - the diagram above is not to scale. The gap between the two coupled lines is s, the width of the coupled lines is w and the spacing between the edges of the coupled lines and the groundplane on the top is g. Often, the upper groundplane is not close to the coupled lines, in which case g will be quite large. The thickness of the dielectic is h. Note that he is just the dielectric, and does not include the thichkness of the copper on the double-sided PCB. The thickness of copper on the top layer is t. It is immaterial what the thickkness of the lower layer is. The relative permittivity above the dielectric is normally 1, but the relative permittivity of the dielectric material will need to be either pre-defined or defined on the command lines. See the section colours below for more information on dielectrics.
The bitmap is printed to the file specified as the last argument
The bitmaps produced by create_bmp_for_microstrip_coupler are 24-bit bit colour bitmaps, as are required by atlc.
The permittivities of the bitmap, set by 'Er1' and 'Er2', determine the colours in the bitmap. If Er1 or Er2 is 1.0, 1.0006, 2.1, 2.2, 2.33, 2.5, 3.3, 3.335, 3.7, 4.8, 10.2 or 100, then the colour corresponding to that permittivity will be set according to the colours defined in COLOURS below. If Er1 is not one of those permittivities, the region of permittivity Er1 will be set to the colour 0xCAFF00. If Er2 is not one of those values, then the region of the image will be set to the colour 0xAC82AC. The program atlc does not know what these two permittivites are, so they atlc, must be told with the comand line option -d, as in example 4 below.
-C Causes create_bmp_for_microstrip_coupler to print copyright and licensing information. -b bitmapsize
is used to set the size of the bitmap, and so the accuracy to which atlc is able to calculate the transmission line's properties. The default value for 'bitmapsize' is normally 4, although this is set at compile time. The value can be set anywhere from 1 to 15, but more than 8 is probably not sensible.
-v
Causes create_bmp_for_microstrip_coupler to print some data to stderr. Note, nothing extra goes to standard output, as that is expected to be redirected to a bitmap file.
The 24-bit bitmaps that atlc expects, have 8 bits assigned to represent the amount of red, 8 for blue and 8 for green. Hence there are 256 levels of red, green and blue, making a total of 256*256*256=16777216 colours. Every one of the possible 16777216 colours can be defined precisely by the stating the exact amount of red, green and blue, as in:
red = 255,000,000 or 0xff0000
green = 000,255,000 or 0x00ff00
blue = 000,000,255 or 0x0000ff
black = 000,000,000 or 0x000000
white = 255,255,255 or 0xffffff
Brown = 255,000,255 or 0xff00ff
gray = 142,142,142 or 0x8e8e8e
Some colours, such as pink, turquoise, sandy, brown, gray etc may mean slightly different things to different people. This is not so with atlc, as the program expects the colours below to be EXACTLY defined as given. Whether you feel the colour is sandy or yellow is up to you, but if you use it in your bitmap, then it either needs to be a colour recognised by atlc, or you must define it with a command line option (see OPTIONS and example 5 below).
red = 255,000,000 or 0xFF0000 is the live conductor.
green = 000,255,000 or 0x00FF00 is the grounded conductor.
blue = 000,000,000 or 0x0000FF is the negative conductor
All bitmaps must have the live (red) and grounded (green) conductor. The blue conductor is not currently supported, but it will be used to indicate a negative conductor, which will be needed if/when the program gets extended to analyse directional couplers.
The following dielectrics are recognised by atlc and so are produced by create_bmp_for_rect_cen_in_rect.
white 255,255,255 or 0xFFFFFF as Er=1.0 (vacuum)
pink 255,202,202 or 0xFFCACA as Er=1.0006 (air)
L. blue 130,052,255 or 0x8235EF as Er=2.1 (PTFE)
Mid gray 142,242,142 or 0x8E8E8E as Er=2.2 (duroid 5880)
mauve 255.000,255 or 0xFF00FF as Er=2.33 (polyethylene)
yellow 255,255,000 or 0xFFFF00 as Er=2.5 (polystyrene)
sandy 239,203,027 or 0xEFCC1A as Er=3.3 (PVC)
brown 188,127,096 or 0xBC7F60 as Er=3.335 (epoxy resin)
Turquoise 026,239,179 or 0x1AEFB3 as Er=4.8 (glass PCB)
Dark gray 142,142,142 or 0x696969 as Er=6.15 (duroid 6006)
L. gray 240,240,240 or 0xDCDCDC as Er=10.2 (duroid 6010)
D. orange 213,160,067 or 0xD5A04D as Er=100.0 (mainly for test purposes)
Here are a few examples of the use of create_bmp_for_microstrip_coupler. Again, see the html documentation in atlc-X.Y.Z/docs/html-docs/index.html for more examples.
In the first example, there is just an air dielectric, so Er1=Er2=1.0. The inner of 1x1 inches (or mm, miles etc) is placed centrally in an outer with dimensions 3 x 3 inches.
The exact place where the dielectric starts (a) and its width (d) are unimportant, but they must still be entered.
% create_bmp_for_microstrip_coupler 3 3 1 1 1 1 1 1 > ex1.bmp
% atlc ex1.bmp
In this second example, an inner of 15.0 mm x 0.5 mm is surrounded by an outer with internal dimensions of 61.5 x 20.1 mm. There is a material with permittivity 2.1 (Er of PTFE) below the inner conductor. The output from create_bmp_for_microstrip_coupler is sent to a file ex1.bmp, which is then processed by atlc
% create_bmp_for_microstrip_coupler 61.5 20.1 5 22 0.5 50 15 5 1.0 2.1 > ex2.bmp
% atlc ex2.bmp
In example 3, the bitmap is made larger, to increase accuracy, but otherwise this is identical to the second example. % create_bmp_for_microstrip_coupler -b7 61.5 20.1 5 22 0.5 50 15 5 1.0 2.1 > ex3.bmp
% atlc ex3.bmp
In the fourth example, materials with permittivites 2.78 and 7.89 are used. While there is no change in how to use create_bmp_for_microstrip_coupler, since these permittivities are not known, we must tell atlc what they are. % create_bmp_for_microstrip_coupler 61 20 1 4 22 0.5 50 15 5 2.78 7.89 > ex5.bmp % atlc -d CAFF00=2.78 -d AC82AC=7.89 ex5.bmp
In the sixth and final example, the -v option is used to print some extra data to stderr from create_bmp_for_microstrip_coupler.
atlc(1) create_bmp_for_circ_in_circ(1) create_bmp_for_circ_in_rect(1) create_bmp_for_rect_cen_in_rect(1) create_bmp_for_rect_cen_in_rect_coupler(1) create_bmp_for_rect_in_circ(1) create_bmp_for_stripline_coupler(1) create_bmp_for_symmetrical_stripline(1) design_coupler(1) find_optimal_dimensions_for_microstrip_coupler(1) readbin(1)
http://atlc.sourceforge.net - Home page
http://sourceforge.net/projects/atlc - Download area
atlc-X.Y.Z/docs/html-docs/index.html - HTML docs
atlc-X.Y.Z/docs/qex-december-1996/atlc.pdf - theory paper
atlc-X.Y.Z/examples - examples