roboforum.ru

Технический форум по робототехнике.

Вопросы новичка.

Как собрать и запрограммировать робота на Arduino(Freeduino, Roboduino, Seeduino ...). Используем Wiring и Processing.

Re: Вопросы новичка.

Сообщение dimamichev » 09 июл 2018, 10:01

Статья интересная, в математику надо вникнуть, но опять же косинусы, тангенсы. На картинке плавные кривые, не по отрезкам строят значит. Собачка вряд ли с ходу нарисуется, но траектория метеорита, думаю осилю :)
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Re: Вопросы новичка.

Сообщение Madf » 09 июл 2018, 13:08

Dmitry__ писал(а):Советую очень крепко задуматься, для чего все это нужно... ...подведу теорию под практику :)

На самом деле, если поглядеть все проекты в инете на эту тему, то мы увидим тоже проблема разрешений, но они компенсируют её максимально (минимальными телодвижениями карандаша).
Взяты самые дешевые сервы, если хотим высокую точность, то надо:

1. взять что-то получше, по мощнее сервы;
2. уйти от 8 битного ШИМа, взять к примеру PCA9685(12-бит, а так было бы вообще лучше поискать и все 16).
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

Re: Вопросы новичка.

Сообщение dimamichev » 09 июл 2018, 15:02

Попробовал цельное рисование по точкам сразу на всём поле. Массив скудный 19*32 точки, но можно увеличить легко до 38*64 (если в Ардуино можно записывать 64 битные числа). Однако опять же неудобство, "видим изображение в массиве в обычных координатах", а надо учитывать конические. Поэтому сначала рисую в такой сетке, потом забиваю массив. Жаль не хватает знаний автоматизировать этот процесс.Сервы конечно надо менять, но пока не это главное (как кажется мне).
Вложения
РИСУНОК 2.JPG
РИСУНОК 1.JPG
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Re: Вопросы новичка.

Сообщение Madf » 09 июл 2018, 15:13

dimamichev писал(а):если в Ардуино можно записывать 64 битные числа


Оно на-уй не надо, у тебя проблема с алгоритмом, задача в разы проще чем тебе кажется. Подсказка: в памяти легко умещается массив экрана 128х64=1024 байт, только в данном случае, экран рисуется полумесяцем (как у тебя на картинке, обычные два цикла).
Впрочем задача была вообще другой, зачем ты полез опять в примитивы. :P
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

Re: Вопросы новичка.

Сообщение Scorpio » 09 июл 2018, 16:52

Dmitry__ писал(а):Но это для одного определенного места на поле. Какая зависимость для рисования вертикальной линии в другом секторе?

Зависимость будет другая, но это нас не волнует. Любую точку на поле, куда может дотянуться манипулятор мы можем пересчитать в соответствующие углы положения для двух серв (МК прежде всего ЭВМ). Потом просто даем команду двигаться от текущей точки к следующей, зная какими д.б. конечные углы поворота серв. Вот тебе и зависимость.
Dmitry__ , что это ты там про собак говорил?! :x
Аватара пользователя
Scorpio
 
Сообщения: 2670
Зарегистрирован: 30 сен 2008, 18:49
Откуда: Где-то в Латинской Америке

Re: Вопросы новичка.

Сообщение Dmitry__ » 09 июл 2018, 18:43

Scorpio писал(а):Dmitry__ , что это ты там про собак говорил?!

А я что? Я ничего? Просто собачка красиво рисуется. :pardon: Надо на манипуляторе dimamichev-а такое нарисовать, массивом точек, будет очень показательно.
Кста, если бы ему сервы с обратной связью, то он мог бы рисовать прямо манипулятором, при этом снимать данные и записывать в лог, а потом воспроизводить. Можно так и библиотеку букв собрать.
dimamichev переходи на сервы с обратной связью из темы:
http://roboforum.ru/forum67/topic11643.html
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Вопросы новичка.

Сообщение Madf » 09 июл 2018, 19:53

Можно и эти дешевки доработать, один провод всего лишь вывести надо. )
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

Re: Вопросы новичка.

Сообщение dimamichev » 09 июл 2018, 20:33

Не дешёвки, а товары народного потребления.

Про обратную связь, ничего кроме подключения к подвижному контакту переменного резистора в голову не приходит.
Вложения
DSCN0318.JPG
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Re: Вопросы новичка.

Сообщение Dmitry__ » 09 июл 2018, 21:00

dimamichev писал(а):Про обратную связь, ничего кроме подключения к подвижному контакту переменного резистора в голову не приходит.

