12
Projecteur RVB DMX / RDM avec Arduino Uno NOM : Date : Objectif final : Mettre en œuvre et programmer un shield Arduino afin de réaliser un mini-projecteur compatible DMX . Cela passe par l'analyse et l'utilisation d'une interface de puissance. Compétences visées : Concevoir C3.9 : Valider une fonction à partir d'une maquette réelle : tester la conformité d'une fonction sur un dispositif de prototypage rapide. C3.10 : Élaborer les programmes de la fonction à réaliser Réaliser C4.2 : adapter et configurer un nouveau matériel C4.3 : adapter et configurer une structure logicielle C4.5 : tester et valider un module logiciel et matériel Savoirs visés : Savoir Description S4.2. Algorithmique Structures fondamentales : enchaînements, alternatives, itérations, etc. Représentation graphique (organigrammes) S4.4. Programmation procédurale Manipulations de données en langage C Transcription d’algorithmes en langage C S5.2. Traitement logiciel des E/S Caractéristiques TOR S8.1 Instruments de mesure Oscilloscope Analyseurs logiques Moyens : Ordinateur Windows + logiciel Arduino + logiciel QLC+ Interface USB/DMX Arduino Uno + cordon USB alim./prog. + shield DMX RDM + librairies Conceptinetics Câble XLR3 Alimentation régulée ajustable Câble compatible avec les panneaux de LED Led bicolore + fils de liaison Panneau de LED Dune. 2 Panneaux de LED didactisés avec connectiques différentes. Shield interface de puissance pour panneau de LED. Bloc secteur pour interface de puissance. Conditions : Travail en binôme. Durée : 2 séances de 4H Compte rendu à la fin de la séance. Prérequis : Avoir travaillé sur carte Arduino. Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 1/12

Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

  • Upload
    others

  • View
    13

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

NOM : Date :

Objectif final : Mettre en œuvre et programmer un shield Arduino afin de réaliser un mini-projecteurcompatible DMX . Cela passe par l'analyse et l'utilisation d'une interface de puissance.

Compétences visées :Concevoir C3.9 : Valider une fonction à partir d'une maquette réelle : tester la conformité d'une fonction

sur un dispositif de prototypage rapide.C3.10 : Élaborer les programmes de la fonction à réaliser

Réaliser C4.2 : adapter et configurer un nouveau matériel C4.3 : adapter et configurer une structure logicielleC4.5 : tester et valider un module logiciel et matériel

Savoirs visés :Savoir Description

S4.2. Algorithmique Structures fondamentales : enchaînements, alternatives, itérations, etc.Représentation graphique (organigrammes)

S4.4. Programmation procédurale Manipulations de données en langage C

Transcription d’algorithmes en langage C

S5.2. Traitement logiciel des E/S Caractéristiques TOR

S8.1 Instruments de mesure OscilloscopeAnalyseurs logiques

Moyens : – Ordinateur Windows + logiciel Arduino +

logiciel QLC+– Interface USB/DMX – Arduino Uno + cordon USB alim./prog. + shield

DMX RDM + librairies Conceptinetics – Câble XLR3 – Alimentation régulée ajustable – Câble compatible avec les panneaux de LED

– Led bicolore + fils de liaison – Panneau de LED Dune.– 2 Panneaux de LED didactisés avec connectiques

différentes.– Shield interface de puissance pour panneau de

LED.– Bloc secteur pour interface de puissance.

Conditions : – Travail en binôme.– Durée : 2 séances de 4H– Compte rendu à la fin de la séance.

Prérequis : – Avoir travaillé sur carte Arduino.

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 1/12

Page 2: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

I. Mise en situationOn souhaite dans un premier temps faire évoluer une carte Arduino Uno en récepteur DMX en lui ajoutant un shield DMX/RDM.

Puis on souhaite transformer ce récepteur en projecteur RVB en lui associant différents types de panneaux de LEDs, et en ajoutant une configuration manuelle de son adresse DMX

Toutes les documentations nécessaires à la réalisation de ce mini-projet figurent sur le site du BTS SN, il estindispensable de les consulter pour mener à bien toutes les activités.

Sur l'ordinateur il faudra travailler en se connectant sur son compte personnel.

II. Faire évoluer une carte Arduino en récepteur DMX / RDM.Analyse

1. Sur le site, consulter les informations concernant le shield d'adaptation DMX/RDM.

