Перейти к основному содержимому

Класс «irCamera»

Предоставляет доступ к инфракрасному датчику MLX90640, подключенному по шине I2C, в режиме камеры и сенсора.

МетодОписание
initИнициализирует ИК-камеру и запускает захват кадров.
getImageВозвращает цветное изображение в виде массива байтов.
readSensorВозвращает среднее значение температуры в специальной шкале в указанном участке кадра.
stopОстанавливает захват кадров.

init

Инициализирует инфракрасную камеру и запускает захват кадров.

Синтаксис

brick.irCamera().init()

getImage

Возвращает цветное изображение ширины 32 и высоты 24 пикселя в виде массива байтов в формате «rgb32».

Синтаксис

image = brick.irCamera().getImage()

Пример

Вывод изображения на экран.

image = brick.irCamera().getImage()
brik.display().show(image, 32, 24, "rgb32")

readSensor

Возвращает среднее значение температуры в специальной шкале в указанном участке кадра.

Кадр делится на квадраты сеткой, по умолчанию 3 на 3, размерность сетки можно задать в model-config.xml на роботе. Квадраты индексируются с 1. То есть (1, 1) — это левый верхний край кадра, (2, 2) — его центр.

Возвращаемое значение — среднее значение температуры в указанном квадрате в следующей шкале:

  • Значение меньше 0 — камера не инициализирована
  • 0 — соответствует температуре льда из морозильной камеры и ниже
  • 1 — соответствует температуре воды из холодильника
  • 2 — соответствует температуре в помещении
  • 3 — соответствует температуре тела человека
  • 4 — соответствует температуре тёплой воды
  • 5 — соответствует температуре горячей (близкой к температуре кипения) воды
  • 6 — соответствует температуре больше температуры кипения воды

Синтаксис

temp = brick.irCamera().readSensor(x, y)

В качестве параметра необходимо указать индексы квадрата x и y.

stop

Синтаксис

Останавливает захват кадров до следующего вызова init().

brick.irCamera().stop()