Термометри стартового комплекту: ланцюжок на M12 і ящик з нержавійки
Написано для прошивки 0.2.183 (коміт ad9ce51) · порталу 0.0.206Можливо, застаріло: поточна прошивка 0.2.205, поточний портал 0.0.234
У стартовому комплекті малого апарата термометри приходять не жмутом кабелів, а готовими вузлами: зонд у гільзі, короткий хвіст, литий роз'єм M12. Ви вмикаєте їх у трійники на двох магістралях, і прошивка вже знає, де куб, а де царга. Щоб так і лишалось, треба знати три речі. Вузол можна переставити в межах свого ланцюжка, а в чужий не можна, бо прошивка його загубить. Метровий кабель зонда вкорочують, а не змотують. Роз'єм клапана на ящику інший, ніж роз'єми датчиків, і сплутати їх — половина пошуку несправності.
Чому шина DS18B20 взагалі губить датчики (підтяжка, три жили, зірка, силові кабелі поруч, журнал збоїв), розібрано в статті Проводка датчиків DS18B20. Тут — як саме це вирішено в комплекті.
Що в комплекті і як воно з'єднане#
Датчики сидять на справжньому ланцюжку (daisy chain): магістраль іде вздовж апарата, біля кожної гільзи на ній стоїть трійник, і від трійника до датчика — короткий відвід. Роз'єми всюди однакові: литі M12 A-code, 4 контакти, стандартні, без власної розпіновки. Запасний датчик чи подовжувач підійде будь-який із тим самим кодуванням.
| Ділянка | Довжина | Кабель |
|---|---|---|
| відвід від трійника до гільзи | 20–30 см | кабель зонда |
| відвід куба | до 50 см, щоб трійник висів подалі від гарячої стінки | силікон |
| магістраль: від ящика до першого трійника і між трійниками | у комплекті A6 на ланцюжок 2 м від ящика + 1 м між трійниками; в A16 — три по 2 м і один 1 м | литий подовжувач M12, вилка–гніздо |
| від гнізда до колодки плати всередині ящика | до 30 см | скручена пара DATA+GND |
Датчики розведені на дві шини, щоб кожен ланцюжок лишався коротким:
| Плата | Ланцюжок | Гніздо | Шина в oCBot | Що на ньому |
|---|---|---|---|---|
| KC868-A6 | «верх» | IO-1 |
1 | царга, дефлегматор |
| KC868-A6 | «низ» | IO-2 |
0 | куб, вода холодильника |
| KC868-A16 | три ланцюжки | HT1, HT2, HT3 |
1, 0, 2 | за апаратом, куб бажано окремо |
Шина 0 на A6 — це IO-2, а на A16 — HT2, не перший роз'єм. Чому так,
пояснено в статтях Шини й роз'єми KC868-A6 і
Шини й мережа KC868-A16. Прошивка веде всі шини
одночасно, окремо кожну.
Трійник має одну вилку (до плати) і два гнізда: далі по магістралі й у відвід до датчика. Склад комплекту — у каталозі: під KC868-A6 і під KC868-A16. Ящика з нержавійки там немає: його роблять під замовлення.
Порядок вузлів усередині ланцюжка не важить: прошивка впізнає датчик за адресою, а не за місцем. Важить лише, в який ланцюжок його ввімкнено (про це нижче).
Вузол-датчик: чому хвіст вкорочують#
Зонд DS18B20 у гільзі продається з метровим кабелем. Здається природним лишити його як є і змотати надлишок. Але метровий хвіст — це той самий відвід від магістралі, тільки довжиною в метр. Змотаний у бухту, він електрично не коротшає: сигнал так само біжить метр до кінця й відбивається назад. Кілька таких «метрових відводів» на одній шині — це вже майже зірка, найчастіша причина відвалів на апараті (чому зірка погано).
Тому у вузлі комплекту:
- хвіст вкорочено до 20–30 см (біля куба — до 50 см силіконового);
- на кінці — вилка M12 під пайку, не гвинтова: гвинтова клема розтрушується вібрацією, пайка ні;
- вхід кабелю у вилку закрито термоусадкою з клеєм, вона ж — колір ланцюжка;
- зонди й модулі з уже впаяним резистором (маркування
472) не беруться: підтяжка стоїть на платі, і зайві резистори на шині лише шкодять.
Метровий відвід без вкорочування — сіра зона. На столі з двома датчиками він може працювати бездоганно, а на апараті з частотником — губити показання. Як стандарт комплекту його не беремо.
Розпіновка M12#
Кольори — стандартні для литих кабелів M12. Номери контактів вибиті на торці роз'єму.
| Контакт | Колір жили | Сигнал |
|---|---|---|
| 1 | коричневий | 3V (A6) / 3.3V (A16) |
| 2 | білий | другий GND |
| 3 | синій | GND |
| 4 | чорний | DATA |
DATA на четвертому контакті — так само, як сигнал у промислових датчиків
на M12. Живлення завжди окремою жилою: паразитного живлення прошивка не
підтримує (три жили, не дві).
Екран кабелю — на GND лише біля плати. З корпусом роз'єму й гільзою
його не з'єднувати: екран із двома кінцями на різних «землях» стає ще одним
провідником, по якому тече струм між кубом і ящиком.
Ящик з нержавійки: що звідки виходить#
Кожен тип зовнішнього з'єднання має на ящику свій роз'єм. Так неможливо ввімкнути клапан у гніздо датчиків і навпаки.
| Що | Роз'єм на ящику | Чому саме такий |
|---|---|---|
| термометри | панельне гніздо M12 A-code 4-pin, по одному на ланцюжок (A6 — 2, A16 — 3) | IP67, позолочені контакти, під литі кабелі |
| клапан води 12 В | GX16-2 | інший тип і інша кількість контактів — не сплутати з датчиками |
| ТЕН, мережа 220 В | сальник PG, кабель напряму | роз'єм GX16 розрахований приблизно на 5 А, а ТЕН 2–3 кВт бере 10–13 А |
| живлення ящика | IEC C14 із запобіжником | стандартний шнур, запобіжник у самому вводі |
Не ставте роз'єм GX16 на коло ТЕНа, навіть «лише на випробування». При 10–13 А на контактах, розрахованих приблизно на 5 А, роз'єм гріється й підгорає, а знайти це можна лише за запахом. Силовий кабель виходить через сальник.
Всередині ящика:
- корпус — на PE;
- дві зони по різні боки: низьковольтна (плата, гнізда датчиків, клапан) і силова (твердотілка, ТЕН, мережа). Радіатор твердотілки — на стінку ящика або з вентиляцією;
- від гнізда M12 до колодки плати — скручена пара
DATA+GND, не довше 30 см, по низьковольтний бік; - якщо силовий дріт мусить перетнути сигнальний — лише навхрест, не поруч;
- зовні магістраль датчиків іде окремо від кабелів ТЕНа й частотника, не в одній гофрі.
Маркування: щоб вузол повертався на своє місце#
- Колір ланцюжка. Гніздо на ящику, трійники й термоусадка на вузлах одного ланцюжка — одного кольору. Вузол синього ланцюжка йде лише в синій трійник.
- Бирка на вузлі — роль («КУБ», «ЦАРГА», «ДЕФЛ», «ВОДА») і останні 4 знаки адреси ROM датчика. Ці ж знаки видно в Периферії біля датчика, тож за биркою вузол і запис у прошивці знаходять один одного без сканування.
Вузли комплекту збирає й реєструє в прошивці стенд, до відправки: сканування адрес, бирки, записи в Периферії з ролями. Від вас лише ввімкнути вузли у трійники свого кольору.
Як прошивка впізнає датчик#
Прошивка зберігає кожен термометр як адресу ROM + номер шини. Роль у сценарії (куб, царга…) прив'язана до цього запису, а не до місця на кабелі.
| Що зробили | Що побачить прошивка |
|---|---|
| переставили вузол на інший трійник того самого ланцюжка | нічого не змінилось: та сама адреса на тій самій шині |
| поміняли два вузли місцями в межах ланцюжка | нічого не змінилось |
| ввімкнули вузол у трійник іншого ланцюжка | датчик зник: на своїй шині його більше немає, а на чужій прошивка його не шукає. Картка показує «нема даних» |
| переплутали магістралі в гніздах ящика | зникли всі датчики обох ланцюжків |
Якщо вузол опинився в чужому ланцюжку, є два виходи: повернути його у трійник свого кольору, або відкрити датчик у Периферії й змінити поле «Шина 1-Wire» на ту, куди він тепер увімкнений.
Заміна датчика: сьогодні і незабаром#
Новий зонд — нова адреса ROM, тож для прошивки це інший датчик. Сьогодні шлях такий:
- Вимкнути старий вузол, увімкнути новий у той самий трійник.
- Периферія → видалити запис старого датчика.
- Додати датчик: Тип інтерфейсу — «Цифровий інтерфейс», Шина 1-Wire — та, де ланцюжок, кнопка «Сканувати». У списку знайдених адрес нова — та, якої ще немає серед збережених.
- Перев'язати ролі: у сценаріях і на схемі апарата вказати новий датчик замість старого.
- Переписати бирку: останні 4 знаки нової адреси.
Крок 4 — найбільш забудькуватий: запис датчика є, температура на картці є, а сценарій чекає на датчик, якого вже немає.
У прошивці готується функція «Замінити датчик»: нова адреса стає під тим самим записом разом з усіма прив'язками, тож кроки 2–4 зведуться до одного. Вона ж шукатиме загублену адресу на всіх шинах — для випадку, коли вузол ввімкнули в чужий ланцюжок. Коли вийде, стаття оновиться.
Суміжні статті#
- Проводка датчиків DS18B20: чому зникають показання — підтяжка, три жили, чому зірка погано, кабель і як за журналом знайти винуватця.
- Шини й роз'єми KC868-A6 — чому
IO-2значиться шиною 0. - Шини й мережа KC868-A16 — три роз'єми датчиків
HT1–HT3і чому шина 0 — цеHT2. - Роз'єми M12: кодування A, B, D, X і кількість контактів, трійники, вилки, гнізда і захист від води — корпус, кабель, IP — що купувати на заміну й докупити, щоб воно стикувалось із комплектом.
- Керування нагрівом — твердотілка й ТЕН, що стоять у силовій зоні того самого ящика.