Ну вот, не успел высказать одну "хотелку", как уже придумалась другая...
Все мы видели (а некторые даже делали), как при работе на ноутбуке в стационарных условиях к нему подключают внешние клаву, мышь и даже монитор. Такой подход никак не ухудшает мобильности ноута, зато добавляет удобства в работе, а заодно снижает износ его встроенных средств ввода.
При работе с WinOscill-ом, как я подозреваю, очень часто придется пользовать мышь для переключений и настроек. При этом, по-первых, необходимо некоторое свободное место для ее перемещений; во-вторых, грязными рабочими руками тискать нежное животное - антигуманно; ну и в третьих, при манипуляциях потребуется внимательно смотреть в экран на курсор, и довольно точно прицеливаться им по пимпочкам - а это сильно отвлекает от внутренностей пациента.
Что я предлагаю. Предусмотреть в WinOscill интерфейс к опциональной "железной" панели управления осциллографа. Т.е. коробочка, в стационарных условиях подключаемая к ПК, с основными органами оперативного управления, дублирующими оные в WinOscill: усиление и смещение по Y, развертка и смещение по X, уровень и тип синхронизации.
Возможность собрать такую коробочку, думаю, можно оставить радиолюбителям , с вашей стороны необходима только доработка ПО под Windows. Стандартизировать какой-либо способ связи с программой, а там - паяльник нам в руки! Возможные варианты подключения я вижу такие:
Через COM-порт (возможно, виртуальный через USB) по протоколу, например, MODBUS. Тогда любой знаток PIC-контроллеров фирмы AVR сможет сам написать прошивку и подключить имеющиеся у него органы управления (кнопки, потенциометры, енкодеры и т.п.)
Подключение кнопок и даже енкодеров прямо к LPT-порту (он есть пока что даже у новых мат. плат, хотя бы в виде "гребенки").
Порт джойстика очень удобен для прямого подключения реостатов и кнопок, но вот его я уж точно давно не видел
Кроме мыши, предусмотрены быстрые кнопки - именно чтобы держать осцилл в правой руке, а управлять левой. Но, вообще, идея аппаратных валкодеров, педалей и кнопок (например, несколько тонких кнопок можно прикрепить прямо к oscill в районе большого и указательного пальцев) - давно в планах, и будет реализована. Для бОльшей гибкости (а также для управления со стороны других приложений) в оболочке будет программный интерфейс, а прием команд от железной панели будет выполняться отдельным софтом.
В общем-то, если использовать что-то типа самодельной USB-клавиатуры из http://www.obdev.at/products/vusb/hidkeys.html , и привязать к кодам клавиш, генерируемых ей, органы управления WinOscill, то даже и ничего не надо будет в программе доделывать
Еще вариант. Есть такие программы для КПК (точнее, его связки с ПК), типа "Nyditot Virtual Display", "sidewindow" и т.п., которые добавляют к Windows дополнительный "дисплей", на который можно стандартным виндовым образом расширить десктоп. Причем, даже нажатия на тачскрин КПК эмулируют соответствующие нажатия мышки! Таким образом, если в программе сделать небольшую (320х200) панельку с основными органами управления WinOscill, то ее можно будет "вытягивать" на подключенный таким образом КПК, и управлять прямо пальцами по экрану! А уж если КПК подключен по IRDA или Bluetooth!...
Какой еще фирменный осциллограф имеет беспроводноесенсорное управление?!...
Это красивый вариант, но в сущности - частный случай удаленного доступа к осциллографу. Глобально - надо делать сервер, и подключаться к нему по сети (в том числе с покетных клиентов). Вплоть до веб-интерфейса.
Однозначно мышкой настройки вводить медленно и не удобно. А у меня другая идея. Можно сделать на недорогом микроконтроллере приставку с несколькими потенциометрами(кнопками), подключенную к com(usb-com). И реализовать изменение чувствительности по амплитуде(mV/div) и времени(xS/div). Это многократо увеличело бы удобство при работе с Oscill. Был бы только какой то интерфейс для управления через внешний порт в оболочке. Если интересно то я могу собрать такой контроллер и написать прошивку для него.
При интенсивном использовании ОСЦИЛЛа "железячная" панель управления была бы очень кстати. И самый простой вариант действительно кнопки на LPT порту, а самый подходящий, на мой взгляд, GAME порт. Простота реализации, стандартные библиотеки для ПО, для ноутов - USB джойстики переделать можно. Самое главное - наличие аналоговых входов, ведь как приятно регулировать смещение и уровень синхронизации простыми крутилками.
Далеко не везде нынче есть game - порт, большинство материнок со встроенным звуком. А чтобы получить иллюзию аналогового управления - вместо кнопок к LPT можно будет подключить валкодер. Внешнее управление будет вынесено из оболочки, чтобы можно было разные варианты подключать.
так. планирую сделать корпус для осцилла с вынесенными на верхнюю часть кнопками в связи с чем, возник вопрос - какие функции наиболее нужны? кнопок 10-15, думаю не надо больше.
End - увеличить время/деление Home - уменьшить время/деление PgUp - повысить чувствительность канала (уменьшить В/дел) PgDn - понизить чувствительность канала (увеличить В/дел)
? Up - сместить осциллограмму вверх (аппаратный offset) ? Down - сместить осциллограмму вниз (аппаратный offset) ? Up - сместить осциллограмму вверх (аппаратный offset) ? Down - сместить осциллограмму вниз (аппаратный offset)
< - опустить уровень синхронизации > - поднять уровень синхронизации
B G - сохранить изображение осциллограммы с экрана в GIF-файле
A - включить режим усреднения (Average mode) H - включить режим высокого разрешения (HiRes mode) P - включить пиковый режим (Peak mode) D - открытый/закрытый вход E - включить/выключить режим памяти (DPO) I - переключить на следующий метод интерполяции
Backspace - запустить однократную оцифровку \ - переключиться между многократным и однократным режимами
вот такой примерный список, что наиболле используется? и на чем лучше сделать - кнопки, потенциометры, энкодеры, ползунки, качели, или что
Я предлагаю сделать так. В оболочке добавить дополнительную настройку. В ней указать порт(lpt или com), и номер порта.Потом назначать команды для управления на любые пакеты, приходящие из указаного порта. Например назначить на пакет 0x01 выполнить mV/Div 20, на 0x02 mV/Div, и.т.д. В этоге каждый сможет сделать простой джойстик с кнопками и потенциометрами, и настроить его для себя. А настройки можно хранить в файле и при переносе на другой компютер достаточно скопировать к программе этот фийл.
ну вот у мен из интерфейсов только usb и хочется универсальное решение поэтому буду делать на юсб. в корпусе хаб, к котору подключен осцилл и клавиатура
а вот кстати хороший, вдумчивый файл настроек не помешал бы.. в реестре не так удобно настраивать
Описывать все возможные способы управления и порты ввода в оболочке осциллографа - расточительно. Правильнее сделать иначе: в оболочке открыть внешнее управление (через сеть, буфер обмена, и т д). И уже всевозможные способы ввода (через LPT, джойстик, ИК пульт от тюнера...) реализовывать в отдельной программе, которая подключается к внешнему управлению оболочки.
померял ток осцилла: в подключенном режиме - 120ма при запуске оболочки - 125, при измерениях - 130-135, больше 150 не поднимается значит хабу и клавиатуре достается максимум 300 хватит еще и на парочку светодиодов
В реестре извне нельзя настраивать в процессе работы - большинство настроек из реестра берутся только при старте оболочки.
Настройки, сохраняемые в реестре - специфичны, и документировать их придется разве что для организации обмена настройками с другим ПО. Задача совсем не актуальная, поскольку и особой нужды в этом обмене нет, и альтернативное ПО пока отсутствует.
Внешнее управление оболочкой планируется реализовать по специальному стандарту взаимодействия с измерительными приборами - IVI.
ну мне удобнее с файлами конфигурации, особенно под wine, файл настроек хранить в папке гораздо удобнее. и сбрасывать настройки - можно просто удалить файл. копировать и восстанавливать так же
Приемник видится системой как старндартное USB HID устройство, никаких дополнительных драйверов не требует, имитирует мышь, всякие стрелочки, PgUp/PgDn, а некоторые варианты - еще и текстовую клавиатуру! (аналогично клаве мобильника).
Вот такую штуку вполне можно приспособить под беспроводное управление осциллом.
в этом случае вообще ничего со стороны оболочки не нужно - пульт работает как обычная клавиатура. Ограничение: окно oscill должно быть активным, только тогда оно принимает от клавиатуры/мыши.
А недавно в oscill появилась поддержка разных самодельных приемников (например, на COM-порт) - через WinLIRC.
Ну а от себя в копилку добавлю вот такой девайс http://www.sven.ru/press/news/detail.php?id=5761 в руках, правда не держал . Калькулятор отстегивается , 24 кнопки по идее для OSCILL вполне должно хватить.
есть дешевенькие USB цифровые клавиатуры, как на фото: http://oscill.com/rus/software/winosc /winoscdescr/winoscoscpanel/winosckeyb/682-keyboardassign.html
Пока 24 кнопы в других NumPad не обнаружены Да и толстовато 27mm по высоте , но с калькулятора !
Может быть, интересна даже не сама клавиатура, а сделать (взяв платку из любой PS/2 или USB клавиатуры) - панель управления осциллографом с валкодерами и даже педалями.
Оце загорівся ідеєю залізної панелі з валкодерами. Планую це оформити як BLE HID-клавіатуру (так сталося що під рукою опинився BLE-енейблед мікроконтроллер, тобто мені це простіше зробити ніж ЮЗБ, а оскільки і сам осцил блютусний - то чом би й ні?) Наразі доступні три валкодери (кожен з кнопочкою, тобто двохрежимні), функції можна розподілити так: один - атенюатор і (натиснутий) зсув по вертикалі другий - розгортка і (натиснутий) зсув по горизонталі третій - рівень синхронізації. по натисканню можна активувати режим синхронізації "авто" (наразі нічого хитрішого в голову не приходить)
Тепер по кнопочках: одну точно треба на DC. на GND і все решта - сумніваюся чи треба (можна і з основної клави, тільки для фільтрів кей-асайнмкнти поправити щоб одним натисканням включалися). Підкажіть будь ласка що ще треба з "кнопочних" налаштувань мати оперативно під пальцями поряд з валкодерами? (бо я наразі початківець у використанні oscill'a, ще у всіх його плюшках не розібрався)
Ага, от уважно придивився і помітив ще один "повзунковий" параметр - Fine time/div trim (це дуже круто, між іншим, рідко який цифровий скоп нижньо-середнячкового рівня так вміє). Так от його можна сумістити з основним часом розгортки. а зміщення по горизонталі - з рівнем синхри (при чому рівень - через натискання, бо рідше юзається, а просто натискання без прокручування активувало би авто-режим синхри).
Очікую Ваших коментарів
Результати (фотки і прошивку) викладу у вільний доступ, благо БЛЄ-модуль недорогий (від 10бкс), тобто доступний для повторення.