Перейти к содержанию
    

Darmok

Новичок
  • Постов

    17
  • Зарегистрирован

  • Посещение

Репутация

1 Обычный

Информация о Darmok

  • Звание
    Участник
    Участник

Информация

  • Город
    Array
  1. Между базовой платой, на которой расположены кнопки, энкодер, оптический сенсор, положение которых фиксировано и не может быть изменено и расположенной над ней платой контроллера клавиатуры зазор 7 мм. На нижней стороне платы контроллера приклеивается плата с транзисторными ключами. Величина зазора уменьшается до 4 мм. Увеличит величину зазора я не могу, этому препятствует форма корпуса мыши и размер платы контроллера. Резисторы последовательно поставить можно, если хватит места. Однако, как я уже писал на практике вариант без них вполне работает, и проверено это многолетней практикой. Когда я начинал в ходу еще были запасы К1ЛБ553 🙂. Вы сильно заблуждаетесь насчет величины тока, поскольку процесс замыкания не мгновенный и это принципиальное, фундаментальное свойство материального мира. Кроме того, на процесс разрушения контактов влияет не величина тока, а энергия, выделяющаяся в точке контакта за время процесса контакта. По поводу модификации схемы, спасибо за предложение, обдумаю чуть позже, сейчас нужно садить картошку🙂. Триггеры Шмитта не стоят по смешной причине – у меня закончился их запас. Конечно нет проблем их приобрести и как только без них будет не обойтись я это сделаю. Однако данная схема не чувствительна к качеству фронта сигнала и установка триггера Шмитта ничего не изменит. Для CD4000B заявлено минимальное напряжение питания 3В, правда при этом не нормируются временные характеристики. На практике я использовал такие ИС и при 2,5В и они исправно работали.
  2. Попробую еще раз, более развернуто изложить ситуацию с последовательными мышами. Один из путей замены шариковой мыши — это использование конверторов. Такие конверторы интерфейсов уже разработаны и даже один вариант производится мелкосерийно и доступен в продаже. Однако этот вариант покупают от безысходности, на него много нареканий – большой лаг и он не работает через КВМ. Автор этого варианта забросил свое творение и не хочет его доводить до ума. Предположительно что-то не поделили с изготовителем. Также существуют и другие гораздо более качественные конвертеры, но их авторы не занимаются тиражированием. Эти конвертеры используют заказные промышленно изготовленные платы, которые автор заказывает в нескольких экземплярах, поскольку так выходит дешевле. Лишние экземпляры он распродает, окупая затраты, и на этом все. Несмотря на то что такие проекты опенсорсные и вся документация доступна в полном объеме, с их воспроизведением дело движется туго. Причина в том, что подавляющее большинство членов сообщества — это обычные потребители готовые купить, но сами ничего делать не будут. (Вот и мне в личку приходили предложения о покупке моих изделий до тех пор, пока я не обозначил свою страну. После этого – как отрезало. 🙂) Кроме того, такая репликация требует какой-никакой квалификации и не каждому доступна. Те же, кто на это способен тоже не хочет заниматься чужими проектами, поскольку им это не интересно и у них есть какие-либо свои. Поэтому я и предложил свое решение проблемы, не связываться с достаточно сложными конверторами, а просто и незатейливо самостоятельно сделать оптическую последовательную мышь. Мой первый вариант был очень прост, а также было предложен способ достигнуть результата без изготовления печатной платы. Любой, кто умеет держать в руках паяльник и знает, как пользоваться мультиметром потенциально способен за пару дней изготовить собственную оптическую последовательную мышь. Мой топик так и называется Homemade Serial Optical Mouse? It's Simple!. Недостатком этого варианта было то, что он требовал внешнего питания, которое предполагалось брать от порта клавиатуры через сплиттер. Следующий вариант питается прямо от СОМ порта. Ранее считалось, что это невозможно из-за слишком большого потребления тока сенсором. Я сам тоже так считал. Однако загоревшись идеей преодолеть это ограничение, я решил и эту проблему. Третий вариант выжал все возможности самого развитого последовательного протокола Microsoft IntelliMouse. Т.е. поддержка трех кнопок и колеса. Также была добавлена аппаратная кнопка двойного клика, так как не один известный последовательный контроллер не поддерживает такую функцию. Одним из недостатков последовательных мышей является низкая частота рапортов. Например, для IntelliMouse это всего 30 посылок в секунду на стандартной скорости интерфейса 1200 бод. Этого явно мало для игр, частоту можно поднять, увеличив скорость обмена. Это и было мной сделано, по желанию поддерживаются скорости вплоть до 9600 бод. При этом частота рапортов составит 240 в секунду, что больше максимально достижимой в 200 для PS/2 мыши. Однако стандартные драйверы уже не годятся, их нужно модифицировать. Это тоже было мной сделано для DOS, Win3x и Win9x как самых популярных среди владельцев старых компьютеров. Дальнейшее совершенствование последовательных мышей уперлось в ограничение протокола. Даже если использовать конвертор и пятикнопочную да хоть десятикнопочную USB мышь, все равно будем иметь только три стандартные кнопки и колесо. Для чего-то большего придется писать собственные драйверы, да еще и для разных ОС, задаче весьма непростая. Новый вариант, который я сейчас проектирую, преодолевает и это ограничение. Можно иметь столько кнопок, сколько есть на клавиатуре клавиш. Достаточно стандартных системных драйверов, поддерживается любая ОС. Есть возможность скроллинга в тех DOS и Win3x программах для которых это имеет смысл. Все мои мыши — это только действующие демонстрационные образцы, если угодно, идейные концепты, демонстрирующие возможность и пути создания последовательных мышей с недостижимой ранее функциональностью. Причем все они изготовлены в домашних условиях, а значит при должном желании могут быть реализованы и другими, разумеется творчески переработав как схему, так и исполнение и даже придерживаясь строгих требований ревнителей электронного феншуя. «Цели определены, задачи поставлены – за работу, товарищи». В отличии от иных других моих проектов, эти для меня не являются утилитарными. По большому счету все эти мыши мне не нужны, в игры я не играю, досом пользуюсь редко и вполне довольствовался бы одной клавиатурой. Я создаю их как некий образец для подражания любому заинтересованному желающему. Поэтому мне все равно что у мыши внутри: ДИП, СМД, микроконтроллер да хоть лампы. Главное, что она должна функционировать так как я и задумал. Но все же я ограничен доступной мне технологией, затрачиваемым временем и прикладываемыми усилиями. Надеюсь теперь понятно почему я так активно сопротивляюсь попыткам пересадить меня на микроконтроллеры.
  3. Спасибо! Это уже кое-что интересное. Сейчас нет времени, завтра попробую проанализировать и приспособить под мои нужды.
  4. Отвечу всем сразу. Я занимаюсь домашним изготовлением печатных плат не один год и, уж поверьте, перепробовал много способов в попытках улучшить их качество, но толи у меня нет таланта, толи руки растут не из того места, но никакого кардинального улучшения не смог добиться. Да и монтажник из меня никудышный. Приходится с этим жить. Также я решил не заморачиваться более с СМД, применяя такие компоненты лишь изредка и только в необходимых случаях. В частности, в данной разработке используется 14 ключей на MOSFET SOT-32 транзисторах для подключения к контроллеру клавиатуры, поскольку транзисторы в ТО-92 просто не помещаются. Так же я не могу разбить плату на несколько и сделать из них вертикальный стек. Контроллер клавиатуры, изъятый из собственно клавиатуры, сам является не такой уж и маленькой платой которую также нужно разместить внутри корпуса мыши. Места для каких-либо еще плат уже не остаётся. На самом деле мне удалось впихнуть все мои решения, в том числе и новый вариант схемы энкодера, в габариты платы мыши и, если бы не начало дачного сезона, я бы уже изготовил ее. Однако получившаяся разводка мне не нравится чисто эстетически, когда я смотрю на то что получилось меня пробирает дрожь при мысли о том, как я буду все это паять. Приступить к изготовлению я смогу только в начале октября, вот я и подумал, что за оставшееся время может быть найдется более элегантный вариант. По поводу изучения микропроцессоров. Микропроцессоры для меня не новинка, когда-то я уже делал разработки на их основе и хорошо представляю себе процесс возни с ними. Тогда это был древний i8048, сейчас делать что-либо на нем, пожалуй, не стоит. Изучение чего-либо нового это хорошо, но есть нюанс. Нюанс этот заключается в возрасте, который сильно, очень сильно затрудняет освоение нового. Это не оправдание моей лени и не кокетство, а объективный процесс угасания нейрофизиологических функций головного мозга в старости. Собственно, я потому и выбрал себе более-менее интеллектуальное хобби чтобы окончательно не отупеть. Тем не менее я бы мог напрячься и всё-таки с грехом пополам освоить новую версию какого-либо микропроцессора если бы другого выхода не было. Но в данном случае такой выход есть. Я для себя не вижу никакого смысла изучать что-либо про запас, на будущее до которого я могу и не дожить. У меня есть множество других идей, которые мне бы хотелось реализовать, поэтому слишком мало времени чтобы тратить его на то, что может и не пригодится. Зачем нужна такая мышь. Существует целое международное сообщество людей, увлекающееся старыми компьютерами. К таким компьютерам зачастую невозможно подключить другую мышь кроме последовательной в связи с отсутствием нужных портов. Однако все, за очень редким исключением, последовательные мыши — это механические шариковые мыши. К тому же они сами по себе старые и их эксплуатационные свойства оставляют желать лучшего. Привыкнув пользоваться оптической мышью, пересаживаться за шариковую мучительно. Поэтому любителями разработаны конверторы интерфейсов и протоколов, дающих возможность использовать современные USB или PS/2 мыши. Я тоже пытаюсь внести свой посильный вклад в благое дело, являясь автором нескольких последовательных оптических мышей. Следует сказать, что до меня, по-видимому, никто подобных мышей не делал, по крайней мере мне не удалось найти каких-либо следов в Интернете. Новый вариант будет по-своему уникален, его уж точно никто не делал, поскольку он использует одну не очевидную возможность, которая так же была исследована и реализована мной. Не сочтите сказанное за хвастовство, просто это мое любимое дело и хобби.
  5. К чему весь этот сарказм? Если вы не можете или не желаете ответить по существу дела, то было бы куда достойней просто пожать плечами и промолчать. Я действительно не являюсь профессиональным разработчиком, а всего лишь любитель, хотя и не новичок. Когда-то, во времена Союза, я профессионально занимался разработкой систем управления промышленным оборудованием, дорос до ведущего инженера, руководителя группы. Все закончилось в 92 году в связи с тем, что в моем городе перестали существовать предприятия, занимающиеся каким-либо разработками в области электроники. Пришлось уйти в смежные области уже не связанные с разработкой. Разумеется, безнадежно отстал от тенденций в современной микроэлектронике. Теперь я уже давно пенсионер и, вспомнив былое, в качестве хобби разрабатываю и изготавливаю интересные для меня несложные поделки. С технологической стороны они застряли в прошлом веке, но свою функцию исполняют исправно. Да, с точки зрения профессионалов, занимаюсь бесполезной ерундой, но неужели лучше сидеть на диване и смотреть телевизор как многие пенсионеры? Я изготавливаю печатные платы с помощью лазерного утюга, с этим связаны мои личные проблемы с использованием компонентов в СМД исполнении. Минимально достижимая для меня ширина дорожек – 0,4 мм, зазор – 0,25 мм. Лучше у меня уже не получается. Платы двухсторонние. Для меня сложно точно совместить рисунок дорожек при переносе на текстолит, поэтому приходится использовать несколько завышенный диаметр пятачков под переходные отверстия. При этом никакой металлизации отверстий, приходится запаивать проволочные перемычки. Как результат, при попытке использовать СМД чипы реальная занимаемая площадь становится больше чем при использовании ДИП из-за резкого роста количества межслойных переходов, которые съедают всю экономию. В связи с этим советы использовать СМД конечно правильные, но лично для меня бесполезные. Точно также для меня бесполезны советы применить микроконтроллер поскольку для этого мне придется освоить какую либо среду его программирования, приобрести средства отладки и прошивки потратив на это не мало времени. Все это ради изделия в одном экземпляре? Возможно я выскажу спорное мнение, но мне кажется, что замена пары - тройки корпусов жесткой логики микроконтроллером в данном случае как раз и будет непрофессиональным решением. В мои школьные годы выпускалось довольно много книг со сборниками всяческих математических и физических головоломок, и я со своими приятелями с удовольствием тратили время на их решение. Я и сейчас люблю искать решения каких-либо сложных или не очень сложных технических проблем просто в качестве гимнастики для ума. Поэтому, когда я обращался за помощью на лучший форум по электронике на котором присутствует множество профессионалов поднаторевших в разработках всяческих устройств, я полагал что и здесь найдутся те, кто воспримет разрешение моей задачи просто как тренировку своей изобретательности и подскажут мне хорошее решение. До сей поры этого не случилось, кроме моего, другого решения нет. По-видимому, я всё-таки не совсем пропащий и еще кое-что могу.
  6. Я привел старый вариант схемы на котором я обломался из-за того что не учел разницу в работе энкодера колеса мыши и rotary encoder, использование которого освоил ранее. Схема прекрасно работает, нет ложных импульсов при смене направления вращения, но... Но выдает импульсы только на каждый второй "шелчок" колеса. Поскольку колесо можно остановить в промежуточном положении, необходимо ограничивать длительность импульсов, что и достигнуто в этом решении. Если длительность имульсов не ограничивать это будет воспринято контроллером клавиатуры как постоянное удержание клавиши, что в данном случае строго противопоказано. Новый вариант, который я приводил ранее, будет работать именно так, как и нужно. Однако он слишком громоздок и его трудно разместить на ограниченной площади печатной платы мыши, учитывая что остальная часть схемы тоже требует дефицитного места. Каждый "лишний" резистор имеет значение. Поэтому мне и хотелось бы найти эквивалентный вариант, но с меньшим числом компонентов.
  7. Нет, никаких самописных драйверов не нужно. Все работает стандартным образом через стандартные системные драйверы. Причем на любой ОС поддерживающей СОМ портовую мышь. Внимательно посмотрите на блок схему, все пакеты содержащие информацию о нажатии клавиш и перемещении мыши передаются через соответствующие интерфейсы обычным образом.
  8. Тем не менее такой пионерский подход позволил разработать и изготовить не одно устройство. В данном случае, как я уже писал, мной была изготовлен работающий вариант этой мыши, хотя и с ошибкой в реализации схемы энкодера. Собственно та схема, что я опубликовал получена тупо удвоением первоначального варианта с инвертированием сигналов от энкодера и суммированием выходных сигналов.
  9. Насчет времени дребезга затрудняюсь что-либо сказать, так как не имею инструментальных средств чтобы его измерить. Величина подавляющих дребезг емкостей выбрана эмпирически. При наладке устройства можно будет подобрать их величину по минимальной достаточности. Период сигнала зависит от того с какой скоростью вращается колесо. Оценочно, не менее 100 mS.
  10. Та схема, что я начертил только часть полной схемы. Конденсаторы по питанию присутствуют. Если я уберу конденсаторы на контактах энкодера схема гарантированно не будет работать из-за дребезга.
  11. Для понимания моей задумки привожу блок схему. Контроллер последовательной мыши берется от старой шариковой мыши. Оптический сенсор с квадратурным выходом от PS/2 оптической мыши первых вапусков (начало 2000х). Контроллер клавиатуры выдирается из PS/2 клавиатуры. Энкодер из любой мыши с колесом. Остается реализовать управляющую логику, схема энкодера - часть ее. Как видно из блок схемы по существу устройство состоит из двух независимых частей: собственно мыши и иммитатора клавиатуры. Самым правильным решением было бы выкинуть все кроме оптического сенсора и заменить на микроконтроллер. При этом пришлось бы изучать и самостятельно реализовывать протоколы и интерфейсы обмена по COM и PS/2 портам. Все это ради изделия в одном экземпляре. Сомнительное удовольствие. В моем решении все что нужно это разработать несложную управляющую логику. Пожалуйста подскажите как правильно бороться с дребезгом применитнльно к механическому энкодеру. Давайте уйдем от обсуждения конденсаторов, допустим что я уменьшу величину их емкости до 10 нФ. Так пойдет?
  12. Нет тут никакого замыкания контактами одного конденсатора на другой. Контакты замыкают источник питания +5В на емкости в 100нФ. Стандартная схема подавления дребезга. Возможно величина емкости и избыточна, но я применяю такое решение много лет и никакие контакты не подгорают. Наоборот при слишком малом коммутируемом токе из-за окисления контактов возрастает переходное сопротивление, что может привести к сбоям в работе. Достаточный ток, протекающий через контакты разрушает окислы. Это называется "эффект самоочищения контактов". Что касается тока в 1600А, попробуйте посчитать энергию запасаемую конденсаторами и прикинте сможет ли она что-либо "заврить".
  13. Я уже изготовил прототип задуманной мыши и уменя все заработало за исключением схемы энкодера построенной на одной ИС. Импульсы на выходе схемы появлялись только каждый второй "щелчок" колеса. Я ранее имел дело с китайским rotary encoder и по-наивности полагал что энкодер колеса мыши работает также. Оказалось что нет. Диаграмма его работы не такая же, хотя на первый взгляд и похожа. Моя задача получить минимальную по компонентам схему, я бы хотел предложения с конкретным схемотехническим вариантом, если, конечно, это Вас не затруднит.
  14. Хотя я и не указал на схеме, что используются КМОП ИС К561ТМ2 и К561ЛА7, полагая что это станет ясно после одного взгляда на нее специалистом, но на всякий (всякого) случай уточню. Пожалуйста обясните, почему заварятся контакты от тока 0,5 мА и в чем конкретно нарушение всего и вся, хотя бы один пример. Я устраню.
×
×
  • Создать...