Начинаем разработку фонокорректора. На каком варианте фонокорректора останавливаемся?
Для активации новой учетной записи и ее подтверждения на Форуме - необходимо связаться с администратором по электронной почте p-i-n-o-k-i-o@mail.ru.
Все новые учетные записи не прошедшие подтверждения администратором воспринимаются как спам.
Все новые учетные записи не прошедшие подтверждения администратором воспринимаются как спам.
POEMA'NU - 6С52Н ММ-фонокорректор с двумя переключаемыми входами
- poty
- Профи
- Сообщения: 4571
- Зарегистрирован: 24 мар 2014, 10:00
- Откуда: Россия, Москва
- Благодарил (а): 158 раз
- Поблагодарили: 460 раз
POEMA'NU - 6С52Н ММ-фонокорректор с двумя переключаемыми входами
Начинаем разработку фонокорректора. На каком варианте фонокорректора останавливаемся?
Владислав
- Алаев Ян
- Основатель Форума
- Сообщения: 1155
- Зарегистрирован: 19 мар 2014, 12:05
- Откуда: Саратов
- Благодарил (а): 248 раз
- Поблагодарили: 117 раз
это не лечение - это попытка понять в какой стадии находится контроллер в момент, когда входы не переключаются. Если он, например, завис или не может проснуться, то он не выйдет из этого состояния и при попытке выключить корректор, так как там работает тот же механизм внешнего прерывания. Если же все выключается, значит с модулем все в порядке и цикл программы выполняется, тогда я бы стал искать проблемы в других местах.poty писал(а):но "лечение" полным выключением и здесь выглядит странно.
Дело в том, что неисправность такого характера не свойственна контроллерам. Там сравнительно короткий исполняемый цикл и неисправность либо есть, либо нет, не может она накапливаться или проявляться спустя время.Роман Мирошниченко писал(а):Я склонен связывать это явление со сменой прошивки. В первоначальном варианте проблем не было, а после перепрограммирования я почти не слушал проигрыватель - он был разобран.
Кстати, а зачем Вы его разобрали после перепрошивки?
- Роман Мирошниченко
- Заслуженный Ветеран
- Сообщения: 4370
- Зарегистрирован: 09 май 2014, 13:31
- Откуда: Саратов
- Благодарил (а): 557 раз
- Поблагодарили: 178 раз
- Контактная информация:
Ян, GARRARD был разобран.Алаев Ян писал(а):Кстати, а зачем Вы его разобрали после перепрошивки?

