LV-EZ2 на Maxbotix е ултразвуков сензор за разстояние с обхват от 6 до 255 инча (6,45м) и точност на показанията от 1 инч. Разполага с три интерфейса за предаване на изходните данни: аналогов, широчнинно-импулсен и сериен, като в примера ще използваме аналоговия.
Даденият по-доло пример използва данните получени от сензора, за да изчисли разстоянието в сантиметри до най-близкия обект. Резултатът се връща чрез серийна комуникация и може да се види в Serial Monitor-а на Arduino IDE софтуера.

Свързване

Сензорът се захранва с 3,3 или 5V от Ардуино, които свързваме към +5 пина на сензора, а GND свързваме към маса. За да използваме аналоговия изход, свързваме AN пина на сензора към някой от аналоговите входове на Ардуино.

Код
/*
* Измерва разстоянието до обект чрез ултразвуков сензор
* Tihomir Trifonov (07-2011)
* с подкрепата на Robotev.com
*/
// входове и изходи на микроконтролера
const int analogInPin = A0; //А0 е входа, към който е свързан AN
//от сензора
// променливи за данни, използвани от програмата
int sensorValue = 0; // данни от сензора
float analog = 0; // аналогови стойности
float inches = 0; // еквивалент в инчове
float distance = 0; // разстояние в сантиметри
void setup() { // инициализации
Serial.begin(9600); // стартира серийна комуникация
}
void loop() { // програмен цикъл
sensorValue = analogRead(analogInPin); //прочита данните от сензора
analog = sensorValue*0.005;// превръща данните отново в аналогови
inches = analog/0.0098;// превръща аналоговите стойноси в инчове
distance = inches*2.56;// обръща инчовете в сантиметри
Serial.print("\ndistance = " ); //връща в Serial Monitor-а
Serial.print(distance); //разстоянието в сантиметри
Serial.print("sm.");
delay(10); //изчаква 10 mS до започване на ново измерване
}