roboforum.ru

Технический форум по робототехнике.

Как сделать большое количество ШИМ-выходов?

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

Как сделать большое количество ШИМ-выходов?

Сообщение ruslanry » 18 сен 2011, 22:29

Вопрос конечно не совсем про роботов.
Если я к примеру хочу управлять 10-15 RGB-светодиодами, и каждому присваивать собственный цвет, как это можно реализовать?
Получается на каждый диод нужно 3 ШИМ канала, а на 10 диодов - 30 соответственно.
Как это получить? Существует какой-то простой способ?
Есть мысль реализовать что-то похожее через сдвиговый регистр, но на каждый диод придётся по одному регистру, тоже как-то много.
Аватара пользователя
ruslanry
 
Сообщения: 8
Зарегистрирован: 26 июл 2011, 14:05

Re: Как сделать большое количество ШИМ-выходов?

Сообщение vadinator » 18 сен 2011, 22:36

Дык у современных МК выводов не перечесть... :wink:
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Как сделать большое количество ШИМ-выходов?

Сообщение avr123.nm.ru » 18 сен 2011, 22:37

ruslanry писал(а): я к примеру хочу управлять 10-15 RGB-светодиодами,
Есть специальные недорогие контроллеры драйверы до 16 линий цепочек светодиодов, лент, линеек и управляются по SPI. MBI5026GP или STPIC6C595MTR сильно токовый аналог 74hc595.
Вложения
Драйвер 16 цепочек светодиодов MBI5026GP STPIC6C595MTR 55 рублей управляется по SPI.png
Драйвер 16 цепочек светодиодов MBI5026GP STPIC6C595MTR 55 рублей управляется по SPI
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Как сделать большое количество ШИМ-выходов?

Сообщение yak-40 » 18 сен 2011, 22:47

А ещё есть динамическая индикация...
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Как сделать большое количество ШИМ-выходов?

Сообщение ruslanry » 18 сен 2011, 23:18

насколько я понимаю, во всех предложенных вариантах ШИМ прийдётся делать программно?
Аватара пользователя
ruslanry
 
Сообщения: 8
Зарегистрирован: 26 июл 2011, 14:05

Re: Как сделать большое количество ШИМ-выходов?

Сообщение Angel71 » 18 сен 2011, 23:22

для светодиодов есть множество специализированных контроллеров. кроме шима есть другие полезности. т.е. какие микры использовать зависит от того, что имеено вы хотите сделать.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Как сделать большое количество ШИМ-выходов?

Сообщение avr123.nm.ru » 18 сен 2011, 23:23

ruslanry писал(а):насколько я понимаю, во всех предложенных вариантах ШИМ прийдётся делать программно?
нет.
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Как сделать большое количество ШИМ-выходов?

Сообщение ruslanry » 18 сен 2011, 23:41

avr123.nm.ru писал(а):Есть специальные недорогие контроллеры драйверы до 16 линий цепочек светодиодов, лент, линеек и управляются по SPI. MBI5026GP или STPIC6C595MTR сильно токовый аналог 74hc595.

я могу ошибаться, но в MBI 5026 нет ШИМа, есть в MBI 5030.
А вот никакой статьи найти не могу, с примерами, не подскажите где искать?
Спасибо.
Аватара пользователя
ruslanry
 
Сообщения: 8
Зарегистрирован: 26 июл 2011, 14:05

Re: Как сделать большое количество ШИМ-выходов?

Сообщение Angel71 » 18 сен 2011, 23:47

в 5030 есть, в тех нет - это просто сдвиговые регистры с плюшками по питанию. с примерами в поисковики :pardon: тема обширна и в одной-двух статьях всевозможные аспекты и ситуации не рассмотришь.
ax2002, mbi5031, tlc5947, tlc5951, http://focus.ti.com/paramsearch/docs/parametricsearch.tsp?family=analog&familyId=480&uiTemplateId=NODE_STRY_PGE_T
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Как сделать большое количество ШИМ-выходов?

Сообщение HarryStar » 19 сен 2011, 00:10

На любом МК с 30 выводами программный ШИМ реализуется очень просто и быстро.
Смотря какая задача и сколько надо ресурсов иметь свободных. Можно программно без доп железа, а можно да на сдвиговых регистрах или спец контроллерах светодиодных, тогда ресурсов и выводов свободных будет больше - тут уже от потребностей.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Как сделать большое количество ШИМ-выходов?

