User Tools

Site Tools


cbus:cangc6-firmware-fr

Contrôleur de servos 4 Canaux mergCBUS CAN-GC6

SommaireMatérielsmergCBUS


Cette page documente la révision PRINCIPALE du firmware.


Firmware

Version Firmware: 1.a rev.: 305, résonateur: 8MHz, Rocrail: 3181+

Le firmware est basé sur le CAN-GC2.
Le mode Boot n'est pas supporté.

Copyrights

Caractéristiques

  • Toutes les variables et les évènements sont configurable. (FLiM)
  • Vitesse de servo.
  • Les commandes d'aiguillage sont traitées.
  • Les postions d'arrêt du servo sont rapportées. (compatible GCA136.)
  • Support "Début de Journée" support.
  • LED4 pour 1 ou plus de position de servo en attente.
  • Contrôle de relais. (GCA137, Tx 480 baud)
  • Traitement des capteurs de position d'aiguillage externes.
  • Sauvegarde de la position du servo à la mise hors tension.
  • Restauration de la position du servo et de l'état des relais.
  • Arrêt de l’impulsion du servo après atteinte de la position voulue + 2 secondes.
  • 1000 pas en largeur d'impulsion de 0,5 à 2,5 ms.
  • Vitesse maximum 20.
  • Vitesse séparée entre le déplacement gauche et droit.
  • Option de rebond.


Identifiants

Identifiant fabricant NMRA 70
Identifiant produit 6

HEX

Sources

Outils de développement

  • MPLAB X v1.00
  • C18 v3.40
  • PICKit 3


Variables de nœud

# Description
1 configuration du nœud
2 CAN-ID
3-22 4 x 5 réglage de servo


Octet de configuration du nœud

Bit Fonction Remarque
0 enregistrer les positions des servos à la commande de mise hors tension
1 utiliser des événements courts


Réglages servo

Byte Fonction Remarque/Plage
0 configuration
1 gauche 50…250
2 droite 50…250
3 vitesse à gauche 1…20
4 vitesse à droite 1…20


Octet de configuration des servos

Bit Fonction Remarque
0 Polarisation du relais Échanger la polarisation.
1 Capteurs d'aiguillage externes
2 Rebond


Événements de nœud

  • les capteurs généreront des évènements OPC_ACON/OPC_ACOF.
  • Les servos changeront la position sur OPC_ACON/OPC_ACOF.
Évènement# Description Variable
0-3 aiguillage servo 1…4 non utilisé
4-7 capteur servo 1…4 non utilisé
8 SOD non utilisé


Contrôle servo

La largueur d'impulsion du servo doit être entre 0.5 et 2.5 ms pour une plage de 180°:

servo-signal.jpggc6-servo-outputwave.jpg
Théoriquement. Premier résultat en temps réel.

Toutes les 5 ms une impulsion démarre pour un des 4 servos. Le taux de rafraîchissement pour chaque servo est de 20ms: 50Hz.
Timer0 est utilisé pour l'intervalle de 5ms et Timer2 pour la largueur d'impulsion qui est reprogrammé pour chaque servo tous les cycles de 5 ms.

Capteurs externes

En option, chaque servo peut utiliser deux entrées de capteur, sur les connecteurs Fb1…Fb4, pour le signalement de la position de l'aiguillage.

Droit Dévié Statuts
0 0 Le support de l'aiguillage est en attente.
1 0 Position droite.
0 1 Position dévié.
1 1 Invalide.

Un changement de position est seulement reporté sur le CBUS si seulement une des entrées est haute.

cbus/cangc6-firmware-fr.txt · Last modified: 2023/12/27 17:55 by phil45