From OpenSCADAWiki
Jump to: navigation, search
This page is a translated version of the page Documents/Release 0.9/Updating 0.8.0 LTS and the translation is 100% complete.

Other languages:
English • ‎российский • ‎українська

Основними відмінностями версії 0.9 LTS від 0.8.0 LTS є:

  1. Розташування даних проекту користувача та відсутність підтримки і поняття "Проект OpenSCADA" у 0.8.0 LTS.
  2. Старі БД бібліотек у 0.8.0 LTS.
  3. Наявність низки модулів, що у 0.8.0 LTS на ранніх версіях та були фактично повністю переписані у 0.9 LTS, а відтак, для них повністю відсутня сумісність:
  • DAQ.DiamondBoards — повністю переписаний та не є сумісним;
  • DAQ.ICP_DAS — повністю переписаний та не є сумісним;
  • DAQ.AMRDevs — фактично можна вважати новим, оскільки перше, та поки єдине, повноцінне джерело з'явилося там після випуску 0.8.0 LTS;
  • Archive.DBArch — фактично можна вважати новим та актуальним, оскільки його версія, при випуску 0.8.0 LTS, була малокорисною і тому оновлена одним із оновлень та наразі є однаковою з 0.9 LTS.

У всьому іншому, версія 0.9 LTS може виконувати проекти користувача версії 0.8.0 LTS та Ви навіть можете залишити старі БД бібліотек (пункт 2), якщо використання нових викликає проблеми або вони змінювалися. Якщо Ви використовували щось з пункта 3 то їх конфігурацію треба буде повністю, або частково змінити. Відтак, розглянемо пункти 1 та 2 цих відмінностей.

At.png Оновлення треба здійснювати виключно для конфігурацій, які попередньо було оновлено до останнього оновлення 0.8.0 LTS!

Відмінність у розташуванні користувацьких проектів (пункт 1) треба вирішувати обов'язково, оскільки, для запуску проектів користувача, у 0.8.0 LTS використовуються індивідуальні сценарії командного рядку на кшталт openscada_AGLKS, openscada_demo, openscada_start та які відсутні у 0.9 LTS або працюють дещо по іншому.

At.png Вирішення відмінності у розташуванні користувацьких проектів не відбувається автоматично та для цього треба вміння користуватися консоллю, а для оновлення та запуску "по старому" знадобиться доступ суперкористувача.

Якщо Ви не бажаєте здійснювати повний перенос свого проекту у окрему та спеціальну теку то, перед оновленням, можна зберегти сценарій запуску проекту та конфігураційний файл, а потім повернути їх назад та продовжити запускати проект користувача у 0.9 LTS, що переважно буде працювати "ПО СТАРОМУ".

Відтак, на прикладі проекту моделі ТП "АГЛКС" та зберігши теку "~/.openscada", робимо:


1. Приготування та актуалізація поточної конфігурації
  • оновлюємо OpenSCADA до останнього оновлення 0.8.0 LTS, згідно до використаного способу встановлення;
  • актуалізуємо проект користувача, можна пропустити для оновлених конфігурацій:
  • запускаємо проект користувача;
  • запускаємо розробку графічного оточення;
  • змінюємо робочу базу даних на якусь іншу, а потім повертаємо її, що призведе до позначення необхідності збереження всього проекту;
  • зберігаємо.
At.png Ця операція може призвести до втрати конфігурації графічного оточення на неостанній LTS версії.
1a. [ПО СТАРОМУ] Збереження сценарію запуску та конфігураційного файлу, копіюючи у якусь тимчасову теку
  • виконуємо процедуру:
$ cp /usr/bin/openscada_AGLKS /var/tmp
$ cp /etc/oscada_AGLKS.xml /var/tmp


2. Оновлення OpenSCADA до нової версії 0.9 LTS
  • змінюємо звичайного користувача на суперкористувача;
  • повністю видаляємо 0.8.0 LTS, що на дистрибутивах заснованих на Debian робиться командою:
$ apt-get purge openscada*
  • встановлюємо 0.9 LTS, як пакет "openscada-model-aglks" або інший віртуальний, що більше відповідає Вашому проекту; деталі читайте у "Як встановити".


3. Оновлення та відновлення конфігурації
3a. [ПО СТАРОМУ] Відновлення старого сценарію, конфігурації та зміна посилання деяких тек
  • виконуємо процедуру:
$ rm /usr/bin/openscada_AGLKS; cp /var/tmp/openscada_AGLKS /usr/bin
$ cp /var/tmp/oscada_AGLKS.xml /etc
# Покидаємо суперкористувача та здійснюємо
$ ln -sf /usr/share/openscada/icons ~/.openscada/icons
3b. [ПРОЕКТ] Перенос файлів проекту користувача до окремої теки, попередньо покинувши суперкористувача
  • викликаємо команду оновлення, яка робить все потрібно:
$ openscada-proj update AGLKS
# Для користувацького проекту з даними у теці "~/.openscada/DATA"
$ openscada-proj update MyProjectName
  • або вручну та якщо вихідна конфігурація дуже специфічна:
  • збираємо всі файли проекту до окремої теки, у теці проектів користувача OpenSCADA, що типово "~/.openscada"; хоча 0.8.0 LTS не регламентує та не зобов'язує так робити, та така практика вже частково застосовувалася, тому там треба тільки покласти окремі частини проекту:
$ mv ~/.openscada/ARCHIVES ~/.openscada/AGLKS
$ ln -s ../LibsDB ~/.openscada/AGLKS/LibsDB
$ ln -s ./ ~/.openscada/AGLKS/AGLKS
  • застосовуємо конфігураційний файл типового проекту OpenSCADA 0.9 LTS, оскільки старий тут не підійде та й всі основні конфігурації зберігалися у головній БД:
$ cp /etc/oscada_start.xml ~/.openscada/AGLKS/oscada.xml
  • перейменовуємо файл головної БД у "St.db", якщо він не такий, бо саме такий записано у конфігураційному файлі;
  • замінюємо старі БД бібліотек або можемо їх залишити якщо Ви там щось змінювали:
$ cp -R /usr/share/openscada/LibsDB/*.db ~/.openscada/LibsDB


4. Запуск
  • [ПО СТАРОМУ] запускаємо старий сценарій.
  • [ПРОЕКТ] запускаємо оновлений проект, навіть обранням у менеджері проектів.


5. Відмінності та бажані зміни отриманого оновлення
  • [ПРОЕКТ] Скоротити адресу до локальних файлів БД проекту, який матиме вигляд "./AGLKS/Model.db" та його можна скоротити до "Model.db".
  • Проект візуалізації:
  • повідомлювач було повністю переписано, тому, на головній сторінці Вашого проекту, треба передбачити атрибути опису бажаних повідомлювачів, та типові значення яких можна отримати з проекту шаблона, звісно якщо бібліотеки оновлено;
  • властивості проекту візуалізації, щодо контролю параметрів вікна виконання, переважно винесено до окремих атрибутів головної сторінки та які, відповідно, і треба визначити.