Скачать 0.54 Mb.
|
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ им. М.В.ЛОМОНОСОВА ФАКУЛЬТЕТ ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ И КИБЕРНЕТИКИ НАУЧНО-ИССЛЕДОВАТЕЛЬСКАЯ ЛАБОРАТОРИЯ ЭВМ НАУЧНЫЙ ОТЧЕТ РЕАЛИЗАЦИЯ КАРМАННОГО ВАРИАНТА АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ ОБУЧЕНИЯ "НАСТАВНИК" (стартовая версия) Заведующий НИЛ ЭВМ к.т.н. Н.П.Брусенцов Исполнитель вед.н.сотр. НИЛ ЭВМ,к.т.н. С.П.Маслов 2001 г. АННОТАЦИЯ В отчете содержится описание стартовой версии АСО "Наставник" в карманном варианте. Система реализована на органайзере фирмы PSION, модель Organiser II XP путем расширения имеющегося у него ассортимен- та функций. Программа, реализующая функцию АСО "Наставник", написана на языке OPL. Обосновывается целесообразность создания карманного ва- рианта АСО, приводятся краткие данные об органайзере и языке OPL. Опи- саны внешний "облик" системы, организация и кодирование управляющей информации и обучающая программа. Приводятся сведения об объеме ис- пользуемой памяти и быстродействии системы - задержках реакции на от- веты обучаемого. Список литературы содержит 4 названия. Работа должна была быть выполнена в первой половине 1998 г. По не зависящим от автора причинам этого не произошло и описываемая здесь реализация производилась в инициативном порядке в июне-августе 2000г. Отчет написан в январе 2001г. ВЕДЕНИЕ Автоматизированная Система Обучения (АСО) "Наставник" [1] сущест- вует с начала 70 годов, реализована в многочисленных вариантах [2] и используется поныне. Это говорит о том, что система действительно поз- воляет достигнуть заявленных целей и имеет свою "нишу" в существующем многообразии компьютерных обучающих систем. Вместе с тем распространенность системы могла бы быть существенно большей, если бы ее потенциальным пользователем не приходилось преодо- левать значительные трудности при попытке заиметь "Наставник" у себя. Несмотря на усилия разработчиков облегчить этот процесс, лишь очень небольшое число энтузиастов доводили дело до конца. По этой причине, в частности, не удалось в желаемой степени привлекать силы пользователей для создания новых курсов, а это, в свою очередь, не способствовало расширению сферы применения системы. Основным препятствием является то, что даже имея возможность при- обрести многие компоненты системы в готовом виде, потенциальный владе- лец сталкивался с "ручным трудом" значительного объема - работами по размещению минитерминалов, соединению их друг с другом и с управляющим компьютером, установке источников питания и т.д. Одним из возможных вариантов решения проблемы могло бы быть соз- дание "карманного" варианта системы - компактного устройства, внешне подобного простому калькулятору, но содержащему в себе все необходимое для выполнения функций "Наставника". Карманную систему не нужно уста- навливать, она всегда готова к употреблению, ее можно носить с собой и использовать в любом месте - дома, в транспорте и т.д. Если такое уст- ройство оснащено к тому же стандартным связным портом (типа RS-232C или InfraRed), то дополнительно можно решить еще две проблемы: загруз- ку в устройство из "большого" компьютера управляющей информации по различным курсам и "выгрузку" из него архива (информации о том, как конкретный обучающийся проходил данный курс). Таким образом, сохраняя все имеющиеся достоинства (о которых много написано в приведенных в библиографии источниках), система приобрела бы дополнительные качества - мобильность и автономность. Одновременно отпала бы необходимость "ручного труда" при установ- ке системы. При этом оказывается возможным как автономное, так и кол- лективное использование системы - связь карманных "Наставников" с центральным компьютером также осуществляется штатными встроенными или дополнительно приобретаемыми средствами. Относительно того, каким должен быть "карманный Наставник" выска- зываются различные мнения. Согласно одному из них он обязательно дол- жен представлять собой специализированное устройство отечественного производства, предназначенное исключительно для обучения. Реализовать единичный экземпляр-макет устройства на основе микропроцессора вполне возможно, однако автору настоящего отчета кажется неоправданной такая узкая его специализация. Организация массового производства специали- зированного устройства в нынешних условиях мало реальна. Другое решение, предложенное и реализованное автором настоящего отчета, основывается на использовании для этой цели выпускаемых в нас- тоящее время многими фирмами и в широком ассортименте устройств типа карманных калькуляторов, электронных записных книжек, электронных ор- ганайзеров, переводчиков и т.д. Перечисленные устройства имеют в своем составе микропроцессор, клавиатуру и индикатор и реализуют свои штат- ные функции программным путем. При наличии некоторого запаса программ- ной памяти к имеющимся функциям можно добавить еще одну: работу в сис- теме "Наставник". Для этого их программное обеспечение (т.н. firmware) должно быть пополнено новой компонентой. В данном отчете содержится описание "карманного Наставника", реа- лизованного с использованием второго подхода. В качестве основы была взята модель английской фирмы PSION - Organiser II XP. Выбор именно этой модели обусловлен в значительной мере конъюктурными причинами - на тот момент (конец 1997г.) эта было единственное доступное по цене устройство с возможностью программирования пользовательских задач не- вычислительного характера. Хотя названная модель на настоящий момент может считаться устаревшей, встроенный в нее процедурный язык програм- мирования OPL (на котором написан "Наставник") используется и в дру- гих, более современных (и более дорогих) изделиях PSION-а. Т.о. систе- ма легко может быть "пересажена" на них. Можно привести и дополнитель- ные доводы в пользу проведенной работы. Реализация системы в карманном варианте имеет особенности, кото- рые трудно заранее предвидеть. Сколько потребуется программной памяти и памяти для хранения управляющей информации, как лучше ее организо- вать, при каком минимальном быстродействии микропроцессора система еще будет оставаться интерактивной и др.? Созданный стартовый вариант сис- темы дает ответы на многие вопросы такого рода. Немаловажно и другое: большинство устройств, потенциально пригод- ных для реализации "Наставника", не имеют штатных средств пополнения firmware силами пользователя. Такого рода деятельность возможна лишь при содействии фирмы-изготовителя. Опыт автора говорит о том, что убе- дить последнюю, даже обещая ей на словах "златые горы", непросто. Если же, помимо посулов, демонстрируется работающее устройство фирмы-конку- рента, можно рассчитывать на более благоприятное отношение. Стартовый вариант по сравнению со штатным несколько урезан. Реа- лизована только подсистема "Обучение". Секций не должно быть более 31 и они должны иметь сплошную нумерациею. Не ведется архив. Нет упражне- ний типа ПП, обязательных упражнений и ссылок на абзацы. Однако, для всего этого оставлено место и при необходимости "недоделки" могут быть устранены. ОРГАНАЙЗЕР МОДЕЛИ PSION Organiser II-XP ПРОЦЕДУРНЫЙ ЯЗЫК ПРОГРАММИРОВАНИЯ OPL (краткое описание) Технические данные Organiser II-XP Размеры: 142 х 78 х 29,3 мм. Вес (без батарейки и доп. памяти): 250 гр. Индикатор: две строки по 16 символов, выполненный в виде точечной матрицы на жидких кристаллах Клавиатура: всего 36 клавиш, включая клавиши редактирования, управления курсором, буквенные, цифровые, MODE (режим) и ON/CLEAR (вкл./очистка) Микропроцессор: HD6303X с тактовой частотой 3,6864 МГц Память: ОЗУ 32КВ (из них свободно 23,5КВ), ПЗУ 32КВ Дополнительные модули: ОЗУ (Rampak) 32КВ с автон.питанием ППЗУ (Datapak) 8/16/32/64/128КВ CommLink - порт RS-232C Время: встроенные кварцевые часы, идущие и при выключении Питание: от алкалиновой батарейки 9В или сетевого адаптера Устройство имеет широкий набор встроенных функций (Выбираются из MAIN MENU (ГЛАВНОГО МЕНЮ): FIND,SAVE,ERASE - записная книжка с поиском и стиранием CALC - простой калькулятор TIME - кварцевые часы ALARM - будильники PROG - программирование на встроенном процедурном языке OPL COPY - копирование внутренней памяти в дополнительную память INFO - данные о свободной и использованной внутренней памяти RESET - общий сброс OFF - ручное выключение (выключается также автоматически) Автоматическое выключение устроено таким образом, что если клави- ши не нажимаются более 90 секунд, устройство "засыпает" - переходит в режим с малым энергопотреблением - и индикатор погасает. Из этого сос- тояния его выводят нажатием клавиши ON/CLEAR, после чего можно продол- жать работать с того места, на котором "заснули". Для "Наставника это оказывается удобным - каждый обучаемый может работать в своем темпе. Ненужные конкретному пользователю функции можно временно убирать из MAIN MENU. Дополнительные функции (процедуры), реализованные в PROG, например функцию NAST ("Наставник"), можно поместить в MAIN MENU и вызывать оттуда. Карманный "Наставник" реализован на встроенном в Organiser II-XP процедурном языке программирования OPL (Organiser Programming Langua- ge) [3]. В режим программирования на OPL входят, вызывая функцию PROG, поэтому опишем ее более подробно: Подменю PROG (приводится не полностью): NEW, EDIT, RUN, ERASE поддерживает полный цикл написания, редактирования, выполнения и от- ладки, сохранения и стирания программ-процедур на OPL. В принципе су- ществуют и кросс-средства написания и отладки программ для Organiser-а на PC, но по материальным причинам они были недоступны. Процедурный язык программирования OPL. В руководстве о нем сказано следующее: "Специально разработан для управления вашими базами данных и для полного использования всех воз- можностей машины". В рекламных буклетах говориться о сходстве OPL с BASIC-ом. Автор не является профессиональным программистом и данная работа - его первый опыт. Поэтому он заранее приносит извинения потен- циальному читателю за возможные "излишества" при описании языка OPL и написанной на нем программы. Тем не менее представляется целесообраз- ным рассказать здесь немного об OPL хотя бы для того, чтобы читателю не приходилось слишком часто обращаться к фирменному руководству [3]. Программы, написанные на OPL, представляют собой набор процедур, одна из которых является главной. С нее начинается выполнение всей программы. В нашем случае это процедура NAST. В ней задаются параметры текущего курса - его №, пределы отношения числа правильных попыток к числу ответов и предельное число возвратов. В описываемом стартовом варианте имеется единственный тест-курс. При необходимости в NAST мож- но реализовать меню, позволяющее выбрать желаемый курс из нескольких. Процедуры содержат переменные - глобальные и локальные. Допустимы переменные трех типов: действительные числа с плавающей точкой (не по- мечаются), целые (помечаются символом % в конце имени) и символьные (помечаются символом $; при объявлении нужно указать максимальное чис- ло символов). Возможно использование массивов. Переменные разных типов (в том числе и символьные!) можно смешивать, руководствуясь определен- ными правилами. Значения переменных в конкретной процедуре можно зада- вать, объявляя глобальные переменные, вводить с клавиатуры или переда- вать из других процедур в виде параметров. Процедуры могут существовать в двух формах: исходной (пользова- тельской) и транслированной. Процедуру в исходной форме можно редакти- ровать; транслированная процедура предназначена только для выполнения. На самом деле транслированная процедура не является процедурой, напи- санной в машинных кодах, как это можно было бы предположить, а предс- тавляет собой несколько измененную исходную процедуру, что позволяет OPL упростить и ускорить процесс ее интерпретации. По объему трансли- рованная процедура приблизительно вдвое больше исходной. При написании и отладке запоминаются обе формы процедур - только при соблюдении это- го условия работает встроенная диагностика. После завершения отладки необходимость в хранении процедуры в исходной форме отпадает и она мо- жет быть удалена для экономии памяти. (На самом деле это делается сле- дующим образом: пересылают через связной порт в PC тексты процедур в обеих формах, затем стирают их в Organiser-е, а обратно загружают только транслированные). В качестве средств управления программой OPL содержит команды ор- ганизации циклов DO/UNTIL и WHILE/ENDWH, внутри которых возможно ис- пользование команды BREAK. Имеется команда GOTO и возможность установ- ки меток. Ветвление по условиям осуществляется при помощи команд IF/ELSEIF/.../ELSE/ENDIF. Список команд включает в себя также набор арифметических опера- ций, операций сравнения и логические операции AND, OR, NOT. Данные хранятся в виде файлов. Несмотря на то, что в одном файле можно объединять данные разных типов - действительные, целые и сим- вольные - все они хранятся в символьном представлении. Таким образом хранение, например, целых с большим числом значащих цифр оказывается далеко не таким экономным, каким можно было бы предположить. (Эти тон- кости совершенно не отражены в фирменном описании и автор на этом чуть не погорел!) Файлы имеют сугубо последовательную структуру: после то- го, как файл создан и наполнен, нельзя заменять ничего внутри него, а только удалять, либо прибавлять к концу. Файлы состоят из однотипных записей, количество которых не огра- ничено. Записи могут содержать до 16 полей. При создании файла необхо- димо определить какого типа данные будут помещаться в конкретном поле. Размер записи ограничен 254 символами (байтами) Записи последовательно пронумерованы. Делать запись текущей можно посредством команды POSITION X (X- № записи). В описываемой реали- зации на запись удачно "легла" управляющей информации одной секции. В OPL имеется много операций, предназначенных для работы с сим- вольными переменными. Поскольку в представлении автора такие операции (а также некоторые другие) могут быть специфичными для OPL, ниже будет дано описание тех из них, которые были использованы в программе. A$=CHR$(код ASCII) A$ - символ с кодом ASCII A%=ASC(строка) A% - код ASCII первого символа строки GEN$(число,ширина поля) - симв.предст. числа в поле зад.шир. L$=LEFT$(строка,целое) L$ - левая часть строки длины целое R$=RIGHT$(строка,целое) R$ - правая часть строки длины целое L%=LOC(строка,символ) L% - позиция, в строке, где есть символ L%=LEN(строка) L% - длина строки M$=MID$(строка,цел.1,цел.2) M$ - цел.1 символов,от позиции цел.2 R$=REPT$(строка,целое) R$ - строка, повторенная целое число раз I%=INT(число) I% - целая часть числа R=RND R - случайное действительное от 0 до 1 K%=KEY K% - код ASCII нажатой клавиши K%=GET ожидает нажатия клавиши и присвоит K% ее код ASCII AT<�№ позиции>,<�№ строки> - устанавливает курсор KSTAT<1-4> - задает режим клавиатуры (3-цифровой) EOF True, если достигнут конец файла, False, если нет. Написание и отладка программ на OPL. Процедуры, из которых состоит программа, пишутся и отлаживаются по отдельности. Несмотря на ограниченный объем внутренней памяти (32KB ПЗУ и 32KB ОЗУ, из которых 23,5KB выделено пользователю) OPL имеет достаточно развитые отладочные и диагностические средства. Автор упо- минает об этом с полной ответственностью, поскольку ему - непрофессио- нальному программисту - удалось написать и отладить достаточно сложную программу за срок менее месяца. На этапе трансляции производится син- таксический анализ текста с выдачей "зашитых" в ПЗУ 63 сообщения об ошибках. Проверка происходит и на этапе выполнения транслированной процедуры. При этом даже, хотя и приблизительно, указывается непра- вильное место в ней. |
Инструкция пользователя Реализация 4-го этапа модернизации автоматизированной системы документационного обеспечения управления ниу-вшэ на платформе emc documentum... |
Исследование современных автоматизированных систем управления гостиницей.... Реализация этих условий возможна только в рамках применения информационных компьютерных систем |
||
Концепция создания автоматизированной системы Основные положения создания автоматизированной системы «Государственный регистр населения» 6 |
Предпрофильной подготовки и осознанного выбора профиля обучения Реализация личностно ориентированного подхода и концепции целостного видения мира (интеграция) в процессе обучения |
||
О проведении опытной эксплуатации государственной автоматизированной системы правовой статистики В целях обеспечения поэтапного создания государственной автоматизированной системы правовой статистики, руководствуясь п. 1 ст. 17... |
Рабочая программа по английскому языку 5 9 класс Реализация рабочей программы допускает сочетание различных форм обучения. Возможна организация обучения по индивидуальным учебным... |
||
Руководство пользователя сервиса предоставления сведений об адресных... Сервис предоставления сведений об адресных программах из автоматизированной системы «Адресные программы» Территориальной отраслевой... |
Дипломная работа на тему: «Реализация сервисов многоцелевого поиска и заказа группы товаров» Научный руководитель к ф м н., доц. Н. Г. Графеева |
||
Техническое задание на создание автоматизированной системы «Корпоративное хранилище данных» Гост 34. 602-89 Техническое задание на создание автоматизированной системы (пример) |
Приказ от 13 ноября 2014 г. N 70-01-183/14 об утверждении порядка... Единой автоматизированной информационной системы торгов города Москвы (еаист) для уполномоченных сотрудников приказываю |
||
Татьяна Георгиевна Талипова Дата рождения: 07 мая, 1953, Москва, СССР С 1977 по настоящее время, ведущий научный сотрудник/старший научный сотрудник, /научный сотрудник/младший научный сотрудник, Институт... |
Техническое задание на внедрение автоматизированной системы технического... Комплекс работ по созданию автоматизированной системы технического учета электроэнергии, тепловой энергии, газа астуэ ао «Ижевский... |
||
Научный стиль русской речи Часть 1 Научный стиль в системе функциональных стилей Научный текст передает научную информацию, способы ее получения, представляет упорядоченную систему научного знания. Это позволяет... |
Инструкция по созданию заявки на включение (изменение) информации... Подсистема информационного взаимодействия автоматизированной системы управления городскими финансами |
||
Курсовой проект по курсу «Обработка данных в автоматизированных системах»... «Разработка технического и программного обеспечений автоматизированной системы научных исследований» |
утверждаю Типовые проектные решения по созданию автоматизированной системы обмена информацией на основе Системы-112, обработки вызовов и управления... |
Поиск |