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


E-270. Помогите разобраться с программированием (+

Вы не вошли.

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

Aisen
11.11.2004 15:17:43
#1

Гость

E-270. Помогите разобраться с программированием (+

Имеется модуль E-270 + субмодули Н-27T на борту (измеритель сигналов с термопар) + небольшой опыт программирования в Delphi. Стоит задача замера температуры при помощи хромель-аллюмелиевых термопар с нулевым спаем.

На поставляемом вместе с модулем CD есть небольшой примерчик программирования на Delphi. Нехитро переделав данную программку начал снимать показания, преобразовывать мВ в Цельсии и тут столкнулся с такой проблемой: даже когда оба конца (рабочий и нулевой) термопар ложу вместе на ноль градусов у меня снимается показания намного отличные от нуля... в районе 5,5 мВ. В принципе решил с этим справится программно, скомпенсировав на данную величину. Однако осталась проблема масштаба... пришлось опытным путем найти масшатбный коэффициент, на который приходится умножать полученное значение со сдвигом и только тогда получается более менее правдивое значение.

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

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

Спасибо

kodorkin
11.11.2004 15:53:59
#2

Гость

Re: E-270. Помогите разобраться с программированием (+

при наладке, все субмодули калибруются. калибровочные коэффициенты записываются в eeprom на самом субмодуле.
для того что бы модуль e270 выдавал данные с учетом этих коэффициентов, его необходимо сконфигурировать соответствующим образом. смотрите описание поля flags(таблица 5. биты 0,1,2) основной конфигурационной структуры.

Aisen
15.11.2004 13:22:51
#3

Гость

Re: E-270. Помогите разобраться с программированием (+

Спасибо kodorkin, теперь заработало нормально.

Только теперь еще такой вопросик. Как переделать демо-пример так, чтобы он считавыл данные беспрерывно, до нажатия кнопки останова? Если в демо-программе произвольно увеличивать время, то при превышении определенного значения почему-то выдается ошибка. Временно вышел из положения тем, что запуская процедуру опрпоса несколько раз по кругу. Например 120 раз по 30 сек. Но ИМХО это некрасивое решение. Как сделать лучше.

kodorkin
15.11.2004 13:39:41
#4

Гость

Re: E-270. Помогите разобраться с программированием (+

вместо строки:
if(gcounter=DATAN) then RunFlag:=0;

что-нибудь вот такое:
if(keypressed()) then RunFlag:=0;