Go Down

Topic: IRF électrovannes flexinol et isolations (Read 31153 times) previous topic - next topic

karistouf

#45
Apr 19, 2013, 01:06 pm Last Edit: Apr 19, 2013, 01:36 pm by karistouf Reason: 1
c est un peu ce que je me suis dit, je suis allé vérifier le code... sans rien de suspect à priori.

le schéma de base prévoie un optocoupleur, un brachement sur le TX, et un brin de controle sur une IO pour "balancer"
http://www.deskontrol.net/blog/schematic-arduino-4-universes-dmx-shield/

jacques a fait des tests de son coté sur un autre projet avec réception dmx et n'a pas eu semble t il de souci en simplifiant le schéma tel qu il est actuellement ( pas de TX, pas de brin, la pin de controle dmx est notée -1). J ai les mêmes problèmes, que ce soit avec un montage simplifié (pas de TX, pas de brin de controle) ou original.

au niveau des leds:
j ai mis une autre vieille led ( exactement de meme type) dans une sortie de Buz 11, en place d une électrovanne.
elle frémit en meme temps que celle branchée directement sur la nano, quand elle sont allumées, sans mouvements dans les autres circuits.

sur une salve très rapide (circuit 1 montée en  1/10eme de sec, maintients 1/10ème de sec,  puis descente 1/10ème de sec, le tout en boucle), on voit cette led en sortie de BuZ11 vibrillionner.
ce qui n est pas le cas de celle branchée sur la nano directement.
les buzz 11 sont cablés en parallèle et pas en étoile.

[edit] > saturation : j envoies une trame ts les 50eme

Ampérages, avec un compresseur à 5bars:
mon multimètre est un peu limité, je ne retrouve plus celui des enfants (qui est tellement mieux et dépasse les 200mA):

pas %     mA

0   - >  0.0
1   - >  8.2
2   - >  16.2
3   - >  21.0
4   - >  28.7
5   - >  33.8
6   - >  40.2
7   - >  45.9
8   - >  53.6
9   - >  58.5
10   - >  66.0
11  - >  73.8
12   - >  78.6
13   - >  85.2
14   - >  89.7
15   - >  96.2
16   - >  101.1
17   - >  110.0
18   - >  114.5
19   - >  121.3
20   - >  128.2
21   - >  133
22   - >  140
23   - >  144.4
24   - >  152
25   - >  156
26   - >  163
27   - >  168.7
28   - >  175
29   - >  180
30   - >  186.6
31   - > 193
32   - > 197.8

