Доброе ввремя. mobistrike, в этом видео https://youtu.be/0llRyQKpjqc красные цифры я так понимаю скорость вращения? В чем она выражена и при какой минимальной скорости просмотривается строчка полностью?
Нет. Красная строчка это напряжение питания кулера(вентилятора) .
здравствуйте .увидела ваш форум ,хоть и не много не по теме ,но в ней упомянуты вещи основанные на POV эффекте и решила к вам обратиться ,по очень интересующему для меня вопросу ? я собрала проект с POV эффектом "Глобус 200х40" из ранних описаний, выложенных людьми .то есть просто повторила проект. получилось не плохо ,но вот очень сильно хотелось разобраться в теории расчетов данных для прерываний .то есть как все это рассчитывается .нашла некую статью в которой показано как рассчитываются прерывания ,но следуя по этим рекомендациям ни чего не получается.не стыковки и остаются вопросы ? поделитесь пожалуйста информацией если не составит большого труда теорией расчета подобных устройств . поподробней если можно от самой печки. про зрительный эффект человеческого глаза написано много я поняла, микросхемы как работают в курсе.а теории грамотной для расчета пов эффекта ни где не нашла. ссылку на сайт где я брала расчеты приложу ,еще приложу код мною собранного проекта глобуса и ссылку на видео что бы можно было понять о чем речь.https://www.youtube.com/watch?v=cQhBm_EgB0w&t=7s обратиться к его создателям не получиться ,проект убран из интернета ,остались только видео и форум 5 летней давности ни схем ни описания больше нет .в описании к проекту было не много инфы ,но поковырявшись все же собрала и работает. на сайте схем нет , указаны расчеты, какие то понятны ,а вот эта строка ставит меня в тупик . частота контроллера МГЦ 40/4 =10 .почему и откуда взялось 4 ,а не 6 или 13 или 1.а в коде из ардуино время сектора 20 миллисекунд расскажите как правильно рассчитывается эта задержка .может сумбурно написано ,но помогите мне разобраться в теории для понимания и дальнейшей модернизации этого проекта. расскажите пожалуйста поподробнее .будьте так добры .хочется все понять подробно вот ссылка на те расчеты которые я нашла .больше ничего не нашла . с сайта схем нет переход на первоисточник результатов не принёс. .https://cxem.net/sound/light/light43.php
сумела . а вот 40/4 не поняла .вы тоже не роделись всё знающим ,учились понемногу .поэтому и обратилась кто знает больше меня вот ссылка на видео этой поделки https://youtu.be/we_4YsRtuVkhttps://youtu.be/j3__OmuBMqU на RGB 48 LED может поможете ,разъясните все .
сумела . а вот 40/4 не поняла .вы тоже не роделись всё знающим ,учились понемногу .поэтому и обратилась кто знает больше меня вот ссылка на видео этой поделки https://youtu.be/we_4YsRtuVkhttps://youtu.be/j3__OmuBMqUна RGB 48 LED может поможете ,разъясните все .
хорошо .если это так ,то причем здесь цвета, если вентилятор с сайта "схем нет" имеет моно хром .и про RGBW там и близко нет упоминания. расчеты я нашла там и решила ими воспользоваться для пересчета данных по коду сделанной самоделки в обратную сторону .что бы разобраться с исходными данными для этого проекта ,не подскажете как правильно считать такие вещи
просто эти расчеты мне показались более приближенными к тем что я искала ,но они как то не корректно выдают результат.поэтому бог с этими 40/4 .меня интересует сам код который я приложила в самом первом описании. там указана частота сектора 20 миллисекунд.так как коменты в коде написаны на немецком ,я их перевела на русский.и код поняла ,но не поняла как рассчитали эти 20 миллисекунд время сектора
попробуйте так ,открыть ссылку в новой вкладке .у меня все ссылки работают. проверяла .
вы хотите скормить девайсу другую картинку, так сделайте разбивку оной 200 х 40 х 3 цвета
Выводить в строке, где на каждый светодиод идёт три провода
15 корпусов, делим на 3 цвета и умножим на 8 бит будет 40
кодировать вертикальную строку пикселей так
поняла . я хочу сделать из этого проекта что бы картинка двигалась .что бы можно было добавлять простые легенькие простенькие гифки или легкую анимацию два или три движения или буковки выезжали ,а не просто двигались по окружности ,как статическая картинка и более ничего, поменяла контроллер на мегу2560 ,памяти побольше стало,можно SD карту приделать ,но это придется написать код заново .вот и решила разобраться с кодом . в принципе там нет ничего сложного как я поняла . считывает код картинки и отправляет её по SPI . а как это доделать пока не поняла .к этому проекту прилагалось ява приложение для создания всяких картинок ,программа примитивна , а как можно получить такой же двоичный код ,но в каком нибудь другом приложении для создания картинок . не подскажете . я могу поделиться полностью этим проектом только облака я не держу. почта нужна .
хорошо .как я поняла, все мои желания можно реализовать не переписывая сильно код на новый лад .но тогда надо сначала в какой то проге конвертировать картинку в такой же код .так как родное приложение не позволяет преобразовывать анимацию ,а только 8 цветные статические картинки можно трансформировать в код. может есть такие приложения не знаете?а как в коде этот вывод прописать чтобы получилось ,то что вы говорите ,но картинки выводятся не как кораблик плавно выплывает из за кулис.на сцену, а просто сменяются по очереди с вращением по часовой стрелки . помогите пожалуйста поправить код
да, накосячил, чтобы не мерцало выводить надо 16, а лучше 20 кадров в секунду, то-есть 50 миллисекунд
Как-то Вы очень поспешно согласились.
Вероятно, Вы не очень представляете, откуда берутся эти цифры: 16 и 20 (точнее, 24), просто "что-то всплыло в памяти".
Так вот, эти цифры справедливы для классического кинопроекционного аппарата, показывающего 16-24 кадра в секунду (период 62.5 - 41.67 мс соответственно). Точнее, для его обтюратора, который примерно 2/3 длительности кадра показывает его, а на 1/3 - перекрывает световой поток. Т.е. показ кадра - примерно 41.7 - 27.8 мс, а пауза между кадрами - 20.8 - 13.9 мс. Вот именно от величины этой последней и зависит, видит человек мерцание или нет.
В случае одномоментной (а не длительной - как в кино) засветки фрагмента изображения (пикселя) интервал между такими засветками не должен превышать указанных величин, что соответствует частоте кадров 48 - 72 Гц. Ничего не напоминает? Да, все правильно, именно так вычисляются желательные частоты для ЭЛТ, где по самому принципу работы засветка люминофора осуществляется мгновенно. Как раз частота около 48 Гц (точнее 50 Гц) используется в отечественной системе телевидения, а 72 Гц - рекомендуемая частота для дисплеев компьютеров на ЭЛТ.
В рассматриваемом в данной теме случае актуальны именно эти цифры: 13.9-20.8 мс на кадр, что соответствует 48-72 fps.
еще вопрос? а как работает фото датчик. везде пишут что он обнуляет кадр, а как же тогда все это действует? то есть проходя над фото датчиком кадр устанавливается в начальный счет, а дальше я думаю так, что после каждого оборота проталкивается строка данных в регистр и опять также прошел протолкнул данные и тд. или я что то понимаю не так но на деле так и получается когда я кручу круг, то каждый оборот сменяет разным количество засвеченных на дугах диодов. поясните мне пожалуйста принцип работы для лучшего понимания этой схемы. пожалуйста
После срабатывания датчика начинается цикл на вывод 200 меридианов. Каждый меридиан выводится через SPI в сдвиговые регистры, после 15 байт (30 микросекунд) все регистры разом выдают меридиан на диоды и потом задержка 20 МИКРОСЕКУНД, а не милисекунд !
После срабатывания датчика начинается цикл на вывод 200 меридианов. Каждый меридиан выводится через SPI в сдвиговые регистры, после 15 байт (30 микросекунд) все регистры разом выдают меридиан на диоды и потом задержка 20 МИКРОСЕКУНД, а не милисекунд !
я говорил о полном кадре, полный цикл вывода всех 200 растров повторять по времени 20 миллисекунд
ua6em из какой строки это следует ? На перевод не смотрите !
я жеж не настоящий сталевар и, когда решил повторить меня аппаратное решение отпугнуло, 15 корпусов однако, код особо не разбирал, поэтому рассуждаю чисто теоретически )))
я что то не до понимаю. если данные выводятся на регистры после того как кадр пройдет фото диод, то производя остановку мотора конструкции или вращая руками после срабатывания диода,не делая полного оборота по дуге должны будут согласно программе загораться диоды, пройдя еще круг над фотодиодом произойдет обнуление и цикл повториться вновь. а на деле получается что если руками прокручивать дугу каждый раз проходя датчик на дугах меняется количество засвеченных светодиодов и если не делать полный оборот то они так и горят в статическом режиме.сделала оборот рукой другое количество и цвета появились еще оборот рукой другая картина и тд. так как же все это работает
тогда получается что в коде прописан некий счётчик который и считает количество проходов над фотодиодом и когда кадр полностью сформируется из 200 вертикальных строк включается защелка и кадр начинает двигаться по окружности некоторое время. спустя некоторое время начинает формироваться другой кадр. так или совсем не так? поясните?
теперь начинаю понимать. то есть, пока дуга крутиться. создаются импульсы от фотодиода и частота этих импульсов зависящая от скорости вращения синхронизирует скорость передачи данных по SPI, а как я заметила, если выбрать скорость не 1200 об/мин, а меньше, примерно 500 об/мин, то изображение становиться через строку.
получается время вывода одного кадра 10/6 миллисекунды, чтобы не "видеть" эффект мерцания выводить надо не менее 16 кадров в секунду, чтобы мозг зафиксировал картинку сюжет должен длиться 4 секунды, считайте сколько памяти потребуется
Доброе ввремя. mobistrike, в этом видео https://youtu.be/0llRyQKpjqc красные цифры я так понимаю скорость вращения? В чем она выражена и при какой минимальной скорости просмотривается строчка полностью?
Нет. Красная строчка это напряжение питания кулера(вентилятора) .
здравствуйте .увидела ваш форум ,хоть и не много не по теме ,но в ней упомянуты вещи основанные на POV эффекте и решила к вам обратиться ,по очень интересующему для меня вопросу ? я собрала проект с POV эффектом "Глобус 200х40" из ранних описаний, выложенных людьми .то есть просто повторила проект. получилось не плохо ,но вот очень сильно хотелось разобраться в теории расчетов данных для прерываний .то есть как все это рассчитывается .нашла некую статью в которой показано как рассчитываются прерывания ,но следуя по этим рекомендациям ни чего не получается.не стыковки и остаются вопросы ? поделитесь пожалуйста информацией если не составит большого труда теорией расчета подобных устройств . поподробней если можно от самой печки. про зрительный эффект человеческого глаза написано много я поняла, микросхемы как работают в курсе.а теории грамотной для расчета пов эффекта ни где не нашла. ссылку на сайт где я брала расчеты приложу ,еще приложу код мною собранного проекта глобуса и ссылку на видео что бы можно было понять о чем речь.https://www.youtube.com/watch?v=cQhBm_EgB0w&t=7s обратиться к его создателям не получиться ,проект убран из интернета ,остались только видео и форум 5 летней давности ни схем ни описания больше нет .в описании к проекту было не много инфы ,но поковырявшись все же собрала и работает. на сайте схем нет , указаны расчеты, какие то понятны ,а вот эта строка ставит меня в тупик . частота контроллера МГЦ 40/4 =10 .почему и откуда взялось 4 ,а не 6 или 13 или 1.а в коде из ардуино время сектора 20 миллисекунд расскажите как правильно рассчитывается эта задержка .может сумбурно написано ,но помогите мне разобраться в теории для понимания и дальнейшей модернизации этого проекта. расскажите пожалуйста поподробнее .будьте так добры .хочется все понять подробно вот ссылка на те расчеты которые я нашла .больше ничего не нашла . с сайта схем нет переход на первоисточник результатов не принёс. .https://cxem.net/sound/light/light43.php
инна, сомнительно, что вы этот проект повторили, если даже не понимаете что такое 40/4
сумела . а вот 40/4 не поняла .вы тоже не роделись всё знающим ,учились понемногу .поэтому и обратилась кто знает больше меня вот ссылка на видео этой поделки https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU на RGB 48 LED может поможете ,разъясните все .
сумела . а вот 40/4 не поняла .вы тоже не роделись всё знающим ,учились понемногу .поэтому и обратилась кто знает больше меня вот ссылка на видео этой поделки https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU на RGB 48 LED может поможете ,разъясните все .
в оригинале 40 и 4 цвета )))
PS фото вашего шара можно увидеть?
хорошо .если это так ,то причем здесь цвета, если вентилятор с сайта "схем нет" имеет моно хром .и про RGBW там и близко нет упоминания. расчеты я нашла там и решила ими воспользоваться для пересчета данных по коду сделанной самоделки в обратную сторону .что бы разобраться с исходными данными для этого проекта ,не подскажете как правильно считать такие вещи
вот ссылки на ролики должны работать ,проверьте https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU
https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU">http://е https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU
https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU">http://е https://youtu.be/we_4YsRtuVk https://youtu.be/j3__OmuBMqU
смотрим ссылку на ваш первый ролик -
попробуйте так ,открыть ссылку в новой вкладке .у меня все ссылки работают. проверяла .
У PIC частота 40 МГц ... таймер видимо на 4 делит это ...
У PIC частота 40 МГц ... таймер видимо на 4 делит это ...
там атмега 328
я про https://cxem.net/sound/light/light43.php имеено там есть 40/4=10
в 52 посте вывод идёт через SPI Настроенный на 4 МГц.
я про https://cxem.net/sound/light/light43.php имеено там есть 40/4=10
да, увидел и, там всё подробно описано
просто эти расчеты мне показались более приближенными к тем что я искала ,но они как то не корректно выдают результат.поэтому бог с этими 40/4 .меня интересует сам код который я приложила в самом первом описании. там указана частота сектора 20 миллисекунд.так как коменты в коде написаны на немецком ,я их перевела на русский.и код поняла ,но не поняла как рассчитали эти 20 миллисекунд время сектора
попробуйте так ,открыть ссылку в новой вкладке .у меня все ссылки работают. проверяла .
вы хотите скормить девайсу другую картинку, так сделайте разбивку оной 200 х 40 х 3 цвета
Выводить в строке, где на каждый светодиод идёт три провода
15 корпусов, делим на 3 цвета и умножим на 8 бит будет 40
кодировать вертикальную строку пикселей так
инна Там это начальное значение, потом оно подстраивается под реальную частоту вращения ...
Главное что вам надо знать, это что картинка разбита на 200 меридианов и каждый меридиан это 15 байт (40*3 битов) ...
поняла . я хочу сделать из этого проекта что бы картинка двигалась .что бы можно было добавлять простые легенькие простенькие гифки или легкую анимацию два или три движения или буковки выезжали ,а не просто двигались по окружности ,как статическая картинка и более ничего, поменяла контроллер на мегу2560 ,памяти побольше стало,можно SD карту приделать ,но это придется написать код заново .вот и решила разобраться с кодом . в принципе там нет ничего сложного как я поняла . считывает код картинки и отправляет её по SPI . а как это доделать пока не поняла .к этому проекту прилагалось ява приложение для создания всяких картинок ,программа примитивна , а как можно получить такой же двоичный код ,но в каком нибудь другом приложении для создания картинок . не подскажете . я могу поделиться полностью этим проектом только облака я не держу. почта нужна .
разбивать гифку на картинки, каждые 20 миллисекунд выводить очередную, видимо так
ua6em глаз не увидит 20 мс ... 200, а лучше 500
[quote=Komandir]
ua6em глаз не увидит 20 мс ... 200, а лучше 500
да, накосячил, чтобы не мерцало выводить надо 16, а лучше 20 кадров в секунду, то-есть 50 миллисекунд
704 строка задаёт время вывода одной картинки
плюс надо case ов добавить на все картинки или цикл намутить
P.S. С progmem нет ли косяков у mega ? (не уверен, но в мозгу что то крутится на этот счет) ...
хорошо .как я поняла, все мои желания можно реализовать не переписывая сильно код на новый лад .но тогда надо сначала в какой то проге конвертировать картинку в такой же код .так как родное приложение не позволяет преобразовывать анимацию ,а только 8 цветные статические картинки можно трансформировать в код. может есть такие приложения не знаете?а как в коде этот вывод прописать чтобы получилось ,то что вы говорите ,но картинки выводятся не как кораблик плавно выплывает из за кулис.на сцену, а просто сменяются по очереди с вращением по часовой стрелки . помогите пожалуйста поправить код
Gif и видео можно(нужно) разбить на кадры и каждый кадр перевести в формат для этого скетча...
с выводом надо уже потом разбираться и это уже наверное в разделе Ищу исполнителя ...
то что светодиоды на дуге (- - хорошо для глобуса, для картинок лучше бы дугу выпрямить |-
инна. Хоть вы и женщина, но знаки препинания я бы советовал ставить ПЕРЕД пробелом, а не после. Ибо режет глаз, и сразу ваш уровень падает...
все поняла спасибо
все поняла спасибо
да и с Именем как бы определитесь, а то когнитивный диссонанс у форумчан
ua6em глаз не увидит 20 мс ... 200, а лучше 500
да, накосячил, чтобы не мерцало выводить надо 16, а лучше 20 кадров в секунду, то-есть 50 миллисекунд
Вероятно, Вы не очень представляете, откуда берутся эти цифры: 16 и 20 (точнее, 24), просто "что-то всплыло в памяти".
Так вот, эти цифры справедливы для классического кинопроекционного аппарата, показывающего 16-24 кадра в секунду (период 62.5 - 41.67 мс соответственно). Точнее, для его обтюратора, который примерно 2/3 длительности кадра показывает его, а на 1/3 - перекрывает световой поток. Т.е. показ кадра - примерно 41.7 - 27.8 мс, а пауза между кадрами - 20.8 - 13.9 мс. Вот именно от величины этой последней и зависит, видит человек мерцание или нет.
В случае одномоментной (а не длительной - как в кино) засветки фрагмента изображения (пикселя) интервал между такими засветками не должен превышать указанных величин, что соответствует частоте кадров 48 - 72 Гц. Ничего не напоминает? Да, все правильно, именно так вычисляются желательные частоты для ЭЛТ, где по самому принципу работы засветка люминофора осуществляется мгновенно. Как раз частота около 48 Гц (точнее 50 Гц) используется в отечественной системе телевидения, а 72 Гц - рекомендуемая частота для дисплеев компьютеров на ЭЛТ.
В рассматриваемом в данной теме случае актуальны именно эти цифры: 13.9-20.8 мс на кадр, что соответствует 48-72 fps.
когда-то представлял )))
вот вам спасибо за пояснения. как же я не сообразила. ведь точно, это же эффект кино состоящий из кадров.
andriano я не про частоту кадров писал, а про вывод "новых" изображений ...
еще вопрос? а как работает фото датчик. везде пишут что он обнуляет кадр, а как же тогда все это действует? то есть проходя над фото датчиком кадр устанавливается в начальный счет, а дальше я думаю так, что после каждого оборота проталкивается строка данных в регистр и опять также прошел протолкнул данные и тд. или я что то понимаю не так но на деле так и получается когда я кручу круг, то каждый оборот сменяет разным количество засвеченных на дугах диодов. поясните мне пожалуйста принцип работы для лучшего понимания этой схемы. пожалуйста
После срабатывания датчика начинается цикл на вывод 200 меридианов. Каждый меридиан выводится через SPI в сдвиговые регистры, после 15 байт (30 микросекунд) все регистры разом выдают меридиан на диоды и потом задержка 20 МИКРОСЕКУНД, а не милисекунд !
После срабатывания датчика начинается цикл на вывод 200 меридианов. Каждый меридиан выводится через SPI в сдвиговые регистры, после 15 байт (30 микросекунд) все регистры разом выдают меридиан на диоды и потом задержка 20 МИКРОСЕКУНД, а не милисекунд !
я говорил о полном кадре, полный цикл вывода всех 200 растров повторять по времени 20 миллисекунд
ua6em из какой строки это следует ? На перевод не смотрите !
дополню 84 пост - и этот вывод продолжается пока датчик снова не сработает.
Сколько в итоге FPS на выходе не знаю, но думаю близко к 90 ...
ua6em из какой строки это следует ? На перевод не смотрите !
я жеж не настоящий сталевар и, когда решил повторить меня аппаратное решение отпугнуло, 15 корпусов однако, код особо не разбирал, поэтому рассуждаю чисто теоретически )))
вот вам спасибо за пояснения. как же я не сообразила. ведь точно, это же эффект кино состоящий из кадров.
телевизора, только в телевизоре развёртка сверху вниз, а здесь по вертикали
я что то не до понимаю. если данные выводятся на регистры после того как кадр пройдет фото диод, то производя остановку мотора конструкции или вращая руками после срабатывания диода,не делая полного оборота по дуге должны будут согласно программе загораться диоды, пройдя еще круг над фотодиодом произойдет обнуление и цикл повториться вновь. а на деле получается что если руками прокручивать дугу каждый раз проходя датчик на дугах меняется количество засвеченных светодиодов и если не делать полный оборот то они так и горят в статическом режиме.сделала оборот рукой другое количество и цвета появились еще оборот рукой другая картина и тд. так как же все это работает
тогда получается что в коде прописан некий счётчик который и считает количество проходов над фотодиодом и когда кадр полностью сформируется из 200 вертикальных строк включается защелка и кадр начинает двигаться по окружности некоторое время. спустя некоторое время начинает формироваться другой кадр. так или совсем не так? поясните?
считайте, что фотодиод это синхроимпульс
andriano я не про частоту кадров писал, а про вывод "новых" изображений ...
Вы написали "глаз не увидит", а это не соответствует реальности. Вне зависимости от того, "новое" это изображение или "старое".
теперь начинаю понимать. то есть, пока дуга крутиться. создаются импульсы от фотодиода и частота этих импульсов зависящая от скорости вращения синхронизирует скорость передачи данных по SPI, а как я заметила, если выбрать скорость не 1200 об/мин, а меньше, примерно 500 об/мин, то изображение становиться через строку.
получается время вывода одного кадра 10/6 миллисекунды, чтобы не "видеть" эффект мерцания выводить надо не менее 16 кадров в секунду, чтобы мозг зафиксировал картинку сюжет должен длиться 4 секунды, считайте сколько памяти потребуется
Проходит импульс.
Выводятся 200 меридианов.
И вот тут:
721
if
(counter < (N_O_S)) {sector_time--;}
722
if
(counter > (N_O_S)) {sector_time++;}
подстраивается длительность свечения одного меридиана под частоту вращения двигателя.
Если 1200, то выходит 1200/60=20 кадров в секунду.
чтобы не "видеть" эффект мерцания выводить надо не менее 16 кадров в секунду,
а поясните пожалуйста, оставшееся. что для чего if (counter == N_O_S) {flag = 1;}
end_time - время показа одной картинки и оно в пределах 10-20 секунд
v_offset - это для того что бы изображение поворачивалось (при v_offset=0 картинка будет стоять на месте)
с TOL не совсем понятно - попробуйте менять (имхо что то с связано с допуском на частоту вращения мотора)
спасибо, я все поняла. остальное как я поняла, это отправка данных по SPI. правильно?