Графопостроитель Robotron REISS K6418 (СМ6415) [+]

Apr 29, 2007 13:09

    Я еще застал те времена, когда графопостроители были только планшетными и плоттерами (по крайней мере в exUSSR) их не называли. У отца на работе стоял огромный планшетник формата A0, подключенный к "моей" машине - дряхленькой 286-й, на которой мне было позволено работать. Иногда приходили несколько человек из отдела АСУП с рулонами кальки, сгоняли меня с машины и включали этого монстра. Колдовали с кнопками на панели и... он начинал рисовать! Завораживающее зрелище! Разумеется, я мечтал о таком аппарате и вопрос "Зачем?" даже не рассматривался :)

Мечта сбылась спустя 15 лет благодаря Arthur77, форумчанину сайта Железные призраки прошлого.




Графопостроитель Robotron REISS К6418 (в Советский Союз поставлялся под названием СМ6415).

Техничекие характеристики:
- формат бумаги - A3, 420х297 мм
- область рисования - 370х270 мм
- крепление бумаги - электростатическое
- разрешающая способность - 0,1 мм
- рисующий элемент - фломастер
- командный язык - HP-GL
- интерфейсы - v.24 (RS-232) и IFSS (токовая петля)

Первое включение не особо порадовало - дергался и скрежетал. Поэтому перед всеми дальнейшими действиями был разобран, вычищен внутри и отмыт снаружи. К сожалению, я не фотографировал, когда копался во внутренностях. Отмечу только, что каретка перемещается двумя шаговыми двигателями через систему шкивов, поднятие/опускание пера - электромагнитное, а управляет всем этим клон Z80.
В процессе осмотра было обнаружена причина скрежета - под направляющей поперечного перемещения отклеился металлический держатель шлейфов, идущих на электромагнит поднятия/опускания пера и концевики, провис и заклинивал головку. Также была обнаружена скрытая кнопка, находящаяся под декоративной панелью с названием:




На самой панели расположены: кнопка сброса "Reset", кнопка фиксации бумаги "Paper", выполняющая также функцию перевода устройства в режим On-Line, кнопки поднятия и опускания пера (можно опустить перо и рисовать курсорными клавишами в режиме Off-Line или принудительно поднять перо в процессе вывода документа - головка будет перемещаться, но не рисовать). Назначение трех следующих кнопок ("P1", "P2" и "Window") мне установить не удалось :(. Кнопка "View" в режиме On-Line перемещает головку в правый верхний угол, позволяя увидеть документ целиком, повторное нажатие возвращает головку в исходное положение. Светодиод "Ready" горит в режиме On-Line и мигает при нажатии кнопки "View". Светодиод "Error" горит при попытке увести головку за пределы допустимой зоны рисования и мигает, когда графопостроитель находится в тестовом режиме. Курсорными кнопками головка перемещается по полю.

Самотест включается путем нажатия скрытой кнопки. Светодиод "Error" начнет мигать. Теперь нажатие кнопки "P1" приведет к рисованию серии вписаных треугольников, "Window" - круга, а курсорные кнопки "Вверх", "Влево" и "Вправо" выводят шрифтовые наборы трех разных размеров.




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



Поскольку v.24 - это RS-232, то именно его я и использовал (на фото как раз виден самодельный кабель). Схема подключения следующая:

Разъем EFS26Разъем DB9
A15
B25
A32
B43
A58
B67
A74
B81,6
A94

После этого была скачана программа WinLINE (http://www.winline.com/evalpen.html), с помощью которой графопостроитель был установлен в системе как "Generic HP-GL LLeft", т.е. с базовой поддержкой HP-GL и с нулевыми координатами в левом нижнем углу. Казалось бы - все условия соблюдены, но при выводе первой же тестовой страницы меня подстерегала проблема номер один - рисовать он отказывался, стоял на одном месте и только с разной частотой поднимал и опускал перо. Перебор настроек драйвера ни к чему не привел, поэтому было принято решение разбираться с языком HP-GL и попытаться поуправлять устройством вручную через терминальную программу. Скачал краткий справочник по командам, запустил HyperTerminal... В процессе недолгих экспериментов было выяснено, что совместимость с языком HP-GL у данного графопостроителя очень своеобразная - команды PU и PD (поднятие и опускание пера) для него являются безусловными. Получив их, игнорирует все до разделителя ";". А в файлах, сформированных WinLINE, команды PU и PD дополнены координатами, к которым нужно перейти с поднятым или опущенным пером. Запускаем автозамену "PU200,300;" на "PU;PA200,300;", копируем исправленный файл в порт и… имеем проблему номер два - кусочки текста, характерные для стандартной пробной страницы печати Windows есть, но куда девалось остальное и откуда взялось огромное количество хаотичных росчерков? Первая мысль - завышена скорость порта, но оказалось, что 9600,8-N-1 - единственный режим, в котором графопостроитель желает работать. Тогда оставалось или повреждение внутреннего буфера или его переполнение. Для проверки нужна была программа, которая посылала бы команды в порт с определенной частотой. И мой коллега, преподаватель программирования Максим Крюк, эту программу написал, за что я ему безмерно благодарен.



Программа позволяет открыть два файла и посылать команды из любого из них в порт как вручную по одной, так и автоматически, определенное количество команд в секунду.
Первая же попытка оказалась успешной - на скорости 50 команд в секунду были замечены проблемные росчерки, но при снижении скорости до 25 команд в секунду пробная страница печати была медленно, но успешно нарисована. Казалось бы, решение проблемы найдено. Не тут-то было - реальный чертеж вновь перечеркнут крест-накрест из-за потерь команд :(. Пришлось снизить скорость до 10, а потом и вовсе до 5 команд в секунду. И вот что получилось:




Причина оказалась довольно прозаичной - перемещения на любые расстояния кодируются одинаковыми командами, но в случае небольших расстояний команда физически выполняется быстрее, а при больших расстояниях - медленнее. И если команды поступают вперемешку и с одинаковой скоростью, то графопостроитель не успевает некоторые из них отрабатывать. Значит, устройство просто обязано контролировать поток команд. А сделать это можно: а) особым образом подтверждая выполнение любой команды (необходима поддержка со стороны программного обеспечения); б) осуществляя Flow Control, аппаратный (RTS/CTS) или программный (XON/XOFF). К сожалению, пока не удалось подтвердить ни первый, ни второй вариант - в терминальной программе графопостроитель не выдает отклики на команды, только на нажатие кнопок "Reset" и "Paper", а состояние линий RTS и CTS в процессе вывода не меняется. Для окончательного выяснения необходимо реанимировать компьютер Robotron 1715, чтобы подключить графопостроитель к нему и поэкспериментировать с оригинальным программным обеспечением. Ну а пока что придется довольствоваться имеющимся результатом - устройство довольно стабильно работает и неплохо рисует.

plotter, статьи

Previous post Next post
Up