après je n ai pas de calibrage suffisant :-(

[edit] rajouté un condo de 100 nF au + et au - du Max485 sans changement de comportement.

Artouste



après je n ai pas de calibrage suffisant :-(


si tu peux , mais il te faut fabriquer un shunt calibré (R=U/I)  :smiley-mr-green:

pour ton application je te conseille d'acheter un petit multimetre analogique à une 15zaine d'euros
meme si ça peut sembler "ringard" c'est très pratique et contrairement à un multi moderne qui procede par integration
tu peux avec ça facilement détecter In situ des pompages/oscillation indecelables avec un numerique.
de plus c'est facilement modifiable , voir le mien dont j'ai modifié la gamme 10V en 5V pour avoir un rendu direct avec une amplitude correcte des valeurs ana des capteurs 0-5V
(MPX entre autres  8) )
un shunt exterieur permet facilement d'augmenter la gamme I
et avantage (hors ohmetre) pas besoin d'avoir de pile d'alimentation
c'est pas beau, mais c'est efficace et très pratique :smiley-mr-green:
http://cjoint.com/13av/CDtnLf1aRNk_multan.jpg


karistouf

#47
Apr 19, 2013, 01:41 pm Last Edit: Apr 19, 2013, 01:57 pm by karistouf Reason: 1
:smiley-mr-green:

je continues mon enquête...


karistouf

#48
Apr 19, 2013, 05:51 pm Last Edit: Apr 19, 2013, 06:25 pm by karistouf Reason: 1
Toni m'a très gentiment répondu:
http://www.deskontrol.net/blog/schematic-arduino-4-universes-dmx-shield/comment-page-1/#comment-811
Quote
Quote
Some time ago I have attempted to make a 24 channels led dimmer using Arduino and SoftPWM, and always I get strange artifacts and delays.
I am not totally sure, but appears that USART interrupt (used for DMX) is the cause.
Finally I have discarded SoftPWM and moved to TLC5940, and works fine (I tested up to 48 channels, 3 ICs) with UNO, NANO and MEGA.


il ne s agit donc pas d un pb hardware ou d'alimentation, mais d un pb de librairie: softpwm fait de droles de trucs à l uart...

quelqu un a une idée pour contourner le problème ?

[EDIT] j ai mis le mode apnée après un regard sur softpwm, la question est comment mettre sur le même timer les procédures du DMXframereceived et de softPWM... Il faudrait que j'encapsule la librairie DMX.h dans SoftPWM ?

Artouste

#49
Apr 19, 2013, 07:45 pm Last Edit: Apr 19, 2013, 07:57 pm by Artouste Reason: 1


il ne s agit donc pas d un pb hardware ou d'alimentation, mais d un pb de librairie: softpwm fait de droles de trucs à l uart...

quelqu un a une idée pour contourner le problème ?

[EDIT] j ai mis le mode apnée après un regard sur softpwm, la question est comment mettre sur le même timer les procédures du DMXframereceived et de softPWM... Il faudrait que j'encapsule la librairie DMX.h dans SoftPWM ?

quelque part c'est une pas si mauvaise nouvelle que ça (meme si la resolution du probleme sera peut etre ardue, et là je ne te serais pas d'une grande aide  :smiley-mr-green:) la remise cause du hard et PCB n'est pas à remettre en cause.
J'ai rapidement regardé ton debut de relevé, au moins sur la portion relevée ça trace une droite plutôt droite  8)

si la progression reste lineaire et pour un pwm sur 256 pas, tu es > 1.5A au full  :smiley-red:

karistouf

c est lineaire sur l amperage mais pas sur la reponse de flux d air ;-)

as tu quelque part un lien permettant de comprendre simplement ce qu est l uart ?
ou meme comprendre physiquement tout ce mic mac de slck ect....

la il va falloir que je m y colles ;-)

Artouste


c est lineaire sur l amperage mais pas sur la reponse de flux d air ;-)

as tu quelque part un lien permettant de comprendre simplement ce qu est l uart ?
ou meme comprendre physiquement tout ce mic mac de slck ect....

la il va falloir que je m y colles ;-)

oui mais c'est déjà pas mal pour ensuite tracer une courbe de debit selon un taux de PWM

L'uart c'est l'acronyme de Universal Asynchronous Receiver Transmitter
l'arduino selon ses declinaisons en comporte des physiques (1 sur le uno) et des software (par emulation) genre softwareserial
ce sont des process tres time  dependant , et là il faut mettre les mains dans le cambouis si il y a des conflits avec les timers.
je ne suis pas assez pointu pour t'aider sur cette partie qui est d'aller tripoter les registres de l'atmel.
mais il y a sur le forum des très bons connaisseurs de ça.


bouault

Christoph il me semble que le dernier schéma que tu as posté n'est pas bon. Le symbole pour le BUZ 11 est celui d'un mosfet canal P mais le BUZ 11est un mosfet canal N. Et puis le câblage n'est pas bon, c'est le Gate qui doit être relié à l'arduino.
A bientôt.
Jacques.
Jacques
arpschuino.fr

karistouf

