IMA4 2016/2017 P14

De Wiki d'activités IMA
Révision datée du 24 février 2017 à 15:27 par Croussel (discussion | contributions) (Conception des PCB)

Projet IMA4 : Sex-toy connecté

Présentation du projet

L'objectif de ce projet est de développer un système d'échange entre deux partenaires distants afin de rendre plus facile la vie de couple à distance.

Pour ce faire, le dispositif sera constitué de deux sextoys connectés (un par appareil génital désiré) à leur téléphone portable respectif. Une application mobile permettra aux utilisateurs de s'échanger des données de manière sécurisé, ceci au travers d'un serveur embarqué dans le téléphone portable.

Les données échangées pourront être l'accélération ou la température. Elles seront traitées et transmises au sextoy qui adaptera sa vitesse, son retour vibratoire ou sa position en conséquence.

Les sextoys pourraient être composés de :

  • Pour l'appareil masculin (dédié à la femme) :
  • un servomoteur ;
  • un vibreur ;
  • une sonde de température ;
  • un accéléromètre.
  • Pour l'appareil féminin (dédié à l'homme) :
  • 4 servomoteurs (dans le but de "masser" en déplaçant le silicone);
  • des vibreurs ;
  • un accéléromètre.
  • Pour les deux appareils :
  • un micro-contrôleur (Arduino mini) ;
  • un module de transmission / réception bluetooth afin de se connecter au téléphone ;
  • du silicone.
  • L'application mobile devra :
  • mettre en place une communication cryptée à travers un serveur (embarqué ou bien intermédiaire ?) ;
  • effectuer un échange de données en bluetooth avec le sextoy connecté.
  • L'application mobile pourra :
  • utiliser la vidéo-conférence ;
  • enregistrer les meilleurs moments et enventuellement pouvoir les partager ;
  • effectuer une recherche de partenaire aléatoire.
  • S'il nous reste du temps, il peut être envisageable de :
  • mettre en place un réseau social interne à Polytech.

Liste des tâches

  • Conception de l'appareil masculin (Cédric)
  • mettre en place le bus I2C avec les différents capteurs ;
  • création d'un PCB au format gerber ;
  • création d'un prototype.
  • Conception de l'appareil féminin (Cédric)
  • mettre en place le bus I2C ;
  • traitement des données afin d'en déduire la position et l'entrain de l'utilisateur ;
  • création d'un PCB ;
  • création d'un prototype.
  • Communication bluetooth (Cédric)
  • étudier l'émission/réception vue de l'arduino ;
  • étudier l'émission/réception vue du téléphone ;
  • mise en place du protocole ;
  • test de portée.
  • Développement mobile (Thomas)
  • déterminer la meilleure approche : utilisation d'un serveur intermédiaire ou bien mise en place d'un "client-serveur" dans l'application mobile ;
  • mettre en place le choix retenu ;
  • tester dans un premier temps une transmission de texte ;
  • programmer le traitement de données reçues par bluetooth ;
  • rajouter un côté esthétique à l'application.

Feuille d'heures

Tâche Prélude Heures S1 Heures S2 Heures S3 Heures S4 Heures vacances Heures S5 Heures S6 Heures S7 Heures S8 Heures S9 Heures S10 Total
Définition cahier des charges 2H 2H 1H
Dimensionnement et établissement de la liste de matériel 3H 4H 2H
Établissement de la liste et de la répartition des tâches 1H
Conception de l'appareil masculin 1H 1H 2H
Conception de l'appareil féminin
Liaison bluetooth (embarqué) 3H 1H
Liaison bluetooth (téléphone)
Recherche et discussion autour de la meilleure approche de communication 2H 2H
Synchronisation temporelle des téléphones (par sms) 2H 4H 4H 4H
Transmission de paquets UDP


Conception des sextoys

Introduction

Choix du silicone, rencontre avec Mario Sanz

Le projet nécessite l'utilisation d'une matière souple et non irritante, c'est pourquoi nous avons choisi de nous tourner vers l'utilisation du silicone. Afin de choisir au mieux le produit correspondant à nos besoins, nous avons rencontré Mario Sanz, ingénieur à l'INRIA, qui travail régulièrement avec du silicone.

Ce dernier nous a expliqué les différents points importants sur lesquels nous baser afin de choisir au mieux un produit en accord avec le projet. Ne serait-ce que pour le choix de la dureté, il existe une échelle propre au silicone ("Shore hardness scale"), nous pensions au départ rechercher un silicone le plus mou possible, cependant, il faut savoir que le plus le silicone est mou, plus il a tendance à être "collant". Finalement, après discutions, un shore de 40A (correspondant à la dureté d'une gomme) suffisamment mince fera l'affaire pour la conception des prototypes.

Il nous a également expliqué que le silicone peut être travaillé à l'aide d'additifs et sous cloche à vide afin d'améliorer le moulage, l'absence de "bulles" sur la surface de la pièce et la souplesse. Nous pouvons cependant travailler sans tout cela car il n'est pas spécialement important, pour notre projet, de rechercher des propriétés physiques homogènes dans tout le sextoy.

Pour ce qui est de la création de moules, nous pourrons les effectuer via imprimante 3D. Il existe un bon nombre de tutoriels sur internet pour s'y référer en cas de soucis.

Création des moules

Conception des PCB

Afin de diminuer un maximum la taille des cartes electroniques, nous utilisons principalement des composants CMS.

La conception des cartes peut-être effectué à l'aide de logicels de CAO tels qu'Altium ou Eagle. Dans notre cas, nous avons utilisé Eagle.

Ce travail consiste à créer une librairie regroupant l'intégralité des composants nécessaires et, ensuite, de créer un schéma du circuit. Une fois le schéma terminé, il ne restera plus qu'à faire le routage et exporter les fichiers au format "Gerber".

Actuellement, nous sommes encore à la conception de la librairie.

Gestion des capteurs et servomoteurs

Introduction

Utilisation des capteurs par IIC

Controle des servomoteurs

Gestion de la communication bluetooth

Introduction

Dans le cadre de notre projet, la communication entre le sextoy et le téléphone se fera à faible portée. C'est pourquoi nous avons considéré comme intéressante l'utilisation de la technologie bluetooth.

La première partie consiste à coder une librairie au niveau de l'arduino. Cette librairie, codée en C, consiste simplement en une lecture / écriture via les broches RX/TX de l'arduino et du module bluetooth.

La seconde partie conssite à coder la partie application mobile qui communiquera avec la arduino.

Une fois que cette transmission sera mise en place, il ne reste plus qu'à expliciter le protocole des paquets transmis.

Arduino

Afin de communiquer à travers le module bluetooth, il faut relier la broche RX de l'arduino à celle TX du module bluetooth et inversement. Pour tester nos codes, nous avons utilisé un module bluetooth HC-06 et l'application Bluetooth Terminal.

Dans la mesure où l'arduino devra traiter l'arrivée asynchrone de messages tout en effectuant le traitement des capteurs, il est intéressant d'effectuer des lectures à l'aide d'interruptions. Pour cela, nous utilisons le vecteur d'interruption USART_RXC_vect qui déclenchera la fonction de lecture d'un paquet à chaque fois qu'un message est reçu.

Actuellement, la librarie est fonctionnelle, il ne reste plus qu'à faire l'utilisation par interruption.

Application mobile

Protocole de transmission