Pages: 1 2 [3] 4   Go Down
Author Topic: interfacer un TLC 5940 et 1 TC 426  (Read 5185 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour

Pardonnez la traduction ... smiley

dimmerino utilisée la logique inverse a la sortie:

le cycle de 100% dans la TLC5940 est de 0% à la sortie

//******************************************************************************
#include <Tlc5940.h>
#include <lib_dmx.h>  //deskontrol 4 universes DMX lib

void setup()
{
  ArduinoDmx0.set_control_pin(2);     
  ArduinoDmx0.set_rx_address(5);     
  ArduinoDmx0.set_rx_channels(48);   
  ArduinoDmx0.init_rx();             
  Tlc.init();
  Tlc.clear();
}

void loop()
{
  uint16_t tmp;
  for (int channel = 0; channel < NUM_TLCS * 16; channel ++)
  {
    tmp = 255 - ArduinoDmx0.RxBuffer[channel];   // invert DMX value
   
    Tlc.set(channel, tmp << 4);
  } 
  Tlc.update();
}
//****************************************************************************************

Chaque fois que je reçois de temps je envoyer le reste ...

Salutations.
Toni
Logged

FRANCE
Offline Offline
Sr. Member
****
Karma: 0
Posts: 338
Arduino rocks .... oulalalalala
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

bonjour toni et merci de ta réponse.

nous sommes passés par les courbes de whitecat pour inverser le signal, mais en fait il faut en effet que j inverse les valeurs dans le script. ta solution est la bonne.

quant au dimmerino, y a t il quelqu un qui en a déjà gravé des plaques ? j ai vu le pcb, mais il manque de la place pour des radiateurs.

sinon nous sommes partis de son schéma, mais les soudures ( ? ) ou les valeurs de résitances ( ? ) font que je bloquais à 6 circuits en termes de puissance. Pas sûr du tout de celà,.J'ai un peu de temps la semaine prochaine pour refaire des essais. as tu expérimenté avec le dimmerino des problèmes de puissance globale ?

merci de ta réponse
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour.
Le conseil que j'ai monté et testé à un ami était la suivante:



Ici était de 48 canaux de sortie, et un Arduino Nano 368 qui contrôle l'entrée DMX et TLC5940
Ne l'utilisez pas à monter parce que je ne suis pas sûr si j'avais quelques modifications. Je vais vérifier avec la photolithographie ...

J'ai fait ce nouveau conseil, parce que la première plaque n'avait pas de connecteurs pour les sorties, devait souder les fils de la broche centrale de chaque MOSFET.

Puis, j'ai décidé de séparer toutes les 16 sorties (1 TLC5940) sur une plaque ...

Certaines choses que j'ai vues dans le prototype:
Les LED n'ont pas atteint complètement (j'ai toujours laissé quelque chose sur), cela peut être dû au bruit dans les mosfets (sur l'oscilloscope regardé joli bruit au niveau des sorties). Il peut être également due à l'absence de tension de polarisation, et enfin le pire, il pourrait être parce que le TLC5940 ne parviennent pas à 100% de cycle PWM ...
Si la TLC5940 atteint seulement 99,8% par exemple, pour inverser le sortie aura un minimum de cycle PWM de 0,2%, pas d'un cycle de 0%.
Bien que je n'ai pas essayé.

En ce qui concerne la puissance et les puits:
Je vais sur toutes les lignes avec plaque d'étain portant les sorties et n'ai eu aucun problème.
Pour les sorties je utiliser mosfets BUZ11 type sans dissipateurs, et n'ai eu aucun problème avec des courants entre 1 et 2 ampères par sortie.

Rappelez-vous: 48 sorties x 2 ampères = 96 ampères, c'est la raison pour laquelle dans la première plaque a été séparé des sorties en groupes de 16 canaux, d'utiliser trois alimentations séparées.

J'espère que la traduction n'est pas trop mauvais ...  smiley-red

Cordialement
Toni


* dimmerino_old_version.png (60.38 KB, 3174x974 - viewed 31 times.)
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour à tous,
après quelques mois de mise en sommeil, nous nous remettons sur ce projet.
Encore des tâtonnements ... mais voilà ou j'en suis : j'ai opté pour des transistor PNP (TIP 127), ce qui permet de commuter quand le tlc est au niveau bas (absorbe le courant), des réseaux de transistors de 1 KOhm pour les pull-ups et une résistance de 6K8 Ohm sur Iref.
Qu'en pensez-vous ? Barbudor cela te parait-il correct ?
Merci d'avance,
Jacques.


* tlcpnp1.1_schem.jpg (141.73 KB, 1000x777 - viewed 49 times.)
Logged

Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 23
Posts: 2054
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pas bon sur plusieurs points :

- Un transistor bipolaire se commande via une résistance, pas en direct. Tu va cramer l'Arduino. Seul un MOSFET peut se commander en tension.
- on n'utilise pas un PNP comme cela. Ton montage ne marchera pas : le VBE de ton transistor sera toujours >0 et le transistor va toujours conduire. Soit tu utilises un NPN, soit tu utilises un PNP mais vers le +12V, ce qui n’empêche pas qu'il te faut un double étage avec un NPN d'abord sinon toujours le même problème.

Ton schéma est affreusement illisible. Fritzing est vraiment nul. Passes à un soft sérieux comme KiCAD, Eagle.

Réseau de résistance bof tel que placé.


SIncèrement, mieux vaut utiliser des NPN et accepter de commander avec un signal "1". Je ne vois pas pourquoi tu t'emm....e avec du PNP. Le seul intérêt du PNP dans ce genre d'application est de pouvoir commander par le + quand on souhaite avoir une masse commune.

Je ne sais pas (plus) ce que tu cherches a commander mais pourquoi s'embeter avec des discrets ? Pourquoi ne pas prendre des ULN2804 ?


PS: Je viens de me rappeler ce que tu cherches a faire et que c'est un TLC qui pilote, pas un Arduino.
Faut que je relise le sujet et ma réponse, tout n'est peut être pas bon dans ma réponse.
« Last Edit: December 20, 2012, 12:51:09 pm by barbudor » Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Désolé pour le schéma illisible ! J'ai un peu commencé à explorer eagle mais pour l'instant je ne le maitrise pas encore...
Oui c'est un tlc, l'intensité délivré est fixé par la résistance entre iref et la masse, c'est bien ça ? Du coup pas besoin de résistance pour limiter l'intensité ?
Nous cherchons à commander des valves qui consomment 750mA.
Quote
le VBE de ton transistor sera toujours >0 et le transistor va toujours conduire.
Je n'ai pas compris ! C'est quoi le VBE ?
Dans mon schéma précédent j'utilisais un double étage de npn  pour inverser le signal (uln 2803 puis TIP 122), mais le montage avec des PNP me paraissait plus simple et limite le nombre de composant (à terme nous voudrions piloter une centaine de valves + des leds !).
Voici mon schéma précédent :


* tlc6.1_schem.jpg (163.39 KB, 1000x1077 - viewed 37 times.)
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Je vient de me renseigner via wikipedia, donc vbe c'est la tension entre la base et l'émetteur.
Note que tout le circuit est en 5v, l’arrivée en 12v sert à alimenter le tlc via un 7805.
Je te remercie en tout cas de prendre le temps de te pencher sur notre problème.
Logged

Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 23
Posts: 2054
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Après réflexion, ton idée d'utiliser un PNP pour bénéficier de l'appel de courant du TLC5940 me parait une bonne idée smiley
Mais je pense que ton schéma n'est pas bon.

Le premier dessin à gauche ci-dessous reprend le principe de ton schéma. Le TLC5940 est présenté comme une source de tension négative qui absorbe le courant Ib.
RL est la résistance de charge (ta valve) et Rup la résistance de base (réseau de résistance).

Il se peut que cela marche mais j'ai quand même un doute car ce n'est pas le montage normal d'un transistor PNP en mode de commutation.

Avec un PNP je propose le montage 2 suivant qui pour moi est le bon/meilleur (?).
La résistance RB fait un pull-up de la base et quand le TLC ne prend pas de courant, le PNP ne conduit pas.
Quand le TLC tire le courant, il va tirer sur la résistance Rup et sur la base.
Par construction du transistor, VEB est une constante (environ 0,7V) ce qui fixe le courant dans Rup.
Il faut donc configurer la résistance de référence du TLC pour absorber ce courant + le courant de base nécessaire a faire saturer ton transistor.


* screenshot.1.png (3.21 KB, 960x355 - viewed 39 times.)
Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci beaucoup Barbudor !
Je regarde ça cet après midi.
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Les deux montages fonctionnent. Pense tu que mon montage peu poser problème, sachant qu'il me simplifie grandement le routage du pcb en simple face ?
Le pnp que j'utilise est un tip 127.
Pour la résistance de référence je nage un peu, pour mes test ça fonctionne avec un résistance de 6K8
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ce qui devrait faire que le tlc "absorbe" 5.7ma. Ça a l'air de suffire.
Logged

Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 23
Posts: 2054
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Si ca marche bien tant mieux.
Peut être quelqu'un d'autre peut-il commenter.
Ca me parait moins simple de faire saturer le transi dans le 1er cas.
Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok, merci pour tout tes conseils.
Je te tiendrai au courant de l'avancée du projet.
A bientôt,
Jacques.
Logged

FRANCE
Offline Offline
Sr. Member
****
Karma: 0
Posts: 338
Arduino rocks .... oulalalalala
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour à tous.

Le projet avance dans toutes ses dimensions: recherches de subventions, dossiers, recherches tout court, imagination, recherche de partenaires,  etc...

J'ai lancé un appel à dons pour couvrir la partie matérielle et permettre au projet d'être viable pour les matériaux.

Du coup a on réalisé une petite vidéo permettant de l'expliquer, et je penses que celà devrait intéresser quelques uns d'entre vous !

http://www.kisskissbankbank.com/pschuuu

Voilà, c'était les infos du jour !

christoph

 
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 106
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Et maintenant un blog pour suivre l'évolution du projet :
http://le-chat-noir-numerique.fr/blog/
Logged

Pages: 1 2 [3] 4   Go Up
Jump to: