Для активации новой учетной записи и ее подтверждения на Форуме - необходимо связаться с администратором по электронной почте p-i-n-o-k-i-o@mail.ru.
Все новые учетные записи не прошедшие подтверждения администратором воспринимаются как спам.

Проект "Concept Corr": или самый навороченный фонокорректор...?

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#61

Сообщение nikola1971 » 14 янв 2023, 20:24

За прошедшее время пришлось повозиться с новым системным блоком, что повлекло переустановку программ, а это дело небыстрое.
Самое главное, чтобы после этого сохранилась возможность дальше работать, с уже имеющимися файлами-кодами, хотя бы, даже, для этого проекта. Пришлось "пошаманить", т.к. компиляция кода, без ошибки, происходит только в той версии FC, в которой изначально начал писать программу...Подменил все файлы, кроме двух "exe", из прошлой установки программы(с диска) и, О - чудо! Работа и компилиция, ранее созданных файлов, стала возможна!
Когда, всё было восстановлено, то решил создать ещё одну версию (V2), с несколько иным функционалом, а именно: с полной функцией выбора величины нагрузки, для режима RL, как в автоматическом режиме, так и в ручном.
Кроме этого, в данной "сборке программы" есть возможность дистанционного управления проигрывателем, основной его функцией "Start/Stop". Как ранее писал, сделать данный режим запуска/останова, доступным для дистанционного управления, можно и у некоторых современных проигрывателей, с механическим управлением, типа AT LP-3 и подобных. Хотя бы, ради "спортивного интереса". :smile: Сигналы(комнды) управления режимами "Start" и "Stop" - одиночный импульс, длительностью 400мс(для информации).
Итак, что есть в V2. В данной версии - отсутствует Режим Тестирования Входа, сигналом с генератора, что имеется в V1.
Основные функции дистанционного управления, что и в V1:
1) Включение/отключение подсветки дисплея.
2) Режим отключения сигнала <MUTE>, на ВЫХОДЕ 2.
3) Активация режима <CОН>. Происходит гашение дисплея и переход МК, в энергосберегающий режим, на сколько это возможно для платы ARDUINO. Эффект, по потреблению тока, по шинам питания данной части изделия - ощутим.
4) Активация режима <Дистанционного Управления Ir - режим>. Как и для версии V1, появляется возможность:
управлять сменой режима корректора, посредством сигнала AUTOSTOP, с проигрывателя;
запускать или останавливать ВОСПРОИЗВЕДЕНИЕ, кнопкой МЕНЮ;
также воспользоваться добавленной функцией <Start/Stop>, с пульта ДУ.
5) Функция управления запуском/остановкой воспроизведения, т.е. <Start/Stop> режимами(общая кнопка).
6) Выбор нагрузки картриджа, для RL-режима, на "увеличение" значения.
7) Выбор нагрузки картриджа - на "уменьшение" значения.
Итого, с пульта будет доступно 7 команд управления. В первой версии V1 доступно только 6 команд дистанционного управления. Система команд пульта - NEC.
Программирование кнопок доступно в пункте Главного Меню <Help Manual>. Там имеются комментарии, к процессу ввода кодов кнопок. Добавлю, только к тому, что и там упомянуто: Значение Адреса у всех команд - должно быть одинаковым! На пультах, от фирменной аппаратуры, попадаются некоторые кнопки-команды(1-2 или 3, с какими-то "системными" функциями), где "адрес" отличается от всех остальных(большинства-основных) других кнопок-команд этого пульта.Поэтому, нужно внимательно следить за цифровым значением "адреса/кода команды", при нажатии на кнопки пульта, в процессе программирования команд.
Ещё одно пояснение.
На данный момент, логика работы программы управления составлена так, что:
Если, находясь в режиме ВОСПРОИЗВЕДЕНИЯ диска, вы вошли в Главное Меню, то для того, чтобы не нарушилась логика работы-управления-смены команд, войти обратно в режим ВОСПРОИЗВЕДЕНИЯ, можно(нужно) только через пункт Меню - <Сон>. На данный момент, предпоследний пункт Меню : <Выход из Меню, к режиму Стоп> - не предусматривает остановку ВОСПРОИЗВЕДЕНИЯ проигрывателя! Коррективы, в это место-переход программы, именно из МЕНЮ -> к режиму STOP проигрывателя, постараюсь внести позже. Все логические и не очень, возможные варианты переходов - сразу не предусмотреть...
Файлы Hex V2
В версию V1 тоже добавил небольшую правку, касающуюся Главного Меню, в случае использования режима работы с головкой MC. Понятно, что в режиме MC, функция Тестирования Входа будет недоступна, как и подбор нагрузки для режима RL, это пытался учесть и в предыдущей "сборке", но, видимо, не совсем полностью. Дополнительно подправил "шаги при переходах".
Файлы Hex V1
Да, в режиме MC, при тестировании батареек, на степень заряженности, на входы АЦП ARDUINO, нужно подавать сигнал (постоянное напряжение с источников питания АКБ\БАТАРЕЕК: Крона = 9В; АКБ Li-Po - типа "крона" = 7,4В или АКБ Li-Po = 3,6В), равный 1/4 от их полного заряда(выставить делителем). Т.к. максимальное измеряемое напряжение по входам АЦП, равно 2,5В.
Вложения
Hex DEMO V1 14 01 2023.rar
(86.16 КБ) 167 скачиваний
Hex DEMO V2 14 01 2023.rar
(86.2 КБ) 169 скачиваний
За это сообщение автора nikola1971 поблагодарил:
seurf
Рейтинг: 16.7%
 
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#62

