Похоже серьезно залип винт, буду заново писать прогу.
На всякий случай выложу сюда основную структуру данных (файла проекта, с которым и работаем программой):
Проект состоит из:
- Модели робота, которая состоит из сервоприводов, размещенных на рабочем пространстве с назначенными именами и номерами GPIO;
- Набора шаблонов "движений", каждое из которых состоит из:
- Набора "позиций", каждая из которых состоит из:
- Набора "положений" некоторых сервоприводов;
- Паузы, которую ждём после этого "положения" перед следующим
Планирую сначала сделать тупое выполнение - задаём положение, потом пауза, потом следующее, а следующим шагом сделать плавное выполнение - чтобы во время паузы сервы плавно двигались к следующему положению.
Ну и видимо некую программу-пульт управления, которой можно за-bind-ить на кнопки разные движения и рулить роботом.
Добавлено спустя 2 часа 32 минуты 26 секунд:Основная кстати заморочка - не могу придумать красивое решение для сопоставления сервопривода и его положений.
Пока на имя зацеплю, но вроде и перецеплять хочется и не ясно за что. Может внутренний идентификатор какой придумать, а может еще чего, а может и не надо всего этого