So the physical hardware and software are coming along well. I have also been able to get around some device configuration issues.
First I set the gps to use the uart on the arduino. Apparently there is a hardware buffer that is better able to handle the nema strings than the newsoftserial library. I now get timely and reasonable coordinates.
Second I wired up the xbee shield to the software serial port. I also configured them to crank at 115200. I get some funny asci characters on occasion the the telemetry is solid enough.
I also have wired up the throttle and steering to servos in code. The steering now reacts to the given gps data, a target location, and the compass reading. I was able to get the jitters out but now when I swing wheels around I get somewhat erratic readings from the compass - always something to improve.
I now plan to use the telemetry from the hardware platform (using the RC controller) to gather some gps data. With this I hope to create a course up and down my street!
Sunday, July 31, 2011
Monday, July 4, 2011
Turnkey Linux LAMP appliance and Zend
So I wanted to bring up a test environment for a web project I was considering. For this project I wanted a LAMP server with Zend server installed. Unfortunately the instructions and my weak knowledge of linux/apache stifled what should have been a straight forward install.
I now submit for my own reference and edification the steps I had to follow to get things running.
1. Installed Zend Studio trial on my windows host
2. Install vmplayer
3. Download the Turnkey LAMP appliance
4. Unzipped it and played it on the player - applied the security updates automatically and configured the network connections
5. Installed Samba (apt-get install samba)
6. Installed Aptitude (apt-get install aptitude)
7. I then followed the manual install instructions for Zend Server
8. Picked up the webmin samba component with (apt-get install webmin-samba)
9. Created a share to the /var/www/ folder after logging into webmin via the default IP assigned to the VM
10. Changed the file and folder permissions and chmod'd the web folder so I could write to it from my windows host
11. Created an example project via Zend studio in the shared LAMP folder
12. Finally configured the virtual host per the quickstart guide
Whew! So I now have a Zend server that displays the welcome screen and runs the example project. Now all I have to do is walk the example and learn how to use Zend. Hopefully it is easier than getting the example to work!
I now submit for my own reference and edification the steps I had to follow to get things running.
1. Installed Zend Studio trial on my windows host
2. Install vmplayer
3. Download the Turnkey LAMP appliance
4. Unzipped it and played it on the player - applied the security updates automatically and configured the network connections
5. Installed Samba (apt-get install samba)
6. Installed Aptitude (apt-get install aptitude)
7. I then followed the manual install instructions for Zend Server
8. Picked up the webmin samba component with (apt-get install webmin-samba)
9. Created a share to the /var/www/ folder after logging into webmin via the default IP assigned to the VM
10. Changed the file and folder permissions and chmod'd the web folder so I could write to it from my windows host
11. Created an example project via Zend studio in the shared LAMP folder
12. Finally configured the virtual host per the quickstart guide
Whew! So I now have a Zend server that displays the welcome screen and runs the example project. Now all I have to do is walk the example and learn how to use Zend. Hopefully it is easier than getting the example to work!
More coffee and jitter free Servos
So after an extensive look at example code I was able to smooth out those shakes. I ended up adding a delay() and servo.detach() after each servo.write() statement. With a lot of bench testing I am now able to turn the board and see the wheels turn in kind towards the offending waypoint.
Now what... guess I need to figure out how to go forward! I made another cable with some servo extensions and plugged everything into the arduino. After more fiddling with the stock speed controller on the Traxxas (the ESC XL 5 was set to training mode or something) I got regular servo commands to spin motors.
Yay!
So now I have left right and forward. Now I need to capture some gps data on my street to get multiple points for this thing to follow. I built an arduino stack with an xbee shield and the gps shield (both retail kits) with the thought I would strap this puppy down with some zip ties. With everything secured I then could tear up asphalt and wirelessly obtain my waypoints. Unfortunately I only get a few lines of lat/lon data before the wireless connection binds up and freezes on the serial monitor.
After a beer I came to the conclusion that the serial stream from the xbee (9600 by default) was probably binding up the flow of data from the gps and my print statements. I recalled reading in the Sparfun gps shield example that the baud rate needed to be 115200 to keep things nice. That or my arduino was browning out with my janky 9V battery connection... After another beer I decided that even if I was wrong I should be able to tinker with google maps and come up with some approximate points for testing.
Soon I hope to have the hardware stack rebuilt to put the bench test model onto the frame.
Now what... guess I need to figure out how to go forward! I made another cable with some servo extensions and plugged everything into the arduino. After more fiddling with the stock speed controller on the Traxxas (the ESC XL 5 was set to training mode or something) I got regular servo commands to spin motors.
Yay!
So now I have left right and forward. Now I need to capture some gps data on my street to get multiple points for this thing to follow. I built an arduino stack with an xbee shield and the gps shield (both retail kits) with the thought I would strap this puppy down with some zip ties. With everything secured I then could tear up asphalt and wirelessly obtain my waypoints. Unfortunately I only get a few lines of lat/lon data before the wireless connection binds up and freezes on the serial monitor.
After a beer I came to the conclusion that the serial stream from the xbee (9600 by default) was probably binding up the flow of data from the gps and my print statements. I recalled reading in the Sparfun gps shield example that the baud rate needed to be 115200 to keep things nice. That or my arduino was browning out with my janky 9V battery connection... After another beer I decided that even if I was wrong I should be able to tinker with google maps and come up with some approximate points for testing.
Soon I hope to have the hardware stack rebuilt to put the bench test model onto the frame.
Subscribe to:
Posts (Atom)