Сообщение nikola1971 » 20 янв 2023, 19:36

Внёс изменение в алгоритм работы программы. Теперь стало возможным выходить из Главного Меню (предпоследний его пункт), с подачей команды <Stop>, на проигрыватель. Это, ес-но, касается случая, когда активирован(с пульта) режим "Ir-управления проигрывателем", при котором происходит обмен командами между корректором и вертушкой.
Теперь, в режиме дистанционного управления, когда идёт воспроизведение диска и осуществлён вход в Главное Меню, можно:
1) Выбрать пункт <Сон>, после чего, повторно нажав на кнопку - вернуться в Режим Воспроизведения. Функция, уже была ранее.
2) Из предпоследнего пункта Меню , осуществить остановку воспроизведения, командой <Stop> и перейти к режиму Ожидание.
Конечно, осталась ещё возможность "вломиться" во второй пункт Меню "Выбор типа EQ и картриджа " или "Выбор нагрузок для RL-режима", или пункт "Help Manual"...Расставлять кучу "барьеров", на каждую нелогичную команду :insane: Проще соблюдать разумную последовательность действий, тем более, что для основного назначения изделия - Режима Воспроизведения, постоянное перебирание "функций телефона/смартфона", совсем не требуется :smile:
Да, в пункте "Help Manual", тоже более полно отразил возможности, которые относятся к V2. Чисто информативно-справочные, касающиеся номеров PIN# 1(Start\Stop) и 5(Oбщ упр.). И активировал функцию выбора типа управления запуском\остановом : одной или двумя кнопками (DENON\VICTOR - условно). Т.е. досылать или нет, ещё дополнительную команду Стоп, на обнуление триггера "разделения кнопок", после выполнения "Stop" c одноимённой кнопки проигрывателя(или после выполнения AUTOSTOP), если их две, и, если обнуление этого триггера не происходит "схемно"(аппаратно, кажется, так правильнее). О чём упоминал, когда описывал дополнительную схему управления, в самом проигрывателе.Если схема управления кнопками какая-то иная - учитывать конкретные особенности подачи команд!
Hex, дополненной версии DEMO V2
Вложения
Hex DEMO V2 20 01 2023.rar
(86.91 КБ) 159 скачиваний
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#63

Сообщение nikola1971 » 03 фев 2023, 21:30

