Вобщем необходимо связать валкодер с цифровым потенциометром, например DS1804 или DS1668, DS1669, DS1669S ну или какими другими.
Если я правильно соображаю то сделать это можно стандартными элементами логики И/ИЛИ/И-НЕ/ИЛИ-НЕ/Триггеры.
Опять же не совсем понял интерфейс Up/Down Control, на одном из сайтов прочитал:
Цитата:
Для регулировки потенциометра необходимо выбрать его сигналом CS, подать сигнал направления Up/Dn и затем осуществить нужное количество шагов, подавая импульсы на вход Inc.
и
Цитата:
Положение среднего вывода относительно резистивной матрицы контролируется при помощи входных сигналов CS (активный низкий), U/ D(активный низкий) и INC (активный низкий).
т.е. надо на CS подать низкий сигнал, на U/D низкий или высокий в зависимости от направления изменения и на INC подавать импульсы?
Member
Статус: Не в сети Регистрация: 06.06.2008 Откуда: Таганрог Фото: 18
}{acker , да. Сказал потенциометру "Братан, сейчас будем тебя иметь" (CS), задал, куда крутить (U/D) и крутишь (INC). Ну, и конечно, такую машинку в современном виде лучше всего собирать на маленькой 8-ножке микроконтроллере. Там можно и масштаб задать, и сохранить положение потенциометра и многое другое. Получилась бы вот такая схема (не показано только питание и осветитель) :
#77 Кроме того, совершенно необязательно выдирать из каких-то мышей целое хозяйство в виде оптокодеров. Можно и обычный механический типа EC10E.
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
Walkie писал(а):
Ну, и конечно, такую машинку в современном виде лучше всего собирать на маленькой 8-ножке микроконтроллере.
Зачем, импульсы для (INC) можно подать с первой оптопары, прямо или через усилитель (если необходимо) остаётся только сделать небольшую логику направления вращения, только тут я не совсем догоняю как.
Цитата:
при перепаде логического "1" в логический "0" на выходе оптопары 1 следить за уровнем сигнала на оптопаре 2. Если там "1" - ручку крутят по часовой стрелке (шаг вверх), если там "0" - ручку крутят против часовой стрелки (шаг вниз).
Подключаем вывод оптопары 1 к (INC) а вывод оптопары 2 к (U/D), а при перепаде с лог1 на лог0 на первой оптопаре подавать сигнал на (CS). Хотя кажется не выйдет. Опять же тут http://rf.atnn.ru/s5/valkoder.html использован дешифратор, и выходы меняются местами при смене направления, там же надо просто смену лог. уровня на одном из выходов и импульсы на другом.
to Walkie Всё как конкретно управляется интерфейс Up/Down Control? на (INC) надо подать импульс или постоянный сигнал, так же и (U/D) - импульс или постоянный на всё время регулировки?
Member
Статус: Не в сети Регистрация: 06.06.2008 Откуда: Таганрог Фото: 18
U/D - потенциал. INC - импульс. Например, в 1804 движок меняет положение при перепаде INC из 1 в 0. Вообще-то фронты надо всегда формировать, и с масштабированием наверняка будут трудности. Хотя формирователи уже встроены в 1804, но все равно длительность фронта более 500 us недопустима. А самая главная неприятность : при статическом U/D частенько будет пачка INC. В принципе без внешних схем сама логика именно такая : одну оптопару - на U/D, вторую - на INC. Но устройство будет недоделкой с вечными проблемами.
Ведь преимущество электронных потенциометров только в одном : орган регулировки может быть отнесен далеко от чувствительных цепей регулирования. В противном случае обычный потенциометр дает любую фору этому огороду.
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
Walkie писал(а):
Ведь преимущество электронных потенциометров только в одном : орган регулировки может быть отнесен далеко от чувствительных цепей регулирования. В противном случае обычный потенциометр дает любую фору этому огороду.
Ага только что то я могу найти побольше преимуществ. Вот думаю заменить регулятор на акустике на цифровой т.к. задолбали отключения одного из каналов и шумы при регулировке.
Walkie писал(а):
Вообще-то фронты надо всегда формировать, и с масштабированием наверняка будут трудности. Хотя формирователи уже встроены в 1804, но все равно длительность фронта более 500 us недопустима.
И чем это выражено? И как формировать, разъясняй конкретнее, ведь если бы я всё знал я бы и не задавал вопросов. Что будит при длительности более 500 us?
Walkie писал(а):
А самая главная неприятность : при статическом U/D частенько будет пачка INC.
Всмысле, выражайся конкретнее. А то ощущение как будто с тех. документацией общаюсь.
Advanced member
Статус: Не в сети Регистрация: 10.04.2003 Откуда: Москва
Walkie, Up/Down признак можно защелкнуть на D-триггере, там риска сбоя нет. А по INC надо думать. Скорее всего придется что-то придумывать на второй половине D-триггера. Одновибратор?
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
Взгляните сюда http://hardauto.ucoz.ru/publ/1-1-0-5 вроде бы то что надо Добавлено спустя 2 часа, 36 минут, 16 секунд Кажется я придумал как эт всё реализовать
Устройство оптического валкодера собираем схему как тут, потом инвертируем выходные сигналы и подключаем вместо кнопок к DS1668, DS1669, DS1669S. Только в устройстве валкодера элементы неправильно нарисованы там "И-НЕ" стоят а не "И"
Вобщем в ближайшее время куплю детали и попробую. Добавлено спустя 1 минуту, 17 секунд Кажется я придумал как эт всё реализовать
Устройство оптического валкодера собираем схему как тут, потом инвертируем выходные сигналы и подключаем вместо кнопок к DS1668, DS1669, DS1669S. Только в устройстве валкодера элементы неправильно нарисованы там "И-НЕ" стоят а не "И"
Member
Статус: Не в сети Регистрация: 06.06.2008 Откуда: Таганрог Фото: 18
serj , да вот и я о том же. Как только начинаются всякие ТМ2 и ЛА7 наступает конец. И задача-то, оказывается : громкость регулировать. А для этого ни один из тех DS-потенциометров не подходит - они ведь линейные. Их надо ухитриться в ОС усилителей вставить, чтоб получилось подобие логарифмической характеристики. Как-то так : #77 И понеслась... Надо смотреть схему, которая модифицируется... валкодер - вторично.
Advanced member
Статус: Не в сети Регистрация: 10.04.2003 Откуда: Москва
Walkie, в одном из очень старых журналов "В помощь радиолюбителю" была статья по компенсированным регуляторам громкости. Кроме нелинейной регулировки уровня надо еще и компенсировать АЧХ. Если опустить тот факт, что уровень тон-компенсации зависит от характеристик помещения и общего уровня фонового шума, то ... то, собственно говоря, все сильно упрощается. Берется _линейный_ переменник, включается как обычный делитель, а между подвижным и землей ставится еще один резистор. Так кривая регулировки становится нелинейной. Тонкомпенсация подключается между входом, подвижным и землей. Я потратил весьма значительное время на сравнение и знаешь ... как ни странно, этот вариант не хуже классических вариантов с несколькими отводами и нелинейными потенциометрами. У него только один недостаток - явная недостача низких частот при совсем маленькой громкости ... но и многоотводные переменники тоже не могут помочь. Для компенсации этого дефекта я делал регулятор громкости на переключателе - там тонкомпенсацию можно сделать любого вида. Бесплатный бонус - 4-5 каналов регулирования. (попробуй найти 4-5х переменник, да еще 10 лет назад) Так что ... не думаю, что проблема 'не-линейности' существенна. Добавлено спустя 2 часа, 53 минуты, 6 секунд }{acker, по вашей ссылке есть работающая конструкция (на усилителе). Что-то мешает ее повторить? Недостающие номиналы можно расчитать, операционник что-то типа LM357 или LM393. Логика 561ТЛ2. Диоды - обычные, маленькие. КД504 и аналогичные.
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
Walkie писал(а):
И задача-то, оказывается : громкость регулировать.
Сейчас задача стоит не громкость регулировать, а просто силу тока в цепи, а про звук это в будущем, т.к. действительно переменник на колонках начал шуметь через полгода, через ещё погода-год начал отключаться один из каналов на определённых участках - плохой прижим щётки. Да можно поставить хороший переменник, но всё же хочется надёжности, практичности и индивидуальности, а имея на компьютере акустику за 1.5-2 т.р. о качестве звука речи не может быть.
Вобще валкодер разрабатывается не для звука. Я не буду рассказывать для чего, не охото чтоб моей и моего друга идеей кто то воспользовался со стороны. Необходимые схемы нашёл, осталось купить/собрать. Если будит работать связку валкодер-потенциометр выложу тут, если нет продолжу поиски.
Member
Статус: Не в сети Регистрация: 06.06.2008 Откуда: Таганрог Фото: 18
Тогда разве по валкодеру непонятки ? Можно универсально для любого типа DS и почти любых параметров вращающегося колесика. Это приведено выше, но надо знать контроллеры - минус, конечно, серьезный. Но зато, если освоить, то в дальнейшем будет можно многое придумывать и легко реализовывать.
Для DS1804, если не надо сохранять положение переменника при отключении, можно совсем просто, но с опасками. Например :
#77 Ну, на всякий случай нарисовал - вдруг сгодится и так. Правда, номиналы резиков может подрихтовать. И сохранение при снятии питания тоже можно сделать. Но, разумеется, с дополнительными деталюшками.
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
Вобщем собрал валкодер с дешифратором по схеме отсюда выходы цепляю на светики - работает, в зависимости от направления вращения один горит, другой мигает. Прицепил на DS1669-10 сопротивление меняется в одну сторону независимо от направления вращения. Выводы с дешифратора прицепил на UC/DC входы DS1669-10. Ещё попробую конечно инвертировать выходы с дешифратора, но всё же перешарил инет и не нашёл внятного описания входа (D) у DS1669, как им пользоваться?
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
serj писал(а):
1. при включении НЕЛЬЗЯ держать DC=1, перейдет в SINGLE mode.
О_о а про такое и не знал.
А про вход (D) чо нить знаешь? вроде там надо импульсы формировать, так ничего и не понял. Добавлено спустя 1 час, 36 минут, 52 секунды
serj писал(а):
2. нельзя держать 0 дольше 1сек - пойдет автоповтор.
Тогда DS1669 не подходит для прямого подключения к валкодеру, на выходе получается то 0 то 1 - будут повторы. Добавлено спустя 43 минуты, 7 секунд Думаю всё же проще будет на МК, как я понял надо по прерыванию сравнивать значения на валкодере и вычислять смещение и выводить импульс на потенциометр, помогите реализовать для ATtiny2313
Member
Статус: Не в сети Регистрация: 06.06.2008 Откуда: Таганрог Фото: 18
}{acker К слову, может статься так, что с МК и потенциометр вовсе не нужен. Например, если конечная задача : при вращении колесика гонять уровень напряжения (скажем, в диапазоне от 0 до 5В), то достаточно лишь 2313 с той оптомеханикой.
... помочь на ATtiny2313 реализовать. А как Вы себе представляете эту помощь ? Ну, к примеру, я быстро накарябаю Вам такую программку для 2313. А запрограммировать, отладить, модифицировать...
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
serj писал(а):
Вообще-то есть (проволочные) многооборотные переменные резисторы. Очень приятная вещь!
А это к чему?
to Walkie Вобщем разобрался с задачей, на ATtiny2313 всё можно реализовать, прерывание по фронту от валкодера и ШИМ для изменения мощности. Програмка есть готовая но с ошибками, вобщем если знаеш где почитать про программирование AVR на С, про ШИМ и т.п. буду признателен.
Member
Статус: Не в сети Регистрация: 01.07.2006 Откуда: Челябинск
Вобщем для моей задачи подходит реализация на ATtiny2313 - валкодер подключается к INT1 и любому пину порта D по прерыванию INT1 по ниспадающему или нарастающему фронту в зависимости от состояния пина к которому подключен второй выход с валкодера меняем скважность ШИМ
Прошивку пишу на ассемблере
Подскажите какими регистрами и как настроить прерывания по INT1
как настроить ШИМ и менять скважность ШИМ - как понял подойдёт режим FastPWM
Member
Статус: Не в сети Регистрация: 06.06.2008 Откуда: Таганрог Фото: 18
}{acker , правильно делаешь, что на ассемблере. С для AVR - это студентам, которые курсовик сдают. Только там не нужен гемор с прерываниями. Фотодиоды валкодера цепляется к любым пинам (скажем, к PD2, PD3). Им можно также дать внутреннюю подтяжку к +Uп командами sbi POTD,2 и sbi POTD,3, и избавиться от внешних резисторов. Тебе наверняка хватит 8-битного PWM. Поэтому модулятор - таймер 0, выходной шим-пин, скажем, OC0A (PB2). И да, таймер пускается на внутренней частоте 8 МГц (надеюсь, ты не собираешься еще и кварц лепить) и ставится в простенький режим Fast PWM.
И - глухой опросовый цикл. Сильно упрощенно : -------------------------------- Monitor: Вычитываем PIND2 Смотрим, изменилось ли его состояние по отношению к "истории". Перепад ? -> смотрим, куда и при каком состоянии PIND3 -> делаем +1 или -1 регистра OCR0A. m1: Запонимаем состояние PIND2 как историю rjmp Monitor Нет перепада ? -> rjmp m1 ------------------------------- Почему сильно упрощенно ? Потому что по-хорошему надо сделать и алгоритм антипомеховости PD2,3, и ограничители OCR0A. А еще устроить сохранение в EEPROM шим-позиции OCR0A, чтобы при включении устанавливалась последняя накрутка. А может и ввести дополнительные кнопочки типа "Пресет". Какие команды, как конкретно включить Fast PWM и т.п. лучше овладеть самому, изучая официальные пдф на МК. Понятное дело, МК практически с нуля - поначалу тяжко, зато потом очень легко. В случае серьёзных затруднений подскажу, если что...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения