Накопитель данных на HP48GX/HP49G. Интерфейс RS-232

Описание использование калькуляторов линейки HP 50/49/48 для задач приёма, хранения и обработки данных в полевых условиях.

Сведения

Электронный теодолит и ноутбук.
Тяжело и неудобно работать.

Вам не приходилось записывать данные из COM порта в файл? А в полевых условиях (ночью, на улице)?

Современные геодезические приборы, GPS приемники и др. имеют возможность записи результатов измерений во внутреннюю память и в порт RS-232, могут проводить сложные вычисления.

Но если пользователю потребуется провести заранее не предусмотренные вычисления, сохранить данные в своем формате и т.п., то потребуется внешний компьютер. Часто в полевых условиях используют ноутбуки, но у них большая масса, а заряда батареи может не хватить на рабочую смену. Можно использовать внешние аккумуляторы (растет масса!).

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

Из всего этого следует, что нужен маленький и легкий накопитель данных с возможностью вычислений, записи данных в файл и со связью по RS-232. Этим требованиям соответствуют графические калькуляторы серии HP-48 и HP-49. Их можно купить в России.

3 батареи ААА в зависимости от режима (COM-порт, звук) работают от месяца до года (и больше).

Заметим, что сейчас полно разных карманных ПК, но многие ли умеют программировать на них? Встроенный язык UserRPL HP48/49 довольно прост, можно скачать пример рабочей программы. Можно программировать и на SysRPL, на ассемблере, но это гораздо труднее.

Единственный недостаток применения такого калькулятора - требуется сравнительно высокая квалификация того, кто будет работать с таким накопителем :(. Но вообще все, с кем я работал, смогли его освоить. Кроме того, в новейших (и дорогих) геодезических приборах уже встроен аналогичный накопитель.

Научный программируемый калькулятор

HP-48GX

Память 128 (до 1,128) кБ
Графический экран 131x64 точек
Языки программирования HP Basic, RPL (Lisp), SysRPL, ассемблер
Многочисленные встроенные математические функции
Файловая система
Двумерная и трехмерная графика
Размер 8.9x18.7x2.8 см
Последовательный порт: RS232 (провод продается отдельно)
Клавиатура: 49 кнопок
Масса: 264 г.

HP-49G

HP-49 - более новая модель.
1.5 Mb памяти, Flash ROM,
нет IR-порта, нет возможности расширения памяти
51 кнопка, надежный корпус.

Программирование

Необходимы начальные знания основ HP-48/HP-49, чтобы повторить этот пример. Программу на языке RPL (LISP) можно ввести прямо с клавиатуры HP и сохранить в файл для дальнейшего быстрого вызова.

Программа инициализации COM-порта.

Программа отправляет строку символов + CR + LF в COM-порт

Программа получает строку символов из COM-порта и показывает ее на экране. Размер буфера 255 символов.

Если соединить ПК и калькулятор проводом (самодельным или фирменным), то можно передавать данные.

Результаты приема данных калькулятором размещены в т.н. стеке, и могут быть сохранены в файл.

Сохраним строку в файл.

В HP-48/HP-49 есть встроенный файловый менеджер.

В файловом менеджере можно просмотреть полученный файл.

Просмотр.

Обмен данными с компьютером

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

Программа для передачи данных в ПК (входит в набор для связи с компьютером). Ее можно скачать на www.hp.com.

Применение

Приведу пример практического использования накопителя. Из прибора при измерении получаем текстовые данные в известном формате:

81..00+00003596 82..00-00007783 83..00+00001324 32..00+00008574
812.00-00000027 822.00-00000013 832.00+00000001 32..00+00008753
21.103+16181600 22.103+08178800 32..00+00008766 33..00+00001408
21.103+16181600 81..00+00002736 82..00-00008328 32..00+00008766
11....+00000000 21.103+16181500 22.103+08178900 31..00+00008856

Наша задача перебрать их и записать в файл в памяти накопителя:

%%HP: T(1)A(R)F(.);
"File started at 22.28 13.032001
200 31388 16793 -114 35598 M8 22.29 XYZgp
200 -1568 -2034 -315 2568 M9 22.30 XYZgp
200 -1566 -2032 -314 2566 22.30 XYZgp
200 -38171 -7653 -105 38931 M10 22.31 XYZgp
200 -33912 -20809 50 39787 M11 22.32 XYZgp
200 -33155 -18373 -1651 37905 3 22.34 XYZgp
200 -20812 -11158 -1675 23614 3 22.35 XYZgp
200 -1835 287 -1640 1858 3 22.36 XYZgp
"

Получение, разбор данных и запись в файл делает моя программа на RPL.

Исходники

Пример рабочей программы на языке RPL.

Где взять HP-48/HP-49?

www.price.ru

Ссылки

В Интернете много софта под HP-48/HP-49. Есть эмулятор, среда разработки на SysRPL, множество исходников. Исходники можно взять на сайте www.hpcalc.org. Ключевые слова для поиска в Интернет - HP-48, HP-49, RPL, SysRPL, EMU48, EMU49, DEBUG2, Visual RPL, HORN.

Источник (автор не указан): http://emb.hut.ru/hp48/hp48-49.html

Прикрепленный файлРазмер
Binary Data hpdist.s2.63 KB
Модели и серии: 

Комментарии

Подобное решение было сделано и на основе калькулятора CASIO fx-9860G. Вот ссылка: http://ukrgeo.com.ua/good.php?id=179

Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G

Судя по аннотации - это просто пакет прикладных программ, а в заметке про HP - сопряжение с аппаратурой.

Мне тоже так показалось, что это просто пакет программ. Хотя fx-9860G имеет посл. порт и умеет в него писать/ из него читать, если я правильно помню

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

А чем пользуются для связи с HP50g из-под Win7/8 ?

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

Если 32-разрядная, можно попробовать прилагающийся к ПМК софт (или скачать на сайте HP). Если 64-разрядная, то придётся работать из XP-режима или виртуальной машины.

Все еще хуже - 64битная Виндавосемь.
Однако, надо признать, справедливости ради, что МК-161 можно программировать из-под любой балайки :)

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

Наоборот, под HP всё на порядок проще. Для сложных программ есть среда с эмулятором (работает под виндами и wine), в ней происходит разработка и отладка, потом готовая программа копируется на ПМК хоть через SD-карту. Для простых программ набить пару десятков строк на UserRPL на самом ПМК не представляет труда, причем эти 2-3 десятка строк будут эквивалентны сотням шагов программы на 152/161.

Драйвер есть также и для x64 винды.

Windows 7 64-bit USB driver HP-50gДля связи HP-50g из-под Windows 7 64-bit:

http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareIndex.jsp?lang=...

С "восьмёркой" не установился, Install Failed...

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