All streams
Search
Write a publication
Pull to refresh
29
0
Андрей Хорькин @andrewkhorkin

Программист

Send message
Всё зависит от программы, что напишешь в коде — так и будет работать. Сила у моторов конечно больше, чем у человека и реакции можно добиться большей. Есть планы заменить мой алгоритм игры на нейросеть RL, но нужно время.
Сколько нужно выполнить шагов (передвинуть вперёд/назад или поворот клюшки) передаётся в команде с компьютера на Ардуино, а сколько реально выполнено шагов мотором не учитываю. Обратная связь с реальностью только через камеру.
Шум моторов в процессе игры
www.youtube.com/watch?v=6oS7r0hbwhk&t=830

Быстрое передвижение вперёд и назад, код для Ардуино для драйверов TMC2100 4->256
int m_iMLineStepPin = STEP_PIN;
unsigned long i = 0;
unsigned long iDelayStep1 = 0;
unsigned long m_iMLineStepCount = 1000;

while (m_iMLineStepCount > 0) {
iDelayStep1 = (200000000/(i*i*i+100000)+4)/4;
digitalWrite(m_iMLineStepPin, HIGH);
digitalWrite(m_iMLineStepPin, LOW);
delayMicroseconds(iDelayStep1);

if (m_iMLineStepCount%4==0) i++;
m_iMLineStepCount--;
}
Это уже получится почти как в фильме Живая сталь
Если убрать случайность, игрок-человек будет постоянно держать левую руку на вратаре и ожидать удара — так будет не интересно играть
Про распознавание и программную часть расскажу в последующих видео/статьях, выкладываю по-очереди, как всё было исторически — механика, распознавание объектов, алгоритм игры.

Элемент случайности специально добавлен (30% случаев), с ним игра проходит интереснее. Некоторые голы просто нереальные.
Спасибо!
У меня набралось 3 разных типа моторов 1.7А, 2A, т.к. брал по-очереди для тестирования, остановился на 2А. Они бьют сильнее, шайба часто летит по воздуху, если надо.
Сейчас нашёл на Ali моторы на 2.5А, попробую позже.

Продолжение будет, есть много идей, как улучшить/упростить/облегчить механику, с софтом можно улучшать бесконечно. Сейчас переношу «мозги» с десктопа на Raspbery Pi 4.

Движок на больших скоростях шаги пропускает, по этому подсчёт шагов не использую, местоположение игроков и клюшки беру только с распознавания через нейросеть.
В роботе сейчас установлены TMC2100 — 2 черных v1 и 10 белых v1.3 (заказывал по-очереди для пробы). Они разные, но у обоих пришлось пины ms припаивать. У v1 (черные) вручную ms припаять очень сложно, даже под стеклом, слишком мелко 1мм. Для v1.3 (белые) паять ms гораздо удобнее, т.к. на плате они крупнее. Питание использую 36 вольт, а вот на счёт нагрева не подскажу, у меня всё холодное, т.к. через пин Enable сразу отключаю драйвер, если не нужен.
2

Information

Rating
Does not participate
Location
Домодедово, Москва и Московская обл., Россия
Date of birth
Registered
Activity