bandeau Aconit

Accueil > Collection


Pour nous Ă©crire :





© 2002-2014 - Aconit


Google

Une Perforatrice IBM 029 USB

La technologie de 1960 rencontre l’informatique moderne !


Contexte

    L’association Aconit a relevĂ© le dĂ©fi en 1985 de la conservation et la valorisation de l’histoire de l’informatique. Elle dispose pour cela d’une des collections les plus complètes d’Europe avec plus de 2000 machines, logiciels et documentations. Elle couvre toutes les pĂ©riodes de cette histoire, depuis l’ère prĂ©-informatique de la mĂ©canographie des annĂ©es 1940, jusqu’Ă  la micro-informatique moderne des annĂ©es 2000.

    L’association peut fournir des services Ă  d’autres associations ou entreprises. Dans ce cas la sociĂ©tĂ© ExpĂ©dition Mystère fournit Ă  ses clients des Histoires Ă  Ă©nigmes par le biais d’objets Ă©tranges envoyĂ©s par voie postale.

ExpĂ©dition Mystère a sollicitĂ© Aconit pour lui fournir des documents d’Ă©poque pour ses nouvelles histoires.
Ces supports fournis par Aconit sont

  • Du texte sur papier Listing, imprimĂ© par une Letterwriter 100
  • Du ruban perforĂ©, produit par un teletype ASR33
  • Des cartes perforĂ©es, produit par une perforatrice IBM 29

    Les cartes perforĂ©es ont Ă©tĂ© un support de stockage de donnĂ©es utilisĂ©es de la fin du XIXe siècle jusque dans les annĂ©es 1970. Au dĂ©but utilisĂ©es par les machines des ateliers de mĂ©canographie, le support a continuĂ© a ĂŞtre utilisĂ© par l’informatique naissante.

    La saisie des donnĂ©es sur les cartes Ă©tait effectuĂ©e sur des machines dĂ©diĂ©es appelĂ©es perforatrices.

    La sociĂ©tĂ© IBM qui Ă©tait alors le leader mondial de l’informatique a produit au fil de ces annĂ©es diffĂ©rents modèles de perforatrice. Celle qui nous intĂ©resse est l’IBM 029, sortie en 1964 pour accompagner le lancement de l’IBM S/360, sĂ©rie d’ordinateurs qui rencontra un Ă©norme succès pour l’Ă©poque.

    Aconit dispose dans sa collection de plusieurs exemplaires de l’IBM 029. La machine Ă©tait disponible en 9 modèles diffĂ©rents. Le modèle choisi est « C22, Perforatrice InterprĂ©teur, 64 caractères, avec impression ».

Fonctionnement

    Les cartes sont chargĂ©es dans le bac de droite. Une pression sur la touche « Alim » permet d’alimenter une carte au poste de perforation. La saisie est directe, une pression sur une touche alpha-numĂ©rique provoquant la perforation d’une colonne avec le codage associĂ©.
    A la fin de la saisie, une pression sur la touche « Lib » libère la carte et la transfère au poste de lecture. Une nouvelle carte est positionnĂ©e au poste de perforation.
    Les cartes qui sortent du poste de lecture sont happĂ©es par une pince et sont empilĂ©es par dessous.

    La machine dispose Ă©galement d’un tambour de programme permettant d’effectuer les opĂ©rations suivante automatiquement :

  • Duplication
  • Saut de champs (Ă©quivalent Ă  une tabulation dans un tableur)
  • Alternance alphabĂ©tique/numĂ©rique
Clavier
Vue générale

Remise en Ă©tat

    La technologie de la machine est entièrement Ă©lectromĂ©canique. Un unique moteur entraĂ®ne tous les mĂ©canismes.
On peut ventiler les composants Ă©lectriques en trois catĂ©gories :

  • Les contacts mĂ©caniques sont actionnĂ©s soit manuellement par l’utilisateur, soit par le mĂ©canisme selon la position des arbres d’entraĂ®nement. Ils jouent le rĂ´le de capteurs.
  • Les Ă©lectroaimants (« Magnet » en anglais), enclenchent des embrayages ou bloquent des mĂ©canismes. Ils jouent le rĂ´le d’actionneurs.
  • Les relais, une fois reliĂ©s entre eux et aux deux autres catĂ©gories de composants constituent la logique de contrĂ´le. Il permettent de contrĂ´ler l’Ă©lectroaimant Ă  activer selon l’Ă©tat des contacts.
Un relais IBM
Contact d’alimentation en carte
Logique de controle en relais

    La perforatrice ne fonctionnait pas lorsque nous l’avons prise en main. Elle ne rĂ©pondait Ă  aucune commande du clavier et le « Escape Magnet » produisait une vibration anormale. Après analyse, en Ă©tudiant le schĂ©ma Ă©lectrique, nous avons dĂ©duit qu’il y avait un pont Ă©lectrique qui n’avait pas sa place entre deux parties du circuit. Le coupable a Ă©tĂ© confondu ! Il s’agissait du relais « Card Lever » dĂ©fectueux dont deux contacts, censĂ©ment indĂ©pendants, Ă©taient reliĂ©s. La machine est revenue Ă  la vie en remplaçant ce relais.

    Nous avons rĂ©alisĂ© bien d’autres ajustements. Les contacts Ă©lectriques, soumis aux "intempĂ©ries" depuis 50 ans Ă©taient oxydĂ©s et le courant ne passait plus très bien. Nous avons fait un large usage de papier de verre très fin et de nettoyant contact pour les rĂ©tablir.

Liste des contacts traitĂ©s :

  • Card Feed
  • Circuit Breaker
  • Print Sense
  • Program Cam Contact
  • Interposer Bail Contacts
  • Latch Contacts
Contact de poinçonnage
"Latch contact" du clavier

    Enfin nous avons tentĂ© d’amĂ©liorer la qualitĂ© d’impression en ajoutant un peu d’huile dans les aiguilles de la matrice mais nous n’avons pas rĂ©ussi Ă  dĂ©monter complètement le bloc d’impression. Nous avons prĂ©fĂ©rĂ© sursoir plutĂ´t que de risquer de le dĂ©tĂ©riorer. Il faut dire aussi que nous avons des rubans encreur neufs, mais ils sont dans leur emballage depuis plusieurs dizaines d’annĂ©es et ont eu le temps de sĂ©cher : un autre chantier !

Matrice de la tĂŞte d’impression
Plaque d’encodage de la tĂŞte d’impression
Travail en cours

Boitier de contrĂ´le

    Pour connecter la perforatrice au monde moderne, nous avons construit un boĂ®tier d’interface qui se connecte d’une part Ă  la machine en diffĂ©rents points et d’autre part en USB Ă  un ordinateur.
    Le boĂ®tier utilise diffĂ©rents composants. Pour la partie logique, un microcontrĂ´leur Arduino contient un petit programme qui dit quel circuit de la machine actionner selon la fonction choisie.
Pour la partie contrĂ´le de puissance (la perforatrice fonctionnant en 48v Continu et l’Arduino en 5v) un ensemble de relais fait un shuntage entre deux points du circuit de la machine.
Pour la connectivitĂ© USB, un simple convertisseur USB Serial <—> UART est utilisĂ©.

Carte de relais du boitier d’interface
Vue interieure du boitier de contrĂ´le

    Les circuits contrĂ´lĂ©s sont les « Interposer Magnet » qui sĂ©lectionnent quelle ligne poinçonner, le « Punch Clutch Magnet » qui dĂ©clenche le cycle de poinçonnage, le « Release Relay » qui Ă©jecte la carte une fois que le poinçonnage de de toute les colonnes dĂ©sirĂ©es a Ă©tĂ© fait et la « Multipunch Keystem », touche du clavier permettant de poinçonner des lignes de façon arbitraire sans utiliser le codage Alpha-numĂ©rique en vigueur.

    Ă‰galement, le boĂ®tier est reliĂ© au circuit de lecture des cartes par un habile dĂ©tournement du circuit original. Quand la fonction de reproduction n’est pas utilisĂ©e par l’IBM 29, cette portion du circuit n’est pas alimentĂ© en 48v (tension nominale). Les relais DUP1,2 et 3 sont inactifs. On l’alimente alors en 5v pour le relier directement Ă  l’Arduino. Le circuit est ensuite dĂ©connectĂ© de l’Arduino lorsque la fonction de reproduction est Ă  nouveau utilisĂ©e, les relais DUP1,2 et 3 sont cette fois actifs (heureusement, sinon ça pourrait faire des Ă©tincelles !).

    Pour les finitions, nous avons installĂ© une prise de courant directement Ă  l’intĂ©rieur de la machine pour brancher l’alimentation du boitier de contrĂ´le ainsi que celle du PC auquel le boitier est branchĂ©.
Un trou est percĂ© sur le cotĂ© du clavier pour faire sortir la prise USB sur l’extĂ©rieur avec un cordon pour la relier au boitier.

DĂ©rivation de la prise de courant interne
Mise en place du boitier
Le boitier est relié à la machine

Et voilĂ  le travail !

Produit final !

En détail

Liste du matĂ©riel :

  • BoĂ®tier d’Ă©lectricitĂ©
  • Arduino MEGA
  • Des fils de toutes les couleurs
  • Ftdi USB/UART
  • Diodes
  • Connecteur d’alimentation 12v mâle et femelle pour alimentation gĂ©nĂ©rale + alim arduino
  • Resistance 10K pour pull-down
  • 2x Connecteur DB-25 mâle et femelle
  • Shield de prototypage pour arduino
  • Plaque Ă  trou pour support de diodes
  • Carte de relais x16
  • Barrette de Connecteur Ă  pas standard 2,54 mm
  • Câble mini USB mâle/ USB mâle
  • Adaptateur mini USB femelle / USB Femelle (rĂ©cupĂ©rĂ© dans une imprimante)
  • Prise Ă©lectrique + câble d’alimentation
  • Transfo 220v AC -> 12v DC
Liste des connexion pour la fonction Punch
Fonction sur la machineRepère de la connexionNo du pin sur la prise DB-25No du relais utiliséNo de la pin Arduino
Punch 12 A06B 12 12 25 out
Punch 11 A06C 11 11 24 out
Punch 0 A06D 10 10 23 out
Punch 1 A06E 9 1 22 out
Punch 2 A06F 8 2 52 out
Punch 3 A06G 7 3 53 out
Punch 4 A06H 6 4 50 out
Punch 5 A06J 5 5 51 out
Punch 6 A06K 4 6 48 out
Punch 7 A06L 3 7 49 out
Punch 8 A06M 2 8 46 out
Punch 9 A06N 1 9 47 out
Punch Space A06A 13 13 26 out
Punch Commun A03B 15 (1->13) N/A
Vcc 48V A08E 20 14 N/A
Masse A03R 24 Diodes anti-arc N/A
Multipunch Keystem (in) A03L 18 15 28 out
Multipunch Keystem (out) A03M 19 15
Card Registered (in) N/A 16 N/A 5V
Card Registered (out) N/A 17 N/A 44 in
Cable check (in) N/A 23 N/A 42 out
Cable check (out) N/A 25 N/A 43 in
Punch Clutch A06R 21 16 29 out
Release A02R 14 14 27 out
Liste des connexions pour la fonction Read
Fonction sur la machineContact de relais utiliséNo du pin sur la prise DB-25No de la pin Arduino
Sense 12 DUP3 N/C 1 1 2 in
Sense 11 DUP3 N/C 2 2 3 in
Sense 0 DUP3 N/C 3 3 4 in
Sense 1 DUP3 N/C 4 4 5 in
Sense 2 DUP3 N/C 5 5 6 in
Sense 3 DUP3 N/C 6 6 7 in
Sense 4 DUP3 N/C 7 7 8 in
Sense 5 DUP3 N/C 8 8 9 in
Sense 6 DUP3 N/C 9 9 10 in
Sense 7 DUP3 N/C 10 10 11 in
Sense 8 DUP3 N/C 11 11 12 in
Sense 9 DUP3 N/C 12 12 13 in
Sense Common DUP1 N/C 5 13 5v
Cable Check (in) N/A 19 36 out
Cable Check (out) N/A 21 39 in
Liste des connexions entre le FTDI et l’arduino
Pin du FTDI (uart/rs232)No de la pin Arduino
Masse Masse
Vcc 5V
DTR N/A
Rx 16 Tx
Tx 17 Rx
CTS 35 RTS
RTS 32 CTS
Travaux menés entre Juin et Décembre 2018 par Antoine Hébert et Nicolas Arnaise.

Ils sont basĂ©s sur le projet de Carl Claunch : Github,DĂ©mo

Documentations :
Reference Manual
Field Engineering Maintenance Manual
Field Engineering Theory Of Operation
Illustrated Part Catalog
IBM Wire Relays

Liens RecommandĂ©s :
Fiche de la machine dans la base de donnée
Repairing a 1960s-era IBM keypunch par Ken Shirrif
Punched Card Typography
Punched Card Typography, Part 2
IBM 029 Card Punch Restoration par Marc Verdiell

Première publication :
Mise en ligne le mercredi 30 janvier 2019

Article écrit par :
Antoine HĂ©bert



Haut de page | Accueil | Plan du site | Mentions légales | Administration ?