//--------------------------------------------------- // Helm Behavior file initialize DEPLOY = false initialize RETURN = false initialize CHASING = true initialize AVOID = true initialize STATION_KEEP = false set MODE = ACTIVE { DEPLOY = true } INACTIVE set MODE = STATION-KEEPING { MODE = ACTIVE STATION_KEEP = true } set MODE = RETURNING { MODE = ACTIVE RETURN = true } CHASING //---------------------------------------------- Behavior = BHV_Loiter { name = loiter pwt = 100 condition = MODE==CHASING updates = UP_LOITER runflag = VEHICLE_UNDERWAY = TRUE endflag = VEHICLE_UNDERWAY = FALSE perpetual = true post_suffix = A speed = 5 clockwise = best radius = 4.0 nm_radius = 8.0 polygon = radial:: $(LOITER_POS), radius=20, pts=8, snap=1, label=$(VNAME)_LOITER visual_hints = nextpt_color=white, nextpt_lcolor=khaki visual_hints = edge_color=orange, vertex_color=white visual_hints = edge_size=1, vertex_size=2 } //---------------------------------------------- // Behavior = BHV_Waypoint // { // name = waypt_search // pwt = 100 // condition = MODE==CHASING // endflag = UTS_RESET=true // updates = WPT_UPDATE // perpetual = true // // speed = 2 // meters per second // capture_line = true // capture_radius = 5.0 // slip_radius = 15.0 // // polygon = 60,-40 : 60,-160 : 150,-160 : 180,-100 : 150,-40 // repeat = 0 // // visual_hints = nextpt_color=gray20 // visual_hints = nextpt_vertex_size=2 // visual_hints = nextpt_lcolor=invisible // visual_hints = label_color=invisible // visual_hints = vertex_color=invisible, edge_color=invisible // visual_hints = vertex_size=2, edge_size=1 // } //---------------------------------------------- Behavior = BHV_Waypoint { name = waypt_return pwt = 100 updates = RETURN_UPDATES condition = MODE==RETURNING endflag = STATION_KEEP = true endflag = DEPLOY = false perpetual = true speed = 2.0 capture_radius = 3.0 slip_radius = 15.0 points = $(START_POS) repeat = 10 lead = 8 } //---------------------------------------------- Behavior = BHV_StationKeep { name = station-keep pwt = 100 condition = MODE==STATION-KEEPING inactiveflag = STATIONING = false activeflag = STATIONING = true center_activate = true inner_radius = 5 outer_radius = 10 outer_speed = 1.0 transit_speed = 1.3 swing_time = 7 visual_hints = vertex_size=0, edge_color=gray50 }