TDM формат считывание
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
TDM формат считывание
Всем привет
Я записывю файл как представлено во вложении.
Записывается 2 мерный массив.
Пишится фалй размером 1Гб.
Размер массива 1500х1200
Но считваются только почему то первые 1200 строк.
Если файл 1 гб то в не может быть только 1200 строк.
Как можно получиться доступ к остальным данным файла.
Да при чтение читается не весь файл а только те столбцы которые нужны.
Еще прилагается сам файл и файл чтения.
Я записывю файл как представлено во вложении.
Записывается 2 мерный массив.
Пишится фалй размером 1Гб.
Размер массива 1500х1200
Но считваются только почему то первые 1200 строк.
Если файл 1 гб то в не может быть только 1200 строк.
Как можно получиться доступ к остальным данным файла.
Да при чтение читается не весь файл а только те столбцы которые нужны.
Еще прилагается сам файл и файл чтения.
- Вложения
-
- IntoFile.vi
- Запись в файл
- (29.9 КБ) 188 скачиваний
-
- FromFile.vi
- Чтение из файлы
- (9 КБ) 177 скачиваний
-
- into.rar
- Сам готовый файл.
- (606.09 КБ) 195 скачиваний
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
Смысл задачи в что чтобы например экспиримент идет 24 часа или трое суток.
Нужно записать все в файл я посчита файл получается 1 гиг.
Надо считать его но не весь а честями.
Я решил вопсользоваться этими приборами так как остальные мне не подходят
Они либо открывают файл целиком и читают весь или выдают ошиьку не хватки памяти.
Нужно записать все в файл я посчита файл получается 1 гиг.
Надо считать его но не весь а честями.
Я решил вопсользоваться этими приборами так как остальные мне не подходят
Они либо открывают файл целиком и читают весь или выдают ошиьку не хватки памяти.
-
Viktor
- expert
- Сообщения: 1408
- Зарегистрирован: 23 мар 2008, 10:56
- Награды: 4
- Версия LabVIEW: 2020
- Откуда: Санкт-Петербург
- Благодарил (а): 17 раз
- Поблагодарили: 3 раза
- Контактная информация:
Re: TDM формат считывание
Можно читать и по частям:
offset - начальная позиция
count - сколько элементов читать
offset - начальная позиция
count - сколько элементов читать
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
Ну да я так и делаю
Только почему строк 1200 получается их явно больше в двумерном массиве если файл 1 Гиг.
А получается что я вижу первые 1200 строк получается что не весь экспиремент записан?
Только почему строк 1200 получается их явно больше в двумерном массиве если файл 1 Гиг.
А получается что я вижу первые 1200 строк получается что не весь экспиремент записан?
-
Viktor
- expert
- Сообщения: 1408
- Зарегистрирован: 23 мар 2008, 10:56
- Награды: 4
- Версия LabVIEW: 2020
- Откуда: Санкт-Петербург
- Благодарил (а): 17 раз
- Поблагодарили: 3 раза
- Контактная информация:
Re: TDM формат считывание
Как видно из предыдущего моего скрина, длина каждого из 1500 каналов = 84000 значений
Привожу пример, как читать выборку из файла:
Привожу пример, как читать выборку из файла:
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
А скажите вот я накапливаю и записываю массив.
Это понятно какчитать выборку из файла.
Важно понять.
Я записываю правильно он весь записывается?
То есть как у меня в примере на накопил массив за 2 минуты и сбросил в файл.
Так я накопил 1 гигабайт
И важно например понять в файле есть двумерный массив в нем только 1200 строк или больше?
Это понятно какчитать выборку из файла.
Важно понять.
Я записываю правильно он весь записывается?
То есть как у меня в примере на накопил массив за 2 минуты и сбросил в файл.
Так я накопил 1 гигабайт
И важно например понять в файле есть двумерный массив в нем только 1200 строк или больше?
-
Jakob Brontfeyn
- expert
- Сообщения: 1729
- Зарегистрирован: 28 фев 2008, 11:01
- Награды: 6
- Благодарил (а): 1 раз
- Контактная информация:
Re: TDM формат считывание
К слову пришлось,
я сталкиваюсь с этим почти каждый день
Последнее время, результаты многих многочасовых
и многодневных экспериментов представляют собой фаил,
слишком большой, чтобы целиком загрузить в буфер
таких распространенных у нас на фирме программ как MS ECХEL или
ORIGIN, они на каждом действии просто виснут.
Борюсь с этим следующими разными методами.
1. Разработал кучу различных критериев, методов и алгоритмов редуцирования
количества строк, записываемых в файл, не теряя при этом "важных" значений
измерений.
2. Написал специальный VI, который считывает большой файл по кусочкам и может
после просмотра записывать в отдельные файлы.
Сюда же, разные алгоритмы редуцирования "offline" уже готового файла
3. Автоматическое открытие следующего файла в процессе експеримента,
по достижению предыдущим, заданного оператором размера в Мегабайтах,
при этом время передается в следующий файл.
4. Внедрение "квазибинарных" и чисто бинарных форматов,
как здесь: http://labviewportal.org/viewtopic.php? ... 121#p24121
,что на первый взгляд,
вроде решает проблему, но ведь при дальнейшей обработке и просмотре все равно будет разворачиваться в буфере в ASKII формат и все подвешивать.
Я описал все так подробно, что скажете коллеги, будем обсуждать тему где то в
другом разделе.
Я подозреваю, что все эти дела можно улучшить, знает кто пакет, который загружает не весь
файл в свой буфер, а по кусочкам. Может это "DIADEM"? Кто меня квалифицированно
проконсультирует на основании своего опыта?
я сталкиваюсь с этим почти каждый день
Последнее время, результаты многих многочасовых
и многодневных экспериментов представляют собой фаил,
слишком большой, чтобы целиком загрузить в буфер
таких распространенных у нас на фирме программ как MS ECХEL или
ORIGIN, они на каждом действии просто виснут.
Борюсь с этим следующими разными методами.
1. Разработал кучу различных критериев, методов и алгоритмов редуцирования
количества строк, записываемых в файл, не теряя при этом "важных" значений
измерений.
2. Написал специальный VI, который считывает большой файл по кусочкам и может
после просмотра записывать в отдельные файлы.
Сюда же, разные алгоритмы редуцирования "offline" уже готового файла
3. Автоматическое открытие следующего файла в процессе експеримента,
по достижению предыдущим, заданного оператором размера в Мегабайтах,
при этом время передается в следующий файл.
4. Внедрение "квазибинарных" и чисто бинарных форматов,
как здесь: http://labviewportal.org/viewtopic.php? ... 121#p24121
,что на первый взгляд,
вроде решает проблему, но ведь при дальнейшей обработке и просмотре все равно будет разворачиваться в буфере в ASKII формат и все подвешивать.
Я описал все так подробно, что скажете коллеги, будем обсуждать тему где то в
другом разделе.
Я подозреваю, что все эти дела можно улучшить, знает кто пакет, который загружает не весь
файл в свой буфер, а по кусочкам. Может это "DIADEM"? Кто меня квалифицированно
проконсультирует на основании своего опыта?
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
Вопрос:
Я записываю порциями массив двумерный 1500 элементов по 1200 строк.
Как считать вторые 1200 строк прибором TDMS READ если я считываю он читает первые 1200 строк.
Как можно считать 2 порцию например.
Ведь записаны не 1200 строк а 12000?
Спасибо
Я записываю порциями массив двумерный 1500 элементов по 1200 строк.
Как считать вторые 1200 строк прибором TDMS READ если я считываю он читает первые 1200 строк.
Как можно считать 2 порцию например.
Ведь записаны не 1200 строк а 12000?
Спасибо
-
- adviser
- Сообщения: 221
- Зарегистрирован: 18 май 2009, 10:50
- Награды: 1
- Версия LabVIEW: 8.6
- Откуда: Москва
Re: TDM формат считывание
Чти внимательно, укажи начальную позициюViktor писал(а):Можно читать и по частям:
offset - начальная позиция
count - сколько элементов читать
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
Да нет дело все в том что столбец в двемерном массиве должен содержать не 1500 (количество) элементов а например 3,400,000 (количество)
Я вот что хочу добится.
Экспиримент не идет 3 минуты он идет сукти трое
Я вот что хочу добится.
Экспиримент не идет 3 минуты он идет сукти трое
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
Вообщем выяснил я почему только считываетя 1500 строк из вдумерного массива а файл 1Гб
Дело все в том что получается что пишу на одно и тоже место.
В связи с этим впрос как можно указать позицию в файле и писать с неё?
Но прибор должен быть приненим с прибором TDM Open
Дело все в том что получается что пишу на одно и тоже место.
В связи с этим впрос как можно указать позицию в файле и писать с неё?
Но прибор должен быть приненим с прибором TDM Open
- JohnChaban
- leader
- Сообщения: 669
- Зарегистрирован: 18 фев 2010, 13:26
- Версия LabVIEW: 2015,2016
- Откуда: Город Сосновый Бор Ленинградская Область
- Контактная информация:
Re: TDM формат считывание
Вопро возник а как можно дописать в файл TDM у меня получается так что я пишу на одно и тоже место.
Нужно записать 1500 строк двумерного массива каждый элемент которого число с плавающей запятой.
Нужно записать 1500 строк затем в низ еще 1500 строк и так далее.
Нужно записать 1500 строк двумерного массива каждый элемент которого число с плавающей запятой.
Нужно записать 1500 строк затем в низ еще 1500 строк и так далее.
-
- beginner
- Сообщения: 35
- Зарегистрирован: 29 сен 2010, 14:00
- Версия LabVIEW: 2013
- Контактная информация:
Re: TDM формат считывание
А может при таком количестве данных имеет смысл присмотреться к сохранению в какой-нибудь БД ?
-
Viktor
- expert
- Сообщения: 1408
- Зарегистрирован: 23 мар 2008, 10:56
- Награды: 4
- Версия LabVIEW: 2020
- Откуда: Санкт-Петербург
- Благодарил (а): 17 раз
- Поблагодарили: 3 раза
- Контактная информация:
Re: TDM формат считывание
Два варианта записи: либо строки двумерного массива - это каналы .tdms файла, а столбцы - их значения, либо наоборот.Нужно записать 1500 строк двумерного массива каждый элемент которого число с плавающей запятой.
Нужно записать 1500 строк затем в низ еще 1500 строк и так далее.
Число каналов - фиксировано, значения - добавляются при каждом запуске.
- Вложения
-
- dec.PNG (6.99 КБ) 5950 просмотров
-
- int.PNG (6.92 КБ) 5950 просмотров
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 4 Ответы
- 1209 Просмотры
-
Последнее сообщение Юрий
-
- 4 Ответы
- 585 Просмотры
-
Последнее сообщение Sergey Puzanov
-
- 4 Ответы
- 614 Просмотры
-
Последнее сообщение seromax