User Tools

Site Tools


robotino_log

Robotino Operation Log

Robotino operation main page: Robotino Operation

Week 7

10/10/7

Further developed PFNav to navigate potential field with successful early tests.


Some known issues of the day:

  • the robotino chatters around the minimum point
  • wifi communications were found to be slow. Temporarily using ethernet.

10/10/5

Formalized the robotino navigator class which allows basic controls of the robotino using ROS. It is based on the the approach_grab class developed earlier.

The class was then inherited by the PFNav class which extends robotinoNavigator in to navigate potential fields defined in the potentialField Class.

Some known issues of the day:

the robotino odometry object is not returning accurate readings for rotation. The temporary fix was to simply not rotate. I am currently unable to find any method of calibration.

10/10/4

Built a c++ class to represent a potential field used in potential field navigation.

below is the header file

potfield.h
class potentialField{
 
    public:
        // diffenet points used
        struct point{
            float x;
            float y;
        };
 
        struct attractivePoint{
            float x;
            float y;
            float weight;
        };
 
        struct repulsivePoint{
            float x;
            float y;
            float weight;
            float maxRange;
        };
 
        void addPoint(repulsivePoint p);        // adds a repulsive point to the potential field
        void addPoint(attractivePoint p);       // adds a attractive point to the potential field
        std::vector<float> attractiveGrad(point p);
        std::vector<float> repulsiveGrad(point p);
        std::vector<float> netGrad(point p);
        float magnitude(std::vector<float> vect);
        std::vector<float> normalize(std::vector<float> vect);
        std::vector<float> netGradNormalized(point p);
 
        void printPotentialField();
 
    private:
        double findDist(point p,repulsivePoint t);
        double findDist(point p,attractivePoint t);
 
        std::vector< attractivePoint > attractiveField;
        std::vector< repulsivePoint > repulsiveField;
};

Week 6

10/29/13

Modified object seeking program to look off camera if ball is not found based on last known position.

Completed tutorial for Robotino Object Seeking

10/28/13

Robotino ball tracking code has been re written in the form of a class and cleaned up significantly from last tutorials release

The ball tracking code has also been extend to track balls outside the robotino's field of view.

The code now also loops. So if the ball is dropped it will attempt to pick it up again.

Images were also taken and added to the Robotino_Vision_Pickup tutorial

cameraright.jpeg cameraleft.jpeg

Week 4

10/18/13

Preprogrammed movement and used pre-programed arm poses to pick up an object. See video for details.


10/15/13


Implemented 6 dof proportional control for arm.

Implemented posing feature to allow for manual positioning of arm


Week 3

10/8/13

  • Successfully compiled a program using api2 libraries
  • Wrote a program to drive robotino in a square.
  • Wrote a tutorial on how to create the robotino program.
  • Recorded tutorial and uploaded to youtube

10/7/13

Experimented with cmakelist.txt files and tried to make one to compile a robotino program. no success. asked on forums

Read through the robotino api2 demos to understand them

Week 2

10/5/13

Robotino API2_Setup

Hello World on the Robotino

tutorials were created and published

10/4/13

  • gained access to root user on robotino. Password: dorp6
  • completed the API2 Setup. It should be noted that in order to get the program to run I had to run it as root by.

run the following as root!!!

cd home/robotino/build/circle
target/example_circle 127.0.0.1

10/3/13:

  • Found another memory card in robotino's supplies. Plugged in to find another install of the robotino os.
  • Tried to compile programs again and was successful
  • when programs were run errors were recieved.
  • It was decided to re-flash the memory card using the latest os and have a fresh start
  • After memory card was reset I found that I could not use sudo apt-get commands from the robotino user. Apt-get is needed to install the development API. The manufacture does not seem to provide the root password.
  • Made a post on the Robotino forums to try to solve above permission issues.

10/2/13:

  • Tried to move Robotino again to test batteries. This time the Robotino was able to move under it's own power. However the power must still be connected.
  • Successfully got robotino to access internet. when downloading API software “memory full” warnings were encountered and the download would fail. Every time a new (even empty) directory was created the memory warning would be thrown

10/1/13:

  • Robotino would still shut down when motors try to engage. Allowed it to remain on charger.
  • Removed case to examine battery. They proved to be very complex to remove so it was decided to charge one more day.
  • Read network settings information and connected Robotino to wired network in order to get an ssh connection.
  • Attempted tutorial but was not able to get robotino to access internet to download api updates and demos

Week 1

9/30/13:

  • Moved Robotino to Bossone lab.
  • Began charging.
  • Attempted to boot up. Robotino would start but would turn off when motors would try to engage. Robotino was left to charge overnight.
  • Began reading about API
robotino_log.txt · Last modified: 2016/10/28 21:27 by dwallace