Написать пост

Как читать перфокарты в 2023 году: собираем DIY-привод

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

Обложка поста Как читать перфокарты в 2023 году: собираем DIY-привод

За последние 30 лет хранение информации сильно изменилось: все пользуются флешками, многие из нас наверняка застали DVD и CD-диски, а те, кто постарше — ещё и дискеты. Но начиналось всё с перфокарт.

Впервые перфокарты начали использовать ещё в начале XIX века. В 1804 году в Жаккардовых ткацких станках перфокарты использовали, чтобы управлять составлением узоров на тканях.

Для ЭВМ перфокарты ввели в 1928 году, и с тех пор они почти не менялись, и использовали их вплоть до 1980-х годов, пока не заменили магнитными лентами.

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

В этой статье мы расскажем, как собрать собственный ридер для перфокарт. Это — адаптированный перевод оригинального гайда DIY Paper Tape/Punch Card Maker and Reader с сайта Instructables.

Превью видео Q_pgZYxH2Ms

Что понадобится для сборки привода

  1. Плоский кабель.
  2. Провода.
  3. Два 1х10 соединителя с пинами, male-разъём.
  4. Пара деревяшек.
  5. 10 фоторезисторов.
  6. 10 LED-светодиода диаметров по 3 мм.
  7. Одна большая перфоплата или две платы 4х20.
  8. Паяльник и припой.
  9. Стриппер для снятия изоляции с проводов.
  10. Резистор на 10 Ом.
  11. Плата Parallax Propeller Activity Board.
  12. Плоттер или принтер.

Начинаем паять ридер для перфокарт

Припаяйте фоторезисторы к перфоплате в один ряд. С другой стороны соедините выводы фоторезисторов между собой.

Как читать перфокарты в 2023 году: собираем DIY-привод 1
Как читать перфокарты в 2023 году: собираем DIY-привод 2

Возьмите плоский кабель с 10 линиями, зачистите провода с обоих концов на 3 мм и залудите их. Припаяйте их к 1х10-коннектору.

Первые 9 проводов должны быть припаяны к перфоплате, а не к фоторезисторам. Выводы не должны касаться их.

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

Как читать перфокарты в 2023 году: собираем DIY-привод 3

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

Как читать перфокарты в 2023 году: собираем DIY-привод 4

Возьмите ленточный кабель и припаяйте один провод к стороне платы с LED, а другой провод — к другой стороне. К концу кабеля прикрепите male-коннектор на 2 пина.

Как читать перфокарты в 2023 году: собираем DIY-привод 5

Возьмите 1х10-коннектор и припаяйте 9 резисторов сопротивлением 10 кОм по одному к каждому выводу. Другой вывод каждого резистора должен быть соединён к следующему резистору. Последний резистор припаивается к 10 выводу.

Для светодиодов понадобится резистор не менее 100 Ом, который будет ограничивать ток, чтобы не перегрузить LED.

Собираем наше устройство воедино:

Как читать перфокарты в 2023 году: собираем DIY-привод 6

Готовим деревянный корпус для ридера

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

Как читать перфокарты в 2023 году: собираем DIY-привод 7

Подсоедините платы с фоторезисторами и LED к корпусу и приклейте их.

Как читать перфокарты в 2023 году: собираем DIY-привод 8

Программируем чтение перфокарт в Propeller

Propeller Tool — это инструмент, который позволяет программировать микроконтроллеры Propeller 1 и 2. В нём мы напишем код, который поможет нашему устройству читать перфокарты.

Как читать перфокарты в 2023 году: собираем DIY-привод 9
			Con
 
  _clkmode = xtal1 + pll16x
  _xinfreq = 5_000_000
 
Obj
 
  pst           : "Parallax Serial Terminal"
 
Var
 
  long  State[9]
 
Pub Main | Index
 
  Init  
  repeat
    waitpeq(%100000000, %100000000, 0) 'wait until pin 1 is HIGH   
    pst.Str(String("States: "))        'write "States:" in terminal
    dirb := 0                          'clear out Register B
    repeat Index from 0 to 7           
      State[Index] := ina[Index]       'read in which LEDs are exposed according to paper tape
      pst.Dec(State[Index])            'Send that information to the terminal as 1's and 0's         
      pst.Str(String(", "))            'Send comma and space
      dirb[Index] := State[Index]      'Sent that information to Register B
    pst.Char(dirb[0..7])               'Send ASCII equivalent to terminal
    pst.Char(13)                       'Go to next line
    waitpeq(%000000000, %100000000, 0)  'wait until pin 1 is LOW
    waitcnt((clkfreq / 1000)  + cnt)   'debounce 1 ms
 
Pub Init
 
  dira[0..8] := %000000000             'set pins 0 to 8 as inputs
  pst.Start(115_200)                   'start up the terminal
  waitcnt((clkfreq / 100) + cnt)       'wait 10ms
		

Создаём свою перфокарту

В качестве основы для перфокарты нужно взять плотный картон. Отлично подойдёт обложка старой картонной папки.

Для того, чтобы нанести перфорацию на картон, используйте программу Silhouette Studio. В ней можно либо запрограммировать резку по картону, если у вас есть плоттер. Если у вас простой принтер, то можно разметить перфорацию, а затем вырезать её самому.

Как читать перфокарты в 2023 году: собираем DIY-привод 10

Придётся попотеть с тем, чтобы подобрать размеры перфокарты. Он зависит от того, какие у вас получились габариты паза в ридере перфокарт и как расположены LED и фоторезисторы. Приблизительная ширина перфокарты из гайда — 5 сантиметров.

Как читать перфокарты в 2023 году: собираем DIY-привод 11

Читаем перфокарту

Подключите плату Parallax Propeller к компьютеру и запустите её. Все светодиоды должны загореться. Если Propeller показывает странные сообщения, убедитесь, что выводы фоторезисторов подключены в правильном направлении.

Как читать перфокарты в 2023 году: собираем DIY-привод 12

Проведите первокарту через паз ридера. Наше сообщение гласит:

			Hello, World! Testing 12345. ASCII
		
Как читать перфокарты в 2023 году: собираем DIY-привод 13

Заключение

Если вам понравился этот гайд, посмотрите другие статьи этого автора — у него много крутых проектов. ? Или прочтите другие материалы по DIY на Tproger:

  1. Как сварить своё крафтовое пиво с Arduino
  2. Проект на Raspberry Pi — полноценный ноутбук в компьютерной мышке
  3. Как сделать умный дом своими руками на Arduino и Яндекс.Алиса — пошаговая инструкция
Следите за новыми постами
Следите за новыми постами по любимым темам
1К открытий2К показов