Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the ptz-controller and autor-calibrator modules #51

Closed
Changes from 1 commit
Commits
Show all changes
133 commits
Select commit Hold shift + click to select a range
f540afd
Add return values and a TODO to remove them
Jan 27, 2023
e6e9ad4
Add scratch test code and associated data
Jan 27, 2023
a4e8e45
Get camera longitude and latitude from the environment
Jan 30, 2023
7513b02
Convert vertical rate assuming in ft/min
Jan 30, 2023
5571c1a
Settle on gain values and update expression
Jan 30, 2023
d2f97cd
Allow camera update rate to be faster or slower than aircraft update …
Jan 30, 2023
febe461
WIP: Add auto_orientation
spearw Jan 31, 2023
668b74c
Add initial pass and refactoring camera controller to use edgetech-co…
Jan 31, 2023
8ea5e00
Clean up organization and comments
spearw Feb 2, 2023
e011205
Set up Docker files
spearw Feb 2, 2023
93e1a5a
Update requirements
spearw Feb 2, 2023
8dc6356
Set up for docker image creation
spearw Feb 2, 2023
259ca54
Restore axis-ptz
spearw Feb 2, 2023
5261394
WIP: auto calibration
spearw Feb 2, 2023
2e7d2b3
Add auto_calibrator tests
spearw Feb 3, 2023
5504f54
Update documentation
spearw Feb 3, 2023
e23521c
Update test values
spearw Feb 3, 2023
0a2de10
Update values
spearw Feb 3, 2023
d8032d1
Work in progess ... including some scratch code that will be cleaned …
Feb 3, 2023
3fb73ef
Code clean up with tests passing
Feb 6, 2023
785c88b
WIP: testing module
spearw Feb 6, 2023
68ff84c
Add draft integration test
Feb 6, 2023
7f75cfc
Work in progress passing module and integration tests
Feb 6, 2023
d261813
Add VAPIX camera control
Feb 7, 2023
80631ba
WIP: Auto Calibrator testing
spearw Feb 7, 2023
f7cf9ca
Add work in progress on integration testing
Feb 7, 2023
883cfc0
Remove scratch code
Feb 8, 2023
590b8db
Complete integration test using MQTT
Feb 8, 2023
5a77370
Ignore VAPIX log
Feb 8, 2023
bdb961a
Rename module for consistency
Feb 8, 2023
0642d5f
Rename again for consistency
Feb 8, 2023
17cbd81
Merge branch 'rl/explore-control-system-concept-one' into ws/add-auto…
Feb 8, 2023
06ff664
Add work in progress changes during pair coding
Feb 8, 2023
5675aef
Add precision of test since soltuion from bfgs do not agree between m…
Feb 8, 2023
4dc0ed7
Use utilities from ptz-controller module
Feb 8, 2023
f64343a
Remove unneeded utilities
Feb 8, 2023
b61e8fa
Add logging and fix Dockerfile
Feb 8, 2023
fa13c27
Add logging
spearw Feb 8, 2023
997e322
Add external messages test and logging
Feb 9, 2023
3a4392b
Made construction from environment variable consistent
Feb 9, 2023
88f6383
Use base class decode method
Feb 9, 2023
49b260e
Add matplotlib as a requirement
Feb 9, 2023
86f39ed
Sleep longer when testing messages
Feb 9, 2023
020b235
Access environment variable consistently
Feb 9, 2023
6e35c73
Remove unused requirements
Feb 9, 2023
b7b3aeb
Ignore files needed for docker-compose, and add data for testing
Feb 9, 2023
cb63420
Clean up documentation. Command zero rates on track completion.
Feb 10, 2023
866651d
Make initialization more flexible and by default
Feb 13, 2023
e541b73
Merge remote-tracking branch 'origin/rl/explore-control-system-concep…
spearw Feb 14, 2023
5fb4442
Add some TODOs
Feb 14, 2023
26d8c7f
Add pointing error messages to message handler
Feb 14, 2023
de47011
WIP: Adding test_messages.py
spearw Feb 14, 2023
49292d3
Merge remote-tracking branch 'origin/rl/explore-control-system-concep…
spearw Feb 14, 2023
c0c88af
Correct argument name
Feb 14, 2023
482f1b2
Merge remote-tracking branch 'origin/rl/explore-control-system-concep…
spearw Feb 14, 2023
07b3f73
Remove pointing error topic
Feb 14, 2023
2b1477c
Merge remote-tracking branch 'origin/rl/explore-control-system-concep…
spearw Feb 14, 2023
eca8834
WIP: completing integration tests
spearw Feb 14, 2023
35b8616
Collect ignores in one place
Feb 15, 2023
b7bf8c7
Ignore PTZ Controller build dependencies
Feb 15, 2023
66aa321
Add system requirement
Feb 15, 2023
cc1fbfc
Add a little build documentation
Feb 15, 2023
7d73ab9
Add a method to decode payloads
Feb 15, 2023
2463569
Add method to decode payloads
Feb 15, 2023
45a3a4c
Add environment file for building with docker
Feb 15, 2023
84f5da4
Add sensible defaults and use consistent argument order
Feb 15, 2023
80b5b95
Merge remote-tracking branch 'origin/rl/explore-control-system-concep…
spearw Feb 15, 2023
02623d0
WIP: Integration tests
spearw Feb 15, 2023
cd8ae25
WIP: Commiting .env file required to build
spearw Feb 15, 2023
5400090
Move git ignores to a common location
Feb 15, 2023
de62d1c
Minor whitespace and documentation edits
Feb 15, 2023
12e9562
Merge branch 'main' into ws/add-auto-orientation
Mar 7, 2023
a11fc8f
Fix environment variable in instantiating auto-calibrator
Mar 9, 2023
c14c350
Use all environment variable from docker-compose environment
Mar 9, 2023
5c2d9c0
Do not use 'data' key or payload keyword argument
Mar 9, 2023
7d0e0b0
Rename docker-compose and .env file as templates
Mar 9, 2023
c5bdb88
Ignore test docker-compose and .env files
Mar 9, 2023
27d6668
Ignore all .bashrc files
Mar 9, 2023
bc7119e
Minor cleanup tested
Mar 9, 2023
c80c05a
Add utility to convert aircraft time to datetime object
Mar 9, 2023
fa0fec0
Compute lead time, fix zoom to the input value, correct pan and tilt
Mar 9, 2023
54a48e7
Mounted a volumen and followed Dockerfile best practices
Mar 10, 2023
dcc6312
Add context manager for pushing into then popping out of a directory
Mar 10, 2023
5284921
Add and use capture directory
Mar 10, 2023
6cfe266
Set zoom on initialization
Mar 10, 2023
293f261
Make callbacks robust to missing keys
Mar 10, 2023
8d18516
Improve documentation
Mar 10, 2023
77aeec9
Use .yml for YAML files
Mar 10, 2023
c6a2045
Update docker-compose file and .env
Mar 10, 2023
61da19a
Blacken buffers
Mar 10, 2023
a4ec4f4
Clean up docker-compose files
Mar 13, 2023
5f89e0d
Merge branch 'main' into ws/add-auto-orientation
Mar 13, 2023
e0ff91d
Capture image using the correct filename and publish corresponding me…
Mar 13, 2023
e2eccb1
Merge remote-tracking branch 'refs/remotes/origin/ws/add-auto-orienta…
Mar 13, 2023
b16653c
Make including age of flight message in lead time optional
Mar 14, 2023
89ff6bd
Blacken buffer
Mar 14, 2023
4e41924
Correct test of rate index calculations
Mar 14, 2023
ff55a92
Log configuration consistently
Mar 14, 2023
a69c91a
Handled MQTT message with and without "data" key
Mar 14, 2023
10d4d4f
Do not include age when testing integration
Mar 14, 2023
3a33ce4
Fix issues found during testing
Mar 14, 2023
9d5d057
Work in progress: corrected image capture and metadata publishing
Mar 14, 2023
9f2b5af
Enusre azimuth between 0 and 360
Mar 15, 2023
0a1fd68
Add changes needed to correct issues found when testing
Mar 16, 2023
6c6f875
Update topic name using hyphens:
Mar 16, 2023
4d39dfd
Stop camera when first encountering a new aircraft
Mar 16, 2023
5f32a15
WIP: Update auto-calibrator with new input message
spearw Mar 17, 2023
87ad621
Account for digital zoom in FOV calculation
Mar 17, 2023
77ea04a
Pass in position of aircraft at time one, and use standard notation
Mar 20, 2023
64e8923
Publish aircraft position at time one
Mar 20, 2023
9cde731
Update Fov calculations with calculated curve and clean up module
spearw Mar 23, 2023
7f2442a
Fail if the message does not contain the expected fields
Mar 24, 2023
2e89405
Improve logging and stop capturing images when first encountering an
Mar 24, 2023
05e9b6b
Use consistent naming convention and improve documentation
Mar 24, 2023
be27d6a
Update comments
Mar 24, 2023
b6a0264
Point at the aircraft and sleep on ICAO24 change
Mar 24, 2023
207bee9
Only command camera while using
Mar 24, 2023
bbfc1b7
Do not point at aircraft below the camera horizon
Mar 29, 2023
e245b18
Include lead time in minimization
Mar 30, 2023
2221e3b
Include lead time in calibration
Mar 30, 2023
f88c784
Accumulate data and pointing errors to overdetermine minimization
Mar 30, 2023
7dde15e
Removed lead time consistently from minimization.
Mar 30, 2023
c1dc152
Use current time and pointing in minimization
Mar 31, 2023
2938824
Blacken-buffer
Mar 31, 2023
845ddc9
Make config handling robust
Mar 31, 2023
9fdabfc
Make config message handling more consistent and reliable
Mar 31, 2023
0eb4544
Update tests after validation
Mar 31, 2023
5638af4
Minor line reordering
Mar 31, 2023
203f00b
Update test modules with new workflow
spearw Mar 31, 2023
86aab1b
Merge branch 'rl/accumulate-data-and-pointing-error-without-lead-time…
spearw Mar 31, 2023
7c9098e
Add a few TODOs
Mar 31, 2023
0318b68
Make the zoom value configurable
Apr 14, 2023
3121ff9
Merge branch 'rl/accumulate-data-and-pointing-error-without-lead-time…
Apr 14, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
Add return values and a TODO to remove them
  • Loading branch information
Raymond LeClair committed Jan 27, 2023
commit f540afdeb7b5df9fbe6b1104e94f895bc02a69c3
3 changes: 3 additions & 0 deletions axis-ptz/camera.py
Original file line number Diff line number Diff line change
Expand Up @@ -474,6 +474,9 @@ def calculateCameraPositionB(
angularVelocityHorizontal = math.degrees(-omega[2])
angularVelocityVertical = math.degrees(omega[0])

# TODO: Remove
return r_rst_a_0_t, v_rst_a_0_t


def calculateCameraPositionA():
global cameraPan
Expand Down