[MSX] interface SVI-2017

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

[MSX] interface SVI-2017

Message par Patrick »

Je vous présente un nouveau projet de recréation de l'interface SVI-2000C qui permet de piloter le bras robot Robotarm.
Le pilotage de ce robot avait été étudié par 6502man dans ce sujet [THOMSON] comment s'amuser avec son bras .....
Un projet de recréation de cette interface a été également initié sur le forum MSX Village mais apparemment, le stade de la récupération de la schématique à partir d'une interface existante n'a pas été dépassé.

J'ai récemment fait l'acquisition d'un bras Robotarm mais sans interface.
Je souhaite pouvoir l'utiliser à partir d'un ordinateur et l'interface pour MSX semble être la solution de référence, notamment avec le langage ROGO.
Il existe une interface pour C64, mais je n'ai pas trouvé beaucoup de documentation.

Les améliorations apportées à l'interface initiale sont :
  • - sélection de la version de la ROM : MSX ou MSX 2,
    - inhibition de la ROM pour programmation directe en PIO.
Je vous invite à consulter le schéma et à le commenter.

En particulier, je me demande pourquoi la broche 9 des connecteurs DB9, reliée au +3V du robot est relié à la masse de la carte d'interface (à part une erreur d'interprétation du schéma initial) : le court-circuit me semble inévitable, non ?

De même, pour faire fonctionner le moteur dans un sens ou dans l'autre, on alimente le moteur en + ou - 3V. C'est effectivement réalisé en reliant la broche adéquate du connecteur à la masse, via un transistor. Le transistor ferme le circuit quand un courant est présent sur sa base. Jusqu'ici, tout va bien pour moi. Par contre, un électronicien pourrait-il m'expliquer pourquoi dans le cas du -3V, la base est activée directement via un transistor 330 Ω et dans le cas du +3V, la base est activée via un inverseur à collecteur ouvert, une résistance de 8,2 KΩ et le +12V. J'avoue que là, une explication serait la bienvenue.

Voici un aperçu 3D de la carte SVI-2017 :
Image

Merci de votre aide.
Patrick
Avatar de l’utilisateur
6502man
Messages : 12286
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [MSX] interface SVI-2017

Message par 6502man »

Belle cartouche :D
Par contre dédié uniquement aux MSX, c'est dommage :roll:

Il y a 2 ans j'avais fait un PCB pour contrôler les RobotArm par port Centronics :
ROBOTARM INTERFACE LPT
Ce qui permet de le contrôler sur n'importe quelle machine ayant un port Centronics.
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.
Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

Re: [MSX] interface SVI-2017

Message par Patrick »

Oui, justement j'ai lu attentivement le sujet et j'en parle en introduction.
Ce qui m'intéresse, c'est d'exploiter la ROM originale avec ROGO.
Patrick
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: [MSX] interface SVI-2017

Message par Notator »

Patrick a écrit : De même, pour faire fonctionner le moteur dans un sens ou dans l'autre, on alimente le moteur en + ou - 3V. C'est effectivement réalisé en reliant la broche adéquate du connecteur à la masse, via un transistor. Le transistor ferme le circuit quand un courant est présent sur sa base. Jusqu'ici, tout va bien pour moi. Par contre, un électronicien pourrait-il m'expliquer pourquoi dans le cas du -3V, la base est activée directement via un transistor 330 Ω et dans le cas du +3V, la base est activée via un inverseur à collecteur ouvert, une résistance de 8,2 KΩ et le +12V.
Le 74LS07 n'est pas un inverseur à collecteur ouvert, mais un buffer/driver (à collecteur ouvert), et il n'inverse pas.
Les transistors fonctionnent en commutation, ils font office d'interrupteurs, comme tu l'as remarqué.
La différence de circuit est nécessitée selon le mode dans lequel ils sont montés.
Les lignes négatives sortent directement (via une résistance de 330Ω) sur des transistors montés en collecteur commun, ils peuvent fonctionner ainsi sans problème.
Par contre, les lignes positives aboutissent sur des transistors montés en émetteur commun ; pour être correctement polarisés et rendus conducteurs, apparaît la nécessité d'ajouter un 74LS07, parce que sinon, ils resteraient bloqués. Sans la présence du buffer, son collecteur serait à 3v et sa base à 5v, et la base doit être polarisée avec une tension plus petite que celle du collecteur pour pouvoir conduire ; là, le montage avec le buffer à collecteur ouvert et la résistance de 8,2 kΩ permet de diminuer 'artificiellement' la tension de la base pour que le transistor puisse conduire quand le 74LS138 lui envoie un niveau 1.
L'association du buffer à collecteur ouvert (j'insiste, c'est sa qualité d'être à collecteur ouvert qui est utilisée) avec la résistance de 8,2 kΩ fait une sorte de pont diviseur, pour produire la bonne tension de base quand nécessaire.
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

