Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


Е20-10 под linux (for Poul)

Вы не вошли.

 Поиск | Регистрация | Вход 

24.03.2008 16:12:54
#26

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

чтобы не печатало дебуг отключить надо в makefile... а IrqStep можно задать до 64кбайт, про мегабайт опечатка..

Dmitriy
24.03.2008 18:04:26
#27

Гость

Re: Е20-10 под linux (for Poul)

Спасибо за оперативный ответ.

Я правильно понял, что IrqStep может принимать значания до 65536, включительно?

По прежнему очень интересно откуда беруться "левые" данные и как с этим бороться?

Dmitriy
27.03.2008 14:16:31
#28

Гость

Re: Е20-10 под linux (for Poul)

В результате длительных экспериментов выяснил, что период появления дефектов в данных тем больше, чем больше величина IrqStep*Pages. Это, в свою очередь, наталкивает на соображение, что сбой происходит в момент прохода начала кольцевого буфера, однако сбой наблюдается НЕ ПРИ КАЖДОМ проходе (хотя явление в целом регулярное).
Величина дефектного участка прямо зависит от величны Pages.
Дефекты наблюдаються двух видов:
1. Потеря нескольких десятков отсчетов, носят квазипереодичный характер.
2. Появление большой куска, величиной пропорциональной или равной IrqStep*Pages, мусорных данных, неимеющих ничего общего с поданным на вход АЦП. Появление дефектов этого рода, очевидно, всязанно с вычитыванием области памяти не заполненной данными. Эти дефекты связанны с соотношением IrqStep и Pages - при одних пропорциях носят регулярный, переодичный характер, при других отсутствуют.

Dmitriy
27.03.2008 14:19:56
#29

Гость

Re: Е20-10 под linux (for Poul)

Запись сообщений лога отключит удалось, но видимым образом это на работе не сказалось.

27.03.2008 15:04:42
#30

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

чета мне кажется что это просто запись на диск не успевает....

Dmitriy
27.03.2008 15:08:44
#31

Гость

Re: Е20-10 под linux (for Poul)

Есть ощущение, что этот баг не связанн с железом, а ошибки появляються где-то в пространстве дрова-библиотека. Я готов сам написть драйвер под Linux и передать его безвозмездно Lcard-у. Для этого мне необходим низкоуровневый протокол общения с 20-10 через usb. Эту информацию можно, конечно, извлеч из исходников библиотеки, однако, это потребует больших временных затрат.
Тем не менее, написание дров не входит в сферу моих интересов, и я с большим удовольствием воспользовался-бы готовыми БЕЗГЛЮЧНЫМИ дровами, а свое время посвятил бы зондированию атмосферы :-)

Dmitriy
27.03.2008 15:09:23
#32

Гость

Re: Е20-10 под linux (for Poul)

Запись на диск ВООБЩЕ не ведется - только визуализация.

Dmitriy
27.03.2008 15:11:02
#33

Гость

Re: Е20-10 под linux (for Poul)

Общая загрузка системы при сборе данных - менее 40%.

Dmitriy
27.03.2008 15:13:49
#34

Гость

Re: Е20-10 под linux (for Poul)

Часть софта занятая визуализацией провенренна отдельно, вместо прочитанных от 20-10 данных использованись самосгенеренные массивы. Все отображется без ошибок.

27.03.2008 15:30:19
#35

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

сейчас посмотрим...что-то я там кажется в логике напутал...

Dmitriy
27.03.2008 16:50:06
#36

Гость

Re: Е20-10 под linux (for Poul)

Сейчас гляну...

27.03.2008 17:08:52
#37

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

и может памяти выделять поменьше 200 000 000....

27.03.2008 17:22:38
#38

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

и размер буфера в отчсетах, а отсчеты short...

Dmitriy
27.03.2008 17:43:47
#39

Гость

Re: Е20-10 под linux (for Poul)

Попробовал... к сожалению баг пока не побежден, но картина несколько изменилась. Появилась четкая переодичность появления дефектов. С некоторым периодом, как и раньше связанным с IrqStep*Pages, появляються дефекты первого рода - разрывы в данных, при этом после трех кусков целостных данных появляется кусок той-же длительности, но заполненный нулями. Периоды появления дефектов первого рода четко разделяються по длительности на нечетные и четные. Вторые несколько короче. Соотношение длин этих периодов зависит от соотношения величин IrqStep и Pages. Мусор всегда в коротком четном периуде.

Dmitriy
27.03.2008 17:49:02
#40

Гость

Re: Е20-10 под linux (for Poul)

Как я понял размер буфера определяется библиотекой как IrqStep*Pages и величина, которой первоначально инициализируется size должна быть просто больше, я сделал:
size = IrqStep*Pages*2;
Содержимое буфера я и рассматриваю как short, а то у меня синусоида не получалась бы :-)

28.03.2008 14:14:53
#41

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

вобщем так. то что сейчас есть вполне должно работать с величиной dKadr = 0.001. я по крайней мере не вижу сбоев. Если использовать то что я тут сейчас накрутил, то до 0.0002 работает... а дальше как я не бьюсь происходит сбой....возможно не успевает запись и все тормозит тк это 20мбайт в секунду получается...

Dmitriy
28.03.2008 14:16:56
#42

Гость

Re: Е20-10 под linux (for Poul)

Сейчас проверю.

Dmitriy
28.03.2008 14:18:37
#43

Гость

Re: Е20-10 под linux (for Poul)

А в библиотеке файлов только вчерашняя версия...

28.03.2008 14:19:14
#44

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

вчера я сначала слегка битую версию положилЮ а потм поправил...если скачивали после моего сообщения то должна быть рабочая... а так конечно с выделением памяти надо разумно подходить ип роверять указатели...

28.03.2008 14:19:51
#45

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

те часов в 5 вечера...

Dmitriy
28.03.2008 14:20:20
#46

Гость

Re: Е20-10 под linux (for Poul)

Ок!

28.03.2008 14:20:28
#47

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Е20-10 под linux (for Poul)

Irqstep задайте 64000...

Dmitriy
04.04.2008 14:24:45
#48

Гость

Re: Е20-10 под linux (for Poul)

В новой версии библиотеки сталкнулся со странным и неприятным глюком.
После вызова функции
pI->SetParametersStream(&adcPar.t2, &size, (void **)&p, (void **)&pp, L_STREAM_ADC);
указатель pp оказывается непроинициализированным и, как следствие, при обращении к нему прога падает.

Тестовая программа работает и не падает.

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

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

21.04.2008 16:03:17
#49

Инженер-электронщик
Откуда: "Л Кард"
Здесь с 21.04.2014
Сообщений: 4,597

Re: Е20-10 под linux (for Poul)

Обновлённое руководство выложено:
http://www.lcard.ru/download/e20_10_users_guide.pdf
Читайте все отличия ревизий А и В модуля E20-10 в п. 2.1

Dmitriy
22.04.2008 12:54:48
#50

Гость

Re: Е20-10 под linux (for Poul)

Спасибо!