DigitalSpirit / Blog

RaspiO'Mix ou GrovePi ?

On m'a demandé par courriel quelles étaient les différences entre le RaspiO'Mix et la carte GrovePi et j'ai pensé qu'il serait intéressant d'en faire un article...et je vais tâcher de faire un effort pour rester objectif, promis !

raspiomixvsgrovepi.png

Tout comme RaspiO'Mix, GrovePi vous permet de connecter vos modules Grove à votre Raspberry, même finalité mais choix technique différent : là ou RaspiO'Mix utilise directement les entrées / sorties du Raspberry, GrovePi utilise en fait un ATMega jouant le rôle d’intermédiaire entre le Raspberry et le monde extérieur via une liaison I2C.

L'avantage pour l'un, c'est que GrovePi utilise moins d'entrées / sorties et du coup, vous pouvez les utiliser pour autre chose, l'inconvénient, c'est qu'on ne les pilote pas directement, supprimant certaines fonctionnalités des IO du PI.

RaspiO'Mix fait office d'interface direct entre le Raspberry et le monde extérieur, vous pouvez donc utiliser des lignes de commandes, du Python, ce que vous voulez sans avoir à passer par une librairie spécialisée, en gros, pour faire cours, vous n'avez pas besoin d'utiliser un drivers contrairement à GrovePi.

Détails sur le mapping des ports : RaspiO'Mix et GrovePi.

Fonctionnalité GrovePi RaspiO'Mix
Entrées / Sorties 7 4
Entrées analogiques 3 4
Résolution CAN 10bits 18bits
Lignes I2C 4 2
Lignes série 1 1
Horloge Non Oui (via DS1307) avec batterie de sauvegarde
Interrupteur 0 2
Alimentation via le Raspberry via le Raspberry ou une prise jack / bornier

Flag_of_France.svg.png
Autre chose importante, les RaspiO'Mix sont fabriquées en France !
oshw-logo-100-px.png
Dans les 2 cas, GrovePi et RaspiO'Mix sont des projets OpenSource et OpenHardware et vous pouvez retrouver toutes les sources sur GitHub : GitHub / GrovePi et GitHub / RaspiO'Mix

Les cartes RaspiO'Mix sont disponibles à la vente sur le site www.raspiomix.org.

Ouvrir l'article

Table de placement manuel : Le cadre

Suite à l'introduction de ma table de placement manuel, je vais poursuivre en vous présentant le cadre.

Tous le design des pièces est réalisé à l'aide de OpenSCAD et est disponible sur le dépôt GitHub suivant : GitHub / hugokernel / ManualPickAndPlace

La base

Le cadre qui va supporter la mécanique doit être suffisamment rigide pour ne pas bouger, je désire aussi quelque chose de suffisamment fin, les profilés aluminium couramment utilisé dans le milieu maker m'ont semblé parfaitement adapté.

Voici le cadre en profilé aluminium de 20mm, les profilés sont maintenus entre eux par des équerres internes :

frame.png

Concernant la taille du cadre (60x40cm), il est parfaitement possible d'avoir d'autres dimensions (tout est paramétrable dans les sources OpenSCAD), j'ai choisi cette dernière en fonction des arbres de précisions (trempés et rectifiés) de 12mm de diamètre que j'ai pu trouver.

Par dessus, nous rajoutons les supports d'arbre de précisions (réalisé via une imprimante 3D) :

rod_support.png

Les supports viennent se fixer aux 4 coins du cadre, les arbres de précision rentrent dedans en force et n'en bouge plus :

frame2.png

Pour cet étape, il faut imprimer :

Le chariot X

Les chariots pour l'axe X sont eux aussi aussi fabriqués via une imprimante 3D, ils ont chacun 2 parties creuses dans laquelle on insère des roulements linéaires (type LM12UU) dans lesquels viendront coulisser les arbres de précision.

lm12uu.png dolly_x.png