Сегодня представлю очередную сборку программы управления корректором. Версия V3.
В неё заложены все функции для обеспечения режима Воспроизведения и полный набор режимов дистанционного управления проигрывателем. А, вот каких-либо "измерялок" НЧ-тракта, корректора, в этой версии - нет.
Для обеспечения возможности пользоваться режимом RL, доступны только несколько фиксированных значений нагрузок картриджа, в ячейках: Е1- 5,6КОм; Е2 - 7,3КОм; Е3 - 9,1КОм, а также значения нагрузок, привязанных к "Картриджам из Списка"(библиотеки). Это ещё четыре номинала нагрузок, итого: 5,2КОм; 5,6КОм; 6,3КОм; 6,9КОм; 7,3КОм; 7,9КОм; 9,1КОм. Значения нагрузок, для режима RC, сохранено в том же объёме, как и во всех предыдущих вариантах: 27КОм; 32КОм; 35КОм; 37КОм; 43КОм; 47КОм; 53КОм; 57КОм; 65КОм; 75КОм; 82КОм; 100КОм.
В Главном Меню, доступны только четыре пункта:
1) Сон.
2) Выбор режима эквализации и типа картриджа.
3) Выход из Меню, с подачей команды Stop и переход в режим Ожидания.
4) Help Manual, в котором краткое описание функций, по работе с кнопкой Menu, а также возможность изменять и настраивать системные константы, необходимые для управления перемещением тонарма и пр.
С пульта ДУ осуществляется управление следующими функциями:
1) MUTE
2) Вкл/Откл подсветки LCD
3) Сон
4) Активация Ir-режима
5) Start/Stop
6) Lift
7) <ARM ( к центру )
8) ARM> ( к краю )
9) Фиксированное перемещение тонарма: Step#( <ARM или ARM> ). Шаг 0,5сек. Выбор из 10 шагов.
10) Обзор диска
11) Уменьшение Шага(Step#) перемещения тонарма
12) Увеличение Шага(Step#) перемещения тонарма
Итого, доступно 12 команд управления, с пульта.
Т.к. появилась свободная память, в МК, то в данную версию-сборку программы, ввёл ещё возможность выбирать коэффициенты уменьшения или увеличения времени возврата(движения ARM>) тонарма, в режиме Обзора Диска.
Значение этого коэффициента(множителя для времени) можно задать от 0,8 до 1,25 (с шагом 0,01). Отдельно, для каждой величины шага перемещения тонарма: 0,25сек или 0,5сек. Т.е. в диапазоне 0,25сек, записать коэффициенты для значений: Step#1, Step#2- - - Step#10 (0,25---2,5сек), и также в диапазоне 0,5сек, для значений: от Step#1 до Step#10 ( 0,5сек---5сек). Задействуются 20 ячеек памяти EEPROM.
В диапазоне 0,25сек, для Step#1(0,25с) и Step#2(0,5с), значения предустановленных коэффициентов времени возврата тонарма: 1,25 и 1,11 для справки. (Это вызвано корректировкой прямого времени прохода, для малых шагов)
Для всех остальных, возможных, значений "временных шагов" - "заводским" значением этого коэффициента, будет 1,0.
Вернуться к предустановленной величине, можно в том же пункте, где и происходит ввод этих множителей(в самом конце, после пункта "Step#10").
Как и писал, когда-то, точное значение возвратного времени тонарма, будет зависеть от установки, в самом проигрывателе и от количества сделанных - Шагов Обзора(промежутков воспроизведения)...Какую-либо дополнительную зависимость, от этих параметров, я не выводил. Как кажется, достаточно будет несколько подкорректировать время обратного движения тонарма, чтобы он возвращался, если не в точку начала Обзора, то к месту - чуть раньше начала Обзора.
В данной версии, стало возможно откорректировать время, индивидуально, для каждого из временных диапазонов-шагов, возможно, для некого "среднего" числа - циклов по 10сек воспроизведения. Или, для минимального - максимального их количества.
И, в качестве напоминания.
Активируется(предготовность) функция Обзора, соответствующей кнопкой-командой, с пульта.
Обзор запускается командой <ARM. Обязательно из режима Воспроизведения(тонарм опущен)!
Подавать команду на Окончание режима Обзора нужно: когда идёт 10сек проигрывание фрагмента.
Повторная подача команды Обзор, с пульта - прекращение функции и переход к Воспроизведению.
Подача команды ARM> - возврат к точке начала Обзора.
Кажется, все основные моменты, касающиеся данной версии. Да, т.к. здесь не задействованы какие-либо измерения(сторонними сигналами), то из общей схемы исключается целая Плата Генератора Тестовых Сигналов. А, вот сигнал с RMS-детектора(аудио) - нужен, хоть и не для измерения, а для отслеживания его наличия-отсутствия. Для работы основной системы-оболочки-смены режимов.
Hex файл версии DEMO V3.
Вложения
Hex DEMO V3 03 02 2023.rar
(97.11 КБ) 164 скачивания
За это сообщение автора nikola1971 поблагодарил:
seurf
Рейтинг: 16.7%
 
Николай

Аватара пользователя
seurf
Авторитет
Авторитет
Сообщения: 1190
Зарегистрирован: 12 май 2016, 19:54
Откуда: Волгоград
Благодарил (а): 240 раз
Поблагодарили: 200 раз
Контактная информация:

#64

Сообщение seurf » 04 фев 2023, 10:21

Пора выходить со своими наработками на промышленный рынок производства проигрывателей. Где то в Мюнхене или Москве на выставке Hi End скромно подойти к производителям проигрывателей ( а таковые и у нас имеются ) и озвучить сервисные возможности! Уверен, владельцы алмазных трубок, копий или нефтекачалок встанут в очередь за апгрейдом своих монстров ( проигрывателей винила). Даже пример имеется: Малиновский Дмитрий изобрёл очень продвинутую пищалку, торговал ею внутри страны, за бугор, а нынче уже сотрудничает с западной фирмой по производству акустики.
https://dzen.ru/media/prophetmaster_aud ... 03f0b01d41
http://newartvinyl.ru/
https://forum.vegalab.ru/showthread.php?t=76554&page=48
За это сообщение автора seurf поблагодарил:
nikola1971
Рейтинг: 16.7%
 
Александр

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#65

Сообщение nikola1971 » 04 фев 2023, 18:14

Александр, я в этой, последней версии, сделал лишь скромную "подпись", как автор :-)
Ещё бы, реализовать вывод информации на графический дисплей. Функция измерения АЧХ, с Тестового Диска, очень гармонично сочеталась бы, с построением наглядного графика...
Да, и в цвете и с большим количеством строк и прочей информации,смотрелось бы, более эффектно. Но, главное - возможность отобразить реальный график АЧХ.
Кроме того, попытаться сделать общий набор резисторов-реле, входных нагрузок картриджа, для режимов "RC/RL".
Координатное позиционирование тонарма. Введение такого режима перемещения-поиска, уже потребовало бы существенных вмешательств в механическую конструкцию проигрывателя. Установку дополнительных деталей-элементов.
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#66

Сообщение nikola1971 » 06 фев 2023, 20:48

