Перейти к содержанию

javaman

Members
  • Постов

    31
  • Зарегистрирован

  • Посещение

Информация

  • Пол
    Мужчина
  • Город
    Барнаул

Электроника

  • Стаж в электронике
    Менее года
  • Сфера радиоэлектроники
    Микроконтроллеры, Android

Посетители профиля

1 694 просмотра профиля

Достижения javaman

Новобранец

Новобранец (2/14)

  • 10 лет  на форуме
  • 10 постов на форуме
  • Неделя на форуме
  • Месяц на форуме
  • Год на форуме

Последние значки

54

Репутация

  1. javaman

    Модуль интеграции Raspberry PI 3

    Модуль интеграции представляет собой управляемый микроконтроллером Arduino Nano блок питания для одноплатного компьютера Raspberry PI 3 для установки его в автомобиле. В моем случае Raspberry работает как источник качественного звука в аудиосистеме и сервер потокового видео для камеры заднего хода, но этим его применяемость не ограничивается. Функционал модуля: Импульсный блок питания +5В 3А с гальванической развязкой (модуль Mornsun VRB1205LD-15WR2) Управление одной тактовой кнопкой со светодиодной индикацией режимов КМОП логика управления, обеспечивающая низкое энергопотребление в ждущем режиме Контроль работы Raspberry через GPIO Адаптер кнопок руля с проводным выходом по схеме Pioneer Bluetooth-модуль для передачи команд с кнопок руля на Android-приложение, для управления медиа-плеером Контроль автомобильного питания по линии ACC и сигнала с фонаря заднего хода Схема была разработана и смоделирована в симуляторе Proteus, позволяющего смоделировать работу Arduino Nano в реальном времени. На схеме присутствуют некоторые элементы, отсутствующие в готовом устройстве, необходимые для корректной симуляции. Блок ИИП Mornsun был заменен на узел Q1-U1. Гальваническая развязка между бортовой сетью и +5В обусловила необходимость развязки всех сигнальных линий посредством оптопар. Реле RL1 используется исключительно под особенности моей инсталляции (коммутация питания ГУ Pioneer P88RS, запитанного тоже через гальваническую развязку 12 - 12В с целью устранения земляной петли и помех в динамиках). Напряжение бортовой сети поступает через диод Шоттки D1 на буферный аккумулятор B2 (1.2Ач), необходимый для удержания питания во время запуска двигателя, и далее на ИИП Mornsun - фабричный модуль производства China, ценой порядка 15$ с доставкой. Модуль управляется подачей логического 0 на управляющий контакт (выключается по 0), также имеет контакт Trim для регулировки Uвых в небольших пределах, порядка +-10%. Я установил его на уровне 5.2В подтяжкой Trim к земле резистором 35К. На входе и выходе модуля установлены LC - фильтры ( в схеме нет), а также пленочные конденсаторы малой емкости между входными и выходными линиями - в соответствии с даташитом на модуль. Кнопка питания заведена на тактовую ножку CLK счетчика U6 (4018, аналог К561ИЕ19), счетчик переключается по фронту, подавая на выход Q0 инверсное значение с ножки D. В выключенном состоянии это лог. 1 через R16. Нажимаем кнопку и держим 3-4 секунды, при этом стартует ИИП, запускается Arduino, и сразу после запуска подпирает через оптопару U3 сигнал управления ИИП через U8:D, и подает лог. 0 на вход D счетчика, а также включает светодиод индикации через опторару U5. Все, кнопку можно отпускать. На элементах U2:F, U2:C, U8:A, U8:C реализован переключатель сигнала кнопки. При лог. 1 на входе D счетчика (контроллер выключен) — сигнал идет на U2:D и далее на управление ИИП, при лог. 0 (контроллер работает) — на оптопару U4 и далее на Arduino. Таким образом, пока контроллер работает, все последующие нажания кнопки идут только на Arduino, которая их мониторит. По одиночному короткому нажатию кнопки Arduino отправляет лог. 1 на вывод 24 GPIO Raspberry, где запущен сервис мониторинга GPIO, который тут же гасит ОС командой shutdown. В свою очередь, этот сервис на Raspberry в фоновом режиме подает меандр частотой 1Гц на выходную ножку 25 GPIO, а Arduino через делитель R27+R30 мониторит этот сигнал, и по пропадению пульсаций через 12 сек выключает питание. Таким образом, питание снимается корректно, когда ОС на Raspberry остановлена, и вероятность испортить флэш-карту и само устройство — минимальна. На схеме введена оптопара U11 с генератором на входе для симуляции данного режима. По долгому нажатию (более 4 сек) тактовой кнопки — Arduino отключает питание независимо от наличия сигнала с Raspberry, на случай непредвиденных ситуаций — как в блоках питания АТХ. Сигнал ACC нужен для контроля дежурного режима. Если нужно ненадолго покинуть машину, но не хочется выключать Raspberry, можно оставить ее включенной, вынуть ключ и закрыть машину. По отсутствию ACC включается таймер на полтора часа, после чего система корректно выключается. При этом светодиод кнопки питания начинает помаргивать с частотой 1Гц, короткими затуханиями, со все возрастающей скважностью, и под конец задержки моргает еле заметными вспышками. При подаче АСС таймер останавливается, система переходит в обычный режим, светодиод горит непрерывно. В схеме адаптера кнопок руля использован электронный потенциометр MCP41050, а также 2 ключа Q2 и Q3 для управления двумя сигнальными линиями для входа проводного управления Pioneer. Резисторы R3 и R21нужны для симуляции, в рельном устройстве они не нужны, так как имеются в схеме Pioneer. Помимо проводного управления, сигнал кнопок руля декодируется и отправляется в Bluetooth-модуль HC-05, подключенный к Ардуине по шине SPI, и далее — в Андроид приложение. Сигнал включения заднего хода транслируется через оптопару U10 на 23-ю ножку GPIO, по его включению на Raspberry запускается сервер потокового видео VLCD, который получает сырой видеопоток с камеры ЗХ, оцифрованный устройством видеозахвата EasyCap USB 2.0 Video Capture Adapter на чипе UTV007. По выключению ЗХ сервер останавливается, таким образом процессор не загружается ненужной работой. Поток конвертируется в MJPEG частотой 15 кадров/сек. Кроме того, команда заднего хода через Bluetooth отправляется в Андроид-приложение, которое стартует Activity с WebView, отображающее картинку с камеры на весь экран, разворачивая изображение по длинной стороне. Данная конфигурация дает запаздывание картинки с камеры порядка 0.5сек, уменьшить ее в данной конфигурации не удалось. Ездить не глядя в зеркала с такой задержкой конечно не стоит, но для аккуратной парковки в принципе некритично. Кроме того, весь функционал с видео заднего хода задумывался как экспериментальный, без особой надежды на его полную реализацию. Плата разведена в SprintLayout 6. Arduino Nano установлена китайского производства, на чипе CH340, ее разводка отличается от оригинальной Nano, это следует учитывать при повторе платы. Поскольку Raspberry используется с платой DAC Aoide DACII на чипе ESS ES9018K2M - вся линейка GPIO занята разъемом DAC, и пришлось припаяться к ней с обратной стороны. Там же рядом припаян разъем питания +5В (на фото его еще нет). В процессе тестирования готового изделия были отмечены и устранены некоторые незначительные дефекты, на вышеприведенной разводке платы и во вложеном lay6 файле они уже исправлены. Корпус устройства был спроектирован в Google Sketchup и распечатан на 3D-принтере. Архив с проектом Proteus, скетчем Arduino, проектом SL6 и серверным скриптом GPIO. PowerController.zip На Raspberry установлена сборка Volumio 2.555, работающая в качестве DLNA-рендерера. Источником служит смартфон Samsung Galaxy A50 с установленным медиа плеером Neutron, хотя этот выбор не принципиален. На смартфоне поднята точка доступа Wi-Fi, к которой подключается Volumio. Для управления медиа-плеером было разработано простое Андроид-приложение, представляющее собой фоновый сервис, декодирующий команды от кнопок руля через Bluetooth-модуль HC-05, и транслирующий их в Андроид как события KeyEvent. Это же приложение отображает видеопоток камеры заднего хода с Raspberry. Предусмотрен функционал выбора bluetooth-устройства, поиска Volumio в сети (для отображения видео), есть экранные кнопки для проверки управления медиа-плеером, и некоторые другие функции. Схема декодирования кнопок руля в медиа-события Андороид пока прописана в коде, в плане разработка гибкой настройки. Медиа-команды реализованы трех видов: короткое одиночное нажание, срабатывает по фронту; длинные очереди (нажал и держишь): по фронту срабатывает первое нажатие, через 750мс — стартует очередь команд с периодом 150мс, пока не отпустишь кнопку; короткое/долгое нажатие (как Source на Pioneer'е) — короткое нажатие срабатывает по отпусканию кнопки ранее чем через 750мс, долгое нажатие — генерируется после 750мс однократно, даже если кнопка все еще нажата. Cистема в действии. Volumio стартует через 45-50 сек после подачи питания, и сразу начинается воспроизведение.
  2. Сделал недавно для дома лабиринт на 100ГДШ47-8 + Fostex FT17H через пленочный конденсатор 1мкф. С твитером конечно воздуха побольше, прозрачности. Но и ценник сейчас на них негуманный - я брал еще по докризисным ценам, по 2800 за один, а сейчас 6700. По согласованию, на слух, нормально вышло - у фостекса заявлено 98.5 дБ/Вт/м, близко к ноэме. Ноэмы заказывал по инету, после получения немного разогрел, снял параметры ТС, резонансная частота у одного 60.9, у второго 65.2. У одного оторвался подводящий провод на диффузоре, пришлось аккуратно очистить его от герметика и пропаять. Точно уже не помню, как бы даже не сразу порванный был.
  3. Схему прилагаю. Хочу второй девайс сделать с нуля, в другом корпусе, этот не я делал (товарища попросил). Знаний мало, вот и прошу посоветовать схемку, желательно с термостабилизацией.
  4. Здравствуйте добрые люди! Прошу помощи по импульсному преобразователю. Эксплуатирую в машине гальваническую развязку головного устройства 12 -> 12в по схеме Интерлавки, на 494+irfz44, со стабилизацией через оптопару. Нет температурной стабильности. В холод стартует с 11.2в, при нагреве девайса постепенно растет до 14.5 и остается на этом уровне. Хочу полностью переделать, возможно на другом контроллере. Не подскажете, на какую схему обратить внимание? Мощность требуется небольшая, 2-3А.
×
×
  • Создать...