Tout ceci monté :

frame3.png

Pour cet étape, il faut imprimer :

Le chariot Y

Le chariot de l'axe Y possède 4 roulements linéaires, un support porte-outils (indiqué par la flèche) et des trous de fixation pour le "repose bras".

dolly_y_top.png dolly_y_bottom.png

frame4.png

Pour cet étape, il faut imprimer :

Récapitulatif des pièces à imprimer

Concernant l'impression des pièces, les jeux étant assez faibles, n'hésitez pas à faire quelques tests avant de tout imprimer.

Toutes les sources des pièces de cet article sont sur GitHub dans le fichier ManualPickAndPlace / cad / table.scad.

anim.gif

Ça nous donne quelque chose comme ça :

À suivre...

Ouvrir l'article

Table de placement manuel : Introduction

Le projet OpenAlarm utilisera comme module de transmission des FunkyV3, des cartes de très petites tailles avec tout un tas de composants permettant la connexion à différents type de capteurs, la liaison radio avec la base, etc...

Les Funky V3 sont très petit, pourtant, ils embarquent un bon nombre de composants et pour faire tenir autant de monde sur une surface aussi réduite, pas de mystère, il faut utiliser des composants TRÈS petit, lorsque je dis très petit, je parle de la résistance au format 0402 tout à gauche de la photo ci-dessous :

comparatif_cms.png

Et j'en viens à parler d'une des choses qui fait que OpenAlarm à pris beaucoup de retard, c'est que pour pouvoir manipuler des composants aussi petit en quantité (je ne vais pas faire des cartes que pour moi), il faut du matériel approprié.

Impossible de manipuler de tels composants directement avec les mains, avec des brucelles, c'est faisable mais pas pratique, le plus adapté est d'utiliser une pompe de préhension qui n'est rien d'autre qu'une micro ventouse et si on y ajoute une table de placement, alors, là, on tend vers le parfait...

Mais c'est quoi une table de placement ?

C'est assez simple : on place la ou les cartes électroniques sur une surface, on dispose les composants à proximité, et à l'aide d'un support coulissant et par des mouvements de translation, on vient prendre les composants et on les dépose sur le pcb.

Les composants sont « pris » par un système de pompe à dépression pour une grande précision de positionnement et surtout permettant de prendre des composants dans de très petits formats.

Que trouve-t-on sur Internet ?

Un modèle commercial : ERMES - Table de positionnement CMS

Chez Selectronic, on peut trouver la table ci-dessous :

selectronic_table.png selectronic_table_2.png

Je vois plusieurs points noirs à leur système :

  • La surface sur laquelle on pose son bras est trop petite et non souple, ça sent les douleurs musculaires au bout de quelques heures d'utilisation
  • Le stylo n'est pas maintenu droit par un quelconque mécanisme, je pense qu'il est difficile de manipuler des composants très petit comme des 0402
  • Le prix n'est pas sérieux...

Le modèle en bois peu chère de vpapanik

Ce modèle est intéressant car il utilise principalement des matériaux de récupération...

low_budget_vpapanik.jpg
Photo originale de http://vpapanik.blogspot.fr/2012/11/low-budget-manual-pick-place.html

Un point intéressant est que la pointe de préhension est solidaire du support coulissant, garantissant ainsi une pose plane du composant.

Au final, le système est ingénieux mais prend beaucoup de place (en hauteur) et j'ai un léger doute concernant la stabilité de l'ensemble, enfin, le support pour le bras n'est pas adapté et à la longue, le frottement de ce dernier sur le bord à angle droit du bois ne doit pas être agréable (voir la dernière photo de son article).

La table de Brian Dorey

Alors là, ça commence à devenir du lourd :

pnp-machine_briandorey.jpg

Elle est entièrement en aluminium, elle dispose d'un vrai support pour le bras en cuir / simili, sa tête est articulée et muni d'un moteur pas à pas permettant de choisir l'orientation du composant à l'aide de bouton poussoir se trouvant sur la flanc de la machine.

