И так СВЕРШИЛОСЬ. Выношу на рассмотрение робо-общественности реализованый алгоритм на С который вычисляет углы серв для ноги хексапода, или любой 3х сервной конечности, который можно впихнуть в любой 8 битный МК (где памти хватит).
Откопаны основные глюки, и вроде (тьху, тьху) работает,
Вся математика вынесена в файл Mathematics.c
Расчеты ведутся в фиксированой запятой.
Формат входных даных 1:10:5 . т.е. 5 см = 5*32, -5 см = 65536-5*32
Основные функции:
calcG(x,y); - Вычисление угла поворота ноги и длины на которую развернута нога для второй функции
CalcNextStep(z,wDlinaW); - вычисление углов на двух сервах ноги
Алгоритм положения ноги отабатывает следующим макаром:
(скрины с софтины отладчика моего творчиства, из отладчика пересылается только координата и калибровка)
Как показано для 2 и 3 четверти, ноги поджимаем под себя.
Результат первых тестов смотрим на фото:
По ходу отладки алгоритма буду обновлять версии файлов.
Результат выкладывается в таком виде чтоб чаще вдохновение приходило