Circuit de bille

Auteur avatarMarguerite | Dernière modification 13/04/2023 par Ludary

Pas encore d'image

c'est un circuit de bille fait avec des bouteilles de plastique et des rouleau de papier toilette. avec un quiz qui fera avancer la bille si on réponds bien au question.
Difficulté
Facile
Durée
2 heure(s)
Catégories
Électronique, Jeux & Loisirs, Recyclage & Upcycling
Coût
0 EUR (€)

Introduction

Pour construire ce circuit il faut les matériaux suivant :


pour le circuit :

  • 7 rouleaux de papier toilettes
  • 11 bouteilles en plastique
  • 2 cartons

Electronique :

  • 1 servo moteur
  • 1 carte ESP 32
  • 3 câbles à double entré
  • un ordinateur
  • un câble USB

Outils :

  • pistolets à colle
  • scotche à double face

Matériaux

Outils

Étape 1 - placements des piliers

placer un carton qui fait entre 10 et 20 cm pour créer de la hauteur puis placer les bouteilles comme sur la photo

Étape 2 - Le code du servomoteur

Pour le code du programme il faut aller sur l'application et copier ce code:

(si vous le souhaiter vous pouvez changer les questions tout en faisant attention à ne pas vous sur où est la bonne réponse)


import machine

import time

# Configuration du port de sortie PWM

servo = machine.PWM(machine.Pin(18), freq=50)

print("Bienvenue dans ce quiz en Python!")

print("Voici les règles de notre jeu.")

print("Placez la bille sur la ligne de départ.")

print("Répondez correctement aux question proposée, en utilisant les lettres a, b, c, d.")

print("Si vous avez répondue bon à toutes les questions vous arriverez à la ligne d arriver,")

print("sinon replacé la bille sur la ligne de départ et recommencer.")

print("Merci, de faire attention au matériel, Bonne chance et Bon jeu.")

score = 0

# Question 1

print("Question 1: combien fait 10cm² en m²?")

print("a) 100")

print("b) 0.001")

print("c) 5000")

print("d) 20")

réponse = input("Votre réponse : ")

if réponse == "b":

    score += 1

    print("Correct!")

else:

    print("Incorrect. La réponse correcte est b) 0.001.")

# Question 2

print("\nCombien en Joule vaut 1 kilowattheure ?")

print("a) 3600000")

print("b) 40000")

print("c) 520")

print("d) 1")

réponse = input("Votre réponse : ")

if réponse == "a":

    score += 1

    print("Correct!")

else:

    print("Incorrect. La réponse correcte est a) 3600000.")

# Question 3

print("\n combien vaut un litre d'eau en kilogramme?")

print("a) 10000 ")

print("b) 20")

print("c) 1")

print("d) 5")

réponse = input("Votre réponse : ")

if réponse == "c":

    score += 1

    print("Correct!")

else:

    print("Incorrect. La réponse correcte est c) 1.")

    # Question 4

print("\ncombien vaut 1 tonne en kilogramme ?")

print("a) 1000")

print("b) 2")

print("c) 10")

print("d) 50000")

réponse = input("Votre réponse : ")

if réponse == "a":

    score += 1

    print("Correct!")

else:

    print("Incorrect. La réponse correcte est a) 1000.")

# Afficher le score final

print("\nVotre score final est de", score, "sur 4.")

# Vérifier le score pour déterminer si la porte peut être ouverte

if score == 4:

    print("Vous avez obtenu un score suffisant pour ouvrir la porte.")

    import time

    import machine

    p4 = machine.Pin(4)

    servo = machine.PWM(p4,freq=50) # duty for servo is between 40 - 115

    while True:

        servo.duty(25) # tourner le servomoteur à 0

        time.sleep(2) # attendre 2s

        servo.duty(125) # tourner le servomoteur à 180°

        time.sleep(2)

    servo.deinit()

else:

    print("Désolé, vous n'avez pas obtenu un score suffisant pour ouvrir la porte.")

Étape 3 - circuit électrique

pour le circuit électrique il est simple il faut connecter un câble de la pin 4 de la carte ESP32 à l'entrée PWM du servomoteur. Puis de la Pin GND à l'entré GND du servomoteur et la dernière est de la pin VIN à l'entrée V+.

Étape 4 - Pour lancer le jeu

vous devez mettre la bille en haut du circuit et lancez le programme sur l'ordinateur

Commentaires

Draft