Commander un servomoteur par une sonde de temperature

Bonjour à tous :slight_smile:

Je suis tout nouveau dans ce domaine (je l'ai découvert hier).
Ne m'en voulez pas si je vous demande ce qui peut vous paraitre la base^^

Je vous explique déjà brièvement ce qui m'a amené là.
Je souhaite apporter des modifications à mon boitier PC, pour "l’améliorer"
J'ai un petit cache en plastique sur le haut que je peux mettre ou retirer à ma guise pour la ventilation
Ayant un système de ventilation conséquent pour mon refroidissement liquide et n'ayant pas assez de place à l’intérieur, j'ai donc du mettre des ventilateurs à l’extérieur.

Du coup mon idée, surélever le cache en plastique, lui découper des ailettes, actionnant surement un système mécanique poussoir (avec des petites tiges métalliques)? (C'est encore en projet).
Alors vous allez me dire, pourquoi ne pas l'enlever tout simplement.
Plusieurs raisons déjà la poussière, ensuite je trouve que ce petit projet est sympa et pas excessif niveau revenu puis un peu de connaissance ne fait pas de mal ^^
Pour "corser" la chose d'ailleurs le top serait que l'ouverture puisse ce contrôler automatiquement en fonction de la température du boitier ou/et manuellement.

Donc venons en à ma demande
Déjà est il possible de me confirmer le matérielle que je souhaite prendre?
Mon panier pour le moment ce constitue :
-Xcsource UNO R3 MEGA328P ATMEGA16U2 Carte Développement Microcôntrolleur pour Arduino USB Cable SG155-SZ+
-XCSOURCE® 2 couple servo 55g Stellt engrenage mg995 métallique haute vitesse metall DE TE149

Donc avec ceux ci puis je créer un mouvement pour pousser ou tirer?
Il me manque une sonde j'imagine donc si vous pouvez m'en conseiller une?

Je pense que la variation du degré d'ouverture en fonction de la température doit être régler dans la programmation? (on y viendra ensuite^^)

Je vous remercie d'avance pour vos réponses :slight_smile:

Hello,

Le matériel me semble ok.
Pour la température, tu pourrais utiliser une sonde de type DS18B20 qui est facile à mettre en oeuvre et ne coûte pas cher.

De plus, tu vas trouver facilement du code d'exemple avec le matériel que tu as choisi.

Bon amusement (car cela doit être un amusement :slight_smile: )

Coyotte

Bonjour Coyotte

Je te remercie pour ta réponse rapide :slight_smile:

J'ai brièvement regardé il faut visiblement l'accouplé d'une résistance?
Me conseilles tu de prendre un petit module tout fait ?
Car sinon je vais devoir passer par un protoshield ? et trouver 1 résistance ^^ (si j'ai bien compris?)

Oui j'ai trouvé un code pour lire les températures
Je vais voir s'il peut être "adapté"

Autre petite question ^^
J'ai trouvé un petite boite pour mettre l'arduino 3,50€ mais il vient de chine^^
Ma question une petite boite pas trop chère au possible qui viendrait de France c'est trouvable?

Merci d'avance :slight_smile:

Hello again, :slight_smile:

Comme tu montes le truc dans ton pc, et que tu disposes de 5v, je suggère d'alimenter la sonde avec le 5v disponible. (Donc ne pas utiliser le mode d'alimentation parasite)

Il te faut juste une 4K7 pour tirer la ligne DQ vers le haut.
Pas besoin d'un protoshield, tu peux souder directement ta sonde à la résistance et les fils à la carte arduino...

Ne te complique pas la vie inutilement :slight_smile:

Coyotte

Oula t’inquiète pas je vais y venir à ces questions XD
J'y connais rien ^^
Bon il y a 15ans j'ai fait une 3eme Techno et un bep métier de l'électrotechnique.
Donc j'ai quelque notion mais ça s’arrête là

Donc effectivement niveau alimentation ça marche comment? L' USB ne sert qu'a rentré le code ou il peut servir d'alimentation également?
Ou faut que je me repique sur un port USB avec des câbles?

Et pour ne pas te mentir je n'ai pas compris DQ ?
Moi ce qui me fait peur ce sont des câbles nus (pas envie de faire un court circuit non plus)
Donc prendre des gaines thermorétractables ?
D'ou l’intérêt du petit module tout fait sur un circuit qui bien souvent on un trou pour une vis donc plus facile à fixer
sinon j'ai pu voir des sondes water qui sont gainé...

Je t'accorde le fait que je suis assez minutieux donc effectivement je me complique un peu les choses parfois

Hello,

Si tu n'as que le servo et un capteur de température à alimenter, cela devrait faire l'affaire via la prise usb.
Idéalement, il vaudrait mieux repiquer du 5v quelque part depuis ton alimentation, ce serait plus propre.

Pour DQ, c'est le nom de la ligne de données sur le capteur de température.
Idéalement (à nouveau :wink: ) tu devrais consulter le datasheet de ton capteur pour comprendre comment il fonctionne et comment l'utiliser.
Tu peux aussi te passer de lire cela et utiliser"bêtement" une librairie, mais tu rates une partie du plaisir de bricoler en électronique.

Vu ta recherche d'une solution propre, il est certainement possible de trouver un tel capteur monté sur un plaquette mais tu vas juste perdre un peu de place.

Par contre, +1 pour la gaine thermo. J'en mets partout afin de limiter les risque de contacts non souhaités.

Si ton installation doit trouver sa place dans un pc, tu peux également te pencher sur les versions de taille réduite de l'arduino comme la micro ou la nano. (La Pro-Mini est bien également (je m'en sers souvent) mais elle nécessite un convertisseur de signaux pour la programmer.)