Dans cette première partie du mini-projet seule le mode récepteur DMX (DMX Slave) fera l'objet de l'étude.

Analyser le programme et les commentaires du fichier « DMX Slave » qui figure sur l'ANNEXE 1 pour répondre aux questions qui suivent.

2. Une fois la carte programmée avec ce programme quelle sera par défaut l'adresse DMX de la carte Arduino ?

3. Quelle sortie de la carte Arduino sera activée à cette adresse DMX ? →

4. Comment réagira la sortie en fonction de la valeur DMX récupérée ?

5. Combien de canaux seront réservés pour ce récepteur DMX ? →

Mise en œuvre

6. Dans votre espace mémoire personnel créer un sous-répertoire de travail, exemple :TP_Arduino_DMX_RDM.

7. Télécharger depuis le site la librairie : Conceptinetics.

8. Lancer le logiciel Arduino et suivre la méthode indiquée sur le site permettant d'importer la librairie Conceptinetics et ses exemples dans votre espace de travail personnel.

9. Ouvrir le programme « DMX_Slave », puis le sauvegarder sous un autre nom dans la perspective des modifications à venir. Pour pourrez aussi par la suite créer un nouveau fichier pour chaque version.

10. La notice accompagnant le shield DMX/RDM figure sur le site. Le mode d'utilisation du shield étant« DMX Slave » compléter ci-dessous (colonne de gauche) la position que devront avoir les 4cavaliers du shield lors de la programmation de la carte Arduino. Puis faire de même (colonne dedroite) pour configurer l'utilisation de l'ensemble Arduino + shield sur l'installation DMX.

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 2/12

Page 3: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

Arduino en modeprogrammation

Arduino en mode utilisationSlave DMX

Cavalier 1 (EN ou /EN)

Cavalier 2 (Slave ou DE)

Cavalier 3 (TX-io ou TX-uart)

Cavalier 4 (RX-io ou RX-uart)

11. Assembler la carte Arduino et le shield.

12. Programmer la carte Arduino.

13. Câbler une LED sur la sortie pilotée par la trame DMX (voir photo sur le site).

14. Piloter l'ensemble avec le logiciel QLC+ et une interface USB/DMX et vérifier le bon fonctionnement. Le petit interrupteur fourni permet de basculer facilement en mode programmation ou DMX.

15. Modifier le programme pour que l'adresse DMX du récepteur passe à 7.

16. Modifier le programme pour que la sortie 8 de la carte Arduino soit utilisée à la place de la précédente.

17. Le composant mis à votre disposition contenant en fait 2 LED, modifier le programme pour que :

• la LED rouge s'allume à l'adresse 7 pour une valeur supérieure à 100,

• la LED verte pour une valeur inférieure à 200 à l'adresse 10.

Voir la vidéo sur le site dans le menu : Résultats attendus.

Faire constater le bon fonctionnement, avant d'imprimer la partie utile du programme à remettre en fin de TP

III. La carte Aduino peut-elle piloter directement les différents panneaux de LEDs ?

On souhaite piloter 3 structures à LEDs à partir de l'association précédente :

• Le panneau de LEDs d'un projecteur DUNE RVB (schéma : ANNEXE 2).

• La version didactisée de ce panneau de LEDs (schéma : ANNEXE 3).

• Une LED RGB haute luminosité (documentation sur le site).

18. Quelle est l'amplitude de la tension qui doit alimenter les structures ? →

19. Les panneaux de LEDs sont-il à anode ou cathode commune ? →

Évaluation expérimentale de la consommation des LEDs du panneau didactisé.

Vous disposez du panneau didactisé, d'une alimentation régulée ajustable, d'un cordon d'adaptation.

20. Rédiger une procédure permettant de mesurer l'intensité consommée par les LEDs rouge sur ce panneau. Faire valider votre méthode par le professeur avant toute mise en œuvre.

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 3/12

Page 4: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

21. Mettre en œuvre cette méthode pour chacune des 3 couleurs.

→ Intensité des LEDs rouges du panneau didactisé =

→ Intensité des LEDs vertes du panneau didactisé =

→ Intensité des LEDs bleues du panneau didactisé =

22. Mettre en œuvre cette méthode sur le panneau du projecteur DUNE RVB

→ Intensité des LEDs rouges du panneau DUNE =

→ Intensité des LEDs vertes du panneau DUNE =

→ Intensité des LEDs bleues du panneau DUNE =

Faites constater vos mesures

