la solution à base de 7400 me semble brouillon en terme de cablage,
Tu finaliseras sans doute sur circuit imprimé. Certaines liaisons se résumeront en très courtes pistes sous ou autour des 7400. pas si brouillon que ça au final.....
Un 7400 en boitier CMS par servo, est-ce que ça représente une surface, un poids excessifs ?
-La GAL16V8 est une alternative élégante. Il y a juste le 'ticket d'entrée' du programmateur.
On a échangé , içi et sur le forum US, au sujet de la réalisation d'un programmateur maison. Tu as vu je pense les 2 schémas des années 90. http://arduino.cc/forum/index.php/topic,115076.0.html
La piste de la programmation d'une 16V8 à travers l'Arduino reste ouverte mais ce serait un travail de longue haleine. Il serait presque plus simple (tout est relatif) de faire de l'Arduino un programmateur de petits CPLD (à moins de 3€ pièce chez Mouser par exemple) par emulation des signaux JTAG (interface JTAG en programmation , pas l'ensemble des fonctionnalités JTAG !!)
-Il y a débat (rien de plus enrichissant tant que ça reste courtois et respecteux des interlocuteurs !!) sur l'utilisation de MOS pour commuter directement les signaux.
ça ne parait pas à éliminer, après réflexion, connaissant quand même un peu je pense :
-la nature du signal à transmette (amplitude, durée de l'implusion et période)
-différents schémas internes de servos analogiques (circuits ZN409 de Ferranti, NE544 de Signetics, NJM2611 de JRC exclusivement)
-2 ou 3 schémas internes de servos numériques (à microcontrolleurs PIC)
Je ne reviens pas dessus.
-Je déconseille par contre la solution à relais, du moins avec des relais courants pas du tout adaptés à la transmission fiable et pérenne de courants très faibles. Içi on est en HCMOS, on n'a même pas le petit mA de la TTL à l'état bas.
Bon je vais laisser tomber ce sujet qui vire au "blablabla" stérile. Moi je me suis contenté d'apporter des réponses concrêtes à un débutant et les plus simples possibles. Toutes ces réponses plus alambiquées les unes que les autres et ne faisant preuve d'absolument aucune empathie envers le projet d'UniSev me semblent déplacées et carrément contraires à l'esprit du forum.
DMA = Direct Memory Access (alors qu'il n'y a pas de bus externe sur les ATmegas !!!!!!!!!!!!).
Faudra m'expliquer le rapport avec le sujet et pourquoi ne pas parler du "vol de cycles" lors du DMA. Ou plutôt n'expliquez rien du tout je délaisse ce post.
UniSev si tu as besoin de tuyaux tu peux me joindre en messagerie. Si tu t'arrêtes à la complexité de cablage de quelques portes tu ne risques pas d'arriver à la fin de ton projet. Celui ci présente par ailleurs de bonnes difficultés au niveau logiciel et ne vas pas se résoudre en quelques lignes de code.
jihelbi:
Bon je vais laisser tomber ce sujet qui vire au "blablabla" stérile...
...Ou plutôt n'expliquez rien du tout je délaisse ce post.
C'est dommage, j'avais des réponses (Pourquoi DMA... difficulté de câblage... avenir du projet), mais si personne n'es plus là pour les lire, je ne vais pas les écrire pour rien...
al1fch:
la solution à base de 7400 me semble brouillon en terme de cablage,
Tu finaliseras sans doute sur circuit imprimé. Certaines liaisons se résumeront en très courtes pistes sous ou autour des 7400. pas si brouillon que ça au final.....
Un 7400 en boitier CMS par servo, est-ce que ça représente une surface, un poids excessifs ?
Ce n'est ni la surface ni le poids, c'est juste que je ne comptais pas faire de circuit imprimé.
al1fch:
-La GAL16V8 est une alternative élégante...
La piste de la programmation d'une 16V8 à travers l'Arduino reste ouverte mais ce serait un travail de longue haleine. Il serait presque plus simple (tout est relatif) de faire de l'Arduino un programmateur de petits CPLD (à moins de 3€ pièce chez Mouser par exemple) par emulation des signaux JTAG (interface JTAG en programmation , pas l'ensemble des fonctionnalités JTAG !!)
Je me perds dans les acronymes, qu'entends-tu par CPLD, FPGA ? peut-on les programmer à bas coût (hors solution DIY/Arduino) ?
al1fch:
-Il y a débat (rien de plus enrichissant tant que ça reste courtois et respecteux des interlocuteurs !!) sur l'utilisation de MOS pour commuter directement les signaux...
On est d'accord
al1fch:
-Je déconseille par contre la solution à relais, du moins avec des relais courants pas du tout adaptés à la transmission fiable et pérenne de courants très faibles. Içi on est en HCMOS, on n'a même pas le petit mA de la TTL à l'état bas.
Oui mais il y a trop de gens qui ne pensent pas à toi et dérivent volontairement sur des sujets qu'ils connaissent (ou pas d'ailleurs, ou faussement aussi) afin de se mettre en valeur.
Si l'on veut délirer on peut poser directement la question de la solution la plus compliquée, la plus perverse, la plus détournée ou tout cela à la fois, pour résoudre un problème donné. Ce sont des challenges courant en hardware comme en software.
Ta question était simple. La réponse l'est tout autant (7400). Pour un newbie on ne peut pas appronfondir chaque point si l'on veut arriver à la fin d'un projet. Maintenant tu dois mettre en oeuvre cette solution et voir comment se passe la transition entre la radiocommande et l'Arduino.
Question 1 : Quand tu vas prendre la main avec l'Arduino connais-tu la position du servo des ailerons ? Peut-être est-il possible de positionner au neutre par défaut et interdire les passages en automatique pendant les manoeuvres.
Pourquoi ne pas faire très vite un prototype ou l'Atmega prend la main sur la radiocommande et pilote les ailerons en fonction de la position du manche (tu peux mesurer les pulses arrivant au servo sur une entrée d'interruption et les convertir en consigne de position d'ailerons) ?
Dans ce cas pas de gyroscope à gérer mais tu peux tester, étalonner et valider tout le process de commande des ailerons. Cela t'enlèvera toute incertitude future lorsque tu t'attaqueras au pilotage automatique.
Je pense que je vais devoir malheureusement laisser tomber le sujet, jihelbi je ne comprends pas ta façon d'intervenir, si tu m'envoi un MP c'est insensé de le poster ici après.
Sev
EDIT : Quand la mayonnaise sera retombée, j'ouvrirai surement un sujet dédié au projet dans sa globalité.
Parce que dans ta dernière réponse je me rends compte que c'est toi qui entretient ce post à blablater.
En fait ton projet n'est pas sérieux et tu n'as visiblement pas l'intention de le faire avancer. Quand je pense que le sujet me passionnait bien et que j'aurais aimer le voir se terminer, je suis déçu.
Donc je voulais juste montrer aux autres que tout conseil qui tend à faire avancer le projet ne t'intéresse pas vraiment car tu veux surtout continuer à causer ici.
qu'entends-tu par CPLD, FPGA ? peut-on les programmer à bas coût (hors solution DIY/Arduino) ?
CPLD : pour faire simple ,tu mets 8 16V8 dans une puce unique, tu as un CPLD à 32 macrocellules. Les principes de fonctionnement sont similaires, développement selon les mêmes méthodes, éventuellement par une simple description des équations.
FPGA : encore plus gros, des milliers, centaines de milliers de portes logiques élémentaires ...etc sont reliées souvent par des liaisons décrites dans une RAM interne. Il faut alors charger cette RAM à la mise sous tension. Les méthodes de conception simples utilisable pour les GAL ou CPLD ne sont plus envisageables
Dans un CPLD tu mettras ce que tu aurais mis dans plusieurs GAL. (CPLD = "nouvelles GAL" , grosses GAL améliorées)
Dans un FPGA tu mets, si tu veux un µC et quelques périphériques.. il ya des bibliothèques de modules prèts à etre implantés. un autre monde .....
N'ayant pas pratiqué ces composants depuis environ 8 ans je ne sais pas grand chose des côuts actuels des circuits de programmation, juste l'impression (lectures) que ça s'oriente vers du 4 fils (programmation par signaux TAG) et sans 'haute tension' de 15V. ça va dans le bon sens pour nous mais çe n'est pas encore aussi abordable que les µC.
Tu n'avais pas l'intention de faire un circuit imprimé, c'est ton choix et je le comprend parce que ce n'est pas simple quand tu ne dispose pas du matériel adapté de graver un circuit ou c'est hors de prix en réalisation extérieure.
Mais entre le circuit imprimé "maison" et la boite de connexion, dite breadboard, il existe la plaque percée et pastillée au pas de 2,54 mm qui te permet de câbler très simplement des 7400 ou tout autre boîtier en brochage à piquer (DIPx) et pourquoi pas un ATMega.
Si tu montes tous tes circuits intégrés sur des supports le câblage sera plus facile.
Dernier conseil pour relier les divers composants entre eux choisi plutôt du fil de cuivre mono-brin et de petit diamètre. Le fil multi-brins se met moins facilement en forme.
bande de pastille que tu coupe à la longueur voulue avec un foret ou un cutter.
Les pastilles indépendantes permettent de réaliser un câblage plus compact, les bandes permettent de séparer les soudures composant/fil en découpant des petites bandes de deux 'pastilles'.
Elles existent en deux matériaux
bakélite (FR2) pas cher mais cassant.
-Verre epoxy (FR4) un peu plus cher mais incassable.
Dans le domaine de l'électronique embarquée il faut bien que tu te mettes dans la tête que tu auras deux outils indispensables:
Bonjour a tous
UniseV, si tu ne desires pas faire un circuit imprime special il y a la solution du circuit imprime "proto" avec des pastilles au pas de 2, 54mm. Disponible en trou metal sur Ebay pour une bouchee de pain. Tes 2 7400 seront cables en 1/2 heure. Tres simple ton shema, il n'y a meme pas de croisements de signaux.
Une autre solution : une PROM 74188 (32x8). Utilisable si tu acceptes de faire la commutation des signaux en meme temps, car il n'y a que 5 fils d'entree. Le 74188 est programmable "a la main". Si je cherche, je dois pouvoir retrouver le programmateur et quelques pieces vierges. Je les avait utilises pour faire une commande d'afficheur 7 segments avec les 2 barres horizontales sur le 6 et 9. Pour remplacer 7447 !!!
Dans tous les cas la meilleure solution est 2 x 74xx00.
Je dis cela, je dis rien
Jacques
Je n'ai pas suivi tout le déroulement du post, étant en vacances avec certaine difficulté d'accès au forum.
Il semblerait que le sujet devienne un peu chaud, et ce serait pas mal que la vapeur redescende XD, ça m'embêterait de devoir faire le ménage.... en plus avec un clavier AZERTY
En effet je suggère l'automodération. Il faut excuser UniSev qui n'est pas francophone mais se débrouille bien en français. En tout cas merci de nous donner cet exemple de soft très bien commenté (désolé pour ceux qui ne lisent pas l'anglais).
Je pense que s'il a écrit ce logiciel il doit avoir une petite idée pour le délai de réponse effectivement anormal :
Bha tout ça est déjà prototypé et ça fonctionne plutot pas mal, regarde ici : Programing my Arduino to listen my receiver - Page 2 - RC Groups
Avec ce code, je décode les 6 canaux de mon Rx et je pilote 2 servo, j'ai donc évidement testé que je pouvait "recopier" 2 canaux de mon Rx (position des manches) vers les 2 servos... ça marche mais il y a un délais de 20ms à 40ms supplémentaire, ce qui n'est pas confortable pour du pilotage manuel.
68tjs:
Tu n'avais pas l'intention de faire un circuit imprimé, c'est ton choix et je le comprend parce que ce n'est pas simple quand tu ne dispose pas du matériel adapté de graver un circuit ou c'est hors de prix en réalisation extérieure...
En fait je comptais prendre un arduino pro mini, et souder quelques fils entre le Rx les Servo & l'arduino (+le DOF6).
Donc ça m'embête d'utiliser une plaque de prototypage, j'aurais plutôt vu un truc "volant", c'est pour ça aussi que je cherche une solution compacte, j'ai plutôt l'habitude de ce genre d'agencements :
JMe87:
...Utilisable si tu acceptes de faire la commutation des signaux en meme temps, car il n'y a que 5 fils d'entree.
C'est le même problème que j'ai avec les mux numériques (74HC157 par exemple), ils commutent toutes les voies avec une seule commande, et je préfère commuter de façon indépendante.
Vu que l'audioence augmente, je re-post le composant de mes rêves :
1x 7400 ne prend pas beaucoup de surface et il est possible de le monter en mezzanine sur la carte arduino-mini.
Quelque mm en hauteur à trouver ce devrait-être possible.
Sinon il y a le câblage "perchoir à mouche" noyé dans la colle----->Ok je sors
68tjs:
1x 7400 ne prend pas beaucoup de surface et il est possible de le monter en mezzanine sur la carte arduino-mini.
Quelque mm en hauteur à trouver ce devrait-être possible.
Sinon il y a le câblage "perchoir à mouche" noyé dans la colle----->Ok je sors
"dead bug" style !
Ou comment faire quelque chose de classe sans support, avec juste un peu de colle et de soudure
Bonjour
Une résistance est plus que souhaitable pour maitriser la valeur du courant dans la led du LC120
180 Ohms devrait fixer le courant à 17 mA environ dans la led. (loi d'ohm avec 3V aux bornes de la résistance) Sans résistance le courant dépasserait très probablement la valeur limite indiquée pour une pin par Atmel. (40 mA pour le Mega328)