Si tu places ton projet dans le boiter de ton pc, j'éviterais de mettre la carte dans un boitier fermé. IL va déjà faire assez chaud comme cela. Par contre, un support sur lequel tu pourrais visser la carte en la lassant à l'air libre devrait rencontrer tes besoins de câblage propre.

Voilà voilà...

Bon amusement !

Coyotte

Salut,
Je me permets de m'incruster dans le topic, je suis aussi un débutant et je m'intéresse au principe de programmation.
En gros c'est une fonction mathématique qui contôle le servo en fonction de la température.
Comment ça se traduit du côté programmation ?

Le problème est que mon alimentation ne fournit que du 12V
Pour avoir du 5V faut que je me repique sur ma carte mère (sur un port usb )
Je vais regarder mais il me semble qu'il n'y a que ça qui fournit du 5V

Et merci pour le datasheet je vais tenter de le trouver en FR, car on va dire que mon anglais est perfectible.

Ro ça ne doit pas être si gros que ça dans un ordi ?
Mais es que la sonde étanche ne serais pas plus adapté?
Dans le sens que celui ci est ventilé, donc le flux d'air aurais un moindre impact sur la sonde étant "protégé"?

Et du coup j'ai déjà commande le matos cité
Je vais commander le reste aujourd'hui

Oui il sera justement dans le petit "box" que je vais créer donc pas vraiment à l’intérieur non plus
en boitier j'ai pris :
MOONAR® Transparent Acrylique Shell Box, Pour Ardu

edit:
Bonjour Inryjo
Avec plaisir :slight_smile:

Je n'ai pas encore regardé le coté programmation (oui je suis peut être un peu fou de me lancer dedans sans connaissance, mais je vais prendre mon temps)

Le top serait d'avoir la possibilité de faire une "constance" dans l'évolution de la monté des ailettes, en donnant malgré tout un angle minimum et maximum

Sinon le faire par "palier" ce qui aurait un peu moins de charme puisque plus abrupt dans le mouvement

Hello,

Pour la régulation, tu pourrais te pencher sur le notion de PID. C'est un principe qui permet de réguler un système en tenant compte des variations et des variations des variations.
Il y a un bon article sur le sujet dans le Hackable Magazine n°9 je pense (publicité gratuite :-))

Avec ton servo, tu va pouvoir gérer graduellement l'ouverture des trappes.

Vas-y par étape...
Si tu n'as jamais pratiqué l'Arduino, il y a un cours complet ici.
Commence par faire clignoter la led de ta carte et ensuite, pas à pas, progresse.
Quand tu seras un peu plus à l'aise, connecte le servo et fais le bouger...
Ensuite, apprend à gérer la sonde seule.
Lorsque tu aura intégré le fonctionnement, tu pourras envisager de combiner les deux.
Ensuite, tu pourras réfléchir à implémenter une régulation de type PID...

Chaque chose en son temps et surtout, surtout, assures-toi que tu as COMPRIS ce que tu fais et POURQUOI tu le fais.
Recopier "bêtement" du code ne t'apprendra rien. Si tu comprends ce que fait ton code de test pour le servo et ton code de test pour la sonde, tu auras bien plus facile à faire fonctionner les deux ensembles.

Dans le cas contraire, tu vas rejoindre la longue litanie des "j'ai deux morceaux de code mais je ne sais pas comment les assembler( parce que j'ai trop la flemme pour m'implique)r" qui hantent parfois ce forum :wink: lol

