Skip to content

Commit

Permalink
max tilt
Browse files Browse the repository at this point in the history
  • Loading branch information
robotastic committed May 3, 2024
1 parent 35c0e06 commit b10237b
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions skyscan-c2/c2_pub_sub.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ def __init__(
prioritized_ledger_topic: str,
manual_override_topic: str,
min_tilt: float,
max_tilt: float,
min_altitude: float,
max_altitude: float,
mapping_filepath: str,
Expand Down Expand Up @@ -81,6 +82,7 @@ def __init__(
self.mapping_filepath = mapping_filepath
self.object_distance_threshold = float(object_distance_threshold)
self.min_tilt = min_tilt
self.max_tilt = max_tilt
self.min_altitude = min_altitude
self.max_altitude = max_altitude
self.lambda_t = self.device_longitude # [deg]
Expand Down Expand Up @@ -159,6 +161,7 @@ def __init__(
prioritized_ledger_topic = {prioritized_ledger_topic}
manual_override_topic = {manual_override_topic}
min_tilt = {min_tilt}
max_tilt = {max_tilt}
min_altitude = {min_altitude}
max_altitude = {max_altitude}
mapping_filepath = {mapping_filepath}
Expand Down Expand Up @@ -381,6 +384,7 @@ def _config_callback(
logging.info(f"Processing config msg data: {data}")
config = data["skyscan-c2"]
self.min_tilt = config.get("min_tilt", self.min_tilt)
self.max_tilt = config.get("max_tilt", self.max_tilt)
self.min_altitude = config.get("min_altitude", self.min_altitude)
self.max_altitude = config.get("max_altitude", self.max_altitude)

Expand All @@ -403,7 +407,7 @@ def _elevation_check(self: Any, azimuth: float, elevation: float) -> bool:
break
return True
else:
return self.min_tilt <= elevation <= 90
return self.min_tilt <= elevation <= self.max_tilt

def _target_selection_callback(
self: Any, _client: mqtt.Client, _userdata: Dict[Any, Any], msg: Any
Expand Down Expand Up @@ -444,11 +448,12 @@ def _target_selection_callback(
axis=1,
)

object_ledger_df["min_tilt_fail"] = object_ledger_df.apply(
object_ledger_df["tilt_fail"] = object_ledger_df.apply(
lambda x: not self._elevation_check(x["camera_pan"], x["camera_tilt"]),
axis=1
)


object_ledger_df["min_altitude_fail"] = (
object_ledger_df["altitude"] < self.min_altitude
)
Expand All @@ -464,7 +469,7 @@ def _target_selection_callback(
object_ledger_df["relative_distance"]
<= self.object_distance_threshold
)
& (object_ledger_df["min_tilt_fail"] == False)
& (object_ledger_df["tilt_fail"] == False)
& (object_ledger_df["min_altitude_fail"] == False)
& (object_ledger_df["max_altitude_fail"] == False)
]
Expand Down Expand Up @@ -609,6 +614,7 @@ def main(self: Any) -> None:
device_altitude=float(os.environ.get("TRIPOD_ALTITUDE")),
lead_time=float(os.environ.get("LEAD_TIME", 1.0)),
min_tilt=float(os.environ.get("MIN_TILT", 0.0)),
max_tilt=float(os.environ.get("MAX_TILT", 90.0)),
min_altitude=float(os.environ.get("MIN_ALTITUDE", 0.0)),
max_altitude=float(os.environ.get("MAX_ALTITUDE", 100000000.0)),
mapping_filepath=str(os.environ.get("MAPPING_FILEPATH","")),
Expand Down

0 comments on commit b10237b

Please sign in to comment.