AlphaROVER
A repository for a 6-wheel rocker bogie rover, based on Robotic Operative System ROS and python to control its perception and action systems.
Install / Use
/learn @HaroldMurcia/AlphaROVERREADME
Alpha ROVER
A repository for a 6-wheel rocker bogie rover, based on Robotic Operative System ROS and Python to control the perception and action systems.
<p align='center'> <img src="./data/mechanics/photos/Picture1.png" alt="drawing" width="800"/> </p>This repository contents:
- Source codes
- Dev scripts
- Data files
/your_root / path
|--README.md / Instructions to configure the AlphaROVER
|--src / scripts for the system
|--APPS
|--Arduinio_gps+imu
|--Arm / Based on: https://github.com/FRC4564/Maestro/
|--Config
|--Control
|--EKF
|--GPIO
|--data
|--mechanics
|--alpha_full.pdf
|--inventor_files
|--photos
|--electronics
|--diagrams
|--proteus_files
|--user_pc
|--cam_bridge.py
Hardware Requirements:
- NVIDIA Jetson TK1 or NANO
- Ion Motion Roboclaw, Dual DC motor driver
- Pololu USB servo Control [POL-1353]
- Logitech Wireless Gamepad F710
- Hokuyo UTM-30LX-EW Scanning Laser Rangefinder
- Xsens MTi 10-series
- PC host running Ubuntu
- AlphaROVER platform
Software Requirements:
- OpenCV
- Hamachi
Jetson NANO
Follow the isntructions from NVIDIA
- Download the las SD card image
- Insert the SD and open the temrinal application
dmesg | tail | awk '$3 == "sd" {print}'/usr/bin/unzip -p ~/Downloads/jetson_nano_devkit_sd_card.zip | sudo /bin/dd of=/dev/sd<x> bs=1M status=progresssudo eject /dev/sd<x>
$ rosdep apt autoremove thunderbird*
$ sudo apt autoremove libreoffice*
$ sudo apt-get remove --purge libreoffice*
$ sudo apt-get remove libreoffice-core
$ sudo apt-get remove snapd lightdm cups chromium*
$ sudo apt-get remove libcurlpp0
$ sudo apt autoremove transmission-gtk
$ sudo systemctl set-default multi-user.target
$ rosdep update
$ rosdep upgrade
$ sudo apt install htop
$ sudo apt install screen
$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
$ sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
$ sudo apt update
#sudo apt install ros-melodic-desktop
$ sudo apt install ros-melodic-ros-base
$ apt search ros-melodic
$ sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential
$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
$ sudo rosdep init
$ rosdep update
$ sudo apt-get install nano
Catkin configuration
$ sudo apt-get install cmake python-catkin-pkg python-empy python-nose python-setuptools libgtest-dev $ python-rosinstall python-rosinstall-generator python-wstool build-essential git
$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/
$ catkin_make
$ echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
Installing other repositories
- Install LiDAR
sudo apt install ros-melodic-urg-node - Install Joy
sudo apt install ros-melodic-joy - Install tf
sudo apt install ros-melodic-tf - Install MS Kinect V1
sudo apt-get install libfreenect-devsudo apt-get install ros-melodic-freenect-launch - Install the MTi USB Serial Driver
$ git clone https://github.com/xsens/xsens_mt.git $ cd ~/xsens_mt $ make $ sudo modprobe usbserial $ sudo insmod ./xsens_mt.ko - Install gps_common or gps_umd as available based on the ROS distributable
sudo apt-get install ros-melodic-gps-umdorsudo apt-get install ros-melodic-gps-common - Isntall MTi rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/xsens_mti_ros_node.git $ cd ~/catkin_ws/ $ catkin_make - Install Dynamixel rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/dynamixel_motor.git $ cd ~/catkin_ws/ $ catkin_make - Install gscam rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/gscam.git $ cd ~/catkin_ws/ $ catkin_make - Install orbit camera actuation rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/orbit_camera_actuation.git $ cd ~/catkin_ws/ $ catkin_make - Install roboclaw rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/roboclaw_ros.git $ cd ~/catkin_ws/ $ catkin_make - Install vidsrv rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/vidsrv.git $ cd ~/catkin_ws/ $ catkin_make - Install Maestro rosnode
$ cd ~/catkin_ws/src $ git clone https://github.com/HaroldMurcia/Maestro.git $ cd ~/catkin_ws/ $ catkin_make
Installing AlphaROVER repository
$ cd ~/catkin_ws/src
$ git clone https://github.com/HaroldMurcia/AlphaROVER.git
$ cd ~/catkin_ws/
$ catkin_make
$ cd ~/catkin_ws/src/AlphaROVER/src/Config/
$ sudo chmod -R 777 config_init.sh
$ sudo ./config_init.sh
$ sudo reboot
Getting Started on host PC
- Install hamachi and haguichi.
Configuring a Linux-Supported Joystick with ROS
- Install the package:
sudo apt-get install ros-melodic-joy - Connect the joystick to your computer and let's see if Linux recognized it:
ls /dev/input/ - The joystick will be referred to by jsX, you can test it by running:
sudo jstest /dev/input/jsXMove the joystick around to see the data change. - Give permissions on the joystick port:
sudo chmod a+rw /dev/input/jsX - To start the joy node:
roscore rosparam set joy_node/dev "/dev/input/jsX" rosrun joy joy_node - To see the data from the joystick:
rostopic echo joy
Functions to add on PC's .bashrc file
source /opt/ros/melodic/setup.bash
function pilot
{
ls -l /dev/input/jsX
sudo chmod a+rw /dev/input/jsX
rosparam set joy_node/dev "/dev/input/jsX"
rosrun joy joy_node &
}
# If want to connect through hamachi
function exportar_hamachi
{
export ROS_IP = {pcIP}
}
function exportar
{
export ROS_IP = {pcIP}
}
# To access Jetson webcam image
function webcam
{
python ~/cam_bridge.py
}
Authors:
Universidad de Ibagué - Ingeniería Electrónica.
Related Skills
node-connect
347.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
347.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
347.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
