OpenSCADAWiki: Using/ Nokia Linux ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 
This is an old revision of Using/NokiaLinux from 2012-03-21 12:24:33..

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

Имя: NokiaLinux
Основан: декабрь 2010г
Участники: Роман Савоченко, Максим Лысенко
Описание: Проект посвящён сборке проекта OpenSCADA для мобильных устройств фирмы Nokia (N800, N900, N950) на Linux платформах Maemo и MeeGo.
Материалы: ftp://ftp.oscada.org/OpenSCADA/Devices/Nokia
Nokia Linux (82 Kb)


Contents

Введение

Фирма Nokia является одним из мировых лидеров в производстве и продаже мобильных телефонов. В 2005 году фирма Nokia выпустила карманный персональный компьютер (КПК) N770 на основе развитого Linux окружения с собственным окружением рабочего стола (на GTK+) — Hildon под общим названием проекта Maemo. В последствии на основе платформы Maemo было выпущено ещё три мобильных устройства, а именно два КПК «интернет-планшета» N800, N810 и смартфон «интернет-планшет» N900. В 2010 году фирма Nokia объединила свои усилия по работе над Maemo с проектом MobLin фирмы Intel, создав проект 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.


КПК N800 (657 Kb)
Рис. 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 можно получить по ссылке.


Внимание! В расширенном репозитории 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.


Мобильный телефон N900 (448 Kb)
Рис. 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.


Мобильный телефон N950 (412 Kb)
Рис. 3. Мобильный телефон N950

Для сборки OpenSCADA под родное окружение было установлено официальное SDK и окружение компиляции фирмы Nokia. Установка проводилась посредством скрипта установки harmattan-sdk-setup.py. Общее описание SDK и инструкцию по установке можно получить по ссылке.

Ссылки


Referring pages: HomePageEn/Using/NokiaLinux
HomePageUk/Using/NokiaLinux
HomePageUk/Using/PLC/firmwareARM
Using/NokiaLinux
Using/PLC/firmwareARM


 
There are no files on this page.[Display files/form]
There is no comment on this page. [Display comments/form]