hello jacques (décidément sur iphone la présence de schémas ne s'affiche pas),
bien vu, c etait le schéma des IRF !

ok, donc je vais poster sur un autre thread cette histoire d'UART.

dans ce thread http://www.deskontrol.net/blog/schematic-arduino-4-universes-dmx-shield/comment-page-1/#comment-811 toni m a très gentiment suggéré de mettre des diodes de protection: http://playground.arduino.cc/Learning/SolenoidTutorial
pour éviter les retours venant des électrovannes.

qu en pensez vous ? s agit il de diodes normales, ou faut il des diodes de puissance ? des shottky de puissance ?

enfin, deuxième grosse interrogation ce matin devant le café:

les BUZ11 sont inversées, on peut tricher le signal en l'inversant via des courbes, et le plafonner pour éviter les seuils critiques des électrovannes. cependant, à l allumage du dispositif, lors de l initialisation de l arduino si j ai entre 100 et 120 électrovannes au taquet ca me fait 150 à 180 ampères... y a t il un moyen de régler cette problématique de puissance à l'allumage physiquement ?

je ne sais pas si je suis clair d'ailleur, le matin ne l'est pas lui avec ses nuages tout plein !!!
ci joint le schéma à jour

Artouste


hello jacques (décidément sur iphone la présence de schémas ne s'affiche pas),
bien vu, c etait le schéma des IRF !

ok, donc je vais poster sur un autre thread cette histoire d'UART.

dans ce thread http://www.deskontrol.net/blog/schematic-arduino-4-universes-dmx-shield/comment-page-1/#comment-811 toni m a très gentiment suggéré de mettre des diodes de protection: http://playground.arduino.cc/Learning/SolenoidTutorial
pour éviter les retours venant des électrovannes.

qu en pensez vous ? s agit il de diodes normales, ou faut il des diodes de puissance ? des shottky de puissance ?

enfin, deuxième grosse interrogation ce matin devant le café:

les BUZ11 sont inversées, on peut tricher le signal en l'inversant via des courbes, et le plafonner pour éviter les seuils critiques des électrovannes. cependant, à l allumage du dispositif, lors de l initialisation de l arduino si j ai entre 100 et 120 électrovannes au taquet ca me fait 150 à 180 ampères... y a t il un moyen de régler cette problématique de puissance à l'allumage physiquement ?

je ne sais pas si je suis clair d'ailleur, le matin ne l'est pas lui avec ses nuages tout plein !!!
ci joint le schéma à jour

bonjour
moi aussi au café  :smiley-mr-green:

pour la diode ant-retour , j'ai déjà repondu plus haut, toni raisonne electrovanne (bobines) les flerxinol n'ont pas de comportement indiuctif destructif et les buz11 enportent par construction une diode suffisante de protection.

pas encore compris le probleme d'inversion des buz11 , mais si j'ai bien compris il serait actif au 0, si c'est le cas à l'init tu prevoit un delay de stabilisation et tu n'active l'alim generale des  flexinols qu'ensuite (pas de pic de conso et pas d'action)

karistouf

hum... je n'y connais pas grand chose, mais vu  la casse qu il y a eu sur les TLC, j'aimerais quand même rajouter une protection de plus. en attendant saint osciloscope ( on pourra commander à la fin du mois). est ce que le schéma dans le post précédent est ok ?

j'ai une problématique très précise à soumettre, pour esssayer de faire un sort à cette histoire de softpwm qui bataille avec la lib dmx.
ca sent un peu qu on envoie sur le timer des softs pwms une donnée pas complète, voire une trame dmx resétée.
pour pouvoir régler ca j ai besoin d une variable globale que je vais insérer dans les fonctions timées (ISR)

je n arrive à partager sur des fichiers utilisés en include cette variable globale.
en c, il suffirait de la déclarer en amont du include, avec l arduino çà n a pas l air d'être ca.

Code: [Select]

volatile boolean data_well_received=0;

#include <SoftPWMhack.h>
#include <lib_dmx.h>



comment déclarer une variable globale qui puisse etre lue et écrite par les différents fichiers inclus ?

voilà pour la question du jour ;-)

Artouste


hum... je n'y connais pas grand chose, mais vu  la casse qu il y a eu sur les TLC, j'aimerais quand même rajouter une protection de plus. en attendant saint osciloscope ( on pourra commander à la fin du mois). est ce que le schéma dans le post précédent est ok ?


bonsoir
si c'est juste pour te rassurer , pas la peine de taper dans de la schottky, colle des 1N4004  :smiley-mr-green:

karistouf


Artouste


karistouf


Go Up