Ложные срабатывания ультразвуково датчика jsn-sr04t при питании от бортовой сети автомобиля.
- Войдите на сайт для отправки комментариев
Вообщем нужен хелп от гуру. Похоронил почти неделю на поиски причины странного поведения ультразвукового датчика. Пока весь макет питается от сети 220В, все работает более-менее стабильно, при попытке запитать от бортовой сети автомобиля, датчик видит перед собой стену и выдаёт ноль в порт. Пытался питать от преобразователя и от отдельных источников в спарке 12 и 5 вольт.
В схеме использую arduino nano CH340 на atmega368, ультразвуковой датчик jsn-sr04t, блок реле на ULN2003 и простой скетч который задаёт дистанцию срабатывания.
Пробовал обвязывать всё дополнительной массой, эффекта нету, опорный клндер не знаю куда тулить, кнопок нигде нету в схеме.
Может это тупиковая идея? Так-как я нигде на просторах интернета не встречал решений с коробки, дальше макета , дело ни у кого не доходило, может это предел функционала этой платформы( в рамках макетов).
Искал отладочную библиотеку так-как сам в компиляции понимаю только ctrl+C ctlr+V язык.
может кто сталкивался с подобной проблемой? И все решилось банальным блоком питания с гальванической развязкой которого у меня нет.
Буду рад любой помощи.
Возможно дело в плохом качестве питания. Попробуйте поставить параллельно питанию 12В несколько (3-4шт) электролитических (~220-470uF x 35V) и несколько керамических (~0.47-1uF x 50V) конденсаторов...
https://techno-mind.ru/elektronika-i-soft/pitanie-chuvstvitelnoj-elektro...
А какую, простите, функцию в бортовой сети автомобиля выполняет датчик от детского конструктора?
Вообщем нужен хелп от гуру. Похоронил почти неделю на поиски причины странного поведения ультразвукового датчика. Пока весь макет питается от сети 220В, все работает более-менее стабильно, при попытке запитать от бортовой сети автомобиля, датчик видит перед собой стену и выдаёт ноль в порт. Пытался питать от преобразователя и от отдельных источников в спарке 12 и 5 вольт.
В схеме использую arduino nano CH340 на atmega368, ультразвуковой датчик jsn-sr04t, блок реле на ULN2003 и простой скетч который задаёт дистанцию срабатывания.
Пробовал обвязывать всё дополнительной массой, эффекта нету, опорный клндер не знаю куда тулить, кнопок нигде нету в схеме.
Может это тупиковая идея? Так-как я нигде на просторах интернета не встречал решений с коробки, дальше макета , дело ни у кого не доходило, может это предел функционала этой платформы( в рамках макетов).
Искал отладочную библиотеку так-как сам в компиляции понимаю только ctrl+C ctlr+V язык.
может кто сталкивался с подобной проблемой? И все решилось банальным блоком питания с гальванической развязкой которого у меня нет.
Буду рад любой помощи.
Слов много, а ничего не понятно: ни схемы, ни скетча не приведено, что за "тупиковая идея" - неизвестно, что значит "обвязывать дополнительной массой" - тем более непонятно. В чем заключается проблема и решена ли она - тоже противоречивая информация.
Но для начала бы я посоветовал в питание слаботочной части схемы добавить RC или LC фильтр.
В скетче собственно ничего интересного, за этим я его и выбрал, чем проще тем надежнее.
// Use the HC-SR04 to detect movement after 13 CM to turn on a light for 15 seconds
#define trigPin 8 //Define the HC-SE04 triger on pin 6 on the arduino
#define echoPin 9 //Define the HC-SE04 echo on pin 5 on the arduino
#define bulb 13 //Define the relay signal on pin 9 on the arduino
void setup()
{
Serial.begin (9600); //Start the serial monitor
pinMode(trigPin, OUTPUT); //set the trigpin to output
pinMode(echoPin, INPUT); //set the echopin to input
pinMode (bulb, OUTPUT); //set the bulb on pin 9 to output
}
void loop()
{
int duration, distance; //Define two intregers duration and distance to be used to save data
digitalWrite(trigPin, HIGH); //write a digital high to the trigpin to send out the pulse
delayMicroseconds(500); //wait half a millisecond
digitalWrite(trigPin, LOW); //turn off the trigpin
duration = pulseIn(echoPin, HIGH); //measure the time using pulsein when the echo receives a signal set it to high
distance = (duration/2) / 29.1; //distance is the duration divided by 2 becasue the signal traveled from the trigpin then back to the echo pin, then devide by 29.1 to convert to centimeters
if (distance < 13) //if the distance is less than 13 CM
{
Light(); //execute the Light subroutine below
}
Serial.print(distance); //Dispaly the distance on the serial monitor
Serial.println(" CM"); //in centimeters
delay(500); //delay half a second
}
void Light() //Start the Light subroutine
{
digitalWrite(bulb, HIGH); //turn on the light
delay (15000); //wait 15 seconds
digitalWrite(bulb, LOW); //turn off the light
}
Пробовал стабилизатор на MP2307DN если вам это о чем-то говорит. Пробовал питать все через преобразователь 12>220В и зарядное устройство 5В на несколько usb портов плюс повышающий преобразователь на 12В, вероятность что в каком-то есть гальваническая развязка оставалась. Я попробую конечно добавить параллельно фильтры но как объяснить то что с помехами не справились ни блок питания, ни преобразователь, ни повышающий блок питания?
Термин- обвязка используют электрики и электронщики, это значит разводка линий питания, передачи данных, силовых линий, как-то так.
Проблема заключается в том что схема работает на макете, а ареальных условиях всё оказалось совсем иначе. Отладочных таблиц нету, скетч нашёл но он под атмегу 2650 и отладка заключается лишь в вырезании диапазонов (сантиметров) в которых датчик начинает сбоить.
Дело в том что когда я увидел разнообразие макетов, задался вопросом «а почему собственно нету продолжения марлезонского балета?» да и на вопрос о жизнеспособности проекта я не получил ни одного внятного ответа, и по-сему, решил сам убедится, тем более мне эта тема интересна и в этом случае я решил всё-таки найти решение или разочароваться на-всегда.
но как объяснить то что с помехами не справились ни блок питания, ни преобразователь, ни повышающий блок питания?
Иногда преобразователи не справляются, а создают помехи ))
Спасибо, как мотнусь за компонентами на радиорынок, отпишусь. Блок питания похоже простой не подходит
интересная личность, согласно спецификации диапазон JSN-SR04T составляет от 25 до 450 см, т.е. указанные Вами 13 см находятся вне диапазона измерения.
Приведенный Вами в сообщении №5 скетч обсуждать нельзя, т.к. в нем отсутствуют номера строк.
На приведенной схеме вообще ни один контакт не подписан. Как можно быть уверенным, что схема соответствует скетчу? Или как можно быть уверенным, что питание Вы подключили именно на +5V, а не на VIN?
В скетче присутствует Serial, а в схеме он полностью проигнорирован.
Где в теме приведена выдача протокола в Serial?
В общем, рабочее предположение: прибор не работает должным образом из-за Вашей неаккуратности - Вы что-то где-то напутали, но что и где, по приведенным Вами в теме данным установить невозможно.
Хорошо, а какая разница если подвести питание к vin, а не по usb кроме вольтажа естественно?
интересная личность, я думаю, для Вас будет гораздо больше пользы, если Вы досконально разберетесь с одним вопросом, а не будете задавать тысячу новых. Как известно, один дурак может задать столько вопросов, что и тысяча мудрецов на них не ответят. Следовательно, злоупотребляя вопросами, Вы гарантированно не получите ответов на большинство из них.
А чтобы досконально разобраться хотя бы в одном вопросе, нужно читать ответы, пытаться их осмыслить и, самое главное, отвечать на уточняющие вопросы.
Дорогу осилит идущий(= понял, спасибо за напутствие
UPD: пока стабильного результата нет. Частичный успех был в питании нано через MP2307DN и датчик через стаб на LM317T, практически исчезли реакция на перемещения датчика в пространстве но, когда дело дошло до установки в подкапотное пространство, ситуация повторилась.
Сборка из параллельно спаянных керамических и электролитических конденсаторов увы, не проявила себя:(
Поэкспериментировал с перемещением датчика, полным выносом проводников за пределы подкапотного пространства. Однозначного результата не было, хотя в некоторых положениях датчик приходил в сознание и давал стабильные показатели. Пробовал менять дистанцию в скетче, безрезультатно. Заметил только то что, паспортные данные датчика отличаются от фактических, рабочий диапазон начинается на 10см дальше заявленного.
Попробуйте запитать на время всю схему от отдельного аккумулятора. Этим исключите вопросы по питанию. Скорее дело в чём-то ещё