More WinPlot Display Program Information
The WinPlot Display
Save / Recall on Exit
Major Features :
WinPlot Specs : Requires an IBM / Windows PC
Program : Windows program, full color display
SIMULATION mode to allow evaluation without a DF
Install "Wizard" provided to simplify program installation
Written in VisualBasic 6.0, source code available on request
Input Port : COM 1 to COM 8, user selectable
Baud Rate : 9600
Input DF Message : 4 digits of data, 40 x per second
%XXXX = RSSI data, XXXX = 0000 to 8191
%9900 = MARK message ( antenna position = 12 o'clock )
%9800 = END message ( discard any unfinished data )
Data Sources : External PicoPlot DF, driving the selected COM port
Internal SIMULATION source
Memory save / recall ( five memory positions, temporary storage )
Disk file save / recall ( user defined filenames, permanent storage )
Presentation : Relative bearing display ( 12 o’clock = scan START / STOP )
Controls : ACQUIRE on/off
TEST on/off ( = simulation )
CLEAR ( = erase display )
QUIT ( = exit program )
SECTOR adjust ( = plot averaging / smoothing )
VAR adjust ( magnetic variation )( on OPTIONS page )
VAR enable ( MAG / TRU heading display )
SHOW / HIDE to reduce display clutter ( for controls / readouts )
WINDOW state ( maximized or adjustable window display )
HEADING cw / ccw
CURSOR cw / ccw
MEMORY store / recall ( five displays )
FILE store / recall ( disk file )
ANTENNA ROTATION cw / ccw ( on OPTIONS page )
RSSI positive / negative co-efficient ( on OPTIONS page )
COM PORT 1 to 8 ( on OPTIONS page )
COLOR SELECT ( 8 display items, user-defined colors )( on OPTIONS page )
COLOR SCHEME SAVE / RECALL ( default + 4 user-defined )( on OPTIONS page )
General Description :
The WinPlot DF display program is a ( free ) IBM / PC Windows display program, intended for use with the PicoPlot DF. It has a simulation mode that allows it to be used without a DF, for evaluation and / or learning purposes… you can download, install and run it now. An installation "wizard" program simplifies the installation process.
WinPlot accepts DF messages from the PicoPlot DF and generates a high-quality "polar plot" display of signal strength versus signal direction. To generate a plot, the user must rotates a directional antenna through a 360 degree circle. ( a "scan" ) The START and END of the scan is signalled by the PicoPlot DF, using switch inputs. ( see PicoPlot More Info webpage for details ) PicoPlot sends about 40 messages per second to WinPlot, while the scan is in progress.
In WinPlot, the data is temporarily stored until the scan is finished, then it is analyzed to generate the polar plot. The rotation time can vary from 3 seconds to over 6 minutes, because the rotation speed is calculated, ( in WinPlot ) based on how many messages were recieved during the 360 scan. The RSSI data is also "re-scaled" ( automatically ) so that it "fills the screen", regardless of how weak / strong the signal is, and regardless of the directivity ( = gain ) of the antenna. The strongest signal reading always reaches the outside edge of the azimuth scale, and the weakest signal reading always plots in the exact center of the display.
For best results, the antenna scan should start and end at the same heading, ( = 360 degree scan ) and the antenna rotation rate ( degrees per second ) should be constant throughout the turn. The rotation direction is user-selectable ( CW or CCW ) on the OPTIONS page of the display. The start / end point for the scan is always plotted at the 12 o'clock position of the display. ( compass heading = you decide when you use it )
WinPlot can accept multiple ( successive ) 360 scans, plotting each scan when finished. It is therefore capable of operating with an antenna that is constantly rotating, and providing automatic display updates each time a scan is completed. ( similar to a radar display ) For portable operation, a single 360 scan is usually performed, but if the results are ( for any reason ) not acceptable, subsequent 360 scans ( if performed ) will automatically update the display.
Additional features are described ( in detail ) below. A SECTOR function allows "smoothing" and "averaging" of the DF data, which can be useful if the transmitter is fluctuating its power level. ( evasion tactics ) Display plots can be saved / recalled to / from disk, with user-defined filenames. Display colors can also be user-defined. ( and saved / recalled ) The main controls can be actuated by keystrokes, ( so a mouse is not necessary ) and all control settings are saved / recalled whenever the program closes / restarts. ( assumes the QUIT button is used to exit the program )
The WinPlot Display
The WinPlot display program generates a "polar plot" display of signal strength versus signal direction, similar to the antenna radiation patterns shown in radio textbooks. The screen has a "relative bearing" display, which means the 12 o’clock position of the display always corresponds to the start / end of each 360 degree sweep. The actual compass heading for 12 o'clock depends on you... you select the compass heading when you perform each antenna sweep.
WinPlot assumes the DF messages ( from the PicoPlot DF ) are transmitted at regular "rotation angle" intervals, during the antenna scan. For the Portable SteadyScan and Triggered SteadyScan modes, this means the antenna must be rotated at a ( fairly ) constant speed, since the DF messages ( in these modes ) are transmitted at regular time intervals. In the TachScan mode, antenna rotation speed can vary, ( a lot ) because DF messages are ( basically ) "clocked out" of the PicoPlot DF, using the antenna TACH signal, provided by the user.
The radial axis of the display is not calibrated in decibels, field strength values, or any other "unit of measure"... it is strictly an expression of "relative signal strength". It is basically impossible to calibrate the radial axis, without detailed information about the RSSI signal for the DF receiver employed, since the RSSI signal provided by different receivers will have different response curves and different range values.
The exact time for a 360 antenna scan is not critical, and can vary from 3 seconds to more than 6 minutes. This is possible because WinPlot "figures out" the rotation rate after each scan is completed.... it counts the DF messages that were received during the scan, and assumes they are evenly-spaced in a 360 degree circle. The data is then expanded or compressed to fill a 360-element array, with one element for each 1-degree sector on the display screen. If more than one RSSI message corresponds to a particular 1-degree sector, the multiple readings are "averaged together", automatically. If less than 1 RSSI message per sector is recieved, the number of RSSI messages are "expanded" ( proportionally ) to fill the 360 display sectors.
The RSSI data values are also processed "automatically" after completion of each sweep, to generate a display which always fills the screen with a meaningful, useful display. The maximum and minimum RSSI values are identified, and the data is adjusted so that the maximum RSSI reading reached the outside edge of the azimuth scale, and the minimum RSSI reading plots at the exact center of the display. Using this method, the resulting polar-plot display will never be "too big" or "too small" to easily view and interpet, regardless of the signal level ( weak / strong ) and regardless of the directivity ( good / poor ) of the DF antenna.
A "cursor line" is also provided, to allow the user to exactly identify the signal direction. The cursor line can be rotated to any angle, and the resulting bearing angle can be read on the cursor display readout, located in the lower left corner of the display. Following each sweep, the cursor line is automatically positioned to point to the "most probable" direction of the signal. This ( estimated ) direction is not merely the direction to the major lobe... it actually is calculated with ALL the DF data, using calculus integration methods. ( and it seems to work quite well... )
Various items of data are constantly updated and displayed in the WinPlot screen, as "captions".
The captions in the upper left part of the screen provide information about the DF messages received during the last 360 scan : how many DF messages were received, as well as the maximum RSSI, minimum RSSI, and average RSSI values of the scan.
The captions located at the 12 0’clock position of the azimuth scale identify the source of data presently being displayed on the screen, as well as the present "12 o'clock" heading of the display, ( expressed in degrees ) whether this heading is expressed in magnetic or true degrees.
The captions located on the right side of the screen include a copyright declaration, the present system time for the computer, ( hours / minutes / seconds ) and the selected COM port and baud rate.( fixed at 9600 baud )
The caption at the bottom left corner of the screen indicates the present cursor bearing, in magnetic or true degrees.
The ACQUIRE button turns on / off the acquisition of input data, both for the internal simulation, ( TEST ) and also for the external RS232 input.
The TEST button enables / disables the internal simulation routine… when the simulation is turned off, the RS232 input is automatically selected. ( unless a MEMORY display has been recalled )
The CLEAR button clears the display.
The SECTOR button "averages" each RSSI reading with nearby RSSI readings ( adjacent bearings ) that lie within a specific, user-selectable angle. This angle can range from 1 degree to 48 degrees, ( in 10 steps ) before "rolling over" back to 1 degree. For example, if the SECTOR value is set to 12 degrees, the RSSI reading that is plotted at 240 degrees will actually be the "average" RSSI for all readings from 234 degrees to 246 degrees.
The SECTOR function can be used to help mitigate the effects of signal power fluctuation, which might be an evasion tactic, practiced by the transmitter operator, during a transmitter hunt. Another way to do this is to use a slow antenna rotation rate, since multiple RSSI readings that are assigned to the same bearing are "averaged together" ( automatically ) when the plot is generated. The slower the antenna rotation rate, the more RSSI readings will be "averaged" into each ( one degree ) bearing, on the display.
The SECTOR function can also be used to simply "smooth out" a "jagged" display, which might result from a very fast antenna scan. ( less than 5 seconds ) For example, if a 360 scan is performed in only 2 seconds, only 80 RSSI readings will be sent by the PicoPlot DF, so the readings will be "spread out" ( when the data is analyzed ) so that each reading fills up ( approximately ) a 4 degree sector of the display. This will work, but the resulting display will have a clearly "jagged" appearance that the user might find distracting. Setting the SECTOR width to a suitable value will yield a "prettier display", in this case.
The SECTOR function does NOT permanently alter the display data. The original display can be restored at any time, by restoring the SECTOR value to its original value.
The VAR button enables or disables the magnetic variation correction, and switches the caption readouts between "magnetic" and "true" degrees, respectively. The value used for magnetic variation ( east or west degrees ) is entered on the OPTIONS page.
The five MEM buttons allow a display to be saved or recalled, while the program is running. ( MEM data is lost on program exit ) Operating any of the MEM buttons will reveal 3 new buttons, ( SAVE, RECALL and CANCEL ) which allow storage, retrieval or abort ( respectively ) of the display. These buttons will vanish whenever one of them is operated.
If a MEM display is recalled, the ACQUIRE and TEST modes are both turned off, and the display that was present before the MEM recall is lost.
The HIDE / SHOW button has 3 states, and is used to hide or show the control buttons and readout captions on the display. The first state ( default ) shows all buttons and captions. The second state hides the buttons but shows the captions. The third state hides both buttons and captions. The HIDE / SHOW button can be used to reduce screen "clutter", which is especially useful if the display window is "sized" to a small window, which does not cover the entire screen. ( possibly to allow simultaneous viewing of other screens ) When operated in this manner, the controls can still be actuated ( even though they are not visible ) with keystrokes. NOTE : The location of the HIDE / SHOW button "jumps" to the top right corner of the screen, ( if actuated ) to provide maximum clearance for the azimuth display.
The OPTIONS button reveals the OPTIONS page, where a variety of semi-static parameters can be changed. These include the COM port number, the direction of antenna rotation, ( CW or CCW ) the RSSI coefficient polarity, ( positive or negative ) the magnetic variation value, ( east or west degrees ) and the color scheme used for the display. ( more about color schemes later )
The WINDOW button switches the display window between a "maximized" window ( fills the screen ) and a "sized" window, whose size can be adjusted with a mouse, by dragging the border. This is similar to the regular Windows control icons located in the top right corner of the window, but the WINDOW button has the added benefit that it can be operated with a "W" keystroke, so a mouse is not required.
The CURSOR UP / DOWN buttons allow the user to move the cursor line to any angle on the display, so that the direction of a major lobe ( or some other feature ) can be precisely identified. The cursor angle ( in degrees ) is displayed by a caption in the lower left corner of the screen. The CURSOR buttons normally increment / decrement in one degree steps, but both buttons also have "high speed" modes which increment / decrement in ten degree steps. ( see CONTROL OPERATION, below )
The HEADING UP / DOWN buttons allow the user to manually enter heading changes. ( the heading corresponds to the 12 o'clock direction on the display ) The present heading value ( expressed in degrees ) is displayed at the 12 o’clock position of the display. The HEADING buttons normally increment / decrement in one degree steps, but both buttons also have "high speed" modes which increment / decrement in ten degree steps. ( see CONTROL OPERATION, below )
The control buttons on the MAIN DISPLAY can be actuated by a mouse click, or by a single keystroke on the keyboard. The latter method is easier to use in a vehicle, and this method continues to work even if the buttons are rendered invisible by the SHOW/HIDE button. The caption displayed on each button has a letter ( or number ) "prefix" that indicates which keystroke is associated with it. Keystrokes are not "case sensitive".
NOTE : Keystrokes can only be routed to one screen or "window" on the display. The Windows operating system automaticaly routes keystokes to the window that currently has the "focus". Windows allows multiple screens to be visible at one time, the screen that presently has the focus ( and will receive keystrokes ) is indicated by a blue title bar, along the top edge of the window. Other windows will have grey title bars. The focus can be shifted to the WinPlot screen by clicking anywhere on the WinPlot window with the mouse, and this will enable keystroke operation of the display.
The ( numeric ) keystrokes required for the CURSOR and HEADING buttons must be entered on the NUMERIC keypad. The ( numeric ) keystrokes required for the memory SAVE, RECALL and CANCEL buttons must be entered on the regular ( alphanumeric ) keyboard.
The control buttons on the OPTIONS page do not have this ( single keystroke ) feature, but they can still be actuated from a keyboard by scrolling the button "focus" to the desired button with the TAB key, and then hitting the RETURN key. This feature also works for the MAIN DISPLAY as well. For both display pages, the direction of movement for the "focus" can be reversed by holding down the SHIFT key while hitting the TAB key.
The HEADING UP, HEADING DOWN, CURSOR UP and CURSOR DOWN buttons normally increment or decrement in one degree steps. They can also be incremented or decremented in ten degree steps, using either the mouse or keyboard. For ten degree steps with a mouse, click and hold the left mouse button down… after a 1 second delay, the selected button will begin incrementing or decrementing in ten degree steps, until the mouse button is released. For ten degree steps with the keyboard, press and hold either the CTRL or ALT key before pressing the desired keystroke.
In all cases, hitting the RETURN key will trigger the button which presently has the "focus", and the focus can be moved to different buttons with the TAB key. For buttons with only two valid states ( such as DECAY ) successive keystrokes of the RETURN key will "toggle" the button between these two states. For buttons with multiple valid states ( such as SECTOR ) successive keystrokes of the RETURN key will "scroll through" the available values for that button, and will eventually "roll over" to the original value.
Save / Recall of Control Settings and Data
All of the settings and values for individual controls are automatically saved on program exit, and restored whenever the program is re-started. This is also true for some items of data, such as the COM port number, the value used for magnetic variation, the four ( user defined ) "saved" color schemes, and the last color scheme that was employed when the program was previously terminated.
The image below shows the OPTIONS page for the WinPlot program. All the data defined on this page is saved on program exit, and restored on the next program restart.
Warning Messages and Alarms
There are two warning messages / alarms in the program, which only appear when an abnormal condition exists.
If the program fails to detect any RS232 messages for 3 seconds, the captions in the upper left will be replaced with a ( flashing ) "COM TIMEOUT" caption. This warning will only appear if the RS232 input is enabled : TEST = off, ACQUIRE = on. This message will be extinguished whenever an RS232 message is detected.
Another fault condition can occur if WinPlot receives TOO MANY RS232 messages, which will cause the data buffer to overflow. The RSSI data buffer has room for 20,000 messages, which ( at 40 messages per second ) corresponds to about 6 minutes of scan time for a 360 antenna scan. If the scan time exceeds this limit, ( or the end of scan is somehow not detected ) then the data buffer will "overflow" and the program will display a message box, indicating the data has been lost. The ACQUIRE button will also ( automatically ) be turned OFF, and the user must begin the scan, again.
In addition to these "fault" conditions, WinPlot will "beep" once, upon completion of each 360 scan, ( this is normal ) to indicate the display has been updated with new data.
The OPTIONS page allows the user to select individual colors for several items on the display. These colors can be permanently saved in four sets, labeled "A" through "D", and recalled whenever the program is re-started. The program also ( automatically ) saves the colors used when the program was terminated, and restores them when the program is re-started. The DEFAULT color button will recall a fixed set of colors, if the user ever wishes to return to the "starting point" colors.
Typically, the user may wish to define at least two color schemes… one for daytime viewing, another for nighttime viewing.
Clicking on a color button ( or its associated color window ) will allow the user to define the color for that particular item. A "color dialogue" box will then appear, which will allow the user to select from a preset assortment of 48 colors, ( arranged in 8 columns x 6 rows ) or the user may define their own "custom color" by adjusting the hue, saturation and luminosity of the color.
Hue refers to the actual color. ( red, green, blue, etc. )
Saturation refers to the intensity of the color. ( bright green versus pale green )
Luminosity refers to the "brightness / darkness" of the color ( amount of black mixed with the color )
To define a custom color, a crosshairs cursor is provided in the color window, which can be moved with a mouse by clicking / dragging it to a new location, and releasing it there. The new color is then shown in the preview window, above the "color/solid" caption.
Horizontal movements of the crosshairs cursor will change the HUE of the custom color.
Vertical movements of the crosshairs cursor will change the SATURATION of the color.
A scroll bar provided on the extreme right can be used to adjust the LUMINOSITY of the color.
Once a color is selected / adjusted, click "OK" to accept the color, or "CANCEL" to abort the selection.
The WinPlot display program is intended for use with a display of 640 x 480 pixels, or 800 x 600 pixels.
Displays with higher resolution will work, but the buttons and captions will appear smaller, especially with increasing screen resolution.
The screen resolution can be reduced in the Windows START / SETTINGS / CONTROL PANEL menu, by selecting the DISPLAY icon and then the SETTINGS tab. ( change the Desktop Area ) This setting will affect ALL Windows program displays, ( not just WinPlot ) so it must eventually be restored to its original value.