Fabriquer un controleur RVB

=> A vos fer à souder ^^ :) ! Des questions en rapport avec un projet ou une de vos réalisation . Une réalisation/projet, à nous présenter au fur et à mesure de sa réalisation.
Rubrique spéciale "Réalisations finies".
MERCI DE NE PAS CRÉER UN DOUBLON DANS LA RUBRIQUE DE DESSOUS.
chrispm
Rang "2 LEDs"
Rang "2 LEDs"
Posts: 71
Joined: 16 Nov 2009, 18:57

Re: Fabriquer un controleur RVB

Unread post by chrispm »

Merci d'avance :)

Pour ce qui est de la terre, je n'ai pas de différentiel non plus, évidemment. Le tableau électrique fonctionne avec des fusibles est est relativement ancien. l'alimentation principale est en triphasé aussi....

Bref, mis à part des parasites ça me pose pas de souci, les seuls appareils qui risquent de me donner une chataigne sont déjà à la terre, le reste est en plastique.

Sinon, voilà le schéma de mon controleur RGB. j'ai prévu 3 poussoirs et 3 potentiomètres pour les réglages manuels, l'entrée vu-mètre via jack, l'entrée IR pour contrôle télécommandé, et une sortie Buzzer sur un petit disque piézo pour faire des bips à chaque pression sur une touche. J'utilise 18 pattes sur les 20 du pic, c'est pas mal :mrgreen: j'ai plus d'idée sur quoi ajouter d'autre là...

Si vous voyez une grosse boulette ou une idée en plus, n'hésitez pas !
Le RJ45 c'est le seul connecteur de récup que j'ai trouvé pour faire du ICSP et c'est relativement compact :) (même si ça prends de la place sur le schéma)
le +5V de l'usb n'est pas raccordé, c'est volontaire car je n'utiliserais pas l'alim du port usb, mais le bloc secteur 12V.
Controleur-RGB.png
You do not have the required permissions to view the files attached to this post.
zeltron
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 3298
Joined: 15 Oct 2006, 20:05
Location: planète terre
Contact:

Re: Fabriquer un controleur RVB

Unread post by zeltron »

Ou la la ! je crains le pire de cette installation ...

ne me dites pas que vos fusibles ressemblent à ça :!:
tabatière bipolaire.jpg
ou encore que l'inter de la lumière est comme ça :?:
inter tumbler SI laiton.jpg
Ou encore que vous vous éclairez avec ça :shock:
AbatJourTole emaillée.jpg
(ce genre de matériel est vieux de pres d'un siècle ...et digne d'un "musée" ...)

zeltron
You do not have the required permissions to view the files attached to this post.
impactld
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 1051
Joined: 18 Oct 2009, 16:55
Location: Geneva, Suisse
Contact:

Re: Fabriquer un controleur RVB

Unread post by impactld »

chrispm wrote:Merci d'avance :)

Pour ce qui est de la terre, je n'ai pas de différentiel non plus, évidemment. Le tableau électrique fonctionne avec des fusibles est est relativement ancien. l'alimentation principale est en triphasé aussi....

Bref, mis à part des parasites ça me pose pas de souci, les seuls appareils qui risquent de me donner une chataigne sont déjà à la terre, le reste est en plastique.

Sinon, voilà le schéma de mon controleur RGB. j'ai prévu 3 poussoirs et 3 potentiomètres pour les réglages manuels, l'entrée vu-mètre via jack, l'entrée IR pour contrôle télécommandé, et une sortie Buzzer sur un petit disque piézo pour faire des bips à chaque pression sur une touche. J'utilise 18 pattes sur les 20 du pic, c'est pas mal :mrgreen: j'ai plus d'idée sur quoi ajouter d'autre là...

Si vous voyez une grosse boulette ou une idée en plus, n'hésitez pas !
Le RJ45 c'est le seul connecteur de récup que j'ai trouvé pour faire du ICSP et c'est relativement compact :) (même si ça prends de la place sur le schéma)
le +5V de l'usb n'est pas raccordé, c'est volontaire car je n'utiliserais pas l'alim du port usb, mais le bloc secteur 12V.
Controleur-RGB.png
Tu devrais te servir d'un transistor pour la commande de ton buzzer (Genre 2n2222 commandé par une 100Ohm, juste au cas ou... Car ton buzzer d'une part peut consommer pas mal de courant, et d'autre par s'il vient à cramer, peut détruire ton Pic...). Normalement, on ne raccorde jamais ce genre de truc directement sur un micro...

