Модуль LED¶
Модуль LED - это плата с матрицей из 25 светодиодов. Модуль имеет 2 варианта подключения к Пионеру: 1) К плате автопилота(сверху); 2) К плате подключения дополнительных модулей(снизу). Блок светодиодов может использоваться для подсветки или индикации событий в зависимости от условий программы.
Пример¶
В качестве примера и отладки воспользуйтесь следующей программой, которая случайно меняет цвет блока светодиодов каждую секунду. Чтобы загрузить программу на «Пионер», воспользуйтесь Pioneer Station.
-- количество светодиодов на основной плате пионера(4) + на модуле LED (25)
local ledNumber = 29
-- создание порта управления светодиодами
local leds = Ledbar.new(ledNumber)
-- функция, изменяющая цвет RGB светодиодов
local function changeColor(red, green, blue)
for i=0, ledNumber - 1, 1 do
leds:set(i, red, green, blue)
end
end
-- функция, которая выключает светодиоды и таймер timerRandomLED
local function emergency()
timerRandomLED:stop()
-- так как после остановки таймера его функция выполнится еще раз, то выключаем светодиоды через секунду
Timer.callLater(1, function () changeColor(0, 0, 0) end)
end
function callback(event)
-- проверка, низкое ли напряжение на аккумуляторе
if (event == Ev.LOW_VOLTAGE2) then
emergency()
end
end
-- создание таймера, который каждую секунду меняет цвет всех светодиодов на случайный
timerRandomLED = Timer.new(1, function ()
changeColor(math.random(), math.random(), math.random())
end)
-- запуск созданного таймера
timerRandomLED:start()
Совет
Дополнительно рекомендуем ознакомиться с проектами в которых используется LED-модуль в разделе: «Проекты с модулем LED».