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

Инициализация коннектора I2C

RI_SDK_CreateModelComponent

Описание метода

Image

Создает компонент устройства RISDK для конкретной модели (одного из I2C адаптеров: cp2112, ch341). Этот метод содержит параметры моделей устройств, необходимые для расчетов при их управлении. Этот блок предполагает работу метода RISDK расширяющего компонент устройства.

Что такое I2C ?

I2C это шина внутренней связи для создания управляющей электроники. Используется для обмена данными между контроллером, датчиками и исполнительными устройствами. Это физический компонент присутствующий в роботе, который передает управляющие сигналы от компьютера к датчикам и исполнительным устройствам робота. Благодаря своей архитектуре, позволяет подключать к одной шине, состоящей из двух проводов (SDA для передачи данных и SCL для тактовых импульсов), до 127 устройств одновременно, не используя дополнительного оборудования.

I2C адаптер - микроконтроллер для управления набором устройств.

В Blockly заданны I2C адаптеры:

  • CP2112

Использует разъем microUSB для подключения к компьютеру.

  • CH341

Использует обычный разъем USB для подключения к компьютеру.

Более подробно об устройстве I2C можно прочесть в документации RISDK.

Использование блока

Данный блок используется в поле инициализации в блоке инициализации и выполнения.

I2C адаптер это верхний уровень в иерархии электронных компонентов робота. Он подключается напрямую к компьютеру через USB кабель и уже к нему подключаются остальные устройства.

Image

Этой же логике следуют блоки инициализации. Инициализация I2C вкладывается напрямую в блок инициализации и выполнения и уже в него вкладываются блоки инициализации следующих электронных компонентов робота.

Image

Такая конфигурация блоков инициализации отражает конфигурацию физических устройств из примера выше.

Принимаемые блоки

Поле рассматриваемого блока принимает блок инициализации ШИМ преобразователя и блок инициализации датчика тока.

Image Image

Адресация

Адрес на шине I2C определяется физически, самим устройством, например с помощью замыкания перемычек на плате PCA9685. В следствии чего адреса компонентов задаются в блоках, вкладываемых в блок инициализации I2C.