Cette page fournit une interface de navigation pour trouver toutes les valeurs d’une propriété et une page donnée. D’autres interfaces de recherche disponibles incluent la recherche de propriété et le constructeur de requête « ask ».
Liste de résultats
Après avoir exploré plusieurs options, nou … Après avoir exploré plusieurs options, nous avons choisi un jeu de données dédié aux transports en commun, car il concerne l'ensemble des usagers. Ce jeu de données offre des informations détaillées sur la fréquence, les horaires, les retards et la position en temps réel des bus, tramways et navettes. temps réel des bus, tramways et navettes. +
Ensuite il a fallu déterminer la forme et … Ensuite il a fallu déterminer la forme et le design de l'appareil. Nous avons commencé par esquisser plusieurs croquis. Une fois les options sélectionnées, nous avons procédé à la modélisation 3D de l'appareil, permettant d'évaluer ses dimensions et une visualisation clair de l'objet final. une visualisation clair de l'objet final. +
Pour réaliser notre conception, nous avons … Pour réaliser notre conception, nous avons utilisé un décapeur thermique afin de façonner certaines parties du boîtier et une découpe laser pour obtenir des formes précises dans les matériaux choisis. En raison des contraintes de temps, nous avons opté pour un assemblage rapide en utilisant de la colle afin de fixer les différentes pièces ensemble. de fixer les différentes pièces ensemble. +
import network
import time
import urequest … import network</br>import time</br>import urequests as requests</br>import machine</br>import neopixel</br></br># Configuration du WiFi</br>SSID = 'OnePlus 9'</br>PASSWORD = '123456789'</br></br># Configuration du bandeau LED</br>LED_PIN = 6 # Pin GPIO pour le bandeau LED</br>NUMPIXELS = 15 # Nombre de LEDs sur le bandeau</br>np = neopixel.NeoPixel(machine.Pin(LED_PIN), NUMPIXELS) # Initialisation du bandeau LED</br></br># Fonction pour se connecter au WiFi</br>def connect_to_wifi():</br> wlan = network.WLAN(network.STA_IF)</br> wlan.active(True)</br> if not wlan.isconnected():</br> print(f"Try connect to SSID : {SSID}")</br> wlan.connect(SSID, PASSWORD)</br></br> while not wlan.isconnected():</br> print('.', end=" ")</br> time.sleep_ms(500)</br> print("\nConnected to WiFi!")</br></br># Fonction pour obtenir le temps actuel et le temps du prochain bus via l'API</br>def get_bus_time():</br> try:</br> # Requête pour obtenir le prochain passage de bus</br> nextbus = requests.get('https://lb.enzopb.me/api.php').text</br> # Requête pour obtenir l'heure actuelle</br> actualtime = requests.get('https://lb.enzopb.me/time.php').text</br> </br> # Convertir les temps en entiers (secondes depuis epoch)</br> nextbus_time = int(nextbus)</br> current_time = int(actualtime)</br> </br> # Calculer la différence en secondes (ajustée par un décalage de 7200 secondes)</br> time_remaining = nextbus_time - current_time - 7200</br> </br> print(f"Prochain bus dans {time_remaining} secondes.")</br> return time_remaining</br> except Exception as e:</br> print(f"Erreur lors de la requête API : {e}")</br> return None</br></br># Fonction pour afficher les LEDs en fonction du temps restant</br>def afficher_leds(time_remaining):</br> for i in range(NUMPIXELS):</br> if time_remaining >= (i * 60):</br> intensity = map_value(time_remaining - (i * 60), 0, 60, 0, 255)</br> color = get_color(i, intensity) # Obtenir la couleur de la LED</br> </br> np[i] = color # Appliquer la couleur à la LED i</br> else:</br> np[i] = (0, 0, 0) # Éteindre la LED</br> np.write() # Mettre à jour le bandeau LED</br></br># Fonction pour définir la couleur d'une LED en fonction de son index</br>def get_color(led_index, intensity):</br> if 10 <= led_index <= 14:</br> return (0, intensity, 0) # Vert</br> elif 5 <= led_index <= 9:</br> return (intensity, intensity, 0) # Jaune</br> else:</br> return (intensity, 0, 0) # Rouge</br></br># Fonction pour mapper une valeur (MicroPython n'a pas de fonction map native)</br>def map_value(x, in_min, in_max, out_min, out_max):</br> return (x - in_min) * (out_max - out_min) // (in_max - in_min) + out_min</br></br># Boucle principale</br>def main_loop():</br> while True:</br> time_remaining = get_bus_time()</br> </br> if time_remaining is not None:</br> afficher_leds(time_remaining)</br> else:</br> print("Erreur lors de la récupération des données de temps.")</br> </br> time.sleep(15) # Attendre 15 secondes avant de rafraîchir</br></br># Programme principal</br>if __name__ == "__main__":</br> connect_to_wifi()</br> main_loop()me__ == "__main__":
connect_to_wifi()
main_loop()
×
Erreur de saisie dans le nom du tutoriel
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #
Se connecter
Pas encore enregistré ? Créez un compte pour profiter de toutes les fonctionnalités du service !