Фон:
Я инженер-строитель, специализирующийся на устройствах управления движением, и у меня есть небольшой хобби проект по созданию системы светофора в масштабе модели. Я могу управлять и контролировать программирование шаблонов светофора самостоятельно, используя Raspberry Pi (плюс это дает мне возможность реализовать динамическое и запрограммированное управление, и интерфейс с серьезной схемой управления трафиком и, возможно, реальными данными трафика). Мне просто нужна помощь с подключением многих светодиодов со стороны оборудования :)
Я следовал этому руководству http://www.raspberrypi-spy.co.uk/2012/06/control-led-using-gpio-output-pin/ просто отлично (включая использование внешнего источника питания вместо контакта 2), но Скорее всего, я столкнусь с проблемой слишком малого числа подключений GPIO для всех светофоров.
Затем я попытался мультиплексировать со светодиодной матрицей http://www.appelsiini.net/2011/how-does-led-matrix-work . Мультиплексирование работает, однако, огни обычно тусклее, я сомневаюсь, что это будет хорошо масштабироваться, и это увеличивает сложность управления.
Основной вопрос:
Если не считать платы расширения на Raspberry Pi, есть ли другие приемы, которые я мог бы использовать для управления несколькими светодиодами с меньшим количеством сигналов 0/1?
Одна вещь о светофорах состоит в том, что они обычно входят в три блока, только один из которых когда-либо активен за один раз. Есть ли какая-то относительно простая схема, которая позволила бы мне переключать блок светодиодов с помощью одного сигнала 0/1?
источник
Ответы:
Вы знакомы с регистрами сдвига, как 74HC595? Требуется 3 контакта от вашего RPI, и вы можете контролировать 8 выходных линий. Вы можете легко каскадировать их, эффективно управляя n × 8 выходными линиями.
Данные последовательно синхронизируются в регистре сдвига, и как только все 8 выходных битов передаются, вы фиксируете биты на выходах.
Я собирался добавить таблицу здесь, но https://www.sparkfun.com/products/733 показывает хорошее видео и имеет ссылку на таблицу.
источник
Сдвиг регистров, как Джиппи предлагает работать хорошо. Но мультиплексирование также может работать на большее количество светодиодов, чем вы могли ожидать. Решение проблемы пониженной яркости заключается в увеличении пикового тока, чтобы средний ток оставался неизменным. Вы можете сделать это, увеличив напряжение или уменьшив токоограничивающий резистор.
Причиной чрезмерного тока, повреждающего светодиод, является перегрев соединения. Если дать время остыть между импульсами, импульсы могут быть сильнее. Таблица данных для вашего светодиода должна указывать как максимальный средний ток, так и максимальный пиковый ток, который не должен превышаться. Если вас не слишком беспокоит высокая надежность (проект для хобби, а не космический корабль), и вы не против курить несколько светодиодов или немного нарушать правила, вы всегда можете проверить пределы самостоятельно.
Кроме того, обратите внимание на charlieplexing для способа мультиплексирования большего количества светодиодов с меньшего количества контактов. Верхним пределом количества светодиодов, которые можно подключить с помощью этого метода, обычно является достижимая яркость с током, доступным от выводов GPIO, а не количество выводов.
Дальнейшее чтение: дает ли импульсный светодиод при более высоком токе большую видимую яркость?
источник
Используйте USB или Ethernet для управления огнями через плату реле с защелкой, такую как эта
http://www.robot-electronics.co.uk/acatalog/Relay_Modules.html
Я использовал эти платы для других приложений, и они отлично
источник