Code covered by the BSD License
-
simiam
A MATLAB-based educational bridge between theory and pratice in robotics.
-
GetArg(S, Name, Default)
-
ParseArgs(Args, varargin)
Check input arguments
-
findjobj(container,varargin)
findjobj Find java objects contained within a specified java container or Matlab GUI handle
-
launch()
Copyright (C) 2013 Georgia Tech Research Corporation
-
CellProps
Helper class for GridLayout
-
GridLayout
Main layout-manager class
-
mcodekit.list.dl_list
Copyright (C) 2012 Jean-Pierre de la Croix
-
mcodekit.list.dl_list_iterator
Copyright (C) 2012 Jean-Pierre de la Croix
-
mcodekit.list.dl_list_node
Copyright (C) 2012 Jean-Pierre de la Croix
-
simiam.app.ControlApp
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.controller.AOandGTG
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.controller.AvoidObstac...
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.controller.Controller
CONTROLLER is a template for all user-defined controllers.
-
simiam.controller.FollowWall
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.controller.GoToAngle
GOTOANGLE steers the robot towards a angle with a constant velocity using PID
-
simiam.controller.GoToGoal
GOTOGOAL steers the robot towards a goal with a constant velocity using PID
-
simiam.controller.SlidingMode
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.controller.Stop
-
simiam.controller.Supervisor
SUPERVISOR switches between controllers and handles their inputs/outputs.
-
simiam.controller.khepera3.K3...
SUPERVISOR switches between controllers and handles their inputs/outputs.
-
simiam.robot.Khepera3
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.robot.Robot
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.robot.dynamics.Differe...
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.robot.dynamics.Dynamics
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.robot.sensor.Proximity...
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.robot.sensor.WheelEnco...
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.simulator.Obstacle
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.simulator.Physics
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.simulator.Simulator
SIMULATOR is responsible for stepping the program through the simulation.
-
simiam.simulator.World
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.ui.AppWindow
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.ui.Drawable
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.ui.Pose2D
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.ui.Surface2D
Copyright (C) 2013, Georgia Tech Research Corporation
-
simiam.util.Plotter
PLOTTER supports plotting data in 2D with a reference signal.
-
View all files
from
Sim.I.am
by Jean-Pierre de la Croix
A MATLAB-based educational bridge between theory and practice in robotics.
|
| simiam.controller.Supervisor |
classdef Supervisor < handle
%% SUPERVISOR switches between controllers and handles their inputs/outputs.
%
% Properties:
% current_controller - Currently selected controller
% controllers - List of available controllers
% goal_points - Set of goal points
% goal_index - Pointer to current goal point
% v - Robot velocity
%
% Methods:
% execute - Selects and executes the current controller.
properties
%% PROPERTIES
current_controller % Currently selected controller
controllers % List of available controllers
robot % The robot
state_estimate % Current estimate of the robot's state
end
methods
%% METHODS
function obj = Supervisor()
%% SUPERVISOR Constructor
% initialize the controllers
obj.controllers{1} = simiam.controller.Controller('default');
% set the initial controller
obj.current_controller = obj.controllers{1};
obj.robot = [];
obj.state_estimate = simiam.ui.Pose2D(0,0,0);
end
function attach_robot(obj, robot, pose)
obj.robot = robot;
[x, y, theta] = pose.unpack();
obj.state_estimate.set_pose([x, y, theta]);
end
function execute(obj, dt)
%% EXECUTE Selects and executes the current controller.
% execute(obj, dt) will select a controller from the list of
% available controllers and execute it.
%
% See also controller/execute
end
end
end
|
|
Contact us