Утилита для просмотра CSV осциллограмм — CSV See
Многие цифровые осциллографы позволяют сохранять наблюдаемые осциллограммы в виде графических файлов и CSV таблиц, так же возможны и другие форматы. Если с графическими файлами всё понятно, их можно без проблем открыть на любом компьютере, мобильном устройстве, то с табличными файлами дела обстоят немного посложнее. Минус картинки в том, что она отображает только заснятый кадр (скриншот экрана осциллографа), таблицу же можно просматривать, как угодно и производить с полученными значениями различные расчёты.
Программа CSV See
Для визуального наблюдения сохранённых осциллограмм в формате CSV таблиц была написана небольшая простая утилита — CSV See.
Утилита позволяет просматривать одноканальные осциллограммы до 20 миллионов точек. Программа писалась под форматы осциллограмм получаемых с осциллографа Rigol и утилиты RIGOL see RUU, на файлах полученных с других моделей осциллографов пока не проверялась. Размер рабочей области программы 1000х500 точек. Программа требует примерно 165МБ оперативной памяти, из-за статически выделенного фрагмента памяти под 20 миллионов точек. Если утилита окажется востребованной, в том числе у меня, то будет проведена оптимизация и расширение функционала. Утилиты была написана, т.к. поверхностное гугление не помогло найти готовой бесплатной и не привязанных к оборудованию программы под поставленную задачу. Так же, если Вы можете порекомендовать хорошую программу для просмотра CSV осциллограмм то буду благодарен (желательно через обратную связь).
Навигация по осциллограмме осуществляется с помощью курсора мыши: поддерживается перетаскивание графика по горизонтали и зуммирование с помощью колёсика мыши. Перетаскивание графика возможно 2-мя способами: прокруткой с изменяемой скоростью и перетаскиванием. Выбор режима осуществляется правым кликом по кнопке Move — включающем перетаскивание.
Выбор режима прокрутки
Программа поддерживает курсорные измерения с 2-мя типами курсоров (Display cursor — более наглядный, Mouse Cursor — менее требовательный к ресурсам компьютера), выбор типа курсора осуществляется из выпадающего меню при правом щелчке мыши на кнопку включения курсорных измерений. Выход из режима курсорных измерений — правый клик мыши на рабочую область или нажатие на кнопку курсорных измерений.
Выбор типа курсора в режиме курсорного измерения
Если программу использовать на устаревших компьютерах то для ускорения работы можно включить режим быстрого отображения осциллограмм, в ущерб просчёта пиков всех семплов, на интервал времени одной временной отображаемой линии.
Переключение режима точного и быстрого отображения
Загрузка 309МБ файла с 14 миллионами точек.
Программа изначально писалась для работы с осциллограммами полученными с осциллографа Rigol, позже в программу началось добавление поддержки осциллограмм полученных и с других моделей осциллографов. Программа в режиме авто декодирования осциллограмм — умеет распознавать с какой модели прибора были получены данные. Список поддерживаемых моделей осциллографов приведен в конце статьи. Модели осциллографов из той-же линейки, из схожих линеек и даже от одной марки прибора могут открываться, но без проверки наверняка сказать не полуится.
Выбор модели осциллографа.
Примеры файлов, с которыми работает программа:
Фрагмент файла сгенерированный осциллографом Rigol DS2072A
X,CH1,Start,Increment, Sequence,Volt,-7.182078e-02,2.000000e-08, 0,3.240000e+00, 1,3.360000e+00, 2,3.240000e+00, 3,3.300000e+00, 4,3.340000e+00, 13999997,3.300000e+00, 13999998,3.280000e+00, 13999999,3.300000e+00,
Фрагменты файлов сгенерированные:
- утилитой для осциллографов Rigol — RIGOL see RUU
- Rigol DS4014
- АКИП-4115/1А
- АКИП-4115/2
- АКИП 4125/2А
- GWIntek GDS-71022 ( пример )
- Hantek DSO5202B
- Al Oscilloscope 6x (схема приставки, программа для работы с приставкой)
- Agilent MSO9104A
- Tetronix DPO и MSO серий
- Siglent SDS1202X-E
Внимание приведены только фрагменты файлов, для тех, кому интересно увидеть их структуру. Большая часть осциллограмм по средине файлов вырезана и на месте вырезанного фрагмента оставлена пустая строка. Программа не может работать с разорванными данными, для просмотра используйте полноценный пример.
Программа проверена/доработана для работы с вышеперечисленными осциллографами и утилитами.
Скачать программу CSV See v0.001.014
Изменения в версии v0.001.018 от 2017.02.24
- Добавлен Scroll Bar.
- Добавлена цена деления (вольт на клетку и секунд на клетку).
- Добавлено динамическое выделение памяти.
- Максимальное количество точек увеличено до 60 000 000. (Внимание! программе максимум требуется 460 МБ ОП).
- Добавляется поддержка осциллограмм с осциллографа Hantek DSO5202B (1 канал).
- Добавлена поддержка осциллограмм осциллографа АКИП-4115/2 (1 канал).
- Добавлена поддержка дробной развёртки по высоте.
- Добавлен алгоритм вписывания осциллограммы по высоте.
- Мелкие доработки.
Скачать программу CSV See v0.001.020
Изменения в версии v0.001.022 от 2017.03.20
- Добавлена поддержка осциллограмм измерителя длительных процессов Al Oscilloscope 6x.
Скачать программу CSV See v0.001.022
Изменения в версии v0.001.023 от 2017.07.20
- Добавлена поддержка АКИП 4125/2А (1 канал).
Скачать программу CSV See v0.001.023
Изменения в версии v0.001.024 от 2019.04.16
- Добавлена поддержка Keysight (Agilent) MSO9104A.
Скачать программу CSV See v0.001.024
Изменения в версии v0.001.025 от 2019.06.25
- Добавлена возможность выбора канала для csv файлов с несколькими осциллограммами, для моделей осциллографов: Rigol, АКИП и Agilent.
- Добавлено автодетектирование осциллографов Rigol, АКИП и Agilent, если в одном файле несколько осциллограмм.
Скачать программу CSV See v0.001.025
Изменения в версии v0.001.029 от 2022.02.04
- Стабилизированная версия.
- Исправлена прокрутка.
- При прокрутки колёсиком мыши шаг будет 1,2,5,10,20,50,100…
- Заменены полей ручного ввода значений.
- Добавлено окно настроек.
- Оптимизация работы.
- Добавлена поддержка Tetronix DPO и MSO серий.
- Добавлена поддержка Siglent SDS1202X-E.
Скачать программу CSV See v0.001.029
Программа обновлена 04.02.2022
Статья обновлена 29.01.2017
Alex_EXE | 06.01.2017 | Программы |
Андрей пишет 08.02.2017 в 22:06 #
Очень полезная программа, но мои CSV, полученные из Hantek DSO5202B, не открыла. Не нашёл как залить свой CSV на сайт. Добавьте, пожалуйста, такую возможность.
Спасибо.
Alex_EXE пишет 09.02.2017 в 08:03 #
Проверьте почту.
На будущее для всех посетителей:
Если хотите поделиться файлами на каком-либо ресурсе, где нет возможности их добавлять — можете их загрузить на бесплатный общеизвестный файлообменник, например гугл или яндекс диск и добавить ссылку на него. У меня после модерации или открою ссылку, или загружу файл на сайт.
Alex_EXE пишет 24.02.2017 в 04:47 #
Программа обновлена до версии v0.001.018.
Изменения:
•Добавлен Scroll Bar.
•Добавлена цена деления (вольт на клетку и секунд на клетку).
•Добавлено динамическое выделение памяти.
•Максимальное количество точек увеличено до 60 000 000. (Внимание! программе максимум требуется 460 МБ ОП).
•Добавляется поддержка осциллограмм с осциллографа Hantek DSO5202B (1 канал).
•Добавлена поддержка осциллограмм осциллографа АКИП-4115/2 (1 канал).
•Добавлена поддержка дробной развёртки по высоте.
•Добавлен алгоритм вписывания осциллограммы по высоте.
•Мелкие доработки.
Alex_EXE пишет 20.03.2017 в 17:13 #
Программа обновлена до версии v0.001.022.
Изменения:
•Добавлена поддержка осциллограмм измерителя длительных процессов Al Oscilloscope 6x.
Alex_EXE пишет 14.04.2017 в 08:59 #
Программа была проверена на Rigol DS4014. Работает.
Замечания по доработке для риголов: в авто детектирования добавить авто распознавание 3,4… каналов; добавить поддержку режима осциллограммы с выключенным Sequence.
Make_Pic пишет 04.06.2017 в 20:33 #
Вот бы парсер кода добавить к этой программе, а для расширяемости протоколов — в виде скрипта добавляемого в ini или спец. файл.
Alex_EXE пишет 07.06.2017 в 15:22 #
Подумаю над этим, только через парсер файлы будут открываться примерно в 2 раза медленнее, из-за добавления дополнительной обработки данных.
Сетлана пишет 20.07.2017 в 00:45 #
Отличная программа, наверное.Но не смогла считать свои csv с осциллографа АКИП 4125/2А. Пишет файл не найден или жалуется на разделители «. Мои файлы здесь https://yadi.sk/d/O2BiH5-03LD8zY. Помогите пожалуйста, замеров будет куча, хочется хоть как-то автоматизировать все это дело
Alex_EXE пишет 20.07.2017 в 23:18 #
У некоторых осциллографов от одной марки выходные файлы имеют одинаковую структуру, у других различны.
Вышлите так же пару полных осциллограмм.
x пишет 20.12.2017 в 18:59 #
под вайном — стартует, но не открывает файлы…
Alex_EXE пишет 22.12.2017 в 15:05 #
Для работы с файлами программа использует стандартные методы.
Причины:
Или некорректно настроен вайн, но по работе с ним не подскажу.
Или программа не может понять файлы, которые ею открываете, попробуйте примеры из статьи. Если дело в файлах, то или их некорректно формируете, в опциях осциллографа попробуйте другие настройки выходных файлов;
или программа не поддерживает их формат, у меня не было образца, что бы добавить его в парсер.
Артем пишет 21.12.2018 в 13:19 #
Отличная программа! Большое спасибо!
Прекрасно показывает осциллограммы без танцев с бубнами с АКИП 4126/2а.
Жаль нет поддержки многоканальности…
Vladimir Khludenkov пишет 03.04.2019 в 18:38 #
Здравствуйте. Не могу открыть файлы.
Осциллограф: MSO9104A
Files:
https://yadi.sk/i/tJXzaKe98rEvgQ
https://yadi.sk/i/dZcAPCac9EBl9Q
Alex_EXE пишет 06.04.2019 в 12:18 #
Потому что поддержку файлов данного осцилографа ещё не добавлял. Завтра посмотрю.
Alex_EXE пишет 16.04.2019 в 06:14 #
Программу обновил, добавил поддержку осциллографа Keysight (Agilent) MSO9104A. Хоть и с опозданием.
Fjv пишет 15.05.2019 в 12:07 #
Добавте осциллограф актаком ADS — 4122
Alex_EXE пишет 15.05.2019 в 13:35 #
Пришлите или осциллограммы (в формате csv), или осциллограф.
Виктор пишет 24.06.2019 в 12:55 #
Раскрывает csv. с UDS1022/3. Юнион Тест не дает драйвер к осциллографу, поэтому подключить его к компьютеру невозможно. Пробовал универсальные программы — ничего не вышло. Ваша утилита работает, за что вам благодарность. С уважением, Виктор.
Alex_EXE пишет 25.06.2019 в 03:29 #
Программа обновлена до версии v0.001.025.
Андрей пишет 24.08.2019 в 18:38 #
Лучшая программа которую я нашел в инете для просмотра осциллограмм, если есть возможность добавьте пож-та линейки для двигателя 4т, чтобы можно было расставить в градусах, 0 гр и 720 гр. т.е. полный цикл и чтобы программа расставляла вмт и нмт, как на этом видео https://www.youtube.com/watch?v=F_Ckg_4FYAk
Alex_EXE пишет 25.08.2019 в 18:23 #
У меня нет ни опыта работы с двигателями, ни файлов с этих датчиков. И там судя по всему линейка с градусами привязана не ко времени, как у осциллографов, а к положению вала.
Андрей пишет 08.09.2019 в 00:21 #
Нет, там как раз программа рассчитывает градусы, на самом деле там ничего сложного нет, полный рабочий цикл у 4 тактного двигателя это 2 оборота коленвала т.е. 720 градусов, если бы можно было вручную в программе расставить 0 гр. и 720 гр., а программа сама бы расставила метки 0 гр- ВМТ, 180-НМТ, 360-ВМТ, 540-НМТ, 720-ВМТ, и чтобы по курсору можно было смотреть какой градус в интересующей точке
Владислав пишет 13.02.2020 в 15:57 #
Интересуюсь, где взяли инфу по формату .CSV
У меня осциллограф АКИП 4115, хотелось бы найти полную доку по его форматам файлов.
Alex_EXE пишет 13.02.2020 в 20:49 #
По запросу первая ссылка на википедию.
CSV формат — некоторым образом представленные таблицы данных.
Структура у всех осциллографов похожая, но есть отличия. Например в заголовке. Полную информацию по формату для конкретного прибора следует спрашивать у производителя или его представителей. В статье привел примеры данных считанных с доступных мне осциллографов и присланных некоторыми читателями сайта.
Как я разбирался: открыл файл в блокноте и посмотрел, сравнив со сделанным одновременно снимком в графическом файле.
Владислав пишет 15.02.2020 в 15:40 #
то есть .csv разбирали наугад, а не по фирменной документации?
по осциллографу АКИП 4115, где её можно узнать?
или это большая тайна??
(которую каждый должен анализом файлов добывать самостоятельно 🙂
Alex_EXE пишет 15.02.2020 в 17:21 #
Почему наугад, там всё и так видно. Данные представлены в структурированном не зашифрованном виде.
У меня документации нет. И я её даже не искал.
Искал в своё время специальное ПО, когда появилась необходимость искать аномалию в нескольких килобайт записанной посылки, т.к. с элементами управления осциллографа это было сделать очень неудобно и долго. В итоге ничего не обнаружив лучше экселя, написал своё ПО.
Михаил пишет 11.06.2020 в 00:57 #
Привет,
нашел этот замечательный софт но файл открыть не могу. Чем очень растроен.
Ругается что какой-то не правильный формат чисел.
Ссылка на файл: https://yadi.sk/d/OvxUukONzAwZag
Софт запускаю на Win10
Alex_EXE пишет 17.06.2020 в 08:14 #
Вопрос решен.
Решение:
Нужно заменить разделитель с точки на запятую в системе Windows.
Ответ:
Возможно в настройках системы выбран разделитель точка, а не запятая. Проверьте, это правда для Win7, в Win10 может немного отличаться: Панель управления -> Язык и региональная поддержка -> дополнительные параметры -> Разделитель целой и дробной части. Если смена знака для Вас и Вашей работы некритична, то замените.
Сергей пишет 30.11.2020 в 21:43 #
Осциллограмма в формате csv Siglent SDS1202X-E https://yadi.sk/d/yrDiFHbexOQbBw программа (CSV See v0.001.025) не открывает, жалуется на «Source is not a valid floating point value». В настройках системы винды 8_1 стоит разделитель запятая.
Alex_EXE пишет 02.12.2020 в 19:16 #
Поддержку добавил. В течении пары дней внесу ещё несколько правок и обновлю программу.
Сергей пишет 02.12.2020 в 22:59 #
Окей. Ждемс.
Alex_EXE пишет 02.12.2020 в 23:17 #
Добавляется поддержка:
Siglent SDS1202X-E
Tetronix DPO2014B
На очереди
Gwinstek GDS-72072E
Ведется правка алгоритмов АКИП’ов
Обнаружено место, оптимизация которого уменьшит загрузку ЦП до 2-х раз.
Alex_EXE пишет 14.12.2020 в 15:03 #
Вопрос.
Одновременная отрисовка 2-х осциллограмм ещё представляет интерес?
Если получится значительно снизить загрузку ЦП.
Сейчас переписываю элементы интерфейса, которые приводили к доп. нагрузке на ЦП.
Vik пишет 16.12.2020 в 01:03 #
Было бы прекрасно, чтобы программа поддерживала 4 канала. В идеале — не падала от большого количества данных — 1000000 строк. Например формат csv от тектроникса (всего 1000000 строк).
TETRONIX MSO4054B
Alex_EXE пишет 17.12.2020 в 02:09 #
На счёт поддержки больше одного канала, скоро подумаю, пока только заканчиваю править интерфейс (исправил поля ввода).
Тетроникс программа с 28 версии поддерживает, можете попробовать. Сейчас добавил корректировку, что бы программа могла работать ещё и с серией MSO, помимо DPO.
На счёт 1 000 000, программа поддерживает сейчас 60М точек, в случае, если полуится сделать большее число каналов, общее число точек на все каналы останется таким же.
Скачать программу CSV See v0.001.028e
Добавлена поддержка:
Tetronix DPO и MSO серий
Siglent SDS1202X-E
Об изменениях пока писать не буду, это незаконченная версия.
Меню настроек пока недоступно.
Кто будет пользоваться, просьба обратите внимания на поля: Y+ , X/ , X+ . Они были заменены.
Поддерживают клавиши Esc, стрелки вверх и вниз, при этом с зажатым Ctrl и Shift. Запоминают положение курсора во время редактирования стрелками.
Нет ли ошибок в работе этих полей? Удобны ли они в работе?
Кто пользовался ранее программой на слабых ПК, есть ли прирост производительности?
Alexander пишет 17.03.2021 в 14:50 #
Огромное спасибо за программу, я начинающий электроник, вы меня выручили, обязательно закину донат!
Alex_EXE пишет 04.02.2022 в 01:47 #
Программа обновлена.
v0.001.029
Стабилизированная версия;
•Исправлена прокрутка;
•При прокрутки колёсиком мыши шаг будет 1,2,5,10,20,50,100…;
•Заменены полей ручного ввода значений;
•Добавлено окно настроек;
•Оптимизация работы.
Ry пишет 02.03.2022 в 10:03 #
Возможно в программе автоматически сделать коррекцию разделителя «.» «,» ?. Менять настройки системы под каждый трек путаница возникает.
Alex_EXE пишет 14.03.2022 в 14:35 #
Когда делал не придумал, как это сделать. т.к. где-то единицы и десятые разделены «.», где-то «,». Где-то сами значения разделены «,», в другом месте по другому. В разных файлах форматирование различается.
В первую очередь реализовывал необходимый функционал. Была идея попытаться сделать универсальный алгоритм, но её пока не реализовал.
Андрей пишет 02.04.2023 в 15:46 #
Спасибо! 🙂
Александр пишет 09.04.2024 в 18:29 #
Превосходная программа! кое как , путем подбора «шапки» файла , заставил открываться осцилограммы HANMANTEK HO52 клон ручного OWEN . теперь понятен формат файла. правда HO52 сохраняет в тыщах а TEXTRONIX в тысячных )) вот пример https://disk.yandex.ru/d/_jz-pyG3HdGTzQ исправил на так https://disk.yandex.ru/d/2KsNyiGdd0otnA .. как у OWEN не знаю , родные программы сами себя не читают )) не хватает , конечно всех каналов .. задонатил 😉