- Composants requis:
- Ingénierie inverse:
- Explication de travail:
- Connexions du circuit:
- Programme Arduino:
- Utilisation du traitement pour créer une application Android:
Dans ce projet, nous utiliserons une radio FM existante qui a été réparée il y a longtemps, pour la convertir en une radio FM intelligente sans fil contrôlée à l'aide du téléphone, avec l'aide d' Arduino et du traitement.
Nous pouvons convertir n'importe quel appareil électronique à commande manuelle en appareil intelligent en utilisant la même procédure. Chaque appareil électronique fonctionne à l'aide de signaux. Ces signaux peuvent être en termes de tensions ou de courants. Les signaux peuvent être déclenchés manuellement à l'aide de l'interaction de l'utilisateur directement ou à l'aide d'un appareil sans fil.
À la fin de ce projet, nous serons en mesure de convertir la plupart de nos appareils électroniques courants, comme une radio qui fonctionne sur des boutons, en un gadget sans fil intelligent qui peut être contrôlé par un téléphone intelligent via Bluetooth. Pour y parvenir, nous devrons faire deux choses principales.
1. Prédisez comment les signaux sont générés dans le système de boutons mécaniques existant.
2. Trouvez un moyen de déclencher le même signal à l'aide d'un petit circuit supplémentaire.
Alors, commençons…
Composants requis:
Pour ce projet, un appareil électronique ancien ou inutilisé comme une radio, un téléviseur, un lecteur CD ou un cinéma maison peut être sélectionné. Les composants réels peuvent varier en fonction du périphérique sélectionné. Mais pour le rendre sans fil, nous aurions besoin d'un microcontrôleur qui est ici un Arduino et d'un support sans fil qui est un module Bluetooth HC-05.
Ingénierie inverse:
Bon, maintenant j'ai sélectionné un vieux lecteur de radio FM qui a cessé de fonctionner il y a longtemps. Et quand je l'ai ouvert, j'ai trouvé que les boutons dessus ne fonctionnaient plus. Ce sera un appareil parfait pour nous de travailler car nous n'aurons plus besoin des boutons car nous allons le rendre complètement sans fil. L'image ci-dessous montre la radio que j'ai ouverte.
C'était la configuration des boutons de ma radio (photo ci-dessus). Comme vous pouvez le voir, il y a huit boutons sur lesquels la radio prend une entrée. Vous pouvez également remarquer qu'il y a huit résistances sur la carte. Que pouvez-vous en conclure…? Oui, chaque résistance est connectée à un commutateur. Jetons maintenant un œil à l'arrière du tableau:
Vous pouvez tracer la connexion à l'aide des pistes PCB, mais si vous êtes toujours confus, vous pouvez utiliser davantage votre millimètre dans la connectivité et comprendre le circuit. Cette carte a trois bornes (entourées en rouge) qui donnent des signaux à la carte radio FM principale. Ces broches étaient marquées S1, S2 et 1,7V. Cela signifie qu'une tension constante de 1,7 Volts est envoyée de la carte principale à cette carte et lorsque l'utilisateur appuie sur n'importe quel bouton, il y aura une chute de tension à travers la résistance correspondante et à travers les broches S1 et S2 une tension variable sera renvoyée. C'est ainsi que fonctionnent la plupart des boutons de nos appareils électroniques. Maintenant que nous avons compris comment cela fonctionnait, rendons-le sans fil.
Explication de travail:
Alors maintenant, pour le rendre sans fil, il suffit de donner une tension comprise entre 0 et 1,7 V sur le S1 et de mettre à la terre la carte principale. Il existe plusieurs façons d'imiter la configuration de ces boutons à l'aide d'un microcontrôleur.
Nous pouvons utiliser un potentiomètre numérique et lui faire fournir la résistance sur la carte comme programmé et lorsque nécessaire. Mais cela rendra les choses compliquées et coûteuses car travailler avec Digipot nécessite SPI et les Digipots sont coûteux.
On peut également utiliser un réseau de résistances à transistors dans lequel chaque résistance de valeurs différentes est activée par un transistor qui à son tour est contrôlé par le microcontrôleur lui-même. Mais encore une fois, faire cela pour huit boutons, le circuit deviendra compliqué.
Le moyen simple de le faire est de générer directement la tension variable requise à partir du microcontrôleur et de la transmettre aux broches de signal. Malheureusement, Arduino n'a qu'un ADC et n'a pas de DAC. Mais, heureusement, nous avons PWM dans Arduino. Ce PWM peut être amené à agir comme une tension variable à l'aide d'un simple filtre passe-bas RC.
Un filtre passe-bas est illustré ci-dessus, le composant clé ici est le condensateur qui mettra à la terre tout le signal pulsé et un DC pur est envoyé en sortie. Ainsi, les signaux PWM de l'Arduino doivent être envoyés à travers un filtre passe-bas, puis transmis au panneau de signalisation de la radio FM.
Le circuit est facile à construire sur une carte à points comme indiqué ci-dessus. Ici, le fil noir est pour la masse et les fils bleu et vert à gauche seront envoyés à nos cartes FM S1 (vert) et S2 (bleu), et les fils à droite recevront des signaux PWM des broches 9 et 10 d'Arduino (voir photo ci-dessus) et passer à la carte FM via un filtre passe-bas. Le module Bluetooth utilise les broches 11 et 12 comme Rx et TX.
Maintenant, nous pouvons générer des signaux PWM de 0 volt à 1,7 volt et découvrir comment notre radio se comporte pour différents niveaux de tension. La prochaine étape consiste à rendre cette chose sans fil.
Connexions du circuit:
Ce schéma montre la configuration complète du filtre passe-bas et du module Bluetooth HC-05 connecté à Arduino Mega pour la radio FM contrôlée par Bluetooth.
Programme Arduino:
Le programme pour l'Arduino est donné dans la section Code ci - dessous. Vous pouvez également tester la plage de tension variable de votre appareil électronique en utilisant ce programme ici.
Avant de commencer à créer notre propre application Android pour notre radio, il est conseillé de tester la fonction sans fil à l'aide d'une application Terminal Bluetooth Monitor, comme indiqué dans la vidéo ci-dessous. Consultez cet article pour configurer l'application de terminal Bluetooth sur Arduino. Une fois que nous sommes confiants dans son fonctionnement, nous pouvons nous lancer dans la création de notre propre application Android.
Utilisation du traitement pour créer une application Android:
C'est cool de rendre notre appareil sans fil, mais nous pouvons également ajouter une touche personnelle à notre appareil en créant notre propre application Android. Nous pouvons contrôler l'appareil à des heures programmées automatiquement ou le contrôler en fonction de vos alarmes de réveil. Vous pouvez même faire jouer votre radio sur votre chaîne préférée lorsque vous rentrez chez vous. L'imagination est votre limite ici. Mais pour l'instant, nous allons créer une interface utilisateur simple en utilisant le traitement, cette application n'aura que quelques boutons avec lesquels vous pourrez contrôler votre radio FM.
Le traitement est un logiciel open source utilisé par les artistes pour la conception graphique. Ce logiciel est utilisé pour développer des logiciels et des applications Android.
Le code de traitement de l' application Android pour contrôler cette radio FM sans fil est donné ici:
- Code de traitement de l'application Android pour contrôler la radio FM
Nous avons d'abord construit cette application sur PC en mode JAVA, pour la tester correctement, voici le code de traitement pour la même chose. Faites un clic droit dessus et cliquez sur «Enregistrer le lien sous..» pour télécharger le fichier de code. Ensuite, ouvrez le fichier dans le logiciel 'Traitement' et cliquez sur le bouton 'Exécuter' pour vérifier à quoi il ressemblera dans le téléphone. Vous devez installer le logiciel 'Processing' pour ouvrir les fichiers *.pde.
Une fois que nous avons testé l'application en mode JAVA, nous pouvons facilement la convertir en mode Android en passant à l'onglet Android dans le coin supérieur droit de la fenêtre Traitement. Afin de permettre à notre téléphone Android d'activer son Bluetooth et de se connecter automatiquement à notre module HC-05, nous devons ajouter les codes suivants à notre programme Java existant pour en faire une application Android. Nous avons déjà fourni le code Android complet dans le lien ci-dessus, vous pouvez donc l'utiliser directement.
Voici quelques fichiers d'en-tête pour activer les fonctions Bluetooth:
import android.content.Intent; import android.os.Bundle; import ketai.net.bluetooth. *; import ketai.ui. *; import ketai.net. *; import android.bluetooth.BluetoothAdapter; import android.view.KeyEvent;
Les lignes ci-dessous communiquent avec l'adaptateur Bluetooth de notre téléphone à l'aide de la bibliothèque Ketai et nous appelons notre adaptateur bt .
BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter (); KetaiBluetooth bt;
Une partie du code ci-dessous déclenchera une demande à l'utilisateur lui demandant d'activer le Bluetooth au démarrage de l'application.
// Pour démarrer BT au démarrage ********* void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); bt = nouveau KetaiBluetooth (ce); } void onActivityResult (int requestCode, int resultCode, Intent data) {bt.onActivityResult (requestCode, resultCode, data); } // **********
Ici, nous indiquons à notre application Android à quel appareil Bluetooth nous devons nous connecter. La ligne bt.connectToDeviceByName (sélection); attendez un nom de périphérique de notre fonction de configuration. Comme notre appareil Bluetooth est nommé «HC-05», la ligne ci-dessous est ajoutée dans la configuration. Ce nom sera différent en fonction du nom de vos modules Bluetooth.
// Pour sélectionner un périphérique Bluetooth ********** void onKetaiListSelection (KetaiList klist) {String selection = klist.getSelection (); bt.connectToDeviceByName (sélection); // dispose de la liste pour l'instant klist = null; } // **********
bt.connectToDeviceByName ("HC-05");
Soit vous pouvez effectuer ces modifications dans le code de traitement pour PC (mode Java), soit utiliser directement notre code de traitement Android indiqué dans le lien ci-dessus. Ensuite, connectez directement votre téléphone à votre ordinateur portable à l'aide du câble de données et activez le débogage USB sur votre téléphone. Cliquez maintenant sur le bouton Lecture dans la fenêtre de traitement du PC, l'application sera directement installée sur votre téléphone Android et sera lancée automatiquement. C'est aussi simple que cela, alors essayez-le.
L'image ci-dessous représente l'interface utilisateur de notre application Android avec sa fenêtre de codage. Consultez la vidéo pour comprendre et exécuter le code sur un téléphone Android ainsi que sur un ordinateur.
Voilà, nous avons transformé notre ancienne radio FM en un gadget moderne sans fil qui peut être contrôlé par notre application Android. J'espère que cela aidera les gens à se mettre au travail, mais si vous avez besoin de conseils, comme toujours, vous pouvez utiliser la section des commentaires et nous serons heureux de vous aider.