Сегодня приведу, в качестве примера, результаты измерения АЧХ, сделанные с картриджем 2M-Red. Как и, в представленном ранее примере(1стр. темы) с головками AT-91 и ELAN, эти цифры получены на самом корректоре, его измерительной подпрограммой.
Головка Red, достаточно распространённая и часто упоминаемая, для неё можно встретить, как теоретические результаты моделирования АЧХ, так и предложения практических значений величин R и С нагрузок, как при RC(обычной) коррекции, так и для RL.
И, тут, буквально на днях, на одном из наших форумов(LDS), в диалогах, опять промелькнули головки из этой серии("цветных") Ortofon'ов, с упоминанием их достаточно высокой индуктивности(порядка 700mH), с посылом того, что: это, как бы предполагает возможный резонанс, в верхнем диапазоне...Тут, я и вспомнил, что делал небольшое измерение с данным картриджем. Правда, большого числа тестов не проводил, вот - один из них.
В моём случае, получается так, что картриджи, с большей индуктивностью, такие, как ELAN и RED, показывают более ровную АЧХ, в сравнении с AT( с более низкой индуктивностью) и даже показывают ровнее АЧХ, чем VM540ml, уровень которой - намного выше. В данном случае, речь просто о сравнении, по формальной АЧХ.
Кстати, в другом месте встречался противоположный, ожидаемый результат, с RED, где был заявлен спад в -3дБ на 20КГц...
Поэтому, в качестве примера, и решил привести измерения с этим картриджем, в тех условиях("обвязки" и корректора), в которых ему приходится работать. В качестве кабеля: KLOTZ MC5000, длинной 2х1м(L и R + провод GND) , которым заменил штатный - DENON'овский.
Изображение
Изображение
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#67

Сообщение nikola1971 » 13 фев 2023, 19:26

Когда-то, упоминал о том, что не удалось подобрать нагрузку R для "безродного" картриджа BUM, с которым приобретался DP-45f.
Сопротивление его обмоток достаточно небольшое(435Ом), соответственно и индуктивность(которую измерить нечем) должна находиться, где-то в пределах около 300мГн...
Такое предположение можно сделать из того, что минимальное значение нагрузки, для коррекции RL начинается с 4,1КОм. Для головок(AT), у которых значение индуктивности начинается от 360-390мГн, выбор нагрузки R, уже возможен.
Кроме того, в стандартном режиме RC, в тесте на входе с Генератором Сигналов, удалось вывести почти в ровную "полку", вплоть до 20КГц, со спадом там...в "десятые доли дБ". При условии, что пришлось выставить входную нагрузку 68К и добавить 100пФ.
Чуда, конечно не произошло :smile: Это картридж, хорош, только для тестирования системы ДУ проигрывателей и автоматики.
Решился пару-тройку раз, чтобы сильно не "запилить"(его иглой) - поставить Тестовый Диск, для снятия его АЧХ.
На частоте 14КГц у него приличный такой "выброс", который существенно не меняется, даже при 47К и 39К. На сколько я понимаю, это проявление механического резонанса его подвижной системы, которая - тяжелее, чем у более приличных экземпляров.
Изображение
Ну, а теперь о новых этапах, в развитии проекта.
Начал потихоньку переводить систему на Общий Набор Входных Реле. Получилось - 8 штук. Так же, как и раньше, одновременно может быть включено - не более 4 штук. Количество выбираемых значений, для RL-режима, осталось прежним, а вот, для RC - увеличилось с 12 до 14: 27К; 31К; 35К; 38К; 43К; 47К; 52К; 55К; 58К; 62К; 70К; 76К; 82К; 91К.
Сейчас ввожу, соответствующие для этого изменения, в версию V3. Потом придётся "внедрить" новые изменения, во все остальные версии программы.
Другой момент.
Начал "готовить почву" под переход на Следующий Уровень. В данном случае, опять...Интерфейса - вывода информации :smile:
Началось, всё, с 7ми-сегментного цифрового индикатора...
Как будет получаться, пока не знаю... Индикаторы, хоть и сенсорные, но представляется, что по пунктам меню и виртуальным кнопкам - лучше "проходиться" и нажимать - энкодером...Тыкаться в резистивную матрицу, ещё и небольшого размера( один 2,4" другой 2,8") удобно, как кажется, когда "гаджет" на ладони или стоит на полке, на уровне глаз...А, если расположен, под углом и не на уровне взгляда, то нажимать на "виртуальные кнопки" - сложнее, а отслеживать их выбор энкодером, по изменению цвета("подсвечиванием"), с последующим нажатием, на его же кнопку - думается...будет удобнее...Нужно, пробовать.
Теперь придётся разбираться, во всём этом :think:
Изображение

Изображение

Изображение
Последний раз редактировалось nikola1971 13 фев 2023, 22:51, всего редактировалось 4 раза.
За это сообщение автора nikola1971 поблагодарил:
seurf
Рейтинг: 16.7%
 
Николай

Аватара пользователя
poty
Профи
Профи
Сообщения: 4882
Зарегистрирован: 24 мар 2014, 10:00
Откуда: Россия, Москва
Благодарил (а): 181 раз
Поблагодарили: 579 раз
Контактная информация:

#68

Сообщение poty » 13 фев 2023, 19:58

Nextion? Это же, фактически, простейший планшет без корпуса. Там же внутри неплохой процессор сам по себе.
Владислав

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#69

Сообщение nikola1971 » 13 фев 2023, 20:40

Да, он. 2,4" Enhanced; 2,8" Basic. Который меньше, тот с большими возможностями. Мне, лишь бы памяти хватило...Не знаю, как она будет расходоваться, т.к. страниц, уже сейчас понимаю, что будет много! Вся программа(количество информации) - явно больше, чем интерфейс "теплицы" или, предположу, какого-нибудь "умного дома"...Придётся как-то разумно распределить функции между основной MEGA2560 и дисплеем.
Николай

Аватара пользователя
poty
Профи
Профи
Сообщения: 4882
Зарегистрирован: 24 мар 2014, 10:00
Откуда: Россия, Москва
Благодарил (а): 181 раз
Поблагодарили: 579 раз
Контактная информация:

