Страница 6 из 17 ПерваяПервая ... 4567816 ... ПоследняяПоследняя
Показано с 51 по 60 из 168

Тема: Проект платы освещения для вагонов Tillig длиной 155мм (Tillig 16622)

  1. #51
    Цитата Сообщение от GOGA Посмотреть сообщение
    Что мешает PIC684? Или AT 24
    А как у них обстоят дела с ШИМ? а АЦП у них столько же сколько у атмеги?

  2. #52
    Цитата Сообщение от Федюнь Посмотреть сообщение
    А как у них обстоят дела с ШИМ? а АЦП у них столько же сколько у атмеги?
    Федя тебя в гугле забанили чтоль? ну скачай даташит и всю инфу получишь сполна.

  3. #53
    Убедительная просьба оффтопик прятать под оффтопик.

    Вы оба правы и наоборот. Один мог быть дать пруф-линк (ссылку), а второй мог бы и погуглить. Предлагаю в теме не отклоняться от темы

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

    Что нового:
    - пауэрпак перенесен на "высоковольтную" часть и полностью переделан на четыре "тантала" в корпусе 7343 (D,E)
    - транзисторы заменены на ULN2003
    - убран последовательный порт

    Нажмите на изображение для увеличения. 

Название:	640.jpg 
Просмотров:	50 
Размер:	90.6 Кб 
ID:	22252

    p.s. Жуткая штука - макетка. Ищешь часами проблемы в коде, а она в контактах. Хорошо, когда код отлажен и работает. Кстати, в этот раз специально копался в макете при включенном питании, пару раз удалось даже переклинить МК, но прошивку и EEPOM он ни разу после установки фьюзов не потерял, ура
    Последний раз редактировалось shalex; 11.02.2017 в 22:01.

  4. #54
    Насчет эффектов, кажется пришел и их черед. Т.к. "железо" уже почти на финише (запросил цену на плату у китайцев и у наших), можно заняться "софтом" и прибегнуть к мощи битовых шаблонов а именно задавать в нескольких CV последовательность вкл/выкл в виде битов, и потом "проигрывать" каждый бит в течении времени дискретности. Время дискретности тоже может задаваться в CV, а лучше двух, для возможности широкой настройки.

    оффтопик
    Последний раз редактировалось shalex; 12.02.2017 в 01:41.

  5. #55
    Если некоторые цепи светодиодов могут оказаться по потреблению в переборе,то есть выход. Некоторые входы и выходы парелелятся на ULN2003 и тем самым можно увеличивать нагрузку. Проверенно,я так делала на своих платах.

  6. #56
    Обновил код прошивки и теперь список возможных режимов стал такой:

    - SIMPLE просто вкл/выкл.
    - PATTERN_CYCLE проигрывание битового шаблона из 64-х бит.

    О последнем подробнее...

    Время проигрывания каждого бита задается через CV для соотв. канала: (Option1 * Option2 * 100мсек). Например: (10 * 1 * 100мсек) = 1000мсек = 1 сек.
    Другой вариант - выставляем время проигрывания бита в 1 минуту (например Option1= 60, Option2 = 10), то в шаблоне можно практически поминутно задать время включения или выключения в рамках часа.

    Внимание, максимальное значение любого CV - 255, поэтому с помощью Option1 и Option2 можно задать максимальное время проигрывания ОДНОГО бита в 108 минут.

    Сам шаблон задается в 8-и CV для каждого канала. По-умолчанию на канале 0 , на функцию F0 настроен режим PATTERN_CYCLE, с Option1=10 и Option2=1, с шаблоном "аварийки" или blink. В-общем, если декодер после сброса к заводским настройками и после включения света на "мышке" моргает -значит исправен

    в проекте :
    PATTERN_START_AND_ON - стартовать с шаблона, проиграть и оставить включенным
    PATTERN_START_AND_OFF - стартовать с шаблона, проиграть и оставить включенным, или проиграть шаблон один раз.
    ON_AND_PATTERN_END - при включении функции свет включается как обычный,а при выключении проигрывает шаблон
    OFF_AND_PATTERN_END - при включении функции свет не включается, а при выключении проигрывается шаблон
    PATTERN_BY_PATTER - один битовый шаблон задает порядок проигрывания другого шаблона. Скорее всего будет 32 бита в главном и подчиненном шаблонах. Option1 будет задавать интервал для главного шаблона, а Option2 -для подчиненного. Причем главный шаблон не будет дожидаться, когда подчиненный отыграет все свои 32 бита, а просто прервет, если время шага из Option1 закончилось и следующий шаг "не играть", т.е. следующий бит=0.

    Осталось только прикрутить режим ШИМ, с плавным включением и регулировкой яркости, но че-то уже лениво. Свой максимум я выполнил, возможно прикручу просто регулировку яркости. Остальное по настроению...

    И, пожалуй, поставлю все таки оптопару, один чип уже окирпичился, второй после долгого выключения "потерялся" (а может и я после прошивки не сбросил в дефолт).
    Последний раз редактировалось shalex; 12.02.2017 в 22:18.

  7. #57
    Поскольку немного задолбался отлаживать голый чип, то теперь поступаю проще - беру Ардуино Нано, запускаю скетч на ней, но только исправляю все пины для выводов на 13. Дело в том, что на ардуинах, на выводе D13 (или 13 в скетче) штатно стоит светодиод. Поэтому даже не надо подключать светодиоды - вся индикация есть уже на плате. Один момент - тестировать надо только один канал. Остальные Fn даже не включать, чтобы не получить неадекват при старте декодера.


    В-общем, комфортно отлаживаю код на арудине нано - с портом и с кучей памяти. Весь отладочный код "обернут" в #ifdef, чтобы потом закомментировать один #define и весь отладочный код будет игнорироваться при сборке для Attiny.


    Свежая схема с оптопарой PC817. Зря я от нее отказывался раньше. Надо было выход просто подтянуть 1К к питанию 5В и все отлично работает И есть нормальный SMD вариант, в отличии от 6N136.

    Нажмите на изображение для увеличения. 

