Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
constants Namespace Reference

Namespace containing all constants for autonomy software. Including AutonomyGlobals.h will also include this namespace. More...

Variables

const bool MODE_SIM = false
 
const std::string SIM_IP_ADDRESS = "127.0.0.1"
 
const uint SIM_WEBSOCKET_PORT = 8080
 
const uint SIM_WEBRTC_QP = 25
 
const double BATTERY_MINIMUM_CELL_VOLTAGE = 3.2
 
const bool BATTERY_CHECKS_ENABLED = false
 
const std::string LOGGING_OUTPUT_PATH_ABSOLUTE = "../logs/"
 
const quill::LogLevel CONSOLE_MIN_LEVEL = quill::LogLevel::TraceL3
 
const quill::LogLevel FILE_MIN_LEVEL = quill::LogLevel::TraceL3
 
const quill::LogLevel ROVECOMM_MIN_LEVEL = quill::LogLevel::Info
 
const quill::LogLevel CONSOLE_DEFAULT_LEVEL = quill::LogLevel::Info
 
const quill::LogLevel FILE_DEFAULT_LEVEL = quill::LogLevel::TraceL3
 
const quill::LogLevel ROVECOMM_DEFAULT_LEVEL = quill::LogLevel::Info
 
const std::string szTraceL3Color = "\033[30m"
 
const std::string szTraceL2Color = "\033[30m"
 
const std::string szTraceL1Color = "\033[30m"
 
const std::string szDebugColor = "\033[36m"
 
const std::string szInfoColor = "\033[32m"
 
const std::string szNoticeColor = "\033[97m\033[1m"
 
const std::string szWarningColor = "\033[93m\033[1m"
 
const std::string szErrorColor = "\033[91m\033[1m"
 
const std::string szCriticalColor = "\033[95m\033[1m"
 
const std::string szBacktraceColor = "\033[30m"
 
const int ROVECOMM_OUTGOING_UDP_PORT = MODE_SIM ? 11001 : 11000
 
const int ROVECOMM_OUTGOING_TCP_PORT = MODE_SIM ? 12001 : 12000
 
const std::string ROVECOMM_TCP_INTERFACE_IP = "127.0.0.1"
 
const float DRIVE_MAX_POWER = 1.0
 
const float DRIVE_MIN_POWER = -1.0
 
const float DRIVE_MAX_EFFORT = 0.5
 
const float DRIVE_MIN_EFFORT = -0.5
 
const double DRIVE_PID_PROPORTIONAL = 0.008
 
const double DRIVE_PID_INTEGRAL = 0.001
 
const double DRIVE_PID_DERIVATIVE = 0.004
 
const double DRIVE_PID_FEEDFORWARD = 0.0
 
const double DRIVE_PID_MAX_ERROR = 180.0
 
const double DRIVE_PID_MAX_INTEGRAL_TERM = 0.2
 
const double DRIVE_PID_MAX_RAMP_RATE = 0.08
 
const double DRIVE_PID_OUTPUT_FILTER = 0.1
 
const double DRIVE_PID_TOLERANCE = 1.0
 
const bool DRIVE_PID_OUTPUT_REVERSED = false
 
const bool DRIVE_SQUARE_CONTROL_INPUTS = false
 
const bool DRIVE_CURVATURE_KINEMATICS_ALLOW_TURN_WHILE_STOPPED = true
 
const int RECORDER_FPS = 15
 
const bool ZED_MAINCAM_ENABLE_RECORDING = true
 
const bool BASICCAM_GROUNDCAM_ENABLE_RECORDING = true
 
const bool TAGDETECT_MAINCAM_ENABLE_RECORDING = true
 
const bool TAGDETECT_GROUNDCAM_ENABLE_RECORDING = true
 
const bool OBJECTDETECT_MAINCAM_ENABLE_RECORDING = true
 
const sl::RESOLUTION ZED_BASE_RESOLUTION = sl::RESOLUTION::HD720
 
const sl::UNIT ZED_MEASURE_UNITS = sl::UNIT::METER
 
const sl::COORDINATE_SYSTEM ZED_COORD_SYSTEM = sl::COORDINATE_SYSTEM::LEFT_HANDED_Y_UP
 
const sl::DEPTH_MODE ZED_DEPTH_MODE = sl::DEPTH_MODE::NEURAL
 
const sl::VIEW ZED_RETRIEVE_VIEW = sl::VIEW::LEFT
 
