#1 2024-01-20 18:07:52

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Періодичний збій роботи Ардуіно

Доброго дня.

Хочу зробити (довести до ума) для свого дому систему опалення від сонця.  На даху стоять колектори, які віддають тепло в бак з водою. З бака підігріта вода подається в систему опалення. Коли бак непрогрітий, включається електричний котел. Колектори, бак, підлога, приміщення, гребінки теплої підлоги обладнані датчиками температури ds18b20.  Ардуіно на основі отриманих температур керує насосами і котлом, значення температур , статуси насосів  виводяться на два екрани lcd. Присутній годинник, для визначення години доби для використання тарифу  електроенергії день-ніч, година також виводиться на  lcd. Зібрано в металевому ящику. Все, нібито, працює, але періодично в роботі  виникає збій. Деколи датчики хаотично перестають повертати температуру і показують короткочасно -127.  Раніше я використовував uno, датчики були під'єднані по одній шині, опитувалися по адресах. Тепер я  поставив mega, датчики опитуються кожний через свій пін, але роблема збою не пройшла. Ардуіно і плата реле живляться окремими блоками на 12в. Пробував заживлювати 220 через інверторний стабілізатор,  потім через екофло - все одно періодично збоїть. Зауважив, що коли включений котел, то збоїти починає сильніше. В момент виключення котла майже всі датчики  сходять з розуму, за довгий період часу годинник почав відставати годин на 15. З чим це може бути пов'язано? Чи може електрокотел створювати якесь електромагнітне поле, яке впливає на роботу ардуінки? Чи є зміст помістити її в металевий екран? Чи може розмістити ардуіно і блоки живлення в різних металевих корпусах або віднести збірку подалі від електрокотла? Чи може проблема в чомусь іншому ? Буду вдячний за пораду.

Неактивний

#2 2024-01-20 18:24:25

Aндрій
Гість

Re: Періодичний збій роботи Ардуіно

Я думаю справа не в арудіні, а в проводах від неї до датчиків. Наскільки вони довгі?

#3 2024-01-20 18:52:48

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

Яким номіналом резистора підтягнуті шини?

Активний

#4 2024-01-20 19:15:11

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

Дровода від різних датчиків відповідної довжини до їх розміщення. До датчиків  на гребінці  приблизно 1 м. До датчиків на колекторах близько 15 м. Резистори 4,7 кОм. Пробував різні провода - сигнальні, вита пара,  екрановані. Результат той самий.

Остання редакція Orest1 (2024-01-20 19:17:21)

Неактивний

#5 2024-01-20 19:28:19

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

zobrazhennja_viber_2024-01-20_16-56-58-505.jpeg

Неактивний

#6 2024-01-20 19:39:45

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

Orest1 пише:

Резистори 4,7 кОм.

Спробуйте зменшити до 1 кОм.

Активний

#7 2024-01-20 19:41:45

Aндрій
Гість

Re: Періодичний збій роботи Ардуіно

А -127 показують всі? Наскільки я зрозумів, зараз кожен датчик сидить на окремому піні? Я б припустив, що проблема в довжині, якщо в помилку випадають тількі ті, які на колекторах (15м). Але якщо всі і одночасно, то може і не в проводах проблема. Як часто ви їх опитуєте?

#8 2024-01-20 20:01:20

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

кожен датчик має окремий пін, підтягнутий своїм резистором.
Опитується кожні 10 секунд. при частішому опитуванні хаос зростає.
Але поки не працює електрокотел - все добре, датчики працюють.

Остання редакція Orest1 (2024-01-20 20:03:00)

Неактивний

#9 2024-01-20 20:18:58

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

dimich пише:
Orest1 пише:

Резистори 4,7 кОм.

Спробуйте зменшити до 1 кОм.

Можливо спробую.
Можете в двох словах роз'яснити що відбудеться?

Неактивний

#10 2024-01-20 20:46:11

г0cть
Гість

Re: Періодичний збій роботи Ардуіно

Orest1 пише:

Ардуіно на основі отриманих температур керує насосами і котлом,

Я так розумію це відбувається за допомогою тих двох синіх проводів які йдуть з реле внизу ардуїни? То ви б їх ще проклали одразу зверху AVR-ки ...

#11 2024-01-20 21:05:23

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

Orest1 пише:

Можете в двох словах роз'яснити що відбудеться?

Ймовірно, на шину наводяться електромагнітні перешкоди, і датчики не завжди розпізнають команду читання. Зменшення номіналу має збільшити стійкість до перешкод і зменшити вплив ємності самої лінії передачі.

Подивитись би з боку датчиків осцилографом, в якому вигляді до них доходять запити.

Orest1 пише:

Пробував різні провода - сигнальні, вита пара,  екрановані

Щоб екран працював, його потрібно правильно "заземлити". Але тоді ємність лінії ще збільшиться. Вита пара добре підходить для передачі диференційних сигналів, а 1-Wire асиметричний, не диференційний.

