• Aucun résultat trouvé

[PDF] Apprendre à utiliser arduino uno avec bluetooth | Cours Informatique

N/A
N/A
Protected

Academic year: 2021

Partager "[PDF] Apprendre à utiliser arduino uno avec bluetooth | Cours Informatique"

Copied!
24
0
0

Texte intégral

(1)

Transmission

Bluetooth

Electronique pour Arduino F. Ferrero

(2)
(3)

Network

• WBAN : Wireless Body Area Network

• WPAN : Wireless Personal Area Network • WLAN : Wireless local Area Network

• WMAN : Wireless Metropolitan Area Network • WAN : Wide area Network

(4)
(5)

Bluetooth - IEEE 802.15 - General

• Wireless Personal Area Networks (WPANs)

• Communication within a persons operating space

• 1998 -IEEE 802.15.1 – ”Bluetooth”

• King Harald Bluetooth (A.D. 940 to 985)

Ericsson (creator of bluetooth)

• 2002 - IEEE 802.15.1.1: Coexistence between 802.15.1 and 802.11 • 2004 - IEEE 802.15.2 – EDR

• 2010 -IEEE 802.15.4 – Low Power

Bluetooth Low Energy (BLE) Smart Bluetooth

5

(6)

Bluetooth

➢ bande ISM sans licence (2.4 - 2.4835 GHz) ➢ Débit de 1Mbps ➢ Frequency Hopping (1600 Hops/sec) ➢ GFSK Modulation (BT = 0.5, h = 0.28 - 0.35)

▪ Le Bluetooth est une technologie sans fil conçu pour remplacer les câbles

➢ Faible portée (10 m)

▪ Les principales specifications radio:

2/50

(7)

Spécifications de la transmission

• Caractéristique de la Modulation :

Les radios Bluetooth utilisent un modulation GFSK (Gaussian Frequency Shift Keying)

où un bit à 1 est représenté par une deviation de fréquence positive et un bit à 0 par une deviation de fréquence negative.

Filtre Gaussien :

Le filter permet de lisser le signaux digitaux pour limiter la bande passante fréquentielle.

(8)

Spécifications de la transmission

• Où fc est la fréquence centrale et fd est la deviation fréquentielle. • fc − fd represente un bit 0 , fc + fd represente un bit 1.

• Dans le standard Bluetooth , l’indice de modulation est specifié entre 0.28 et 0.35. L’indice de modulation est le rapport entre la deviation fréquentielle 2fd et le débit. Donc, le fd correspondant doit être compris entre 140 et 175 kHz.

(9)

Spécifications de la transmission

(10)

Piconets / Scatternet

Les topologies plus simples de réseau sont appelées Piconets

1 master -> 7 slaves Les topologies plus complexes de réseau sontappelées Scatternets et permettent de réunir

plusieurs Piconets 10

Le standard Bluetooth est basé sur un mode de fonctionnement maître/esclave. Ainsi, on appelle « picoréseau » (en anglais piconet) le réseau formé par un périphérique et tous les périphériques présents dans son rayon de portée. Il peut coexister jusqu'à 10 picoréseaux dans une même zone de couverture. Un maître peut être connecté simultanément à un maximum de 7 périphériques esclaves actifs.

(11)

Bluetooth Adresses et Noms

Tous les systèmes Bluetooth on une adresse unique de 48-bit, communément appellée BD_ADDR. Cette adresse est visible sur la plupart des systèmes Bluetooth.

Les systèmes bluetooth ont aussi un nom paramétrable qui permet de les reconnaitre facilement. Ce nom est généralement présenté à l’utilisateur à la place de l’adresse, pour aider l’identification.

La règle pour le nom n’est pas stricte, il peut avoir jusqu’à 248 bytes, et 2 systèmes peuvent avoir le même nom.

(12)

Process de connection

Pour créer une connection entre 2 systems Bluetooth, un process avec 3 étapes est necessaire :