23. Analyser la documentation de la LED haute luminosité pour en extraire les valeurs théoriques suivantes :

→ Intensité nominale consommée par la LED rouge =

→ Intensité nominale consommée par la LED verte =

→ Intensité nominale consommée par la LED bleue =

Intensités en sortie de la carte Arduino Uno.

24. Quel est le modèle de microcontrôleur qui équipe la carte Arduino Uno R3 mise à disposition ?

25. Quelle est l'intensité qui peut être fournie ou absorbée par les sorties logiques de ce circuit ? Préciserla page de la documentation du microcontrôleur qui indique cette valeur.

Conclusion

26. La carte Arduino peut-elle piloter directement les structures à LED dans les 3 cas proposés ?

Analyse d'une structure d'adaptation en puissance.

Le schéma de la structure retenue figure en ANNEXE 4, elle repose sur des transistors utilisés en commutation (fonctionnement en tout ou rien : TOR).

27. Entourer sur le schéma la connectique de liaison avec la carte Arduino et le shield DMX/RDM.

28. Quelle est la référence des transistors qui vont servir d'interfaces de puissance ? →

29. Consulter la documentation des transistors pour justifier qu'ils peuvent supporter l'intensité ainsi que la tension d'alimentation dans les 3 cas proposés.

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 4/12

Page 5: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

30. Quelle est la technologie des transistors utilisés ? →

31. Donner le nom (numéro) des sorties de la carte Arduino qui vont être utilisées pour piloter les transistors ? De quel type sont ces sorties ?

32. Quel sera le rôle du « Dip switch » pour le futur projecteur ?

Faites constater votre analyse

IV. Programmation de la carte Arduino pour commander l'interface de puissance.33. Sauvegarder votre version antérieure du programme sous un autre nom en prévision des

modifications à venir.

On souhaite que les sorties qui pilotent les LED soient commandées en PWM à partir des valeurs véhiculées par le signal DMX. Des informations figurent sur le site pour rappeler le principe de la commande PWM.

34. Dans l'IDE Arduino (Integrated Development Environment), consulter la documentation du langagede programmation de la carte (menu : aide → référence) et indiquer quelle type de sortie et quellefonction (instruction) il faut utiliser pour effectuer une commande en PWM. Quelle est la fréquencede cette PWM et la plage de valeurs du rapport cyclique, cette dernière est-elle directementcompatible avec les données DMX ?

35. Modifier le programme pour piloter les 3 couleurs à partir des sorties de la carte Arduino utiliséespar l'interface de puissance. Voir vidéo sur le site.

36. Visualiser les signaux avec un oscilloscope ou un analyseur logique (LogicPort ou Saleae). Vérifierles informations sur la fréquence du signal.

37. Vérifier le bon fonctionnement en pilotant l'ensemble avec une console DMX. La carte Arduinodevra fonctionner de façon autonome (si elle est connectée sur le PC ce sera uniquement pour sonalimentation).

Faire constater le bon fonctionnement, avant d'imprimer la partie utile du programme à remettre en fin de TP

38. Dessiner sur une feuille libre l'organigramme du programme réalisé et le joindre au compte-rendu.

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 5/12

Page 6: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

V. Configurer l'adresse DMX par DIP switch.On souhaite pouvoir à tout moment modifier l'adresse DMX du projecteur.

Capture de la valeur des interrupteurs

39. Récupérer sur le site le projet « DMX_Slave_DIP_Switch.ino » et le copier dans votre espace de travail. L'ouvrir et le sauvegarder sous « votre_nom_dip_switch.ino ». Le Document Annexe 5 est une version papier de ce fichier.

Le DIP switch devra être disposé dans le sens indiqué sur la photo figurant sur le site. L'interrupteur 1 aura de poids faible et le 6 le poids fort.

40. Compléter le programme pour faire l'acquisition des 6 niveaux logiques du DIP switch, et les convertir en leur équivalent décimal qui sera stocké dans la variable « Adresse_DMX ».

Attention pour la question suivante il ne faudra pas mettre le shield DMX/RDM en mode Enable.

41. Tester le programme. Visualiser dans le moniteur série si les valeurs entrées sur le DIP switch sont convenablement interprétées. L'utilisation du moniteur permettra de débugger le programme. Une vidéo (Vidéo N°1) du résultat attendu figure sur le site.

Faites constater le bon fonctionnement

42. Reprenez votre projet de la partie 1 du mini projet et sauvegardez-le sous un autre nom : votre_nom_proj_dip.ino

