Giter Site home page Giter Site logo

cloud-robotics-spirit-rover's Introduction

cloud-robotics-spirit-rover

This guide assumes you have completed the setup of the Spirit Rover according to Plumgeek's documentation. Make sure the Raspberry Pi boots up and you can SSH to it over WiFi. I assume you know how to work with wpa_supplicant to connect the pi to WiFi at boot.

This code will allow you to stream sensor data from the rover to a PC where all the processing is performed and motor/servo instructions are sent back to the rover. The code also allows for manual control of the rover if the user wishes to do that. The autonomous mode behaves similarly to demo mode 2 of the shipping code except instead of running the logic on the arduino, it runs on a PC.

Feel free to clone and modify the code.

File locations are as follows:

manualrover.py should be on the PC controlling the rover proverai.py should be on the PC controlling the rover provergraph.py should be on the PC controlling the rover

clouddemo.py should be on the raspberry pi in ~/rover/democode since it uses methods from other python scripts in that folder navlights.py should be on the raspberry pi in ~/rover/democode since it uses methods from other python scripts in that folder

Setup:

Add the following line to /etc/rc.local before the "exit 0" at the end of the file:

python /home/pi/rover/democode/navlights.py

This will startup the navigation lights as soon as the pi boots up so you get a visual confirmation that the pi is ready and you can ssh to it.

Flash the arduino with the provided PiControl sketch and power cycle the rover.

When the rover boots up and you see the navigation lights, SSH to the Pi and execute clouddemo.py This will start the sensor data streaming to the PC over WiFi.

At this point you can run the provergraph.py on the PC to see the sensor data. Executing proverai.py will automatically run the rover performing surface sensing to avoid edges and range finding to detect and avoid obstacles. Alternatively, you can execute manualrover.py and take manual control of the rover using WASD for motor control and UJHKG for servos

cloud-robotics-spirit-rover's People

Contributors

headamage avatar

Watchers

Marc Karasek 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.