Club robotique de Sophia-Antipolis

Accueil > Projets du club > Nos robots > Robots Eurobot > PoBot 2006 (aka Le Gobeur) > Electronique du robot 2006 > Discussion

Discussion

samedi 11 février 2006, par Julien Holtzer

 relais de commutation de l’alim de puissance

Eric : Je ne me souviens plus exactement où tu as prévu le relai de commutation de l’alim de puissance des drivers, mais il me semble que tu as parlé d’un transistor, qui est je suppose contrôlé par l’ATmega. Est-ce qu’on ne peut pas envisager de faire plus simple, en mettant ce relai sur la carte de puissance et en le commandant tout simplement par le 5V de la logique qui arrive sur cette carte ? De ce fait, on est assuré que la séquence d’alim sera correcte quel que soit le contexte de mise en oeuvre de la carte, on se retire cette spécificité de la carte mère, et on économise une I/O.

Gilles : Très Très bonne idée, puisque de toute façon je dois refaire la carte Driver. Celà économise également une connexion (donc connecteur KK 5 pts ou lieu de 6pts), un transitor et permet de connecter l’alimentation directement sur les drivers (donc économie connecteur Molex). Par contre, celà impose 2 relais et une carte driver un peu plus grande. Mais le jeu en vaut la chandelle.
— > OK pour moi, modifs prises en compte dans la V1.1 de la carte numérique.

 timer de match externe

Eric : Pour essayer de réduire le besoin en ressources timers et alléger le code à écrire, est-il possible d’implémenter le timer 90s (durée du match) en hardware ?> L’idée est :
- d’avoir un monostable qu’on déclenche au moment du début du match (donc par le programme) et qui monte (ou descend) un signal au bout des 90s
- de relier ce signal sur une des INT externes, et d’arrêter la logique de match via l’interrupt handler associé.

Gilles : J’ai mieux : je ne sais pas si j’en ai parlé la dernière fois, mais j’ai un Timer Milliseconde qui sers justement de base de temps pour ce genre de chose.
Ce Timer génère une interruption (basse priorité) toutes les millisecondes, et dans cette interruption, plusieurs compteurs (Timer général, Série, Horloge, ...) peuvent être décrémentés (ou incrémentés) jusqu’à une valeur (constante ou passée en paramètre). Lorsque cette valeur est atteinte, le Timer met à jour un Flag (Semaphore) ou lance un S/P prédéfini.
Donc, pas de composants supplémentaires ni d’IT !! Je vous expliquerais plus en détail Jeudi.

 OS pour micro-contrôleurs

Eric : Pour info, j’ai fait quelques recherches hier soir sur les OS realtime qu’on peut mettre sur l’ATmega, afin de récupérer des fonctionnalités telles que le multi-threading, les timers,... et donc d’éviter de se faire des noeuds à la tête avec ces pbs de timers convoités par plusieurs process. J’en ai repéré 3 principalement :
- AvrX
- dtRTK
- FreeRTOS

Ce dernier me semble le plus intéressant car supporté par une communauté sous SourceForge. Et il semble être vivant, car la dernière version date d’octobre 2005.

Gilles : Je ne sais pas si ça va nous apporter une réponse intéressante, notamment concernant la génération des divers pulses pour les moteurs et les servos. A creuser...
Je vais investiguer également, mais le problème de ce genre d’OS est de prendre beaucoup de place mémoire (Flash & RAM) et on n’en a déjà pas beaucoup ... c’est pour celà que j’avais dévellopé pour mon ancienne boite le concept de "Timer mS" au départ ... et ça marche pas mal.

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document