Сообщение создано: 06. 03. 2013 [08:39]
|
michael.art
Михаил Артюхов
Создатель темы
Зарегистрирован(а) с: 06.03.2013
Сообщения: 2
|
Добрый день!
Собственно захотелось поэкспериментировать с вашей замечательной SCADA и посмотреть её работу на контроллере. На работе имеется в данный момент плата на базе MPC5125 (PowerPC) для нее собрал с помощью openembedded прошивку, затем собрал OpenSCADA со следующими параметрами: CXXFLAGS=-O2 ./configure --host=powerpc-angstrom-linux --target=x86_64-pc-linux-gnu --disable-LibGD --disable-SNMP --disable-SoundCard --disable-QTStarter --disable-VCAEngine --disable-Vision --disable-QTCfg --disable-WebVision --disable-WebCfgD --disable-PostgreSQL --disable-FireBird --disable-MySQL.
Нашлось несколько опечаток в исходниках (см. oscada.diff)
Потом запустил всё это на контроллере, на локальном компе запустил Демо-проект от OpenSCADA - к нему подсоединил контроллер. Здесь странности: в поле частота показывает 0 Mhz - хотя там 400 (рис. oS1)...
Потом попробывал запустить простой расчет па JavaLikeCalc (программа просто увеличивает значение входа k каждый раз на 1), параметры программы (рис. oS2)...
Запустил контроллер на исполнение - и загрузка процессора согласно top'у около 98%.
Неужели openSCADA так много отижрает при такой простой задаче, исполняемой всего раз в 1 с.?
Затем попробывал остановить задачу, нажав на галку с Run, задача вроде бы была остановлена - загрузка процессора вернулась в 1,3%, но OpenSCADA говорит, что задачу остановить не удалось, т.к. истёк тайм-аут:
1|/PLC1/sub_UI/mod_QTCfg/ | root| Installieren '/PLC/sub_DAQ/mod_JavaLikeCalc/cntr_test_calc/%2fcntr%2fst%2frun_st' in '0'!
4|/PLC1/sub_Transport/mod_Sockets/out_UIQtCfgPLC/ | Wartezeit ist aus!
Повторно запустить её не получается, т.к. она якобы уже работает...
Вложенный файл
oS1.png (Тип файла: image/png, Размер: 142.82 килобайт) — 2419 загрузок
oS2.png (Тип файла: image/png, Размер: 124.58 килобайт) — 2342 загрузок
oscada.diff (Тип файла: application/octet-stream, Размер: 517 байт) — 1689 загрузок
|
Сообщение создано: 06. 03. 2013 [09:08]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
|
"michael.art" wrote:
Собственно захотелось поэкспериментировать с вашей замечательной SCADA и посмотреть её работу на контроллере. На работе имеется в данный момент плата на базе MPC5125 (PowerPC) для нее собрал с помощью openembedded прошивку,
Сразу отмечаю, что на PowerPC OpenSCADA не адаптировалась и не тестировалась, а значит никаких претензий не принимается!
"michael.art" wrote:
Потом запустил всё это на контроллере, на локальном компе запустил Демо-проект от OpenSCADA - к нему подсоединил контроллер. Здесь странности: в поле частота показывает 0 Mhz - хотя там 400 (рис. oS1)...
Информации о частоте нет в /proc/cpuinfo.
"michael.art" wrote:
Потом попробывал запустить простой расчет па JavaLikeCalc (программа просто увеличивает значение входа k каждый раз на 1), параметры программы (рис. oS2)...
Запустил контроллер на исполнение - и загрузка процессора согласно top'у около 98%.
Неужели openSCADA так много отижрает при такой простой задаче, исполняемой всего раз в 1 с.?
Скорее всего там порядок байт в многобайтных типах данных "big-endian" с чем OpenSCADA не работает да и адаптация к этому достаточно трудоёмка и проблематична. Поразбирайтесь с конфигурацией вашего железа, может там можно переключиться на "little-endian": http://ru.wikipedia.org/wiki/Порядок_байтов
Learn, learn and learn better than work, work and work.
|
Сообщение создано: 06. 03. 2013 [09:50]
|
michael.art
Михаил Артюхов
Создатель темы
Зарегистрирован(а) с: 06.03.2013
Сообщения: 2
|
Спасибо за скорый ответ!
"roman" wrote:
Скорее всего там порядок байт в многобайтных типах данных "big-endian" с чем OpenSCADA не работает да и адаптация к этому достаточно трудоёмка и проблематична. Поразбирайтес с конфигурацией вашего железа, может там можно переключиться на "little-endian": http://ru.wikipedia.org/wiki/Порядок_байтов
Собственно там действительно порядок байт BE, изменить на LE невозможно. Но вроде в ваших исходниках встречается поддержка BE (хотя я только бегло смотрел)... или это только наброски? А как же быть с ARM, которые работают с BE?
|
Сообщение создано: 06. 03. 2013 [10:12]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
|
"michael.art" wrote:
Собственно там действительно порядок байт BE, изменить на LE невозможно. Но вроде в ваших исходниках встречается поддержка BE (хотя я только бегло смотрел)... или это только наброски? А как же быть с ARM, которые работают с BE?
В OpenSCADA BE сделан только для вещественных, у которых обратный порядок может встречаться для double, независимо от порядка целых. Например, у FPA так.
Что касается ARM, то там LE начиная с ARMv5, кажется, поскольку именно у ARMv4 ещё был BE откуда идёт и FPA, но эмуляция которого встречается ещё в ARMv5. Лично я с ARMv4 уже не сталкивался и работал начиная с ARMv5.
Learn, learn and learn better than work, work and work.
|