const bool ZED_SDK_VERBOSE = false
 
const bool ZED_SENSING_FILL = false
 
const float ZED_DEFAULT_MINIMUM_DISTANCE = 0.5
 
const float ZED_DEFAULT_MAXIMUM_DISTANCE = 40.0
 
const float ZED_DEFAULT_FLOOR_PLANE_ERROR = 0.5
 
const int ZED_DEPTH_STABILIZATION = 1
 
const sl::SVO_COMPRESSION_MODE ZED_SVO_COMPRESSION = sl::SVO_COMPRESSION_MODE::H265
 
const int ZED_SVO_BITRATE = 1000
 
const sl::POSITIONAL_TRACKING_MODE ZED_POSETRACK_MODE = sl::POSITIONAL_TRACKING_MODE::GEN_1
 
const bool ZED_POSETRACK_AREA_MEMORY = true
 
const bool ZED_POSETRACK_POSE_SMOOTHING = false
 
const bool ZED_POSETRACK_FLOOR_IS_ORIGIN = true
 
const bool ZED_POSETRACK_ENABLE_IMU_FUSION = true
 
const float ZED_POSETRACK_USABLE_DEPTH_MIN = 0.75
 
const bool ZED_POSETRACK_USE_GRAVITY_ORIGIN = true
 
const sl::SpatialMappingParameters::SPATIAL_MAP_TYPE ZED_MAPPING_TYPE = sl::SpatialMappingParameters::SPATIAL_MAP_TYPE::MESH
 
const float ZED_MAPPING_RANGE_METER = 20.0f
 
const float ZED_MAPPING_RESOLUTION_METER = 0.03f
 
const int ZED_MAPPING_MAX_MEMORY = 4096
 
const bool ZED_MAPPING_USE_CHUNK_ONLY = true
 
const int ZED_MAPPING_STABILITY_COUNTER = 3
 
const bool ZED_OBJDETECTION_TRACK_OBJ = true
 
const bool ZED_OBJDETECTION_SEGMENTATION = false
 
const sl::OBJECT_FILTERING_MODE ZED_OBJDETECTION_FILTERING = sl::OBJECT_FILTERING_MODE::NMS3D_PER_CLASS
 
const float ZED_OBJDETECTION_TRACKING_PREDICTION_TIMEOUT = 0.5
 
const float ZED_OBJDETECTION_BATCH_RETENTION_TIME = 240
 
const float ZED_OBJDETECTION_BATCH_LATENCY = 2
 
const sl::UNIT FUSION_MEASUREMENT_UNITS = ZED_MEASURE_UNITS
 
const sl::COORDINATE_SYSTEM FUSION_COORD_SYSTEM = ZED_COORD_SYSTEM
 
const bool FUSION_SDK_VERBOSE = false
 
const bool FUSION_ENABLE_GNSS_FUSION = false
 
const cv::InterpolationFlags BASICCAM_RESIZE_INTERPOLATION_METHOD = cv::InterpolationFlags::INTER_LINEAR
 
const int ZED_MAINCAM_RESOLUTIONX = 1280
 
const int ZED_MAINCAM_RESOLUTIONY = 720
 
const int ZED_MAINCAM_FPS = 60
 
const int ZED_MAINCAM_HORIZONTAL_FOV = 110
 
const int ZED_MAINCAM_VERTICAL_FOV = 70
 
const bool ZED_MAINCAM_EXPORT_SVO_RECORDING = true
 
const bool ZED_MAINCAM_EXPORT_SPATIAL_MAP = false
 
const bool ZED_MAINCAM_USE_GPU_MAT = MODE_SIM ? false : true
 
const bool ZED_MAINCAM_USE_HALF_PRECISION_DEPTH = true
 
const bool ZED_MAINCAM_FUSION_MASTER = false
 
const int ZED_MAINCAM_FRAME_RETRIEVAL_THREADS = 10
 
const int ZED_MAINCAM_SERIAL = 31237348
 
const int BASICCAM_GROUNDCAM_RESOLUTIONX = 1280
 
const int BASICCAM_GROUNDCAM_RESOLUTIONY = 720
 
const int BASICCAM_GROUNDCAM_FPS = 30
 
const int BASICCAM_GROUNDCAM_HORIZONTAL_FOV = 110
 
const int BASICCAM_GROUNDCAM_VERTICAL_FOV = 70
 
