«Прикладной» ASCII-арт

в 11:59, , рубрики: запоздалое пятничное, схема, эскиз

Привет! Автор недавней статьи рассказал о разновидности ASCII-арта, которая вроде как и не совсем «арт», т.е., искусство. Ибо служит практическим целям: показать небольшой эскиз, график, электрическую или иную схему… Решил и я вспомнить на эту тему что-нибудь.

WA1-o-o-+VD1-o-+
    | |      | |
    L C      C R<-+
    1 1      2 1  |
    | |      | |  |
  |-o-o------o-+  |
+-----------------+ +--R3--+C6--|
|                   |
o--C3+-o-|4      8|-o-C7+-o-BA1-Vcc
       | |  DA1   |       |
+------+ |  К174  |       |
|        |  УН4   |       |
o-C4+-R2-|2      6|-------+
         |        |
|--C5+---|5      7|-Vcc
         |        |
|--------|9       |


Когда-то IDE для ПЛК работали так же, как и большинство других серьёзных программ того времени — в текстовом режиме. Программист мог вглядываться во что-то вроде этого (взято отсюда):

| (N.C. physical   (N.C. physical                             |
|   Switch)          Switch)                                  |
|   Low Level       High Level                Fill Valve      |
|------[ ]------|------[ ]----------------------(OUT)---------|
|               |                                             |
|               |                                             |
|               |                                             |
|   Fill Valve  |                                             |
|------[ ]------|                                             |
|                                                             |
|                                                             |

Те современные ПЛК, которые снабжены встроенными дисплеями на HD44780, и сегодня так могут.

Но даже оказавшись за компьютером, где графический режим — единственный и безальтернативный (например, БК), составитель инструкции или справочника мог по инерции сбацать такое (фрагмент структурной схемы микропроцессора К1801ВМ1, отсюда):

    1          34        30    29    35    31    32    33
    |           |         |     |     |     |     |     |
 CLC|           |     ACLO| DCLO| VIRQ| IRQ1| IRQ2| IRQ3|
    |       INIT|         |     |     |     |     |     |
   |/          |        |/   |/   |/   |/   |/   |/
    |          |/        |     |     |     |     |     |
|___|___|      /|      |_|_____|_____|_____|_____|_____|_|
|схема  |       |       |              Блок               |
|такти- |       |       |           Прерываний            |
|рования|       |       |_______________|_________________|
|___|___|       |                       |
    |           |                      /|
   /|          |                       |
    |           |                       |

Инерция продолжалась и в девяностых, и даже в начале нулевых. Вот, например, эскиз, сделанный в 1997 году:

              __________________________
             /                         /
            |                         |  |
           |    SOUP CAN             |    |
           |                         |    |
          |                         |      |
          |                         |  __  |
RUBBER    |                         | (  ) |
SHEET __ |                         | (__) |      
        / |                         |      | /__ WITH
          |                         |      |    HOLE
           |                         |    |
           |                         |    |
            |                         |  |
             _________________________/

Это знакомый многим генератор вихревых колец (отсюда): с одной стороны мембрана, с другой — стенка с отверстием.

Могли и электрическую схему так изобразить. Если при этом брали псевдографические символы из второй части кодовой таблицы, получалась привязка к кодировке. Из КОИ-8Р в 866 и обратно перевести ещё можно, а в 1251, где таких символов нет — уже проблема. При пользовании дополнительными возможностями редакторов, например, Vortex (для БК) или «Слово и дело», получалась вообще привязка к определённому редактору. Vortex был вообще удобнейшей штукой: не сразу поймёшь, в каком редакторе выполнена схема, в текстовом или графическом. Зато отказ от всего этого обеспечивал настоящую кроссплатформенность. Можно было составить схему, например, на «Амиге», а посмотреть на «Корвете». Вот преобразователь полярности из +5В в -5В, полезная вещь для экспериментирующих с КР580ВМ80, диоды анодами вверх, отсюда:

           +V
           ^
           |
   +-------+---+
   |       |   |                  -V Output
  R1       |8  |4        +----+--->    
   |    7 -------        |    |            Parts List:
   +-----|       |      D2    |            IC1 = 555
   |  +--|       |  +    |    |             R1 = 1.5K
  R2  | 6|  IC1  |---C1--+    |             R2 = 10K
   |  |  |       |3      |    |             C1 = 10uF,16V
   +--+--|       |      D1   C2             C2 = 22uF,16V
   |    2|       |       |    |+            C3 = 1500pF
   |      -------        |    |          D1,D2 = 1N4001 diodes
  C3         |1          |    |
   |         |           |    |
   +---------+-----------+----+
             |
            ===
           (GND)
 

Какого-либо стандарта на ASCII-схемы не было. Особенно в отношении того, как обозначать пересечения проводников без соединения, а как с соединением. Одни предпочитали такой способ:

 |
-+- соединение
 |

 |       |
--- или -|- пересечение
 |       |

Другие — такой:

 |       |
-o- или -*- соединение
 |       |

 |
-+- пересечение
 |

В обоих случаях быстро сориентироваться было несложно. А разбивка схемы на фрагменты позволяла практически избавиться от пересечений.

Почему так продолжали делать, когда практически у всех были видеокарты VGA и выше? Причин несколько.

  1. Формат подходил для групп новостей и Фидонета.
  2. Текст (или HTML) и набор иллюстраций в ASCII — это один файл, и он — не архив. На текстовые редакторы, позволяющие объединить в один файл текст и графику (один из них — снова 'Слово и дело"), единого стандарта ещё не было. В общем-то, и сейчас нет, но современные офисные пакеты хоть как-то импортируют форматы друг друга, а тогда… Да и привязка к определённому редактору, опять же, не всем нравилась.
  3. Не меньший «зоопарк» имел место и в мире графических форматов. К нынешнему стандарту де факто «PNG, GIF, JPEG» пришли не сразу. Были BMP, PCX и прочие. Потом, конечно, придумали многоформатные просмотрщики, такие, как PV.
  4. Не всегда были и площадки со встроенными фотохостингами, такие, как «Хабр» или «У Самоделкина». Сторонние фотохостинги сносили изображения за давностью лет или из-за отсутствия просмотров.
  5. Старые VGA-карты в графическом режиме обеспечивали меньшую частоту кадров. Когда у всех были ЭЛТ-мониторы, это имело значение. А матричные принтеры печатали текст в режиме Draft очень резво.

Ну а зачем теперь всё это? Во-первых, ностальгия. Пишут ведь биперную музыку, хотя сегодня даже кнопочный телефон за 400 рублей проигрывает MP3. Во-вторых, фрагменты схем, поясняющие, что куда подключать, в ASCII-формате удобно помещать прямо в скетчи. Вот так (взято отсюда) можно сэкономить выводы Arduino, подключив к нему индикаторы через счётчики:

«Прикладной» ASCII-арт - 1

Пользуйтесь этим приёмом и вы, и тому, кто решит повторить вашу конструкцию, вы сэкономите лишние телодвижения. Если он скачал скетч давно, и забыл, откуда — не придётся вспоминать или искать.

Автор: tormozedison

Источник

* - обязательные к заполнению поля