Raslow

Raslow is a robot created in 2006 for the IGVC competition, it is capable of waypoint navigation, autonomous line following and obstacle avoidance (using sonars).

RasLowStartup howto with 2007 code.

Using Raslow

  • Checklist Guide
    1. To use Raslow, you first must have the Compaq laptop (or other) with the igvc2006 code (avaialble through CVS or SVN)
    2. Turn on the white wireless router and the laptop should automatically Connect to the RAS network
    3. Use a 2nd laptop to connect to WirelessRas? to Remote Desktop into Raslow's laptop (use 256 colors - in options on Remote Desktop to increase speed of connection)

NOTE: (for python igvc2007 replace top.vi with instructions below)

  1. Open up the top.vi file on the desktop
  2. Now you can turn on the main two black switches near the battery section
  3. Check that the charging switch is in the off position (this is usually the case unless it has just been charging)
  4. Open up ImuDriver?.vi on the desktop and run, look below at Port Settings, if IMU streaming data, hit "stop" and close the program
  5. The default port settings for the 6812 and GPS (port 10) should work if they do not look below
  6. Check to make sure top.vi is defaulted on Manual control,
  7. Hit the Play Button on top.vi , then hit the "Start" button, there should be no errors in the error box on the right, if so check the RaslowErrors page
  8. Now try W,A,S,D keys to Manually control the robot (make sure the Red Button and killswitch are shorted)
  9. If movement is successful, check sonars, encoders and IMU for streaming data, if problem check RaslowErrors
  10. Switch to Stop command on the Autonomous tab, then switch to autonomous
  11. Check Heading Hold, by adjusting speed to zero, and switching command to "maintain heading"
  12. If successful, take RasLow to open outdoor area, check adj Parameters (default should be Correct, RaslowErrors)
  13. Switch Autonomous tab to "Obstacle XY" and watch as Raslow moves in a square according to the "xy.txt" file in the C:/cvs_base/igvc2007/bin/ directory
  14. The robot should reach all the waypoints in less than 5 minutes as long with no obstacles, and then it should say success

Joystick Drive

  1. Press the Big Red button
  2. Turn on both switches in the back by batteries
  3. Press button 1 on wireless remote to kill power to the motors
  4. Pull the Big red button (in series with kill)
  5. Turn on Futaba Joystick set sticks to center position
  6. Make sure the robot is clear of obstacles, press the kill button 1
  7. Drive the robot around for a blasty blast , (optional - press button 2 to switch to S12 drive instead of joystick )

Port Settings

  • If default port settings do not work off the bat, try plugging the USB cable into a different port on the laptop
  • The GPS will always be port 10 and the 6812 should be less than 10
  • If there is a significant change in USB wiring then you will have to go through an test each available port,

Wireless Router Settings

  • The ip addresses are static (ONLY if the wireless router isn't plugged into the LAN network), with the RAS-compaq being 192.168.1.2 and the tablet 192.168.1.3,
  • choose 192.168.1.4, 5 , ... but always ping before you sing
  • When the router is plugged in the LAN port, it should be given IP addresses from the NAT,
  • you should be able to connect to Raslow through an ip address (or \\RAS-COMPAQ if remote desktoping)
  • If your laptop can't see the wireless network, you must go through the setup (look at label on router) or plug into the local LAN network
  • If you're plugging the wireless router into our LAN, DO NOT use the WAN port. Trust me, it makes it easier since the DHCP server has been disabled on the wireless router.

Running Python Rev2 Code

First make sure you have installed all of the necessary software on your computer. There is a README file in trunk/sim that explains all of the Python packages you will need in order to run the code.

  1. Remote desktop into RasLow
  2. Edit trunk/config/comm.config to make sure the networking settings are correct
  3. Edit trunk/config/main.config to select whether you want to run the system in simulation mode or not
  4. Edit trunk/config/devices.config to select the comm ports you are using for each device
  5. Run trunk/sim/revision2/real_s12.py to test the S12. The first test is the "send test" -- it changes the PWM signal. The second test is the "receive test" and should print the sonar and encoder values. If the program crashes, make sure the S12 is connected to the computer and that the correct comm port was selected in step 4.
  6. Run trunk/sim/revision2/real_imu.py to test the IMU. If the program crashes, make sure the IMU is connected to the computer and that the correct comm port was selected in step 4.
  7. Run trunk/sim/revision2/frontend.py. You should see a visualization of the robot
  8. Run trunk/sim/revision2/backend.py. This will start the devices and / or simulation.
  9. Activate the frontend window and press 'm' to run in manual mode (wasd). Press 'o' to run the obstacle avoidance code

Troubleshooting

  1. import serial fails when using real sensors ( because python serial is not install see SoftwareSetup

Hopefully everything should work. If you get errors open the code you want to debug in a python editor and enter:

import pdb
pdb.set_trace()

Above the code you want to debug. Learn how to use this debugger! It will save you countless hours of fustration.