Использую данный инфракрасный дальномер, работает отлично, но постоянно выскакивают "просаженные" значения, использование конденсатора не помогло, в чем может быть причина? Дальномер при этом направлен в одну точку и не двигается. Код (Text): int IRpin = 0; float dist(){ float volts = analogRead(IRpin)*0.0048828125; float distance = 65*pow(volts, -1.10); return distance; } void setup() { Serial.begin(9600); } void loop(){ Serial.println(dist()); delay(100); }
стабилизируйте показания программно! как вариант могу предложить замерить показания с дальномера раз 10 и вернуть самое наибольшее!
Пока придется остановится на этом, просто в моем случае это будет не подходящим решением, в данном скетче задержка = 100, но если выставить задержку например 10, то скачки идут с плавным возрастанием до правильного показания(т.е. например ...60 60 60 55 56 57 58 59 60 60...), получится значительное увеличение времени работы, да и в конце концов я уверен что устройство не должно так работать