Контроллер для кордовых электричек

VitalikV

Я думаю, со смартфоном заморачиваться рано, надо хотя бы на ардуино проект довести до конца. Предновогодняя суета, не дает возможности, сесть за паяльник, чтобы собрать таймер и потестить(((

8 days later
Маркс

В результате “теоретических” исследований и анализа экспериментов,
поставленных на WeMos ESP8266 Mini …
Короче, применение данного девайса на данный момент не целесообразно.

Суть эксперимента - запустил на девайсе простую программу в цикле,

  • изменение уровня сигнала на выходе МК в каждом цикле программы.

А дальше смотрел меандр на выводе МК с помощью осциллографа.

Был сильно удивлен результатами измерения периода меандров.
Nano v3 ATMEGA238P 16МГц - ~2мкс, т.е. один цикл примерно 16 тактов.
WeMos на тактовой частоте 80МГц - ~8мкс - 320 тактов
WeMos 80МГц с поднятым WEB интерфейсом - >30мкс - 2500 тактов

Маркс

“Георгия Ивановича”, так зовут мою машину, после ДТП на колеса поставили,
дальше буду ждать кузовной ремонт, но можно выдоохнуть.
Так что продолжу кропать программу, осталось вспомнить - на чем остановился

Маркс

хотя … нашел видео

и все сразу стало не настолько однозначно.
не знаю откуда берется такая задержка в переключении выхода микросхемы 8266,
но “математика” у ESP8266/ESP32 работает значительно быстрее.

В общем, выявлю “отложенный” на месяц баг и попробую запустить таймер на ESP8266.

Маркс
VitalikV:

Я думаю, со смартфоном заморачиваться рано

стоит определится с платформой.
вариантов Pro Mini, как выяснилось, существует как минимум три варианта,
с разным расположением A4/A5.
а это влияет на разведение печатной платы.
Сделать на “все случаи жизни” я попытался,
но в варианте “однослойного монтажа” у меня получилось не очень красиво.
А “двухслойные” платы придется заказывать на стороне, а это лишние деньги.

А маленькая и легкая ESP32C3 существует в одном варианте
и может занимать значительно меньше места на кросс-плате.

Маркс

Плюс от использования ESP32C3 в качестве вычислительной платформы таймера

  • USB разъем для программирования, не нужен USB-UART.
  • пока “теоретическая”, возможность программирования параметров через WEB со смартфона,
    платформу для реализации уже нашел, JeeUI2 позволяет реализовать точку доступа,
    стартовую страницу с сохранением введенных значений.
    Этот функционал я уже опробовал на WeMos D1 ESP8266.
  • отсюда становится не нужен программатор на UNO с LCD KEYPAD

Пока что на мой взгляд сплошные плюсы, осталось понять, хватит ли ресурсов )

Маркс

Продолжил изыскания в сторону ESP в качестве платформы для проекта
И выяснил, что большая задержка вызывается переходом от завершения основного цикла в его начало.
Сделал маленькую WEB-мордочку

и начал эксперименты

void loop()
{
  stateLed = !stateLed;
  digitalWrite(2, stateLed);  // Turn the LED on (Note that LOW is the voltage level
  stateLed = !stateLed;
  digitalWrite(2, stateLed);  // Turn the LED on (Note that LOW is the voltage level
  jee.handle();
  restart_handle();
  jee.btnCallback("btn1", btnUI);
}

этот код дал вот такую картинку

Промежуток между импульсами, это внутренние “терки процессора”,
связанные с WEB интерфейсом, примерно 35мкс, пауза постоянная, не зависимо от написанного кода до выхода из loop()
На таймер импульсы от формирователя приходят с частотой 20-25КГц/~40мкс,
думаю проблем с совместимостью быть не должно

Вывод, на днях приедет ESP32C3 протестирую ее в качестве “мозга”

VitalikV
Маркс:

разным расположением A4/A5.

На односторонней плате это можно решить с помощью перемычек, куда надо, туда проводочик и кинул. Но я думаю может не кросс плата, а отдельная плата для функции гувернера, на разъем подцепил, и разводи с него как хочешь, на любую ардуину.

Так же и с платой гироскопа/акселерометра, надо, повесил, закрепил в нужной части модели. Не будет привязки к формфактору ардуины.

Я порылся в инете, есть про мини 26*26мм, крос плата уже не подходит, так как там совсем другое расположение контактов.

Надо выбрать один формфактор и под него делать кроссплату, и второй вариант, отдельная плата гувернера и гироскопа, под любой размер про мини.

Маркс

Вчера получил из Китая модуль ESP32C3 и даже успел его протестировать.
Тестовая WEB морда на него встала и даже не глючила,
правда пришлось освоить MS VS Code )), в Ардуино все собирается криво и с геморроем.
Быстродействие даже на фоне ESP8266 значительно выше, картинки к вечеру постараюсь “нарисовать”.
А пока сделал фотографии с размерами