Je mettrais également une résistance sur l'entré mic, ainsi qu'un condo... Cela protège l'entrée...

RA5 et RB7, si elles sont configurées en Input, doivent être mises au potentiel 0V, et ne pas rester "en l'air"...

Vala mon avis...
www.impactld.ch - Lighting Design
jC_Omega
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 904
Joined: 10 Aug 2008, 09:45
Contact:

Re: Fabriquer un controleur RVB

Unread post by jC_Omega »

Même remarque impactld

+ bcp de chose, car tu va avoir des gros soucis:

- pour le récepteur IR: niveau electrique OK, mais pas la patte d'entrée sur le PIC : il faut que tu utilise une entrée interruption (INT0 ou INT1), car je suppose que tu veut que le fait d'appuyer sur une touche de la télécommande soit prioritaire ( dès que l'on recois un code IR le programme traite en priorité , donc arrête ce qu'il est en train de faire.

- pour ton régulateur 5Volt (tu a mis un 78L05), il sera trop juste en niveau courant (car 78L05 =100mA), mets a la place un 7805

- mets un condo de 100nF en parralèle au patte d'alim du PIC (anti-parasite)

- pour le buzzer , il faut un transistor de commande

- a quoi sert R7??

- le câblage de tes transistors MOSFET il manque les resistance de polarisation :
http://picprojects.org.uk/projects/rgb/index.htm

- pour la programmation ICD, tu utilise un connecteur RJ45, car tu a un ICD2?

- pour l'entrée audio, malheureusement ca ne marchera jamais comme ca (risque de cramer le pic car signal négatif, ou trop grand), de plus le convertisseur analogique/numérique d'un pic est lent, il faut rentré dessus un signal continus ou très très basse fréquence.
regarde mon lien donnée plus haut.

- a quoi va servir l'USB? car tu a déja bcp de chose sur ton schéma
Mes projets perso :
Image
chrispm
Rang "2 LEDs"
Rang "2 LEDs"
Posts: 71
Joined: 16 Nov 2009, 18:57

Re: Fabriquer un controleur RVB

Unread post by chrispm »

Merci pour toutes vos remarques !

Dans l'ordre :
Zeltron > non je te rassure c'est quand-même plus récent que ça, mais ça date des années 80-90 grand max.

Pattes à l'air : Ok je vais corriger ça

Buzzer : j'étais pas sur, j'ai lu sur des forums anglais qu'une pastille piezo consomme rien...

Entrée audio : j'ai prévu de gérer ça via le circuit qui y sera raccordé, en gros je brancherais jamais un appareil en direct dessus. Mais je vais quand-même rajouter résistance + condo pour ramener le potentiel à 0V si c'est pas branché.

Régulation 5 V : j'ai eu la flemme de changer sur le schéma, mais c'est un 78M05 qui débite 500 mA. Ca devrait suffire vu que le pic est un "nanowatt"...

Pour l'IR, j'avais pas trop compris l'intéret des entrée INT :) merci pour cet éclaircissement. Mais le programme fera pas grand-chose à part varier 3 pwm et attendre des actions sur les entrées... vue la fréquence du processeur (pour la gestion de l'usb, il sera donc à 48 MHz je crois) il aura normallement plein de temps libre :mrgreen:

Ok pour le condo antiparasite aussi

R7 est là principalement pour la première programmation, afin de placer la broche PGM à zéro et de ne pas entrer dans le mode de programmation LVP. vu que d'usine le pic est configuré pour être programmable en LVP...

Je vais voir l'histoire des mosfet. j'ai repris l'implantation telle qu'elle était sur le précédent controleur RGB, sur lequel j'ai récupéré ces mosfet...

