Пишу тут, т.к. считаю, что здесь больше шансов что увидят, нежели в другом месте. Итак, суть вопроса. Вводная. Есть некий набор измерительной аппаратуры, из разных комплексов, который выдаёт по длинным проводам измеряемые величины. В каких-то случаях это отсчёты в виде обычных импульсов, где-то синусы и сложные сигналы. Приборов почти десяток. И почти у всех, параметры сигнала отличаются как по частоте, так и по амплитуде. В нескольких местах, даже фаза гуляет на эту тему. Почти все приборы имеют в виде приёмника некую хрень в обычном компе, которая умеет читать сигнал и писать в файл. Но хрени разные. Форматы файлов тоже разные. Есть задача все эти сигналы собрать в одном месте и обработать. Обработка будет заключаться в анализе спектра сигналов через преобразование Фурье и другими методиками и дальнейшем формировании графиков. Мы подумали раза три-четыре и поняли следующее: 1. Создавать с нуля некий унифицированный аппарат с АЦП и к нему цеплять все датчики мы не будем. Слишком заморочно, да и смысла нет это делать для, по сути, разового эксперимента. 2. Писать под это дело программу, тоже никто не будет, причина указана в п.1. 3. Задача может быть решена путём использования сторонних, стандартизованных программ. И решили мы следующее. Мы берём некую программу, которая умеет читать некие файлы определённой структуры в которые мы загоним данные с датчиков. Это программа проводит анализ данных и рисует графики. По минимуму позволяет произвести минимальный анализ полученного материала и опять же всё это дело рисует. N.B. Задача решается не в реальном времени, если файлы придут на час или день позже - никто не помрёт, разве что от любопытства. Мы решили, что по идее, для этого может подойти MathCad Prime. Удалось его спиздить и поставить - работает, даже что-то решает. В принципе - удобно. Вопрос! Кто-нить решал подобные задачи с помощью Прайма? Реально ли такое решение? Есть ли другие программы, позволяющие проводить минимальный мат.анализ внешних данных, которые можно успешно спиздить и пользовать? P.S. Про "купите нормальный продукт" даже слышать не хочу. Ибо денег нет, а держимся всё хуже и хуже. Про студентов. Их нельзя. Поэтому, всё делать самим. Забыл сказать. Естественно, полученные сигналы после оцифровки должны будут фильтроваться и обрабатываться. Желательно, в той же программе.
Да, при этом, в сигнальных кабелях иногда присутствует и питающее напряжение. От постоянки до 36/400. Вариантов там несколько. Его тоже нужно фильтровать, но не всегда.
Вот собранный абсолютно от балды пример. Сигналы взяты нарочно такие близкие по частоте, сама частота уменьшена в 1000 раз. Т.е. поле идёт в диапазоне 5-50кГц., а фокус от 2,5 до где-то 15кГц и ежу понятно, что они по определению идут в разных сигнальных линиях. В принципе, такой результат нас устраивает вполне. Но вот соответствие кашруту вызывает неустранимые сомнения.
Эстель, я правильно понимаю, что в каком-то виде сигналы уже обработаны разными АЦП и уже лежат или подаются потоком на разных компах, м нужно только собрать файлы воедино куда-нибудь , привести к одному формату и отобразить? Отправлено с моего Redmi Note 3 через Tapatalk
В том-то и дело, что нет. Часть - оцифрована. С различной дискретностью и уровнем квантования, что характерно. А есть ряд датчиков, которые не имеют своих цифровых преобразователей. Ибо работали они исключительно в составе аналоговых комплексов. Для них, ессно, придётся делать свои АЦП, но их немного. В остальном - да. Собрать в одном месте в виде файлов, привести к единообразию и отобразить. Потом, очень желательно, хотя бы минимально обработать в цифровом понимании этого слова. Т.е. отфильтровать ненужное и иметь возможность для какого-то минимального полуручного математического анализа. Т.е. является ли представленный график отображением какой-то линейной/нелинейной функции, статистика. И вот Прайм понравился тем, что в нём можно взять готовый массив данных и крутить его в режиме реального времени. Графики он даёт. Интегрировать результаты и пробовать их решать мы не стали - не умеем. А все наши математики куда-то хором съеблись. Фильтрация по уровню сигнала возможна и работает. По частоте ещё не пробовал - для этого, опять же, надо математику вспоминать и явно не в объёме школы. А остальную я уже давно забыл. Как это аппаратно решить, я знаю и понимаю. Но тут совсем другой вариант.
Я в Прайме и в современном софте обработки сигналов не компетентен, но, как закончившего кафедру информационно-измерительной техники меня напрягает, что сигналы в аналоге передаются по длинным проводам до оцифровки. На этом пути они же помех нацепляют, как собака блох. М.б., если все-равно пару блоков оцифровки делать придется, то сделать таких по числу всех датчиков, оцифровывать сигналы прямо "на месте" и передавать на сервер уже оцифровки в одном формате? Убьете двух зайцев: 1. вся дискретизация в одном формате - проще свести и обработать; 2. не придется экранировать линии передачи от помех и фильтровать помехи перед оцифровкой.
Эстель, пропиши (для себя и потом сюда) карточки по каждому сигналу, требующему обработки: 1. Характерные свойства сигнала (уровень, частота, форма сигнала) 2. АЦП (какое имеется или какое требуется) 2а. расстояние от источника сигнала до АЦП 3. ОС на компе с АЦП (какая имеется или какую можно установить) 4. Формат данных, принимаемых ОСью из АЦП 5. Требования по передаче принятого сиганала (поток, файл) 6. Подключение ОСи к СПД. 7. Возможность ОСи синхронизировать своё время (выход в тырнет) 8. Требования по хранению принятых сигналов 9. Возможности сервера по обработке принятого сигнала Сначала определиться с приёмом и хранением данных, а после этого можно приступать и к обработке сигналов.
добавлю, что согласно науке по антенно-пфидерным устройствам, длинные линии имеют распределенную емкость и индуктивность, кои вносят искажения в исходный сигнал. преобразование нужно делать вточке приема сигнала, как говорит предыдущий оратор
Других вариантов нет. Любая цифра умирает там слишком быстро. А эти датчики, по-большей части из 60-х - 70-х пашут. Бронекабели от датчика до ввода в считывающую аппаратуру. Наводки в момент эксперимента практически исключены. При подготовке они конечно есть, но это иногда и нужно даже. Она есть. В том смысле что есть несколько "хлопушек", которые пишутся на всех группах каналов. "Кто озвучит здесь ответ..." С приёмом и хранением/первичной обработкой мы и так справимся. С этим как раз вопросов нет. У нас вопрос именно по программе для математической обработки готового массива.
Не бывает таких программ (которые на все случаи жизни). Каждый случай особенный. Т.е. как задача чуть усложняется, так или R, или Питон с пакетами типа scipy, pandas и пр.
хм... как-то запутано, не коррелирует с: но если требуется только мат-обработка, да ещё и не в риал-тайме, то - в питоне, типа scipy как andy подсказал. гуглится и пишется лехко и непринуждённо. дискретизацию сами примете какую вам надо, хоть гигагерц. синхронизацию... "вы и так справитесь".
Задача создания АЦП хоть в виде платы для компа, хоть в виде отдельного девайса со связью по какому-либо стандарту - решаема. Она решалась до этого, решим и сейчас. Вот... Посмотрел я как это выглядит. Не то. Я думал, что это что-то типа wysiwyg как это сделано в Прайме. Ан нет. А должно быть юзабельно на уровне девочки-аспирантки, для которой питон это змея и из языков программирования знающей только русский-производственный, которого ей хватает для минимального координатного и исполнительного управления рабочим-кислородчиком. Т.е. грубо говоря, ты пишешь на экране формулу, и тут же, с минимумом усилий и на интуитивно-понятном уровне построения графика всё это выводишь. Остальная же математика - на совести математиков. А им, как я понимаю, вообще похуй на чём писать. Хоть на Си++, хоть на бумаге.
Если написать систему/программу, чтобы даже дураки могли ей пользоваться, то только дураки и будут ею пользоваться.
Да. С одной стороны. С другой стороны, это неплохо ограничивает от персонажей, которые не только в состоянии, но и имеют желание что-то настолько глобально поменять в системе, что потом хоть стой хоть падай. И при этом, что характерно, обычно они это делают, сука, молча.
Непонятен смысл вопроса: если уже есть маткад, он читает то что надо и рисует то что надо - в чём тогда проблема? Проще маткада в освоении только электронные таблицы. Если он не всё читает/считает - непонятно чего именно не хватает?
Ну он есть только у меня пока. Примеряем. А по факту, на рабочих местах ещё ничего нет. И я ещё не уверен в том, что он рисует всё что надо. А проверить не могу. Просто хотелось изучить различные варианты из доступных и подходящих по функциональности. Ещё ведь возможен вариант, что вернутся математики, увидят всё это благолепие и скажут, что все это хуйня. А они могут. Я не всё могу проверить.
Из википедии: Символьные вычисления (как в маткаде) Axiom GAP Maple Mathcad Mathematica Maxima Reduce SMath Studio Yacas Численные вычисления (язык или среда для программирования) Fityk FreeMat GAUSS GNU Octave gnuplot gretl Julia LabPlot LabVIEW MagicPlot MATLAB Origin QtiPlot R Sage SciDAVis Scilab SigmaPlot Speakeasy VisSim Есессно в природе существуют узкоспециализированные приложения с конским ценником и недружественной лицензией(например по дням или даже часам). Лучше не про кабели и частоты писать, а про то какие математические операции необходимы. Если например разложение по гармоникам, то это сейчас практически стандарт, в каждом утюге...