Oscill Support Forum

You are not logged in.

#1 2010-12-06 11:20:29

K.
Member

Скриптовый язык в оболочке Oscill

Несколько раз, здесь на форуме, задавался вопрос - "А нельзя ли сделать из oscill самописец?"

Не было ли идеи в оболочке реализовать некое подобие интерпретатора скриптов?

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

Проверка условия на выход измеряемого параметра за заданные границы позволит реализовать
следящий регистратор.

При этом используются стандартные функции оболочки, но пользователь может "сконструировать"
нужный ему нестандартный прибор.

Сделать либо как функцию рекордера, либо отдельным пунктом "интерпретатор скриптовых команд"

 

#2 2010-12-06 15:08:52

Oscill
Oscill author

Re: Скриптовый язык в оболочке Oscill

Самописец отличается от осциллографа непрерывностью записи. Сейчас можно сделать запись долгую (десятки секунд), но всё равно конечную. Со стороны oscill-а самописец получается легко: нужно просто не прекращать поток выборок, направляемый в компьютер. Однако, софт потребует значительного усложнения: отдельное окно самописца, где бежит не луч, а подложка с историей.

Экспорт данных из измерителей в реалтайме - в очень близкой перспективе, в очередной версии ПО.

Свой графический логгер в измерителях - это тот же самописец, концепция бегущей бумаги под неподвижным пером. Тоже в планах, но подальше.

Действия на выход показаний измерителя за границы - также в планах (там, где в измерители будут добавлены линейные/секторные шкалы).

 

#3 2010-12-06 15:52:30

K.
Member

Re: Скриптовый язык в оболочке Oscill

Oscill wrote:

Самописец отличается от осциллографа непрерывностью записи. Сейчас можно сделать запись долгую (десятки секунд), но всё равно конечную. Со стороны oscill-а самописец получается легко: нужно просто не прекращать поток выборок, направляемый в компьютер. Однако, софт потребует значительного усложнения: отдельное окно самописца, где бежит не луч, а подложка с историей.

Возможно именно такая реализация самописца(с отдельным реалтаймовым окном) не многим нужна.
Запись можно проиграть и из файла. Реальное же текущее состояние отображает главное окно оболочки.

Oscill wrote:

Экспорт данных из измерителей в реалтайме - в очень близкой перспективе, в очередной версии ПО.

Свой графический логгер в измерителях - это тот же самописец, концепция бегущей бумаги под неподвижным пером. Тоже в планах, но подальше.

Действия на выход показаний измерителя за границы - также в планах (там, где в измерители будут добавлены линейные/секторные шкалы).

Самописцы привел просто как пример реализации функций.

Например при пересечении заданного порога контролируемой величиной кому-то понадобится, чтобы оболочка
сказала "Бип", или вызвала какое-либо действие.
Реализовывать весь спектр таких одноразовых "странных" функций вряд ли стоит.
А вот при наличии некоего ограниченного набора скриптовых команд каждый мог бы
изваять нечто необходимое только ему, в меру своих способностей.smile

 

#4 2010-12-06 18:09:08

Oscill
Oscill author

Re: Скриптовый язык в оболочке Oscill

K. wrote:

Реальное же текущее состояние отображает главное окно оболочки.

так его тоже нужно кардинально поменять, чтобы отображать не пакетами, а лентой. Уж проще сделать (значительно менее нагруженное функциями, зато растягивающееся) отдельное окно самописца, а в основное окно осциллографа выхватывать из бесконечной ленты самописца интересующие куски, и уже там обрабатывать полноценно.

K. wrote:

Например при пересечении заданного порога контролируемой величиной кому-то понадобится, чтобы оболочка сказала "Бип", или вызвала какое-либо действие.

именно так и запланировано: звук/запуск программы/запись в лог. Только порога два - верхний и нижний.

K. wrote:

А вот при наличии некоего ограниченного набора скриптовых команд каждый мог бы
изваять нечто необходимое только ему, в меру своих способностей.smile

его ограниченность будет его недостатком. Уже есть реалтаймовый экспорт в буфер обмена, скоро будет внешнее управление и экспорт в сеть. Писать под Windows несложно, зато возможности широчайшие: например, так сделан кардиограф на базе oscill.

 

#5 2010-12-06 19:35:32

K.
Member

Re: Скриптовый язык в оболочке Oscill

Ясно, правда не совсем то, что я имел ввиду.
Например такая задача - у меня в парадной паршивое напряжение.
Мне интересно, как оно изменяется в течение суток. При этом
полной непрерывности фиксации не нужно.
Устраивает опрос AC voltage RMS например раз в минуту
и запись этой величины в файл в виде <системное время><величина>
На протяжении суток или до остановки выполнения вручную.

Скрипт вида
file <имя файла>
param <AC voltage RMS>
interval <1m>
write <file>,<time><param>
start

позволил бы сделать это.
Получился бы такой себе регистратор.

Конструкции
while-do
if-then
позволили бы делать условную обработку

beep
exec <file>
вызвать внешние по отношению к оболочке действия.

Сейчас же, как я понял планируется оболочку использовать, как подчинённое
приложение какой-либо внешней программе. Которую ещё нужно написать,
или установить пакет типа ЛабВью и из неё делать вызовы к оболочке.

 

#6 2010-12-06 21:02:53

Oscill
Oscill author

Re: Скриптовый язык в оболочке Oscill

K. wrote:

Устраивает опрос AC voltage RMS например раз в минуту
и запись этой величины в файл в виде <системное время><величина>
На протяжении суток или до остановки выполнения вручную.

Это всё будет без всяких скриптов, поскольку задачи типичные. А интервал между фиксациями величины уже есть - это Average time в каждом измерителе.

K. wrote:

Сейчас же, как я понял планируется оболочку использовать, как подчинённое
приложение какой-либо внешней программе. Которую ещё нужно написать,
или установить пакет типа ЛабВью и из неё делать вызовы к оболочке.

скорее не подчиненное приложение, а приемник, непрерывно получающий от oscill-а те же данные, что и сама оболочка, и обрабатывающий их по своему алгоритму. Алгоритм обработки данных (например, вычисление КНИ) скриптом не описать. А простейшие популярные действия (усреднение, проверка границ, поиск мин/макс, реакция на них и сохранение) должны быть (и будут) встроены в оболочку, частично уже встроены.

 

#7 2010-12-07 12:04:00

K.
Member

Re: Скриптовый язык в оболочке Oscill

Хочется дождаться такой функциональности.
Но не перегрузит ли это меню оболочки?
И поиск в меню этих функций будет неочевидным, мне кажется.
Надо будет и в документации это указать явно.

А такая "третья рука" - Дождаться события, например появления синхронизации или перехода параметра через
заданный порог, и запустить рекордер на 2 минуты 30 секунд или 1500 фреймов?

Вы подразумеваете сложную обработку информации от oscill.
Я же подразумеваю автоматизацию на уровне нажатий кнопок в оболочке и вызова пунктов меню.

Хотя, да если такой функциональности не планировалось, то по живому прикручивать её
может быть неприятно. Тем более если нет востребованности.

 

#8 2010-12-07 18:37:55

Oscill
Oscill author

Re: Скриптовый язык в оболочке Oscill

Такой набор функций всё-таки проще реализовать, чем интерпретатор скриптов.

Меню не перегрузится: экспорт будет в каждом измерителе по правой кнопке мыши на значении (там еще много места smile даже на 480x640), а действия по границам - графически на шкалах.

Контроль параметров на граничные значения - базовый функционал, должен быть обязательно.

 

Forum Tools