#70

Сообщение poty » 14 фев 2023, 10:55

Думаю для меню памяти точно хватит!
Энкодер - тоже штука полезная, потому что управление одной кнопкой хоть и оригинально, но не для моих нервов! :-)
Кстати, аналогичные экранчики стоят у нас на некоторых UPS, в целом, даже при условии нахождения их в самом низу компьютерного шкафа - управлять вполне можно. Отзывчивость у них, правда, не на высоте.
Владислав

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#71

Сообщение nikola1971 » 22 фев 2023, 22:57

В прошлые разы уже упоминал о переводе устройства на общий набор реле, в количестве 8 штук. Эти изменения сделал, на основе 3 версии программы (v3).
Какие изменения пришлось внести в номиналы резисторов и, используемые реле, которые были указаны, ранее, на принципиально схеме.
1) Для RL-режима. Небольшие изменения номиналов: 9,1КОм(PK1); 12КОм(РК2); 20КОм(РК3); 82КОм(РК4); 220КОм изменён на 200КОм(РК5); 470КОм(РК6). В скобках указаны номера портов МК(Ардуино), связанных через ячейки памяти + ключи, с соответствующими реле. В данном случае, каких-либо изменений в подключениях схемы(пинов) - нет. Изменение номинала одного из резисторов, существенного изменения в конечных значениях сопротивления нагрузки - не дало. Для примера: 6,7КОм стало 6.6КОм, 8,6КОм изменилось на 8,5КОм, т.е. привело к снижению на 0,1КОм(100Ом). Т.е. чуть более 1%.
2) Для RC-режима, изменения, следующие. Из предыдущего набора, из 5 реле, остались - только два номинала резисторов-реле: 47КОм(РВ7) и 100КОм изменён на 91КОм(РВ5). При этом, для получения нужных значений нагрузок, в этом режиме, в комбинациях будут задействован следующий, СОВМЕЩЁННЫЙ, набор портов-реле-резисторов: 47КОм(РВ7); 82КОм(РК4); 91КОм(РВ5); 200КОм(РК5); 470КОм(РК6).
Какие получаются новые номиналы нагрузок картриджа, для RC-режима, я писал несколько ранее. Теперь, это - 14 значений! Ещё можно добавить, что сигналы(импульс) для записи комбинаций резисторов-реле, в регистры памяти микросхем ИР27, подаются с тех же портов МК, что и прежде: РК7 - для RL и РН5+РК7 - для RC.
Следующее небольшое изменение, которое попало в эту версию V3, это: перенос подключения группы контактов Тумблера "ММ/МС"(отвечающих за индикацию смены режима), с порта РЕ5(INT5) - на порт РС3. Это было вызвано, начавшимися подготовительными работами, по переводу изделия, на новый уровень: понадобился порт со входом прерываний, для подключения ЭНКОДЕРА. Энкодер уже благополучно подключён и испытан: определение направления вращения и подсчёт импульсов - происходит уверенно.
Уже сделал первые пробные шаги в Программе - Редакторе NEXTION EDITOR...
Скорее всего, буду работать с 2,4", серии ENHANCED, у которого и память больше и габариты, чуть меньше..., как ни странно, при наличии уже готовых корпусов - это параметр, тоже определяющий. Да, и появившийся в устройстве, ЭНКОДЕР - тоже нужно установить на переднюю панель...Место занимает не сам энкодер, а его ручка управления, которая всяко больше, чем кнопка, а, как раз величина ручки - и считается достоинством-удобством, при вращении.
Панель придётся чуть изменить под новый вариант дисплея...Заказать новую...
Да, ещё искал и нашёл красивые картинки, на "виниловую тему", которые могут послужить будущим фоном для некоторых ОСНОВНЫХ РАБОЧИХ СТРАНИЦ(окон) изделия. Там, где производятся какие-либо измерения и пр., достаточно просто установить фоновый цвет страницы. Да, и жаль, что дисплей не поддерживает "прозрачность", при наложении. Один из примеров, "обоев" для страницы... в тёмных тонах:
Изображение
Никогда не работал с графическими редакторами, ну может за одним исключением, и то - специфическим: делал векторную карту для "нафигатора" GARMIN, из растровой 500метровки: привязывал к координатам на местности, а потом, ручьи, дороги и береговую линию обводил, леса и поляны обозначал :smile:
А, тут придётся азы изучить в Inkscape и GIMP...Короче, в голове теперь крутятся новые идеи по оформлению(обновлению) интерфейса и добавлению небольших дополнительных функций в устройство. :think:
Изменённый HEX-файл версии V3, с 8 реле.
Вложения
Hex DEMO V3 на 22 02 2023.rar
(97.95 КБ) 163 скачивания
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#72

Сообщение nikola1971 » 23 фев 2023, 18:48

