Прогулка по лунолётам. 2 - User RPL и динамика

На предыдущей прогулке мы выразили почтение авторам классической программы и получили достаточно простую и понятную модель симулятора полёта вблизи лишенных атмосферы планет. Однако, статичность расчетов делала симулятор похожим скорее на учебный пример, чем реалистичную игру. Попробуем добавить динамики с помощью HP-50g и встроенного в него языка RPL.

Прежде всего, немного изменим ввод. Вместо двух рычагов расхода и времени манёвра оставим только один - ускорение. Примем интервал в 1 секунду для дискретизации каждого шага расчетов. Пока обойдёмся без графики, нужно отработать модель на нашем динамическом симуляторе, а движущимися картинками можно будет заняться на одной из следующих прогулок.

Добавим немного сервиса по вводу начальных параметров. Пока используем те же значения, что и у Перепёлкина.

Время пошло (ресурс жизнеобеспечения в первой строке), лунолёт пока стоит на старте. Чтобы сдвинуть его, придадим ускорение, используя стрелку вверх. 1 м/с2... 1,5 м/с2... 2 м/с2... Поехали!

Теперь наберем высоту, сбросим ускорение (стрелка вниз) до нуля или даже придадим отрицательное и будем пробовать плавно прилуниться. Горизонтальные стрелки (вправо и влево) изменяют соответственно на 0,1 м/с2 шаг приращения ускорения вертикальными стрелками, который по умолчанию равен 0,5 м/с2. То есть, нажав стрелку вправо и после стрелку вверх получим приращение уже на 0,6 м/с2

При достижении поверхности компьютер выбросит транспарант "Landing".

Чтобы возобновить полет (дозаправка не предусмотрена), нажмите на кнопку меню "New".

Кнопка "Quit" позволяет в любой момент завершить полёт.

Ниже прикреплен файл с исходный текстом первого варианта программы "Лунолет-1" (расчетный блок, пригоден и для "Лунолет-2"), который можно взять за основу. Как уже упоминалось, язык User RPL позволяет нам манипулировать графическими образами. На следующей прогулке мы попробуем наблюдать траекторию полёта в динамике...

В помощь разработчику и испытателю

Для разработки и тестирования программ очень удобна среда "Debug4x" (http://www.debug4x.com/). Даже если у вас пока нет ПМК типа HP-48/49/50, вы можете прогонять все примеры в этой среде.

File attachments: 
Прикрепленный файлРазмер
Binary Data lunar_ship_01.s3.51 KB
Метки публикаций: 
Undefined

Комментарии

Придушить учебную курву #1. Сергей, как запустить эту User-RPL программу (lunar_ship_01.s)? Как скопировать ее на SD-карточку, я сам разобрался :)

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Я уже не помню. По-моему, заливал через шнурок по Connext4x. А может, на карточке... Для HP программа - это строка, которую он пихает в переменную, а потом надо запустить эту переменную.

Вот здесь есть инструкции: http://pmk.arbinada.com/node/1004

Не, в мк-161 учебная курва значительно меньше :)

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Язык. Тут уже не кривая, а целый бастион. Взять который далеко не каждый русофоб и враг отечественного производства может. :-)

В первую очередь для HP 50g надо освоить английский язык. И это ещё самая простая часть работы. Потом прочитать, точнее изучить несколько суровых 1000-страничных томиков на английском. Поэкспериментировав с HP 50g, в конце концов, обнаружишь себя способным на вычисления, но в ужасном отрыве от соотечественников. Даже среди иностранцев владеют этими ПМК очень и очень немногие.

На мой взгляд, развитие МК-161 до ЭКВМ 2.0 (с бесконечным стеком, типами данных, идентификаторами, структурным программированием и т.д.) проще и осмысленней. Больше пользы приносит и себе, и людям.

С английским не проблема. Проблема, как всегда, со временем.
На мой взгляд, развитие МК-161 до ЭКВМ 2.0 (с бесконечным стеком, типами данных, идентификаторами, структурным программированием и т.д.) проще и осмысленней. Больше пользы приносит и себе, и людям.
Согласен на все 100%, но, если ЭКВМ для производителя это не основной бизнес, а, скажем, хобби, то вряд ли мы доживем до ЭКВМ 2.0. Разве что какой хобби проект вдруг вырастет до этого

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Англ. Так английский и даёт коэффициент при времени. Можешь сравнить, за сколько ты прочитываешь лист A4 с русским и за сколько с английским текстом — да так, чтобы каждое слово понимать. Результат сильно удивит.

Видимо, раз МК-152 удалось выпустить, ЭКВМ 2.0 тоже получится. Правда наше участие в этом, увы, пока минимально. Разве что немного поможем деньгами, когда модель в серию пойдёт. Возможно, конечно, что проект потянет Сергей Фролов. Если его обошли на старте — не факт, что так продолжится всегда.

Если лист А4 с IT-техническим текстом - то почти столько же времени. Если с медицинским или строительным - то гораздо дольше :)

Сергей Ф.? Не могу даже представить, зачем ему нужно таким заниматься.

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Даже быстрее. Для меня установленная на рабочем месте программиста локализованная ОС - признак непрофессионализма или, в лучшем случае, предметника, пытающегося что-то кодировать. Сообщения на локальном языке, хоть на русском, хоть на французском вызывают ступор. Поиск решений в гугле требует обратного перевода с русского на английский.

Технический текст на А4 предпочту на языке оригинала, скорее всего это будет именно английский.

В русском языке большинство терминов, относящихся к ИТ заимствованы из английского. Но те, кто об этом честно говорит и отрицает, что Россия - родина слонов, вне сомнения подкуплены ГосДепом для разрушения отечественного производства ;)

Но те, кто об Но те, кто об этом честно говорит и отрицает, что Россия - родина слонов, вне сомнения подкуплены ГосДепом для разрушения отечественного производства
вне сомнения! :)

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Объективно - больше как раз для МК. Меньше кажется за счет того, что обучение прошло в детстве.

Да, команды ПМК в нашем ДНК :)

Сергей, а SD-карточку всегда таскаешь в HP50g?

На КЛК в форуме написали, что при любом нажатии на клавишу HP50g лезет к карточке и, по крайней мере, считывает корневой каталог. Поэтому лучше в корне иметь всегда одну папку, и делать ее корневой для всего остального.

Я к вопросу расхода батарей

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Не таскаю совсем, только для переноса файлов использовал, чтобы со шнурками и программкой соединения не возиться.