Датчики живляться паразитно з шини чи по окремій лінії? Якщо по окремій, з боку датчиків стоять блокуючі конденсатори?

Активний

#12 2024-01-20 21:17:53

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

г0cть пише:

Ардуіно і плата реле живляться окремими блоками на 12в.

Навіщо? Одного там вистачить із запасом.
Якщо датчики з окремим живленням, сподіваюсь, воно від того ж блока, що і ардуіно?

Активний

#13 2024-01-20 21:36:21

г0cть
Гість

Re: Періодичний збій роботи Ардуіно

dimich пише:
г0cть пише:

Ардуіно і плата реле живляться окремими блоками на 12в.

Навіщо?

Це ви у Ореста запитайте

#14 2024-01-20 22:39:56

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

г0cть пише:

Це ви у Ореста запитайте

Вибачте, помилився при цитуванні.

Блоки 12-вольтові, то датчики мабуть же живляться зі стабілізатора ардуіно. Але по фотографії не зрозуміло. З лівого блока видно провода на реле і далі наче теж на блок комутації датчиків.

Доречі, програма на ардуіно не перевіряє CRC відповідей? -127 - це всі одиниці, тобто датчик просто не відповідає, лінія в одиниці. CRC не має бути коректним.

Активний

#15 2024-01-21 20:10:30

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

Дякую  Всім за увагу.
Сьогодні переніс ящик подалі від котла. Нічо не дало. smile

"Навіщо? Одного там вистачить із запасом." -  боровся з проблемою. В ютюбі хтось про  говорив, що треба два блоки - то я так зробив. Але температури пропадають як з одним, так і з двома.

Датчики живляться тис самим блоком, що і ардуіно.

"Датчики живляться паразитно з шини чи по окремій лінії? Якщо по окремій, з боку датчиків стоять блокуючі конденсатори? " - Датчики живляться по окремій лінії. А можете написати про конденсатори? Який би то мав бути номінал?

"Я так розумію це відбувається за допомогою тих двох синіх проводів які йдуть з реле внизу ардуїни? То ви б їх ще проклали одразу зверху AVR-ки ..." - я не думаю, що то через то. Навіть якщо силова частина ардуіно повністю обезточена, і котел керується своїм внутрішнім температурним датчиком, все одно температури пропадають. sad

Осцилографа не маю, не вмію.

Хочеться вірити, що є просте рішення.

Неактивний

#16 2024-01-21 22:38:21

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

Питання по живленню, ніби, відпало.  Відключив від блоків живдення 220, відключив заземлення будинку,  заживив ардуіно  від крони - все одно при роботі електрокотла ( коли котел  відключений, то все працює відмінно )  починається хаос з температурами від датчиків. Схиляюся , що то якісь електромагнітні поля , які створює котел, yikes , так впливають на роботу контролера.  Як з тим боротися?

Остання редакція Orest1 (2024-01-21 22:40:16)

Неактивний

#17 2024-01-21 22:42:37

Orest1
Учасник
Зареєстрований: 2024-01-20
Повідомлень: 8

Re: Періодичний збій роботи Ардуіно

Запихнути мегу в  свій екранований корпус?

Неактивний

#18 2024-01-21 22:46:06

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

Orest1 пише:

Датчики живляться по окремій лінії.

З вихода +5V плати ардуіно, так?

Orest1 пише:

А можете написати про конденсатори? Який би то мав бути номінал?

0.1 мкФ має бути достатньо. Керамічний, між Vdd і GND біля самого датчика.

Orest1 пише:

Осцилографа не маю, не вмію.
Хочеться вірити, що є просте рішення.

Без аналізу конкретної ситуації можемо тільки вгадувати типові проблеми і пропонувати типові рішення.

Активний

#19 2024-01-21 22:51:12

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 205

Re: Періодичний збій роботи Ардуіно

Orest1 пише:

Схиляюся , що то якісь електромагнітні поля , які створює котел, yikes , так впливають на роботу контролера.

Контролер спонтанно зависає? Перезавантажується? Якщо ні, то з контроллером все нормально. Завади впливають на спілкування між контроллером і датчиками.

Для експерименту підʼєднайте один датчик безпосередньо до плати контроллера якомога коротшими проводами.

Активний

#20 2024-01-21 23:26:53

Honey
Учасник
З Київ
Зареєстрований: 2020-09-26
Повідомлень: 433

Re: Періодичний збій роботи Ардуіно

Помилки на фізичному рівні будь-якого протоколу не вийде знизити до нуля, можна лише зменшити до прийнятного рівня, а боротися з ними потрібно на більш високому рівні протоколу шляхом виявлення і повторної відправки. В 1-wire є контрольна сума, подивіться, що повертає бібліотека у випадку невірної КС, якщо це і є -128, то повторюйте запит.
Щоб хоч якось вберегти мікроконтролер від наведених струмів у шині, поставте супресори на 5в ось таким чином, як на виході схеми:
schematic.png

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму