Ім'я: NokiaLinux Засновано: грудень 2010р Учасники: Роман Савоченко, Максим Лисенко Опис: Проект присвячено збірці проекту OpenSCADA для мобільних пристроїв фірми Nokia (N800, N900, N950) на Linux платформах Maemo та MeeGo. Матеріали: ftp://ftp.oscada.org/OpenSCADA/Devices/Nokia |
Фірма 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 (рис.1) містить процесор OMAP2420, з робочою частотою 400 МГц, сенсорний (резистивний) дисплей 4,1" 800×480 та побудовано на основі програмної платформи Maemo 4.1.
На етапі знайомства та вивчення можливостей збірки 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 можно получить по ссылке.
Внимание! В расширенном репозитории Maemo 4.1 последняя версия QT4 (libqtcore4, libqtgui4-4.5.3-1maemo1) содержит ошибку, которая приводит к падению приложения в момент создания/удаления виджетов, что можно наблюдать в конфигураторе OpenSCADA на библиотеке QT. Для обхода этой проблемы необходимо установить и зафиксировать от обновления предыдущую версию QT4 (libqtcore4, libqtgui4-4.5.2-1maemo2), которая не имеет этой проблемы и работает стабильно.
Кроме первоочередной цели сборки и запуска OpenSCADA на этом устройстве были также выполнены задачи:
Nokia N900 содержит процессор ARM Cortex-A8 OMAP3430 (600 МГц), сенсорный (резистивный) дисплей 3.5" 848×480 и построен на основе программной платформы Maemo 5.
Для сборки OpenSCADA под родное окружение было установлено официальное SDK и окружение компиляции фирмы Nokia. Установка проводилась посредством скрипта установки сборочного окружения maemo-scratchbox-install_5.0.sh и скрипта установки SDK maemo-sdk-install_5.0.sh. Общее описание SDK можно получить по ссылке.
Nokia N950 содержит процессор ARM Cortex-A8 OMAP3630 (1 ГГц), сенсорный (емкостной) дисплей 4" 854×480 и построен на основе программной платформы MeeGo 1.2 Harmattan.
Телефон был получен от Nokia в рамках программы Qt Ambassador Program для адаптации на него системы OpenSCADA.
Для сборки OpenSCADA под родное окружение было установлено официальное SDK и окружение компиляции фирмы Nokia. Установка проводилась посредством скрипта установки harmattan-sdk-setup.py. Общее описание SDK и инструкцию по установке можно получить по ссылке.