sedgwickc / RoverNodes

A collection of ROS nodes used to control various aspects of a rover.
https://charlessedgwick.com
1 stars 0 forks source link

Rover Control Project

(Charles Sedgwick) [charlessedgwick.com]

RoverDaemons exits as a test bed for learning how to implement control software for autonomous land based vehicles. The core computing platforms supported are the BeagleBone Blue. The BeagleBone Black and Green are supported via the BeagleBoneBlack branch. An alternative version that uses ACH instead of ROS is supported via the feature-ach branch.

Dependancies

@master:

@feature-ach:

@BeagleBoneBlack

Compilation

  1. clone directory
    https://github.com/sedgwickc/RoverDaemons.git
  2. navigate to newly created RoverDaemons directory

@master:

  1. source your ROS environment
  2. run catkin_make

@feature-ach:

  1. run make
    make all

Startup

@master:

  1. start roscore
  2. Nodes built in step 4 should be in devel/lib/. Start them via roslaunch.

@feature-ach:

  1. Ensure pwm pins are setup:

    sudo setupPWM.sh
  2. create channels

    sudo ./create_channels.sh -c
  3. start daemons

    sudo ./build/sub_nav
  4. start rover controller

    sudo ./build/control

Shutdown

@master:

@feature-ach:

  1. Kill daemons
    sudo kill $DAEMON_PID

Troubleshooting

@master:

@feature-ach:

  1. delete channels
    sudo ./create_channels.sh -d
  2. logging
    • logs are stored in the following directory:
      /var/log/rover_logs/nav_log.txt