Il a même publié tous les plans de sa machine sur GitHub.

C'est du super boulot, par contre, elle est difficile d'accès à cause de ses pièces usinées et je la trouve encore assez imposante...

Brian Dorey, non content de sa table de placement manuel, à enchaîné par la suite sur une table de placement automatique plutôt impressionnante : http://www.briandorey.com/?tag=/manual+pick+and+place.

Autre machines...

Je ne vais pas toutes les passer en revue, il y en a trop mais voici quelques pointeurs :

Faisons un mix de tout ça

Prenons les bonnes idées, apprenons des erreurs et créons la notre :

  • Je veux une table qui reste avec un faible encombrement en hauteur
  • Avec le maximum de pièces imprimables à l'aide d'une imprimante 3D
  • Le système d'aspiration doit être automatique, pas besoin de pédale ou de bouton supplémentaire en utilisation normale (avec tout de même un mode manuel)
  • Un support pour bras suffisamment confortable pour travailler quelques heures de suite
  • Un voyant indiquant si la pointe aspire ou non
  • Une mécanique fluide (roulements linéaires)

Au moment ou j'écris ces lignes, ma table maison est terminée et parfaitement fonctionnelle, je fais donc durer le suspens et tâcherai de pondre des articles quand je le pourrai pour décrire la machine...

Ouvrir l'article

Mes projets faits main pour 2014

Je profite de ce début d'année pour faire un point sur l'avancement de certain de mes projets personnels liés au DIY et qui devraient être mis à jour ou terminés dans le courant de cette l'année...

LedPong

Il s'agit d'une version réduite du Led Pong Wall du Tetalab.

