Open Lighting Architecture (illumination de noël)

Bonjour à tous,

Avec l’approche des fêtes de noël, nos petits rapsberry sont mis à rude épreuve !
Pour ma part c’est un projet d’illumination de mon jardin a base de raspberry et d’un autre contrôleur ARNET (DMX via ethernet).

Le raspberry sera en charge (j’espère qu’il tiendra le coup) de gérer de vieilles guirlandes ou même des récentes mais qui ne sont que statiques ou clignotent très peu…

Il y’a également des spots (par 36) en dmx qui seront raccordés au raspberry pi via un adapteur usb > DMX512.

Pour piloter les guirlandes fixes je passerais par le biais d’une cartes 8 relais (dans mes stocks) raccordée au pi via le port GPIO.

Open Lighting doit me permettre de piloter le port GPIO du pi via le protocole ARNET qui sera mis en relation avec VIXEN3.

C’est Vixen3 qui sera le chef d’orchestre et qui donnera le ton au raspberry pi… le pi se contentera alors de piloter les guirlandes (8 sorties) et les spots DMX reliés en usb…

Le début de l’armoire électrique…

Un plan vite fait avec Qelectrotech :

J’ai donc démarrer a partir de là : OLA for Raspberry Pi
J’ai ensuite télécharger une image d’OLA (open lighting architecture) sur leur site, j’avais d’abord tenter l’installation via la commande apt-get install OLA de ma raspbian jessie mais cette dernière n’était qu’en version 0.9.1

Le probème de cette version c’est qu’elle ne supporte pas le plugin GPIO qui n’est disponible qu’à partir de la version 0.9.4

J’ai donc du utiliser une carte SD vierge et y installer l’image complète (Raspbian + OLA) à mon grand regret car mon autre distribution de départ comportait déjà d’autre projet comme mes sondes de température et j’aurais apprécié la garder et mesurer les températures extérieures… enfin bref…

Je viens donc tout juste de démarrer mon pi et je viens d’arriver sur l’écran de login…

raspberrypi login : pi
Password: openlighting
Last Login: .....
patati...
patata....
pi@raspberrypi $ 

Bref je suis logué, je vous tiens au courant pour la suite de mes avancées…

bon un p’tit coup de raspi-config pour personnaliser les paramètres et sécuriser un peu le truc :smiley:

Bon après quelques réglage je me connecte donc via l’interface web d’OLA…

http://adresse_ip_raspberry:9090 donne ca :

On remarque donc bien la présence du plugin GPIO

Le fichier de configuration des pins utilisées par OLA se trouve dans le répertoire :

/var/lib/ola/conf/ola-gpio.conf

il suffit alors de taper

sudo nano /var/lib/ola/conf/ola-gpio.conf

Puis on se retrouve avec le fichier que l’on peut editer :

enabled = true
gpio_pins = 
gpio_slot_offset = 1
gpio_turn_off = 127
gpio_trun_on = 128 

D’après ce que je comprend nous pouvons indiquer un numéro de pin, (l’offset je ne sais pas), puis nous avons ensuite les valeur dmx que Vixen devra envoyer au raspberry 127 pour éteindre la pin, et 128 pour allumer la pin…

Il me reste donc plus qu’à tester tout ceci au prochain épisode, en attribuant une pin au paramètre « gpio_pins » puis de voir ce qui se passe… l’état bas etant l’état actif du relais, et l’état haut de la pin étant l’état repos du relais… je ne sais pas ce que donneront les paramètres turn_off et turn_on !

Bref je vous souhaites une bonne nuit, à plus tards pour le prochain épisode…
Bonnes recherches !

Salut,

Bon j’ai finalement installé la dernière version de Raspbian (Stretch).
Ensuite j’ai donc utilisé la commande :

sudo apt-get install ola

ensuite j’ai donc configuré mes pins du gpio avec les outils classiques…

echo 12 > /sys/class/gpio/export
echo 16 > /sys/class/gpio/export
echo 18 > /sys/class/gpio/export
echo 20 > /sys/class/gpio/export
echo 21 > /sys/class/gpio/export
echo 22 > /sys/class/gpio/export
echo 23 > /sys/class/gpio/export
echo 24 > /sys/class/gpio/export
echo 25 > /sys/class/gpio/export

ensuite il faut spécifier la direction du port…

echo out > /sys/class/gpio/gpio12/direction
echo out > /sys/class/gpio/gpio16/direction
echo out > /sys/class/gpio/gpio18/direction
echo out > /sys/class/gpio/gpio20/direction
echo out > /sys/class/gpio/gpio21/direction
echo out > /sys/class/gpio/gpio22/direction
echo out > /sys/class/gpio/gpio23/direction
echo out > /sys/class/gpio/gpio24/direction
echo out > /sys/class/gpio/gpio25/direction

Puis le niveau logique au repos de ma sortie lorsqu’elle est à l’état bas. Comme j’utilise des cartes relais premier prix trouvés sur un site de vente en ligne, ces dernière active le relais si elles ont un niveau bas (0V en entrée)

echo 1 > /sys/class/gpio/gpio12/active_low
echo 1 > /sys/class/gpio/gpio16/active_low
echo 1 > /sys/class/gpio/gpio18/active_low
echo 1 > /sys/class/gpio/gpio20/active_low
echo 1 > /sys/class/gpio/gpio21/active_low
echo 1 > /sys/class/gpio/gpio22/active_low
echo 1 > /sys/class/gpio/gpio23/active_low
echo 1 > /sys/class/gpio/gpio24/active_low
echo 1 > /sys/class/gpio/gpio25/active_low

on peut passer l’état à zéro avec la commande :

echo 0 > sys/class/gpio/gpio12/value 
etc...

si on souhaites que les pins gardent la configuration après un redémarrage du pi il suffit d’éditer le fichier « /etc/rc.local »

sudo nano /etc/rc.local

ensuite dans le fichier :

echo "12" > /sys/class/gpio/export
sleep 2
echo out > /sys/class/gpio/gpio12/direction
...
echo "25" > /sys/class/gpio/export
sleep 2
echo out > /sys/class/gpio/gpio25/direction

# ensuite le niveau logique
echo 1 > /sys/class/gpio/gpio12/active_low
...
echo 25 > /sys/class/gpio/gpio25/active_low
sleep 2

# mise à zéro
echo 0 > /sys/class/gpio/gpio12/value
...
echo 0 > /sys/class/gpio/gpio25/value

exit 0

voilà le fichier rc.local modifié il ne reste plus qu’à le sauvegarder…
il faut ensuite éditer le fichier de configuration de OLA

sudo nano /etc/ola/ola-gpio.conf

enabled = true
gpio_pins = 12,16,8,20,21,22,23,24,25
gpio_slot_offset = 1
gpio_turn_off = 127
gpio_turn_on = 128

« enabled=true » permet d’activer le plugin Gpio dans OLA,
"gpio_pins = " permet de lister les pins utilisés par OLA
« gpio_slot_offset = 1 » défini le canal DMX de départ (ici le 1) on va donc jusqu’à 512
« gpio_turn_off = 127 » est la valeur maxi du canal qui determine l’état bas de la pin (ici de 0 à 127)
« gpio_turn_on = 128 » est la valeur de départ du canal qui passera la pin à l’état haut (de 128 à 512 on active la pin).

A noter que l’on considère que l’état bas sera inversé grace au niveau logique configuré avec active_low dans notre fichier rc.local ! Cela permettra par exemple dans vixen light de dire active le relais N°12 et on pas à se soucier du niveau physique que prendra la pin

allons maintenant du côté de la page d’administration du serveur ola…

http://ip_raspberry:9090

il suffit maintenant d’ajouter un univers, on va dans le menu de gauche on clique sur « Home » (c’est logiquement déjà cette page) puis au centre de la page on clique sur « Add Universe »

Universe id : 1
Universe name : Mon Test

on coche ensuite deux cases :

Avaible ports :

  • E1.31 (DMX over ACN) Input
  • General Purpose I/O Device Pins 18, 23, 24, 25, 12, 16, 20, 21

Voici le détail de mon univers…

Il ne reste plus qu’à configurer Vixen Light pour ajouter notre contrôleur a base du Raspberry Pi puis créer une scène…

Je repasse vous mettre des photos plus tard…

1 « J'aime »