43. Modifiez le programme pour qu'il intègre l'acquisition de l'adresse DMX.

Une modification de l'adresse devra tout de suite être prise en compte.

Une adresse valant 0 devra provoquer l'extinction de toutes les LED du projecteur.

Une vidéo (Vidéo N°2) du résultat attendu figure sur le site.

Faites constater le bon fonctionnement

44. Imprimer votre programme et le joindre à votre compte-rendu.

45. Imaginons un appareil tel qu'une lyre.

• Celle-ci est-elle configurée avec un DIP switch ? →

• La valeur du réglage est-elle perdue lors de la mise hors tension ? →

• Comment est sauvegardée l'adresse sur ce type d'appareil ? →

VI. Ajout d'un canal dimmer/strobe au projecteur.On souhaite rajouter un canal au projecteur.

Pour cela le but est de s'inspirer d'un vrai projecteur RVB Dune dont la documentation figure sur le site.

Mesures

46. Piloter le projecteur Dune à partir d'une console logicielle QLC+. Quel est le canal de la commande

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 6/12

Page 7: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

Dimmer/Strobe ? →

47. Pour quelle plage de valeurs de la commande Dimmer/Strobe le projecteur clignote-t-il ? →

Pour simplifier la modélisation considérons que :

- lorsque le projecteur clignote la durée des éclats de lumière est de 35ms, quelle que soit la valeur de Dimmer/Strobe.

- pour Dimmer/Strobe = 0 la période de clignotement est de 55 ms

- pour Dimmer/Strobe = 125 la période de clignotement est de 2,5sec.

48. Lorsque le projecteur est en mode clignotement, pour chaque incrément Dimmer/Strobe calculer la variation sur la durée d'extinction. Cette valeur est la même pour chaque incrément. Les calculs seront arrondis à la milliseconde près.

49. Dans le mode clignotement calculer la durée d'extinction (qui sera appelée D_Ext) en fonction de la valeur de Dimmer/Strobe (qui sera appelée DS). La durée sera exprimée en ms.

Mise en œuvre

50. Reprenez votre projet de la partie précédente (portant sur l'acquisition de l'adresse DMX) etsauvegardez-le sous un autre nom : votre_nom_proj_dip_DS.ino.

51. Modifier ce projet pour :

• ajouter un canal,

• obtenir un clignotement intégrant les calculs précédents,

• dans la plage de valeurs de Dimmer/Strobe qui ne font pas clignoter le projecteur, vous ferezen sorte que l'affichage soit uniquement commandé par les canaux RVB (même si ce n'estpas rigoureusement le cas pour le projecteur Dune).

• les variables DS et D_Ext seront de type entier.

Une vidéo (Vidéo N°3) du résultat attendu figure sur le site.

Faites constater le bon fonctionnement

52. Utiliser un oscilloscope pour vérifier que les durées obtenues sont bien celles souhaitées pourDimmer/Stobe = 0 et pour le clignotement le plus lent. Ces chronogrammes devront figurer dansvotre compte-rendu.

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 7/12

Page 8: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Document ANNEXE 1 : Programme DMX_Slave.ino

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 8/12

/* DMX_Slave.ino - Example code for using the Conceptinetics DMX library Copyright (c) 2013 W.A. van der Meeren <[email protected]>. All right reserved.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA*/

#include <Conceptinetics.h>

//// CTC-DRA-13-1 ISOLATED DMX-RDM SHIELD JUMPER INSTRUCTIONS//// If you are using the above mentioned shield you should // place the RXEN jumper towards G (Ground), This will turn// the shield into read mode without using up an IO pin//// The !EN Jumper should be either placed in the G (GROUND) // position to enable the shield circuitry // OR// if one of the pins is selected the selected pin should be// set to OUTPUT mode and set to LOGIC LOW in order for the // shield to work//

//// The slave device will use a block of 10 channels counting from// its start address.//// If the start address is for example 56, then the channels kept// by the dmx_slave object is channel 56-66//

#define DMX_SLAVE_CHANNELS 10 //// Pin number to change read or write mode on the shield// Uncomment the following line if you choose to control // read and write via a pin//// On the CTC-DRA-13-1 shield this will always be pin 2,// if you are using other shields you should look it up // yourself/////// #define RXEN_PIN 2

// Configure a DMX slave controllerDMX_Slave dmx_slave ( DMX_SLAVE_CHANNELS );