Le montage est terminé (un simple avr d'Atmel pilotant une matrice de led hautes luminosités) et fonctionne correctement mais le rendu n'est pas tout à fait celui que je souhaite, la lumière n'étant pas assez forte. J'envisage de remplacer toutes les leds par des modèles RGB adressables (WS2812) et pilotées par un RaspberryPi.

2011-06-09_16.55.39.jpg

À faire :

  1. Faire des tests avec des WS2812 pour s'assurer que l'adressage de 64 leds est suffisamment rapide
  2. Enlever l'ancienne matrice de led
  3. Poser les WS2812
  4. Interface et intégration avec le RaspberryPi

Ballon à air chaud

C'est un aérostat constitué de 8 fuseaux de 9m² réalisé à partir de sacs poubelle bas de gamme (faible épaisseur, environ 17 micron d'épaisseur), le ballon est fini et traine depuis plus d'un an dans un coin, il faut dire que malgré le temps que j'ai passé à le faire (quelques dizaines d'heures), l'arrivée de mon Ultimaker m'a totalement fait changer de priorité.

C'est une belle bête capable de lever théoriquement 2kg de charge utile, je compte profiter d'une journée fraiche pour le gonfler et faire un premier test.

La moitié du ballon déployé à côté du chat !

À faire :

  1. Fabriquer une nacelle pour tenir les suspentes et les relier à un fil maitre
  2. Trouver une journée froide et sans vent pour faire un test (certainement un matin très tôt

Bleuette

Encore beaucoup de boulot pour le robot hexapode Bleuette mais le projet avance...

2013-03-03_19.39.11.jpg

À faire :

  1. Ajouter une caméra sur une tourelle mobile
  2. Revoir tout le système d'alimentation en énergie pour une autonomie plus grande
  3. Améliorer le contrôle des pattes avec une meilleure gestion de la vitesse des servos
  4. Encore beaucoup de choses...

CappuccinoMaker

Amateur de cappuccino à la mousse de lait bien dense et ne trouvant pas d'appareil suffisamment puissant et fiable pour en faire (oui, c'est tout un art), je vous dévoilerai ma version fait main que j'utilise depuis quelques années ainsi que sa nouvelle toute petite version dont le boitier est réalisé à l'impression 3D...

2013-09-13_09.50.36.jpg

À faire :

  1. Tests d'autonomie avec la nouvelle batterie (quelques 120mA)
  2. Finir le nouveau boitier

Automatiser la Blossoming Lamp

Découverte sur le stand RepRap au 3DPrintShow de Paris, cette plante (Blossoming Lamp) à la particularité d'être imprimée en une seule fois (et @f4grx à dû s'y prendre à plusieurs fois pour que j'arrive à y croire ;)), je me devais d'imprimer cette curiosité :

L'idée serait de lui implanter une lumière et de la motoriser afin qu'elle s'ouvre et se ferme toute seule.

À faire :

  1. Trouver comment motoriser la mécanique d'ouverture
  2. Réalisation de l'électronique pour piloter la méca et la lumière

OpenAlarm : Un système d'alarme libre

Suite à l'annonce de création du projet, pas mal de personnes se sont rejointes au projet, apportant leurs idées, conseils ou développements réalisés de leur côté étayant avec des bases très intéressantes le projet à peine commencé...

Pour le moment, j'ai commandé différents composants (module radio, gsm) qui me permettront de réaliser un prototype, dont toutes les informations utiles seront mises à disposition sur la page du projet GitHub / OpenAlarm et sur le forum hébergé sur MadeInFr.

À faire :

  1. Réaliser un premier prototype de capteur
  2. Communication entre le RaspberryPi et un capteur
  3. Envoi de SMS via SIM900 depuis le RaspberryPi
  4. Beaucoup d'autres choses...

RaspiO'Mix

La carte fille RaspiO'Mix que j'ai présenté sur ce blog récemment dont vous allez entendre parler de nouveau d'ici peu de temps...

raspiomix.jpg

À faire :

  1. Écriture d'exemple / enrichissement de la documentation

LeMurmureDuSon

LeMurmureDuSon est un dispositif jouant le rôle de post'it vocal que je n'ai jamais présenté sur ce blog et qui est encore en cours de développement.

Il a été pensé au cours d'un workshop du Museolab d'Érasme oû des équipes pluridisciplinaires ont été réunies autour d’un thème particulier : comment le handicap peut-il être source d’innovation pour tous ?

Ce workshop à donné naissance à 3 projets dont LeMurmureDuSon fait parti, dans la vidéo ci-dessous, vous découvrirez ces 3 projets (la présentation du projet LeMurmureDuSon commence à 3min22) :

Museolab : Le handicap source d'innovation from Erasme on Vimeo.

À faire :

  1. Nouveau design
  2. Nouvelle carte électronique
  3. Plein d'idées à mettre en oeuvre...

Intervalomètre photo

L'Intervalomètre diy est un vieux projet mis en standby pour le moment, n'ayant plus trop le temps pour pratiquer la photo, le besoin de ce dispositif est moindre qu'à l'époque, cependant, la carte électronique est faite et est fonctionnelle à quelques détails prêt...

Je reviendrai dessus le temps voulu mais ce n'est plus une priorité.

À faire :

  1. Déboguer !
Ouvrir l'article

OpenAlarm : Un système d'alarme libre

Après de multiples recherches sur Internet, je m'avoue vaincu : pas moyen de trouver un système d'alarme libre suffisamment avancé et les systèmes propriétaires sont beaucoup trop chères, même d'occasion...

Bien sûr, il reste les systèmes d'alarmes bas de gamme mais que valent t'ils vraiment face à des pros du vol qui connaissent bien les parades...

J'ai donc décidé de développer mon propre système libre, les toutes premières briques ont été posées sur le wiki SystèmeDAlarmeLibre et dans cet article, je vais détailler mes choix.

Cahier des charges

  • Multi-zones sans fil, hors de question de tirer des cables partout, il faudra donc prévoir des capteurs autonomes en énergie et capable de communiquer avec la base par radio
  • Système d'avertissement local sonore et lumineux ainsi qu'un envoi de SMS avec détail sur l'incident (zone, type d’évènement, horodatage)
  • Type de capteurs : Infra rouge (PIR), ouverture (reed switch), vibration, sonore, lumière, fumée, fuite d'eau et pourquoi pas la température et l'humidité
  • Communications sécurisées : Multi-bandes et il ne doit pas être possible de brouiller la bande de fréquences utilisée sans déclencher d'alerte, on ne doit pas pouvoir forger de faux messages de « tout va bien »
  • Alarmes techniques en cas de batterie faible des capteurs autonomes ou perte du signal d'un capteur
  • Watchdog : La centrale doit être capable de se sortir elle même d'un plantage inopiné
  • Autonomie électrique de la centrale : en cas de coupure d'alimentation, elle doit tenir suffisamment longtemps pour avoir le temps de lancer ces alertes
  • Les boitiers des capteurs et de la centrale devront être autant que possible réalisables grâce aux outils d'un fablab (impression 3d, découpe laser, etc...)

Choix techniques

Centrale

La centrale devra donc gérer la communication avec les capteurs, être capable de déclencher des alertes en rapport avec l'incident reporté (effraction supposée : signal sonore et lumineux, envoi de SMS), gérer l'interface utilisateur par le biais d'un serveur web embarqué et d'un clavier déporté.

Le coeur

Le coeur du système sera un RaspberryPi, tout simplement car je connais bien cette carte, elle est peu onéreuse et ces capacités seront largement suffisantes pour ce qu'on va lui demander de faire... La faible consommation du RaspberryPi facilitera son alimentation en cas de perte de la tension du secteur.

Raspberry_Pi_-_Model_A.jpg

En terme de logiciel, Python sera employé et le système sera donc adaptable à toute carte ou PC...

python.png

La communication

La communication avec les capteurs sera effectuée à l'aide d'un nRF905 (http://www.nordicsemi.com/eng/Products/Sub-1-GHz-RF/nRF905), un circuit intégré spécialisé ayant la particularité de pouvoir émettre au choix sur 3 bandes (433, 868 et 915MHz), d'avoir une très faible consommation et d'être très simple à mettre en oeuvre.

Le module GSM pour l'envoi de SMS sera un SIM900.

nrf905.jpg sim900.jpg

Module capteurs

Une des partie les plus critiques du système est la capture des événements par le biais de capteurs (infra-rouge, etc...), ces modules doivent être totalement autonome, alimenté par batterie, voici les parties communes :

  • La partie radio basé sur un nRF905
  • Le coeur : Un Avr (tinyAvr) d'Atmel se chargera de lire l'état du capteur, de communiquer avec la base, de vérifier l'état de la batterie
  • Des entrées / sorties pour y brancher le ou les capteurs
  • Une batterie

L'autonomie étant critique, l'AVR pourra se mettre en veille et en sortir soit au bout d'un temps déterminé pour vérifier l'état du capteur et avertir la base que tout va bien (ou que tout va mal), ou il pourra également sortir de veille par le biais d'un changement d'état du capteur.

Je pense faire une carte électronique générique pour tous les capteurs afin de gagner en coût et en facilité.

La suite

Dans un premier temps, je veux m'assurer de la bonne portée pratique des modules radios ainsi que de leur consommation car il s'agit DES parties critiques du système.

Ayant d'autres projets sur le feu (dont certain qui trainent depuis bien trop longtemps), j'essaierai d'avancer sur OpenAlarm au mieux...En attendant, j'attends vos retours / avis / conseils / idées, etc...

Un dépôt GitHub OpenAlarm à été ouvert oû je mettrai toutes les informations utiles au développement, le wiki sur GitHub sera aussi tenu à jour.

Ouvrir l'article

« Page 3 / 14 »