Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550

Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550
Code Documentation - Maslab 2013

Code Documentation

From Maslab 2013
(Difference between revisions)
Jump to: navigation, search
(Staff Code Documentation)
 
(6 intermediate revisions by one user not shown)
Line 3: Line 3:
 
*pyusb (gives usb-core, which is used to repeatably identify the Arduino in the Arduino interface code)
 
*pyusb (gives usb-core, which is used to repeatably identify the Arduino in the Arduino interface code)
 
*If you want to modify the code loaded on the Arduino (for gyro, accelerometer integration, for instance) the Arduino IDE is at http://www.arduino.cc/en/Main/software (the eeePCs are using IDE 1.0)
 
*If you want to modify the code loaded on the Arduino (for gyro, accelerometer integration, for instance) the Arduino IDE is at http://www.arduino.cc/en/Main/software (the eeePCs are using IDE 1.0)
 +
 +
===Staff Code Documentation===
 +
'''Git:'''
 +
 +
Our repository uses Git, and we recommend you use Git as your version control as well. See [[Git Documentation]] for more information on setting up Git.
 +
 +
 +
'''What do we give you?'''
 +
 +
The staff repository contains three things:
 +
* Arduino firmware -- You shouldn't need to modify this code unless you have a really special setup. To load firmware onto your Arduino:
 +
** Open it in the Arduino IDE
 +
** Go to File > Preferences
 +
** Set the sketchbook location to <staff repo>/arduino_firmware/sketchbook (this makes sure the Arduino IDE can find all the libraries)
 +
** Click Upload
 +
* Python interface library -- Use classes in this library to interact with the Arduino. '''Go to [[Code_Documentation/Interface_Library]] to read more about this.'''
 +
* Lots of examples. Look in the examples folder for lots of examples on how to use the Python interface library.
  
 
===External Library Documentation===
 
===External Library Documentation===
Line 13: Line 30:
 
** Python-Course (http://www.python-course.eu/finite_state_machine.php) - FSM tutorial, including code for a general FSM implementation
 
** Python-Course (http://www.python-course.eu/finite_state_machine.php) - FSM tutorial, including code for a general FSM implementation
 
* Arduino
 
* Arduino
 +
** General Arduino info (http://arduino.cc)
 
** pySerial (http://pyserial.sourceforge.net/) - If you want to roll your own Arduino communication library, you can simply use pySerial to read/write data from the serial connection. You can find an example on the Arduino site: http://playground.arduino.cc/Interfacing/Python.
 
** pySerial (http://pyserial.sourceforge.net/) - If you want to roll your own Arduino communication library, you can simply use pySerial to read/write data from the serial connection. You can find an example on the Arduino site: http://playground.arduino.cc/Interfacing/Python.
 
===Staff Code Documentation===
 
'''Getting set up:'''
 
 
The staff code is located on Github: https://github.com/gkanwar/maslab-staff-2013. Our recommended setup:
 
:0. Make a Github account if you do not have one already. (Each team member should do this)
 
:1. '''One team member''' should go to https://github.com/gkanwar/maslab-staff-2013 and click 'Fork' in the top right. This will copy the staff code into your own personal Github repository.
 
:2. This team member should then go to Settings > Collaborators and add every other team member.
 
:3. '''Each team member''' can now clone the Git repository onto their local computer using the 'git clone' command.
 
:4. Team members can then make local edits and push and pull from the Github repository.
 
:5. Your netbook should also have a clone of this repository, so you can run the code on your robot.
 
 
 
'''What do we give you?'''
 
 
The staff repository contains three things:
 
* Arduino firmware -- Load this onto your Arduino by opening it up in the Arduino IDE and clicking Upload. You shouldn't need to modify this code unless you have a really special setup.
 
* Python interface library -- Use classes in this library to interact with the Arduino. Go to [[Code_Documentation/Interface_Library]] to read more about this.
 
* Lots of examples. Look in the examples folder for lots of examples on how to use the Python interface library.
 

Latest revision as of 17:40, 16 January 2013

What you might want on your computer

  • OpenCV (installing this can be a bit challenging, ask staff if you need help)
  • pyusb (gives usb-core, which is used to repeatably identify the Arduino in the Arduino interface code)
  • If you want to modify the code loaded on the Arduino (for gyro, accelerometer integration, for instance) the Arduino IDE is at http://www.arduino.cc/en/Main/software (the eeePCs are using IDE 1.0)

Staff Code Documentation

Git:

Our repository uses Git, and we recommend you use Git as your version control as well. See Git Documentation for more information on setting up Git.


What do we give you?

The staff repository contains three things:

  • Arduino firmware -- You shouldn't need to modify this code unless you have a really special setup. To load firmware onto your Arduino:
    • Open it in the Arduino IDE
    • Go to File > Preferences
    • Set the sketchbook location to <staff repo>/arduino_firmware/sketchbook (this makes sure the Arduino IDE can find all the libraries)
    • Click Upload
  • Python interface library -- Use classes in this library to interact with the Arduino. Go to Code_Documentation/Interface_Library to read more about this.
  • Lots of examples. Look in the examples folder for lots of examples on how to use the Python interface library.

External Library Documentation

Personal tools