const int BASICCAM_GROUNDCAM_FRAME_RETRIEVAL_THREADS = 5
 
const int BASICCAM_GROUNDCAM_INDEX = 0
 
const PIXEL_FORMATS BASICCAM_GROUNDCAM_PIXELTYPE = PIXEL_FORMATS::eBGR
 
const double BBOX_MIN_LIFETIME_THRESHOLD = 0.15
 
const double BBOX_MIN_SCREEN_PERCENTAGE = 0.001
 
const double BBOX_TRACKER_LOST_TIMEOUT = 0.1
 
const double BBOX_TRACKER_MAX_TRACK_TIME = 5.0
 
const double BBOX_TRACKER_IOU_MATCH_THRESHOLD = 0.1
 
const tracking::TrackerType BBOX_TRACKER_TYPE = tracking::TrackerType::eCSRT
 
const int TAGDETECT_MAINCAM_DATA_RETRIEVAL_THREADS = 2
 
const int TAGDETECT_MAINCAM_CORNER_REFINE_MAX_ITER = 30
 
const int TAGDETECT_MAINCAM_CORNER_REFINE_METHOD = cv::aruco::CORNER_REFINE_NONE
 
const bool TAGDETECT_MAINCAM_DETECT_INVERTED_MARKER = true
 
const int TAGDETECT_MAINCAM_MARKER_BORDER_BITS = 1
 
const bool TAGDETECT_MAINCAM_USE_ARUCO3_DETECTION = true
 
const bool TAGDETECT_MAINCAM_ENABLE_TRACKING = true
 
const int TAGDETECT_MAINCAM_MAX_FPS = 30
 
const bool TAGDETECT_MAINCAM_ENABLE_TORCH = true
 
const std::string TAGDETECT_MAINCAM_TORCH_MODEL
 
const float TAGDETECT_MAINCAM_TORCH_CONFIDENCE = 0.7f
 
const float TAGDETECT_MAINCAM_TORCH_NMS_THRESH = 0.4f
 
const int OBJECTDETECT_MAINCAM_DATA_RETRIEVAL_THREADS = 2
 
const bool OBJECTDETECT_MAINCAM_ENABLE_TRACKING = true
 
const int OBJECTDETECT_MAINCAM_MAX_FPS = 30
 
const bool OBJECTDETECT_MAINCAM_ENABLE_TORCH = true
 
const std::string OBJECTDETECT_MAINCAM_TORCH_MODEL
 
const float OBJECTDETECT_MAINCAM_TORCH_CONFIDENCE = 0.8f
 
const float OBJECTDETECT_MAINCAM_TORCH_NMS_THRESH = 0.4f
 
const cv::aruco::PredefinedDictionaryType ARUCO_DICTIONARY = cv::aruco::DICT_4X4_50
 
const float ARUCO_TAG_SIDE_LENGTH = 0.015f
 
const double ARUCO_PIXEL_THRESHOLD = 175
 
const double ARUCO_PIXEL_THRESHOLD_MAX_VALUE = 255
 
const cv::Mat ARUCO_SHARPEN_KERNEL_FAST = (cv::Mat_<double>(3, 3) << 0, 0, 0, 0, 3, 0, 0, 0, 0)
 
const cv::Mat ARUCO_SHARPEN_KERNEL_EXTRA = (cv::Mat_<double>(3, 3) << 0, 0, 0, 0, 9, 0, 0, 0, 0)
 
const cv::Mat ARUCO_EDGE_KERNEL = (cv::Mat_<double>(3, 3) << 0, -1, 0, -1, 5, -1, 0, -1, 0)
 
const int STATEMACHINE_MAX_IPS = 60
 
const double STATEMACHINE_ZED_REALIGN_THRESHOLD = 0.5
 
const double APPROACH_MARKER_MOTOR_POWER = DRIVE_MAX_EFFORT * 0.6
 
const double APPROACH_MARKER_PROXIMITY_THRESHOLD = 2.0
 
const double APPROACH_MARKER_LOST_GIVE_UP_TIME = 15.0
 
const bool APPROACH_MARKER_VERIFY_POSITION = true
 
const double APPROACH_MARKER_VERIFY_TIME = 5.0
 
const double APPROACH_MARKER_TAG_LOST_BUFFER_TIME = 2.0
 
const bool APPROACH_MARKER_ENABLE_STUCK_DETECT = false
 