Сообщение Angel71 » 19 сен 2011, 00:22

:D шутя: на каждый из 30ти пинов 12-16 битный шим реализовать с коррекцией яркости светодиодов, схемками защиты свякие, шину передачи данных прикрутить и т.д. угу, любой мк потянет, аж бегом.
в смысле +1 нужно знать о чём речь, "много светодиодов и шим" ни о чём не говорит.
п.с. на каждый ргб иногда делают 4й шим для управления общей яркостью. в этом случае на одном 16ти канальном сдвиговом регистре можно управлять максимум четыремя ргб светодиодами, а не одним, как у вас в первом сообщении.
п.п.с. у многих светодиодных драйверов с шимом есть неприятный момент - в них нет встроенного тактового генератора.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Как сделать большое количество ШИМ-выходов?

Сообщение HarryStar » 19 сен 2011, 08:42

Зачем для светодиодов 12-16 битный шим? Вы сможете на глаз различить столько оттенков? Столько даже в компе нет(16 млн цветов это 8 бит на каждую компоненту). Думаю в реальности 4-8 битного шима за глаза. 30+ выводов есть начиная с 16(32) меги вроде - на ней это реализовать несложно.

Но конечно без более точного описания задачи заранее сказать трудно, что надо ТС. Если просто помигать 10 разноцветными светодиодами то вполне хватит.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Как сделать большое количество ШИМ-выходов?

Сообщение ruslanry » 19 сен 2011, 11:42

Angel71 писал(а):в смысле +1 нужно знать о чём речь, "много светодиодов и шим" ни о чём не говорит.
п.с. на каждый ргб иногда делают 4й шим для управления общей яркостью. в этом случае на одном 16ти канальном сдвиговом регистре можно управлять максимум четыремя ргб светодиодами, а не одним, как у вас в первом сообщении.
п.п.с. у многих светодиодных драйверов с шимом есть неприятный момент - в них нет встроенного тактового генератора.

я человек далёкий от искусства, и с МК только начинаю работать. Поэтому мои решения не совсем красивые. Мой вариант шима на сдвиовом регистре предполагался таким образом, схему рисовать не буду, только объясню:
Регистр 8 битный, значит есть 8 выходов, на которых можно получить по 5 вольт. на каждую ногу RGB диода отводим по два выхода из регистра, задействав 6 из 8 бит. теперь в каждой паре бит, на один сигнал вешаем резистор который будет резать 33% напряжения, на второй - 66%, в итоге должен получиться 2х битный шим. Я так думаю. поэтому и получалось что один диод - один регистр.
Потом я прикинул что на 15 диодов нужно 15 микросхем + кучу резисторов, а умные люди наверянка что-то уже придумали более нормальное. За что вам всем спасибо.

Насчет ТЗ - все просто мне нужно для спецэффектов на некоторое количество диодов выдавать различные цвета.

HarryStar писал(а):Зачем для светодиодов 12-16 битный шим? Вы сможете на глаз различить столько оттенков?

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

а почему не хочу делать напрямую с ног МК - тогда при увеличении количества диодов рано или поздно ноги кончаться
Аватара пользователя
ruslanry
 
Сообщения: 8
Зарегистрирован: 26 июл 2011, 14:05

Re: Как сделать большое количество ШИМ-выходов?

Сообщение =DeaD= » 19 сен 2011, 12:32

А что, специализированные ШИМ-драйверы принципиально не рассматриваются? :oops:
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Как сделать большое количество ШИМ-выходов?

Сообщение HarryStar » 19 сен 2011, 13:46

Нет смысла делать многобитные резисторные делители - это вы не шим, а цап описываете. У шима смысл совсем в другом. Там 1 нога - 1 светодиод и резистор только 1 на максимальную яркость, в этом и суть шима. В шиме яркость задается не током через светодиод (или другую нагрузку) а скважностью высокочастотного моргания

2 Деад: Доп драйвера и микросхемы - это доп деньги и пайка. если все потребности ТС можно реализовать программно, то мне кажется лучше сделать именно так. По крайней мере я так делаю, мне проще программировать :)

Только ТС так и не написал конечную цель своего проекта, поэтому что-то конкретное советовать пока нельзя.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

След.

Вернуться в Новичкам или основы основ роботостроения.

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron