Différences entre versions de « MICROPYTHON-MOD-RGB »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
Ligne 94 : Ligne 94 :
 
Le script {{fname|stress.py}} permet de stresser le contrôleur en modifiant continuellement les couleurs.
 
Le script {{fname|stress.py}} permet de stresser le contrôleur en modifiant continuellement les couleurs.
  
 +
== Exemple avec MOD-RGB ==
 +
 +
<syntaxhighlight lang="python">from machine import I2C, Pin
 +
from time import sleep_ms
 +
from modrgb import MODRGB
 +
 +
i2c = I2C( sda=Pin(2), scl=Pin(4) )
 +
rgb = MODRGB( i2c ) # default address=0x20
 +
 +
# Un code couleur est composé à l'aide
 +
#    d'un tuple (r,g,b)
 +
# Fixer la couleur à rose
 +
rgb.set_rgb( (255, 102, 204) )
 +
sleep_ms( 5000 )
 +
 +
# Une simple suite de couleur
 +
red=(255,0,0)
 +
green=(0,255,0)
 +
blue=(0,0,255)
 +
color_suite = [red,green,blue,(255,255,255)]
 +
for c in color_suite:
 +
    rgb.set_rgb( c )
 +
    sleep_ms( 2000 )
 +
 +
rgb.black()
 +
print( "That's the end folks")</syntaxhighlight>
  
 
== Où acheter ==
 
== Où acheter ==

Version du 17 novembre 2018 à 22:44

Introduction

MOD-RGB est une carte d'interface d'Olimex utilisant le port UEXT.

MICROPYTHON-MOD-RGB.jpg

  • Un FirmWare personnalisé pour bus I2C or DMX
  • 3 canaux avec protection contre sur-courant
  • Courant nominal par canal - 5A
  • LEDs contrôlées par un signal PWM @ 1KHz
  • Entrée Stéréo (jack)
  • Cavalier pour sélection de mode DMX/I2C
  • Cavalier pour alimenter la carte via UEXT
  • Connecteur UEXT

Matériel utilisé

Pour réaliser ce test, nous avons utilisé:

  Description Quantité
ESP8266-EVB
ESP8266-EVB.png
ESP8266 Evaluation Board d'Olimex
disponible ici chez MCHobby
1
MOD-RGB
MOD-RGB.png
Module RGB UEXT (MOD-RGB)
disponible ici chez MCHobby
1
UEXT-SPLITTER
UEXT-SPLITTER.png
Multiplicateur de port UEXT. Permettra de brancher la carte + Interface USB-Serie
disponible ici chez MCHobby
1
USB-SERIE-TTL
USB-SERIE-TTL.png
Un cable console pour pouvoir communiquer avec l'ESP8266
disponible ici chez MCHobby
1

Raccordements

Les raccordements sont effectués comme suit:

MICROPYTHON-RGB-20.jpg

  • La carte MOD-RGB est utilisée avec un ruban LED analogique 12V.
  • Une alimentation 12V est utilisée avec sur la carte MOD-RGB pour alimenter le Ruban LED.
  • Le cavalier DMX_EN doit être ouvert (puisque nous travaillons en I2C).
  • Le cavalier UPWR_E est également ouvert.

Le raccordement du convertisseur USB-Série est identique à celui décrit dans le tutoriel ESP8266-DEV sous MicroPython.

Etant donné que le l'ESP8266-DEV (et donc ESP8266-EVB) ne disposent pas de convertisseur USB-Série, il sera donc nécessaire d'utiliser un câble console (USB-Série-TTL) pour communiquer avec la carte ESP8266.

UEXT-SERIAL-wiring.jpg

Flasher MicroPython

Pour flasher MicroPython sur l'ESP8266-DEV (module ESP8266) qui équipe la carte d'évaluation d'Olimex (ESP8266-EVB), nous vous proposons les lectures suivantes:

Utiliser MicroPython sur ESP8266 nécessite de Flasher le MicroContrôleur avec le Firmware et d'utiliser des outils appropriés pour communiquer avec lui. Vous trouverez ci-dessous une sélection de tutoriel pour vous préparer. Nous recommandons vivement l'usage de RSHell, même si Ampy reste une solution plus simpliste (mais aussi nettement plus limitée).

Charger MicroPython

Tlogo-feather-load-upy.jpg

Apprenez comment charger le Firmware MicroPython sur une carte Pyboard, ESP8266 (Feather, Wemos, NodeMcu), etc.

RShell

Tlogo-micropython-RShell.jpg

Transférez des fichiers et contrôlez votre carte depuis une simple connexion série. ESP8266 compatible.

Ampy

Tlogo-micropython-Debugger.jpg

Outil simplifié de transfert de fichiers et de contrôlez de carte depuis une connexion série. ESP8266 compatible.

 

RShell sur ESP8266

Une petite pointe de rappel pour l'utilisation des ESP8266 avec RShell...

rshell --port /dev/ttyUSB0 --baud 115200 --buffer-size 128 --editor nano

Nous avons également un petit script shell rsheel-esp8266.sh pour faciliter faciliter le démarrage de rshell pour un esp8266.

Bibliothèque modrgb

Avant d'utiliser le script d'exemple, il est nécessaire de transférer la bibliothèque modrgb sur votre carte MicroPython.

La bibliothèque modrgb et sa documentation sont disponibles dans le GitHub esp8266-uPy.

Download-icon.pngTélécharger la bibliothèque ESP8266-uPy

Puis:

  • Copier le fichier modrgb.py sur la carte MicroPython.
  • Copier le fichier rgbfx.py sur la carte MicroPython.
    Ce fichier n'est utile que si pour produire des effets lumineux.

Vous pouvez également transférer le script de test test.py et testfx.py sur la carte MicroPython.

La script testoff.py permet de désactiver rapidement les sorties PWM.

Le script stress.py permet de stresser le contrôleur en modifiant continuellement les couleurs.

Exemple avec MOD-RGB

from machine import I2C, Pin
from time import sleep_ms
from modrgb import MODRGB

i2c = I2C( sda=Pin(2), scl=Pin(4) )
rgb = MODRGB( i2c ) # default address=0x20

# Un code couleur est composé à l'aide 
#    d'un tuple (r,g,b)
# Fixer la couleur à rose 
rgb.set_rgb( (255, 102, 204) )
sleep_ms( 5000 )

# Une simple suite de couleur
red=(255,0,0)
green=(0,255,0)
blue=(0,0,255)
color_suite = [red,green,blue,(255,255,255)]
for c in color_suite:
    rgb.set_rgb( c )
    sleep_ms( 2000 )

rgb.black()
print( "That's the end folks")

Où acheter

https://github.com/mchobby/esp8266-upy/tree/master/modrgb