Коли думав над проектом, то вималювався певний план і вимоги:дляробочої версії будуть потрібні швидкість руху, температура двигунаі температура зовнішнього повітря. Керуюча та клієнтська (будь цеінша arduino/esp, будь це мобільний телефон.) Я не можу виводити наприлад кастомні помилки, але сигналізувати про проблеми якосьпотрібно. Виносити "мозки" в салон теж не хотілося. Писати доситьбагато логів, щоб було легше спостерігати за його роботою з ноуту.Залежно від отриманих даних з CAN, можна приймати рішення про змінуположення жалюзей і на який градус їх треба повернути. Даіграми вінтернеті шукав. У різних виробників шторки відкриваються тазакриваються на різних цифрах. На жаль, самі діаграми вже втратили.У фіналі, вони мені не надто й у пригоді. :)
На всіх схемах роботи йшлося тільки про відкриття та закриттяшторок. Згодом знайшов ще пару виробників, які відкривають шторкище на 20 градусів (виходить три можливі положення). Версія №1 набазі NodeMCU (ESP8266)/b>
Після складання конструкції та купівлі сервоприводів, вирішивзібрати прототип для налаштування роботи сервоприводу. Першимпацієнтом було обрано NodeMCU (esp8266) через наявність Wi-Fi тапросту роботу з ним. Так виник перший проект. У репозиторії лежитьскетч, схема та файл для Fritzing. Спочатку були зроблені точкидоступу, потім веб-сторінка з "повзунком" для серви. Далі буладодана серва і методом "тику" були підібрані оптимальні кутиповороту. Для шторки відкривалися та закривалися в діапазоні від 45до 105 градусів у коні сервоприводу. Потім було додаванняфункціоналу з управління швидкістю повороту серви, т.К. Сама пособі вона досить різка. Поки не були отримані потрібні дані з CANшини, вирішив пиляти клієнтську частину для салону. Спочаткупланувалося також NodeMCU (esp8266), т.К. Прикручувати до arduinoWi-Fi трохи геморно та ще пара NodeMCU у мене є вільних. До речі, зараз з'явилися модулі Wi-Fi, дуже схожі на BT-модулі. З ниминавчати arduino роботі з Wi-Fi набагато простіше. Але, як уженаписав, nodemcu у мене вже були.Клієнтська частина повинна вмітипідключатися до основної esp-шки Wi-Fi, отримувати дані і виводитиїх на дисплей. Для цього в основний скетч був доданий API-likeендпоінт, який мав повертати статус у форматі JSON (раптомдістануся до додатків на Android? ). Клієнтська esp-шка раз накілька секунд опитує основну і, якщо щось змінилося, оновлює даніна екрані.
Сказано зроблено. Заодно погрався дисплеями 0.96" та 1.8".Підключити дисплей 1.8" виявилося складніше, чомусь і в бібліотецізнайшовся якийсь баг зі зрушенням картинки на кілька пікселів.Правити ліби під скетч, як на мене, дуже погана практика. Томузалишив 0.96" і замовив з Алі ще пару таких . Простіше вивести накілька дисплеїв. Поміркувавши, відмовився від ідеї вказуватинеобхідний кут повороту жалюзей, т.К. Це змінює напрямок потокуповітря під капотом і на швидкості може зіграти поганий жарт.Раніше про це якось не думав. Тепер сервопривід тільки відкриватимеабо закриватиме шторки. Потім я усвідомив наскільки важливийзворотний зв'язок від приводу... Переглянув різні сервоприводи івирішив, що для моєї мети буде достатньо отримувати аналоговізначення потенціометра Про це писав у минулому записі про технічнучастину. Це важливо на випадок якогось НП, щоб не вбитисервоприводи або ще щось. Стало очевидно, що від цієї хусткивідмовлюся. Проект та код робив під один привід, щоб доробити вжесам скетч. Далі проект був розібраний, а схема та код викладені наgithub. Раптом, комусь буде корисною.
Після цього почав переносити код на Arduino Due. b> Версія №2 набазі Arduino Due
При переїзді на Due вже були плани щодо додаткових систем для авто.Установка ардуїни планувалася в салоні, а керування шторками хотівзробити за допомогою Arduino Nano. Обмін даними з Due зробити не поWi-Fi, а за допомогою того ж CAN (окрема мережа від машини) нашвидкості до 250 кбіт/сек, щоб nano тягнула без особливихскладнощів.
Прошу вибачення, проект не було збережено. Але повторити його нескладно. Потрібна Arduino Nano і модуль mcp2515. На цей момент явже отримав дані з CAN шини і прийняв рішення, що на машині шторкистояти вже не будуть. Ні, зі шторками все ОК та проект можнадоробити. Просто до цього часу поспілкувався з парою людина зтакими ж машинами і вийшло так, що у них проблем із прогріваннямдвигуна, як у мене, просто немає. Ця зима була теплою, тож сказати, що проблема залишилася, теж не можу. Знайшов у доках, що першому ТОдоливали 0.5 л антифризу. Можливо, якось було пов'язано, хз.Виходячи з цього, виходить, що шторки приховуватимуть симптомипроблеми (якщо вона ще є) і раптово стануть просто марними. Дорогезадоволення як для марної приблуди… Плюс захитування кріпленьпереднього бампера та ризики, що щось заглючить/здохне тавимагатиме ремонту чи заміни.
Було вирішено закінчити проект, хоч у нього і немаємайбутнього.
Був написаний скетч для Due, який отримує з CAN дані, вирішує наякий кут повернути шторки та виводить дані на екран. Загалом проектне складний. Теж виклав на github, можливо, комусь буде корисним.Що варто було б доробити, але не зроблено
1. Проект запитував від блоку живлення на 9В. Харчування від мережіавтомобіля робилося, т.К. Вже знав про те, що проект не буде упродакшені. Думаю, для живлення буде досить популярного LM2596 ізприпаяним штекером 5.5х2.1 мм, щоб підключити його безпосередньо доArduino Due. Живити від постійного "плюсу" через запобіжник 1А.
2. Обов'язкове відкриття шторок після глушіння двигуна. Безпідключення до постійного плюсу таке зробити не вийде. Я цейфункціонал не робив, але вважаю, що він потрібний.
3. Підбір значень температури двигуна та швидкості автомобіля длявідкриття та закриття шторок. Найвірніший спосіб - підбір під часреальної їзди.
4. Певна затримка між відкриттям та закриттям шторок із пріоритетому бік відкриття шторок. Це потрібно, щоб шторки не почали постійновідкриватися та закриватися через зміну температури двигуна на одинградус. Нехай краще довше будуть відкритими, ніж сервопривідпостійно їх крутитиме. Радіатора
— Шторки радіатора 2:Спроби зібрати з оригінальних запчастин
— Шторки радіатора 3:технічна частина
— Шторки радіатора 4:софтова частина
— Шторки радіатора 5:фінал із відео
"вирішує на який кут повернути шторки та виводить дані на екран.Загалом проект не складний. Теж виклав на github, можливо, комусьбуде корисним. Що варто було б доробити, але не зроблено
1. Проект запитував від блоку живлення на 9В. Харчування від мережіавтомобіля робилося, т.К. Вже знав про те, що проект не буде упродакшені. Думаю, для живлення буде досить популярного LM2596 ізприпаяним штекером 5.5х2.1 мм, щоб підключити його безпосередньо доArduino Due. Живити від постійного "плюсу" через запобіжник 1А.
2. Обов'язкове відкриття шторок після глушіння двигуна. Безпідключення до постійного плюсу таке зробити не вийде. Я цейфункціонал не робив, але вважаю, що він потрібний.
3. Підбір значень температури двигуна та швидкості автомобіля длявідкриття та закриття шторок. Найвірніший спосіб - підбір під часреальної їзди.
4. Певна затримка між відкриттям та закриттям шторок із пріоритетому бік відкриття шторок. Це потрібно, щоб шторки не почали постійновідкриватися та закриватися через зміну температури двигуна на одинградус. Нехай краще довше будуть відкритими, ніж сервопривідпостійно їх крутитиме. Радіатора
— Шторки радіатора 2:Спроби зібрати з оригінальних запчастин
— Шторки радіатора 3:технічна частина
— Шторки радіатора 4:софтова частина
— Шторки радіатора 5:фінал із відео
"вирішує на який кут повернути шторки та виводить дані на екран.Загалом проект не складний. Теж виклав на github, можливо, комусьбуде корисним. Що варто було б доробити, але не зроблено
1. Проект запитував від блоку живлення на 9В. Харчування від мережіавтомобіля робилося, т.К. Вже знав про те, що проект не буде упродакшені. Думаю, для живлення буде досить популярного LM2596 ізприпаяним штекером 5.5х2.1 мм, щоб підключити його безпосередньо доArduino Due. Живити від постійного "плюсу" через запобіжник 1А.
2. Обов'язкове відкриття шторок після глушіння двигуна. Безпідключення до постійного плюсу таке зробити не вийде. Я цейфункціонал не робив, але вважаю, що він потрібний.
3. Підбір значень температури двигуна та швидкості автомобіля длявідкриття та закриття шторок. Найвірніший спосіб - підбір під часреальної їзди.
4. Певна затримка між відкриттям та закриттям шторок із пріоритетому бік відкриття шторок. Це потрібно, щоб шторки не почали постійновідкриватися та закриватися через зміну температури двигуна на одинградус. Нехай краще довше будуть відкритими, ніж сервопривідпостійно їх крутитиме. Радіатора
— Шторки радіатора 2:Спроби зібрати з оригінальних запчастин
— Шторки радіатора 3:технічна частина
— Шторки радіатора 4:софтова частина
— Шторки радіатора 5:фінал із відео
"певна затримка між відкриттям та закриттям шторок із пріоритетом убік відкриття шторок. Це потрібно, щоб шторки не почали постійновідкриватися та закриватися через зміну температури двигуна на одинградус. Нехай краще довше будуть відкритими, ніж сервопривідпостійно їх крутитиме. Радіатора
— Шторки радіатора 2:Спроби зібрати з оригінальних запчастин
— Шторки радіатора 3:технічна частина
— Шторки радіатора 4:софтова частина
— Шторки радіатора 5:фінал із відео
"певна затримка між відкриттям та закриттям шторок із пріоритетом убік відкриття шторок. Це потрібно, щоб шторки не почали постійновідкриватися та закриватися через зміну температури двигуна на одинградус. Нехай краще довше будуть відкритими, ніж сервопривідпостійно їх крутитиме. Радіатора
— Шторки радіатора 2:Спроби зібрати з оригінальних запчастин
— Шторки радіатора 3:технічна частина
— Шторки радіатора 4:софтова частина
— Шторки радіатора 5:фінал із відео






Коментарі
Поки немає коментарів — будьте першим.