cielmonprintemps
Table des matières
Ciel mon Printemps
Matériel
Interface
Nous utilisons TouschOSC pour effectuer les réglages. en fonction des lieux. Voici le fichier de configuration pour TouchOSC MK1
Il faut ensuite télécharger TouchOSC Editor sur un ordinateur pour synchroniser avec l'appareil mobile. Attention, il n'y a pas de de version pour Linux.
Streaming
Code
Code Arduino station météo
#include <WiFiS3.h> #include "arduino_secrets.h" #define anemometre A2 #define PI_4 0.78539816339 #define PI_2 1.5707963267948966192313216916398 #define PI3_4 2.35619449019 #define PI 3.1415926535897932384626433832795 #define PI5_4 3.92699081699 #define PI3_2 4.71238898038 #define PI7_4 5.49778714378 int status = WL_IDLE_STATUS; // Le nom du réseau et le mot de passe sont stockés dans le fichier arduino_secrets.h char ssid[] = SECRET_SSID; char pass[] = SECRET_PASS; WiFiUDP Udp; // Définition de l'adresse IP et du port de destination IPAddress serveurIp(192, 168, 1, 159); // 192.168.1.159 unsigned int serveurPort = 7000; // définition du port local unsigned int localPort = 7001; unsigned long temps; bool etat = false; bool etat2 = false; void setup() { Serial.begin(9600); // Vérification de la présence du module WiFi if (WiFi.status() == WL_NO_MODULE) { Serial.println("La communication avec le module WiFi a échouée!"); // Arrêt while (true) ; } String fv = WiFi.firmwareVersion(); if (fv < WIFI_FIRMWARE_LATEST_VERSION) { Serial.println("Mettez à jour le firmware"); } // Tentative de connexionau réseau WiFi while (status != WL_CONNECTED) { Serial.print("Tentative de connexion au SSID: "); Serial.println(ssid); status = WiFi.begin(ssid, pass); // Attente de 10s pour la connexion delay(10000); } Serial.println("Connecté au WiFi"); affichageStutWiFi(); Serial.println("\nConnexion au serveur..."); // Démarre la liaison UDP Udp.begin(localPort); // Intialisation des ports de la station météo pinMode(anemometre, INPUT); // Anémomètre pinMode(13, OUTPUT); temps = millis(); } void loop() { if ((digitalRead(anemometre) == HIGH) && (etat == false) && (etat2 == false)) { etat = true; etat2 = true; int duree = millis() - temps; float vitesse = 10.0 / duree; float angle; switch (analogRead(A1) / 100) { case 0: angle = 0.0; // break; case 1: angle = PI_4; // break; case 2: angle = PI_2; // break; case 4: angle = PI7_4; // break; case 6: angle = PI3_4; // break; case 7: angle = PI3_2; // break; case 8: angle = PI5_4; // break; case 9: angle = PI; // break; } envoyeDonnees(vitesse * cos(angle), vitesse * sin(angle), serveurIp, serveurPort); temps = millis(); } if ((digitalRead(anemometre) == HIGH) && (etat == false) && (etat2 == true)) { etat2 = false; etat = true; } if (digitalRead(anemometre) == LOW) { etat = false; } } void envoyeDonnees(float x, float y, IPAddress serveurIp, unsigned int ServeurPort) { // Formaqtion du message OSC uint8_t message[] = { 0x2F, 0x76, 0x65, 0x6E, 0x74, 0x00, 0x00, 0x00, 0x2C, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; uint8_t xTab[4]; uint8_t yTab[4]; memcpy(&xTab, &x, 4); memcpy(&yTab, &y, 4); for (int j = 0; j < 4; j++) { memcpy(&message[12 + j], &xTab[3 - j], 1); memcpy(&message[16 + j], &yTab[3 - j], 1); } // Envoie du message par UDP Udp.beginPacket(serveurIp, ServeurPort); Udp.write(message, 20); Udp.endPacket(); } void affichageStutWiFi() { // Affiche le SSID du réseau Serial.print("SSID: "); Serial.println(WiFi.SSID()); // Affiche l'adresse IP de la carte IPAddress ip = WiFi.localIP(); Serial.print("Adresse IP: "); Serial.println(ip); // Affiche la force du signal reçu long rssi = WiFi.RSSI(); Serial.print("force du signal (RSSI):"); Serial.print(rssi); Serial.println(" dBm"); }
Archive projet
Code teteDeTurc
Code pour la prise de photos pour les festivaliers.
Code cielMonPrintemps
Programme principal de l'installation.
Liens pour le code
Bluetooth bluetooth en Python]]
Droidcam
Application qui permet de transformer son téléphone en caméra sans fil vue comme une webcam
Lancer l'application via ADB en wifi
FP3:/ # monkey -p com.dev47apps.droidcam -v 1 FP3:/ # ps -A |grep cam u0_a156 31680 762 32171960 197348 SyS_epoll_wait 0 S com.dev47apps.droidcam FP3:/ # kill 31680
cielmonprintemps.txt · Dernière modification : 2024/04/27 08:40 de Mushussu