Le RJ45 est là car j'ai rien trouvé d'autre dans mon bric à brac qui soit pas trop imposant et connectable facilement... mais c'est un programmateur perso (schéma et typon plus haut) basé sur les programmateurs les plus basiques possible, normallement compatible JDM mais adapté à mon cable usb vers port série qui a des tensions limitées à 5V, et au spécifications de ce PIC qui impose VPP à 9V et VDD + autres signaux à 3,3V. (j'ai pris sans le savoir un des plus chiants à intégrer... le prix plus bas à des désavantages...)

L'USB va servir à faire plein de tests et à reprogrammer le pic pour le mettre à jour. en gros le rj45 ne devrait me servir que pour placer le bootloader usb... mais comme dit le RJ45 semble gros sur le schéma... mais juste sur le schéma !

Et pour revenir à l'entrée audio et ton schéma, JC, j'avoue ne pas saisir l'effet exact du condo et des 2 résistances. La diode, elle, doit écréter la partie négative je pense. mais le but est de tester différents montages externes, et de voir comment ça réagit (via branchement usb et petite appli sur le pc qui affichera niveau, fréquence ou autres...) en fonction de ce que j'applique dessus (dans la limite de 0 à 5V bien-sûr)

La partie programmation de pic c'est tout nouveau pour moi donc ça me servira aussi à expérimenter pas-mal de choses :)
jC_Omega
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 904
Joined: 10 Aug 2008, 09:45
Contact:

Re: Fabriquer un controleur RVB

Unread post by jC_Omega »

pour le buzzer :
il y a 2 types :
-les buzzer avec oscillateur intégre--> fait du bruit quand on l'alimente
- le piezo (une sorte de haut-parleur sans membrane) : pour faire du bruit avec il faut lui appliquer une fréquence
chrispm wrote: Pour l'IR, j'avais pas trop compris l'intéret des entrée INT :) merci pour cet éclaircissement. Mais le programme fera pas grand-chose à part varier 3 pwm et attendre des actions sur les entrées... vue la fréquence du processeur (pour la gestion de l'usb, il sera donc à 48 MHz je crois) il aura normallement plein de temps libre :mrgreen:
oui c'est ca le soucis, tu va voir :
pour générer des 3 signaux PWM, tu va avoir besoins d'une interruption TIMER , ca va te servir a générer le PWM et faire autre chose a la fois
Une trame RC5 (code inventé par Philips pour les télécommandes) (si ca t'intéresse j'ai réalisé une librairie de décodage de la trame pour pic18f, qui permet de commander via une télécommande de TV un PIC).
Une trame RC5 (IR) est un signal de quelque µS, qu'il faut interpréter au bon moment sinon on le loupe.
Une entrée INT, permet de détecteur un front (montant ou descendant) automatique, ici par exemple lors de la réception d'une trame (donc au début un front descendant), le PIC arrête ce qu'il est en train de faire, traite et interprète la trame IR (pendant l'interruption), et une fois fini reprend le programme (peu importe l'endroit) la ou il en était.
Mes projets perso :
Image
zeltron
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 3298
Joined: 15 Oct 2006, 20:05
Location: planète terre
Contact:

Re: Fabriquer un controleur RVB

Unread post by zeltron »

Bonjour,

Désolé mais je n'ai pas pu donner suite de manière normale à ce topics ... a cause de problèmes récurrents d' authentification connexion ( l'informatique m'avais foutu la paix ces temps ci ...mais là c'est reparti a merder , ça recommence ...)

Je laisse la parole a d'autres :neutral:

zeltron
impactld
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 1051
Joined: 18 Oct 2009, 16:55
Location: Geneva, Suisse
Contact:

Re: Fabriquer un controleur RVB

Unread post by impactld »

JComega, si tu as les codes DIn de la RC5 je suis preneur aussi... ;)
www.impactld.ch - Lighting Design
chrispm
Rang "2 LEDs"
Rang "2 LEDs"
Posts: 71
Joined: 16 Nov 2009, 18:57

Re: Fabriquer un controleur RVB

Unread post by chrispm »

Ok je vois.
La librairie m'intéresse beaucoup oui :)

Donc même avec des pwm hardware, le pic serait pas assez réactif pour décoder la trame rc5 sans que le TSOP soit sur une patte INT ?
et ce problème ne s'applique pas à un bouton poussoir ?