Я слушал Дуаль, а там один тонарм. Поэтому я переключателем входов не пользовался. Начал пользоваться буквально с неделю (как собрал проигрыватель) и вот заметил.
Вот хронология:
13 октября - фонокорректор включен в систему, замечаний по работе переключателя нет;
5 декабря - я разобрал проигрыватель, переключателем входов не пользуюсь;
25 декабря - мы поменяли прошивку корректора, переключателем входов не пользуюсь;
19 января - я собрал проигрыватель с одним тонармом, переключателем входов не пользуюсь;
22 января - я установил второй тонарм, начал пользоваться переключателем входов.
Таким образом я хочу показать, что относительно начала пользования ошибка произошла фактически после перепрошивки. Она может быть связана и с изменением математики, и с тем, что мы тревожили провода.
Я отслежу ситуацию.
- Роман Мирошниченко
- Заслуженный Ветеран
- Сообщения: 4370
- Зарегистрирован: 09 май 2014, 13:31
- Откуда: Саратов
- Благодарил (а): 557 раз
- Поблагодарили: 178 раз
- Контактная информация:
"Глюк" снова проявился
После прослушивания двух пластинок, в течении которого я лишь один раз переключал входы корректора (туда и обратно - успешно!), при повторном желании сменить вход этого не получилось.
Выключение проблему не лечит, переключалка работать не начинает.
Однако после включения, корректор работает на том входе, который был выбран перед выключением. Т.е. если даже работал первый вход, а на второй корректор не переключался, я выключил его в положении, когда переключатель находится на втором (не работающем!) входе, при повторном включении ситуация поменяется. Работать будет второй вход, а на первый переключаться не будет. Я это проверил раз пять наверно. Так было каждый раз. Вход удается переключить через выключение корректора.
Интересно, что в процессе выключения (когда моргает индикатор) звук не пропадает и не затухает, а воспроизводится с уменьшенной, но не ровной громкостью. Как бы двумя-тремя сменами уровней. При включении так же.
Кратковременное обесточивание (порядка 1 мин.) ситуацию не исправило. Однако после продолжительного обесточивания (примерно на 5-10 мин.) все восстановилось.
Выключение проблему не лечит, переключалка работать не начинает.
Однако после включения, корректор работает на том входе, который был выбран перед выключением. Т.е. если даже работал первый вход, а на второй корректор не переключался, я выключил его в положении, когда переключатель находится на втором (не работающем!) входе, при повторном включении ситуация поменяется. Работать будет второй вход, а на первый переключаться не будет. Я это проверил раз пять наверно. Так было каждый раз. Вход удается переключить через выключение корректора.
Интересно, что в процессе выключения (когда моргает индикатор) звук не пропадает и не затухает, а воспроизводится с уменьшенной, но не ровной громкостью. Как бы двумя-тремя сменами уровней. При включении так же.
Кратковременное обесточивание (порядка 1 мин.) ситуацию не исправило. Однако после продолжительного обесточивания (примерно на 5-10 мин.) все восстановилось.
- Алаев Ян
- Основатель Форума
- Сообщения: 1155
- Зарегистрирован: 19 мар 2014, 12:05
- Откуда: Саратов
- Благодарил (а): 248 раз
- Поблагодарили: 117 раз
1. Последний Ваш пост был от 27.01. Глюк проявился 14.02. Эти две недели корректор эксплуатировался, входы переключались или все лежало без движения?
2. В каком режиме находится корректор, когда Вы его не слушаете? Он полностью обесточен или находится в ждущем/включенном режиме?
Вот тут нашел что-то похожее http://robotosha.ru/arduino/arduino-interrupts.html
Если процессор в режиме сна, то существует время пробуждения, которое может занять до нескольких миллисекунд пока тактирование опять наберет скорость. Это время будет зависеть от установок фьюзов (конфигурационных регистров) и того, насколько глубоко процессор ушел в сон.
После того, как процессор проснулся, возможно, потребуется некоторое время, чтобы стабилизировать свой таймер. Например, вы можете увидеть «мусор» на последовательном порту, пока он синхронизируется. Если это проблема есть, вы можете установить короткую задержку после выхода из режима сна.
2. В каком режиме находится корректор, когда Вы его не слушаете? Он полностью обесточен или находится в ждущем/включенном режиме?
сам факт того, что корректор выключается, говорит о том, что программа не виснет. Т.е. контроллер адекватно обрабатывает входящее прерывание и выключает корректор.Роман Мирошниченко писал(а):Выключение проблему не лечит, переключалка работать не начинает.
Это правильное поведение. При включении контроллер смотрит положение выбранного входа и включает его. Пока не понятно, почему вход не включается до этого. Это косвенно говорит о том, что с контактами все хорошо. Если, конечно, Вы не трясете его при этом.Роман Мирошниченко писал(а):Однако после включения, корректор работает на том входе, который был выбран перед выключением.
Очень странное поведение. Надо подумать.Роман Мирошниченко писал(а):Работать будет второй вход, а на первый переключаться не будет. Я это проверил раз пять наверно. Так было каждый раз. Вход удается переключить через выключение корректора.
Я бы хотел понять, данный глюк проявляется только спустя некоторое время после работы или хоть раз наблюдался сразу после включения (при этом включение было после продолжительного выключенного состояния)? Пытаюсь понять где искать...Роман Мирошниченко писал(а):Кратковременное обесточивание (порядка 1 мин.) ситуацию не исправило. Однако после продолжительного обесточивания (примерно на 5-10 мин.) все восстановилось.
Вот эта фраза навела меня на одну мысль. С программной точки зрения есть разница между включением входа при первом включении и включением входа во время работы. Я поясню. Когда прибор включается, контроллер еще не спит, это важный момент. Пока он не спит он проверяет состояние входа (соответственно, он включает нужный вход) и запускает процедуру включения, после чего засыпает глубоким сном. А вот когда мы переключаем вход в уже рабочем режиме, то контроллер пробуждается ото сна и лишь потом анализирует состояние входа и производит переключение. У меня есть предположение, что по факту прерывания (щелкнули переключателем входа) процессор просыпается, но не успевает проснуться до конца (время пробуждения должно быть документировано в datasheet) и именно по этой причине, что ядро процессора не успело проснуться он пропускает идущую следом команду на переключение реле, он пропускает это действие, соответственно вход не переключается, а дальше идет команда заснуть опять. Это и приводит к такому результату. Я подумаю еще в этом направлении, но слова Романа явно на это указывают.Роман Мирошниченко писал(а):Вход удается переключить через выключение корректора.
Вот тут нашел что-то похожее http://robotosha.ru/arduino/arduino-interrupts.html
Если процессор в режиме сна, то существует время пробуждения, которое может занять до нескольких миллисекунд пока тактирование опять наберет скорость. Это время будет зависеть от установок фьюзов (конфигурационных регистров) и того, насколько глубоко процессор ушел в сон.
После того, как процессор проснулся, возможно, потребуется некоторое время, чтобы стабилизировать свой таймер. Например, вы можете увидеть «мусор» на последовательном порту, пока он синхронизируется. Если это проблема есть, вы можете установить короткую задержку после выхода из режима сна.
- poty
- Профи
- Сообщения: 4571
- Зарегистрирован: 24 мар 2014, 10:00
- Откуда: Россия, Москва
- Благодарил (а): 158 раз
- Поблагодарили: 460 раз
Версия интересная... Информация о необходимости задержки имеется в datasheet, однако, это крайне малая величина. Для переключения реле выполняются команды определения направления переключения, да и само переключение выполняется наверняка не одной командой. Я к тому, что не исключено, что "съедаются" какие-то команды, только нужно понять какие.
У меня сложилось мнение, что в момент просыпания что-то резко увеличивает потребление и шунтирующих конденсаторов не хватает для восполнения энергии. Уменьшение напряжения не позволяет открыть транзисторы управления или переключить реле (тут нужно смотреть, как всё это реально соединено).
У меня сложилось мнение, что в момент просыпания что-то резко увеличивает потребление и шунтирующих конденсаторов не хватает для восполнения энергии. Уменьшение напряжения не позволяет открыть транзисторы управления или переключить реле (тут нужно смотреть, как всё это реально соединено).
Владислав
- Алаев Ян
- Основатель Форума
- Сообщения: 1155
- Зарегистрирован: 19 мар 2014, 12:05
- Откуда: Саратов
- Благодарил (а): 248 раз
- Поблагодарили: 117 раз
Тоже может быть. В любом случае, явно прослеживается связь межу состоянием, когда контроллер не спит и все работает и когда мы щелкаем реле после пробуждения. Вообще, до момента подачи команды на срабатывание реле много чего происходит. Алгоритм приблизительно такой: контроллер спит -> просыпается из-за внешнего прерывания -> ставит флаг, что требуется анализ состояния входов и из прерывания выходит -> попадает в основной цикл программы, где видит этот флаг -> анализирует текущую ситуацию, включает нужный вход -> снимает флаг выполненной процедуры -> после чего опять засыпает. После такой последовательности как-то не верится, что контроллер не успел проснуться к моменту включения реле. Я скорее поверю, что контроллер не попадает в прерывание... надо подумать.
А что-то еще питается от 5В у нас? или только контроллер?poty писал(а):У меня сложилось мнение, что в момент просыпания что-то резко увеличивает потребление и шунтирующих конденсаторов не хватает для восполнения энергии. Уменьшение напряжения не позволяет открыть транзисторы управления или переключить реле (тут нужно смотреть, как всё это реально соединено).
- poty
- Профи
- Сообщения: 4571
- Зарегистрирован: 24 мар 2014, 10:00
- Откуда: Россия, Москва
- Благодарил (а): 158 раз
- Поблагодарили: 460 раз
Вот здесь и может быть засада. Чтобы поставить флаг внутри прерывания контроллеру необходимо проснуться. Я читал в datasheet, что длительность воздействия импульса, вызывающего прерывание, должна быть такой, чтобы контроллер:Алаев Ян писал(а):контроллер спит -> просыпается из-за внешнего прерывания -> ставит флаг, что требуется анализ состояния входов и из прерывания выходит -> попадает в основной цикл программы, где видит этот флаг ->
а) успел проснуться (включая синхронизацию таймера);
б) выполнил внутреннюю процедуру инициирования прерывания;
в) выполнил прерывание.
Возможно, на каком-то этапе происходит сбой. Например, из-за дребезга контактов, сигнал "проснуться" прошёл, а к моменту п.(б) сигнал пропал. В этом случае контроллер прерывание не инициализирует.
Владислав
- poty
- Профи
- Сообщения: 4571
- Зарегистрирован: 24 мар 2014, 10:00
- Откуда: Россия, Москва
- Благодарил (а): 158 раз
- Поблагодарили: 460 раз
Они же тоже потребляют, как и светодиод. Правда, они потребляют постоянно, т.е., не могут быть источником турбулентностей во включенном состоянии.Алаев Ян писал(а):А какие там силовые реле? у нас там оптосимисторы.
Примерно на 100мА по тепловому режиму. По возможностям - до 1А легко может дать.Алаев Ян писал(а):А на какой ток рассчитан БП на 5В?
Владислав
- Алаев Ян
- Основатель Форума
- Сообщения: 1155
- Зарегистрирован: 19 мар 2014, 12:05
- Откуда: Саратов
- Благодарил (а): 248 раз
- Поблагодарили: 117 раз
на всякий случай отмечу, что для выключения контроллер просыпается аналогично и там он успевает это сделать. Допустим, проблема в дребезге контактов переключателя входов. Попробуем сделать временную задержку в прерывании?poty писал(а):Вот здесь и может быть засада. Чтобы поставить флаг внутри прерывания контроллеру необходимо проснуться.
ну тогда БП тут точно ни при чем.poty писал(а):Примерно на 100мА по тепловому режиму. По возможностям - до 1А легко может дать.
- Роман Мирошниченко
- Заслуженный Ветеран
- Сообщения: 4370
- Зарегистрирован: 09 май 2014, 13:31
- Откуда: Саратов
- Благодарил (а): 557 раз
- Поблагодарили: 178 раз
- Контактная информация:
Ого... я с телефона, отвечать на столько вопросов сложно. Сейчас добирусь до компа...

