Блок эффектов для авто, или "Unit KROSAFCHEG"

Был у меня дрифтолет, и хотелось, как настоящему пацану, быть в чем-то чуточку лучше остальных. Чего же не хватает правильному дрифтеру? Конечно же света - правильной отработки стоп-сигналов, заднего хода, поворотников, всяких стробоскопов и моргалок. Что-то во мне свербило и не позволяло купить готовое решение типа тлу-2, толи это была жаба, которая при виде стоимости душила меня, толи 15 лет радиолюбительского прошлого, до сих пор не понял 😉

Выбор пал на pic-микроконтроллеры. Пропущу описания моих мытарств и познания тонкостей программирования на ассемблере, после месяца я понял чего хочу, в итоге еще через полгода неспешной работы родился такой блок:


  • анализ 3-х каналов (руль, газ, аукс)
  • управление одной кнопкой
  • аварийка при простое более 15 секунд
  • выхода на стоп-сигналы, задний ход, задние габариты, поворотники, передние габариты, 4 стробоскопа
  • переключение эффектов при помощи кнопки или удаленно от третьего канала
  • возможность отключить поворотники
  • 24 эффекта для стробоскопов
  • питание от 5-6 вольт
    Вот небольшое видео:

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

Версия 1, двусторонняя плата

Версия 2, односторонняя плата

Среди общих изменений - LDO- стабилиатор на LP2985AIM5-5.0 (был на резисторе и стабилитроне 😊 ), изменил разводку выходных разъемов (стало удобнее и безопаснее, если так можно выразиться), добавил резистивные делители на входы мк… Из программных изменений - полностью переработан алгоритм (выложу чуть позже) добавил 3 программных ШИМа. ШИМ пока реализован только один - меняется яркость на задних габаритах (при нажатии на стоп их яркость меняется с 30 до 100%). За реализацию двух других возьмусь после окончания работ над программой, т.к. память программ к сожалению на исходе и возможно потребуется переход на более мощный мк.)

Немного о железе.
Сердце устройства - pic16f628a. Для управления нагрузкой поставил 8-канальные сборки дарлингтона - ULN2803A. Стабилизатор питания на LP2985AIM5-5.0. Входной сигнал поступает через резистивные делители на входы мк. Выведен отдельный разъем для программирования. Собственно все достаточно просто.
Специально для достижения такого качества пришлось забыть о лазерно -утюжной технологии и раскошелиться на фоторезист POSITIV 20 с каустической содой и уф-лампочкой. Еще не до конца получилось отладить технологию производства - то недоэспонируешь, то лак фигово ляжет…

Алгоритм.
Начну с описания входного сигнала. С приемника идет ШИМ сигнал, длительностью примерно от 1000 до 2000 мкс и частотой следования от 60 до 200 герц. Все это было выяснено методом тыка - путем подачи сигнала с разных аппаратур (Sanwa mx-3fhss, HPI-TF1, Spectrum DX3R, Futaba 3pm) на вход звуковой карты ноутбука через резистивный делитель, т.к. сказать регулятор громкости =). Записал входные сигналы SoundForge’ем и собственно увидел все тонкости. Зная параметры сигнала можно смело приниматсья за алгоритм его обработки.

При увеличении картинки будет видна длительность положитеьного полупериода для 2-х разных положений курка (подчеркуто красным в правом пижнем углу)

При изменении фреймрейта на аппаратуре Spectrum DX3r видно как меняется период сигнала

на примере стоковой аппы HPI TF1 можно увидеть длительность информационной составляющей сигнала и время периода, которое всегда неизменно.

В данной записи приведу принцип работы первой версии прошивки, где отсутствуют программные ШИМ.
Микроконтроллер поочередно считывает сосоятния каналов. На каждый канал отводится 20 мс, если за это время не повился сигнал (лог 1) на входе, то происходит переход в анализ следующего канала. В противном случае (сигнал все-таки появился) - подсчитывается его длительность. Переход в анализ следующего канала произойдет только после истечения 20 мс (Пример: до появления сигнала прошло 8 мс, посчитали 1,5 мс сигнала и досчитывает в цикле еще 10,5 мс). К этому времени привязаны стробоскопы.

Достоинства - высокая точность анализа длительности сигнала (до микросекунды). *Такая точно в данном случае не требуется
Недостатки - возможно считать всего около 16-17 значений в секунду (60 мс на полный цикл анализа 3- каналов). *На практике этого более чем достаточно.

продолжение следует…

  • 3288
Comments
alecs2000

красиво! Жуть! +5!

DGI

Отлично!
Платка более чем аккуратно вышла.
СПС за собранную инфу по различным апам, хотя описания и были, но это практическое подтверждения сухой теории будет небесполезным (сам, в следствии неимения другой апы, могу снять сигнал только с аналогового FM.)

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

… ну и… если это “народный” проект - то не мешала бы схема и прошивка! Впрочем, даже та инфа, что предоставлена - может быть полезна… но только мало-мальски подготовленному читателю.
Да! Интересная идея сканировать по кругу каналы!!! Когда-то давно делал анализатор RC шима, тож… помню, как то выкручивался, чтоб на одном таймере считать несколько входов (на ATmele, правда), но я как-то умудрился в итоге считывать сразу всё (не исключаю, что пожертвовал точностью измерений)…

lesha_spb

Спасибо за отзыв, приятно!
Не помню какую имено аппу смотрел, но точно могу сказать что, руль и газ шли синхронно, а третий канал начинался сразу после окончания самого длинного импульса из первых двух (tr, st). Сначала хотел тоже основываясь на особенностях передачи сигнала измерять его, но потом поразмыслив пришел к выводу, что надо сделать максимально гибкую систему, способную работать практически с любым возможным сигналом. И отказался от привязки к поседовательности следования импульсов.

Сейчас дописываю вторую версию прошивки, которая рабтает ну совсем по другому. Как сделаю - обновлю материал.

Tempro

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

shura2000

а купить это чудо можно у Вас?

Protez1999

если можно весь список использумых деталей . счас делаю нечто подобное в свою дрифтушку. Спасибо

lesha_spb

Да можно… деталей там раз-два и обчелся. нужна программа для микроконтроллера, без нее работать не будет. Программу не дам, я жадный.

Protez1999

хотяб наводочку на програмку что да как а то с товарищем счас пробуем делать на ATtiny 2313 но только не получится газ тормоз и повороты придется дербанить сервы и ставить реле

lesha_spb

Начинайте с малого. Сделайте стробы. Продумайте общий алгоритм, возможности процессора…
Если будут технически вопросы - отвечу.

Я, кстати, более полугода потратил на вникание в ассемблер, глюки(особенности) пиков, отладку программу. Только после того получилось что-то работающее. Потом мне не понравилось и написал все с нуля =)