// If you are using an IO pin to control the shields RXEN// the use the following line instead///// DMX_Slave dmx_slave ( DMX_SLAVE_CHANNELS , RXEN_PIN );

const int ledPin = 13;

// the setup routine runs once when you press reset:void setup() { // Enable DMX slave interface and start recording // DMX data dmx_slave.enable (); // Set start address to 1, this is also the default setting // You can change this address at any time during the program dmx_slave.setStartAddress (1); // Set led pin as output pin pinMode ( ledPin, OUTPUT );}

// the loop routine runs over and over again forever:void loop() { // // EXAMPLE DESCRIPTION // // If the first channel comes above 50% the led will switch on // and below 50% the led will be turned off // NOTE: // getChannelValue is relative to the configured startaddress if ( dmx_slave.getChannelValue (1) > 127 ) digitalWrite ( ledPin, HIGH ); else digitalWrite ( ledPin, LOW ); }

Page 9: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Document ANNEXE 2 : Schéma structurel du projecteur RVB DMX DUNE

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 9/12

C12200uF

VI1

VO3

GN

D2

U178L05

C247uF

XTAL2 4

RST 1

P1.012

P1.113

P1.214

P1.315

P1.416

P1.517

P1.618

P1.719

P3.2/INT06

P3.3/INT17

P3.4/T08

P3.5/T19

P3.0/RXD2

P3.1/TXD3

P3.711

XTAL15

U2

STC12C1052

C330pF

C430pF

C510u

GND

+5V

+5V

D1LED Rouge

D2LED Rouge

D3LED Rouge

D4LED Rouge

R2220R

VN-REG = 12,5V

X1

16MHz

VCC

11 Structuresidentiques

D5LED Verte

D6LED Verte

D7LED Verte

R3200R

7 Structuresidentiques

VN-REG = 12,5V VN-REG = 12,5V VN-REG = 12,5V

D8LED Bleue

D9LED Bleue

D10LED Bleue

R4200R

7 Structuresidentiques

Tensionsecteur

3

2 1

J1DMX IN

3

1 2

J2DMX OUT

VN-REG

FU1

1A 250V

12

J5

BORNIER2V

1

2

1

1

2

6

1

47

EN13

EN22

U3

SN75176

+5V

ON12345678

2019181716151413

910

1211

SW1

SW-DIP10

D1

1N4004

D41N4004

TR2

10VA 12V 0V 12V

R11K

R21K

QB2SC1815

R31K

R41K

R51K

QG2SC1815

VN-REG

QR2SC1815

VN-REG

Adresse Bit 0 / Rouge LSB

Adresse Bit 2 / Rouge MSBAdresse Bit 3 / Bleu LSB

Adresse Bit 5 / Bleu MSBAdresse Bit 6 / Vert LSBAdresse Bit 7 / Vert MSB

Adresse Bit 1 / Rouge

Adresse Bit 4 / Bleu

AutoDMX

Panneau de LED

Page 10: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Document ANNEXE 3 : Schéma structurel du projecteur didactisé

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 10/12

V-N-reg

OSC2

V-N-reg

OSC1

9_12V

V-N-reg

V-N-reg

VI1 VO 3

GN

D2

U1 7805

R1820

D1

1N4007

VCC

C410u

C2

100n

C1

100n

D2

LED_3MM

1

J2

9_12V

1

J1

0V

J4

0V

J5

5V

321

J3

JACK ALIM

C3

100u

J7PIN

123456

J6

RJ12 6/6

R3 10k

GND

C622p

C722p

X1 20MHz

R2 1M

1

2

1

1

2

6

1

47

EN22EN1

3 U3

SN75176

VCC

VCC

J10PIN

VCC

GND

C5100n

C8100n

ON12345678

2019181716151413

910

1211

SW1

INTER_DIL_10

VSS

RA4/T0CLKI/C1OUT6

RA5/AN4/SS/HLVDIN/C2OUT7

RA6/OSC2/CLKO10

RB0/AN12/INT0/FLT021

RB1/AN10/INT1 22RB2/AN8/INT2

23RB3/AN9/CCP2 24RB4/AN11/KBI0

25RB5/KBI1/PGM 26RC0/T1OSO/T13CKI11

RC1/T1OSI/CCP212

RC2/CCP113

RC3/SCK/SCL14

RC4/SDI/SDA15

RC5/SDO16

RC6/TX/CK17

RC7/RX/DT18