1. InquiryL'établissement de la connexion commence par une phase appelée « phase d'inquisition » (en anglais « inquiry »), pendant laquelle le périphérique maître envoie une requête d'inquisition à tous les périphériques présents dans la zone de portée, appelés points d'accès. Tous les périphériques recevant la requête répondent avec leur adresse.

2. Paging (Connecting) – Le périphérique maître choisit une adresse et se synchronise avec le point d'accès selon une technique, appelée paging, consistant notamment à synchroniser son horloge et sa fréquence avec le point d'accès.

3. Connection – Un lien s'établit ensuite avec le point d'accès, permettant au périphérique maître d'entammer une phase de découverte des services du point d'accès, selon un protocole appelé SDP (Service Discovery Protocol).

A l'issue de cette phase de découverte de services, le périphérique maître est en mesure de créer un canal de

communication avec le point d'accès en utilisant le protocole L2CAP. Selon les besoins du service, un canal

supplémentaire, appelé RFCOMM, fonctionnant au-dessus du canal L2CAP pourra être établi afin de fournir un port série virtuel.

Il se peut que le point d'accès intègre un mécanisme de sécurité, appelé pairage (en anglais pairing), permettant de restreindre l'accès aux seuls utilisateurs autorisés afin de garantir un certain niveau d'étanchéité du picoréseau. Le pairage se fait à l'aide d'une clé de chiffrement communément appelée « code PIN » (PIN signifie Personal Information

Number). Le point d'accès envoie ainsi une requête de pairage au périphérique maître. Ceci peut la plupart du temps

déclencher une intervention de l'utilisateur pour saisir le code PIN du point d'accès. Si le code PIN reçu est correct, l'association a lieu.

En mode sécurisé, le code PIN sera transmis chiffré à l'aide d'une seconde clé, afin d'éviter tout risque de compromission.

(13)

HC-05 HC-06 module

The HC-05 has the ‘full’ firmware on it: many AT commands, and can be both master and slave module. The HC-06 firmware on the other hand only can be a slave device, with very limited AT commands.

Or in other words:

•The HC-05 module can build a connection to other modules. E.g. a Robot being a master and connecting to slave bluetooth module. Or in slave mode to make a wireless bridge to a notebook.

•The HC-06 module only can be a slave. This makes it only useful for say connecting a notebook as a master to a robot with a slave module e.g. for a wireless serial bridge.

(14)

HC-06 module

• Attention à l’interface entre le Tx/Rx du HC-06 et de l’Arduino. • Le HC-06 fonctionne en 3.3V • L’Arduino en 5V.

• Pour protéger le HC-06, le Rx

doit utiliser un pont diviseur en tension

(15)
(16)

Configurer le

HC-06

Mode AT

//********************************* **************/*

#include <SoftwareSerial.h> //Software Serial Port

#define RxD 10 //Pin 10 pour RX, PB2 sur votre board, a brancher sur le TX du HC-06 #define TxD 11 //Pin 11 pour TX, PB3 sur votre board, a brancher sur le RX du HC-06 SoftwareSerial BTSerie(RxD,TxD); void setup() { Serial.begin(9600); // Configuration du bluetooth pinMode(RxD, INPUT); pinMode(TxD, OUTPUT); BTSerie.begin(9600); } •Module HC-06 (4 pins) --> Arduino VCC –> +5V •GND –>GND •TXD –> Pin 10 – PB2 (RX) •RXD –> Pin 11 – PB3 (TX) void loop() { char recvChar;

//On lit caractere par caractere sur le BTSerie et on affiche sur le

Terminal Serie

