Страница 1 из 13
Рисунок на колесе
Добавлено: Вт мар 24, 2009 18:19:30
SeamaNCOS
Скоро можно будет наконец то выгнать "Стального коня" на простор российских дорог.
Хочу сделать рисунки на колеса с механической индикацией на Attiny2313(помойму за глаза). Один датчик положения. Одна линейка светодиодов (10-15 шт).
Вопрос такой - как можно выводить 160 столбцов на 360 градусов с плавным изменением частоты вращения от 1 до 20 ГЦ (что лучше использовать програмно таймеры прерывания или всавлять изменяемую задержку между индикацией).
Добавлено: Вт мар 24, 2009 19:05:13
ibiza11
думаю все зависит от самого алгоритма ну и универсальности схемы.
если начать с самого простого, то можно тупо вставлять задержки постоянного времени, а по датчику ресетить... сами понимаете, что красиво во всех случаях эта схема работать не будет.
можно датчиком не ресетить, а завести внешнее прерывание, считать период обращения колеса и подстраиваться под него, изменяя задержку, в этом случае лучше использовать не пустой цикл, а таймер.
а если использовать две линейки или 4 перпендикулярных.... короче много чего можно было бы желание))) замечтался)))
насчет вопроса: каким образом 160столбцов вы хотите уместить в круге???
если вы будете использовать, пусть даже 15 светодиодов, максимальное разрешение в обе стороны (гориз. и вертик.) 30 точек)))) какие 160)))
видимо я не понял вопроса))) объясните пожалуйста яснее)))
насчет 1-20 Гц плавно.... скажем так: вращение рисунка на колесе зависит от разности частот 1)вращения колеса 2)обновления рисунка
грубо говоря, если вы какждый период обновления рисунка будете опаздывать на t секунд от начала обращения колеса, то рисунок будет постепенно с каждым периодом сдвигаться относительно начального положения.
с ув.Ibiza
Re: Рисунок на колесе
Добавлено: Вт мар 24, 2009 19:08:56
Аксель
SeamaNCOS писал(а):Скоро можно будет наконец то выгнать "Стального коня" на простор
Диаметр колеса "Стального коня"?
Кстати, "стальной конь" - мотоцикл/мопед/велосипед/трактор/санки колёсные/другое?
Какие рисунки желаете выводить?
Добавлено: Вт мар 24, 2009 19:28:36
SeamaNCOS
Мотоцикл Урал. Внешний радиус светодиодов 250мм.(Отсюда 160 столбцов т.е. точек по периметру 5мм одна точка хотя можно для первого раза взять 80 столбцов)
Думал сравнивать таимеры. Т.е. каждый круг выставлять число сравнения на таимер TCCR1 получая время оборота с TCCR0 и деля полученное число на 160. тем самым сделать прерывания по таймеру, но тогда ни о какой плавности регулирования говорить не приходиться, рисунок с изменением частоты будет уходить а за тем резко вставать на место (т.к. делить 0хff 0xff плавно не выйдет)
Добавлено: Вт мар 24, 2009 19:51:58
Arlleex
А прикольно получилось бы)))))
Добавлено: Вт мар 24, 2009 19:58:35
SeamaNCOS
Да да типо того. Можно даже что нибудь вроде анимации сделать. Горящьий огонь или молнии.
Добавлено: Вт мар 24, 2009 20:15:11
Аксель
SeamaNCOS писал(а):Мотоцикл Урал. Внешний радиус светодиодов 250мм.
Радиус колеса?
Допустим 19", при 20 оборотах в секунду (20 герц Вы про это?) получаем скорость 218 км/час.
...для небольших скоростей ставят несколько линеек светодиодов. Теперь можно уточнить ТЗ. Добавить линеек светодиодов ...И включать рисовку изображения на на скорости более Х км/ч. Как-то так для начала.
...и да, видел в сети, таких пректов есть для примера много.
Добавлено: Вт мар 24, 2009 20:34:46
SeamaNCOS
Помоему тоже на 19'' это 0.4826м пириметр 1,57м при 20 об.сек. получаеться 31.4м/c а это всего 113.04 км/ч.
На счет двух линеек полностью согласен(больше портов у Тиньки не хватит).
В сети искал ничего подобного с хорошим описанием не нашел.
Рисовку можно начинать при 2-5Гц.
Но самое главное определиться с расчетом задержки между индикацией, а сколько линеек будет не суть важна.
Добавлено: Вт мар 24, 2009 20:40:17
Evgen88
Кароче делать нада так:
1. забуть про 2313 - делай на меге (например Мега48 стоит почти также, но какая разница!)
2. запускаеш 16 битный таймер
3. делаеш захват значения таймера (нога ICR) датчиком хола
4. количество столбцов должно быть 256 (это шоб облегчить жизнь твоему контроллеру

)
5. береш старший байт захваченного значения 16 битного тайммера и это значение заносиш в регистр сравнения 8 битного таймера - по переполнению которого будет выводится новая строчка
6. в момент захвата 16 битного таймера обнуляеш оба таймера и записываеш новое значение сравнения в 8 битный таймер.
Вот и все!
Но не не надейся что все так просто получится