Re: [MSX] interface SVI-2017

Message par Patrick »

Merci Notator pour ta réponse et ton explication.
Effectivement, je me suis trompé, j'ai oublié le non devant inverseur.
Donc, tu confirmes que le schéma est correct.
Bien que la notion de collecteur ouvert soit carrément abstraite pour moi, je comprends mieux maintenant le principe du montage.

Par contre, as-tu une idée en ce qui concerne la broche 9 des connecteurs (-3V) reliée à la masse de la carte ?
J'ai posé la question sur le forum MSX Village (page 6) et apparemment sans la broche 9 la moitié des mouvements ne fonctionnent plus.

Une autre question : il est dangereux de commander en même temps le mouvement d'un moteur dans les deux sens. Par exemple A2- et A2+. La destruction du moteur correspondant a été évoquée. D'après moi, le schéma n'assure aucune protection au niveau électronique : les deux transistors T1 et T2 peuvent être activés, sans interférer. De ce fait, la protection doit-être logicielle. Peux-tu confirmer ? Merci de ton aide.
Patrick
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: [MSX] interface SVI-2017

Message par Notator »

Patrick a écrit : Bien que la notion de collecteur ouvert soit carrément abstraite pour moi, je comprends mieux maintenant le principe du montage.
Si tu veux, une sortie logique classique fournit en TTL : 0v ou 5v, uniquement.
En collecteur ouvert, la sortie donne (schématiquement) un interrupteur non câblé ; selon ce qu'on met autour, cette particularité permet de pouvoir commuter une autre tension que du 5v.
Par contre, as-tu une idée en ce qui concerne la broche 9 des connecteurs (-3V) reliée à la masse de la carte ?
Non, je ne peux pas répondre à cette question, car j'ignore comment les moteurs sont câblés sur les prises DB9 ; il faudrait la suite du schéma...
Une autre question : il est dangereux de commander en même temps le mouvement d'un moteur dans les deux sens. Par exemple A2- et A2+. La destruction du moteur correspondant a été évoquée. D'après moi, le schéma n'assure aucune protection au niveau électronique : les deux transistors T1 et T2 peuvent être activés, sans interférer. De ce fait, la protection doit-être logicielle.
Ce risque est peu probable. S'il est vrai que dans l'absolu T1 et T2 pourraient être commandés en même temps, je suppose que le logiciel de commande fait en sorte que ça n'arrive jamais ; ou alors, c'est qu'il y a une erreur de programmation. Mais comme les utilisateurs n'ont pas rapporté ce genre de problème, c'est que c'est OK.
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: [MSX] interface SVI-2017

Message par Notator »

Patrick a écrit :Par contre, as-tu une idée en ce qui concerne la broche 9 des connecteurs (-3V) reliée à la masse de la carte ?
En examinant un peu mieux le schéma, je pense que c'est une erreur ; cette broche 9 doit être reliée au -3v, et surtout pas à la masse.
Ce sont les transistors qui ramènent des masses ou pas sur les moteurs, selon qu'ils soient saturés (conducteurs) ou pas...

