fix typos and add gain and clutter controls on keyboard
This commit is contained in:
69
CLAUDE.md
69
CLAUDE.md
@@ -59,7 +59,7 @@ GENERAL STUFF
|
|||||||
==================================================================
|
==================================================================
|
||||||
|
|
||||||
Please note that all on-screen text shall be white and fully
|
Please note that all on-screen text shall be white and fully
|
||||||
illuminated and is not subject to phosphor persistance or decay.
|
illuminated and is not subject to phosphor persistence or decay.
|
||||||
|
|
||||||
Exceptions:
|
Exceptions:
|
||||||
|
|
||||||
@@ -82,7 +82,7 @@ Maximum Range 10 miles for precision approach radar; graticule is
|
|||||||
parallax
|
parallax
|
||||||
|
|
||||||
The proposed location of the marine radar antenna is in the middle of Bellingham
|
The proposed location of the marine radar antenna is in the middle of Bellingham
|
||||||
Bay on a 100 foot platform. (This should be mentioned as fictitous in the description)
|
Bay on a 100 foot platform. (This should be mentioned as fictitious in the description)
|
||||||
Location is 48.74361448950435 latitude, -122.56466911663048 longitude
|
Location is 48.74361448950435 latitude, -122.56466911663048 longitude
|
||||||
|
|
||||||
The proposed location of the air traffic control radar is the Bellingham
|
The proposed location of the air traffic control radar is the Bellingham
|
||||||
@@ -195,8 +195,8 @@ should be articulated in the descriptive text
|
|||||||
rate is 1/2 of the standard 50 Hz for British power.
|
rate is 1/2 of the standard 50 Hz for British power.
|
||||||
|
|
||||||
The operator did have a switch to switch from the 25 pulses per second PRF to 12.5
|
The operator did have a switch to switch from the 25 pulses per second PRF to 12.5
|
||||||
pulses per second PRF so that they could help eliminate teh range ambiguity
|
pulses per second PRF so that they could help eliminate the range ambiguity
|
||||||
problem, where a target that is away could appear to be right on site since that echo
|
problem, where a target far away could appear to be right on site since that echo
|
||||||
would return at the precise time for the next pulse to go out at 25 PRF. This needs
|
would return at the precise time for the next pulse to go out at 25 PRF. This needs
|
||||||
to be explained in the explainer window for the chain home. Mention that mountains or planes
|
to be explained in the explainer window for the chain home. Mention that mountains or planes
|
||||||
in the continent could have that kind of range. Furthermore, the operator can reduce
|
in the continent could have that kind of range. Furthermore, the operator can reduce
|
||||||
@@ -206,14 +206,14 @@ should be articulated in the descriptive text
|
|||||||
Let's assign key . for toggling between 25 and 12.5 PRF. There is no range selection.
|
Let's assign key . for toggling between 25 and 12.5 PRF. There is no range selection.
|
||||||
Note on description; this is to reduce use of the shift key.
|
Note on description; this is to reduce use of the shift key.
|
||||||
|
|
||||||
Because of the slow repitition rate, the phosphor used was a early implementation
|
Because of the slow repetition rate, the phosphor used was an early implementation
|
||||||
of the p7 phosphor so that the targets will still glow between the sweeps and not cause
|
of the p7 phosphor so that the targets will still glow between the sweeps and not cause
|
||||||
flickering.
|
flickering.
|
||||||
|
|
||||||
Another unique feature would be a response to the drifting problem in early electronics.
|
Another unique feature would be a response to the drifting problem in early electronics.
|
||||||
The scope electronics would use a crystal calibrator that puts tiny pips or spikes at
|
The scope electronics would use a crystal calibrator that puts tiny pips or spikes at
|
||||||
known intervals (10 miles). The operator would use a knob, or control, to stretch or
|
known intervals (10 miles). The operator would use a knob, or control, to stretch or
|
||||||
shrink the electronic trace so tht the 10 mile pips align perfectly with the 10 mile
|
shrink the electronic trace so that the 10 mile pips align perfectly with the 10 mile
|
||||||
marks on the edge lit glass graticule.
|
marks on the edge lit glass graticule.
|
||||||
|
|
||||||
Let's assign key n for shrink and m for stretch. (may be ambiguous, but I am running
|
Let's assign key n for shrink and m for stretch. (may be ambiguous, but I am running
|
||||||
@@ -223,9 +223,9 @@ should be articulated in the descriptive text
|
|||||||
4. Marine PPI Scope -
|
4. Marine PPI Scope -
|
||||||
marine scopes have the following items in common:
|
marine scopes have the following items in common:
|
||||||
Targets, range rings, and range ring text levels shall be treated the same for
|
Targets, range rings, and range ring text levels shall be treated the same for
|
||||||
presentation. All are P7 phosphor. Immediatel strike by the electron beam is blue.
|
presentation. All are P7 phosphor. Immediate strike by the electron beam is blue.
|
||||||
persistance is green/yellow. Targets, range rings, and range ring labels shall all
|
persistence is green/yellow. Targets, range rings, and range ring labels shall all
|
||||||
persiste and fade out together. They should be faded out by the time the sweep
|
persist and fade out together. They should be faded out by the time the sweep
|
||||||
to that location.
|
to that location.
|
||||||
|
|
||||||
The maximum range settings are 6 miles for the marine radar scope
|
The maximum range settings are 6 miles for the marine radar scope
|
||||||
@@ -245,16 +245,16 @@ should be articulated in the descriptive text
|
|||||||
|
|
||||||
Bear in mind that the max range setting is independent for both radars.
|
Bear in mind that the max range setting is independent for both radars.
|
||||||
|
|
||||||
The bearing graticle (lit incandescent) There shold
|
The bearing graticule (lit incandescent) There should
|
||||||
be an inner circle with tickmarks for each degree, starting at 0 (north) and going
|
be an inner circle with tickmarks for each degree, starting at 0 (north) and going
|
||||||
clockwise to the last tick, which is 359. Outside the innter ring shall be text
|
clockwise to the last tick, which is 359. Outside the inner ring shall be text
|
||||||
labels for every 15 degrees. Outside the text labels, there will be
|
labels for every 15 degrees. Outside the text labels, there will be
|
||||||
an outer ring. Both inner and outer rings, along with ticks, and the bearing
|
an outer ring. Both inner and outer rings, along with ticks, and the bearing
|
||||||
labels are to be incandescent color.
|
labels are to be incandescent color.
|
||||||
|
|
||||||
The sweep time shall be 4 seconds for the marine scope
|
The sweep time shall be 4 seconds for the marine scope
|
||||||
|
|
||||||
The sweep direction is clockwise, which means that the entenna
|
The sweep direction is clockwise, which means that the antenna
|
||||||
dish rotates clockwise.
|
dish rotates clockwise.
|
||||||
|
|
||||||
The scope has a cursor for range and bearing. The cursor consists of a
|
The scope has a cursor for range and bearing. The cursor consists of a
|
||||||
@@ -270,9 +270,9 @@ should be articulated in the descriptive text
|
|||||||
|
|
||||||
5. Air Traffic PPI Scope -
|
5. Air Traffic PPI Scope -
|
||||||
Targets, range rings, and range ring text levels
|
Targets, range rings, and range ring text levels
|
||||||
All are P7 phosphor. Immediatel strike by the electron beam is blue.
|
All are P7 phosphor. Immediate strike by the electron beam is blue.
|
||||||
persistance is green/yellow. Targets, range rings, and range ring labels shall all
|
persistence is green/yellow. Targets, range rings, and range ring labels shall all
|
||||||
persiste and fade out together. They should be faded out by the time the sweep
|
persist and fade out together. They should be faded out by the time the sweep
|
||||||
to that location.
|
to that location.
|
||||||
|
|
||||||
Rings should be 5,10,15,20 for the air traffic control radar.
|
Rings should be 5,10,15,20 for the air traffic control radar.
|
||||||
@@ -292,9 +292,9 @@ should be articulated in the descriptive text
|
|||||||
|
|
||||||
Bear in mind that the max range setting is independent for both radars.
|
Bear in mind that the max range setting is independent for both radars.
|
||||||
|
|
||||||
The bearing graticle (lit incandescent) for the scopes are the same. There shold
|
The bearing graticule (lit incandescent) for the scopes are the same. There should
|
||||||
be an inner circle with tickmarks for each degree, starting at 0 (north) and going
|
be an inner circle with tickmarks for each degree, starting at 0 (north) and going
|
||||||
clockwise to the last tick, which is 359. Outside the innter ring shall be text
|
clockwise to the last tick, which is 359. Outside the inner ring shall be text
|
||||||
labels for every 15 degrees. Outside the text labels, there will be
|
labels for every 15 degrees. Outside the text labels, there will be
|
||||||
an outer ring. Both inner and outer rings, along with ticks, and the bearing
|
an outer ring. Both inner and outer rings, along with ticks, and the bearing
|
||||||
labels are to be incandescent color.
|
labels are to be incandescent color.
|
||||||
@@ -302,7 +302,7 @@ should be articulated in the descriptive text
|
|||||||
The sweep time shall be 5 seconds for the
|
The sweep time shall be 5 seconds for the
|
||||||
air traffic scope.
|
air traffic scope.
|
||||||
|
|
||||||
The sweep direction on the scope is clockwise, which means that the entenna
|
The sweep direction on the scope is clockwise, which means that the antenna
|
||||||
dish rotates clockwise.
|
dish rotates clockwise.
|
||||||
|
|
||||||
The scope has cursor for range and bearing. The cursor consists of a
|
The scope has cursor for range and bearing. The cursor consists of a
|
||||||
@@ -394,17 +394,31 @@ SUMMARY OF Controls:
|
|||||||
│ n │ Calibrator shrink │ │ │ ✓ │ │ │ │
|
│ n │ Calibrator shrink │ │ │ ✓ │ │ │ │
|
||||||
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
│ m │ Calibrator stretch │ │ │ ✓ │ │ │ │
|
│ m │ Calibrator stretch │ │ │ ✓ │ │ │ │
|
||||||
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
|
│ 1 │ Gain increase │ │ ✓ │ ✓ │ ✓ │ ✓ │ ✓ │
|
||||||
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
|
│ 2 │ Gain decrease │ │ ✓ │ ✓ │ ✓ │ ✓ │ ✓ │
|
||||||
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
|
│ 3 │ Rain clutter filter increase │ │ ✓ │ ✓ │ ✓ │ ✓ │ ✓ │
|
||||||
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
|
│ 4 │ Rain clutter filter decrease │ │ ✓ │ ✓ │ ✓ │ ✓ │ ✓ │
|
||||||
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
|
│ 5 │ Wave clutter filter increase │ │ ✓ │ ✓ │ ✓ │ │ │
|
||||||
|
├─────┼─────────────────────────────────────┼───────┼──────────┼──────────────┼────────────┼─────────┼─────┤
|
||||||
|
│ 6 │ Wave clutter filter decrease │ │ ✓ │ ✓ │ ✓ │ │ │
|
||||||
└─────┴─────────────────────────────────────┴───────┴──────────┴──────────────┴────────────┴─────────┴─────┘
|
└─────┴─────────────────────────────────────┴───────┴──────────┴──────────────┴────────────┴─────────┴─────┘
|
||||||
|
|
||||||
Table for general controls not implemented on the keyboard in the table above:
|
Table for general controls not yet implemented on the keyboard in the table above:
|
||||||
|
|
||||||
1. Intensity
|
1. Intensity
|
||||||
2. Focus
|
2. Focus
|
||||||
3. Astigmatism
|
3. Astigmatism
|
||||||
4. Gain
|
4. Graticule light intensity
|
||||||
5. rain clutter
|
|
||||||
6. water wave clutter
|
Note: Gain (keys 1/2), rain clutter (keys 3/4), and wave clutter (keys 5/6) are now
|
||||||
7. graticule light intensity
|
in the keyboard control table above. They remain physical encoder controls on the
|
||||||
|
operator panel when that hardware is installed; the keyboard keys are the temporary
|
||||||
|
stand-in. All three have defaults in settings.h.
|
||||||
|
|
||||||
SUMMARY of target handling:
|
SUMMARY of target handling:
|
||||||
|
|
||||||
@@ -435,6 +449,11 @@ in. SharedRenderState holds the default values unchanged; Thread 1 reads and app
|
|||||||
every frame. No feature flags or conditional compilation are needed — the code path is
|
every frame. No feature flags or conditional compilation are needed — the code path is
|
||||||
complete end-to-end, always at the compile-time default.
|
complete end-to-end, always at the compile-time default.
|
||||||
|
|
||||||
|
Three of the 7 general controls — Gain, Rain Clutter, and Wave Clutter — have temporary
|
||||||
|
keyboard implementations (keys 1/2, 3/4, and 5/6 respectively) that write to the same
|
||||||
|
SharedRenderState fields the hardware encoders will eventually write to. When physical
|
||||||
|
encoders are installed, the keyboard keys can be removed or left as redundant overrides.
|
||||||
|
|
||||||
Things to note about the keyboard type controls.
|
Things to note about the keyboard type controls.
|
||||||
The letter on the keyboard are temporary. When I get around to making
|
The letter on the keyboard are temporary. When I get around to making
|
||||||
the operators panel, this all will go away.
|
the operators panel, this all will go away.
|
||||||
@@ -618,3 +637,7 @@ settings.h — tunable constants:
|
|||||||
- PAR azimuth/elevation height fractions
|
- PAR azimuth/elevation height fractions
|
||||||
- UI text color and size; cursor readout text size
|
- UI text color and size; cursor readout text size
|
||||||
- Graticule label color (incandescent)
|
- Graticule label color (incandescent)
|
||||||
|
- Gain: default (0.5), minimum (0.0), maximum (1.0), keyboard step size
|
||||||
|
- Rain clutter filter: default (0.0 = off), minimum (0.0), maximum (1.0), keyboard step size
|
||||||
|
- Wave clutter filter: default (0.0 = off), minimum (0.0), maximum (1.0), keyboard step size
|
||||||
|
- Key-hold acceleration for gain, rain clutter, and wave clutter keys
|
||||||
|
|||||||
21
additions
21
additions
@@ -23,32 +23,33 @@ DATABASE Schema:
|
|||||||
For performance, we can keep id, width, length, and height, and material
|
For performance, we can keep id, width, length, and height, and material
|
||||||
inside the shaders as fixed data; but have location, heading, and altitude (aircraft)
|
inside the shaders as fixed data; but have location, heading, and altitude (aircraft)
|
||||||
|
|
||||||
The items in the database (to start with) would be the Enumeration, The ID, width, height,
|
|
||||||
and material. Suggestion: Uniform Buffer Object for the id, width, height, material
|
|
||||||
|
|
||||||
The items that are updated per data coming in from the raspberry pis and the simulator
|
The items that are updated per data coming in from the raspberry pis and the simulator
|
||||||
are orientation / RCS (based on heading), location (in longitude and latitude) and ID ; Suggestion
|
are orientation / RCS (based on heading), location (in longitude and latitude) and ID ; Suggestion
|
||||||
vertex objects or SSBO
|
vertex objects or SSBO
|
||||||
|
|
||||||
Suggest that CPU compute the RCS based on heading and dimensions and altitude (aircraft)
|
Suggest that CPU compute the RCS based on heading and dimensions and altitude (aircraft)
|
||||||
|
In doing this, keep this work outside of any mutex lock of any shared data
|
||||||
|
|
||||||
Maybe, if I simulate a modern system, I may want a field to describe the target (passenger, cargo,
|
Maybe, if I simulate a modern system, I may want a field to describe the target (passenger, cargo,
|
||||||
oil, fishing; and maybe specifics for the targets. I know that the coast guard has a lot of
|
oil, fishing; and maybe specifics for the targets. I know that the coast guard has a lot of
|
||||||
contextual data on targets that are from external sources. For now, lets now worry about this.
|
contextual data on targets that are from external sources. For now, let's not worry about this.
|
||||||
|
|
||||||
PROPOSAL:
|
PROPOSAL:
|
||||||
|
|
||||||
Since ADS-b and AIS may not have material and size data, I would like to propose
|
Since ADS-b and AIS may not have material and size data, I would like to propose
|
||||||
That the initial running of the system upon detecting a target that has no size
|
That the initial running of the system upon detecting a target that has no size
|
||||||
determinatioin, we use a default size, say, 20 feet long 20 feet wide and fiberglass
|
determination, we use a default size, say, 20 feet long 20 feet wide and fiberglass
|
||||||
for boats; 50 feet long 10 feet wide fusalage for planes; and set the need update parameter
|
for boats; 50 feet long 10 feet wide fusalage for planes; and set the need update parameter
|
||||||
to need update.
|
to need update.
|
||||||
|
|
||||||
Add an option (command line option) for system. Command line options would be 'database'
|
Add an option (command line option) for system. Command line options would be 'database'
|
||||||
which would open a graphical panel suitable for updating the postgres database.
|
which would open a graphical panel suitable for updating the postgres database.
|
||||||
At the begining of the life of this project, almost all targets seen except for those
|
At the beginning of the life of this project, almost all targets seen except for those
|
||||||
from the simulator will need database updating; as life of the system gets older there would
|
from the simulator will need database updating; as life of the system gets older there would
|
||||||
be fewer targets that need operation.
|
be fewer targets that need operation. For this option; none of the main radar screens
|
||||||
|
will be available. So we do not have to to have the opengl and shader stuff. Use a regular
|
||||||
|
desktop based application non opengl shader database updating application. This would be ended with quit
|
||||||
|
and then the main radar application can be started.
|
||||||
|
|
||||||
END OF PROPOSAL
|
END OF PROPOSAL
|
||||||
|
|
||||||
@@ -84,7 +85,7 @@ Note that the transmit beam is not a beam, but a floodlight.
|
|||||||
Pulse repetition frequency is 25 Hz or 12.5 Hz as selected by operator
|
Pulse repetition frequency is 25 Hz or 12.5 Hz as selected by operator
|
||||||
Use Transmit G from beam width (floodlight) something like
|
Use Transmit G from beam width (floodlight) something like
|
||||||
G = 30000/100 degrees * 40 degrees
|
G = 30000/100 degrees * 40 degrees
|
||||||
about 8.7 dBI (linear value of 7.5
|
about 8.7 dBi (linear value of 7.5)
|
||||||
|
|
||||||
Note that this is Bistatic; we need both Gt and Gr
|
Note that this is Bistatic; we need both Gt and Gr
|
||||||
|
|
||||||
@@ -100,8 +101,8 @@ Peak power is about 100 kw
|
|||||||
Very high antenna gain
|
Very high antenna gain
|
||||||
X Band (3 cm for wavelength) Operation allow higher antenna gain
|
X Band (3 cm for wavelength) Operation allow higher antenna gain
|
||||||
PAR must reliably detect small aircraft
|
PAR must reliably detect small aircraft
|
||||||
High pule repition rate
|
High pulse repetition rate
|
||||||
Sweep about 20 degrees horizontal and 10 degress vertical
|
Sweep about 20 degrees horizontal and 10 degrees vertical
|
||||||
Short pulse width for range resolution
|
Short pulse width for range resolution
|
||||||
Beamwidth is determined by wavelength/antenna size with antenna size of about 5 meters.
|
Beamwidth is determined by wavelength/antenna size with antenna size of about 5 meters.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user