PDA

Просмотр полной версии : REAL 2 DWORD СП270



kenny_sk8
08.10.2012, 14:14
В данный момент у меня читается число из СП270 в ПЛК150 с использованием функции из примера float.pro:



FUNCTION reformatting : REAL
VAR_INPUT
varreal:DWORD;
END_VAR
VAR
RG:DWORD;
p:POINTER TO REAL;
END_VAR

RG:=WORD_TO_DWORD((DWORD_TO_WORD(varreal)*256*256) +DWORD_TO_WORD(varreal/256/256));
p:=ADR(RG);
reformatting:=p^;



При восстановлении питания хочу передать из плк150 в сп270 другой регистр для перезаписив тот, из которого я получаю число. в каком формате мне отправить регистр для копирования? Возможно как вариант копирование регистров разных форматов в функциональной области на СП270, если да то какие ?

СП270 (DWORD FLOAT) -> ПЛК (REAL)
обрыв связи, обесточка панели
ПЛК (REAL) -> ? сп270 (DWORD FLOAT ? ) - копирование регистра
СП270 (DWORD FLOAT) -> ПЛК (REAL)


P.S.: Вопрос в написании обратной функции, которая не будет терять запятую и округлять, либо механизм в самой панели

capzap
08.10.2012, 14:40
с незапамятных времен проложена тропинка до oscat.de, где скачав библиотеку в папках Logic->gate logic можно найти практически все необходимые преобразования