Envoyer et recevoir des messages texte (SMS) avec le bouclier GSM SIM900
Composants et fournitures
| × | 1 | ||||
| × | 1 |
Applications et services en ligne
| ||||
|
À propos de ce projet
L'un des éléments essentiels de la construction de l'IoT projet est la possibilité de connecter des appareils. Le Wi-Fi et le Bluetooth sont de bons choix à faible coût, mais ils ne fonctionnent qu'à courte distance ou dans les zones de hotspot. Lorsque l'appareil doit se trouver à distance GSM est une bonne option et facile à configurer.
Dans ce tutoriel, je vais vous montrer à quel point il est facile d'envoyer et de recevoir des SMS messages sur GSM avec Arduino .
Dans les tutoriels suivants, je vais également vous montrer comment vous connecter via GSM à Internet et aux serveurs d'accès, et comment vous pouvez gérer les appels vocaux.
Étape 1 : Composants
- Un Arduino Mega (Vous pouvez utiliser d'autres cartes, mais il est préférable d'utiliser une carte dotée de 2 ports série ou plus. Le projet peut être modifié pour utiliser la série logicielle, mais l'utilisation d'une série matérielle est recommandée)
- Un blindage GSM basé sur SIM900 ou Shield ou Module compatible avec carte SIM installée (Image 2 ) (J'ai utilisé une version 1.0 GSM/GPRS Shield de Seeed Studio)
- 2 Femme-Homme fils de liaison
Étape 2 :connectez le GSM Shield à Arduino
- Supprimer les capots de cavalier du Bouclier GSM 's Cavaliers de sélection RX et TX (Image 1 )
- Branchez le Shield GSM sur le dessus de l'Arduino Mega
- Connectez l'extrémité masculine d'un Homme-Femme fil de liaison (fil orange ) vers le RX1 Broche de l'Arduino Mega (Images 2 et 3 )
- Connectez l'extrémité masculine d'un Homme-Femme fil de liaison (fil marron ) vers le TX1 Broche de l'Arduino Mega (Images 2 et 3 )
- Connectez l'extrémité Femelle du RX1 fil (fil orange ) à la goupille centrale du Cavalier de sélection RX du bouclier GSM (Image 4 )
- Connectez l'extrémité Femelle du TX1 fil (fil marron ) à la goupille centrale du cavalier de sélection TX du bouclier GSM (Image 4 )
- Image 5 montre le Shield GSM installé et connecté
Étape 3:Démarrez Visuino et sélectionnez le type de carte Arduino
Pour commencer à programmer l'Arduino, vous aurez besoin de l'Arduino IDE installé à partir d'ici :http://www.arduino.cc/ .
Assurez-vous d'installer la version 1.6.7 supérieure, sinon ce tutoriel ne fonctionnera pas !
Le Visuino :https://www.visuino.com doit également être installé.
- Démarrer Visuino comme le montre la première image
- Cliquez sur "Outils " sur le composant Arduino (Image 1 ) dans Visuino
- Lorsque la boîte de dialogue apparaît, sélectionnez "Arduino Mega 2560 " comme indiqué dans Image 2
Étape 4 :Dans Visuino :définissez la vitesse du canal Série 1 sur 19 200
Le GSM Shield est configuré par défaut pour une vitesse de port série de 19 200. Nous devons configurer le port série 1 pour cette vitesse :
- Dans l'inspecteur d'objets, développez le "Série ", puis la propriété "Item[ 1 ] " Sous-Propriété, et sélectionnez sa "Vitesse " Sous-propriété (Image 1 )
- Dans l'inspecteur d'objets, cliquez sur la "Flèche vers le bas " à côté de la valeur de la "Vitesse " Sous-propriété (Image 1 )
- À partir de la liste déroulante liste sélectionnez le "19200 " (Image 2 ), pour modifier la valeur de la propriété (Image 3 )
Étape 5 :Dans Visuino :ajoutez et connectez le composant série GSM/GPRS
Nous devons ajouter un composant pour contrôler le module GSM. Le module est contrôlé via le canal série, nous devons donc le connecter. Broche numérique 9 est utilisé pour allumer/éteindre le module :
- Tapez "gsm " dans la zone Filtre de la boîte à outils des composants, puis sélectionnez "Série GSM/GPRS composant " (Image 1 ), et déposez-le dans la zone de conception (Image 2 )
- Connectez le "Sortie " broche de sortie du GSM1 composant au "In " broche d'entrée du "Série[ 1 ] " canal de l'Arduino composant (Image 2 )
- Connectez le "Power " broche de sortie du GSM1 composant au "Numérique " broche d'entrée du "Digital[ 9 ] " canal de l'Arduino composant (Image 3 ). Cette broche activera/désactivera On/Off la puissance du module GSM
Étape 6 :Dans Visuino :ajouter, configurer et connecter le composant de valeur de texte
L'initialisation du module GMS prend un certain temps. C'est bien si nous avons une indication que le module est prêt. Pour cela, nous enverrons le texte "GSM Ready" au port série lorsque le module sera prêt :
- Tapez "valeur de texte " dans la zone Filtre de la boîte à outils des composants, puis sélectionnez la "Valeur de texte composant " (Image 1 ), et déposez-le dans la zone de conception (Image 2 )
- Dans l'inspecteur d'objets, définissez la valeur de la "Valeur " propriété à "GSM Ready " (Image 2 )
- Connectez le "Prêt " broche de sortie du GSM1 composant au "In " broche d'entrée de la TextValue1 composant (Image 3 )
- Connectez le "Sortie " broche de sortie de la TextValue1 composant au "In " broche d'entrée du "Série[ 0 ] " canal de l'Arduino composant (Image 4 )
Étape 7 :Dans Visuino :ajoutez un élément de message court au composant GSM, puis envoyez la fonction de message à l'élément
Le composant GSM se compose de nombreux modules effectuant différentes tâches. Puisque nous n'utiliserons que des SMS, nous devons ajouter uniquement le module "Short Message", puis y ajouter une fonction "Envoyer un SMS":
- Dans la zone de conception, sélectionnez le GSM1 composant (Image 1 )
- Dans l'inspecteur d'objets, cliquez sur le bouton "... " à côté de la valeur du "Module " propriété du GSM1 composant (Image 1 )
- Dans l'éditeur de modules, sélectionnez « Message court ”, puis cliquez sur le bouton "" (Image 2 ) pour en ajouter un (Image 3 )
- Dans l'inspecteur d'objets, cliquez sur le bouton "... " à côté de la valeur des "Fonctions " propriété du "message court module " (Image 3 )
- Dans l'éditeur de fonctions, sélectionnez « Envoyer un SMS ”, puis cliquez sur le bouton "" (Image 2 ) pour en ajouter un
Étape 8 :Dans Visuino :configurez la fonction d'envoi de SMS et connectez les informations du message reçu au numéro de série
- Dans l'inspecteur d'objets, définissez la valeur de "Adresse " de la propriété "Envoyer SMS " élément au numéro de téléphone où vous souhaitez envoyer le message (Dans mon cas, pour tester j'ai entré le numéro de ma carte SIM afin que le module reçoive et imprime les messages qu'il envoie) (Photo 1 - montre un numéro composé)
- Dans l'inspecteur d'objets, sélectionnez le "Texte " propriété (Image 2 )
- Cliquez sur le "Épingle " devant le "Texte " propriété (Image 2 )
- À partir de la liste déroulante liste, sélectionnez le "String SinkPin " (Image 3 ). Cela ajoutera un nouveau "Texte " épingle à la "Envoyer SMS " fonction (Image 4 )
- Fermer les boîtes de dialogue de l'éditeur d'éléments (Image 4 )
- Connectez le "Sortie " broche de sortie du "MessageInfo " bloc du GSM1 composant au "In " broche d'entrée du "Série[ 0 ] " canal de l'Arduino composant (Image 4 )
Étape 9 :Dans Visuino :ajoutez et connectez le composant Char To Text
Le port série reçoit un caractère à la fois. Pour envoyer un SMS, nous devons récupérer tous les caractères d'une ligne, en créer un texte et l'envoyer au module GSM :
- Tapez "caractère " dans la zone Filtre de la boîte à outils des composants, puis sélectionnez "Char to Text composant " (Image 1 ), et déposez-le dans la zone de conception (Image 2 )
- Connectez le "Sortie " broche de sortie du "Série[ 0 ] " canal de l'Arduino composant au "In " broche d'entrée du CharToText1 composant (Image 2 )
- Connectez le "Sortie " broche de sortie du CharToText1 composant au "Texte " broche d'entrée du "Envoyer SMS " élément du GSM1 composant (Image 3 )
Étape 10 :Dans Visuino :ajoutez, configurez et connectez le composant Delay
Nous devons nous assurer que nous envoyons le SMS après que le texte a été correctement mis à jour. Nous pouvons utiliser un composant Delay avec un délai court pour cela :
- Tapez "délai " dans la zone Filtre de la boîte à outils des composants, puis sélectionnez le "Délai composant " (Image 1 ), et déposez-le dans la zone de conception (Image 2 )
- Dans l'inspecteur d'objets, définissez la valeur de "Interval " propriété à "100 " (Image 2 )
- Connectez le "Sortie " broche de sortie du CharToText1 composant au "In " broche d'entrée du Delay1 composant (Image 3 )
- Connectez le "Sortie " broche de sortie du Delay1 composant à la "Horloge " broche d'entrée du "Envoyer SMS " élément du GSM1 composant (Image 4 )
Étape 11 :générer, compiler et télécharger le code Arduino
- En Visuino , Appuyez sur F9 ou cliquez sur le bouton affiché sur Image 1 pour générer le code Arduino et ouvrir l'IDE Arduino
- Dans l'IDE Arduino , cliquez sur Télécharger bouton, pour compiler et télécharger le code (Image 2 )
Étape 12 :Et jouez...
Félicitations ! Vous avez terminé le projet.
Image 1 montre le projet connecté et sous tension. Sur Image 2 vous pouvez voir le Visuino complet diagramme. Si vous vous connectez avec un terminal série à l'Arduino, après environ 30 secondes, vous verrez le message "GSM Ready " apparaît (Image 3 )
Une fois le message affiché, si vous saisissez du texte et cliquez sur "Envoyer " (Image 4 ), le texte sera envoyé sous forme de message SMS. Si vous avez sélectionné comme numéro de téléphone à l'Étape 8 au téléphone de la carte SIM sur le Shield, après un certain temps, vous recevrez le message et il s'affichera sur le terminal série (Image 5 ). Si vous avez défini le numéro d'un autre appareil à l'Étape 8 , les messages seront envoyés à cet appareil.
Vous pouvez envoyer des messages SMS au numéro de téléphone à partir d'autres téléphones et appareils, et ils seront également affichés dans le terminal série.
Le Visuino est également joint projet, que j'ai créé pour ce tutoriel. Vous pouvez le télécharger et l'ouvrir dans Visuino :https://www.visuino.com
F1FP7L0IQS4L35B.zip
Processus de fabrication
- Système de présence utilisant Arduino et RFID avec Python
- Capteur DHT11 avec LED et haut-parleur piézo
- Arduino Temp. Moniteur et horloge en temps réel avec affichage 3.2
- Contrôler un robot Roomba avec Arduino et un appareil Android
- Voltmètre DIY avec Arduino et un écran Nokia 5110
- Contrôle du servomoteur avec Arduino et MPU6050
- Système de surveillance et de détection des incendies de forêt (avec alertes SMS)
- module GPS u-blox LEA-6H 02 avec Arduino et Python
- Comment lire la température et l'humidité sur Blynk avec DHT11