Un schéma de câblage des moteurs permettrait de confirmer cela.
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

Re: [MSX] interface SVI-2017

Message par Patrick »

Désolé Notator, je croyais t'avoir répondu en te fournissant des informations supplémentaires.
Le schéma de la carte électronique du robot a été réalisé par Jipe de MSX Village.
Par ailleurs, le fonctionnement est décrit dans un document plus ancien de moins bonne qualité.
Patrick
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: [MSX] interface SVI-2017

Message par Notator »

D'accord, merci pour le complément d'info.
Je confirme ce que j'ai écrit plus haut, la broche 9 ne doit pas être mise à la masse, puisque c'est le -3v.

D'ailleurs, il n'y a même pas besoin de câbler le +3 et le -3v sur J1 et J2 de la base robot, ni sur la carte SVI (sur les connecteurs J2 et J3) , car celle-ci ne les utilise pas (par contre, la masse sur les broches 8 est absolument nécessaire).
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

Re: [MSX] interface SVI-2017

Message par Patrick »

Merci Notator. Je pars donc sur mon schéma sans cabler la broche 9.
L'intérêt d'avoir le -3V et le +3V sur les connecteurs est peut-être d'alimenter le robot via la carte d'interface. Les piles ce n'est pas genial comme source d'alimentation pour un dispositif statique.
Quel est le mécanisme le plus simple pour produire du -3V et du +3V à partir des tensions disponible, +5V, +12V et -12V ?
Cela pourrait être une amélioration significative de la conception initiale.
Patrick
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: [MSX] interface SVI-2017

Message par Notator »

Utiliser les tensions disponibles pour fabriquer du +/- 3v, c'est risqué, les moteurs pourraient trop tirer de courant.

Il faudrait mesurer avec un ampèremètre (ou un multimètre) combien consomme de courant un moteur alimenté, puis multiplier par le nombre de moteurs (s'ils sont tous identiques), et se donner 20% en plus de marge, pour avoir le courant total nécessaire.

Après, il y a des kits alim sympas, ou des modules tous faits...
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Jipe
Messages : 1
Inscription : 26 juil. 2017 19:00

Re: [MSX] interface SVI-2017

Message par Jipe »

la présence du +3V et -3V sur la DB9 est prévue pour piloter le robot par 2 manettes classiques
il faut 4 piles LR20 pour alimenter les moteurs donc impossible a de reprendre sur l'alim du MSX qui sera vite a genoux
Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

Re: [MSX] interface SVI-2017

Message par Patrick »

Bienvenue sur le forum Jipe.
C'est en effet un paramètre à prendre en compte.
Patrick
Patrick
Messages : 2019
Inscription : 16 mai 2009 09:30
Localisation : Clermont-Ferrand

Re: [MSX] interface SVI-2017

Message par Patrick »

Comme pour le SC-3000, j'ai préparé une carte d'extension pour faciliter la mise au point du montage, la carte MI-4010 :
Image

J'ai commandé les PCBs aujourd'hui. En 2 x 25 les embases semblent plus faciles à trouver. Une commande chez Reichelt fin de semaine prochaine sera suffisante pour tout avoir à réception des PCBs.
Patrick
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: [MSX] interface SVI-2017

Message par Notator »

Chacun fait comme il veut, mais personnellement, je déconseille de commander (ou fabriquer) le circuit imprimé tant qu'on ne dispose pas de tous les composants.

Bon, là il n'y a pas grand-chose, mais supposons que les connecteurs ne soient plus fabriqués, ou que les dimensions soient différentes (je crois que ça t'es déjà arrivé :wink: ).

Perso, il m'est arrivé plus d'une fois de devoir reprendre, modifier le CI parce que des composants reçus n'avaient pas les dimensions prévues, ou qu'un circuit intégré n'étant plus fabriqué, il me fallait passer à une autre solution.

Donc, réunir d'abord tous les composants, et passer ensuite au circuit imprimé. :)
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Répondre