Так это оно и есть :), выводишь этот контакт с 2-х серв, подкл. к аналоговым входам дуины, отключаешь управление сервой, чтоб сервы расслабились, и получил 3д рисовальный манипулятор.

Добавлено спустя 48 секунд:
Просто сервы, из той темы, имеют еще раз в 10 меньшие люфты...
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Вопросы новичка.

Сообщение dimamichev » 09 июл 2018, 21:44

Madf писал(а):
dimamichev писал(а):если в Ардуино можно записывать 64 битные числа



Впрочем задача была вообще другой, зачем ты полез опять в примитивы. :P

1.Можно рисовать что то кроме букв - однако очень муторно вбивать 1 в таблицу...
2.Поточечная прорисовка как вариант прорисовки цифр и букв. Но специфика, опустить-подержать-поднять перо позволяет вместо фломастера использовать выжигатель по металлу, столик для бумаги (держится на магнитах) на манипулятор это не что иное как лист для рисования выжигателем. Состоит выжигатель из кусочка стальной проволоки и виброзвонка.
Вложения
РИС. 2.JPG
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Re: Вопросы новичка.

Сообщение Scorpio » 09 июл 2018, 22:08

А я тут все о своем:
formula.jpg

L1, L2 известные нам размеры в мм, желаемые Х,Y, задаем значит тоже в мм, относительно центра крепежа манипулятора.
Соответственно получим углы поворота серв в радианах, зная координаты Х,Y.
Пересчитать радианы в мС для серв проще всего так:
AmS = map(A, 0, PI, 0, 2000);
Попробуй на своей рисовалке, а то лень эмулятор сего механизма писать :)
Я все еще считаю, что не так важно тут само рисование, как научиться элегантно решать поставленные задачи + писать красивый код.
Аватара пользователя
Scorpio
 
Сообщения: 2670
Зарегистрирован: 30 сен 2008, 18:49
Откуда: Где-то в Латинской Америке

Re: Вопросы новичка.

Сообщение Dmitry__ » 09 июл 2018, 22:18

Scorpio писал(а):А я тут все о своем:

2-ю линию не получится нарисовать параллельно первой по этой формуле, т.к. манипулятор повернется в полярной системе координат и надо будет тянуться до следующего символа по-другому.
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Вопросы новичка.

Сообщение dimamichev » 09 июл 2018, 22:32

Scorpio писал(а):А я тут все о своем:
formula.jpg

L1, L2 известные нам размеры в мм, желаемые Х,Y, задаем значит тоже в мм, относительно центра крепежа манипулятора.
Соответственно получим углы поворота серв в радианах, зная координаты Х,Y.
Пересчитать радианы в мС для серв проще всего так:
AmS = map(A, 0, PI, 0, 2000);
Попробуй на своей рисовалке, а то лень эмулятор сего механизма писать :)
Я все еще считаю, что не так важно тут само рисование, как научиться элегантно решать поставленные задачи + писать красивый код.

Я не напишу сам по чужим мыслям скетч, уж тем более грамотный...Но попробую предложенный. Вот только на этих дешёвых народного потребления сервах микросекунды от 500 (0 градусов) до 2500 (180 градусов). Рычаги одинаковые по 65 мм. Начальные значения углов нужных дам.
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Re: Вопросы новичка.

Сообщение Scorpio » 09 июл 2018, 22:46

Dmitry__ писал(а):2-ю линию не получится нарисовать параллельно первой по этой формуле

Это формула не для линии, а для точки. Линия состоит из множества, близко расположенных точек, соединенных друг с другом. Если точки будут параллельно, то и линии будут параллельно. А углы конечно будут другими.
Dmitry__ порой производит впечатление умного, образованного человека :)

Добавлено спустя 1 минуту 46 секунд:
dimamichev писал(а): микросекунды от 500 (0 градусов) до 2500 (180 градусов).

Правильно, это я ошибся.
Аватара пользователя
Scorpio
 
Сообщения: 2670
Зарегистрирован: 30 сен 2008, 18:49
Откуда: Где-то в Латинской Америке

Re: Вопросы новичка.

Сообщение dimamichev » 09 июл 2018, 22:54

То есть речь идёт о скетче-построении сетки прямоугольной, а не полярной-конической?
Аватара пользователя
dimamichev
 
Сообщения: 1381
Зарегистрирован: 03 янв 2013, 16:27

Пред.След.

Вернуться в Arduino и другие Xduino

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2