Доброго дня форумчане, давно занимаюсь станками, в основном были на LinuxCNC. Думаю, что не плохо его знаю.
Но пришло время делать станок на платформе без компьютера и со специфичными задачами. С электроникой справиться не сложно, но вот с программным обеспечением затык.
По всем осям станок сканирует объект и не плохо воспроизводит, НО есть одна ось, которая должна держать определённый вектор. И тут я упёрся, если есть математики, подскажите плиз!
Задача такова, отметём пока в сторону все ненужные оси и работаем с тремя.
Предположим есть оси X, Y, известны их точки назначения (не в GCode, а в шагах и даже в мм.
И есть третья ось, которая должна держать вектор по направлению движения по осям XиY.
Пишу на С++, но и просто помощь в математике вопроса буду благодарен. ( давненько я уже учился, мало помню.) за ранее спасибо!
Математика. Или полезные формулы в жизнь.
-
- Мастер
- Сообщения: 2100
- Зарегистрирован: 14 май 2016, 09:40
- Репутация: 326
- Настоящее имя: Станислав Ерофеев
- Откуда: Санкт-Петербург
Re: Математика. Или полезные формулы в жизнь.
Мгновенное значение направления вектора скорости на плоскости XY индициировать что-ли? Типа флюгера?
-
- Новичок
- Сообщения: 11
- Зарегистрирован: 13 авг 2010, 18:44
- Репутация: 0
- Контактная информация:
Re: Математика. Или полезные формулы в жизнь.
Так как я не закоренелый программист а больше по электронике, я использовал библиотеку легенды нашего интернета в этих делах Алекса Гивера под названием GPlaner, из пакета GStepper. Так вот в GStepper есть возможность вытащить значение скорости, а в GPlaner это динамически вычесляемое значение и такое не реализовано. Я уже тоже об этом думал. Писать своё ядро под управление моторами нет ни навыков как у Алекса ни времени.
Но думаю по 2м известным векторам и нулевой точкой как нибудь можно вычислить нужный вектор.
Пока я в тупике из за недостатка знаний.
Но думаю по 2м известным векторам и нулевой точкой как нибудь можно вычислить нужный вектор.
Пока я в тупике из за недостатка знаний.
-
- Почётный участник
- Сообщения: 2394
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 302
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: Математика. Или полезные формулы в жизнь.
Что значит "вычислить вектор", в каких величинах вы его хотите видеть? Вектор это направление - задается обычно 2 способами: 1. нулевая координата - точка прохождения вектора; 2. нулевая координата, 1 или 2 угловых значения к оси/плоскости (плоскость или объем).
Если же вы хотите получить значение скорости зная скорость по каждой координате, то теорема Пифагора вам в помощь.
Если же вы хотите получить значение скорости зная скорость по каждой координате, то теорема Пифагора вам в помощь.
-
- Новичок
- Сообщения: 11
- Зарегистрирован: 13 авг 2010, 18:44
- Репутация: 0
- Контактная информация:
Re: Математика. Или полезные формулы в жизнь.
Да, прошу прощения, за не полную инфу.
Имеем 2 оси X и Y, есть нулевая точка оси координат, известны переменные положения Х и Y, известна их конечная точка ( оси координат) , значения в шагах моторов либо в миллиметрах. Вот и нужен вектор ( направление ) на точку пересечения Х и Y . Достаточно просто угол относительно одной из осей, дальше ,- проще. О, к стати да, имея 2 стороны можно попробовать вычислить угол. Переведу градусы к шагам. Завтра попробую!
Имеем 2 оси X и Y, есть нулевая точка оси координат, известны переменные положения Х и Y, известна их конечная точка ( оси координат) , значения в шагах моторов либо в миллиметрах. Вот и нужен вектор ( направление ) на точку пересечения Х и Y . Достаточно просто угол относительно одной из осей, дальше ,- проще. О, к стати да, имея 2 стороны можно попробовать вычислить угол. Переведу градусы к шагам. Завтра попробую!
-
- Новичок
- Сообщения: 11
- Зарегистрирован: 13 авг 2010, 18:44
- Репутация: 0
- Контактная информация:
Re: Математика. Или полезные формулы в жизнь.
Блин, вопрос снят. Через угол всё оказалось проще.
Сразу не допёр, что 2 катета известны. А дальше
tg(α) = a / b .
Прошу прощения за глупый вопрос!
Мотор чётко удерживает вектор, только немного пришлось усреднить значения для устранения дёрганий.
Сразу не допёр, что 2 катета известны. А дальше
tg(α) = a / b .
Прошу прощения за глупый вопрос!
Мотор чётко удерживает вектор, только немного пришлось усреднить значения для устранения дёрганий.