RE3/MCLR/VPP1

RB6//KBI2/PGC27

RB7/KBI3/PGD 28

VDD

20

VSS

8/19

RA7/OSC1/CLKI9

RA0/AN0/C1IN-2

RA1/AN1/C2IN-3

RA2/AN2/C2IN+/VREF-/CVREF4

RA3/AN3/C1IN+/VREF+5

U2

PIC18F2520

2 3 4 5 6 7 8 91 10 11

RP1RESPACK-10*4.7K

GND

VCC

R4220k

R5220k

VCC

Rouge

Rouge

VertBleu

Tension 12,5V Non réguléeBleu

Adresse bit 0 / Rouge LSB

Adresse Bit 2 / Rouge MSBAdresse Bit 3 / Bleu LSB

Adresse Bit 5 / Bleu MSBAdresse Bit 6 / Vert LSBAdresse Bit 7 / Vert MSB

Adresse bit 1 / Rouge

Adresse Bit 4 / Bleu

AutoDMX

12345

J11

CONN-H5

3

2 1

J12XLR3M

1

3

2

J13XLR3

J15

PIN

J16

PIN

J17

PIN

J14PIN

J9

PIN

J8PIN

J20PIN

J19PIN

J18PIN

1B1

1C16

2B2 2C 15

3B3

3C14

4B4 4C 13

5B5

5C12

6B6 6C 11

7B7

7C10

COM 9

GND

8

U4ULN2003A

Rouge

Bleu

Tension 12,5V Non régulée

C9100nF

GND

VCC

C10100nF

GND

FU1

Fusible TR5 500mA

D3P6KE18A

Vert

D4LED Rouge

D5LED Rouge

D6LED Rouge

D7LED Rouge

R6220R

5 Structuresidentiques

D8LED Verte

D9LED Verte

D10LED Verte

R7150R

2 Structuresidentiques

D11LED Bleue

D12LED Bleue

D13LED Bleue

R8150R

2 Structuresidentiques

D14LED Bleue

D15LED Bleue

D16LED Bleue

R9150R

D17LED Verte

D18LED Verte

D19LED Verte

R10150R

D20LED Rouge

D21LED Rouge

D22LED Rouge

D23LED Rouge

R11220R

D24LED Rouge

D25LED Rouge

D26LED Rouge

D27LED Rouge

R12220R

D28LED Rouge

D29LED Rouge

D30LED Rouge

D31LED Rouge

R13220R

D32LED Rouge

D33LED Rouge

D34LED Rouge

D35LED Rouge

R14220R

RougeVertBleu

Tension 12,5V Non régulée 12345

J21

CONN-H5

Tension 12,5V Non régulée

Page 11: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Document ANNEXE 4 : Schéma structurel de l'interface de puissance

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 11/12

Page 12: Projecteur RVB DMX / RDM avec Arduino Uno · 2017. 10. 23. · Projecteur RVB DMX / RDM avec Arduino Uno Arduino en mode programmation Arduino en mode utilisation Slave DMX Cavalier

Projecteur RVB DMX / RDM avec Arduino Uno

Document ANNEXE 5 : Projet DMX_Slave_DIP_Switch.ino

Hortolland C. Mini-projet de BTS SN Mini_projet_Projecteur_DMX_RDM_Arduino.odt 12/12

const int ledPin_Rouge = 9;const int ledPin_Vert = 10;const int ledPin_Bleu = 11;

const int Ad1 = ; // A compléterconst int Ad2 = ; // A compléterconst int Ad3 = ; // A compléterconst int Ad4 = ; // A compléterconst int Ad5 = ; // A compléterconst int Ad6 = ; // A compléter

int Adresse_DMX;

// the setup routine runs once when you press reset:void setup() { // Set led pin as output pin pinMode ( ledPin_Rouge, OUTPUT ); pinMode ( ledPin_Vert, OUTPUT ); pinMode ( ledPin_Bleu, OUTPUT ); pinMode ( Ad1, ); // A compléter pinMode ( Ad2, ); // A compléter pinMode ( Ad3, ); // A compléter pinMode ( Ad4, ); // A compléter pinMode ( Ad5, ); // A compléter pinMode ( Ad6, ); // A compléter Serial.begin(9600);}

// the loop routine runs over and over again forever:void loop() { Adresse_DMX= ; //A compléter Serial.print(Adresse_DMX); delay(1000); if (Adresse_DMX!=0) { } else { } }