JimH
03-02-2008, 06:49 PM
Well, figured my bot is currently a rover in the works, so I have moved my status postings into this sub forum.
For reference, my project consists of:
A RoboticsConnection Serializer WL as my controller
Bluetooth module on Serializer for communication
Large project box from Radio Shack
Parallax PING ))) sensor
Inexpensive 7.2V battery pack
Cheap RC buggy chassis that has 2 gearhead motors
JR Sport ST47 servo
Homemade wiring
Some various bolts/nuts and brackets from the garage
A wooden bumper
C#.NET Studio Express 2008There currently isn't a clear goal for the bot. I'm using it to experiment and learn while introducing my 6 year old son to programming, robots, and fabrication.
So the last time I posted an update I was using the PING sensor in a fix mount and was not happy with the speed and accuracy of sensor readings. Since then....
Servo Extender Wiring
Up until now I have been using an IDE hard drive cable for my sensor. It was the only cable I had that fit properly. As you can imaging it was way bulky and cumbersome to deal with. I went to a local hobby shop and they didn't have any female-female cables so I purchased some bulk wire and the terminators. After a little trial and error I have some working cables. Found out that soldering is not recommended as it tends to clog the receptacle.
C# Study
My basic programming skills have allowed me to do some cut/paste/modify code. However, when really working to understand how to properly dissect existing code and then reuse, modify and add to it I found that I was missing something. So I took some time to go back through the tutorials that Alex pointed me to and I feel like I'm about 80-90% of where I will need to be. Armed with this knowledge I went back into some examples and the documentation for the serializer and revised some of my code.
PING Motion
As I started to explore the PING sensor again, now that I had a better idea of what the code was doing, I was still not happy with the results. I visited the Parallax site and went through the sensor documentation, which helped me to understand how it worked. I also watched the video they have of the PING being used by the Boe-Bot. They use the sensor mounted on a servo to look around when it stops so it can find the most open path. I though....I can do that!
Sensor Mount
After seeing the sensor mount they used I pulled out some aluminum stips I have and roughed out a bracket. About 45 minutes later I had a bracket mounted to a servo and was putting the PING on it. Next I used some corner brackets to mount the servo on the front of my Thinga-ma-bot. Now to make it work...
Servo Code
I started with Alex's sample app for manipulating the servos, then found the sample code for the servo controller in the Serializer documentation. Between the 2 code examples I setup some test code that runs through a cycle of 5 positions (0, 45, 90, 45, 0, -45, -90, -45) and at each position reads distance on the PING to the console.
Summary
The PING sensor is just not living up to my expectations. I really do not know if I am not using it properly, if it is defective at some level, or if the Serializer just doesn't make good use of it. I frequently get readings of 255 (max result as if nothing is in range) when I have something directly in front of the sensor. In the current setup I rarely get any valid reading from the unit. The result is a situation that is not sufficient to automate the robot. I will need to find some alternative sensors and give them a try...
Here is the sensor mount:
http://forums.trossenrobotics.com/gallery/files/1/5/6/8/sensormount1_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=147&c=3)
For reference, my project consists of:
A RoboticsConnection Serializer WL as my controller
Bluetooth module on Serializer for communication
Large project box from Radio Shack
Parallax PING ))) sensor
Inexpensive 7.2V battery pack
Cheap RC buggy chassis that has 2 gearhead motors
JR Sport ST47 servo
Homemade wiring
Some various bolts/nuts and brackets from the garage
A wooden bumper
C#.NET Studio Express 2008There currently isn't a clear goal for the bot. I'm using it to experiment and learn while introducing my 6 year old son to programming, robots, and fabrication.
So the last time I posted an update I was using the PING sensor in a fix mount and was not happy with the speed and accuracy of sensor readings. Since then....
Servo Extender Wiring
Up until now I have been using an IDE hard drive cable for my sensor. It was the only cable I had that fit properly. As you can imaging it was way bulky and cumbersome to deal with. I went to a local hobby shop and they didn't have any female-female cables so I purchased some bulk wire and the terminators. After a little trial and error I have some working cables. Found out that soldering is not recommended as it tends to clog the receptacle.
C# Study
My basic programming skills have allowed me to do some cut/paste/modify code. However, when really working to understand how to properly dissect existing code and then reuse, modify and add to it I found that I was missing something. So I took some time to go back through the tutorials that Alex pointed me to and I feel like I'm about 80-90% of where I will need to be. Armed with this knowledge I went back into some examples and the documentation for the serializer and revised some of my code.
PING Motion
As I started to explore the PING sensor again, now that I had a better idea of what the code was doing, I was still not happy with the results. I visited the Parallax site and went through the sensor documentation, which helped me to understand how it worked. I also watched the video they have of the PING being used by the Boe-Bot. They use the sensor mounted on a servo to look around when it stops so it can find the most open path. I though....I can do that!
Sensor Mount
After seeing the sensor mount they used I pulled out some aluminum stips I have and roughed out a bracket. About 45 minutes later I had a bracket mounted to a servo and was putting the PING on it. Next I used some corner brackets to mount the servo on the front of my Thinga-ma-bot. Now to make it work...
Servo Code
I started with Alex's sample app for manipulating the servos, then found the sample code for the servo controller in the Serializer documentation. Between the 2 code examples I setup some test code that runs through a cycle of 5 positions (0, 45, 90, 45, 0, -45, -90, -45) and at each position reads distance on the PING to the console.
Summary
The PING sensor is just not living up to my expectations. I really do not know if I am not using it properly, if it is defective at some level, or if the Serializer just doesn't make good use of it. I frequently get readings of 255 (max result as if nothing is in range) when I have something directly in front of the sensor. In the current setup I rarely get any valid reading from the unit. The result is a situation that is not sufficient to automate the robot. I will need to find some alternative sensors and give them a try...
Here is the sensor mount:
http://forums.trossenrobotics.com/gallery/files/1/5/6/8/sensormount1_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=147&c=3)