OpenSCADAWiki: Home Page Uk/Using/ Nokia Linux
 


Збірка проекту OpenSCADA для мобільних пристроїв фірми Nokia (N800, N900, N950)

Ім'я: NokiaLinux
Засновано: грудень 2010р
Учасники: Роман Савоченко, Максим Лисенко
Опис: Проект присвячено збірці проекту OpenSCADA для мобільних пристроїв фірми Nokia (N800, N900, N950) на Linux платформах Maemo та MeeGo.
Матеріали: ftp://ftp.oscada.org/OpenSCADA/Devices/Nokia


Contents

Вступ

Фірма Nokia є світовим лідером у виробництві та продажу мобільних телефонів. У 2005 році фірма Nokia випустила кишеньковий персональний комп'ютер (КПК) N770, на основі розвинутого Linux оточення з власним оточенням робочої стільниці (на GTK+) — Hildon, під загальною назвою проекту Maemo. Надалі на основі платформи Maemo було випущено ще три мобільних пристрої, а саме два КПК «інтернет-планшету» N800, N810 та смартфон «інтернет-планшет» N900. У 2010 році фірма Nokia об'єднала свої зусилля по роботі над Maemo з проектом WikiPediaRu:MobLin фірми Intel, створивши проект WikiPediaRu:MeeGo. На основі платформи MeeGo у 2011 році було випущено два смартфони N950(прототип) та N9.

Для проекту OpenSCADA мобільні пристрої фірми Nokia, на платформах Maemo та MeeGo, цікаві у сенсі їх ґрунтування на розвинутому оточенні ОС Linux, відсутності блокувань та обмежень на розширення цих платформ шляхом збірки та адаптації типових програм ОС Linux, що дозволяє просто здійснювати адаптацію OpenSCADA на апаратні платформи ARM та збірку для вищенаведених мобільних пристроїв фірми Nokia.

Адаптація проекту OpenSCADA для роботи на апаратних платформах ARM було виконано у 2011 році, у відповідності із загальним планом розвитку http://wiki.oscada.org/Works/RoadMap, в оточені КПК N800 (http://wiki.oscada.org/Works/Tests/ARM ). Значним чином адаптацію було виконано у межах chroot оточення дистрибутиву ALTLinux, як більш свіжого та менш проблемного. Останні збірки OpenSCADA вже повноцінно та коректно працюють у рідному оточені N800.

N800 (Maemo 4.1)

КПК N800 (рис.1) містить процесор OMAP2420, з робочою частотою 400 МГц, сенсорний (резистивний) дисплей 4,1" 800×480 та побудовано на основі програмної платформи Maemo 4.1.


Рис. 1. КПК (інтернет-планшет) N800


На етапі знайомства та вивчення можливостей збірки OpenSCADA під або для N800 були виявлені проблеми деякої застарілості програмного оточення та низка проблем при виконанні зібраної OpenSCADA, частину з яких булу пов'язано з неготовністю OpenSCADA для роботи на архітектурі ARM. З цієї причини було також здійснено збірка OpenSCADA у "chroot" оточені дистрибутиву ALTLinux на N800. Із більш суттєвих проблем, з якими довелося зіткнутися під час збірки OpenSCADA, можна відзначити:

Для безпечного проведення експериментів з пристроєм та попередження можливого пошкодження первинного програмного оточення було налаштовано мульті-завантаження з можливістю завантаження як до первинного програмного оточення на внутрішньому flash-носії так і до експериментального оточення на внутрішній SD-карті, копії первинного програмного оточення (http://habrahabr.ru/blogs/n800/24111 ).

Для створення "chroot" оточення ARM репозиторію ALTLinux використано керівництво http://www.altlinux.org/Ports/arm/chroot. На основі отриманого chroot було створено складальне оточення для збірки у ньому OpenSCADA, безпосередньо на N800. Теоретично можлива збірка безпосередньо на великій машині, через quemu, однак при цьому у мене виникли проблеми з падінням quemu. Крім збірки OpenSCADA отримане "chroot" оточення також вдало використано для запуску свіжого оточення KDE 3.5.12 на N800.

Надалі, для збірки OpenSCADA з графічним інтерфейсом під рідне оточення, що стало можливим з появою пакетів QT4, було встановлено офіційне SDK та оточення компіляції фірми Nokia. Встановлення проводилась за посередництвом скрипту встановлення складального оточення maemo-scratchbox-install_4.1.sh та скрипту встановлення SDK maemo-sdk-install_4.1.sh. Загальний опис SDK можна отримати за посиланням.

 (2 Kb) У розширеному репозиторії Maemo 4.1 остання версія QT4 (libqtcore4, libqtgui4-4.5.3-1maemo1) містить помилку, яка призводить до падіння програми під час створення/видалення віджетів, що можна спостерігати у конфігураторі OpenSCADA на бібліотеці QT. Для обходу цієї проблеми потрібно встановити та зафіксувати від оновлення попередню версію QT4 (libqtcore4, libqtgui4-4.5.2-1maemo2), яка не має цієї проблеми та працює стабільно.

Крім першочергової мети збірки та запуску OpenSCADA на цьому пристрої було також виконано завдання:

N900 (Maemo 5)

Nokia N900 містить процесор ARM Cortex-A8 OMAP3430 (600 МГц), сенсорний (резистивний) дисплей 3.5" 848×480 та побудовано на основі програмної платформи Maemo 5.


Рис. 2. Мобільний телефон N900


Для збірки OpenSCADA під рідне оточення було встановлено офіційне SDK та оточення компіляції фірми Nokia. Встановлення відбувалося за посередництвом скрипту встановлення збіркового оточення maemo-scratchbox-install_5.0.sh та скрипту встановлення SDK maemo-sdk-install_5.0.sh. Загальний опис SDK можна отримати за посиланням.

N950, N9 (MeeGo 1.2 Harmattan)

Nokia N950 містить процесор ARM Cortex-A8 OMAP3630 (1 ГГц), сенсорний (ємнісний) дисплей 4" 854×480 та побудовано на основі програмної платформи MeeGo 1.2 Harmattan.

Телефон було отримано від Nokia у межах програми Qt Ambassador Program для адаптації на нього системи OpenSCADA.


Рис. 3. Мобільний телефон N950


Для збірки OpenSCADA під рідне оточення було встановлено офіційне SDK та оточення компіляції фірми Nokia. Встановлення відбувалося за посередництвом скрипту встановлення harmattan-sdk-setup.py. Загальний опис SDK та інструкцію по встановленню можна отримати за посиланням.

Посилання


Referring pages: HomePageUk/Using/PLC/firmwareARM