1 - Я переключаю вход и вдруг глюк, переключения не происходит.
2 - Я жду еще пару секунд и поворачиваю ручку селектора обратно, после чего снова пробую.
Хочу сказать, что после проявления глюка я пробую еще раз и другой. Но неистового щелкания селектором при этом конечно же нет.
Ну, дальше в Ваших дебатах я уже потерял понимание. Если, что-то с меня нужно - я тут рядом.
Да, я эксплуатировал корректор (хоть и не очень активно). Проблем с переключением входов не возникало.Алаев Ян писал(а):1. Последний Ваш пост был от 27.01. Глюк проявился 14.02. Эти две недели корректор эксплуатировался, входы переключались или все лежало без движения?
Я сейчас не обесточиваю аппаратуру. Внял замечаниям Владислава, что процедуру включения нужно уважать. Даже получаю от этого удовольствие. Так что корректор постоянно находится в ждущем режиме, в выключеном состоянии.Алаев Ян писал(а):2. В каком режиме находится корректор, когда Вы его не слушаете? Он полностью обесточен или находится в ждущем/включенном режиме?
Согласен по поводу контактов. Нет, я не трясу его конечно же.Алаев Ян писал(а):При включении контроллер смотрит положение выбранного входа и включает его. Пока не понятно, почему вход не включается до этого. Это косвенно говорит о том, что с контактами все хорошо. Если, конечно, Вы не трясете его при этом.

