|

L’avantage de cette interface est de comporter un faible nombre de
composants et d’incorporer toutes les options existantes à ce jour pour
fonctionner avec le logiciel CNC@NET.
- Timer 2000 ou 4000 Hz au choix.
- Contrôle de 4 moteurs pap à pas unipolaire, max. 1A / 50Volts, câblage
compatible avec les interfaces GP98 et BB2000.
- Interface incorporant des zeners qui augmente la vitesse et le couple des
moteurs.
- Avance des moteurs en mode pas entier ou demi pas, sélectionnable lors de
la mise sous tension (Boot) par manipulation des Boutons Poussoirs.
- Contrôle de la chauffe du fil de découpe par système PICACHOF.
- Interrupteur d’arrêt d’urgence des moteurs pap à pas.
- Programmation in situ du microcontrôleur PIC16F874.
Nécessite :
- 1 PIC16F874-20IP pour le contrôle des moteur pas à pas et de la chauffe
- Le programme pour la gestion de l’ensemble MM2001LVP.HEX
- Le programme exécutable MM2001PROG.exe pour la programmation
in-situ.
Téléchargement du dossier complet : mm2001.zip
(environ 2,2 Mo)
Modification pour laversion 0.62
(environ 144ko)
| Version 2 pour la mm2001 ....
le 25 Octobre 2002
Dans le fichier à programmer dans le pic : MM2001-V2.HEX
* rajout d'une signalisation sonore pour connaître la configuration de la fréquence timer.
A la mise sous tension (ou lors d'un reset), le buzzer :
- émet UN bip ==> fréquence 2000 Hz
- émet DEUX bips ==> fréquence 4000 Hz.
* Modification de la mémorisation :
La mémorisation de la chauffe courante et du max de chauffe est faite (et est conservée d'une session à l'autre) même si l'interface n'est pas connectée au PC, ce qui n'était pas le cas dans la version précédente.
Fichier MM2001LVP.EXE
C'est l'utilitaire de programmation in-situ pour les pic 16F8xx.
Cette version est la version 2.0.
Pas de grand changement sauf que on peut programmer des pic dont la taille EEprom va jusqu'à 8kO (au lieu de la limitation à 4kO).
PS : c'est la version qui a été développée pour Datalog. |
Version 5.1 pour la mm2001 ....
le 10 Juin 2007Dans le fichier à programmer dans le pic :
MM2001-V51.HEX
Ce firmware apporte les
innovations suivantes :
-
Une
fréquence de fonctionnement de 10 kHz en plus des 2000 et 4000 Hz
existants
-
La
modification des bips pour la signalisation de la configuration.
-
Le support
de la nouvelle interface USB qui est fonctionnelle et en phase de
finalisation.
Aucune modification hard de la
MM2001 n'est nécessaire.
La programmation in situ est
possible avec Windows 95, 98 ou Me en utilisant le programme
MM2001LVP.EXE .
Les autres fonctionnalités sont
inchangées : mémorisation de la chauffe et utilisation des boutons poussoirs
BP+, BP- et Reset pour les réglages et la programmation des modes de
fonctionnement.
L'augmentaion
de fréquence :
Le 10 kHz permet un
fonctionnement plus doux et un réglage plus fin de l'accélération des
moteurs, récemment mise en place dans gmfc.
Le réglage du temps entre pas peut maintenant se faire par incrément de
100µs.
Pour utiliser cette fréquence, il faut indiquer la valeur de 100µs dans la
tempo du timer de la configuration de la table,
Les précédentes valeurs de 250 µs pour 4000 Hz et 500 µs pour 2000 Hz
restent accessibles.
Les Bips :
Il y a une nouvelle indication
qui est le mode pas entier / demi-pas, bien pratique pour savoir ou on se
trouve.
Les séquences de bips sont : de 1 à 3 bip pour la fréquence suivis de 1 ou 2
bips pour le mode pas entier ou demi-pas.
La première séquence de bips indique la fréquence : 1 bip = 2 kHz, 2 bips =
4 kHz, 3 bips = 10 kHz.
La seconde séquence indique le mode : 1 bip = pas entier, 2 bip = demi-pas.
Exemples :
bip bip / bip : 4kHz, pas entier
bip / bip bip : 2 kHz, demi-pas
bip bip bip / bip bip : 10kHz, demi-pas
L'USB :
La nouvelle interface USB
fonctionne à cette fréquence de 10 kHz et nécessitera l'utilisation de ce
firmware optimisé.
Ceux qui sont sous XP et qui n'ont pas la
possibilité de programmer le 16F874 ou 877 via le port // ne sont pas
oubliés, l'interface USB leur permettra d'effectuer la programmation in situ
du PIC.
Attention : il est bon de rappeler que lors de la programmation des paramètres de vitesse et de
mode de fonctionnement des moteurs, il faut bien relâcher le bouton reset avant les autres
boutons de fonction.
V5. vers V5.1
Correction d'un bug et améliorations optimisant au maximum les temps de
traitement. modification de Ghislain
Capelle |
| Le
système MM2001 : (Même principe que le système PICACHOF) |
La sortie RE1 (S_CHAUFFE) présente un signal rectangulaire
de fréquence 100 fois plus faible que RE0 (TIMER) soit 20 ou 40 Hz selon la
fréquence choisie pour le TIMER (2000 ou 4000 Hz.
Le rapport cyclique sur RE1 est réglable entre 1% et 99%. C'est ce
rapport cyclique variable qui via l'optocoupleur et le MOSFET, va faire
chauffer plus ou moins le fil de découpe.
L'inter Manuel / PC sert à sélectionner le mode de chauffe
manuelle ou PC. Si le mode PC est choisi, l'entrée RB1 reçoit le signal de
chauffe issu du PC. Ce signal est remis en forme et régénéré sur la
sortie RE1.
Un filtrage est effectué pour limiter la valeur de chauffe, si la
chauffe issue du PC est supérieure à la valeur max. autorisée. Si la
chauffe par PC est bloquée à un, la chauffe envoyée au mosfet est
coupée.(mais pas la valeur fournie en retour au PC).
Un système de signalisation buzzer (ou led + résistance 270 ohms) peut
être branché sur le connecteur J9 pour informer l’utilisateur du
dépassement de la valeur de chauffe maxi autorisée.
Au premier bootstrap, le pourcentage de chauffe est de 99%. Il est donc
conseillé de ne pas brancher le fil lors du premier essai ! La valeur
peut-être diminuée (resp.augmentée ) en appuyant sur les boutons MOINS
(resp. PLUS ) en cours de fonctionnement.
Par défaut la chauffe maxi est limitée à 99%, on peut mémoriser une
valeur maxi de chauffe plus faible après avoir réglé la chauffe jusqu'à
la valeur max. souhaitée, en appuyant sur les 2 BP simultanément.
On peut revenir à la valeur maxi de 98% en tenant le BP PLUS enfoncé au
bootstrap (éteindre l'alim. de l'interface, puis rallumer ou appuyer sur le
BP RESET) l'inter étant configuré en position chauffe manuelle.
La dernière valeur de chauffe manuelle utilisée est, bien sûr,
mémorisée pour être sélectionnée à la prochaine mise sous tension ...
Enfin, au boot, si le BP MOINS est appuyé (en conf manuel), la
fréquence TIMER passe de 2000Hz à 4000Hz et vice versa et est mémorisée
ce qui donne dans CNC la période Timer de 0.5s ou 0.25 s.
NOTE : La tension d’alimentation des moteurs appliquée sur le
bornier à vis J1 peut être différente (sans dépasser 50V) de la tension
d’alimentation de l’interface appliquée sur le bornier à vis J6 (15 V
à 18 V).
Le régulateur 12V (7812) est vivement conseillé
|
MM2001 :
Manipulation des boutons BP+ et BP- |
Action des boutons en fonctionnement normal (après le
démarrage)
Inter " Manuel / PC " en mode manuel.
BP+ BP-
OFF OFF => aucune action.
ON OFF => augmente le rapport de chauffe
OFF ON => diminue le rapport de chauffe
ON ON => Mémorise en Eeprom Chauffe_max = rapport actuel.
Action des boutons au moment du boot (Mise sous tension ou
action sur le BP Reset) :
Inter " Manuel / PC " en mode manuel.
BP+ BP-
OFF OFF => aucune action.
ON OFF => réinitialise le max de chauffe : max = 98%
OFF ON => Change la fréquence timer : 2000 ç è 4000Hz (2000 par
défaut)
ON ON => Change le mode des moteurs (pas entiers ç è ½ pas) (pas entier
par défaut).
| Note
1 : Résistances R1 à R8 |
| Ces résistances servent (entre autre) à adapter la
tension d’alimentation des moteurs (inférieure à 50 V) à la tension
nominale des moteurs utilisés.
Données à connaître :
-
Valim = tension continu d’alimentation des
moteurs
-
Vn = tension nominale d’alimentation des
moteurs (marquée sur le moteur)
-
In = intensité nominale consommée par une
phase du moteur (marquée ou calculée)
Si In n’est pas indiquée, mesurer à l’ohmmètre la résistance (Rphase)
d’une phase du moteur. Puis calculer In en appliquant : In = Vn /
Rphase.
La détermination des valeurs de résistances (R1 à R8) à mettre en
série devient :
Valim – Vn
R = ------------------
2 x In à 2 phases alimentées simultanément
Détermination de la puissance nominale de ces résistances :
(Valim – Vn )2
P = --------------------- en Watts (W)
R
Exemple : Moteur 12V, 40 ohms/phase, Valim = 18 V
In = 12/40 = 0,3 A
R = (18-12)/(2*0.3) = 10 ohms
Puissance : P = (18 – 12)2/10 = 3,6 W à valeur
standard 5 (ou 7) Watts
|
| Note 2 : Choix
des diodes zéners |
La (les) diode zéner en question est là pour
améliorer la commutation des phases du moteur, c'est à dire (en gros !)
pour diminuer le temps qu'il faut, au
courant dans la phase, pour passer de I nominal à 0 lors du bloquage du
transistor de commande (sortie des ULN2803 ou 2804).
Et donc permettre au moteur de changer de pas plus rapidement ... d'où
gain de vitesse.
Théoriquement, plus la tension de zéner est importante, plus on
diminue le temps de commutation, donc meilleur c'est ... Mais ATTENTION
...!
C'est vrai que cette tension de zéner (au moment de la commutation,
soit quelques pouième de µs...) vient s'ajouter à la tension
d'alimentation du
moteur et que le transistor doit supporter l'ensemble soit Vce = Vz +
Valim.
Si cette tension (Vce) devient supérieure à la tension maxi que peut
supporter le transistor de commande (ULN2803), celui-ci "rend
l'âme" et
passe très rapidement de la vie heureuse dans l'IF CNC au trépas le plus
définitif ...!
Pour les circuits ULN2803, ULN2804 (UCN5804 également) les valeurs de
tensions maximales sont :
* 35 V maxi en régime permanent.
* 50 V en impulsion (cas de la commutation qui nous intéresse) pour un
variation de courant de I=1,8A à 0 et pour une inductance (L) du moteur
de 3 µH (mais cette dernière valeur n'est pas forcément connue pour des
moteurs de récupération)
Donc, exemple :
pour un moteur alimenté en 12 V on peut THÉORIQUEMENT monter une
zéner de 50 - 12 = 38 V, mais si l'on ne veut pas tenter le diable on se
contentera sagement de Vz = 40-12= 28V et là (en principe) le transistor
de sortie ne risque rien.
Pour terminer …, comment choisir ces diodes zéner ?
La solution la plus raisonnable est de choisir une tension de zéner
proche (légèrement supérieure) de la tension nominale du moteur,
soit :
* Unominal moteur = 5 V à tension de
zéner 6 à 8 Volts
* Unominal moteur = 12 V à tension de
zéner 12 à 15 Volts ,c’est ce que j’utilise personnellement :
moteurs 12 V è zéners 15 V (BZX85C15V)
Puissance nominale des diodes zéner : 1W ou 1,3W (BZX85CxxV) non
critique pour nos puissances de moteurs.
Dossier de câblage :au format word
.doc
| Modification
à effectuer sur la carte MM2001 version 0.62 |
| Pour éviter des problèmes apparus sur certaines
cartes réalisées, la modification (simple !) suivante est
préconisée.

Rajouter une résistance de 100 Ohms entre le point commun de l’interrupteur
" Chauffe ON/OFF " et la broche 11 du connecteur
DB25.
Il faut remplacer le strap repéré ci-dessous par une
résistance de 100 Ohms.

|
|
|
Dossier réaliser par Michel Maury. S'il y a des problèmes (j'espère pas trop ...!!!) :
maury.michel@wanadoo.fr.
Je tiens à remercier :
Alain GLEIZES (aéropic) auteur de Picachof d'où est partie l'aventure MM2001 (Intégrer le système Picachof dans un seul PIC),
Gérard YVRAUT pour son aide dans la mise au point du logiciel du PIC (Gestion chauffe et moteurs)... c'était pas gagné d'avance...
Jean-François DELHOVE pour les tests de la première version et ses idées de modification
(buzzer).
Sébastien JACQUEMARD qui m'a gentiment envoyé son ébauche du logiciel de programmation in-situ des PICs de la Picachof, j'ai ainsi gagné beaucoup de temps dans le développement du logiciel de programmation..
Gérard PRAT, pour sa patience dans les tests (matériel et logiciel de programmation) qui ont abouti à la version finale (il a vu tout ce qui ne marchait pas ... s'il y a encore des problèmes, ... c'est de ta faute, Gérard ... tu n'as pas tout vu !!!!)
Merci encore à tous, c'était une aventure passionnante ... du moins pour moi !
|
|