Ещё, в самом начале, когда зарождалась идея проекта, раздумывал: на сколько информативен, при настройке проигрывателя-картриджа, показатель разности фаз между сигналами, в каналах? Здесь, даже тему читал, с похожей направленностью: ... "настройка по приборам"...Кажется, Роман пытался или кто-то другой провести измерения, но результат той работы, я так и не понял: по приборам, вроде правильно, а на вид и глаз - всё "криво", да и на слух - тоже, чего-то не то...
Я и сам пытался, воспроизводя трек с 1КГц, посмотреть сигналы( их сдвиг), на 2х лучевом осциллографе, своём UNI-T...Какой-то более-менее видимый сдвиг, удалось зафиксировать, когда уже явно "перекосил" головку, подложив под один край шайбы...Может измерения, не так делал или 1КГц мало, чтобы изменения фиксировать...?
С функцией фазометра, в программе, я уже небольшие опыты проводил...в Протеусе. Минимальное разрешение - от 2градусов.
Да, ещё вопрос есть, по одному треку с диска < ClearAudio Break In >. Трек для установки антискейтинга, 2мин. Изменение сигнала от -20dB до +8dB, с одновременным изменением фазы между каналами от 0 до 360град. Как пользоваться...?
Владислав, возможно Вы кратко поясните что и как?
Николай

Аватара пользователя
poty
Профи
Профи
Сообщения: 4882
Зарегистрирован: 24 мар 2014, 10:00
Откуда: Россия, Москва
Благодарил (а): 181 раз
Поблагодарили: 579 раз
Контактная информация:

#73

Сообщение poty » 25 фев 2023, 15:18