Этот глюк я осознанно констатирую второй раз всего лишь. Проявился он после продолжительного прослушивания (порядка полутора часов). В ходе этого прослушивания переключалось все нормально, но вдруг глюкануло. Я музыку слушаю каждый день. Поэтому перерыв во включении как правило не более 15-20 часов. Однако, на этот раз он был дольше (примерно двое суток). Ибо в предыдущий день я ушел рано/вернулся поздно.Алаев Ян писал(а):Я бы хотел понять, данный глюк проявляется только спустя некоторое время после работы или хоть раз наблюдался сразу после включения (при этом включение было после продолжительного выключенного состояния)? Пытаюсь понять где искать...
Мне логика вполне понятна. Я лишь добвалю свой поведенченский алгоритм в такой ситуации.Алаев Ян писал(а):У меня есть предположение, что по факту прерывания (щелкнули переключателем входа) процессор просыпается, но не успевает проснуться до конца (время пробуждения должно быть документировано в datasheet) и именно по этой причине, что ядро процессора не успело проснуться он пропускает идущую следом команду на переключение реле, он пропускает это действие, соответственно вход не переключается, а дальше идет команда заснуть опять.
1 - Я переключаю вход и вдруг глюк, переключения не происходит.
2 - Я жду еще пару секунд и поворачиваю ручку селектора обратно, после чего снова пробую.
Хочу сказать, что после проявления глюка я пробую еще раз и другой. Но неистового щелкания селектором при этом конечно же нет.
Возможно "это из другой оперы", но я обратил внимание, что при выключении/включении не происходит плавного затухания (возростания) сигнала, как на обычной ламповой технике. Сигнал изменяется волнами.poty писал(а):У меня сложилось мнение, что в момент просыпания что-то резко увеличивает потребление
Ну, дальше в Ваших дебатах я уже потерял понимание. Если, что-то с меня нужно - я тут рядом.

