Bob's Output Board : Différence entre versions
Ligne 142 : | Ligne 142 : | ||
===Le daemon bobControl=== | ===Le daemon bobControl=== | ||
+ | |||
{{fixme}} | {{fixme}} | ||
+ | |||
===La commande bob=== | ===La commande bob=== | ||
+ | |||
+ | {{fixme}} | ||
+ | |||
+ | ==L'interface Web Bobine | ||
+ | |||
{{fixme}} | {{fixme}} | ||
Version du 8 juin 2014 à 18:21
Article en cours de rédaction |
---|
Sommaire
Présentation
Le projet BOB est une interface permettant la commande d'éléments de puissance (éclairages, moteurs, etc...) fonctionnant en courant continu par un raspberry, arduino, etc... Il consiste en une carte proposant 8 sorties. La carte BOB se commande en logique 0 / 5V autorisant sa commande directe par un arduino, mais également par un Raspberry, malgré la logique 3.3V de ce dernier.
On peut virtuellement connecter autant de cartes BOB à la suite que nécessaire pour obtenir le nombre de sorties requises. Dans la pratique, ce nombre est limité par la longueur des fils possible (des fils trop longs induisent des parasites sur les signaux de commande), et le courant que peut délivrer l'appareil de contrôle. Sur un raspberry, il est possible de chainer 4 BOB sans problèmes (en maintenant des fils courts), un nombre plus important nécessitera l'ajout d'un buffer entre le raspberry et les BOBs.
L'ensemble des éléments du projets sont disponibles sur la page gitorious de BOB.[1]
Coût
20€ + PCB
Niveau de difficulté
Hardware
Présentation
La carte est construite autour d'un circuit intégré 74HC595, qui contrôle 8 transistors MOSFETs, assurant chacun la commutation d'une sortie.
Chaque sortie peut supporter un courant inférieur à un ampère (cette valeur n'est fixée pour l'instant que par la largeur des pistes, et la capacité des borniers, mais pourrait être augmentée), être protégé par fusible réarmable (polyswitch), et posséder une LED indiquant son état.
Plusieurs cartes BOB peuvent être connectées en cascades, pour cela, on relie le connecteur BOBLinkOut d'une carte au BOBLinkIn de la suivante.
La carte BOB possède plusieurs connecteurs
- 2 connecteurs à 8 broches en haut de la carte : BOBLinkIn (en haut) et BOBLinkOut (en dessous).
- 8 borniers latéraux : chaque bornier correspond à une sortie
- 1 bornier en bas : alimentation de puissance ( tension continue, dont la valeur maximale autorisée est dépend des polyswitch, mosfets et diodes.
Le pinout des connecteurs de BOBLink est le suivant (BOB vue de face, connecteur de contrôle en haut, pin de gauche à droite) :
- N/A : ce pin n'est relié à rien, mais est transmis à la carte BOB suivante.
- VCC : alimentation de la carte en +5V
- GND : masse de la carte
- G : contrôle de désactivation des sorties : 0V = sorties activée, 5V = sorties désactivées
- RCK : contrôle de validation des données : sur front montant (0V -> 5V) les données transmises sont appliquées aux sorties
- SCK : horloge : sur front montant, provoque le décalage des données.
- SCLR: reset des données, 0V pour reset
- D : donnée d'entrée pour le connecteur d'entrée, de sortie pour le connecteur de sortie.
Versions
- v1 : Projet initial
- v2 : Ajout d'un filtre sur l'entrée de validation RCK afin de minimiser l'influence des parasites electro-magnétiques, et de trous de fixation
Composants
Pour fabriquer une BOB v2, les composants suivants sont nécessaires :
- 1 x Circuit intégré 74HC595
- 1 x Support de circuit intégré 16 broches ( optionnel, utile si l'on veut pouvoir remplacer le CI )
- 1 x Réseau de résistance SIL 10kOhms
- 1 x Condensateur céramique 0.47 µF (capable de supporter au moins 5v)
- 1 x résistance de 1kOhms
- 1 x Condensateur de 10nF
- 8 x LEDs 5mm ou 3 mm
- 8 x Résistances 2.7kOhms 1/4W (la valeur exact importe peut, mais influence la luminosité des LEDs)
- 8 x Transistors MOSFET IRF620
- 8 x Diodes de redressement 1N54001 à 1N54007
- 8 x Polyswitch (optionnel, permet la protection des sorties, sinon les remplacer par des shunts)
- 9 x Bornier 2 broches
- Au moins 16 unités de barrette sécable
- Un PCB vierge d'au moins 75mm de coté.
Construction
Une fois le PCB réalisé à partir du typon disponible dans le projet Kicad
Utilisation avec une carte Arduino
Câblage
Seule la première interface BOB doit être reliée à l'arduino. Relier respectivement ses broches VCC et GND aux broches VCC et GND de l'arduino. Relier ensuite les 5 autres broches de l'interface BOB à 5 sorties numériques de l'arduino.
Programme
Utilisation de la librarie BOB pour arduino : Son installation est simple, il suffit de copier le dossier BOB dans le répertoire des librairies Arduino (~/sketchbook/libraries/)
#include <BOB.h> //A ajouter au début du fichier BOB bob(7,6,5,4,3,1); //On déclare 1 bob connecté aux pins 7,6,5,4,3 de l'arduino (les pins sont dans l'ordre du connecteur BOBLink) void setup() { bob.write(0,0b10100101); //La méthode write permet d'écrire toutes les sorties d'un bob en même temps (le premier bob a pour numéro 0) } void loop() { delay(1000); bob.writePin(0,2,HIGH); //La méthode writePin permet de changer l'état d'une seule sortie, ici troisième sortie ( numéro 2 ) de la première BOB ( numéro 0 ) bob.writePin(0,5,LOW); delay(1000); bob.writePin(0,5,HIGH); bob.writePin(0,2,LOW); }
Utilisation avec un Raspberry Pi
Les logiciels permettant l'utilisation d'un ou plusieurs BOB depuis un Raspberry Pi sont disponibles sur la page suivante : https://gitorious.org/bobsoutputboard/raspberrybob
Câblage
Seule la première interface BOB doit être reliée au Raspberry. Relier respectivement ses broches VCC et GND aux broches VCC(+5V) et GND du raspberry. Relier ensuite les 5 autres broches de l'interface BOB à 5 GPIO du raspberry.
Installation
Récupérer l'intégralité des fichiers présents sur la page Gitorious :
$ git clone git://gitorious.org/bobsoutputboard/raspberrybob.git
Se placer dans le dossier créé :
$ cd raspberrybob
Lancer la compilation
$ make
Modifier éventuellement la ligne 16 du fichier init-script pour qu'elle corresponde à votre câblage :
OPTS="--gpioG=2 --gpioRCK=3 --gpioSCK=4 --gpioSCLR=14 --gpioD=15 --bob-number=1"
Les options dont le nom commence par gpio doivent prendre un numéro de GPIO en paramètre. Chacune correspond à un pin de la carte BOB. Ces options permettent d'indiquer au daemon BobControl quels GPIO permettent le dialogue avec les interfaces BOB.
Lancer ensuite l'installation
$ sudo make install
Il est possible de tester le fonctionnement avec les scripts dont le nom commence par test.
En cas de nécessité, la désinstallation de tous les programmes liés à BOB peut être réalisée avec la commande suivante :
$ sudo make uninstall
Le daemon bobControl
Vous pouvez ajouter les informations manquantes !!!
La commande bob
Vous pouvez ajouter les informations manquantes !!!
==L'interface Web Bobine
Vous pouvez ajouter les informations manquantes !!!
Auteurs
- Pila
- Yogi