Aquila Reloaded – Chapitre 12 : Réalisation du typon

Hello,

Les essais sur plaque expérimentale sont terminés, et cela m’a permis de développer une première version du code.

Maintenant, il faut concrétiser en reproduisant l’ensemble du circuit.

Typon de la « version beta »

Choix des broches : ça se fera en fonction des broches accessibles..

C’est bien connu, les pistes d’un circuit imprimé ne peuvent pas se croiser. Pour circuler, elles peuvent passer en dessous de certains composants (résistances, circuits intégrés, …), et en dernier recours on peut placer des pontages. De ce fait, je n’ai pas réalisé au préalable de « plan de câblage », mais j’ai choisi de dessiner mon circuit, et de réaliser les branchements à l’Arduino au fur et a mesure en fonction des broches accessibles et compatibles.

Placement des composants « figés »

On commence tout d’abord par placer les composants figés sur notre circuit imprimé : les DIP Switchs et les LED.

Ensuite, on place notre Arduino « Mega Embed » accolé aux DIP Switchs : en effet, il y aura beaucoup de pistes, cet espace entre l’Arduino et les DIP Switchs est donc perdu.

J’ai fait le choix de « condamner » les broches 52 à 56, car vu la densité de broches disponible, ne pas les souder me permettra de passer mes pistes sans contrainte entre mes DIP Switchs et l’Arduino.

Identification des zones où implémenter chaque partie du circuit

Les broches de l’Arduino sont organisés par thème.

  • Sur la partie en rouge, nous avons l’alimentation
  • Sur la partie en vert, nous avons les broches PWM
  • Sur la partie en orange, nous avons les broches responsables de la communication (hors RX / TX, que je réserve pour la programmation et debug)
  • Enfin, sur la partie en bleue, on retrouve des broches standard : 16 en analogique, le reste en numérique

On va donc construire en premier notre circuit d’alimentation électrique. Le transformateur de l’Aquila fournit du 13V alternatif, on va donc réutiliser des composants du circuit d’origine : le pont de Graetz, le condensateur, et le régulateur 7805. Je place cette partie du circuit dans un angle.

Des broches compatibles interruption et PWM sont disponibles à proximité des broches d’alimentation, on va donc positionner les connecteurs des ventilateurs à proximité également.

Concernant le circuit DMX, on va utiliser les broches de communication 18 et 19, donc on va construire notre circuit RS485 à proximité également, en récupérant le SN74176 d’origine.

Enfin, il reste une zone de travail disponible pour le pilotage des diodes en PWM. J’ai de quoi placer 4 transistors MOSFET, et je place le 2eme circuit de régulation (en 24V) à proximité des MOSFET, dans l’autre angle disponible.

Enfin, dans l’espace situé à proximité des broches « standards », je place les ULN2803A responsables du pilotage des moteurs pas à pas.

Il reste à placer le circuit « capteur de basses », on va le placer dans la zone « en sandwich » entre les 2 circuits de régulation. Ça tombe bien car il faudra une broche analogique et une broche numérique « interrupt » ; la première étant située sur la première rangée, la seconde étant située sur l’autre rangée.

Ce qui nous donne l’implantation suivante :

Résultat final

Je vous passe les détails, mais voici ce que donne la version bêta, après plusieurs jours de travail.

Typon de la version « release candidate »

Comme vous pouvez le voir la bêta n’est pas mal mais perfectible : j’ai dû faire la concession du PWM pour un des deux ventilos car c’était trop compliqué de faire passer la piste. J’ai également dû placer un certain nombre de pontages, ce n’est pas très propre…

Optimisons la « beta » !

Il faut l’avouer, le placement de pontages à tout va (il y en a 5), c’est quand même « dégueu »… Et l’absence de PWM pour un des ventilateurs me gêne. N’est-il pas possible de faire mieux ?

Besoin de place : rationaliser le circuit des LED de puissance

Tout d’abord je vais libérer un peu de place. Les LED RGBW de puissance n’existent pas sur le marché, du coup j’ai retiré un MOSFET pour faire de la place. Cela me permet de replacer mes 3 MOSFET au bord des circuits, à coté des borniers.

Identifier la cause des pontages

Les pontages sont dûes à deux sous-ensembles :

  • L’émission DMX : il est nécessaire d’aller chercher une broche derrière le connecteur double rangée
  • Le PWM et le monitoring des ventilateurs : même combat, il faut aller chercher des broches pas forcément accessibles

Se frayer un chemin

