Formation PUB410 : Faire tourner un moteur sur un Raspberry Pi à l'aide d'une page Web, 2019 Application Flask

4.2 Application Flask pour faire bouger un moteur


Avec Flask, faire tourner un moteur branché sur un Raspberry Pi à partir d'une page Web n'est pas beaucoup plus difficile que d'afficher « Hello World » dans cette même page Web. Il suffit d'avoir les bonnes bibliothèques installées.

Pour les branchements, référez-vous à l'article Bibliothèques pour faire tourner un moteur branché à une carte Adafruit.

Pour le code, vous allez débuter avec le gabarit développé pour votre première application avec Flask.

Sur votre Raspberry Pi, créez un dossier pour votre projet puis placez-vous dans ce dossier.

Terminal

mkdir ~/premiermoteur

cd ~/premiermoteur

Créez maintenant l'environnement virtuel pour votre projet. On veut un projet Python 3.

Terminal

virtualenv -p /usr/bin/python3 env

Puis activez l'environnement virtuel.

Terminal

source env/bin/activate

Installez Flask dans l'environnement virtuel.

Terminal

pip install flask

Il vous manque, pour que l'application Flask puisse faire tourner le moteur, l'installation d'une bibliothèque pour la carte Adafruit.

Terminal

pip install adafruit_PCA9685

Créez maintenant le fichier main.py dans votre projet et copiez-y le code suivant :

Python

from flask import Flask

import Adafruit_PCA9685

import time


app = Flask(__name__)

@app.route("/")
def demarrer():

    // code inspiré de https://github.com/adafruit/Adafruit_Python_PCA9685/blob/master/examples/simpletest.py

    pwm = AdaFruit_PCA9685.PCA9685()

    servo_min = 150 # Min pulse length out of 4096
    servo_max = 600 # Max pulse length out of 4096

 

    # Set frequency to 60hz, good for servos.
    pwm.set_pwm_freq(60)

 

    # Move servo on channel O between extremes.
    pwm.set_pwm(0, 0, servo_min)
    time.sleep(1)
    pwm.set_pwm(0, 0, servo_max)
    time.sleep(1)

    
    return "Terminé !"

if __name__ == " __main__":
    app.run(host='0.0.0.0')

Dans un navigateur sur votre ordinateur, entrez l'adresse IP de votre Pi suivi de :5000 (ex : http://192.168.0.186:5000) et voyez votre moteur bouger !

 

 

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !
Soumettre