nikola1971, Вы считаете меня универсалом во всём? :-) Я только могу с технической точки зрения пояснить принцип, но эксперименты я вот именно в таком виде не проводил. Дело это довольно обширное, может, просто начать новую ветку по этому поводу? Там можно было бы проверить предположения.
Для начала начну с последнего. Антискейтинг необходим для того, чтобы исключить разницу в давлении стенок дорожки на иглу. Принцип стереозаписи заключается в том, что сигналы, действующие на иглу сдвинуты на 90 градусов и размещены в канавке, биссектриса угла которой направлена вверх. Сигналы записаны в противофазе. Т.о., если в обоих каналах записан одинаковый и синфазный сигнал, то игла колеблется исключительно по горизонтали, если сигнал записан в противофазе - игла колеблется исключительно по вертикали. При любых других разностях фаз (на одинаковом сигнале) игла проделывает путь по овальной траектории. Соотношение осей овала - это как раз разность фаз между сигналами каналов. Есть определённые ограничения при записи (в глубине канавки, скорости изменения линейного расстояния и проч.), которые предотвращают выпрыгивание иглы из неё при любых корректных записях. Извините за ликбез.
В связи с тем, что большинство тонармов у нас поворотные, а не тангенциальные, существует угол между направлением крепления картриджа к оси поворота и направлением действия силы трения на иглу. Этот угол образует силу, тянущую иглу к центру. Если её не компенсировать, она может превысить номинальную устойчивость иглы к вылету с дорожки (трекинг), т.е., игла будет перескакивать с дорожки на дорожку при определённых условиях. По тем же причинам перекомпенсация также приводит к нарушению трекинга.
Фактически, треки для установки антискейтинга создают все возможные комбинации сигнала в дорожке, чтобы сымитировать нарушение трекинга при неправильной компенсации скейтинга. Смотрите, если игла прыгает по дорожкам к центру, то антискейтинг недостаточен. Если к краю - избыточен.
Теперь по поводу осциллографа и что мы должны там увидеть. У нас 5 параметров, которые нас интересуют:
- 3 угла (3 плоскости: параллельность канавке (шаблон), угол захода иглы в канавку (нет механизмов выставления и контроля, кроме "на глаз"), азимут (зеркало?);
- прижимная сила (весы?);
- антискейтинг (спецтреки).
Наверняка все эти параметры влияют на то, что мы получаем на осциллографе. Вопрос только в тот на что смотреть? Вот какой угол пытались измерить?
Владислав

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#74

Сообщение nikola1971 » 25 фев 2023, 18:55

Пытался менять азимут(наклон влево-вправо, одевая шайбы, на крепёжные винты: под один край или под второй, соприкосновения шелла и картриджа ) и зафиксировать сдвиг фаз между синусойдами.
P/S Убедился в работоспособности дисплея, по крайней мере - возможности его запрограммировать. Набросал в Редакторе несколько функциональных полей с Текстом и Кнопками. Задал несколько строк, связывающих их программным алгоритмом: нажатие - смена текста-цвета, подсчёт числа нажатий и вывод значения. В дисплей, тоже, пока в редакторе, отправил несколько команд. К МК, по UART, пока не подключал.
2,4"
Изображение
Николай

Аватара пользователя
poty
Профи
Профи
Сообщения: 4882
Зарегистрирован: 24 мар 2014, 10:00
Откуда: Россия, Москва
Благодарил (а): 181 раз
Поблагодарили: 579 раз
Контактная информация:

#75

Сообщение poty » 25 фев 2023, 20:03

Азимут должен влиять больше на соотношение амплитуд сигналов, чем на фазу. Т.е. если из одного синфазного сигнала вычесть другой, то при правильном азимуте должен получиться 0 (или самое минимальное напряжение).
Владислав

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#76

Сообщение nikola1971 » 25 фев 2023, 20:26

Вот и я, прочитав тематические ветки, больше склонялся, что ориентироваться нужно на амплитуду... Тот же прибор "фасгометр", который используют для подобных целей, тоже измеряет амплитуды.
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#77

Сообщение nikola1971 » 23 мар 2023, 22:39

Прошёл месяц.
По каким-то непонятным, на данный момент причинам, Интернет-соединение устанавливается только поздно вечером...А, так довольно плотно занимаюсь переводом программы, с LCD1602 - на NEXTION.
Выше, уже успел сообщить, что первые опыты с ЭНКОДЕРОМ, оказались успешными, но на тот момент я мог судить об адекватности обработки, только поступающих с него импульсов: в большую или меньшую сторону. По значению числа импульсов, выводимого в поле, на дисплее NEXTION.
Потом решил усложнить задачу, начав писать подпрограмму(встраиваемый макрос), который бы выполнял функцию "подсветки поля - курсора", на экране. Допустим: тёмное поле, со светлым шрифтом - меняется на светлое с тёмным текстом. Тут, уже начали вылазить "баги", или, "как их там", когда какое-нибудь предыдущее поле, с которого уже вышли, в процессе прокрутки - оставалось "подсвеченным", т.е. два "активных" - одновременно. И, даже, неважно, быстро или медленно подавались команды с энкодера. Наверное, неделя, потребовалась на то, чтобы отыскать причину: найти то место в программе, где сформировать "переменную о исходном состоянии" параметров(цветовых) информационного окна.
Думаю, что работа в динамическом режиме, по прерыванию(INT), давала о себе знать, плюс, ещё в сам дисплей нужно отправлять команду. Ладно, хоть на это ушла неделя...На подключение цифрового потенциометра, с объединением общих проводов цепей(цифровой и аналоговой) - ушло больше месяца.
Другой интересный момент, с которым пришлось столкнуться, начав работу с дисплеем.
Оказалось, что уметь экранировать, нужно не только сигнальные провода-цепи, платы и трансформаторы. "Экранируют" ещё и....кавычки: " ". :smile:
До начала работы с NEXTION, c данной особенностью-необходимостью, сталкиваться не приходилось.
В той среде, где пишу программу управления, использовал, при необходимости: << >> . А,отправляемую в дисплей текстовую информацию(значение строковой переменной), нужно заключить в кавычки. Но, чтобы отправить "кавычку", её тоже нужно взять в кавычки, и тут, оказалось, что для этого нужно применить небольшую хитрость, называемую "экранированием кавычек".
Nextion_str = "t0.txt=" + "\"" + NEXTION_count_str + "\"" Вот, только при таком написании строки, в среде программирования - в текстовом поле дисплея, началась отображаться информация. Сбивало с толку, то, что в цифровое поле дисплея, инфориация сразу выводилась без всяких проблем-кавычек. Nextion_str = "n0.val=" + Encoder_count_str.
Только после решения всех этих предварительных, но важных моментов, оказалось возможным начать оформление нового интерфейса, для устройства.
Графические редакторы, пока не использую. Для основных, рабочих страниц корректора, загрузил несколько фоновых картинок, соответствующего размера 320х240. Ещё несколько шрифтов. И, уже(пока) дошёл до основной-рабочей страницы: PLAY DISC. Правда, по счёту, она получилась 4.
Из всей доступной, на данный момент анимации, которая должна, как-то отражать "процесс воспроизведения-вращения диска", решил использовать элемент NEXTION <Scrolling Text> - бегущую текстовую строчку, для основной надписи <PLAY DISC>. Может быть, в дальнейшем, удастся получить(отрисовать-преобразовать) фоновую картинку (воспроизводящаяся пластинка на проигрывателе) в GIF...
Вот, в таком состоянии находится проект, на данный момент. От: 7-сегментного - к 1602 - и до графического, цветного NEXTION.
Николай

Аватара пользователя
poty
Профи
Профи
Сообщения: 4882
Зарегистрирован: 24 мар 2014, 10:00
Откуда: Россия, Москва
Благодарил (а): 181 раз
Поблагодарили: 579 раз
Контактная информация:

#78

Сообщение poty » 23 мар 2023, 23:34

А на С++ переводить не пробовали? Можно разделить методы по классам и управлять независимо от источника команд.
Владислав

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#79

Сообщение nikola1971 » 24 мар 2023, 01:31

Моё спасение, только Flowcode :smile:
Исключительно благодаря визуализации алгоритма, я ввязался в такую глобальную работу. Программирование знаю, только в объёме уроков информатики, конца 80х годов. С чего тогда и просили начинать написание программы: с составления блок схемы - её алгоритма. Конечно, что-то более-менее простое писал сразу "строками", но всё знание языков программирования, так и ограничивалось Фокалом, Бейсиком, Фортраном. На МК, вообще ничего не собирал, до того, как не взялся за этот проект. Даже, если что-то нужно было сделать - составлял схему на МС-логики. В данной работе, мне не удалось бы что-либо такое сделать, ни в среде Arduino(программа - ввиде строк), ни в появившейся и развивающейся FL-Prog(в которой, по моему мнению, удобно перевести на МК, уже имеющуюся схему на цифровой логике).
Для любопытства, иногда просматриваю компиляцию программы на языке С++, которую выдаёт Flowcode, да по необходимости приходилось вставлять небольшие поправки, ввиде "своего кода" или исправления в готовый макрос вносить. Например, тогда, когда потребовалось выводить на 7-сегментный индикатор дополнительные символы, которые отсутствуют в стандартной версии, для макроса этого компонента-индикатора. Вводить МК, в режим сна, также пришлось своей вставкой кода. А, вот "watch dog" внедрить в Arduino - не получилось, возможно из-за того, что Arduino, а не просто MK.
С надёжностью считывания энкодера, вернее с одновременной сменой анимации на дисплее - пришлось, действительно много повозиться. Чтобы было чётко: без пропусков "окон" и правильностью определения направления вращения, смена цвета "окна-шрифта" - работало без сбоев. При любой скорости вращения...!
Сделал эту часть, ввиде отдельной подпрограммки-макроса, которую можно вставлять в те места основной программы, где были циклы, в которых предлагались "пункты" для выбора команд. Если крутим энкодер, то находимся только в этой подпрограмме, в цикле: "занимаемся пунктами на дисплее". Если перестаём вращать ручку, то через 2сек(можно изменить) выходим из этой подпрограммы и можем подтвердить выбор нужного пункта, подсвеченного на экране - нажатием кнопки. Функция кнопки, по сути - сохранилась.
Вся программа(основная), последовательность функций и алгоритмы, прописаны так, что во время "сложных-вычислительных действий" - нажимать ничего не приходится или "нажатие" - это окончание вычислений. А, то было бы, примерно так: считаем частоту, а тут ещё крутим энкодер........и......"синий экран", вернее на 1602 - он просто пустой или с непонятными закорючками.
Таймеров, и так задействовано...наверное почти все...По возможности они активируются, только по необходимости, а потом отключаются! Но, когда ещё пытался дополнительно задействовать таймер, в уже "сложившейся программе" - получал "зависание". Поэтому, отказался от варианта "энкодера по таймеру", даже, если это, возможно и лучше-правильнее.
И, так, пока, какие-то высшие "Электромагнитные Силы" :pray: - хранят систему(программу) от зависания. По крайней мере, с 1602 - такого не было ни разу. В отработанных её вариантах, а в процессе отладки - случались. Всё работает без упомянутого "watch doga". Кстати, буквально вчера, неоджиданно "подвис", даже телевизор SHARP, при управлении с пульта: пропал звук, перестал реагировать на команды с кнопок пульта...Ожил - только после полного обесточивания)))
P/S Да, наверное правильно, что уже сейчас решил окончательно перевести на максимальный уровень, т.к. потом и с каждым годом - вникать, даже в уже написанное и работающее, всё сложнее и сложнее...И, так, "раскраска" дисплея потребует ни один месяц. :think:
Николай

