Skip to content
Snippets Groups Projects
Commit 0fbf1f42 authored by Steven Lange's avatar Steven Lange
Browse files

Implemented Egomotion.h

parent 930e1dc6
Branches
No related merge requests found
...@@ -7,7 +7,7 @@ set(CMAKE_CXX_STANDARD 14) ...@@ -7,7 +7,7 @@ set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_FLAGS "-pthread") set(CMAKE_CXX_FLAGS "-pthread")
# Include Boost # Include Boost
find_package(Boost REQUIRED COMPONENTS system regex) find_package(Boost REQUIRED)
find_package(catkin REQUIRED COMPONENTS find_package(catkin REQUIRED COMPONENTS
roscpp roscpp
......
...@@ -3,10 +3,13 @@ ...@@ -3,10 +3,13 @@
#include <nodelet/nodelet.h> #include <nodelet/nodelet.h>
#include <ros/ros.h> #include <ros/ros.h>
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/matrix.hpp>
#include "car/ussDataMsg.h" #include "car/ussDataMsg.h"
#include "car/camDataMsg.h" #include "car/camDataMsg.h"
using namespace boost::numeric::ublas;
namespace car namespace car
{ {
class Environment : public nodelet::Nodelet class Environment : public nodelet::Nodelet
...@@ -35,6 +38,16 @@ private: ...@@ -35,6 +38,16 @@ private:
void ussDataCallback(const ussDataMsg::ConstPtr & inMsg); void ussDataCallback(const ussDataMsg::ConstPtr & inMsg);
void camDataCallback(const camDataMsg::ConstPtr & inMsg); void camDataCallback(const camDataMsg::ConstPtr & inMsg);
zero_vector<double> x {2};
zero_matrix<double> P {2, 2};
zero_matrix<double> F {2, 2};
zero_matrix<double> Q {2, 2};
zero_vector<double> H {2};
zero_vector<double> R {1};
void predict();
void update(vector<double> mesVec);
}; };
} }
#endif #endif
...@@ -11,27 +11,27 @@ PLUGINLIB_EXPORT_CLASS(car::Environment, nodelet::Nodelet); ...@@ -11,27 +11,27 @@ PLUGINLIB_EXPORT_CLASS(car::Environment, nodelet::Nodelet);
namespace car namespace car
{ {
Environment::Environment(ros::NodeHandle &nh, std::string &name) : Environment::Environment(ros::NodeHandle &nh, std::string &name) :
nh_(nh), nh_(nh),
name_(name), name_(name),
distance(0), distance(0),
relativeSpeed(0) {} relativeSpeed(0) {}
Environment::Environment() {} Environment::Environment() {}
Environment::~Environment() {} Environment::~Environment() {}
void Environment::onInit() void Environment::onInit()
{ {
NODELET_INFO("Environment::onInit -- START"); NODELET_INFO("Environment::onInit -- START");
environmentData = nh_.advertise<environmentDataMsg>("environmentData", 1); environmentData = nh_.advertise<environmentDataMsg>("environmentData", 1);
ussData = nh_.subscribe("ussData", 1, &Environment::ussDataCallback, this); ussData = nh_.subscribe("ussData", 1, &Environment::ussDataCallback, this);
camData = nh_.subscribe("camData", 1, &Environment::camDataCallback, this); camData = nh_.subscribe("camData", 1, &Environment::camDataCallback, this);
NODELET_INFO("Environment::onInit -- END"); NODELET_INFO("Environment::onInit -- END");
} }
void Environment::ussDataCallback(const ussDataMsg::ConstPtr& inMsg) void Environment::ussDataCallback(const ussDataMsg::ConstPtr& inMsg)
{ {
// std::cout << "Environment recived new uss data (" << inMsg->distance << ").\n"; // std::cout << "Environment recived new uss data (" << inMsg->distance << ").\n";
distance = inMsg->distance; distance = inMsg->distance;
relativeSpeed = 1.0; relativeSpeed = 1.0;
...@@ -41,12 +41,10 @@ namespace car ...@@ -41,12 +41,10 @@ namespace car
outMsg.relativeSpeed = relativeSpeed; outMsg.relativeSpeed = relativeSpeed;
environmentData.publish(outMsg); environmentData.publish(outMsg);
} }
void Environment::camDataCallback(const camDataMsg::ConstPtr& inMsg) void Environment::camDataCallback(const camDataMsg::ConstPtr& inMsg)
{ {
// std::cout << "Environment recived new cam data ( ).\n"; // std::cout << "Environment recived new cam data ( ).\n";
} }
} }
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment