У меня есть идея для табло игровой комнаты. Я хотел бы включить или выключить лампочку в зависимости от флага в базе данных. Итак, скажем, у меня есть столбец с именем "Out". Для выхода = 1 будет гореть одна лампочка, для выхода = 2 - две лампочки и т.д. Возможно ли это? Что мне нужно? Настройка базы данных и вставка данных без проблем.

4 ответа4

1

Концептуально вам понадобится следующее:

  1. оборудование, которое получает запрос и отображает соответствующее количество лампочек
  2. программное обеспечение, которое превращает полученный номер в запрос к оборудованию
  3. программное обеспечение, которое опрашивает базу данных

Учитывая это в следующем порядке:

Аппаратное взаимодействие

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

Программное обеспечение для аппаратного контроля

Если вы можете писать код на C или C++, у вас, вероятно, не возникнет проблем при написании программного обеспечения для вашей конкретной системы (Windows, Mac, Linux), чтобы отправить один байт на параллельный или последовательный порт. Примеров в интернете предостаточно. Код может listen IP- socket для значения, отправляемого аппаратному обеспечению.

Программное обеспечение для опроса базы данных

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

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

0

Это было бы просто сделать. Мое предложение:

1) Вместо использования отдельных источников света используйте адресную светодиодную ленту RGB. Это будет намного проще, чем управлять индивидуальным освещением, и позволит легко получать различные цвета и яркость. Вы можете поместить шары пинг-понга поверх светодиодов, если вы хотите другой вид.

2) Я бы использовал Arduino для обработки вождения светодиодной ленты. Он может подключаться к вашему ПК через последовательный порт, а программа на ПК может просто выполнить запрос к базе данных, получить значение и отправить его через последовательный порт в arduino. Arduino считывает значение и отправляет его на светодиодную ленту.

Вы найдете много вещей на adafruit.com, в том числе учебники, которые помогут вам.

0

Это звучит как идеальное приложение для малины пи. Это мини-компьютер Linux, который более чем способен принимать программное обеспечение, которое может запрашивать базу данных. (И хост один). Он также имеет контакты GPIO, которые могут контролировать вещи.

http://www.raspberrypi.org/

Вам нужно определиться с типом освещения, прежде чем вы сможете узнать, как его включить.

Если это светодиод, вам может понадобиться светодиодный драйвер, если это лампа на 240 В, вам может понадобиться реле и т.д.

Другие варианты, которые вы, возможно, захотите посмотреть, включают Beagle Bone, ODROID и не забудьте просто зайти в Google «мини-компьютер Linux», чтобы узнать больше вариантов.

0

Мое решение с минимальными усилиями заключалось в том, чтобы использовать диско-свет (который использует протокол DMX) и «электрический чертенок», который представляет веб-API для вас.

Он также может поговорить с светодиодами или неопикселями в качестве альтернативы.

Вот видео простой демонстрации, которую я создал.

https://www.youtube.com/watch?v=RxttrlHJntw&list=UU2vDg0Cv64FmkmjJYpVnWuQ

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .