|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
Maxbotix Ultrasonic Sensor Help...
Hey guys,
We have been experimenting with Maxbotix ultrasonic sensors and are a little disappointed by the output we are getting. We are trying to use the analog voltage output and (as verified by a voltmeter) the signal voltage will hold constant for a given distance and proceed to drop some and slowly walk back up to the stable voltage. This issue becomes more apparent at longer distances, to the point that the sensor readings are very rarely reliable. We are sequencing the sensors using an interface board to avoid interference and as near as we can tell the setup is fine. Has anyone else experienced this type of behavior? Any suggestions? |
|
#2
|
|||||
|
|||||
|
Re: Maxbotix Ultrasonic Sensor Help...
we used them last year-
you are aware of the interference nodes you get from feedback reflection hitting the emitted signal? www.maxbotix.com has a good spec sheet- at least they did for the EZ1 we used. |
|
#3
|
|||
|
|||
|
Re: Maxbotix Ultrasonic Sensor Help...
How are you sequencing your sensors? I've bought a couple and it seems that the only way to sequence several of these sensors is to cycle the power for each one.
I dont have the sensor documentation in front of me, so I'm going off of memory, but there is a 49ms period after cycling the power for a calibration period. During this period, nothing should be "close" to the sensor. Specifics of how close isn't mentioned, but it did say that if there is something close the readings can become inaccurate until it is calibrated properly at the next startup. After calibration it takes another 49ms to get your first distance reading so to get your first reading it will take approx 100ms from startup. You want to make sure that you cycle your power for each one at periods longer than this. Hope this helps! |
|
#4
|
|||
|
|||
|
Re: Maxbotix Ultrasonic Sensor Help...
Quote:
1075 Has been playing with the EZ1 variant of these sensors and experienced the EXACT same behavior... it IS more pronounced at higher distances too the walking back up to the correct number can take several seconds too |
|
#5
|
||||
|
||||
|
Re: Maxbotix Ultrasonic Sensor Help...
I have not seen a situation where it actually took several seconds (that would be 76 loops!) but it certainly does take a couple loops.
You could write a filter that checks the amount of change between each loop and only sets the value when it is 'stable'. That is what we will probably do. Or (much like we used the camera last year for the same reason) only use the sensors to get positional fixes on surfaces not changing relative to the robot like the side wall, or for close in collision detection. Last edited by Tom Line : 11-02-2008 at 11:56. |
|
#6
|
|||
|
|||
|
Re: Maxbotix Ultrasonic Sensor Help...
The lead mentor on 1075 has been driving me crazy with these sensors. I'm our main programmer, and I've found that these sensors seem to be reasonably unreliable, and he's convinced we can use them for high-accuracy applications.
|
|
#7
|
||||
|
||||
|
Re: Maxbotix Ultrasonic Sensor Help...
I'm going to refer you to this thread, written by the one and only Don Rotolo (a mentor of our team). I know we (1676) are attempting to use the Maxbotix sensor as well (or were), but since I'm not on programming, I have no idea how successful they were.
Hope this helps. |
|
#8
|
|||
|
|||
|
Re: Maxbotix Ultrasonic Sensor Help...
Dear Manderson5192,
My name is Scott and I work in Technical Support and Sales for MaxBotix Inc. Bob Gross (CEO of MaBotix Inc.) found your web blog posted on Chief Delphi and wanted me to address the problem you are having with the MaxSonar. After reviewing your web blog, it appears that you are running multiple sensors at the same time. This is because the sensor "noise" you are describing is actually interference from other sensors, not actual noise. The sensors are just behaving the way they were designed to behave. This describes the general results that you are getting (as verified by a voltmeter), “the signal voltage will hold constant for a given distance and proceed to drop some and slowly walk back up to the stable voltage or vice versa (Figures 1 & 2). This issue becomes more apparent at longer distances, to the point that the sensor readings are very rarely reliable.” ![]() Figure 1. Slowly decreasing in range. ![]() Figure 2. Slowly increasing in range. The reason the action is happening is because the sensors are not operating in sync with each other or at the same speed. i.e. one sensor is operating slightly fast than the other. Sensor 1 operates at 49.0mS and sensor 2 is operating at 49.2mS. When the sensors become out of sync, one sensor is transmitting mode while the other sensor is in receiving mode. Because this action is happening, the sensor is receiving the pulses from the sender and not its own pulse bounce back. The closer the sensors are in sync, the longer the stable period. The farther out of sync, the sensors may not even appear to function properly because the stable period is extremely short or there is none. Test this by testing each sensor separately. To do this, place a piece of tape over all the sensors but the sensor that is being tested. Verify the correct output via analog (as verified by a voltmeter). Do this to each sensor. If all sensors operate properly, you have interference from the sensors. The way to correct this is by daisy chaining the sensors together correctly. There are multiple ways to use the sensors without interference. Three are described below. Daisy Chaining using a Commanded Loop To chain the sensors, and have them to operate in sequential daisy-chained fashion, you do so by linking the TX of unit 1 to Rx of unit 2 and so on. The BW pin is tied high on all of the parts. Then just strobe the first sensor's RX pin and all of the sensors will read the range in sequence. The analog values can then be read. Daisy Chaining with Constantly Looping If you want them to keep running and constantly loop and always provide the latest range reading you will have to do two things. First, add a resistor between the last sensor's TX back to the Rx of the first unit through a 10K resistor (any value from 1K to 10K will work). Second, then you will have to "kick start" them, (at least 250mS or more after power is applied to the sensors to give the sensors this time to boot-up). To do this, pull the RX pin high on the first sensor for at least 20uS. Then controller will have to return it's pin to a high impedance state so that the next time around the TX output from the last sensor will make it's way to the RX of the first sensor. Then all of the sensors in the chain will run in sequence. This "ring of sensors" will cycle around and around, constantly maintaining the validity of their analog values. You can then read the latest range reading (i.e. the analog value) at any time. This is the easiest way to use them. Simultaneous Operation You can also ran them all at the same time (and for some uses this is preferred as the measurement speed is maximum, but it is only for selected applications). Just tie all of the RX pins together and command them with a pin from your microcontroller. Hold the pin high for more than 20uS. Do not continuously leave this pin high, as then all of the sensors will free run as described above. Command the sensors every 50mS or whenever a new range reading is desired. MaxBotix Inc., encourages users of the MaxSonar to visit our FAQ page http://www.maxbotix.com/MaxSonar-EZ1__FAQ.html for help on any questions they my have. If your question is not addressed on our FAQ page, we welcome emails from users of questions they have because this in turn helps us decide what information to update the FAQ page with. Please send emails to info@maxbotix.com. If you have any questions, please feel free to contact me and I will be glad to assist you. Scott Wielenberg Technical Support & Sales of MaxBotix Inc. Phone: (218) 764-2489 Ext. 2 Fax: (218) 764-2194 Email: scott@maxbotix.com Web: www.maxbotix.com |
|
#9
|
|||
|
|||
|
Re: Maxbotix Ultrasonic Sensor Help...
Ah... this explains the behavior I was seeing, as when we only had the one sensor on the robot, I didn't notice this walking effect. Thank You!
|
|
#10
|
|||
|
|||
|
Re: Maxbotix Ultrasonic Sensor Help...
Thanks for the help! I was able to make an interface board tying the TX pin to the RX on the next sensor, bussing the 5v and grounds, pulling the BW pin high, and providing a simple PWM header on the other end of the board. For cable management we soldered the cables in a phone cable to the appropriate terminals on the sensor. We ended up with the capability of using 6 sensors without interference. However, it got too late on the day before ship to implement them effectively. Oh well, it was a good learning experience and we could always use these sensors next year with much more success.
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Parallax and Maxbotix ultrasonic sensors | Lucretius | Programming | 5 | 20-02-2008 14:34 |
| ultrasonic sensor problems... | couldntthinkofa | Programming | 2 | 05-01-2008 12:29 |
| Maxbotix Sonar Sensor | DonRotolo | Electrical | 17 | 04-02-2007 12:27 |
| Ultrasonic will not work with another Ultrasonic plz help | Jackel148 | Programming | 10 | 10-05-2006 15:31 |
| Ultrasonic Sensor | winners | Programming | 3 | 02-01-2006 20:55 |