Название:	643.jpg 
Просмотров:	39 
Размер:	95.4 Кб 
ID:	22269
    Последний раз редактировалось shalex; 13.02.2017 в 00:27.

  8. #58
    Нажмите на изображение для увеличения. 

Название:	951283.jpg 
Просмотров:	11 
Размер:	42.7 Кб 
ID:	22271

    Как одолеть битовый шаблон собственными силами...

    Пишем на бумаге/планшете и т.д. требуемую последовательность из 64 разрядов. В каждом разряде должен быть 0 или 1. Т.е. включена лампа, или нет. Если написать последовательность в одну строку, то воспроизводиться она будет слева направо.

    Дальше разбиваем разряды на группы по 8 шт. Это байты. Каждый из этих 8-и байтов должен быть записан в CV декодера в виде десятичных чисел.

    Для перевода используем Калькулятор из Windows, в режиме "инженерный". Переводим в "бинарный" режим "bin", вносим первый байт в виде 0 и 1. Переводим систему в "dec" и полученное десятичное значение сохраняем в CV.

    Например, для Канала 0 первый байт надо записать в CV46, второй в CV47 и т.д. Всего должно быть 8 байтов.
    Внимание: если число для записи в CV получилось больше 255 - значит где то ошибка.

  9. #59
    Допил остальные режим, остался самый интересный - по шаблону проигрывать другой шаблон.

    Пока список режимов такой:

    MODE_SIMPLE =0
    просто включить выключить


    MODE_PATTERN_CYCLE= 1
    бесконечно проигрывать битовый шаблон, шаг шаблона = Option1 *Option2 *100ms


    MODE_PATTERN_START_AND_ON= 2
    проиграть один раз при включении битовый шаблон и оставить включенным, шаг шаблона = Option1 *Option2 *100ms
    например, моргание стартера при включении фонаря


    MODE_PATTERN_START_AND_OFF = 3
    проиграть один раз при включении битовый шаблон и оставить выключенным, шаг шаблона = Option1 *Option2 *100ms
    например, одинокая вспышка, молния, что-то ритмично отморгало и погасло, даже если не выключать кнопку на мышке, ту же сварку можно попытаться изобразить.


    MODE_ON_AND_PATTERN_END = 4
    зажигается при включении, а при выключении проигрывает один раз битовый шаблон , шаг шаблона = Option1 *Option2 *100ms
    например то, что при выключении моргает


    MODE_OFF_AND_PATTERN_END = 5
    при включении НЕ зажигается, а при выключении проигрывает один раз битовый шаблон , шаг шаблона = Option1 *Option2 *100ms
    например ... даже не знаю как применить.

  10. #60
    Допилил режимы, связанные с направлением и скоростью.

    SPEED_NONE 0 - включаться независимо от скорости
    SPEED_ZERO 1 - включаться если скорость 0, правда в тот момент, когда на мышке выбран 0, а не когда состав реально остановился
    SPEED_IN_MOVE 2 - включать канал, только скрость не равна 0

    DIR_NONE 0 - включаться канал независимо от направления
    DIR_FWD 1 - включать если режим "вперед"
    DIR_BACK 2 - включать, если режим "назад".

    Все это будет закодировано по 4 бита на канал, в 2-х CV. Остался режим PWM. Потребуется 16 бит или еще 2 новых CV.
    Последний раз редактировалось shalex; 14.02.2017 в 16:49.

Похожие темы

  1. Ответов: 46
    Последнее сообщение: 29.11.2017, 15:45
  2. Платы освещения вагонов
    от Mitugin в разделе Электрика и DCC
    Ответов: 77
    Последнее сообщение: 07.06.2017, 06:10
  3. Платы освещения
    от Lexx в разделе Электрика и DCC
    Ответов: 114
    Последнее сообщение: 04.12.2016, 23:21

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •