La arduino va te sortir des suites de 7 bits qui correspondront aux perforations. Si tu veux passer ça en ascii, tu peux le faire direct... Mais ce ne sera que de la mise en forme ! Comme souligné par mes collègues, on ne sais pas si c'est de l'ascii ou autre chose...
Ouii j'écris le mot binaire de chaque rangée en attribuant les 1 et les 0 selon la présence ou abscence du trou aprés à l'aide de la table ASCII je trouve le caractère corespondant
je sais le faire en utilisant la table ascii mais la bande contient beaucoup de rangée de perforations et de plus ej n'ai pas une seule bande il ya environ 20 bandes différentes donc je crois que le faire ça va prendre des moisC'est vraiment pas clair.
Convertir du binaire en ASCII, fait pas exagérer, je n'arrive pas à croire sérieusement que vous ne savez pas le faire.
Par contre, comme déjà dit, est on sur que c'st de l'ASCII ? ca me semble très improbable car l'ASCII c'est du 7 bits et sur des bandes perforées c'est habituellement de l'EBCDIC qui est utilisé.![]()
En contactant le fournisseur de ces bandes il m'a affirmé que c'est du code ASCII.
Puisque tu en es au travail de fourmi, est-ce que dans ton environnement il y a de quoi bricoler ? et construire carrément un lecteur optique dans le genre de celui dont j'avais parlé post #77 p 6.
Après recherche sur le net, il semblerait qu'il s'agisse d'une copie d'un truc qui se vendait dans les années 70 : l'OP-80A.
Une recherche dans Google donne des liens pour en voir la fabrication. Ça sort en // et si tu n'as pas de port //, il faudrait sérialiser la sortie.
L'inconvénient, c'est que c'est manuel et que tu vas te retrouver avec des km de bande sur la moquette à moins de te servir de ton lecteur actuel comme enrouleur dérouleur.
Je pense qu'après tout le temps passé, c'est ce que je ferais.
Seuls les faucons volent. Les vrais restent au sol.
Oki je vais essayer de fabriquer un lecteurPuisque tu en es au travail de fourmi, est-ce que dans ton environnement il y a de quoi bricoler ? et construire carrément un lecteur optique dans le genre de celui dont j'avais parlé post #77 p 6.
Après recherche sur le net, il semblerait qu'il s'agisse d'une copie d'un truc qui se vendait dans les années 70 : l'OP-80A.
Une recherche dans Google donne des liens pour en voir la fabrication. Ça sort en // et si tu n'as pas de port //, il faudrait sérialiser la sortie.
L'inconvénient, c'est que c'est manuel et que tu vas te retrouver avec des km de bande sur la moquette à moins de te servir de ton lecteur actuel comme enrouleur dérouleur.
Je pense qu'après tout le temps passé, c'est ce que je ferais.![]()
L'ASCII sert à coder du texte lisible par un humain. Cela signifierait que la machine de wrapping interprète un programme écrit en clair (...voire dans un langage évolué ?).
J'ai regardé de plus près de la photo de la bande perforée jointe à ton post #78. Il apparaît que le huitième bit (situé tout en haut) correspond à la parité des sept bits de donnée situés au-dessous : le nombre total de (gros) trous est toujours pair.
Les données doivent dont être codées sur 7 bits + 1 bit de parité.
Partant de cette constatation, j'ai commencé à décoder à la main une séquence de quelques perforations visibles sur la photo. J'y ai trouvé des chiffres (0 à 9), des points (.), un signe moins (-) et un retour de ligne (0D=CR).
Dernière modification par PA5CAL ; 19/03/2014 à 11h14.
Voici les caractères correspondant au bout de bande de la photo (l'image a été retournée pour "coller" au sens de lecture). En haut les codes hexadéciaux (sans le bit de parité), et au dessous les caractères ASCII correspondants. On note qu'il y a un CR tous les 24 caractères.
![]()
Dernière modification par PA5CAL ; 19/03/2014 à 14h37.
Ouiii effectivement,le huitième bit (en haut) est un bit de parité.
Donc la bande perforée est codée avec de l'ascii,est ce que selon vous ces codes hexadécimaux peuvent correspondrent à des @ mémoires dont les variables sont stockées dans des mémoires EPROM se trouvant dans la machine ou bien ce sont directement ses données qu'on a retirées de la bande qui controlent les trois moteurs selon les axes (X,Y,Z)
Est-ce que le sens d'entraînement de la bande change les positions des bits ainsi que le bit de parité C-à-d LSB et le MSB changent de position???
Non, le sens de la bande change seulement l'ordre de la succession des caractères.
Seuls les faucons volent. Les vrais restent au sol.
Comme il s'agit des caractères ASCII, les codes doivent nécessairement être interprétés. Il ne peut s'agit directement d'adressage pour une opération de la machine.Donc la bande perforée est codée avec de l'ascii,est ce que selon vous ces codes hexadécimaux peuvent correspondrent à des @ mémoires dont les variables sont stockées dans des mémoires EPROM se trouvant dans la machine ou bien ce sont directement ses données qu'on a retirées de la bande qui controlent les trois moteurs selon les axes (X,Y,Z)
En revanche, il est possible que l'interprétation soit réalisée au travers d'une EPROM via son bus d'adresse, cette façon de faire permettant de réaliser un processeur rudimentaire à peu de frais.
La position des bits ne peut être changée par modification du sens de défilement de la bande.
Pour qu'il y ait changement, il faudrait que la bande soit retournée dans le lecteur (haut en bas, et inversement), auquel cas sur les sorties le signal SPKT (correspondant aux petits trous) échangerait sa place avec le quatrième bit de donnée. Les codes lus ne seraient plus pertinents, et près de la moitié des codes aurait une parité fausse.
Dernière modification par PA5CAL ; 19/03/2014 à 16h30.
Je ne m'étais pas aperçu qu'à la page 7 tu avais mis le schéma de la tête de lecture. Il ne devait pas encore être validé.
Tu as dessus, tous les éléments correspondant au lecteur dont je te parlais, donc il n'est pas nécessaire de le construire. Est-ce que ta machine peut lire une bande en autonome, sans être obligé de la relier aux moteurs ?
Seuls les faucons volent. Les vrais restent au sol.
Le nombre de pages dépend de la présentation choisie. Par exemple chez moi, on n'a pas encore dépassé la page 2.
Si tu fais référence aux schéma du post #97, je ne l'ai vu apparaître que tout-à-l'heure. Peut-être à cause d'un problème de validation tardive, en effet.
Donc je devrais prendre les données interprétées pour ensuite y commander les moteurs sinon la bande va me fournir des données non signifcatives.Est ce que je peux conencter les pins de data de l'EPROM et son R/W avec la carte ARDUINO et connecter les RX et TX de la carte ARDUINO avec mon pc pour voir ce qui est dans l'EPROME????Comme il s'agit des caractères ASCII, les codes doivent nécessairement être interprétés. Il ne peut s'agit directement d'adressage pour une opération de la machine.En revanche, il est possible que l'interprétation soit réalisée au travers d'une EPROM via son bus d'adresse, cette façon de faire permettant de réaliser un processeur rudimentaire à peu de frais.
Je ne savais pas pour la présentation.
C'est pareil pour moi, je l'ai vu il y a quelques instant et ça m'a étonné quand même de l'avoir loupé avant. Maintenant on ne le ratera plus, il est en double.
Pour piquer les données un zinbrec de ce genre devrait suffire :
DSCN2114_edited-1.jpg
DSCN2109_edited-2.jpg
Seuls les faucons volent. Les vrais restent au sol.
Je ne sais pas si les photos sont validées, mais il s'agit juste de construire une sorte de prolongateur DB25 mâle-DB25 femelle, dont les liaisons se fonts par les pistes d'une carte d'expérimentation. On repique les données sur les pistes de cette carte.
http://www.vansairforce.com/community/showthread.php?t=30993
Sinon, ça c'est plus cher :
http://www.amazon.ca/Data-Tap-RS-232.../dp/B00EA9YD8C
Dernière modification par f6exb ; 19/03/2014 à 17h59.
Seuls les faucons volent. Les vrais restent au sol.
Il faudrait en savoir plus sur le modèle de L'EPROM et sur la façon dont elle est connectée aux circuits environnant.Donc je devrais prendre les données interprétées pour ensuite y commander les moteurs sinon la bande va me fournir des données non signifcatives.Est ce que je peux conencter les pins de data de l'EPROM et son R/W avec la carte ARDUINO et connecter les RX et TX de la carte ARDUINO avec mon pc pour voir ce qui est dans l'EPROME????
En effet, utilisée directement, l'EPROM réalise un ensemble de fonctions de logique purement combinatoire (autrement dit, à un état d'entrée correspond un état de sortie prédéterminé unique). Or, il est fort probable que l'interprétation d'une suite de 24 caractères pour actionner la machine réclame plutôt des fonctions de logique séquentielle (où l'état de sortie dépend des états d'entrée présents et passés), et si l'EPROM est impliquée dans ces fonctions, alors son bus d'adresse doit recevoir d'autres signaux que ceux circulant dans le connecteur. Dès lors, la simple présentation des seuls bits provenant du lecteur de bande serait insuffisante pour lire tout le contenu de l'EPROM.
Si l'EPROM n'est pas soudée (i.e. si elle est montée sur un support), alors on peut envisager de lire la totalité de son contenu hors de la machine (un Arduino Mega est tout-à-fait adapté à ce type de tâche).
Dans le cas contraire, on peut toujours espionner les entrées et les sorties de l'EPROM au cours du fonctionnement pour tenter d'en déterminer les contenus intéressants (et là aussi, un Arduino Mega peut faire le travail).
Dernière modification par PA5CAL ; 19/03/2014 à 19h31.
Peux-tu lire la référence marquée sur l'EPROM ?
Ok je vais commencer la construction de ce prolongateur
Donc 4 eprom 2716 classiques de 2k * 8.
2 questions un peu hs :
- Comment comptes-tu réutiliser la saisie que tu feras ? En branchant le PC quelque part sur la machine à wrapper ?
- Est-ce que la machine fonctionne au rythme de la lecture de la bande ou est-ce que le contenu se charge en mémoire avant d'être exécuté ?
Dernière modification par f6exb ; 20/03/2014 à 08h45.
Seuls les faucons volent. Les vrais restent au sol.
Une 2716 ayant 11 entrées d'adressage (A0 à A10), il faudrait savoir à quoi sont connectées les entrées ne provenant pas du lecteur de bande. En fait, si tu pouvais trouver ou établir un schéma électronique du circuit de la carte (ou tout au moins la partie entourant l'EPROM) on aurait certainement une idée plus précise de la manière dont elle fonctionne, et comment récupérer toutes les informations nécessaires à ton projet.
![]()
Ouii, la machine fonctionne au rythme de lecture de la bande,effectivement le contenu se charge en mémoire avant d'être exécuté.
je compte relier les pins de Datas sortant de l'Eprom avec les pins de data de l'Arduino ainsi que connecter R/W de l'EPROM afin d'envoyer ces datas vers l'ordinateur
Les données sortant de la carte lecteur de bande via le port 25 pins vont directement vers une carte E/S N°4 qui les envoient vers une carte EPROM ensuite vers une carte unité centrale. cette dernière traduit les données en pas parce qu'il commande des moteurs pas à pas ensuite les données vont directement vers la carte Tool commande pour commander les moteurs.Voici un shémaUne 2716 ayant 11 entrées d'adressage (A0 à A10), il faudrait savoir à quoi sont connectées les entrées ne provenant pas du lecteur de bande. En fait, si tu pouvais trouver ou établir un schéma électronique du circuit de la carte (ou tout au moins la partie entourant l'EPROM) on aurait certainement une idée plus précise de la manière dont elle fonctionne, et comment récupérer toutes les informations nécessaires à ton projet.
La carte où les Eprom sont soudées contient les circuits suivants :
SN74LS32N,SN74LS240N,SN74LS241 N,SN74LS245,INS82LS05N,SN74LS0 8N,MSM6810p,KD248
Ma question a été mal comprise :Comment comptes-tu réutiliser la saisie que tu feras ? En branchant le PC quelque part sur la machine à wrapper ?
En supposant que tu arrives à transférer le contenu d'une bande sur un Arduino, un PC, ou autre, comment comptes-tu t'y prendre ensuite pour réutiliser la machine sans bande et faire jouer le programme initialement contenu sur cette bande. Où comptes-tu greffer ton ordinateur.
Seuls les faucons volent. Les vrais restent au sol.
Si j'arrive à transfèrer les données sur mon pc, je vais essayer de traduire ses données selon le pas ( c-à-d chaque pas de pédale correspond à un nombre de donnée qui va controler le moteur pas à pas )ensuite je vais créer une base de données pour les stocker et je les renvoyerais une autre fosi sur la carte Arduino poue qu'elle controle les trois moteurs selon les données stockées sur pcMa question a été mal comprise :
En supposant que tu arrives à transférer le contenu d'une bande sur un Arduino, un PC, ou autre, comment comptes-tu t'y prendre ensuite pour réutiliser la machine sans bande et faire jouer le programme initialement contenu sur cette bande. Où comptes-tu greffer ton ordinateur.