. При использовании такого способа к концу прорисовки столбцов на колесе будет копиться погрешность 8 битного таймера ( т.к. отбрасывается дробная часть от значения захвата (младший байт) ). В итого последние столбцы будут здорово прыгать при смене скорости.
В идеале нада взять подороже контроллер с двумя 16 битными таймерами один с пределителем 256 поставить на захват значения а второй с пределителем 1 поставить на вывод столбцов.
Вот такой расклад.
Добавлено: Вт мар 24, 2009 20:56:18
Spider
SeamaNCOS писал(а):Помоему тоже на 19'' это 0.4826м пириметр 1,57м при 20 об.сек. получаеться 31.4м/c а это всего 113.04 км/ч.
Все же мне кажеться так:
R=19"=48,26 см
L = 2*Pi*R или L= 2 * 48,26 * 3,14 = 303,0728 см.
V при 20Hz = 303,0728 (см) / 100 (см в м) / 1000 (м в км) * 20 (Hz) * 3600 (сек в час) = 218,212416 км/час
Или я тоже ошибся?
Добавлено: Вт мар 24, 2009 20:59:21
Владимир К.
А такое не подойдет? Уже все готовое. И рисунки менять можно.
http://pawst.com/post/585490-ian-039-s-spoke-pov
Добавлено: Вт мар 24, 2009 21:06:19
SeamaNCOS
Evgen88 писал(а):Но не не надейся что все так просто получится

. При использовании такого способа к концу прорисовки столбцов на колесе будет копиться погрешность 8 битного таймера ( т.к. отбрасывается дробная часть от значения захвата (младший байт) ). В итого последние столбцы будут здорово прыгать при смене скорости.
Тоже самое я описал несколькими постами выше. На МЕГЕ можно добиться большей точности чем на тиньке но прыжки все равно остануться.
Именно по этому надо эксперементировать с задержкой т.к. с ней можно добиться большей точности а значит меньше прыжков.
ЕСЛИ R=19'' т.е. D=96.52см почти метр..... ВОТ ЭТО КОЛЕСО НА МОТОЦИКЛЕ.
http://pawst.com/post/585490-ian-039-s-spoke-pov (C PIC дело не имел но возьму на заметку)
Добавлено: Вт мар 24, 2009 21:23:56
Аксель
SeamaNCOS писал(а):ЕСЛИ R=19'' т.е. D=96.52см почти метр..... ВОТ ЭТО КОЛЕСО НА МОТОЦИКЛЕ
Аксель писал(а):Радиус колеса?
Допустим 19"
:)
SeamaNCOS писал(а):Помоему тоже на 19''
Чей мотоцикл?

Всё равно перемерить прийдеться самому на своём мотоцикле.
Проект на пик не смотрел. Если он там готовый и подходит - делов-то: прошить мк и собрать.

Добавлено: Вт мар 24, 2009 21:33:45
SeamaNCOS
19'' это диаметр обода ...

ну +покрышка скорость выйдет не больше 140км/ч.
Для начала всетаки хочу собрать свое на AVR.
Добавлено: Вт мар 24, 2009 22:39:02
Evgen88
Evgen88 писал(а):В идеале нада взять подороже контроллер с двумя 16 битными таймерами один с пределителем 256 поставить на захват значения а второй с пределителем 1 поставить на вывод столбцов.
В этом варианте максимальная погрешность расположения последнего столбца - 1 столбец. Прыжки в ширину 1 столбца даже не будут заметны.
Добавлено: Вт мар 24, 2009 23:07:59
Arlleex
А вот можно придумать, что бы устройство обладало АПЧ. Стоит закрепленная на колодке контакт, а на ободе подвижный, чем больше скорость, тем больше частота, МК сам определит, что делать...)))))
Добавлено: Ср мар 25, 2009 07:22:58
SeamaNCOS
Stalker46 писал(а):А вот можно придумать, что бы устройство обладало АПЧ. Стоит закрепленная на колодке контакт, а на ободе подвижный, чем больше скорость, тем больше частота, МК сам определит, что делать...)))))
Типо поставить внешний источник тактирования с умножителем частоты?
Добавлено: Ср мар 25, 2009 12:00:41
Arlleex
Да, заморочек много... Но и невсегда "железный конь" будет ехать с одной скоростью...
Добавлено: Ср мар 25, 2009 14:51:41
smac
SeamaNCOS писал(а):Типо поставить внешний источник тактирования с умножителем частоты?
Не совсем, нужно синхронизировать моменты зажигания светодиодов с частотой вращения колеса, т. е. если линейка жестко прикреплена к колесу то нужно, например, на вилке установить магнит, а на линейке датчик Хола, тогда как только ДХ сработает мы будем знать в каком положении линейка, и синхронизировать управление светодиодами. Правда, наверное, ДХ в этом случае не очень подойдет, лучше оптические датчики.
Вторая проблема - источник питания тут либо сменные батарейки, либо хитрая динамо-машина.
Добавлено: Ср мар 25, 2009 15:17:49
Arlleex
Да... С питанием, придется подумать... Устанавливать блок батареек надо...
или: разобрать диск на ободе и придумать, как туда прикошачить динамогенератор ( что на великах), оттдуа провести провода в натяжку и все)))