J’ai décidé de redessiner toute cette partie là, et j’ai été radical : les broches de communication 14 à 17 ne servent pas. La broche 13 ne sert pas non plus puisqu’elle est affectée à la LED Interne. J’ai donc éliminé les broches 12 à 17, ce qui me permet de faire passer 3 pistes, et notamment les pistes « interrupt » (pour les ventilateurs) et les pistes Serial TX pour le RS485. On élimine les pontages.

Replacer le circuit d’alimentation des ventilateurs

On peut donc placer les connecteurs de ventilateurs de part et d’autres des connecteurs d’alimentation de l’Arduino. Et afin d’amener le 12V indépendamment, j’ai placé le régulateur 5V au plus proche de l’Arduino.

Redessiner le circuit capteur de bass

Avec la place ainsi libérée, on peut refaire le circuit capteur de bass.

Optimisation : connecteur d’extension

Il me restait un peu de place sur le circuit, pourquoi ne pas placer un connecteur d’extension ? C’est chose faite !

Résultat final

Voici le résultat final ! 🙂

Et avec les zones délimitées :

Comme vous voyez, un seul pontage tout petit, à droite du régulateur 5V.

Affectation des broches

Voici l’affectation des broches qui a été retenue :

PINFonctionConnect‚ …BrocheCommentaire
0RXNe pas utiliser-
1TXNe pas utiliser-
2PWM (timer 3)Ventilo 1 Speed3Compatible Interruption
3PWM (timer 3)Ventilo 2 Speed3Compatible Interruption
4PWM (timer 0)
5PWM (timer 3)
6PWM (timer 4)Ventilo 1 PWM4
7PWM (timer 4)Ventilo 2 PWM4
8PWM (timer 4)
9PWM (timer 2)Power LED 1-
10PWM (timer 2)Power LED 3-
11PWM (timer 1)Power LED 2-
12PWM (timer 1)Broche condamn‚e
13PWM + LED (timer 0)LED Interne / Broche condamn‚e
14CommBroche condamn‚e
15CommBroche condamn‚e
16CommBroche condamn‚e
17CommBroche condamn‚e
18CommVers MAX4851Compatible Interruption
19CommVers MAX4854Compatible Interruption
20CommCapteur bass Impulsion-Compatible Interruption
21CommCompatible Interruption
22DigitalDIP Switch6
23Digital
24DigitalDIP Switch5
25DigitalContr“le emission / reception DMX2 et 3
26DigitalDIP Switch4
27DigitalExtension-Servira pour un contr“le ext‚rieur
28DigitalDIP Switch3
29DigitalLED Alarme1
30DigitalDIP Switch2
31DigitalDIP Switch1
32DigitalMoteur Pan1
33DigitalDIP Switch7
34DigitalMoteur Pan3
35DigitalDIP Switch8
36DigitalMoteur Pan2
37DigitalDIP Switch9
38DigitalMoteur Pan4
39DigitalDIP Switch10
40DigitalNon accessible-
41DigitalDIP Switch11
42DigitalLED Status-
43DigitalDIP Switch12
44DigitalLED Bass-
45DigitalNon accessible-
46DigitalDIP Switch14
47DigitalDIP Switch13
48DigitalExtension nRF24L01CSN
49DigitalExtension nRF24L01CE
50DigitalExtension nRF24L01MISOSPI MISO
51DigitalExtension nRF24L01MOSISPI MOSI
52DigitalExtension nRF24L01SCKSPI SCK
53DigitalR‚serveSPI SS
54 (A0)AnalogiqueMoteur Gobo1
55 (A1)AnalogiqueMoteur Color4
56 (A2)AnalogiqueMoteur Gobo3
57 (A3)AnalogiqueMoteur Color2
58 (A4)AnalogiqueMoteur Gobo2
59 (A5)AnalogiqueMoteur Color3
60 (A6)AnalogiqueMoteur Gobo4
61 (A7)AnalogiqueMoteur Color1
62 (A8)AnalogiqueMoteur Tilt1
63 (A9)AnalogiqueNTC1 : Capteur temperature LED avec CTN-
64 (A10)AnalogiqueMoteur Tilt3
65 (A11)AnalogiqueNTC2 : Capteur temperature habitacle avec CTN-
66 (A12)AnalogiqueMoteur Tilt2
67 (A13)AnalogiqueCapteur bass Analogique-
68 (A14)AnalogiqueMoteur Tilt4
69 (A15)Analogique

Nomenclature et référence des composants

