Дослідний зразок автоматизованої системи передачі показань лічильників води на основі lora-модулів

10

Введення

На початку 2021 япредставив на сайті usamodelkina.ru прототип системи передачі показань лічильників води на основі lora-модулів. Публікація викликала неоднозначну реакцію, що містить претензію до складності подібної системи. До того моменту я вже виготовив дослідний зразок, але реакція і сімейні обставини змусили мене відкласти опис в довгий ящик.

Зараз у мене нарешті з’явилося трохи часу на доопрацювання і перевірку працездатності, і я вирішив, що складність системи все-таки перебільшена: в результаті вимальовується дуже проста схема, в перспективі містить дешеві і доступні компоненти.

Спочатку мною були поставлені наступні завдання:

розробити схему, яка споживає мінімум енергії, щоб забезпечити багатомісячне живлення від невеликого акумулятора типу «павуч». Я використовував акумулятор на 1200 маг;виготовити дослідний зразок методом лут. Розмір зразка не більше сигаретної пачки, щоб влазив в дешевий пластиковий корпус. Складність виготовлення середня, що вимагає володіння паяльним феном; перевірити дослідний зразок на працездатність, виправити виявлені помилки, доопрацювати схему.

На відміну від прототипу в даному дослідному зразку я використовував lora-модуль rfm95w, що є функціональним аналогом модуля semtech sx1276, що застосовувався в прототипі. На зображенні видно, що висновки розташовані аналогічно, відрізняється тільки друк.

Для виробництва дослідного зразка методом лут використовувалася двостороння фольгована плата. Задня (зелена) сторона в kicad друкується без інвертування, а передня (бордова) сторона з інвертуванням на двосторонньому глянцевому папері для лазерних принтерів cactus cs-lpa4100100. Дуже рекомендую цей папір для лут, тому що вона не згортається і не застряє при друку, і підходить практично для будь-якого лазерного принтера. Для друку використовувався доісторичний canon lbp-810 з драйверами під linux. Перевагою цього принтера є режим заборони економії тонера (5 рівень подачі тонера), який я і використовую. Перенесення на фольгований склотекстоліт проводиться за допомогою звичайного побутового праски на 2800 вт з підкладкою з відданої на розтерзання ніжної піжами дружини до пожовтіння паперу. Вирівнювання виробляю по надрукованим кордонів (edge cuts).

Тонер перу після замочування в «калоші», бо degreaser 65 дорогий, хоч і працює краще.

Потім проводиться свердловка гравером зі свердлом діаметром 0,8 мм. Після цього дві сторони плати електрично з’єднуються перемичками з електричного брухту (ніжками від вивідних компонентів).

Монтаж компонентів проводиться за допомогою китайського фена на відому китайську пасту «механік». Схема розрахована на типорозмір 1206, щоб не зламати очі і спину, але його можна зменшувати (0805, 0603…), бо там мікроструми.

Для програмування використовується китайський клон usbasp через перехідник «10 на 6». Середовище програмування-platformio. В ході перевірки виготовленого зразка з’ясувалося, що я помилився в схемі з харчуванням attiny84a, тому довелося розрізати пару доріжок і кинути пару дротів. Крім того, з’ясувалося, що rfm95w не дає запрограмувати attiny84a за допомогою вбудованого icsp-роз’єму, тому attiny84a довелося випоювати і терміново створювати перехідник для програмування на основі універсального адаптера для програмування мікросхем dip-soic 16 pin 150 mil. Два піни не використовувалися.

У підсумку цей китайський attiny84a все одно виявився неробочим. Attiny84a з магазину «чіп і діп» виявився працездатним і був запрограмований за допомогою створеного перехідника. У плату були внесені зміни: доріжки sck і miso (або mosi) між attiny84a і rfm95w повинні бути розірвані під час програмування attiny84a.

В результаті плата виглядала так:

Перевірка

Для імітації лічильника води з герконом використовувався модуль keyes ky-021, що представляє собою геркон з резистором.

Для збудження геркона використовувався невеликий магніт.

В прошивку було внесено зміну у зв’язку з тим, що використовуються два геркона (лічильники холодної і гарячої води). Тепер вони просто опитуються поперемінно. У зв’язку з тим, що я трохи поквапився, тестові константи були зашиті в прошивку ось за таким принципом:

Один з жовтих світлодіодів не працював через неправильно підібраного опору. Перепоювати вже було лінь. Тим більше, що ніякої функціонального навантаження він не несе крім декоративної.

Геркон 1 активовано:

Геркон 1 деактивовано:

Геркон 2 активовано (зверху) і деактивовано (знизу):

Доопрацювання схеми:

  1. виправлена схема живлення attiny84a;
  2. додано опір 10 ком між rst на attiny84a і 2.5 v на icsp для підтяжки rst;
  3. на лицьовій (бордовою) стороні: розірвані доріжки sck і miso між attiny84a і rfm95w, вбудовані нуль-резистори. Обрив доріжок необхідний для коректного програмування attiny84a;
  4. висновок 8 на attiny84a перейменований на b2 за аналогією з прошивкою.

Можлива заміна компонентів для здешевлення або простої заміни:

  1. lp2985-28dbvt->mcp1700t-2502e/tt;
  2. bourns 3314g-1-103e ->китайський потенціометр 3×3 smd під хрест philips. В оригіналі це, по-моєму, kyocera;
  3. irf7210 ->практично будь-який smd-польовик p-типу з gate threshold voltage>(-2.5 v);
  4. attiny84a-ssu ->attiny841-ssu;
  5. rfm95w ->semtech sx1276;

Fds9926a і lm393 коштують копійки.

Перевірка показала, що схема є працездатною. У kicad представлений доопрацьований варіант плати, яку ви можете змінити на свій смак.

Розводка плати loracounter в kicadмодифицированная прошивка attiny84aпрошивка ttgo lora-32разводка перехідника для програмування attiny84adapter