Контроллер ТРИК позволяет собрать робототехническую модель, не ограничивая себя в выборе «оснастки» для неё.
Он позволяет подключать цифровые и аналоговые датчики, внешние устройства по протоколам i2c и UART, оснащен двумя видеопортами и USB-разъемом.
Для подключения моторов на контроллере расположено 6 портов для сервомоторов и 4 порта для силовых моторов.
В данном разделе собрана информация о подключении к контроллеру ТРИК датчиков, моторов, камер — описан процесс тестирования подключенных устройств, их конфигурирования и эффективного использования вместе со средой программирования TRIK Studio.
Тестирование подключенных к контроллеру ТРИК устройствНастройка работы USB-камеры с контроллером ТРИКСъемка изображений на камеру ТРИК и использование их в TRIK StudioК контроллеру ТРИК можно подключать как видеомодули, так и веб-камеры с интерфейсом USB.
Видеомодуль
Веб-камера
Видеомодуль подключается к порту video1 или video2, USB веб-камеры — к порту USB.
Подключение видеомодуля к порту video2 (или video1) происходит таким образом, чтобы ножка у красного штекера была справа.
Камеру в TRIK Studio можно запустить в трех режимах:
Для инициализации видеокамеры напишите алгоритм:
После инициализации камеры на дисплее появится трансляция видео с дополнительными графическими элементами.
Внимание! По умолчанию будет включен режим Сенсор линии
. Чтобы поменять режим использования, зайдите в свойства блока «Включить видеокамеру» и смените режим на нужный.
Камера как сенсор линии необходима для решения задачи движения по линии, а также по прерывистой линии (линии-профи).
Для того чтобы включить камеру как сенсор линии, вам необходимо изменить режим работы камеры в свойствах блока «Включить видеокамеру», на Сенсор линии
. Режим Сенсор линии
имеет сенсорную переменную lineSensor.
Задача: напишите алгоритм движения робота по линии с использованием камеры.
1. Объявите переменную k
— коэффициент пропорциональности, который будет использоваться в пропорциональном регуляторе для движения робота.
2. Инициализируйте камеру как сенсор линии.
Внимание! Блок «Ждать нажатия кнопки» необходим, чтобы камера успела включиться. Когда на экране робота появится изображение с камеры, можно приступать к следующему пункту.
3. Детектируйте камеру на объекте.
4. Напишите регулятор для движения. Используйте блок «Датчик линии в переменную», который записывает показания отклонения объекта от центра экрана по оси Х
(от -100 до 100) в переменную, указанную в свойствах. Другими словами, это динамическая ошибка.
1. Запустите программу на роботе.
2. Дождитесь, пока включится видеокамера.
3. В режиме сенсора линии на экране будет отображаться 4 фиолетовые направляющие. Наведите камеру на линию таким образом, чтобы правая граница линии попадала в коридор между двумя правыми направляющими, а левая между двумя левыми.
4. Нажмите кнопку Вверх
на контроллере для детектирования объекта (линии).
Обратите внимание, что видео транслируется на экран в формате 240×140 px, а это как раз половина экрана.
Чтобы понять, что детектирование произошло, линия должна заполниться желтыми точками, как на картинке:
5. Нажмите кнопку Вниз
.
Камера как сенсор объекта необходима для решения задач распознавания и отслеживания объектов. Для того чтобы включить камеру как сенсор линии, вам необходимо изменить режим работы камеры, в свойствах блока «Включить видеокамеру», на Сенсор объекта
.
Режим Сенсор объекта
имеет сенсорные переменные: objectSensorSize, objectSensorX, objectSensorY.
Задача: напишите алгоритм распознавания объекта с использованием камеры.
1. Инициализируйте камеру как сенсор объекта.
2. Детектируйте камеру на объекте.
3. Напишите цикл с условием на выход из программы по нажатию на Esc
на ложной ветке.
4. На истинную ветку добавьте функцию присвоения координат центра объекта и диаметр в пикселях, переменным a
, b
, c
.
5. Далее добавьте вывод в консоль переменных a
, b
, c
и закончите цикл блоком «Таймер»:
1 . Запустите программу на роботе.
2. Дождитесь, пока включится видеокамера.
3. Поставьте робота таким образом, чтобы камера была направлена маленьким квадратом на объект. Нажмите кнопку Вверх
на контроллере, для детектирования объекта.
Чтобы понять, что детектирование произошло, объект должен заполниться желтыми точками, как на картинке:
4. Нажмите кнопку Вниз
на контроллере.
Камера как сенсор цвета необходима для решения задач распознавания цвета.
Для того чтобы включить камеру как сенсор линии, вам необходимо изменить режим работы камеры, в свойствах блока «Включить видеокамеру», на Сенсор цвета
.
Режим Сенсор цвета
имеет сенсорные переменные трех цветов (красный, зеленый, синий): colorSensorR, colorSensorG, colorSensorB.
В режиме сенсора цвета камера делит кадр на 9 зон и возвращает среднее значение цвета центральной зоны.
Напишите алгоритм распознавания зеленого и красного цвета с использованием камеры. Робот должен выводить в консоль цвет, который видит.
1. Инициализируйте камеру как сенсор цвета.
2. Добавьте функцию присвоения сенсорных переменных, переменным a
, b
.
3. Напишите условие, которое будет различать красный и зеленый. Учитывая, что красный — это colorSensorR = 255
, а зеленый — это colorSensorG = 255
.
1. Исполните программу на роботе. 2. Дождитесь, пока включится видеокамера. 3. Поставьте робота таким образом, чтобы камера была направлена на распознаваемый цвет.
4. Нажмите кнопку Вверх
на контроллере для начала распознавания цвета. На экран робота должен выводиться цвет, на который направлена камера (Green, Red).
На контроллере ТРИК вы можете протестировать подключенные к нему устройства:
Для этого зайдите в меню «Тестирование».
Для запуска тестирования аналоговых датчиков выберите соответствующий пункт в списке.
Порт
Конфигурация
A1–A2
Инфракрасный датчик расстояния. Пределы значений: 8–80 см.
A3–A4
Датчик касания. Значения: 0 — отсутствие нажатия, 1 — нажатие.
A5–A6
Датчик освещенности. Пределы значений: 0–100. 0 — белый, 100 — черный. Датчик должен быть установлен на расстоянии 8–15 мм от поверхности.
1. Для запуска тестирования сервоприводов выберите соответствующий пункт в списке.
2. Выберите порт, к которому подключен сервопривод. Сервоприводы подключаются к портам S1-S3.
3. Нажмите кнопку «Ввод» на контроллере для подачи питания на сервопривод.
4. Если прибавить мощность с помощью кнопки «Вправо», сервопривод будет крутиться по часовой стрелке.
5. Если убавить — против часовой стрелки.
1. Для запуска тестирования силовых моторов выберите соответствующий пункт в списке.
2. Выберите порт, к которому подключен мотор. Моторы подключаются к портам M1–M4.
3. Нажмите кнопку «Ввод» на контроллере для подачи питания на мотор.
4. Если прибавить мощность с помощью кнопки «Вправо», моторы будут крутиться вперед.
5. Если убавить — назад.
Для запуска тестирования цифровых датчиков выберите соответствующий пункт в списке.
Порт
Конфигурация
D1–D2
Ультразвуковой датчик расстояния. Пределы значений: 8–250 см.
1. Для запуска тестирования энкодеров выберите соответствующий пункт в списке.
2. Подсоедините колеса к моторам с помощью втулки.
3. Для тестирования работоспособности энкодера необходимо покрутить колесо вперед-назад и посмотреть изменения показаний энкодеров.
1. Для запуска тестирования гироскопа выберите соответствующий пункт в списке.
2. Для тестирования работоспособности гироскопа необходимо изменить положение робота в пространстве и посмотреть изменения показаний.
1. Для запуска тестирования гироскопа выберите соответствующий пункт в списке.
2. Для тестирования работоспособности акселерометра необходимо изменить положение робота в пространстве и посмотреть изменения показаний.
1. Для запуска тестирования подключенной камеры выберите соответствующий пункт в списке.
2. При правильно работающей камере, на экран должно выдаваться изображение.
Для работы с USB-камерой необходимо изменить путь к скрипту в файле system-config.xml
на контроллере ТРИК.
Это можно сделать с помощью любой из двух утилит:
1. Подключитесь к контроллеру с помощью режима «Wi-Fi точка доступа» или «Wi-Fi клиент».
2. Откройте TRIK Studio.
3. Запустите утилиту PuTTY. Для этого в главном меню откройте Инструменты → Сторонние программы → PuTTY
.
4. Введите ip-адрес контроллера (указан в параметрах сети контроллера) и нажмите «Open».
5. В открывшемся окне введите root
. Поле «Пароль» оставьте пустым.
6. Введите команду cd trik
для перехода в соответствующую директорию.
7. Для редактирования файла используйте редактор vi. Для его запуска введите vi system-config.xml
.
8. С помощью стрелок на клавиатуре перейдите на 62 строку.
9. Нажмите i
для редактирования, найдите название скрипта line-sensor-ov7670
и исправьте его на line-sensor-webcam
.
10. Для выхода из режима редактирования нажмите «Esc».
11. Введите команду :wq
и нажмите «Enter» для сохранения и выхода из редактора vi.
1 . В каталоге с установленной TRIK Studio зайдите в папку winscp
и запустите WinSCP.exe.
2. Заполните данные:
File protocol: SCP.
Host name — ip-адрес контроллера.
User name: root.
Поле «Password» оставьте пустым.
3. Нажмите кнопку «Login».
4. Если у вас появилось окно «Warning», нажмите «Yes».
5. Перейдите в папку trik
.
6. Найдите и откройте файл system-config.xml
.
7. В открывшемся файле на 62 строке найдите название скрипта line-sensor-ov7670
и исправьте его на line-sensor-webcam
.
8. Сохраните изменения, нажав Ctrl+s
или на иконку «дискеты» в левом верхнем углу, и закройте редактор.
Внимание! Данная функциональность находится в тестовом режиме. Для её использования необходимо установить тестовую версию прошивки. Будем рады вашим отзывам и предложениям по данной функциональности. Пишите в службу поддержки с примечанием «Тест работы с изображениями в TRIK Studio».
Разработка алгоритма в неизменных условиях позволяет быстрее его отладить и протестировать, а также оценить и сравнить качество работы алгоритма и его модификаций. Это особенно важно для алгоритмов компьютерного зрения, когда любое, даже малое, движение камеры значительно меняет условия съемки и, как результат, захваченное изображение.
В данной статье будет рассказано как снять изображения на камеру контроллера ТРИК, выгрузить эти данные на компьютер и использовать их в TRIK Studio для разработки и отладки алгоритмов компьютерного зрения.
Внимание! Подключите камеру в порт «video2» до включения контроллера.
1. В меню контроллера выберите пунктТестирование → Камера
.
2. На экране отобразится изображение, снятое на камеру. Оно будет сохранено во внутреннюю память контроллера.
Для того чтобы сделать ещё фотографии, необходимо нажать на контроллере кнопку «Выход» (крестик) и вновь выбрать пункт меню Камера
.
1. Подключите контроллер ТРИК к компьютеру.
Подключение контроллера ТРИК к компьютеру и смартфону2. В адресной строке браузера введите IP-адрес контроллера. Откроется веб-интерфейс ТРИК.
Веб-интерфейс контроллера ТРИК3. Перейдите на вкладку «Images» и нажмите «Download all», чтобы скачать архив с изображениями.
4. Перейдите в папку со скаченным архивом и разархивируйте его. Теперь вы можете отобрать те изображения, которые лучше всего подходят для разработки и тестирования текущего алгоритма.
1. Откройте в TRIK Studio настройки робота.
Как открыть настройки робота?2. В открывшемся окне выберите Модель робота → 2D-модель
и пропишите путь к загруженным ранее изображениям.
3. Теперь при вызове getPhoto будут последовательно подгружаться изображения из указанной папки.
Функция getPhoto1. Скачайте файл на компьютер или создайте новый проект и скопируйте код:
2. Запустите код в режиме отладки, используя в качестве режима исполнения программы двумерную модель. На дисплее контроллера будут последовательно выводиться изображения.
Для питания контроллера ТРИК используются:
1. Блок питания с выходным напряжением 12 В и выходным током 2 А или блок питания 12 В 5 А (зависит от комплектации набора).
2. Трёхячеечный литий-полимерный аккумулятор (LiPo) напряжением 12,6 В и ёмкостью 2200 мАч или 4200 мАч.
У применяемого аккумулятора 2 разъема:
1. Специфический двухконтактный с силовыми проводами для подключения к контроллеру.
2. Четырехконтактный для подключения к специализированному зарядному устройству с балансиром.
Для заряда аккумуляторов необходимо использовать только специализированные зарядные устройства.
Следите за состоянием аккумулятора в процессе заряда. При появлении вздутия элементов немедленно отсоедините батарею от зарядного устройства и переместите её на огнеупорное покрытие. Не возобновляйте процесс заряда неисправной батареи.
Короткое замыкание вызывает быстрый разряд, сила тока при этом превышает допустимую, что может стать причиной выхода аккумулятора из строя, возгорания и тяжёлых ожогов. Не допускайте короткого замыкания батарей и отдельных элементов.
Не храните аккумуляторы под прямым солнечным светом.
Не допускайте падения напряжения ниже 3,2 В на один элемент батареи. Глубокий разряд приводит к необратимым повреждениям аккумулятора и создаёт риск возгорания.
При длительном хранении аккумулятора (более недели), напряжение одного элемента батареи должно быть в диапазоне 3,7-3,87 В. Несоблюдение этого условия существенно снижает срок службы аккумулятора.
Не подвергайте аккумулятор нагреву, в том числе самонагреву выше 45 °C. Если аккумулятор нагрелся выше 45 °C, ему следует дать остыть до комнатной температуры перед последующей эксплуатацией или зарядом.
Берегите аккумулятор от механических повреждений. При возникновении ударных нагрузок внимательно осмотрите аккумулятор на огнеупорной поверхности. Продолжайте эксплуатацию батареи только при полной уверенности в отсутствии повреждений.
В случае отсутствия или не использования балансира, превышения напряжения или тока заряда, перезаряда любой из ячеек аккумулятора, аккумулятор может не только выйти из строя, но и самовоспламениться.
Для заряда LiPo-аккумуляторов должно применяться только специализированное микропроцессорное зарядное устройство со сложным циклом заряда и встроенным балансиром.
Перед началом заряда внимательно осмотрите аккумулятор.
Заряжайте аккумуляторы на огнеупорной поверхности.
Перед началом процесса заряда дайте аккумулятору возможность остыть до температуры окружающей среды.
Рекомендуется контролировать температуру аккумулятора во время заряда. Нагрев более 40-50 °С говорит о том, что что-то идёт не так или аккумулятор испорчен. Следует немедленно отключить аккумулятор от зарядного устройства.
Сдайте литий-полимерные аккумулятор на утилизацию в специализированную компанию в вашем населенном пункте.
Литий-полимерные аккумуляторы являются экологически чистыми. Но по соображениям безопасности литий-полимерные аккумуляторы лучше полностью разряжать перед утилизацией.
Если аккумулятор физически поврежден (надут, расколот и т.д.), то его не следует разряжать. Перейдите ниже сразу к пункту 5.
Убедитесь, что аккумулятор не нагрет (не превышает температуру окружающей среды)
Поместите аккумулятор в огнеупорный контейнер или в ведро с песком.
Подключите батарею к разряднику. Установите разряд напряжения на минимальное возможное значение.
Разрядите батарею пока его напряжение не достигнет 1 В или ниже.
Подготовьте пластиковый контейнер (не используйте металлический) с холодной водой и смешайте 1/2 стакана соли на литр воды. Оставьте аккумулятор в контейнере с соленой водой не менее чем на 2 недели.
Достаньте аккумулятор из соленой воды, заверните его в газету или бумажные полотенца.
Выкиньте с обычным мусором.