Difference between revisions of "Robotics-2010"

From Earlham CS Department
Jump to navigation Jump to search
(Lab 6)
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= Software Stack =
+
= Resources for CS282 - Robotics =  
=== Ubuntu with Brad's Live ISO ===
+
== Hardware ==
# Make sure you have the latest version of the [http://cs.earlham.edu/~carrick/courses/cs282/cs282live_2.iso Live ISO] (as of this writing)
+
* [[change-NXT-settings|How to change the name of your NXT]]
#* Recent improvements: Right and middle click from the mac touchpad, no longer need to use sudo when trying to access USB bus, based on latest Ubuntu version, new Bluetooth management tool
 
# Boot off the live ISO, either on real hardware or virtually
 
# Login using cs282/johnny5
 
# Download [http://cs.earlham.edu/~carrick/courses/cs282/nxt.tgz Brad's installation kit] and untar it anywhere you want.
 
# In your editor of choice, modify the install.sh script to connect to your brick instead of Brad's. This will be within the first few lines.
 
# Open a terminal, navigate to the folder with your newly untarred files and type
 
sudo ./install.sh
 
If your computer supports bluetooth, set up your connection to your robot
 
# Turn on your brick.
 
# Navigate through the menu to enable bluetooth
 
#* Ensure that your device is set to "findable"
 
# Click the bluetooth symbol at the top of your computer's screen, next to the envelope.
 
# Select "Set up new device"
 
# Select your robot
 
# You will be prompted to input a passkey into your robot
 
#* Use the small grey button to delete characters and the large orange button to select characters
 
#* Select the checkmark to submit your passkey
 
#* Work quickly! You have about a minute before the passkey kicks you out and makes you start over!
 
#* You will be notified on-screen if your passkey was successful
 
# After your passkey is accepted, try running query.py
 
  
=== OSX ===
+
== Software Stack ==
* These instructions were tested under Snow Leopard (10.6.2), they will probably work under Leopard too.
+
* [http://cs.earlham.edu/~charliep/courses/cs282/packages/ Software Packages (nxt-python, etc)]
* These instructions assume you already have Python, you can check this by typing <code>python</code> at a shell (aka Terminal) prompt.  The Python interpreter should start, read the on-screen instructions to see how to exit it.
+
* [[nxt-python-iso|Ubuntu with Brad's Live ISO]]
* Frequently it's easier to get USB working than it is Bluetooth, and they use much of the same underlying plumbing.
+
* [[nxt-python-osx|OSX]]
* You should test each step as you go, most of the packages have example code you can use to do this.
 
* Each of the steps below require that a package or files to be downloaded to your computer first.  They are all available in the [http://cs.earlham.edu/~charliep/courses/cs282/packages CS282 packages] directory.  Once you have downloaded the zip file you can un-zip it, cd to the created directory, and run the command listed below for that directory.
 
$ sudo python ez_setup.py -U setuptools # setuptools
 
$ sudo python setup.py install # py2app
 
$ sudo python setup.py install # lightblue
 
$ sudo python setup.py install # nxt-python-1.1
 
* Simon Levy's script (bluetooth.py*) must be in the directory that you are running the interpreter in for the Bluetooth interface to work.  <i>Update: Release v1.1 appears to have integrated this script into the NXT-Python library.</i>
 
* For USB support you will need PyUSB, you can download it from its SourceForge [http://sourceforge.net/projects/pyusb site] and then install it.
 
* Once you think all the plumbing is working correctly you can use the query.py script in the [http://cs.earlham.edu/~charliep/courses/cs282/source CS282 source] directory to test it.  <b>N.B.</b> Change the BlueTooth ID in query.py to match your NXT.
 
  
= Python =
+
== Python ==
 
* [[nxt-python-doc|NXT-Python Documentation]]
 
* [[nxt-python-doc|NXT-Python Documentation]]
 +
* [[nxt-python-hints|Programming Hints]]
 
* [[nxt-python-threads|Thread Notes]]
 
* [[nxt-python-threads|Thread Notes]]
 +
 +
== Sensor Notes ==
 +
* [[bots-hitechnic-compass|HiTechnic Compass]]
 +
 +
== Non-local Resources ==
 +
* Bluetooth - NXT [http://vikram.eggwall.com/computers/nxt-bluetooth-setup.html setup notes]
 +
 +
= Lab 6 =
 +
* [http://cs.earlham.edu/~charliep/courses/cs282/mapping.pdf The Official Assignment]
 +
* [[robotics-lab6-tasks|Task Analysis - Original]]
 +
* [[Robotics-lab6-newversion|Task Analysis - Second Go 'Round]]
 +
* [http://github.com/Sleemanmunk/Magnetic-Mapping Software Repository]
 +
* [http://cs.earlham.edu/~carrick/courses/cs282/lab6/visualization Visualization]

Latest revision as of 19:48, 15 April 2010