PDA

Просмотр полной версии : Не записывается в МВА-8



gvlad07
12.12.2011, 14:29
Проблемы с записью в МВА-8. Ноль записывается замечательно. Другие величины записываются как будто без ошибок. Но при прочтении там оказывается опять ноль..
...
val:=StrToFloat(Edit1.Text);
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
.....
....
res:= ReadFloat24(16+3,0,'r.oe', val,-1);
.....

capzap
12.12.2011, 15:00
Программируемые параметры – определяют конфигурацию прибора; их значения задаются пользователем. Доступны для записи и для чтения. Значения параметров хранятся в энергозависимой памяти прибора и сохраняются при выключении питания. пункт 6.1.5. 1. РЭ на МВА

gvlad07
12.12.2011, 15:48
Меня наверно не поняли..
....
val:=1;
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
.....
затем, если

res:= ReadFloat24(16+3,0,'r.oe', val,-1);
Величина val так и остается нулем..
что нитак?

capzap
12.12.2011, 16:57
:) согласен, просто параметра r.oe в МВА нет, этот параметр в МВУ присутствует, может поэтому не получается записать или Вы ошиблись в названии темы

gvlad07
12.12.2011, 17:01
ну да ошибся... А что теперь делать?
Вопрос в принцепе остается.. МВУ-8.

gvlad07
12.12.2011, 18:47
нет конечно не в одном цикле. А функции из owen_io.dll.

function WriteFloat24(adr,adr_type:DWORD; command:PChar; var value:Single;index:integer):integer; stdcall; external 'owen_io.dll';

function ReadFloat24(adr,adr_type:DWORD; command:PChar; var value:Single;index:integer):integer; stdcall; external 'owen_io.dll';

gvlad07
12.12.2011, 18:57
с помощью конфигуратора МВУ8 ставлю скважность к примеру 0,5. Светодиод на МВУ начинает мигать. Выключаю конфигуратор. Включаю свою программу.
val:=0;
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
Ошибок нет. светодиод тухнет.
.....
val:=1;
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
Ошибок нет. светодиод - как не мигал, так и не мигает.
....
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
val так и остается нулем.

gvlad07
12.12.2011, 18:58
аварийное ноль

gvlad07
12.12.2011, 18:59
циклов еще даже не делал. в кнопки на форме прописал. пока для проверки. всего етого

gvlad07
12.12.2011, 19:01
каждая функция в своей кнопке

gvlad07
12.12.2011, 19:05
Самое удивительное ошибок нет

gvlad07
12.12.2011, 19:14
а зачем? Не понимаю. если я один раз записал. Этого мало? а потом мне надо будет через 3 часа еще что нить записать. в ето время должен повторяться цикл. чтение запись? Не вижу логики..

gvlad07
12.12.2011, 19:19
я даже делал так:
записывал конфигуратором 0,5 потом:
res:= ReadFloat24(16+3,0,'r.oe', val,-1);
val:=val+val;
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
не меняется...

capzap
12.12.2011, 19:23
я даже делал так:
записывал конфигуратором 0,5 потом:
res:= ReadFloat24(16+3,0,'r.oe', val,-1);
val:=val+val;
res:= WriteFloat24(16+3,0,'r.oe', val,-1);
не меняется...

если Вы показываете кусок Вашей программы, то работать не будет, между функциями надо ставить паузу, не меньше 50мс для начала, потом можно поиграться в ту или иную сторону

gvlad07
12.12.2011, 19:27
возможно. Но я ето делал и в отдельных кнопках . по нажатию. человек при всем желании не сможет быстрее 50 мс нажимать кнопки.

gvlad07
12.12.2011, 19:28
в любом случае спасибо. Завтра попробую с задержками по 50 мс.

gvlad07
12.12.2011, 19:37
А как МВУ узнает что вы еще живы ?
Нужно регулярные запросы любого направления.
а ему надо узнавать, что я жив? а зачем? я ему послал команду и умер. пусть работает. придет друй и пошлет другую. я так вижу. зачем постояный обмен?

gvlad07
12.12.2011, 19:43
и потом ... конфигуратором можно поставить скважность какую нить. выключить комп. и уйти. а МВУ работает. Причем без всякого обмена

gvlad07
12.12.2011, 20:27
попробую. спасибо. ща нет под рукой МВУ.

gvlad07
12.12.2011, 20:48
Если не нужно - ставьте таймаут 0.


Выставили частоту для частотника и умерли. А насос работает. Просто сказка.
Трубы лопнули. а МВУ работает и насос работает.

ну зачем так буквально. Я про то, что достаточно одной команды записи.

gvlad07
12.12.2011, 20:50
Если не нужно - ставьте таймаут 0.


Выставили частоту для частотника и умерли. А насос работает. Просто сказка.
Трубы лопнули. а МВУ работает и насос работает.
ну зачем так буквально. Я про то, что достаточно одной команды записи.

gvlad07
12.12.2011, 21:36
А дальше непрерывно читаете.
Он - знает что Вы живы.
Вы - знаете что Он жив.

Так получается он жив. Но скважность не меняется. Ну не записывается туда ничего кроме нуля. Вот!

capzap
12.12.2011, 21:51
может забросите с протоколом овен и на модбас перейдете

Sdvnkhp
15.02.2012, 01:00
А собственно на чем написана программа? Если это Delphi то вопрос какая?

gvlad07
15.02.2012, 09:07
А это важно? Ну 6-ая...

gvlad07
15.02.2012, 09:08
Считывается то нормально!

gvlad07
15.02.2012, 16:41
Почему чудненько? Тут тема не правильно указана. Речь идет об МВУ-8. Ошибся в теме.

gvlad07
15.02.2012, 16:42
Надо наверно новую тему создавать. А то не поможет никто.