Ниже — не анимация. Это ядро CPG-Ходок (генератор походки на связанных осцилляторах Хопфа), скомпилированное в WebAssembly и запущенное прямо в браузере. Оно вычисляет фазу каждой ноги — а мы рисуем собаку по этим числам. Тот же код работает на Arduino и в ПЛИС, бит-в-бит.
Осцилляторы Хопфа выходят на предельный цикл и расходятся по фазам походки…
Ядро держит 4 нелинейных осциллятора на устойчивом предельном цикле — по одному на ногу. Матрица фазовых связей задаёт, на сколько сдвинуты ноги друг относительно друга: так получаются рысь, шаг, галоп и иноходь. Переключение режима не рвёт фазу — состояние плавно втягивается в новый рисунок. При старте все ноги синфазны (калибровка), потом расходятся и амплитуда выходит на цикл — робот «находит ритм». Всё это доказано побитово и одинаково работает на Arduino, Raspberry Pi и в ПЛИС.