Skip to content

Getting Started

Joseph Wang edited this page Dec 3, 2016 · 35 revisions

Hello and welcome to robobuggy! We are super glad to have you join our team. This page is meant to be a jumping off point about how to get up to speed on the project!

Getting Connected

Tools we use

Mechanical

SolidWorks 2016

Roboclub shop tools

Electrical

Software

We currently use the following software:

Windows 8 x64 bit

OpenCV 2.4.9

boofcv 0.17

java 8 update 20

apachie ant 1.6+ can get from http://ant.apache.org/bindownload.cgi

maven

coolterm (serial monitor)

Getting started with GIT

  1. Install the Java 8 version of the JDK
  2. Install IntelliJ IDEA Ultimate Student Edition (or download the community edition)
  3. git clone https://github.com/CMU-Robotics-Club/RoboBuggy.git
  4. cd Robobuggy/real_time/surface_src/java_src
  5. ./gradlew eclipse
  6. Follow the steps at Eclipse -> Intellij Migration to open the project in Intellij IDEA

RXTX Library Installation

Linux

Download the appropriate deb: https://packages.debian.org/jessie/librxtx-java AMD64: https://packages.debian.org/sid/amd64/librxtx-java/download

Use dpkg --install <filename> to install

Per this: http://ubuntuforums.org/showthread.php?t=1747382 it looks like you'll need to then do the following:

Right click on the project, and add Jar/Folder to the build path: /usr/share/java/RXTXcomm.jar

Then, within that very .jar, you'll need to point it to the native library (.so) folder located at: /usr/lib/jni

Also, you might need this line: System.setProperty("gnu.io.rxtx.SerialPorts", PORT_NAME); which will make sure that rxtx is able to read the serial port. Otherwise you'll have to create a symlink.

Also, here's a link to the FAQ: http://rxtx.qbang.org/wiki/index.php/FAQ

What programing languages do you use

For core system, you will use Java. You may try to convince us why you shouldn't use java. For offline tools, you can use pretty much what ever you want. We mostly use Java and C, with a little C++, python, bash scripts and Matlab

System Overview

The sensors which we currently have: 
   * Encoder
   * Potentiometer
   * Inertial Measurement Unit
   * GPS
   * voltage Sensor
   * Camera

The system has two actuators: 
   * Front wheel servo
   * Pneumatic Breaks

The control system is separated into two parts high level which runs on a surface pro 2 and low level which runs on an Arduino mega

Useful links

CMU Buggy Alumni Website http://cmubuggy.org/ TODO

Embedded

Set up OpenCV for eclipse

http://docs.opencv.org/doc/tutorials/introduction/java_eclipse/java_eclipse.html#java-eclipse

install ffmpeg on ubuntu 14.04

sudo apt-add-repository ppa:mc3man/trusty-media sudo apt-get update sudo apt-get install ffmpeg gstreamer0.10-ffmpeg