- poty
- Профи
- Сообщения: 4571
- Зарегистрирован: 24 мар 2014, 10:00
- Откуда: Россия, Москва
- Благодарил (а): 158 раз
- Поблагодарили: 460 раз
Там немного всё сложнее. Судя по описанию, процесс прерывания из сна состоит из нескольких несвязанных между собой, но следующих друг за другом процедур (пишу по памяти, могу ошибаться):Алаев Ян писал(а):Ну т.е. мы попадаем в прерывание, потом на задержку, чтобы контроллер наверняка проснулся, потом ставим флаг что требуется анализ состояния входов и выходим из прерывания.
- детектирование необходимости проснуться (время d1); после этого запускается процедура восстановления таймера и выход на обработку причины просыпания (время d2);
- детектирование необходимости прерывания (время d3);
- инициирование прерывания - переход по адресу из таблицы прерываний (время d4);
- восстановление после прерывания - возврат по адресу основной программы (время d5);
- начало выполнения основной программы (время d6).
Я предположил, что за время d1+d2 изменяется состояние порта, инициировавшего просыпание и детектирования необходимости прерывания не происходит. Я вот только не помню, что в этом случае делает процессор - засыпает опять или на какое-то время возвращается в основную программу? Скорее - второе. В этом случае, можно и не анализировать флаг, выставляемый в прерывании, а просто сравнить, изменилось ли состояние? В этом случае - проснулся процессор, а произошло прерывание или нет - нам не важно, мы определяем изменение состояния прямым опросом нужного нам порта.
Владислав
- Роман Мирошниченко
- Заслуженный Ветеран
- Сообщения: 4370
- Зарегистрирован: 09 май 2014, 13:31
- Откуда: Саратов
- Благодарил (а): 557 раз
- Поблагодарили: 178 раз
- Контактная информация:
Но, штука-то просто СУПЕР!
Не могу поддержать ВАШ серьезный разговор...
Но, я смог прийти домой пораньше. Сразу за пластинки конечно же.
Я ведь свой новый тонарм толком-то еще не отслушал.
Так вот, я должен сказать, что сейчас все отлично работает. И сам факт наличия этой "переключалки" в корректоре - ну это смысл моего виниловодства. Я ей не щелкаю конечно то и дело (просто с дивана лень вставать
). Но, над пластинкой у меня все время висит два тонарма. И как-только какой-нибудь момент в музыке "зацепит" - такой кайф его переслушать в другой подаче.
И особый кайф в том, что оба тонарма поют на одном корректоре. Это дает существенную прогнозируемость изменений звука при переходе с одного на другой. раньше я применял два корректора и знал, что они при 90%-ой идентичности конструктива, дают разное звучание. Начиная с уровня фона и заканичая уровнем громкости. Сейчас же пурист во мне более чем удовлетворен. При переключении я меняю конкретно звукосниматель. И если я сейчас говорю о характере звучания, это отностися конкретно к спарке тонарм+головка.
Но, я смог прийти домой пораньше. Сразу за пластинки конечно же.

Так вот, я должен сказать, что сейчас все отлично работает. И сам факт наличия этой "переключалки" в корректоре - ну это смысл моего виниловодства. Я ей не щелкаю конечно то и дело (просто с дивана лень вставать

- seurf
- Дорогой Гость
- Сообщения: 1055
- Зарегистрирован: 12 май 2016, 19:54
- Откуда: Волгоград
- Благодарил (а): 198 раз
- Поблагодарили: 160 раз
Знаю, что умничать- себе во вред, но не сдержался. Каюсь. Нельзя ставить тонарм на то же место, которое только что прослушано. Как подушка после сна, винил должен выпрямиться, после воздействия предыдущего катка ( иглы/тонарма). Необходимо выдерживать паузу, минимум 30 минут, после предыдущего проигрывания. Это если пластинку беречь? Если все равно, то все равно. За руку не держал, но где то вычитал ( может у Дегрела? Не помню) и сам следую этому правилу.И как-только какой-нибудь момент в музыке "зацепит" - такой кайф его переслушать в другой подаче.
Александр
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Балансный фонокорректор?
Tos » 08 янв 2022, 23:21 » в форуме Все радиотехнические темы, которые не попали в творческие разделы - 12 Ответы
- 1938 Просмотры
-
Последнее сообщение Евгений Михеев
17 янв 2022, 07:34
-