Что такое RA?
RA — программа для естествоиспытателей
с функциями
- управления экспериментальной установкой и регистрации
измеряемых величин (в основном, в виде дискретно заданных
кривых, например, спектров);
- визуализации, примитивной обработки и анализа данных
непосредственно в ходе эксперимента или после;
- хранения не только собственно экспериментальных данных,
но и сопутствующей информации (например, каталога образцов
с описаниями и историей их обработки и исследования).
RA — свободное программное
обеспечение с открытым кодом.
RA — кросс-платформенное приложение. Её
исходные тексты могут быть скомпилированы под целый ряд операционных
систем. Работа настоящей версии проверялась под Linux (Ubuntu) и под
Microsoft Windows (2000/XP/Vista/7).
и, наконец,
RA — это, скорее, открытый проект, чем законченное
приложение.
- Если эта версия ещё не адаптирована к Вашей установке, то
Вам прийдётся написать один или несколько модулей на С++
(классов), описывающих работу с конкретным оборудованием.
- Если эта задача уже решена, то велика вероятность, что она
возникнет снова, когда Вы захотите модифицировать свою
установку под новые задачи.
- То же касается и обработки данных, если её хочется делать
"на лету", прямо в ходе эксперимента (например, для того,
чтобы решить, что и как писать дальше
). Может быть, что-то готовое
уже есть в арсенале RA, но можно и дописать.
Архитектура RA устроена таким образом, чтобы подобные расширения
делались максимально просто, без каких-либо изменений в ядре.
Авторы, благодарности, лицензии и гарантии
Авторы:
- Copyright (C) 1994-2010, Виктор Эрикович Бурсиан,
Viktor.Bursian@mail.ioffe.ru
(идея, архитектура, программирование, документация)
- Copyright (C) 2010, Дмитрий Кириллович Нельсон,
D.Nelson@mail.ioffe.ru
(программирование)
Авторы благодарны:
- Г.С.Цейтину, создателю языка Net.
[Г.С.Цейтин. Программирование на ассоциативных
сетях. В сб.: ЭВМ в проектировании и производстве, вып.2, под ред.
Г.В.Орловского, "Машиностроение", Ленингр. отд., Л., 1985, 16-48.]
Хотя этот язык не применим напрямую к задачам, стоящим перед RA,
знакомство с его изящными конструкциями оказало большое влияние
на архитектора SOS и RA.
- Создателям библиотек и интегрированной среды программирования
Qt.
- Создателям компилятора g++.
- Денису Шинкову, автору библиотеки
QSerialDevice
для работы с COM-портом.
Лицензии:
RA распространяется под лицензией... Cобственно, она не
не распространяется — ни о каком широком распространении
речь не идёт. Тем не менее, раз уж программа распространилась на Вас,
следует сделать заявление:
Программа RA распространяется под лицензией
GNU General Public License версии 3.0
или под любой более поздней версией GNU General Public License,
опубликованной Free Software Foundation.
Для тех, кому лень читать текст лицензии, приводим краткое и
абсолютно безответственное изложение её основного содержания:
- Вы получаете программу как она есть, и можете использовать её,
как Вам угодно и для чего угодно, без каких-либо гарантий (заявленных
или подразумеваемых) в том, что она будет работать так, как Вам бы
хотелось, или так, как написано в её описании, или так, как хотелось
её авторам.
- С определёнными ограничениями и оговорками Вы получаете также права
её модификации и распространения, но в случае, если у Вас есть такие
намерения, Вам следует внимательно прочесть вышеуказанную лецензию.
Документация к программе RA распространяется под лицензией
GNU Free Documentation License версии 1.3
или под любой более поздней версией GNU Free Documentation License,
опубликованной Free Software Foundation.
Опять же для ленивых: дух закона позволяет копировать эту документацию
дословно и полностью, однако, если Вы намерены её цитировать или включить
целиком в другую публикацию — ознакомьтесь с буквой закона.
Предыстория
С началом распространения первых IBM PC, а именно, в конце 1989
года, то есть двадцать с лишним лет назад тем же коллективом авторов
был создан проект Spectra Operating System (SOS). На протяжении двух
десятилетий эта программа обслуживала и продолжает обслуживать
несколько весьма разных установок в лаборатории
спектроскопии твёрдого тела
ФТИ. Она даже экспортировалась за рубеж
— в США, Францию и Австралию — относительно небольшие
модификации позволяли успешно применять её к новому оборудованию
и новым задачам во время командировок. Написана она под MSDOS в
эпоху, когда только-только появилась Windows 3.1, и имеет собственный
графический интерфейс и мультизадачность. Это обеспечило ей долгую
жизнь, простоту и эффективность в управлении примитивными, в основном
самодельными устройствами, однако в 21ом веке она уже не смотрится,
да и апаратура качественно изменилась, стала умнее и много быстрее.
Тем не менее следует подытожить и применить накопленный опыт.
20 лет! Посредственные программы столько не живут. Особенно в
условиях исследовательской деятельности, когда методики и апаратура
постоянно меняются. Это был некоммерческий проект, авторы писали
программу для себя и успехом считают оправдание вложенного труда
полученными научными результатами. Успех налицо, и покоится он на
трёх китах:
- гибкий и расширяемый, древовидный, самодокументируемый
формат хранения данных;
- гибкая и расширяемая, объектно ориентированная реализация
элементов диалога, драйверов устройств и методик численной
обработки;
- возможность полного использования мозгов компьютера при
работе с тупыми устройствами для совершения умных действий в
режиме реального времени.
Первые две особенности наследуются программой RA и значительно
развиваются, а ответственность за третий пункт теперь перекладывается
на поумневшие переферийные устройства.
Существенную помощь в развитии SOS оказали кооперация и
различного рода взаимопомощь. Надеемся, то же произойдёт и с RA,
что подводит нас к следующему разделу.