const double APPROACH_OBJECT_MOTOR_POWER = DRIVE_MAX_EFFORT * 0.6
 
const double APPROACH_OBJECT_PROXIMITY_THRESHOLD = 2.0
 
const double APPROACH_OBJECT_LOST_GIVE_UP_TIME = 15.0
 
const bool APPROACH_OBJECT_VERIFY_POSITION = true
 
const double APPROACH_OBJECT_VERIFY_TIME = 5.0
 
const double APPROACH_OBJECT_LOST_BUFFER_TIME = 2.0
 
const bool APPROACH_OBJECT_ENABLE_STUCK_DETECT = false
 
const double STUCK_CHECK_INTERVAL = 2.0
 
const unsigned int STUCK_CHECK_ATTEMPTS = 3
 
const double STUCK_CHECK_ROT_THRESH = 1.0
 
const double STUCK_CHECK_VEL_THRESH = 0.01
 
const double STUCK_SAME_POINT_PROXIMITY = 1.0
 
const double STUCK_HEADING_ALIGN_TIMEOUT = 5.0
 
const double STUCK_ALIGN_DEGREES = 65.0
 
const double STUCK_ALIGN_TOLERANCE = 5.0
 
const double REVERSE_MOTOR_POWER = DRIVE_MAX_EFFORT * 0.6
 
const double REVERSE_DISTANCE = 3.0
 
const double REVERSE_TIMEOUT_PER_METER = 5.0
 
const bool REVERSE_MAINTAIN_HEADING = true
 
const double SEARCH_MOTOR_POWER = DRIVE_MAX_EFFORT * 0.5
 
const double SEARCH_ANGULAR_STEP_DEGREES = 57.0
 
const double SEARCH_SPIRAL_SPACING = 1.0
 
const double SEARCH_ZIGZAG_SPACING = 4.0
 
const double SEARCH_SNAKE_SLITHERS = 2.0
 
const double SEARCH_WAYPOINT_PROXIMITY = 2.0
 
const bool SEARCH_ENABLE_STUCK_DETECT = false
 
const double NAVIGATING_MOTOR_POWER = DRIVE_MAX_EFFORT * 0.8
 
const double NAVIGATING_REACHED_GOAL_RADIUS = 2.0
 
const bool NAVIGATING_VERIFY_POSITION = false
 
const double NAVIGATING_VERIFY_SAMPLE_TIME = 30.0
 
const bool NAVIGATING_ENABLE_STUCK_DETECT = false
 
const double AVOIDANCE_STATE_MOTOR_POWER = DRIVE_MAX_EFFORT * 0.3
 
const double STANLEY_CROSSTRACK_CONTROL_GAIN = 0.5
 
const double STANLEY_DIST_TO_FRONT_AXLE = 0.5
 
const double STANLEY_STEERING_ANGLE_LIMIT = 30.0
 
const int STANLEY_PREDICTION_HORIZON = 1
 
const double STANLEY_PREDICTION_TIME_STEP = 0.01
 
const double ASTAR_AVOIDANCE_MULTIPLIER = 1.2
 
const double ASTAR_MAX_SEARCH_GRID = 4000.0
 
const double ASTAR_MAX_SEARCH_TIME = 120.0
 
const double ASTAR_NODE_SIZE = 0.5
 
const double NAVBOARD_MAX_GPS_DATA_AGE = 3.0
 
const double NAVBOARD_MAX_COMPASS_DATA_AGE = 3.0
 

Detailed Description

Namespace containing all constants for autonomy software. Including AutonomyGlobals.h will also include this namespace.

Author
ClayJay3 (clayt.nosp@m.onra.nosp@m.ycowe.nosp@m.n@gm.nosp@m.ail.c.nosp@m.om)
Date
2023-08-05

Variable Documentation

◆ TAGDETECT_MAINCAM_TORCH_MODEL

const std::string constants::TAGDETECT_MAINCAM_TORCH_MODEL
Initial value:
=
"../data/models/yolo_models/tag/v8n_x640_200epochs_balanced/best.torchscript"

◆ OBJECTDETECT_MAINCAM_TORCH_MODEL

const std::string constants::OBJECTDETECT_MAINCAM_TORCH_MODEL
Initial value:
=
"../data/models/yolo_models/bottle_mallet_new/v8n_x640_200epochs/best.torchscript"