Difference between revisions of "IGVC Software"

From RoboJackets Wiki
Jump to navigation Jump to search
(NodeUtils)
 
(10 intermediate revisions by 2 users not shown)
Line 3: Line 3:
  
 
== Quick Links ==
 
== Quick Links ==
*[https://docs.google.com/forms/d/e/1FAIpQLScTJnBzVLlr-YXS_hZ2qcDb50x6Ry6-Bnzpq5zm7ikRwEqRYw/viewform?usp=sf_link/ Request Bag File]
 
*[https://docs.google.com/forms/d/e/1FAIpQLSd4-LSgnXA16Wv4K3I7aX2Ybv9QqJoQB6Co-DkmjcK0CaLVJQ/viewform?usp=sf_link/ Log Bag File]
 
 
*[http://wiki.ros.org/ROS/Tutorials/ ROS Tutorials]
 
*[http://wiki.ros.org/ROS/Tutorials/ ROS Tutorials]
 
*[https://github.com/RoboJackets/igvc-software/ Code Base]
 
*[https://github.com/RoboJackets/igvc-software/ Code Base]
Line 21: Line 19:
  
  
== Node Overview ==
+
== Package Overview ==
===Mapper===
+
===igvc_description===
===Pather===
+
===igvc_gazebo===
===Line Detection===
+
====Gazebo Interface====
===Pot Hole Detector===
+
===igvc_perception===
===Motor Controller===
+
====Filter Lidar====
===Light Controller===
+
====Vision====
===Waypoint===
+
===igvc_navigation===
 +
====Path Planner====
 +
====Path Follower====
 +
====State Estimator====
 +
====Mapper====
 +
====Waypoint====
 +
====Wheel Odometer====
 +
===igvc_platform===
 +
====Motor Controller====
 +
====IMU====
 +
====Joystick Driver====
 +
====System Stats====
 +
===igvc_rviz_plugins===
 +
====RVIZ plugins====
 +
===igvc_utils===
 +
====Serial====
 +
====NodeUtils====
 +
NodeUtils is a utility class which contains methods that are generally useful to nodes:
 +
; <code>void igvc::param(const ros::NodeHandle pNh, const std::string &param_name, T &param_val, const T &default_val)</code>
 +
: Calls <code>pNh.param</code> with the provided parameters, outputting to <code>ROS_ERROR_STREAM</code> if the parameter is not provided and set from the default value
 +
 
 +
; <code>void igvc::getParam(const ros::NodeHandle &pNh, const std::string &param_name, T &param_val)</code>
 +
: Calls <code>pNh.getParam</code> with the provided parameters, outputting to <code>ROS_ERROR_STREAM</code> if the parameter is not provided, then calls <code>ros::shutdown()</code> to exit.
 +
 
 +
====RobotState====
 +
RobotState is a utility class which represents the state of the robot as (x, y, &theta;)
 +
; <code>void setState(const nav_msgs::Odometry::ConstPtr &msg)</code>
 +
: Sets the state from a <code>nav_msgs::Odometry</code> message
 +
 
 +
; <code>Eigen::Vector3d getVector3d()</code>
 +
: Returns the state of the robot as an <code>Eigen::Vector3d</code> of (x, y, &theta;)
 +
 
 +
===igvc_msgs===
 
[[Category:IGVC]]
 
[[Category:IGVC]]

Latest revision as of 22:44, 30 November 2018

General Information

Our software team uses Robot Operating System (ROS) to develop our code. ROS is a flexible framework developed for quickly prototyping of code for robotic applications. There are many libraries of code that use ROS which allow us to integrate them into our code base with ease.

Quick Links

Installation Instructions

Management

How To Guides


Package Overview

igvc_description

igvc_gazebo

Gazebo Interface

igvc_perception

Filter Lidar

Vision

igvc_navigation

Path Planner

Path Follower

State Estimator

Mapper

Waypoint

Wheel Odometer

igvc_platform

Motor Controller

IMU

Joystick Driver

System Stats

igvc_rviz_plugins

RVIZ plugins

igvc_utils

Serial

NodeUtils

NodeUtils is a utility class which contains methods that are generally useful to nodes:

void igvc::param(const ros::NodeHandle pNh, const std::string &param_name, T &param_val, const T &default_val)
Calls pNh.param with the provided parameters, outputting to ROS_ERROR_STREAM if the parameter is not provided and set from the default value
void igvc::getParam(const ros::NodeHandle &pNh, const std::string &param_name, T &param_val)
Calls pNh.getParam with the provided parameters, outputting to ROS_ERROR_STREAM if the parameter is not provided, then calls ros::shutdown() to exit.

RobotState

RobotState is a utility class which represents the state of the robot as (x, y, θ)

void setState(const nav_msgs::Odometry::ConstPtr &msg)
Sets the state from a nav_msgs::Odometry message
Eigen::Vector3d getVector3d()
Returns the state of the robot as an Eigen::Vector3d of (x, y, θ)

igvc_msgs