Projet ICN commun 2016/2017

De Informatique et Création Numérique
Aller à : Navigation, rechercher

Sommaire

Cahier des charges

Plusieurs solutions ont été proposées pour l'apparence de l'horloge :

Les afficheurs LCD à segments sont difficiles à trouver en pièces détachés. Les écrans de taille raisonnable sont relativement onéreux. L'affichage par un disque dur est assez délicat à réaliser et peu informatif. Les élèves se sont repliés sur un affichage par matrices de LEDs. Une matrice pour l'heure, une matrice pour les informations.

La listes de fonctionnalités évoquées suit.

  • affichage de l'heure et de la date ;
  • affichage d'autres fuseaux horaires ;
  • affichage de la température ambiante :
  • affichage de l'intitulé du cours ;
  • sonnerie de début et de fin de cours ;
  • avertissement en cas de niveau sonore trop élevé ;
  • affichage d'un message de bienvenue ;
  • affichage de la météo du jour.

Liste du matériel nécessaire

Voici les informations des différents éléments de l'horloge établies par Noé :

Pour l'instant 151.04euros

Il faudrait peut-être rajouter un récepteur DCF77 pour obtenir l'heure exacte :

matériel pour la prochaine séance:

  • 40 vis en nylon de 3mm de diamètre et environ 1,5 cm de longueur

les vis ne sont pas assez longues pour la plupart et leurs diamètre est trop gros pour certains trous

Il sera également nécessaire d'ajouter un carte son USB à la Raspberry Pi car elle n'en dispose pas (Réf : carte son externe USB 5.1 6.90euros https://www.pearl.fr/article/PX6653/carte-son-externe-usb-5-1)

Apparence de l'horloge

Une première version de l'apparence de l'horloge a été dessinée avec le logiciel sketchup par Célya. A l'aide des dimensions des matrices de LEDs, un dessin vectoriel a été créé pour être utilisé par la découpeuse laser de Polytech'Lille.

Les photos ci-dessous présentent une première maquette en contre-plaqué de test.

La seconde version du fichier pour la découpeuse laser est donnée ci-après.

(thumbnail)
Faces de l'horloge
(thumbnail)
Plexiglass utilisé pour les faces


Réalisations

Quelques étapes de la réalisation de l'horloge par ordre chronologique.

  • travail sur le design de l'horloge en le schématisant sur sketchup ;
  • recherche des différents éléments de l'horloge (prix, fournisseurs, etc) :
  • création du fichier pour découper les plaques de plexiglas avec inkscape ;
  • découpage des plaques de plexiglass au Fabricarium de Polytech'Lille.
  • relier le Raspberry Pi à l'horloge atomique dont l'émetteur est situé à Mainflingen;

Récupération des signaux DCF77

Un grand travail de récupération des signaux DCF77 a été réalisé. Il y avait beaucoup de perturbation pour les ondes DCF dans la salle si bien que nous n'arrivions pas à capter un signal en entier pour avoir l'heure. Nous avons donc décidé d'isoler le Raspberry PI en le mettant devant la salle. Pour pourvoir le contrôler nous l'avons donc connecté à un point d’accès mobile sur lequel nous avons utilisé le SSH depuis un ordinateur dans la salle.trou du cul

La carte DCF77 montrée sur la photo suivante a été utilisée.

Cette carte a été connecté à la Raspberry Pi.

Les logiciels utilisés pour récupérer les signaux DCF77 sont : radioclkd2 (version modifié), ...

Le logiciel radioclkd2 a été récupéré sur Internet [1] et compilé sur la Raspberry Pi. Un script a été écrit pour le lancer correctement après configuration des ports d'entrée/sortie de la Raspberry. Le script est donné ci-après :

 #!/bin/sh
 if [ ! -d /sys/class/gpio/gpio17/ ] ; then
   echo 17 > /sys/class/gpio/export
   echo in > /sys/class/gpio/gpio17/direction
   echo both > /sys/class/gpio/gpio17/edge
 fi
 radioclkd2 -s gpio -v /sys/class/gpio/gpio17/value:-DCD

Pour que le logiciel radioclkd2 puisse communiquer la date et l'heure au logiciel ntp qui s'occupe de la gestion du temps, il faut ajouter les lignes ci-dessous dans le fichier de configuration de ntp, c'est à dire /etc/ntp.conf :

server 127.127.28.0
fudge 127.127.28.0 flag1 1

Ce fichier permet aux deux logiciels de communiquer par mémoire partagée. Pour pouvoir vérifier le bon fonctionnement de la communication utiliser les lignes suivantes :

server 127.127.28.0
fudge 127.127.28.0 flag1 1 flag4 1
statistics clockstats
statsdir /ntpstats/
filegen clockstats file clockstats type day enable

Les statistiques sur la récupération de l'heure par DCF77 sont alors sauvegardés dans le répertoire /var/lib/ntp/ntpstats.

Pour intégrer proprement la carte dans l'horloge un circuit électronique a été réalisé avec le logiciel Fritzing. Le fichier de cette carte est disponible : Media:Dcf77.fzz.

(thumbnail)
Circuit imprimé pour connecter le récepteur DCF77 à la Raspberry Pi

A réaliser

Il reste encore beaucoup de travail à réaliser pour cette horloge.

  • finaliser le montage de l'horloge avec les plaques de plexiglass les plus propres ;
  • réaliser le système d'affichage sur les matrices de LEDs à partir de la Raspberry PI ;
  • passer la raspberry PI en mode point d'accès WiFi pour pour dialoguer avec l'horloge à partir d'un téléphone portable ;
  • faire fonctionner la platine de réception DCF de CONRAD avec une Raspberry PI, voici un schéma décrivant comment utiliser le module, voila un site décrivant comment utiliser le port série d'une Raspberry, voila un autre site décrivant comment utiliser une entrée quelconque d'une Raspberry et enfin ce dernier site montre comment modifier un programme pour synchroniser la date avec une entrée quelconque de la Raspberry ;
  • la Raspberry ne possède pas d'entrée audio, il faut donc trouver une carte son USB reconnue par la Raspberry et expérimenter la capture audio avec cette carte son ;
  • il faut concevoir le dispositif d'accroche pour les haut-parleurs sur la facade avant ;
  • un circuit électronique pour la connexion carte son / haut-parleurs et platine DCF / Raspberry sera certainement nécessaire, utiliser la place prévue à l'origine pour l'Arduino pour la fixer dans l'horloge.

Quelques indications

Pour utiliser les matrices de LEDs avec la Raspberry PI :

  • suivez le tutorial adafruit à partir du chapitre 6, en particulier
  • modifiez le programme pour afficher en boucle les textes qui se trouvent dans un fichier donné.

Pour transformer la Raspberry PI en point d'accès WiFi, il faut :

  • installer le paquetage hostapd, configurer le serveur hostapd en WPA (méthode d'identification) avec un SSID (réseau WiFi) et un mot de passe ;
  • modifier le fichier /etc/network/interfaces pour donner une adresse IP à la Raspberry PI sur son interface WiFi ;
  • installer le paquetage isc-dhcp-server et configurer le serveur dhcpd pour donner des adresses IP aux téléphones portables qui se connecteront sur votre SSID ;
  • installer le paquetage bind9 et configurer le serveur named pour donner un nom facile à retenir à l'horloge.
  • installer les paquetage apache2 et php5 pour pouvoir créer un petit site Web dont les fichiers doivent se trouver dans le répertoire /var/www/html.
Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Outils