Аватара пользователя
nikola1971
Посетитель
Посетитель
Сообщения: 116
Зарегистрирован: 04 авг 2016, 12:43
Откуда: Петербург
Благодарил (а): 5 раз
Поблагодарили: 32 раза
Контактная информация:

#80

Сообщение nikola1971 » 09 апр 2023, 03:45

На данный момент создано 37 страниц. Полностью отражена информация - всей основной программы. Главных, касающихся основной функции, ВОСПРОИЗВЕДЕНИЯ, только три: две страницы с информацией ожидания ВОСПРОИЗВЕДЕНИЯ( для ММ и МС картриджей) и сама функциональная страница PLAY. Все остальные страницы относятся к MENU, ФУНКЦИЯМ ИЗМЕРЕНИЯ и прочим HELP MANUALам. Именно сегодня, загрузил все страницы, из редактора NEXTION, на карту и в сам дисплей.
Как и писал выше, работаю с 2,4". Результатами, пока, вполне доволен :smile: Опасения, по поводу нехватки памяти, оказались слишком преувеличенными! Да, когда сделал первую, пробную страницу-две, то компилятор программы выдал объём, около 600К...Но, в дальнейшем, я заметил, что с созданием новых страниц - память так быстро не заполняется. В итоге, при 37страницах - объём составляет 1,707МБ. Это, при 16МБ, имеющихся.
Обратил внимание, сразу, что: имеется некоторое несоответствие цветовой гаммы, то, что в программе и, то, что отображается на самом дисплее. Для некоторых оттенков.
Сам размер дисплея, конечно небольшой, поэтому приходится подбирать шрифт, для лучшего отображения и сочетания цветов...Когда: чёрный на белом - это отлично, а в случаях других цветов, то требуется более тщательная подборка.
Да, на основных страницах - использовал три "тематических" картинки, в качестве "заставки-обоев". Смотрится неплохо, но опять-таки, пришлось отказаться от простого наложения шрифта на картинку, а всё-таки использовать фоновые подложки под текст, чтобы улучшить читаемость-контрастность.
Следующим этапом, начну согласование страниц-информационных полей, на них, с основной программой.
Да, и графики АЧХ...
Решил, на данный момент - использовать Progress Barы, имеющиеся в стандартном наборе дисплея. Соотношение-масштаб такой: 50% 0dB| 70% +2,5dB| 90% + 5dB | 30% - 2,5dB |10% -5dB (там значение отображаемой величины, как и само число-переменная от 0 до 100%). Нанёс осевые, с разметкой. Получилось, как один из вариантов графиков на Spectra Lab. Вполне прилично. Если строить по точкам, то, в идеале....соединять их лучше не прямыми линиями, а "кусочками" функций-кривых, для "сглаживания графика", а это - "целая математика", поэтому, "столбиками" - даже лучше смотрится.
И, так - следующий этап, встраивание в программу.
Николай

Ответить

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

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