oui les buzzers ont besoin de plus de courant que les piezo. Pour ma part c'est un petit piezo, un de ces petits disques qu'on trouve dans une montre, ca fait maxi 2cm de diamètre et qui à moins de 1 mm d'épaisseur. un disque doré et un rond blanc plus petit au centre. ( genre ça : http://www.gotronic.fr/audio-opt/05477-opt.jpg ) à priori quand ça demande 10 mA c'est déja énorme... j'ai fait le test avec la carte son, sur la sortie casque/ligne (qui est pas super puissante donc), en générant une fréquence de 2 à 3 khz ça bippe déja très fort ! J'ai donc pensé que le pic avec ses 5v en sortie suffirait largement pour le contrôler.

Le but (c'est accessoire, mais quite à faire un truc, autant exploiter toutes les possibilités :mrgreen: ) c'est de mettre un petit bip de démarrage puis d'émettre un bip à chaque pression sur un poussoir ou via la télécommande, ça permet de savoir immédiatement que oui, le choix à bien été pris en compte :)

Je reviens sur les mosfet : la led RVB que j'ai mis sur le schéma n'est qu'une indication du branchement, ça sortira sur 4 fils (+12V et le - pour les 3 couleurs) qui alimenteront directement les bandeaux RVB, qui sont déja pourvus de leurs résistances. comme dit, ça marchait très bien sur le précédent controleur, alors pourquoi me faire chi*** :mrgreen: à trouver un autre branchement...


Zeltron : désolé pour toi, je sais par expérience que quand un pc ne veut pas fonctionner correctement ça peut devenir une plaie...
impactld
Rang "6 LEDs"
Rang "6 LEDs"
Posts: 1051
Joined: 18 Oct 2009, 16:55
Location: Geneva, Suisse
Contact:

Re: Fabriquer un controleur RVB

Unread post by impactld »

Même si ton piezo ne consomme que 10mA, lorsque tu utilises un micro, tout ce que tu pilotes doit normalement passer par un composant qui te permet d'isoler un minimum la sortie de ton micro... Par définition, on ne raccorde rien en direct sur le micro... (Idem pour des registres, ou autres... Font exception, les amplis, et portes logiques, qui peuvent être utilisées en direct)

Pour ton PWM, le problème n'est pas là...
Imagine que lorsque tu envoie ta trame IR avec ta télécommande, ton micro soit justement en plein en train de générer ton PWM. Que se passe-t-il ? Ton micro fini de générer cette trame, et tu risques de n'en avoir qu'une partie. Ou encore, il lit ta trame car il ne fait rien, et une interruption timer vient commander la génération du PWM, il abandonne la lecture de la trame, et y revient ensuite... La encore, c'est incertain.

C'est pourquoi, lorsqu'une valeur est importante, on utilise une interruption. Celle-ci, interrompt un éventuel processus pour s'occuper d'un autre. Il existe une hiérarchie de base sur les micro pour les interruptions, qui est modifiable dans la majorité des cas. Ainsi tu peux déterminer que la lecture de l'IR est prioritaire, sur la génération du PWM, qui est elle prioritaire sur la pression d'un bouton, qui est prioritaire sur un échange avec ton bus rs232, etc... Un programme bien fait, ne travail pratiquement qu'avec des interruptions...

Lorsque tu utilises un microcontrôleur de façon professionnelle, ton programme principal, ressemble logiquement à cela (en C):
while(1){
}

Voilà... Toute fonction se fait uniquement avec interruption... D'ou l'utilisation abondante de registres, et autres... Les fonctions directes se font à l'aide du ou des timers... Idem pour les signes de vie (Genre led), les accès extérieurs genre RS232, boutons, bus, capteurs, etc... , ou les sorties, qui ne sont activées que sur demande d'un programme autre que le principal...

Et stp, quoique tu utilises, ne te sers jamais, au grand dieu jamais d'une fonction type goto, qui ne devraient même pas exister... Il y a toujours une solution pour faire mieux ! ;)
www.impactld.ch - Lighting Design
Post Reply