Si tu "mords" dans l'arduino, et que tu t'investis convenablement dans sont étude, l'arbre des possibles est immense et "Sky is the limit" comme ils disent outre-atlantique.

(en passant, essaye de perfectionner ton breton parce que les datasheet en français... C'est assez rare :slight_smile: )

Bon amusement !

Coyotte

Bonjour,

Les fiches MOLEX sur les alimentation ATX fournissent du 12 volts ET du 5 volts ...
connecteurs alimentation pc

Au pire ,tous les fils rouge de l'alimentation sont en 5 volts..... Le "0 volt" : tous les fils noir...

Pierre

Bonjour Petrusfr

Merci pour ces infos ça va bien m’aider :slight_smile:

et bonjour Coyotte

J’ai trouvé la revue que tu m’as indiqué je vais la lire dans la journée

Effectivement c’est mieux de savoir ou l’on va et comprendre ce que l’on fait
Mais bon même si j’ai le temps, prendre 6 mois ou plus pour ce qui peut paraitre “simple” me fâcherais un peu^^
Je vais quand même tenter d’aller droit au but

Je pense d’ailleurs avoir trouver un sujet qui pourrait bien m’aider puisque visiblement le principe serait le “même”.
Je me permet un lien n’hésitez pas à me le dire si ce n’est pas autorisé

Hello,

Cela ressemble fort en effet à ce que tu cherches à faire...

Bon amusement, :slight_smile:

Coyotte

Bonjour Coyotte

(oui je sais je suis chiant XD )

Question on peut voir que sur son installation il utilise un condensateur pour lisser l'alimentation
Mais je ne trouve pas de condensateur 4700uF en 5V ? C'est normal?

Bonjour coproxo

D'après ce que j'en sait : pour la tension du condensateur : cette tension est la tension MAXIMALE de service ...

tu peux prendre plus sans risque et cela sera même mieux car il ne vaut mieux pas trop "fleurter" avec cette tension . En faisant simple : plus la tension de service est élevée , plus le condensateur sera volumineux.

D'autre paramètres sont à prendre en compte lors d'une étude "pro" (température, fréquence ....) mais dans pour ton application, ne te prends pas trop la tête avec cela.

a+

Pierre

Désolé Coxpro..
Pas là à midi, donc je n'ai pu te répondre à temps...

Comme le dit Petrus, tu peux prendre des condensateur 16v par exemple...

A+

Coyotte

Merci messieurs pour vos retours et pour les explications

Et pas de soucis Coyotte
Vous répondez toujours dans la journée, c'est déjà bien sympa de votre part :slight_smile:

Je commande le reste ce soir
la sonde, la résistance, le condensateur, gaines thermorétractable

Que me manque t il d'autre d’après vous?

un petit edit

J'ai pu lire que le condensateur avait une durée de vie de 5000 heures ce qui me parait peu? (j'en ai même vue à 2000h)

Donc après petite recherche j'ai lu que c’était leur durée de vie, mais poussé au max de leur capacité.
Et que donc il vive plus longtemps du fait que l'on pousse pas à fond

Vous me confirmez cette info? (je pense que oui sinon les ordi serait surement vite en panne ^^)

Bonjour messieurs me revoilà ^^

J’ai enfin reçu mon arduino
Je vais pouvoir m’y mettre même si j’ai quelques appréhensions (j’ai tout en double en cas de fail ^^)

C’est parti pour la prog
Etant un grand débutant pensez vous que ardublock, Minibloq ou modkit soit adapté?
Sachant que je suis nul en anglais aussi XD

Il me faut un truc assez simple

Merci d’avance pour vos réponses :slight_smile:

Bonjour

Voici la vue schématique et platine d’essais qui ont été réalisé avec Fritzing

N'étant qu'un petit novice ne pas hésiter à me dire en cas d'erreur

Merci d'avance

http://www.cowcotland.com/album-image9674.html

Question bête sur la prog.

Si je prend une programmation de base pré-fait (ex knob dans arduino) d'un servomoteur avec potentiomètre

que j’échange la ligne int potpin par la sonde pareil pour la ligne val=analogread(potpin)

que j'ajoute les lignes nécessaires pour la lecture de sonde

que j'adapte mon val=map par les valeurs de sonde et que je change le 180 car je ne souhaite qu'une ouverture max de 80°

Ça peut marcher?
Non car j'ai tout acheté en double, mais ça me laisse pas non plus des millions d’essais si je commence à cramer le matos XD

Je vais tenter de modifier la programmation et de vous l'envoyer ensuite