Ok je vois, merci !
-----
Ok je vois, merci !
Salut
------
Sur le datasheet.Vérifier comment ?
Les courbes sont données avec une plage de t° indiquée de -40 à +125°C.Sur la pièce que l'on a entre les mains à 25° ambiant?
Il n'y a pas que la courbe typique, il y a 3 courbes données à chaque fois : max, min, et typiques.Sur des courbes typiques (donc non garanties) ?
La courbe typique est établie sur base de statistiques faites sur un grand nombre de composants issus de lots de fabrication différents.
Max et min sont les minimum et maximum statistiques établis avec la plage de variation de t° max et en tenant compte d'un multiple de l'écart-type. Il n'y a aucune raison pour qu'un composant utilisé dans une plage de t° "classique" sorte des zones indiquées.
Le chiffre de 25mA est une valeur garantie et donc c'est une valeur sur laquelle on peut se fier.
Si on tient compte de la courbe courant/tension la plus défavorable, il s'agit de chiffres sur lesquels on peut avoir une confiance statistique conséquente. Si vraiment on place un composant critique niveau tension résiduelle il est alors toujours temps d'intercaler une amplification en courant. Par contre, pour piloter un élément non critique à ce niveau (led, petit consommateur etc) on peut travailler avec 25mA max et se fier sur les courbes pour avoir une bonne idée des tensions qu'on obtiendra en sortie.
1) On répond à un sujet concernant un proto unique.Ce n'est pas ma méthode de travail pour concevoir un truc qui doit être fabriqué en 10000 exemplaires
2) Tout dépend de ce qu'on place sur la pin en question, tous les composants ne seront pas susceptibles à une éventuelle chute de tension de quelques mv survenant sur un exemplaire sur 100.000
3) Les chiffres que tu annonces sont aussi inexacts que pour les 25mA, puisque pour un 16F84A les tensions indiquées garanties le sont pour 8.5mA en niveau bas et 3mA en niveau haut, et encore pour une Vdd de 4.5V et avec un oscillateur autre que RC (sinon c'est 1,6 et 1,3mA.
4) Si on doit produire à 100.000 exemplaires et qu'on a un doute, on ne se casse même pas la tête, on ajoute un transistor cms.
Si on doit prendre ta méthode au pied de la lettre, alors il est impossible de tirer le moindre courant d'une PIN. En effet, on ne garantit une valeur qu'à une tension Vdd de 4.5V et vu qu'on utilise souvent une tension de 5V, soumise de plus à une tolérance, ça devient impossible de rien garantir.
Si le constructeur donne les courbes c'est quand même pour qu'on les utilise, sinon si elles ne servent à rien. Ne pas oublier que les précautions concernant les courbes sont des précautions destinées à éviter au constructeur de se retrouver dans un procès en cas de problème, du coup les sociétés américaines finissent par ne plus rien garantir du tout.
Bref si même la charge est fortement tributaire de la tension résiduelle: il faut faire la distinction en fonction du type d'application. Si on veut les précautions max ça coûte plus cher pour un gain éventuellement visible sur un exemplaire sur 100.000. Le coût d'un remplacement sous garantie d'un exemplaire "limite" risque bien d'être largement inférieur au surcoût d'un excès de précaution.
Inversement, si la fiabilité doit être garantie à tout prix (à part le médical il y a peu de domaine, un lecteur DVD n'est pas étudié sur ce principe) alors on utilise une amplification dès que le courant est > à 1 ou 2 mA.
Tout dépend donc au final du cahier des charges. Or, ici, le cahier des charges indique la construction unique d'un petit robot éviteur d'obstacle.
L'utilisateur a indiqué vouloir utiliser un 16F84A.J'ai regardé, au zazard, une spec de PIC18FXX2
Les 18Fxx2 sont obsolètes et remplacés par les 18Fxx20.
Les courbes sont données figure 23-21 à 23-24 sur le datasheet DS39564C. Autrement dit, tu as mal regardé.Il y a les paramètres (rubrique D080 et D090) Iol et Ioh mais il n'y a pas de courbes typiques de vout=f(Iout)
A+
Bigonoff
Vive l'Internet libre
moi pas savoir ... et sur la spec (depuis le site MicroChip) il n'y a pas marqué "obsolète , voir tel circuit"OKLes courbes sont données figure 23-21 à 23-24 sur le datasheet DS39564C. Autrement dit, tu as mal regardé.
et ici, j'ai mal regardé ?
http://freedatasheets.com/downloads/...20%20Compa.pdf
J'aime pas le Grec
Parce que le 16F84 n'est pas obsolète????
Et quand on a un doute sur la capacité d'un composant, on peut mettre un transistor, ou mettre un autre micro qui lui a des courants de sortie utilisables...ça fait des routages plus simples, ça limite les stocks de composants de la boite, etc, etc....
Bref, on choisit un composant adapté
Juste un détail : c'est la première fois que je me sers d'un microcontrôleur, je suis un amateur en électronique, et je ne compte pas faire 10000 exemplaires de mon robot, juste un pour moi.
Salut
------
Ben si, c'est marqué:moi pas savoir ... et sur la spec (depuis le site MicroChip) il n'y a pas marqué "obsolète , voir tel circuit"
http://www.microchip.com/wwwproducts...ct2=PIC18F2520
Je cite : Not Recommended for new designs
Par comparaison au 18F2520: In product
Je comprends mal le sens de cette discussion :et ici, j'ai mal regardé ?
1) On parle du 16F84A je te dis que les courbes sont données.
2) Tu me réponds qu'il n'y a pas les courbes dans le datasheet du 18Fxx2
3) Je te réponds que le 18Fxx2 est obsolète mais que les courbes y sont également, et je t'indique où.
4) Tu me réponds que les courbes ne se trouvent pas dans le datasheet du 18F6520.
Quel est le but?
Effectivement elles ne s'y trouvent pas pour ce PIC. Ce n'est pas la première fois qu'il y a un oubli dans un datasheet: si tu as besoin des courbes tu les demandes chez Microchip et tu verras ce qu'ils te répondent.
Sinon, vu les 64 à 80 pins de ce micro, je doute que se pose souvent la question de connaître la tension de sortie sur un courant >8mA, vu les limites imposées pour l'ensemble des ports, mais soit...
Si, mais personne n'a parlé de 16F84, on a parlé de 16F84A, qui, lui, n'est pas obsolète et toujours en fabrication.Parce que le 16F84 n'est pas obsolète?
Maintenant, il y a plus intéressant qu'un 16F84A dans le même genre de produit, par exemple le 16F628, mais c'est un autre sujet.
L'avantage du 16F84A c'est qu'il peut démarrer plus vite et avec moins d'apprentissage, surtout s'il n'a qu'un seul et unique projet à réaliser. Mais s'il veut plus de fonctionnalités il peut toujours choisir un autre PIC, ce n'est pas le choix qui manque.
J'ai quand même vachement l'impression qu'on en a déjà parlé à de multiples reprises.Et quand on a un doute sur la capacité d'un composant, on peut mettre un transistor,
25mA sur une pin, ça me semble utilisable.ou mettre un autre micro qui lui a des courants de sortie utilisables
C'est le cas sur pratiquement tous les PIC.
Et s'il doit ajouter un petit transistor, ce n'est pas la fin du monde, surtout pour un projet de ce type.
Je n'ai pas vu où il était question de stocks d'une société dans ce sujet.ça limite les stocks de composants de la boite
On parle de quelqu'un cherchant à réaliser un petit projet.
Un composant est adapté ou non à un cahier des charges précis. En l'occurance on n'en sait pas assez sur le cahier des charges (IO/modules nécessaires etc) pour juger si un PIC16F84A est adapté ou non.Bref, on choisit un composant adapté
Si oui, aucun soucis, vu qu'il peut probablement de plus se procurer le 16F84A en échantillon gratuit.
Si non, il lui suffit de choisir un autre PIC ou une autre marque de microcontroleur, on a donné cette possibilité dès le départ.
C'est bien ce que moi j'avais cru comprendreJuste un détail : c'est la première fois que je me sers d'un microcontrôleur, je suis un amateur en électronique, et je ne compte pas faire 10000 exemplaires de mon robot, juste un pour moi.
A+
Bigonoff
Vive l'Internet libre
Bien sûr, ce que je veux dire c'est que s'il y a une variation de 1mA pour un transistor, ce n'est pas grave...
Mais 20 mA ... c'est grave !
J'aime pas le Grec
Je vais essayer de me renseigner pour l'Arduino dans ce cas. Et pour le servomoteur, j'avais déjà regardé, mais j'ai peur de faire une fausse manip en le modifiant.
Si tu prends soin de bien repérer les différents pignons (de toutes façons, il y a peu de chances de se tromper), il ne devrait pas y avoir de problèmes.
Tu peux soit remplacer le potentiomètre par deux résistances identiques, couper l'axe du potar ou le remplacer par un petit ajustable. Les deux dernières méthodes permettent de pouvoir régler le point neutre du servo.
Dans la méthode à deux résistances, tu as toujours le risque d'une différence de valeurs, faisant que le servo tourne avec une impulsion au neutre (1,5ms)
Ensuite, il faut juste supprimer la butée sur l'axe de sortie (ou les butées dans le boitier, mais elles sont moins accessibles). Le plus pratique, c'est à la lime, ou au Dremel.
Ça n'est pas vraiment sorcier à faire...Si tu as peur, tu peux toujours te faire la main sur des servos HS ou acheter des modèles chinois à 3 sous.
Alors j'ai trouvé des servomoteurs qui tournent déjà continuellement (donc pas besoin de le modifier), mais par contre c'est cher ! 17€ chacun !
Merci Bigonoff, de toute façon ce serait plus simple pour moi d'utiliser un PIC et un moteur simple, parce qu'ils n'ont pas d'Arduino ni de servos dans le magasin où je voulais commander mon matériel (en fait je ne veux pas payer de livraison, en plus c'est pas trop loin de chez moi et je peux avoir le conseil en prime).
Salut
------
Le prix d'un servo est lié non seulement à sa solidité de fabrication, mais également à ses performances (vitesse/couple).Alors j'ai trouvé des servomoteurs qui tournent déjà continuellement (donc pas besoin de le modifier), mais par contre c'est cher ! 17€ chacun !
Bref, tous les servos ne sont pas égaux, et donc pour savoir déterminer les caractéristiques de celui dont tu as besoin il te faut chiffrer ces besoins.
Ou alors tu te fies sur des réalisations publiées sur des sites spécialisés connus pour savoir les solutions les mieux adaptées (car déjà testées)
A mon avis, le plus simple pour toi est de partir sur une base mécanique déjà testée par des gens dont c'est le hobby. Ensuite, tu adaptes à ta sauce.ce serait plus simple pour moi d'utiliser un PIC et un moteur simple
Une fois que tu auras plus d'expérience tu pourras partir sur une réalisation complètement originale.
A+
Bigonoff
Vive l'Internet libre
Qu'est-ce que tu me conseilles alors, pour débuter ?
Salut
-----
Pour débuter les robots, je te suggère d'aller sur un site dédié à ce sujet, et de regarder les différentes réalisations proposées, ça te fera une bonne base pour la mécanique et l'électronique et ça te donnera des idées.Qu'est-ce que tu me conseilles alors, pour débuter ?
En ce qui concerne les microcontroleurs pour mettre tout ça en vie, personne ne peut te donner un conseil judicieux concernant une marque en particulier: toutes se valent avec des points communs, des divergences, avec des avantages et des inconvénients en fonction de telle ou telle réalisation.
Si tu penses réaliser d'autres applications, le plus simple pour ne pas se disperser est de choisir une marque et/ou une famille avec laquelle tu as le plus d'affinités (documentations, exemples, caractéristiques, langages, disponibilité, enfin n'importe quel argument que tu estimeras pertinent et avec la priorité de ton choix). Ensuite tu étudies correctement cette famille et tu te lances d'abord dans un petit montage tout simple et didactique (faire clignoter une led est l'exemple basique type), puis ensuite sur ton projet réel.
Si tu n'as qu'une seule et unique application, le plus simple est d'utiliser le micro servant pour l'exemple que tu auras trouvé. Mais bon, dans ce cas tu n'auras rien appris ni rien réalisé, tu auras simplement réalisé l'application de quelqu'un d'autre.
Ceci étant que les conseilleurs ne sont pas les payeurs et que donc il ne s'agit que de mon avis subjectif.
Toutes les portes te sont ouvertes et c'est vrai que le choix est vaste, donc difficile.
A+
Bigonoff
Vive l'Internet libre
Au fait, pour une carte de programmation (que ce soit pour un PIC ou Arduino), est-ce qu'une fois qu'on a rentré le programme sur un microcontrôleur, on peut enlever ce dernier de la carte et le placer sur un circuit (on peut alors se reservir de la carte), ou alors il faut une carte par "projet" ?
Salut
------
Je n'ai pas bien compris ce que tu entendais comme différence entre "carte" et "circuit".Au fait, pour une carte de programmation (que ce soit pour un PIC ou Arduino), est-ce qu'une fois qu'on a rentré le programme sur un microcontrôleur, on peut enlever ce dernier de la carte et le placer sur un circuit (on peut alors se reservir de la carte), ou alors il faut une carte par "projet" ?
Pour programmer un micro, il faut un programmateur.
Et il y a en général deux façons de programme le micro niveau physique:
1) Soit tu places le micro sur le programmateur, tu programmes, puis tu reconnectes le micro sur sa platine d'application.
2) Soit tu places un connecteur sur la platine d'application et tu y amènes les signaux de programmation (in-circuit programming).
Si tu parles d'une carte de développement intégrant le programmateur, alors oui, une fois le micro programmé tu peux le retirer et le placer sur son circuit final et donc récupérer la carte de développement pour un autre projet.
A+
Bigonoff
Vive l'Internet libre
Je parlais bien du 3ème cas, et ce que je voulais dire par carte, c'est par exemple l'Arduino Uno.
J'aurais pas voulu racheter une carte de développement pour chaque projet. Et sinon, une fois le programme en place et le microcontrôleur sur le circuit imprimé, est-ce qu'il faut des compléments, comme une horloge ou un régulateur de tension ?
Enfin le 1er cas je veux dire.
Salut
------
Je n'utilise pas de carte de développement pour des micros aussi simples, mais chacun fait comme il préfère.J'aurais pas voulu racheter une carte de développement pour chaque projet.
Il faut réaliser une carte électronique dont le micro est le centre.Et sinon, une fois le programme en place et le microcontrôleur sur le circuit imprimé, est-ce qu'il faut des compléments, comme une horloge ou un régulateur de tension ?
Évidemment si tu n'as aucune notion d'électronique tu as peu de chance d'arriver à utiliser un microcontroleur sur un projet personnel.
A+
Bigonoff
Vive l'Internet libre
Comment tu fais alors ?Je n'utilise pas de carte de développement pour des micros aussi simples, mais chacun fait comme il préfère.
Je réponds pour mon cas mais ça doit être pareil pour 80% des gens : plaque lab' pour faire un maximum d'essais, avec de quoi programmer en icsp puis après directement sur le cuivre. Toujours avec le connecteur icsp pour programmer/debugger/mettre à jour le µC.
J'ai regardé quelques tutos sur internet pour le ICSP, mais je n'ai pas bien compris comment ça marche, tu pourrais m'expliquer, et me dire ce qu'il faut comme matériel ?
Ecoute, arrête de te prendre la tête, et commence simplement. Prends un Arduino, que tu retireras de ton robot une fois que tu voudras en faire un plus perfectionné. Au pire, tu peux même faire de l'ISP avec mais c'est prématuré à ton niveau.
Tu n'as pas encore le niveau pour te lancer dans une carte minimum. ça viendra, mais il faut être patient.
Dans ce cas, je vais prendre des composants que je connais mieux, comme le NE555, il me sera sûrement utile.
Je n'ai pas dit ça mais vant de vouloir faire un robot, apprends donc à faire clignoter une led, à piloter un servomoteur, à lire un bouton ou un potentiomètre.
Ensuite tu pourras appliquer tout ça à un robot, mais il faut faire les choses dans l'ordre.
On commence le vélo par le tricycle, pas par le Tour de France
Ce n'est pas tellement ça qui pose problème, mais plutôt le côté matériel, je ne sais pas quoi prendre pour appliquer le programme sur le microcontrôleur sans dépenser une fortune.
Pour revenir à l'ICSP, c'est ce genre de câble qu'il me faudrait ?
http://www.lextronic.fr/P80-programm...e-pic-pg1.html
Salut
------
Je fais un prototype et je travaille directement sur le proto.Comment tu fais alors ?
Je branche mon programmateur/debugger sur le pic du proto (j'ai simplement fait un petit support "intermédiaire", ça m'évite de placer un connecteur ICSP sur chaque proto), et je programme "en direct".
Un ICSP, c'est pratiquement simplement un connecteur.J'ai regardé quelques tutos sur internet pour le ICSP, mais je n'ai pas bien compris comment ça marche, tu pourrais m'expliquer, et me dire ce qu'il faut comme matériel ?
En gros, plutôt que de placer ton pic sur le programmateur, tu amènes les signaux de ton programmateur sur ton circuit.
Tu as un schéma applicatif sur ma page "trucs et astuces".
Pour ma part, je n'utilise même pas un connecteur ICSP: je me suis fait un petit circuit relié au programmateur/debugger: Je place ce circuit dans le support prévu pour le pic et je place le pic dans le support du circuit. Ainsi, j'ai l'ICSP sur n'importe quelle platine, même non prévue.
La modération a beau intervenir sans arrêt, tu reviens inlassablement poster de la pub pour Arduino (on peut difficilement prendre cette affirmation pour un argument technique).Ecoute, arrête de te prendre la tête, et commence simplement. Prends un Arduino,
C'est lassant.
Sans compter que quel que soit le micro il faut de toutes façons le programmer.
Je vois mal ce que l'ISP a de prématuré, ce n'est qu'un connecteur avec 1 ou 2 composants passifs, ça ne demande absolument aucune connaissance.Au pire, tu peux même faire de l'ISP avec mais c'est prématuré à ton niveau.
Là je suis d'accord, et du reste c'est ce que je disais un peu avant.Je n'ai pas dit ça mais vant de vouloir faire un robot, apprends donc à faire clignoter une led, à piloter un servomoteur, à lire un bouton ou un potentiomètre.
Il te faut un programmateur.Ce n'est pas tellement ça qui pose problème, mais plutôt le côté matériel, je ne sais pas quoi prendre pour appliquer le programme sur le microcontrôleur sans dépenser une fortune.
Pour les PIC:
Soit tu le réalises toi-même (les schémas du PicKit2 sont publiques), soit tu en achètes un (PicKit3 par exemple).
Tu as avantage à acheter un modèle avec debugger intégré, c'est plus facile pour travailler.
Si vraiment tu cherches à économiser 25 euros, tu réalises un programmateur simple (ex: LVP avec un pic qui le permet), sachant qu'il faut éviter le modèle JDM qui est non fiable. Évidemment dans ce cas tu n'as plus accès au debuggage sur circuit.
Le plus simple est de commencer dans l'ordre :Pour revenir à l'ICSP, c'est ce genre de câble qu'il me faudrait ?
1) Choisir une marque de microcontroleur
2) Choisir un programmateur qui fonctionne avec cette marque
3) Utiliser si tu veux un câble ICSP dépendant du programmateur que tu auras choisi.
Si tu désires utiliser l'ICSP, il te suffit d'ajouter le minimum nécessaire sur ton circuit applicatif. Le câble tu le fais toi-même, car de toutes façons si tu n'arrives pas à réaliser le câble alors tu n'arriveras pas non plus à réaliser l'électronique de ton robot.
A+
Bigonoff
Vive l'Internet libre