Giter Club home page Giter Club logo

cib's Introduction

CiB

Currently in Beta - Submission environment

Alfred

Created by: Matthew Romero Moore, Jakob Daugherty, and Kevin Free

Requirements

  • Raspberry Pi
  • Pi SD Card with Debian installed
    • Instructions to install Debian from an image can be found here
  • iRobot Roomba and connecting cables

Setup

  1. Make sure that your pi is working and connected to the internet.
  • More detailed instructions on configuring your pi can be found here
  1. Install the ROS working environment for robot integration
  • Follow the instructions provided here to install ROS on your pi
  • Make sure you install the Desktop version to enable robot integration.
  1. Configure AWSIoT services for new thing (your pi)
  • For this you must have an AWS account. You can sign up for one here
  • You must also have a Cognito Pool ID. Instructions on setting up AWS Cognito and creating a pool ID can be found here
  • Follow the instructions provided by Amazon here to get started with AWSIoT.
  • Additionally, you must obtain the generic AWS rootCA certificate when downloading your Thing's individual certificate.
  • Make sure to save the following items when configuring AWSIoT
    • Thing Endpoint
    • Thing Certificate and Public/Private key pair
    • Thing Policy name
    • Your AWS Region (e.g., us-west-2)
    • Your AWS Cognito Pool ID
  1. Install and Configure Mosquitto
  • Instructions for installing Mosquitto on your pi can be found here
  • Note: In these instructions, references to an AWS EC-2 instance should be replaced with your pi. Also mostly focus on the bridge.conf section, and how to configure MQTT client for connection to AWSIot
  • After this step, I would suggest using mosquitto_sub to test your MQTT connection. More detailed information on mosquitto_sub can be found here
  1. Import and setup catkin_ws
  • Copy and paste the catkin_ws folder of this repo, into the home folder for your pi.
  • invoke catkin_make and source the setup.bash file.
  • You may need to provide your own copies of the create autonomy driver. Source code can be found here
  • You may need to provide you own copies of the mqtt_bridge libraries and rosbridge_suite. Source code can be found here
  1. Install and configure motion
  • Instructions for doing so can be found here

Running the robot side

To run the standard driver use the following code.

$ cd ~/catkin_ws
$ source devel/setup.bash
$ roslaunch alfred alfred.launch

To run the experimental driver use the following code.

$ cd ~/catkin_ws
$ source devel/setup.bash
$ roslaunch alfred dev-alfred.launch

Note: if the above returns an error, your camera module may need to be enabled using sudo raspi-config or motion may be running in the background and can be stopped using sudo service motion stop

Running the app side

Open the .xcworkspace file in XCode, and follow the instructions located here

cib's People

Contributors

jakob-daugherty avatar

Stargazers

 avatar Matthew Romero Moore avatar  avatar

Watchers

James Cloos avatar Yohanes Patrik avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.