Сверху MPU6050 и ESP32C3, дальше Arduino Pro Mini, самый нижний первый прототип.
Что то мне подсказывает, что в размерах прототипа вполне реально сделать кросс-плату.
Кроме того, чистая экономия на программаторе и UCB-TTL, для программирования Pro Mini
Вес модуля ESP32C3 на 25 процентов меньше веса ProMini

Ну и для сравнения крайние цены.

Маркс

я четвертый день болею, мозг не варит, в общем что то сломал в MS VS Code,
подгрузил какую то библиотеку не по делу, теперь проект жалуется …, завтра начну с начала.
что удивительно, тоже самое сделанное для 8266 прекрасно компилируется и запускается ((

VitalikV

Геннадий, поправляйтесь! Запаял я наконец, регулятору дополнительные выводы, и потестировал систему на KR таймере.

Почитал, инструкцию к нему внимательно,и там упоминается о работе гувернера по напряжению на выходах регулятора, а не по частоте, и гувернер, добавляет обороты только вверх, а не в обе стороны. Так же KR таймер имеет семь ступеней усиления оборотов, что и создает имитацию режима 4-2-4.

Может имеет смысл добавить данный функционал в скетч таймера?

Маркс

Спасибо, вроде как в себя прихожу.
Думаю еще пару дней “погрею спину”, а потом все таки начну работать.
Раньше болел два, максимум три дня, а сейчас уже возраст дает о себе знать.
Да еще толком работа (основная, которая на жизнь) не дала толком “по болеть”.

Давайте я сначала “допилю” чистый гувернер, что бы он заработал, потом попробую его прикрутить на STM32,
а потом займемся “улучшайзингами”. ))

Маркс
Маркс:

потом попробую его прикрутить на STM32,

заговорился, естественно на ESP32 ))

10 days later
Маркс

Завтра заберу в ЧипДипе новый энкодер и продолжу с таймером.

Неделю назад - включаю осциллограф, а он не реагирует ни на одну крутилку,
интернет мне в помощь, хорошо, что я не первый. Разобрал,
выявил неисправный энкодер (все восемь на одной шине сидят),
заказал и жду уже неделю, в итоге дождался, надеюсь привезли то, что нужно.

А пока оптимизировал уже написанный код, но ошибку так и не вывил, а без “визуализации” сложно.

Пал_Ник

Ребята!!! Обращаюсь к Вам со слёзной просьбой… помогите мне, недалекому… Сделал новый аппарат, поставил на него “таймер”, который брал в магазине в Химках и на котором летаю уже 3 года… Решил перепрограмировать его под новый самолёт, а телефон “не видит” таймер… Вопрос-почему? И что делать? ПОМОГИТЕ!!!

VitalikV
  1. В настройках блютуз на телефоне, посмотреть видит ли сам телефон таймер, можно проверить на другом телефоне. Если видит, то все хорошо.
  2. Далее, запускаем программу управления таймером и смотрим в меню девайс , там две вкладки , блютуз классик и блютуз ле, таймер должен быть во вкладке блютуз ле. Если его там нет, или он там есть но не подключается, то удаляем программу и ставим ее заново через гугл плей.

Пробуем подключиться.

RandomJ

Пал_Николаевич, а что за таймер? И фотку таймера не помешает.

VitalikV

Роман, кордтаймер из фасршопа, он у них один в продаже.

karmann

Подскажите, приобрел Cordtimer, если самолёт окажется в земле, отключает ли таймер мотор? Понятно, что это функция ESC, но всё же… Будут пионеры летать, поэтому беспокоюсь))

Пал_Ник

Другой телефон (жены) видит таймер… В гуглплеи программу найти не могу…

VitalikV
karmann:

Подскажите, приобрел Cordtimer, если самолёт окажется в земле, отключает ли таймер мотор? Понятно, что это функция ESC, но всё же… Будут пионеры летать, поэтому беспокоюсь))

Нет там такой функции, так как таймер просто посылает управляющий сигнал, и понятия не имеет, что происходит с мотором, только регулятор видит, вклинил мотор или нет.