D’abord, quelques mots sur les composants retenus :

  • Pour les MOSFET N, j’avais au départ pris des IRF540 mais la tension de 5V délivrée par l’Arduino n’est pas suffisante… Du coup, j’ai découvert au gré des forums que les modèles « IRF » ne sont pas connectables directement à l’Arduino car il faut une tension de 10V. Il vaut mieux privilégier la gamme « IRL » (L = Logic), adressable en 5V. J’ai retenu en définitive des MOSFET de type IRL2206N, mais des IRL540 devraient également faire l’affaire.
  • Le pont de Graetz du redresseur 24V est un GBJ3510. Celui du 12V est repris du circuit d’origine.
  • J’ai placé des résistances de 56 ohms, 1W, pour réguler l’intensité admise sur les ventilateurs, car la tension d’alimentation est aux alentours de 16V au lieu de 12.
  • Des fusibles sont prévus en sortie de chaque redresseur, pour une intensité estimée à 4A en 12V et 6A en 24V.

Voici la nomenclature qui a été retenue :

RefValeurDescriptionRécup sur circuit d'origine
CI1ULN2803ADarlington Transistor Arrays (8)Oui
CI2ULN2803ADarlington Transistor Arrays (8)Oui
CI3LM384Double AOPOui
CI4MAX485Adaptateur RS485 / TTLPossible
REG17805Regulateur 7805Oui
LED1OrangeLED StatutNon
LED2VerteLED BassNon
LED3RougeLED AlarmPossible
T1IRF740Transistor MosfetNon
T2IRF740Transistor MosfetNon
T3IRF740Transistor MosfetNon
BR1?Pont de Graetz Redresseur 12VOui
BR2?Pont de Graetz Redresseur 24VNon
F13.15AFusible de protection circuit 12VNon
F26.3AFusible de protection circuit 24VNon
C13300æF 35VCondensateur Chimique Redresseur 12VNon
C23300æF 35VCondensateur Chimique Redresseur 24VNon
C3220æF ?Condensateur Chimique Regul 5VPossible
C410æF 16VFiltre passe basPossible
C5100nFFiltre microPossible
R156 1WProtection ventiloNon
R256 1WProtection ventiloNon
R347kMise à la masse MosfetNon
R447kMise à la masse MosfetNon
R547kMise à la masse MosfetNon
R6330Protection gate MosfetNon
R7330Protection gate MosfetNon
R8330Protection gate MosfetNon
R9330Protection RX/TX DMXNon
R10330Protection RX/TX DMXNon
R1136kMise à 5V signal DMXNon
R1256Protection signal DMX (masse)Non
R1310Protection signal DMXNon
R1410Protection signal DMXNon
R1536KMise à la masse signal DMXNon
R1610KPull Up Sensor FAN1Non
R1710KPull Up Sensor FAN2Non
R18330LED StatutNon
R19330LED BassNon
R20330LED AlarmNon
R2110KRésistance capteur température 1Non
R2210KRésistance capteur température 2Non
R2310KRésistance MicroNon
R24100KRésistance MicroNon
R251KResistance MicroNon
R261,5KPasse basNon
R276K8Pont diviseur comparateurNon
R283KPont diviseur comparateurNon
R29330Protection selecteur DMX In / outNon
R302,2KPont avec Zener Ventilo 1Non
R312,2KPont avec Zener Ventilo 2Non
NTC1NTC-MF52-103/3435Capteur de température CTNNon
NTC2NTC-MF52-103/3435Capteur de température CTNNon
D1Zener 3V3Protection PWMNon
D2Zener 3V3Protection PWMNon
D31N4148Protection signal analogique négatifNon
MIC-Microphone ElectretOui
POT100KPotentiomètre ou résistance d'étalonageNon
FAN1-Connecteur FAN1 4 brochesNon
FAN2-Connecteur FAN2 4 brochesNon
DMX-Connecteur 3 brochesOui
GOBO-Connecteur PAP 6 brochesOui
COLOR-Connecteur PAP 6 brochesOui
PAN-Connecteur PAP 6 brochesOui
TILT-Connecteur PAP 6 brochesOui
DIPSW110DIP Switch x10Oui
DIPSW24DIP Switch x4Oui
AC12V-Bornier 2 plotsNon
AC24V-Bornier 2 plotsNon
PL1 / POWER-Bornier 4 plotsNon
PL2 / PL3-Bornier 2 plotsNon
ARDUINO-RobotDyn - Mega 2560 PRONon

Annexe : mise à disposition du typon

Je fais le choix de ne pas mettre le typon en téléchargement libre. Si quelqu’un est intéressé par le fruit de mon travail, il peut me contacter directement 😉

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *