Показать сообщение отдельно
Старый 18.12.2013, 01:26   #21
AlekSir
Member
 
Регистрация: May 2010
Адрес: НН
Сообщения: 66
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: WEB SCADA на SMH2Gi - демо

Цитата
Сообщение от AlekSir Посмотреть сообщение
Хм... вот где вы были раньше все ))) Много вроде бы полезной инфы... Только надо это все обработать и испытать...
Вот значит что у меня получилось, после поверхностного изучения shered memory...

закинул в 2Gi страничку, содержащую следующий код:

" <?php

$shm_key = ftok('/dev/shm/wsi', 'b');
echo "Cистемный key для блока shared memory: " . $shm_key . "<br />\n";
$shm_id = shmop_open($shm_key, "a", 0, 0);
echo "Cистемный id shared memory: " . $shm_id . "<br />\n";
$shm_size = shmop_size($shm_id);
echo "Размер в байтах занимаемый shared memory: " . $shm_size . "<br />\n";

$shm_repeat = shmop_read($shm_id, 65536, 1);
echo "Повтор (размер 1, тип bool) : " . $shm_repeat . "<br />\n";
$shm_Reset = shmop_read($shm_id, 65537, 1);
echo "Сброс (размер 1, тип bool) : " . $shm_Reset . "<br />\n";
$shm_TickNum = shmop_read($shm_id, 65538, 2);
echo "Номер тика (размер 2, тип int) : " . $shm_TickNum . "<br />\n";
$shm_Address = shmop_read($shm_id, 65540, 2);
echo "Адрес (размер 2, тип int) : " . $shm_Address . "<br />\n";
$shm_Parameter = shmop_read($shm_id, 65544, 4);
echo "Парамерт (размер 4, тип real) : " . $shm_Parameter . "<br />\n";

shmop_close($shm_id);
?>
"


набрал адрес странички написанной и получил результат в браузере:

"
Cистемный key для блока shared memory: 1645216128
Cистемный id shared memory: 1
Размер в байтах занимаемый shared memory: 65572
Повтор (размер 1, тип bool) :
Сброс (размер 1, тип bool) :
Номер тика (размер 2, тип int) :
Адрес (размер 2, тип int) :
Парамерт (размер 4, тип real) :
"


load_files.srv на котором я основывался и писал код php выглядел следующим образом:
"
[Slave]
Instat=0xccc0,65536,1
Coil=0xccc1,65537,1
Inreg=0xccc2,65538,2
Holdreg=0xccc3,65540,8
ShmSize=65548
[Instat]
var0=0x12a,1,0,65536,repeat
[Coil]
var0=0x127,1,0,65537,Reset
[Inreg]
var0=0x208,2,1,65538,TickNum
[Holdreg]
var0=0x206,2,1,65540,Address
var1=0x1d4,4,3,65544,Parameter
"


Экспериментировал на программе "demo" поставляемой вами в сборке exemples 1.1, с небольшой модификацией (добавлял переменные модбас на каждый вход и выход), файлик вложил. Программа на Си не изменялась, и собрана "как есть".

Вопросы следующего характера: Как заставить переменные выводиться в браузер? В чем я не прав, что не доглядел?
Вложения
Тип файла: psl demo (new1).psl (195.2 Кбайт, 94 просмотров)
AlekSir вне форума   Ответить с цитированием