if (BTSerie.available()) {

recvChar = BTSerie.read(); //lecture Serial.print(recvChar); //ecriture }

//On lit caractere par caractere sur le terminal et on affiche sur le BT Serie

if (Serial.available()) {

recvChar = Serial.read(); //lecture BTSerie.write(recvChar); //ecriture }

} Code Bluetooth.ino sur :

http://users.polytech.unice.fr/~ ferrero/TPelec2

(17)

Configurer le HC-06

Sur le moniteur série • Taper AT -> OK

• Version du module : AT+VERSION, Réponse : linvorV1.8 pour notre module.

• Changer la vitesse :AT+BAUD4 (4 pour 9600, 5 pour 19200, 6 pour 38400, 7 pour 57600)

La modification du baud rate prend effet seulement après redémarrage du module.

• Changer le nom : AT+NAMEnom ->setNAME

• Changer le mot de passe :AT+PINnnnn ->setPIN

Attention : Quand votre HC-06 est synchronisé avec un master, les commandes AT ne fonctionnent plus

(18)

Appairage de votre HC-06 sur votre téléphone

• Rechercher depuis le menu Bluetooth de votre téléphone les appareils disponibles

• Sélectionner votre HC-06 • Utiliser votre code PIN

(19)

Transférer une information de l’arduino vers

le master

• Télécharger sur votre smartphone l’application Bluetooth Serial Controller (sur un Windows phone, application BTTerminal)

• Faire connect et selectionner votre HC-06 • Passez en mode terminal

• Taper « Ping » sur votre moniteur série

• Ca doit s’afficher sur votre application android • Ecrivez « Pong » sur le terminal android

• Ca doit s’afficher sur le moniteur série.

Quand votre smartphone est connecté au HC-06, la LED ne clignote plus et reste allumée

(20)

Allumer une LED depuis le smartphone

Ajouter dans le code Arduino :

• Dans Setup : pinMode(13, OUTPUT);

• Dans Loop : à placer après recvChar = BTSerie.read(); //lecture

if(recvChar == ‘1’) {

digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second

digitalWrite(13, LOW); // turn the LED off by making the voltage LO }

• Configurez dans l’application android un bouton pour envoyer ‘1’. • Appuyez !

(21)

Utilisation de l’application BlueTooth Electronics

Cette nouvelle app vous permet de créer un panel avec des boutons, indicateurs, texte, graphe, etc …

Vous pouvez aussi accéder aux informations de l’accélérométre de votre smartphone

(22)

BlueTooth Electronics : Oscilloscope avec écran

sans fil

• Editez un nouveau panel

• Sélectionner dans graphs un roll 10*6 • Faite le glisser dans votre panel

• Connecter votre potentiomètre sur A0

• Synchroniser l’application avec votre arduino, • Run du panel avec le graph

void loop() { char recvChar; BTSerie.write("*G"); BTSerie.print(analogRead(A0)); BTSerie.write("*" ); delay(100); }

(23)

Utilisation de l’application

BlueTooth Electronics

• Quand le graphe fonctionne, ajouter un bouton dans le panel

• Configurer le code sur l’Arduino pour allumer la LED quand vous appuyez sur le bouton, et l’éteindre quand vous relâchez le bouton

(24)

Capteur de distance avec affichage sur le

smartphone

• http://www.keuwl.com/electronics/rduino

/bluet/05-ultrasonic-distance/

• Attention : il faut adapter le code à vos PIN de bluetooth

Références

Documents relatifs

semiring (token, mapping ): a different UDF is defined for dif- ferent (m-)semirings, which returns the result of the evaluation of the subcircuit rooted at token of the

À partir de la présentation des commandements du Décalogue dans les catéchismes catholiques parus en RFA au cours des années 1950 et 1960, nous tenterons de déterminer le

Après des accrochages autour du b ru it dès le premier jour (fête après le déménagement), Monsieur Lefranc va utiliser ces petits incidents ainsi que quelques

Pour une conservation du patrimoine et du paysage architectural coloré d’aujourd’hui : méthodologie de prise en compte des caractéristiques chromatiques d’un site..

Plus généralement, et plus simplement, la théorie brahmanique voulant que tout défunt soit temporairement un pr®tam (dans le sens de trépassé) avant d'être transformé en

The Israeli Security strategy contains groups of the hypotheses that distinguish it from other security policies , That directly affect the process of application , That

The contribution of the current paper is to measure interbeat intervals (IBIs) from human subjects resting in a massage chair through a microbend fiber optic sensor (FOS) embed- ded

Deuxièmement, nous ne pouvons pas non plus nous référer à une exécution « authentique », dans la mesure où aucune exécution particulière ne peut avoir