| Rebecca Bray : ITP : Spring 2006 : Sensor Workshop Class : DataSheet Assignment | |
|
This is a brand new product released in January 2006 that Bob Gross designed when his daughter's robot lost a race because it misjudged distance to a wall. According to current discussions about it on various robotics forums, it's a comparatively good product. Sonar rangers work by sending out ultrasonic beams and receiving the waves that it receives, like bats. In this way it can detect both the presence and distance of objects. This particular sensor operates at 42KHz. The signal from the transducer in the sensor is amplified and goes through an analog to digital converter integrated into a microcontroller within the sensor. The microcontroller is continuously processing the signal. This sensor gives short to long range detection and ranging. It detects objects from 0 inches to 254 inches and ranges from 6 inches to 254 with a one-inch resolution.The ability to give meaningful output at such close range is rare, as is this sensors' small size and relatively low price. It is comparable in price to the Devantech Ranger, but has a greater range and more types of output. Applications Electrical Characteristics This sensor requires 5VDC +/- 0.5VDC. Current capability of 3mA capacity is recommended. It outputs 0 to 2.55 volts with a scaling factor of 10mV per inch.
The sensor gives output as pulse width, analog, and serial digital, and can give all 3 simultaneously. It can give readings every 50mS. The serial output characteristics on the TX pin are a little atypical with RS232 format with 0-5 V. This caused some consternation on some of the robotics forums. The RX pin is pulled high, and the sensor will measure data if it's kept there. To do triggered readings instead of continuous, bring this pin low until you want a reading and then bring high for 20uS. The analog output is scaled. It outputs 0 to 2.55 volts and scales to 10mV per inch. To reduce the noise on the output, a 0.1uF capacitor can be placed between the analog pin on the microcontroller and then a 10K ohm resistor in series with the analog voltage output from the sensor to that capacitor. The analog output needs to be buffered by the op amp in the circuit. The FAQ on the product web site says that pulse width and serial output give the most accurate numbers. Pulse width output gives range and the numbers can be used to calculate distance using the scale factor of 147uS per inch. Pulse width is set high internally after the sonar waves are sent, and if something is detected, the PW pin is pulled low.
Parts: The data sheet shows that the circuit for the analog readings requires a LM324 Low Power Quad Operational Amplifier and a BAV99DA diode array. On Tom's site there's an example of an op amplier and diode array, used there with a piezo as sensor. Operational amplifiers serve to amplify the voltage. If there are very small changes in the readings, you need to amplify them to get good data. There are various resisters in this circuit, and I believe that by adjusting them you can adjust the scale of the readings. The LM324 has 14 pins. The switching diode array helps to ensure that voltage does not flow in the wrong direction and that the readings are always positive. Code Sample: (from product FAQ) 'BX24 Const RX As Byte = 10 '********************************************************************************************** Call PutPin (RX, 0) ' Turn off the EZ1 just in case we started with it on AValue = GetADC(AN) ' Read the ADC Questions:
Links: Go to the Maxbotix site for more information on the FAQ Back to my main Sensors page Up to Top ^
|
|