dedicaces
Transcription
dedicaces
3ème G.E. Commande de portail pilotée par GSM 2006/2007 DEDICACES m a x m o .c e d i pour leurs soutiens et nos différentes familles et tous nos proches a . encouragements durant nos trois années d'étude. Que Dieu le tout w puissant leurs offre la longévité et w la santé. w à notre formation. / Nos Professeurs pour leurs participations/actives : p M. RAFIK, notre encadrant pour le suivi t rigoureux de notre projet. t h r su é g r a h c é l Té 1 3ème G.E. Commande de portail pilotée par GSM 2006/2007 REMERCIEMENTS N ous tenons à remercier : e d i Tout d’abord le Dieu tout puissant pour sa grâce. w w m a x m o .c .a M. Mohamed DIOURI président du groupe IGA pour avoir garanti et /: /w tp Les Professeurs, la directiont des études particulièrement M. Khalid h r BENZAKOUR Directeur pédagogique de IGA-Belvèdère qui a veillé à ce u s de taille. que notre formation soit é g r a Nous adressons nos loyaux remerciements à Monsieur RAFIK notre encadrant h c pour son professionnalisme, son apport et ses irremplaçables conseils. é l é T Aussi, nous saluons tout ceux qui, de près ou de loin, ont contribué à la assuré les préalables de notre formation. réalisation de ce projet. Enfin, nous remercions nos parents qui restent l’une des pièces maîtresse de notre réussite. 2 3ème G.E. Commande de portail pilotée par GSM 2006/2007 CAHIER DE CHARGES otre travail consiste à concevoir et réaliser un système capable de commander l’ouverture et la fermeture d’un portail à distance via le réseau GSM. m o .c Pour cela, notre commande composée de trois principaux dispositifs, sera scindée en m a x trois parties: 1. l’acquisition de l’appel émis par un portable. e d i a . 2. le traitement des informations par un microcontrôleur : w wde l’appelant Acquisition et authentification du numéro /: /wde l’ouverture ou de la fermeture Génération de l’ordre de l’activation tp t h 3. Unité d’interfaçage pour rexécuter physiquement l’ordre d’ouverture ou de fermeture donné par le microcontrôleur. su é g r a h c é l Té 3 3ème G.E. Commande de portail pilotée par GSM 2006/2007 SOMMAIRE INTRODUCTION 5 PARTIE 1 page I. Evolution des Technologies Mobiles (de la 1ère G à la 4ème G) 7 om II. Présentation du réseau GSM III. Le portable GSM & la carte SIM m a x IV. Le microcontrôleur e d i V. La communication entre le portable et le terminal GSM. w PARTIE 2 w /: /w I. Description su IV. Fonctionnement du montage édu montage g VI. Listes des composants r a VII. Configurationhdu téléphone c DU programme implémenté dans le micro contrôleur. VIII. Organigramme é l en Basic implémenté dans le microcontrôleur U1. é IX. Programme T X. Comment Programmer en Basic V. Circuit imprimé CONCLUSION 12 18 24 .a tp t rh II. Brochages III. Schéma électrique .c 9 32 33 35 35 38 39 39 40 41 43 45 BIBLIOGRAPHIE & DOCUMENTS ANNEXE 4 3ème G.E. Commande de portail pilotée par GSM 2006/2007 INTRODUCTION ans le cadre de leur formation, les étudiants de l’IGA sont amenés à réaliser un projet à la fin de leur cycle. Cette activité, non moins importante, permet à l’étudiant d’être autonome, de trouver des solutions pour concrétiser une idée donnée. Tout cela, est m o c . Notre idée de projet consiste à développer une commande qui nous permettra d’ouvrir et de m a fermer un portail à distance en utilisant un terminal GSM. x Ainsi notre travail sera axé sur deux parties : e d de la technologie mobile, i Dans la première partie, théorique, nous parlerons de l’évolution .a une étude bibliographique de notre projet. w w w de comment réaliser notre commande, son Dans la deuxième partie, pratique, nous parlerons / / fonctionnement et bien d'autres détails concernant :notre réalisation. tp t h r su é g r a h c é l Té pour lui, une simulation de ce qui l’attend en entreprise. 5 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x m o .c EVOLUTION DES TECHNOLOGIES MOBILES (1G, 1,5G, 2G, 2,5G, 3G, 3,5G ET 4G). P7 PRESENTATION DU RESEAU GSM w w LE PORTABLE GSM & LA CARTE SIM e d i .a /: /w tp t LA COMMUNICATION ENTRE LE PORTABLE ET LE TERMINAL GSM. h r su é g r a h c é l Té LE MICROCONTROLEUR 6 P9 P12 P19 P23 3ème G.E. Commande de portail pilotée par GSM 2006/2007 I. EVOLUTION DE LA TECHNOLOGIE MOBILE De la 1G à la 3G: 1G : La première génération de téléphonie mobile (notée 1G) possédait un fonctionnement analogique et était constituée d'appareils relativement volumineux. S'appuyant sur une technique de modulation radio proche de celle utilisée par les stations de radio FM, ils ont une couverture limitée. m o c . AMPS (Advanced Mobile Phone System), apparu en 1976 aux Etats-Unis, constitue le mOutre-atlantique, en premier standard de réseau cellulaire. Il est utilisé principalement a x possédait de faibles Russie et en Asie. Ce réseau analogique de première génération e dtéléphoniques. i mécanismes de sécurité rendant possible le piratage de lignes .a w TACS (Total Access Communication System) estw la version européenne du modèle AMPS. wsystème fut notamment largement utilisé en Utilisant la bande de fréquence de 900 MHz,/ce / : Angleterre, puis en Asie (Hong-Kong et Japon). p t t hCommunication System) est une version améliorée du ETACS (Extended Total Access r standard TACS développé au suRoyaume-Uni utilisant un nombre plus important de canaux de communication. é g Les réseaux cellulaires de premières r générations ont été rendus obsolètes avec l'apparition d'une a seconde génération entièrement numérique. h c é l 2G : é T La seconde génération de réseaux mobiles (notée 2G) a marqué une rupture avec la première Il s'agissait principalement des standards suivants : génération de téléphones cellulaires grâce au passage de l'analogique vers le numérique. Elle s'accompagne de la réduction de la taille des combinés et assure une certaine confidentialité. Le GSM (Global System for Mobile communications) est le standard le plus utilisé en Europe à la fin du XXe siècle, supporté aux Etats-Unis. Ce standard utilise les bandes de fréquences 900 MHz et 1800 MHz en Europe ainsi qu’au Maroc. Aux Etats-Unis par contre, la bande de fréquence utilisée est la bande 1900 MHz. Ainsi, on appelle tri bande, les téléphones portables pouvant fonctionner partout dans le monde. Grâce aux réseaux 7 3ème G.E. Commande de portail pilotée par GSM 2006/2007 2G, il est possible de transmettre la voix ainsi que des données numériques de faible volume, par exemple des messages textes (SMS, pour Short Message Service) ou des messages multimédias (MMS, pour Multimédia Message Service). La norme GSM permet un débit maximal de 9,6 kbps. 2,5G : En 2001, une évolution importante de la norme GSM fait son apparition : le GPRS (General Packet Radio Service).c’est une extension de la norme GSM mise au point afin d'améliorer le débit. À michemin entre le GSM (2G) et l’UMTS (3G), le GPRS, souvent appelé 2,5G, permet d’obtenir des vitesses de transfert 3 fois supérieures au GSM. Concrètement, le GPRS n’étant qu’une m o .c amélioration du réseau existant, la voix continue de transiter sur le réseau GSM, tandis que les données circulent via le GPRS, selon le principe de transmission. 2,75G : m a les améliorations du débit de la norme GPRS en annonçant un débit théorique de 384 Kbps, ouvrant x ainsi la porte aux applications multimédias. En réalité la norme EDGEe permet d'atteindre des débits d i maximum théoriques de 473 kbit/s, mais elle a été limitée afin a de se conformer aux spécifications . IMT 2000 (International Mobile Télécommunications-2000) w de l'ITU (Internationale le w communications Union). 3G : /: /w À l’automne 2004, la téléphonie mobile deptroisième génération UMTS (Universal Mobile t en France. Ce n’est pas une révolution de la même t Télécommunications System) fait son apparition h r ampleur que la 2G dans les années 90, mais elle pourrait grandement faire évoluer les usages : accès su et messages vidéo ainsi que la réception de la télévision haut débit à l'Internet sans fil, visiophonie é permet de faire transiter d'avantage de données simultanément. sur le téléphone. Cette technologie g r a h générations actuelles : o Récapitulatif des c é Bande de fréquence l Standard Génération Débit kbps é Permet le transfert de voix ou de données numériques T GSM 2G 9,6 9,6 La norme EDGE (Enhanced Data Rates for Global Evolution, présentée comme 2.75G quadruple de faible volume. GPRS 2.5G EDGE 2.75G UMTS 3G Permet le transfert de voix ou de données numériques 21,4de volume modéré. 171,2 Permet le transfert simultané de voix et de données 43,2numériques. 345,6 Permet le transfert simultané de voix et de données numériques à haut débit. 8 0.144-2 48 171 384 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Après la 3G, la 4G ? L’industrie mondiale des télécommunications y pense déjà, et la quatrième génération de téléphonie mobile serait prévue pour un lancement à l’horizon 2007-2010 au Japon. Des tests sont d'ores et déjà conduits sur une technologie intitulée OFDM (Orthogonal Frequency Division Multiplexing) permettant d’atteindre des pics de débits de 300 mégabits/s. Dans un avenir plus proche, les spécialistes s’intéressent déjà à une évolution de l’UMTS, la technologie HSDPA (High Speed Downlink Package Access) qui garantirait enfin les 2 Mbps de débit réel initialement espérés par l’UMTS. m o c . Le réseau GSM a pour premier rôle de permettre des communications entre abonnés mobiles m (GSM) et abonnés du réseau téléphonique commuté (RTC - réseau fixe). a x Le réseau GSM se Le réseau GSM s'interface avec le réseau RTC et comprend des commutateurs. e d distingue par un accès spécifique : la liaison radio. Il est composé dei trois sous ensembles : a Le sous système radio BSS (Base Station Sub-system): assure. et gère les transmissions radios. w ou SMSS (Switching and Le sous système d'acheminement NSS( Network Sub-system) w wfonctions nécessaires pour les appels et la Management Sub-system) comprend l'ensemble des / / : gestion de la mobilité. p t OSS( Opération Sub-system) qui permet à t Le sous-système d'exploitation et de maintenance h l'opérateur d'exploiter son réseau. r u mode circuit) va permettre à un opérateur de proposer des La mise en place d'un réseau GSMs(en services de type "Voix" à seséclients en donnant l'accès à la mobilité tout en conservant un gRTC existant. interfaçage avec le réseau fixe r a GSM représente un investissement considérable. A l’heure actuelle les La mise en place d’un réseau h c réseaux GSM neécessent d’évoluer afin d’assurer une qualité de couverture toujours plus l importante. La é couverture du réseau est assurée par la multiplication des ensembles BTS – BSC. Ci T dessous on retrouve le schéma de l’architecture GSM. II. RESEAU GSM (Global System for Mobile communication) 9 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x w w m o .c e d i .a /: /w tp FONCTIONNEMENT: EQUIPEMENT UTILISES ET PRINCIPEtDE h suivant sont nécessaires : Pour réaliser un réseau GSM les équipements r u BTS (Base Transceiver Station) : s c’est une antenne qui a une portée é d’émission et de réception réglable mais avec une maximum de g 30 Km de portée. La BTS est r plus communément appelé relais. a h c é l Té 10 3ème G.E. Commande de portail pilotée par GSM 2006/2007 BSC (Base Station controller): Il permet de surveiller les relais BTS, il est de plus responsable de toutes les fonctions liées à la transmission radio, la gestion des ressources du réseau, le niveau de puissance des BTS et des mobiles connectés à celui-ci. m o MSC (Mobile Service Switching Centre) : c . C’est le centre de commutation du service mobile MSC, il est le commutateur du réseau GSM. Il mles autres réseaux de gère plusieurs BSC. Il assure l’inter fonctionnement du système cellulaire avec a x réseau tels que le télécommunications. Il est en liaison avec d'autres équipements du sous-système e d i VLR, le HLR, le EIR . .a w w /: /w tp t h r su BSS (Base Station Sub-system):é g Analyse les données misesr pour assurer la continuité de la communication dans la mobilité a (BSS = BTS+BSC). h c é l é T 11 3ème G.E. Commande de portail pilotée par GSM 2006/2007 VLR (Visitors Location Register) : C’est une base de donnée en relation avec chaque MSC. Le VLR contient une partie des informations des HLR concernant les abonnées des mobiles, il permet d’enregistrer les informations de localisations des mobiles, c'est ce qui permet de localiser précisément un téléphone mobile. EIR (Equipement Identity Register): l'enregistreur des identités des équipements est une base de donnée contenant le numéro international de l'équipement IMEI (International Mobile Equipement Identity) permettant ainsi m o .c son identification. m a x il a la charge, le HLR communications d'un certain nombre d'abonnés. Pour chaque abonné dont e possède l'identité internationale de l'abonné, son numéro d'abonnéid et les services souscrits auprès des opérateurs de télécommunications. .a w w w / / : & LA CARTE SIM III. LE PORTABLE GSM p t t h Le mobile GSM est l'un des équipements assurant une communication rapide et fiable de nos jours. r Actuellement plusieurs constructeurs suse partagent le marché, nous pouvons cités: ALCATEL, NOKIA, SIEMENS, MOTOROLLA, é ERICSON, SAGEM et bien d'autres. g r a Le mobile et la carte SIM (Subscriber Identity Module) sont les deux seuls éléments auxquels un h c accès en manipulation. Ces deux éléments suffisent à réaliser l'ensemble utilisateur a directement é l nécessaires à la transmission et à la gestion des déplacements. des fonctionnalités é T Nous n’allons pas entrer dans les détails sur sa construction, mais parler succinctement de son HLR (Home Location Register): l'enregistreur de localisation nominal contient les informations nécessaires pour la gestion des fonctionnement et de certains éléments entrant en jeux pour assurer sa communication. LE POSTE MOBILE : Un téléphone portable GSM est un produit industriel complexe, réunissant sous un très petit volume, un grand nombre de composants électroniques de pointe. 12 3ème G.E. Commande de portail pilotée par GSM Eclatement d’un mobile 2006/2007 e d i m a x m o .c a . La figure ci-dessous s'efforce de découper le mobile GSM en un w certain nombre de blocs fonctionnels, qui ne correspondent d'ailleurs pas Forcément à la répartition w réelle des composants sur les circuits w imprimés. / / : par le regroupement d'un nombre de plus en plus En effet, les incessants progrès de l'intégration se traduisent p tque les fabricants ont actuellement toujours besoin de 300 t grand de fonctions dans chaque circuit intégré. Reste h r à 600 composants (actifs et passifs) pour construire un téléphone portable de bon niveau ! su é d’un Téléphone portable GSM Schéma synoptique g r a h c é l Té 13 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Antenne Écouteur Partie radio (émission / réception) Afficheur vibreur m a x M Partie logique Partie audio (bande de base) buzzer su w w /: /w tp t rh Clavier Lecteur Carte sim m o .c e d i .a Alimentation é g r l é T micro a h éc La partie radio : Bien que d'une importance fondamentale et d'une réalisation pratique délicate, la partie radio n'est pas ce qu'il y a de plus compliqué dans un mobile GSM. Assumant des fonctions d'émission et de réception largement contrôlées par la partie logique, elle se compose essentiellement d'amplificateurs à faible bruit ou de puissance, de filtres, d'oscillateurs commandés, et de circuits de modulation démodulation. 14 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Il lui appartient de tirer le maximum de performances d'une antenne déjà réduite à sa plus simple expression. On lui demande aussi un excellent rendement énergétique, afin d'assurer au mobile plusieurs heures d'émission à partir d'une batterie de fort modeste capacité. La partie émission ne fonctionne d'ailleurs pas que pendant les communications téléphoniques : elle transmet de brefs paquets de données dès que le mobile change de zone, ou bien quand le réseau lui demande, périodiquement, de signaler sa position. Il en va de même lorsque le mobile va sonner (car il confirme d'abord sa présence au réseau), ou bien quand il reçoit un minimessage (dont : il accuse réception). Sur le circuit imprimé principal de l'appareil, la partie radio se situe naturellement au plus près de m o .crayon de plusieurs alors qu'on sait bien qu'un portable GSM en service peut causer des perturbations dans un m mètres. a x e La partie audio : d i La partie audio ou « bande de base » comprend bien entendu le micro.a et l'écouteur, voire le Haut-parleur dans w le cas des portables « mains libres ». w L'un de ses rôles essentiels est celui de CODEC, autrement dit w de COdeur-DECodeur. / / : À des fonctions de conversion analogique numérique et numérique analogique s'ajoutent ainsi celles de p t t pour obtenir une bonne qualité de son à partir d'un compression et décompression de données, indispensables h faible débit de transmission. r u s é La partie logique : g r portable, le microprocesseur principal exécute un logiciel extrêmement a Véritable « cœur » du téléphone h complexe, programmécdans une mémoire éventuellement actualisable par téléchargement. C'est à ce édoit toutes les spécificités fonctionnelles de l'appareil, à commencer par celles de son l programme que l'on é système de «T menus ». l'antenne, et fait l'objet de précautions draconiennes en matière de CEM (Compatibilité Electromagnétique). Elle n'est en effet distante que de quelques centimètres de circuits fort susceptibles, En plus du clavier et de l'afficheur (l'interface « homme machine » définie en termes si poétiques par la norme GSM), la partie logique contrôle le buzzer faisant office de sonnerie, l'éventuel vibreur, les parties audio et radio (synthétiseur de fréquences), le lecteur de carte SIM, voire le chargeur de batterie. Ajoutons à cette liste de « périphériques » une mémoire non-volatile, et réputée sécurisée, dans laquelle sont enregistrées des données « sensibles » telles que codes de déverrouillage ou identifiant (IMEI) du mobile. 15 3ème G.E. Commande de portail pilotée par GSM 2006/2007 L’alimentation : Le rôle principal de la partie « alimentation » d'un téléphone portable est de fournir à ses différents circuits les tensions exactes qu'ils réclament, et cela jusqu'à l'épuisement complet de la batterie. Typiquement, un mobile muni d'une batterie de 3,6 V pourrait alimenter ses étages de puissance radio sous 3,0 V, le reste de la partie radio sous 2,8 V, et les circuits « bande de base » sous 2,0 V. La partie logique et la carte SIM, pour leur part, seront souvent alimentées en 3V, si ce n'est en 5 V par le biais d'un élévateur de tension, à découpage. L'autre fonction de la partie " alimentation " est la gestion de la batterie. On y trouve la plupart du temps m o .c les circuits de charge et de conditionnement (le " chargeur " lui-même n'étant alors qu'une simple alimentation plus ou moins stabilisée), mais aussi ceux nécessaires à l'affichage permanent de l'état de m a x (dé)charge de la batterie. L’antenne : e d i d'utiliser pour un téléphone Le type d'antenne qu'il paraîtrait logique a . le « fouet » quart d'onde. portable tenu à la main est bien évidemment w w fragile ou même dangereux) par certains Encore jugé trop encombrant (voire wcommence à céder la place à des antennes / utilisateurs, ce type de fouet / : soude directement sur le circuit imprimé. Les subminiatures que l'on p t les plus miniaturisés peuvent ainsi se passer de toute t téléphones portables h r antenne apparente, malgré des performances radio relativement honorables u à défaut s d'être optimales. é g ar h c é souhaite un maximum de discrétion. Pratiquement silencieux, il nécessite toutefois sonnerie lorsque l'on l que l'utilisateur porte Té le téléphone sur lui. Le vibreur : Présent à titre de perfectionnement sur bon nombre de téléphones portables, le vibreur se substitue à la Même si cela peut paraître anachronique dans l'environnement de haute technologie d'un téléphone portable, beaucoup de vibreurs fonctionnent selon un principe entièrement électromécanique. Un micromoteur à courant continu fait tourner, à une vitesse assez élevée, une sorte d'excentrique dont la forme est le plus souvent celle représentée ci-dessous 16 3ème G.E. Commande de portail pilotée par GSM 2006/2007 La rotation d'une pièce aussi manifestement déséquilibrée, et d'ailleurs relativement massive, induit naturellement de puissantes vibrations, silencieuses mais parfaitement perceptibles. L’afficheur et le clavier (l’interface utilisateur) : Ce que la spécification GSM appelle si poétiquement " interface homme machine " rassemble tout ce qui permet à l'utilisateur de dialoguer avec le système d'exploitation du mobile. Au clavier et à l'afficheur (texte ou graphique, monochrome ou couleur), il convient ainsi d'ajouter la sonnerie, et surtout l'écouteur (ou le haut-parleur) dans ses fonctions de diffusion de tonalités de signalisation. Bien souvent, celles-ci ne sont pas produites par le réseau, mais par le poste mobile sur ordre de celui-ci. Cela permet de présenter à m o .c l'utilisateur des tonalités réalistes, même si le réseau n'est pas en mesure de les amener jusqu'à lui, tout en économisant des ressources de transmission. m a x e d L'identification d'un mobile s'effectue exclusivement au moyeni de la carte SIM. Une SIM .a (Subscriber Identity Module) est un microprocesseur implanté dans une carte. Par extension, on w parle de la carte SIM. La principale fonction de la cartew SIM est de contenir et de gérer une série w de données. En effet, elle contient des d'informations. Elle se comporte donc comme une mini-base / / : données spécifiques suivantes : p t t Numéro de téléphone de l'abonné (MSISDN) hInternational Mobile Subscriber Identity) Numéro d'abonné international (IMSI, r Etat de la carte SIM su Code de service (opérateur) é g Clé d'authentification r a Code PIN (PersonalhIdentification Code) c Unlock Code) Code PUK (Personal é l é PIN (Personal Identification Number).Code ou mot de passe nécessaire à chaque connexion d'un T GSM au réseau. La carte SIM : PUK (PIN Unblocking Key). Code nécessaire au déverrouillage d'une carte SIM. A noté que l'identification d'un utilisateur est réalisée par un numéro unique (IMSI International Mobile Subscriber Identity) différent du numéro de téléphone connu de l'utilisateur (MSISDN Mobile Station ISDN Number), 17 3ème G.E. Commande de portail pilotée par GSM 2006/2007 MSISDN (Mobile Subscriber ISDN) Numéro d'abonné au réseau GSM. Il est possible d'avoir plusieurs numéros (pour des services différents) au sein d'une seule carte SIM tous deux étant incrustés dans la carte SIM. Chaque terminal mobile GSM possède aussi un numéro d'identification appelé IMEI (International Mobile station Equipment Identity). Ce numéro qui est indiqué sur l'appareil (souvent sous la batterie) est aussi stocké dans les mémoires du terminal et est inique pour chaque mobile. Véritable clef d'identification et d'authentification de l'utilisateur du mobile, la carte SIM est installée dans un connecteur spécial, elle est connectée à la partie logique par des circuits d'interface appropriés. II s'agit m o .c en effet d'une carte à puce asynchrone, conforme à la fois aux spécifications de la norme ISO 7816 et à celles de la norme GSM 11.11. m a x w w e d i .a /: /w tp d’une carte sim t Schéma synoptique h r La carte Sim est organisée autour d’unuprocesseur .Elle contient : s ROM (Read only Memory) 16ko. Elle contient le système d’exploitation de la carte SIM. éErasable Programmable Read Only Memory) 8ko. Les numéros EEPROM (Electricaly g r a autorisés. hAccess Memory) quelques centaines d’octets. Elle sert à charger des c RAM (Random é les applications. l données pour TéCodage et décodage. Crypto: La SIM communique avec le portable en utilisant un protocole de communication (T=0) : Protocole T=0 protocole de transmission par caractère half-duplex IV. LE MICROCONTROLEUR Un microcontrôleur est un composant électronique Autonome doté d’un microprocesseur, de la mémoire RAM, de la mémoire permanente, des interfaces d’E/S parallèles, série (RS232), des 18 3ème G.E. Commande de portail pilotée par GSM 2006/2007 interfaces d’E/S analogique, des Timers pour gérer le temps, d’autres modules plus au moins sophistiqués selon la taille des µC. Pic 16F876 Définition : Les PIC sont des microcontrôleurs à architecture RISC (Reduce Instructions Construction Set), ou encore composant à jeu d’instructions réduit. L’avantage est que plus on réduit le nombre d’instructions, plus leur décodage sera rapide ce qui augmente la vitesse de fonctionnement du microcontrôleur. La famille des Pics est subdivisée en 3 grandes familles : m a x La famille Base-Line, qui utilise des mots d’instructions de 12 bits, m o .c La famille Mid-Range, qui utilise des mots de 14 bits (et dont font partie la 16F84 et 16F876), e d i La famille High-End, qui utilise des mots de 16 bits. Le pic 16F876 appartient a la famille MID- RANGE. w /: /w tp t rh Description : é g r l é T w .a su a h éc Pour une description complète des broches consultées la documentation constructeur en annexe. Structure interne : Les éléments essentiels du PIC 16F876 sont : une mémoire programme de type EEPROM flash de 8K mots de 14 bits, 19 3ème G.E. Commande de portail pilotée par GSM 2006/2007 une RAM donnée de 368 octets, une mémoire EEPROM de 256 octets, trois ports d'entrée sortie, A (6 bits), B (8 bits), C (8 bits), convertisseur Analogiques numériques 10 bits à 5 canaux, USART, Port série universel, mode asynchrone (RS232) et mode synchrone SSP, Port série synchrone supportant I2C Trois TIMERS avec leurs Prescalers, TMR0, TMR1, TMR2 Deux modules de comparaison et Capture CCP1 et CCP2 Un chien de garde, Générateur d'horloge, à quartz (jusqu’ à 20 MHz) ou à Oscillateur RC m a x Description de la structure interne : w w /: /w tp t rh é g r l é T m o .c e d i .a su a h éc Le port d’E/S PORTA : Le port A désigné par PORTA est un port de 6 bits (RA0 à RA5). RA6 et RA7 ne sont pas accessibles. La broche RA4 est multiplexée avec l'entrée horloge du timer TMR0, elle peut donc 20 3ème G.E. Commande de portail pilotée par GSM 2006/2007 être utilisée soit comme E/S numérique normale du port A, soit comme entrée horloge pour le Timer TMR0, le choix se fait à l'aide du bit T0CS du registre OPTION_REG. T0CS = 0 RA4 est une E/S normale T0CS = 1 RA4 = horloge externe pour le timerTMR0 Le port d’E/S PORTB : Le port B désigné par PORTB est un port bidirectionnel de 8 bits (RB0 àRB7). Toutes les broches sont compatibles TTL. La configuration de direction se fait à l'aide du registre TRISB, positionner un bit de TRISB à 1 m o .c configure la broche correspondante de PORTB en entré et inversement. Au départ toutes les broches sont configurées en entrée. m a x e d sont compatibles TTL. La configuration de direction se fait à l'aidei du registre TRISC, positionner .a un bit de TRISC à 1 configure la broche correspondante de PORTC en entré et inversement. Au w départ toutes les broches sont configurées en entrée. w w Read Only Memory) de données : La mémoire EEPROM (Electrical Erasable Programmable / / : EEPROM de donnée. C’est dans cette partie Le PIC 16F876/877 dispose de 256 octets de mémoire p t du portail. t que prendront place les numéros habilités à l’ouverture h r La mémoire Programme ou mémoire suflash : Cette mémoire de 8 x 1024 motséde 14 bits sert à stocker le programme. Mais elle est accessible par gutilisée comme une extension de la mémoire EEPROM de données. r programme et peut donc être a Elle est non volatile h et reprogrammable à souhait Chaque position de 14 bits contient une c instruction. é l L'emplacementé du programme peut se situer à n'importe quel endroit de la mémoire. T Le port d’E/S PORTC : Le port C désigné par PORTC est un port bidirectionnel de 8 bits (RC0 àRC7). Toutes les broches La mémoire Ram : La mémoire RAM (Random Access Memory) est celle que nous allons sans cesse utiliser. Toutes les données qui y sont stockées sont perdues lors d’une coupure de courant. L’espace mémoire RAM adressable est de 512 positions de 1 octet chacune: 96 positions sont réservées au SFR (Special Function Registers) qui sont les registres de configuration du PIC. 21 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Les 416 positions restantes constituent les registres GPR (General Propose Registers) ou RAM utilisateur. L'ALU et l’accumulateur W : L’ALU est une Unité Arithmétique et logique 8 Bits qui réalise les opérations arithmétiques et logique de base. L’accumulateur W est un registre de travail 8 bits, toutes les opérations à deux opérandes passe par lui. m o C’est un compteur 8 bits. Il est incrémenté en permanence soit par l’horloge interne c (mode Timer) . soit par une horloge externe appliquée à la broche RA4 du port A (mode compteur). m a x e Le Timer TMR1 : d TMR1 est un Timer/Compteur 16 bits accessible en lecture/écriture.i .a w Le Timer TMR2 : w TMR2 est un Timer 8 bits accessible en lecture écriture. /: /w p t t Le CA/N : h 10 bits. C’est un convertisseur Analogique Numérique r su é L'USART : g r Asynchronous Receiver Transmitter) est l'un des deux modules L'USART (Universal Synchronous a de communication sériehdont dispose le PIC. c L'USART peut êtreéconfiguré comme système de communication asynchrone full duplex ou comme l half duplex. é système synchrone T Le Timer TMR0 : Les module de Comparaison/Capture CCP1 et CCP2 : Chacun des modules CCP1 et CCP2 permet : Soit de CAPTURER en un seul coup le contenu du double registre TMR1 Soit de COMPARER en permanence son contenu avec un registre 16 bits et de déclencher un événement au moment de l’égalité. Le Watch dog Timer WDT (Chien de garde) : 22 3ème G.E. Commande de portail pilotée par GSM 2006/2007 C’est un compteur 8 bits incrémenté en permanence (même si le µC est en mode sleep) par une horloge RC intégrée indépendante de l'horloge système. C’est un mécanisme de protection de votre programme. Rôle du PIC dans notre projet : Le pic est l’élément essentiel de notre projet. Il nous permet de traiter l’appel entrant en le comparant avec les numéros préenregistrés dans l’EEPROM du pic. De plus il commande l’ouverture du portail m o c . V. LA COMMUNICATION ENTRE LE PORTABLE ET LE TERMINAL GSM. m a x Transmission Série asynchrone (Emission, Réception) e est l'un des deux modules d L'USART (Universal Synchronous Asynchronous Receiver Transmitter) i a de communication série dont dispose le PIC16F876. Il peut .être configuré comme système de w half duplex. communication asynchrone full duplex ou comme système synchrone w Concernant notre projet, il sera configuré en full duplex (communication dans les deux sens). w / / : Transmission : tp d’état et de contrôle TXSTA (Transmit Status Le contrôle de la transmission se fait par le registre t h and Control Register) r su é SYNC — BRGH TRMT TX9D CSRC TX9 TXEN g r a CSRC (Clock Source h select bit) : Non utilisé en mode asynchrone c é utiliser le mode 9 bits il faut positionner le bit TX9. Le 9ème bit doit être écrit TX9 et TX9D : Pour l dans TX9D avant Té d'écrire les 8 bits de données dans TXREG (Transmit registrer) TXEN (Transmit Enable Bit): Permet de valider ou interdire la transmission 1=transmit enabled 0=transmit disabled SYNC (USART Mode Select bit): 0= mode asynchrone 1= mode synchrone BRGH (High Baud Rate Select bit): Sélectionne le mode haut débit du générateur de baud rate 23 3ème G.E. Commande de portail pilotée par GSM 2006/2007 1= High speed 0= Low speed TRMT (Transmit Shift Register Status bit) : Indicateur de l’activité du registre à décalage de transmission TSR : 1 TSR libre, 0 TSR (Transmit Shift Register) en activité Pour transmettre, il faut : S’assurer que l’interruption TXI n’est pas validée ; Configurer la broche 21 (port B) en entrée ; Configurer le registre TXSTA, positionné à 1 le TXEN (mode 8 bits). Dans le cas ou l’on utilise une transmission sur 9 bits (bit de parité par exemple), il faut autoriser la m o dans le bit TX9D du même registre. c . Initialiser le registre le registre SPBRG pour définir la vitesse de transmission. m a Valider le port avec le bit RCSTA c'est-à-dire positionné à 1 le bit SPEN. x Vérifier si TXIF=1 c'est-à-dire TXREG est vide. e d i Placer la donnée à transmettre dans le TXREG. .a Tant qu’on a des données à transmettre, il faut s’assurer que TXIF=1. w w w Réception : / / : Le contrôle de la réception se fait par le registrep RCSTA (Receive Status and Control Register) t t h r SPEN RX9 SREN CREN ADDEN FERR OERR RX9D u s é g r SPEN (Serial Port Enablea bit) : Validation du port série h 1 = validé c é 0 = Inhibé l RX9 (9-bit Receive Té Enable bit): 1 transmission sur 9 bits via le bit TX9 du registre TXSTA, la valeur du neuvième bit doit être mise 1: Validation du mode 9 bits 0: mode 8 bits SREN (Single Receive Enable bit) : validation de réception d'u seul octet (non utilisé en mode asynchrone) CREN (Continuous Receive Enable bit) : Validation du mode réception continue 1 : validé 0 : inhibé 24 3ème G.E. Commande de portail pilotée par GSM 2006/2007 ADDEN (Address Delect Enable bit): validation du mode détection d'adresse en mode 9 bits, utilisé en mode multiprocesseurs 1 validé 0 Inhibé FERR (Framing Error bit) : Erreur de synchronisation, lecture seule. OERR (Overrun Error bit): Erreur débordement du buffer de réception, lecture seule. RX9D : En mode 9 bits, le 9ème bit est reçu ici Au niveau de la Réception, il faut : S’assurer que l’interruption RCI n’est pas validée Configurer la broche 22 (port B) en entrée m a x Initialiser le registre SPBRG pour définir la vitesse de communication Configurer le registre TXSTA (asynchrone, BRGH) m o .c e réception continue) d i d'un octet Attendre que drapeau RCIF passe ce qui annonce la fin de réception a . Lire la donnée reçue dans le registre RCREG wrecevoir Recommencer au point 6) tant qu’on a des données à w w la platine de commande au téléphone La liaison est effectuée à l’aide du connecteur /reliant / : portable Siemens. p t t h r Commandes AT u s Définition : é g Les commandes AT (ATTENTION) r désigne un groupe de commandes qui permettent l’accès aux a fonctions d’un téléphone portable par l’intermédiaire d’un terminal. Elles sont définies par le h c standard de télécommunications (ETS).Ces commandes s’inspirent fortement du standard Hayes, du é l nom de la société américaine qui dans les années 70 a défini une liste de commandes universelles é T permettant de piloter un modem. Configurer le registre RCSTA (validation port, mode 8 bits, valider On peut effectivement comparer un téléphone portable à un modem sans fil, il est donc logique qu’il utilise des instructions semblables au modem fixe qui équipe nos PC. Les constructeurs se doivent de fabriquer des téléphones portables qui respectent ces normes. La première baptisée GSM07.07 permet l’accès aux fonctions générales du téléphone, la deuxième GSM07.05 concerne la gestion des SMS. Schéma de fonctionnement : 25 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x TE : Terminal Equipment (PC ou Microcontrôleur) m o .c e d i ME : Mobile Equipment(Téléphone Portable) .a TA : Terminal Adaptator interface qui assure la liaison entre ME et TE w w Comment utilise-t-on une commande AT ? /: /w commande est acceptée, la commande tp retournée t forme:<CR><LF>OK<CR><LF>.Dans h le cas contraire, un r retourné:<CR><LF>ERROR<CR><LF>. su é Commande de test : g r AT (commande) =? a h AT+CXXX=? c é l Les différentes Témanières d’utiliser une commande AT : Chaque instruction débute par les caractères ASCII « AT » et se termine par le Retour Chariot, CR: Carriage Return .Le téléphone doit répondre favorablement ou non à la commande envoyée. Si la est de message la forme d’erreur es Permet de tester si la commande est prise en charge par le module, retourne la liste des paramètres utilisables avec la commande CXXX. Commande de lecture : AT (commande)? AT+CXXX? retourne le ou les paramètres en cours associés à la commande CXXX 26 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Commande d’écriture : AT (commande)= (paramètres) AT+CXXX=<xxx> Applique le ou les paramètres <xxx> à la commande CXXX Il existe aussi des commandes d’éxécution comme la commande AT+CHUP qui permettent de faire juste une action. Elles s’écrivent sous cette forme : AT+CXXX Description des commandes que nous utilisons : m a x AT+CLIP : m o .c e d i Cette commande permet de présenter le numéro de l’appelant sur le port RX. Si la présentation n’est pas activée, il est impossible d’identifier l’appel. w AT+CHUP : w .a w / / : arrive : Exemple pratique de ce qui se passe quand un appel p t Ce test a été réalisé avec le portable et son tcâble connecté à un PC. La communication série est hun imprimé de l’écran observé grâce à l’hyperterminal dont voici r u Nous observons ici ce qui se passe s quand la présentation du numéro n’est pas activée et quand elle est activée. é g r a h c é l Té C’est une commande d’exécution qui permet de rejeter l’appel pour ne pas qu’il sonne indéfiniment 27 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x w w /: /w tp t rh é g r l é T su a h éc 28 .a e d i m o .c 3ème G.E. Commande de portail pilotée par GSM 2006/2007 EXEMPLE AVEC LA COMMANDE AT+CPIN : AT+CPIN: Entre le code PIN Commande de test Réponse AT+CPIN=? OK Si erreur +CGMI ERROR: <err> Commande de lecture Réponse AT+CPIN? +CPIN=<code> Paramètre m a x <code> READY ME SIM PIN ME w w e d i .a SIM PUK ME si erreur w / / : OK p t Permet de rentrer le code PIN t r h +CGMI ERROR: <err> +CGMI ERROR: <err> Commande d’écriture Réponse AT+CPIN=<pin> é g r su NB : La liste complète des commandes AT est donnée en annexe. l é T m o .c a h éc 29 3ème G.E. Commande de portail pilotée par GSM 2006/2007 DESCRIPTION P32 BROCHAGES m a x SCHEMA ELECTRIQUE FONCTIONNEMENT DU MONTAGE w w CIRCUIT IMPRIME m o .c e d i .a /: /w tp t CONFIGURATION DU TELEPHONE h r u s IMPLEMENTE ORGANIGRAMME DU PROGRAMME é DANS LE MICRO CONTROLEUR. g r a h IMPLEMENTE DANS LE MICROCONTROLEUR U1. PROGRAMME EN BASIC c é l é COMMENTT PROGRAMMER EN BASIC ? LISTES DES COMPOSANTS DU MONTAGE 30 P33 P35 P35 P38 P39 P39 P40 P41 P43 3ème G.E. Commande de portail pilotée par GSM 2006/2007 I. DESCRIPTION GSM m o .c RELAIS D’ACTIVATION D’OUVERTURE/FERMETURE PORTABLE GSM m a x MICROCONTROLEUR e d i .a w Ce dispositif, composé d’un téléphone portable w Siemens de la série 35 (C35,S35 par exemple) et d’une interface de commande, comporte /: /wun relais de sortie pouvant être activé à distance par un appel provenant d’un téléphone, tp fixe ou portable, dont le numéro a été t préalablement mémorisé. Les usagers habilités à ouvrir le portail sont mémorisés dans la mémoire h r EEPROM du microcontrôleur. u s é tout autre portable possédant en interne un TA (Terminal NB : Notre système peut utiliser g r de communiquer de manière série avec notre PIC. Il sera possible de Adaptator) qui va lui permettre a h et RxD disponibles sur un connecteur multibroche, propre à chaque récupérer les lignes cTxD é modèle de téléphone. l Té Le Montage proposée dans ce projet est dédiée à toutes les applications pour lesquelles une commande à distance sûre, précise et à faible coût est requise. Notre système offre toutes ces qualités car il ne réagit qu’à certains numéros de téléphone sans, d’ailleurs, répondre effectivement aux appels: Il se contente, en effet, de lire le numéro du téléphone appelant qui désire ouvrir ou fermer le portail. Donc, il n’y a pas de consommation d’unités car l’appel n’aura jamais de réponse. La dépense la plus significative consiste en l’achat du téléphone portable qui de nos jours ne coûte pratiquement rien. 31 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Le relais de sortie pouvant être activé en mode bistable ou monostable sera activé dans notre réalisation en mode bistable. C'est-à-dire que notre relais changera d’état qu’à chaque appel (un appel pour ouvrir, un autre pour fermer). Le dispositif peut donc être employé, non seulement comme commande d’ouverture de portail de villa ou de porte d’immeuble, de magasin, ou de grille de parc, de garage privés mais aussi pour la mise en route à grande distance d’appareils électriques divers comme les machines, système de chauffage d’habitation, etc… Le dispositif utilisant la couverture du réseau GSM des téléphones portables (MEDITELECOM, MAROC TELECOM, WANA) désormais très large, permettra de commander n’importe quel type d’appareil, quel que soit l’endroit où il se trouve. m a x w w m o .c e d i .a w / / : de la série 35 Figure : Siemens p t t h r II. BROCHAGES : su énous allons relier le portable et notre commande via le câble du Pour communiquer avec le PIC, g r portable appelé DATA oua DATA LINK. h interne de toute la circuiterie permettant une liaison directe entre notre Ces câbles disposentcen é série du PIC. Certains câbles comme le notre permet de connecter téléphone et le lport simultanément Téune alimentation externe afin de recharger la batterie du téléphone. 32 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x Figure 6 : w m o .c .a e d i Câblage du connecteur reliant la platine de commande au téléphone portable Siemens. w /: /w tp t rh é g r l é T su a h éc Figure 8 : brochage du connecteur 33 3ème G.E. Commande de portail pilotée par GSM 2006/2007 III. SCHEMA ELECTRIQUE : m a x w w /: /w tp t rh m o .c e d i .a Figure 1 : Schéma électrique de la commande d’ouverture de portail par portable GSM. su IV. FONCTIONNEMENT DU MONTAGE: é g Les broches extraites du rconnecteur (Figure 8) seront connectées aux points tension (+v), a Rx et à la masse comme le montre le schéma électrique. transmission (Tx), réception h c é l entrant et déconnexion : Lecture de l’appel é T entrant survient, les sonneries sont matérialisées par le message "RING’’ qui est Quand un appel envoyé sur la sortie série du téléphone à destination du microcontrôleur U1 à travers la ligne Rx. Si la présentation du numéro est active, le message complémentaire suivant apparaît: +CLIP:<numéro du téléphone>, <type> Pour mettre fin à l’appel, après réception du "RING’’ suivi de +CLIP:<numéro du téléphone>, <type>, le microcontrôleur U1 envoie la commande AT+CHUP. 34 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Exemple pratique de ce qui se passe quand un appel arrive : Ce test a été réalisé avec le portable et son câble connecté à un PC. La communication série est observé grâce à l’hyperterminal dont voici un imprimé de l’écran m a x w w Recherche du numéro : /: /w tp t rh m o .c e d i .a su é g Le numéro est stocké par programme sous forme d’un tableau de la manière suivante : r a h c 2 3 4 5 6 7 8 9 10 11 12 13 Numéro : 0 1 é l é ‘’ 0 7 4 0 5 8 7 1 5 ‘’ T: 14 15 Le programme compare ensuite le numéro de l’appel entrant aux numéros stockés dans l’EEPROM de U1. Le relais d’ouverture RL1 est activé si le numéro entrant correspond à un des numéros stockés au niveau de l’EEPROM 35 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Gestion du relais d’ouverture RL1 : Connecté à la broche 24 par l’intermédiaire d’un transistor fonctionnant en commutation, RL1 peut fonctionner en monostable : le relais se fermera durant une certaine durée, après chaque coup de téléphone reçu d’un numéro habilité.), ou en bistable : le relais de sortie change d’état à chaque appel reçu. En définitive, si un appel téléphonique habilité arrive, le contact se ferme s’il était ouvert et, en revanche, il s’ouvre s’il était fermé. Dans tous les cas, le circuit permet l’utilisation de tous les contacts du relais : le Normalement Ouvert (NO) et le Normalement Fermé (NF). Son fonctionnement dépend du réseau R7+C6 relié à la broche 27 du microcontrôleur U1. m o par la résistance variable trimmer R7 et le condensateur C6, en série. La valeur c est établie par . l’instruction POT du PicBasic, chargeant le condensateur avec des impulsions de niveau logique m haut (1) et le déchargeant en vérifiant le temps nécessaire pour cela. Lea mode bistable s’obtient x lorsque le trimmer est entièrement tourné vers la droite, alors qu’avec e une insertion, même minime, d le relais opère en mode i de résistance, c’est-à-dire en tournant le curseur dans le sens opposé, .a monostable. Dans ce cas, la valeur de résistance détermine la durée de fermeture du contact w à une durée plus brève et viceconsécutive à chaque commande : plus de résistance correspond w w versa. / / : bistable Dans notre cas, nous utiliserons le système en mode p t t h Pour la charge du portable : r On remarque que le portable est alimenté su constamment à travers +v. cela dans le but d’éviter que le portable s’éteigne faute d’énergie. é La présence de la résistance en série R6 servant à limiter le g r courant de charge. a h c Les autres composants é autour du microcontrôleur U1 sont nécessaires pour le faire démarrer. l Té Au moyen de ce réseau, le microcontrôleur, après initialisation, lit la constante de temps déterminée Notre système peut fonctionner en parallèle avec tout autre système d’ouverture ou de commande d’appareils. Par exemple, vous pourrez continuer à commander de l’intérieur de votre villa l’ouverture électrique du portail avec le poussoir de secours ou avec la télécommande radio UHF à courte distance… sans devoir passer un coup de fil ! Idem pour mettre en marche ou arrêter le chauffage dans votre chambre. La totalité du circuit est normalement alimentée par une tension continue de 9 à 12 V à relier aux points +/– POWER. Une diode (D1) en série dans la ligne positive protège le montage contre toute 36 3ème G.E. Commande de portail pilotée par GSM 2006/2007 inversion accidentelle de polarité. Le régulateur 7805 pourvoit à la charge de la batterie et à l’alimentation du micro contrôleur. Dans cette configuration, le micro interrupteur DS1 sera mis dans la position fermée, court-circuitant ainsi la résistance R8 et permettant à la tension d’atteindre directement le régulateur. En revanche, si l’on souhaite alimenter l’ensemble en 24 V (tension généralement présente dans les ouvertures de portail), on placera DS1 dans la position ouverte, ce qui insérera R8 dans le circuit. Cette résistance a pour but de faire chuter de 10 V la tension présente sur POWER, ce qui permet au régulateur de ne pas subir une surchauffe. Ceci dit, le microcontrôleur PIC ne fonctionne pas sous 5 V mais bien sous 3,8 V. En effet, les deux diodes (D2, D3), en série dans le positif de la sortie du régulateur, réduisent la tension de 1,2V. m o Eh bien, les téléphones portables Siemens de la série 35 ont une batterie de 3,6cV et, donc, les . signaux transitant le long de sa ligne sérielle ne sont pas des TTL (0/5V). Grâce à ce petit m “arrangement”, nous rendons les deux signaux parfaitement compatibles a x e d i a . CIRCUIT IMPRIME : w w wlogiciel permettant de le réaliser, par exemple Pour réaliser le circuit imprimé, il faut se procurer un / / : pour obtenir son circuit imprimé qui sera Proteus Areslite, et y reproduire le schéma électrique p t t ensuite gravé sur une carte. h r u s V. LISTES DES COMPOSANTS DU MONTAGE : é g r a h c é l Té Mais, pourquoi abaisser la tension ? Des résistances: R1 = 1 kilo ohms R2 = 1 kilo ohms R3 = 4,7 kilo ohms R4 = 33 kilo ohms R5 = 33 kilo ohms R6 = 2,7 kilo ohms R7 = 4,7 kilo ohms trimmer horiz. R8 = 33 ohms 2 Watt Un Mini interrupteur: DS1 = Dip switch 1 micro-inter. Des diodes: D1 = Diode 1N4007 D2 = Diode 1N4007 D3 = Diode 1N4007 D4 = Diode 1N4007 D5 = Diode 1N4007 Un régulateur: U2 = Régulateur 7805 Des condensateurs: C1 = 100 nF multicouche C2 = 100 nF multicouche C3 = 470 μF 25 V électrolytique C4 = 220 μF 25 V électrolytique C5 = 100 nF multicouche C6 = 100 nF 63 V polyester C7 = 1000 μF 35 V électrolytique Un relais: RL1 = Relais 12 V - 5 A 1 RT Un transistor: NPN BC547 Quartz: Q1 = Quartz 20 MHz Un micro contrôleur: U1 = PIC16F876 37 3ème G.E. Commande de portail pilotée par GSM 2006/2007 VI. CONFIGURATION DU TELEPHONE PORTABLE : Avant de pouvoir utiliser la commande d’ouverture, il est nécessaire de configurer correctement le téléphone portable. Avant tout, et si ce n’est déjà fait, insérez la SIM dans son support et allumez le téléphone. Tout d’abord, il faut introduire une SIM en cours de validité (contrat en cours avec l’un des gestionnaires en cours) dans l’orifice prévu à cet effet (voir la notice du portable). Quand cela est fait, allumez le téléphone. Si l’appareil vous demande d’indiquer votre code PIN, donnez- le pour avoir accès au menu puis désactivez cette fonction. Cette opération sert à éviter (si le portable m o .c se déchargeait) qu’au retour du courant son accès ne soit plus possible, justement à cause du dit code d’accès. m a x w w e d i .a Il faut désactivé certains paramètres qui permettent de faire fonctionnement le téléphone à chaque /: /w tp La “décrochage automatique t h Le renvoi d’appel r effacer tous les numéros présents su dans la rubrique du téléphone Désactiver le mode vibreur é g r a h c é l Té appel comme : 38 3ème G.E. Commande de portail pilotée par GSM 2006/2007 VII. ORGANIGRAMME DU PROGRAMME IMPLEMENTE DANS LE MICRO CONTROLEUR Programme principal Initialisation I/O Et du GSM m a x e d i Appel en entrée? NON w OUI Lecture du numéro et déconnexion w / / : Sous-programme p Recherche numéro t t h r su Trouvé? Numéro é g r w T él a h éc OUI Activation relais d’ouverture 39 .a NON m o .c 3ème G.E. Commande de portail pilotée par GSM 2006/2007 SOUS PROGRAMME DE RECHERCHE DE NUMERO : Sous Programme Recherche numéro Cherche numéro dans l’EEPROM NON Trouvé? m a x OUI e d i Retourne vrai w w /: /w tp t rh m o .c Retourne faux .a VIII. PROGRAMME EN BASIC IMPLEMENTE DANS LE MICROCONTROLEUR U1. u s SERIN RXD, BDS, 0, 2000, TEST, [WAIT (“OK”), i] é g IF i=0 THEN GOTO TEST r a h c SELECTION DE L’ALPHAGET GSM: é l é T 0, 1, [“AT+CSCS”, 34, “GSM”, 34, 13] SEROUT TXD, TEST LIASON SERIE: SEROUT TXD, BDS, 0, 1, [“AT”, 13] INITIALISATION DU GSM: Activation de la fonction présentation du numéro. SEROUT TXD, BDS, 0, 1, [‘’AT+CLIP=1’’, 13] INITIALISATION N° TELEPHONE 40 3ème G.E. Commande de portail pilotée par GSM 2006/2007 IF EEREAD (&HFF5) =&xxxx THEN EEWRITE &HFF5,”0” EEWRITE &HFF5,”7” EEWRITE &HFF5,”3” EEWRITE &HFF5,”1” EEWRITE &HFF5,”3” …….. INITIALISATION DES VARIABLES: FOR i=0 TO 15 m a x (i) =0 e d i NEXT i ATTENTE DE SONNERIE (Appel entrant) : w w m o .c .a w / / : Le pic va donc structer l’entrée RXD dans suivant est aussi envoyé : +CLIP : <numéro>, <type>. p t les 16 caractères suivants sont placés dans la t l’attente des caractères « IP ». Dès leur réception h variable tableau Num. r su ATT: SERIN RXD, BDS, 0, 10000, é ATT, [wait (‘’IP ‘’), (0)-16] g r a COMPARAISON AVEC h NUMEROS EN EEPROM c é l é J=0 FOR i=0 TOT 9n n: nombre de numéros Lors d’un appel les sonneries sont matérialisées par le message « RING » qui est envoyé directement sur la sortie série du téléphone à destination du PIC. Le message complémentaire IF NumMem(i) = Num(j) OK=OK+1 IF OK = 9 Flag=1 GOTO ATT j++ IF j = 10 J=0 OK=0 41 3ème G.E. Commande de portail pilotée par GSM 2006/2007 ACTIVATION/ DESACTIVATION DU RELAIS Si la variable flag =1, le relais change d’état. Si flag=0 le relais conserve son état. L’instruction TOOGLE change l’état de la sortie qui lui est associée. IF flag=1 THEN TOOGLE 24 GOTO ATT IX. COMMENT PROGRAMMER LE PIC ? PC m a x w Saisie prog. e d i Programmateur w C o m pil ati on m o .c .a /: /w tp Hexadécimal t rh PIC PIC Assemblage u s Langage é Assembleur g r a h c Le développementénécessite l'utilisation d'un logiciel adapté préalablement installé sur votre l intègre: é ordinateur. Ce logiciel T - Un éditeur (qui vous permettra d'écrire votre programme BASIC) - Un module de téléchargement qui vous permettra de transférer votre programme au sein du PIC par l'intermédiaire d’un câble spécial (via le port parallèle ou USB du PC) - Un module d'émulation (qui vous permettra tant que le module est relié au PC d'exécuter le programme pas à pas, de vérifier l'état de toutes les variables crées, de les modifier... Suivant le type de module PICBASIC que vous utilisez et suivant la version du système d'exploitation dont vous disposez, il existe 2 versions du logiciel de développement. : 42 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Le logiciel "PICBASIC-LAB" permet : La programmation des "PICBASIC" série 1 / 2 / 3 (à savoir les PICBASIC-1B / 1S / 2S / 2H / 3 B / 3H) sous environnement Windows™ 98/Me/Se à l’aide d’un câble de programmation parallèle. Le logiciel "PICBASIC-STUDIO" permet : La programmation des PICBASIC-1B / 1S / 2S / 2H / 3 B / 3H / PBM-R1 / PBM-R5) sous environnement Windows™ XP à l’aide d’un câble de programmation parallèle ou la programmation des PICBASIC-2H / 3 B / 3H / PBM-R1 / PBM-R5) sous environnement Windows™ XP à l’aide d’un câble de programmation USB. m a x w w /: /w tp t rh é g r l é T su a h éc 43 .a e d i m o .c 3ème G.E. Commande de portail pilotée par GSM 2006/2007 CONCLUSION e nos jours, nous possédons pratiquement tous un téléphone portable que nous utilisons dans sa fonction normale, c’est-à-dire pour téléphoner. Mais, pourquoi ne pas l’utiliser utilement pour de nombreuses autres applications surtout si cette utilisation ne coûte rien sur notre forfait téléphonique, pas m o Avec le montage, que nous vous proposons et qui consiste à commander un portail c électrique en . utilisant un téléphone portable GSM, nous pouvons aussi activer un quelconque dispositif électrique m a ou électronique. x e d i Utilisable sur n’importe quelle installation, il permet de faire auamoins jeu égal avec les différents . modèles de télécommandes qui nous remplissent les poches.w w La sécurité qu’offre ce montage est excellente/w grâce au système de reconnaissance par / : l’identification de la personne appelant. Il peut p être utilisé comme commande de la porte du garage t commun en copropriété ou l’ouverture de lat porte d’un hall, d’un local protégé dont l’accès est h r réservé à certaines personnes. su Notre système coûte décidémentébeaucoup moins cher et avec un coût annuel équivalent au coût de g à faible prix. r la carte prépayée ou d’un abonnement a h c pourrait être celui de la couverture par le réseau GSM dans la zone Le seul point négatif é l é d’utilisation, chose rare. Evidemment, s’il n’y a pas de couverture par le réseau GSM, le système ne T même la plus petite unité. peut pas fonctionner. 44 3ème G.E. Commande de portail pilotée par GSM 2006/2007 BIBLIOGRAPHIE Revue INTERFACES GSM (Montages pour téléphone portable)de DAVID REY Edition techniques et scientifiques françaises Téléphones GSM et PC 3e édition (PATRICK GUEULLE) Revue électronique et magazine n°10 & 36 Réseaux GSM-DCS 3e édition revue et augmentée (HERMES) WEBOGRAPHIEam www.dunod.com www.abcelectronique/bigonoff www.lextronic.fr é g r l é T w w /: /w tp t rh www.alldatasheet.com su a h éc 45 .a x e id m o .c 3ème G.E. Commande de portail pilotée par GSM 2006/2007 ANNEXES ANNEXE 1 : LISTE D’INSTRUCTIONS BASIC NON EXHAUSTIVE SERIN SERIN port, Param1, Mode, Param2, Adress [Condition, var1] Réception de données séries m o c . Param1 est une constante qui détermine la vitesse de communication de la liaison série. m a Mode est une constante (0 ou 1) permettant d’inverser la polarité des données reçues. x Param2 est une constante représentant une durée à partir de laquelle si e aucune donnée n’est reçue, le d Si Adress est absent, le i PICBASIC continuera l’exécution de son programme à la ligne Adress. .a programme continuera à la ligne suivante. wdonnée n’est reçue dans un laps de temps Adress est un N° de ligne ou une étiquette utilisée si aucune w w donné. / / Condition permet d’inclure des conditions lors de:la réception des données telles que WAIT,UNTIL tpavec les PICBASIC de la série « PBM ». t et SKIP. UNTIL et SKIP ne sont pas disponibles h Var1 est une variable de type Byte servant à recevoir les données. r su é EXPLICATION g r la réception de données sous forme série (8 bits, 1 stop, sans Cette instruction permet d'attendre a parité). Une fois exécutée, h la broche (Port) du "PICBASIC" attendra la ou les données (Var1) à une c vitesse définie par é (Param1), selon la correspondance du l tableau (voir documentation complète). Durant cette phase, le module "PICBASIC" ne pourra pas Té Port est une constante de type Byte représentant un N° de Port (sur la série PBM on ne peut utiliser que les ports 0 ~ 15) effectuer d'autres tâches et attendra en permanence les données pendant une durée (en ms) définie par (Param2). Si la durée d'attente est dépassée, sans qu'aucune donnée ne soit reçue, le programme "sautera" alors directement à l'adresse "Adress". Le paramètre (Mode) permet d’inverser la polarité des données reçues. En temps normal, il doit être mis à "0". SEROUT SEROUT port, Param1, Mode, Interval, [Var1] RS232C transmission 46 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Port est une constante de type Byte représentant un N° de Port (sur la série PBM on ne peut utiliser que les ports 0 ~ 15) Param1 est une constante qui détermine la vitesse de communication de la liaison série. Mode est une constante (0 ou 1) permettant d’inverser la polarité des données envoyées. Interval est une constante permettant d’intercaler des temporisations (en mS) entre les données envoyées. Var1 est une variable de type Byte servant à envoyer les données. m o .c EXPLICATION Cette instruction permet de transmettre des données sous forme série (8 bits, 1 stop, sans parité). m a la correspondance du tableau donné(voir documentation complète). Lexparamètre (Mode) permet d’inverser la polarité des données envoyées. En temps normal, il idoit deêtre mis à "0". Le paramètre (Interval) permet d'instaurer une temporisation (en ms) entre chaque .a caractère émis (la valeur à mettre par défaut est « 1 »). Les données à envoyer (Var1) peuventw être de type "BYTE" ou chaîne. Si vous w essayez d'envoyer des données de type "INTEGER", seuls les 8 bits de poids faibles seront transmis. /: /w EEREAD () tp t Variable Integer = EEREAD(adr, Param)h r Variable Integer = EEREAD (adr) u s Lecture de données depuis la mémoire EEPROM é g r de type Byte/Integer (0~&HFFFF) Adr est une constante/variable a h Param est une constante/variable (0~255) de type Byte et permet avec les PICBASIC PBM de c définir combien d’octets é on veut lire. l é T EXPLICATION Une fois exécutée, la broche (Port) du "PICBASIC" transmettra la ou les données (Var1) à une vitesse définie par (Param1), selon Cette instruction permet de récupérer une donnée à l'adresse (Adr) depuis la mémoire EEPROM du "PICBASIC". EEWRITE EEWRITE adr, Val, Param EEWRITE adr, data Ecriture de données en EEPROM 47 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Adr est une constante/variable de type Byte/Integer (0~&HFFFF). Val est une constante (0~255) ou une variable de type Byte. Param est une constante/variable (0~255) de type Byte, permettant avec les « PBM » de définir combien d’octets on veut écrire. EXPLICATION Cette instruction permet d’enregistrer des données dans la mémoire EEPROM du "PICBASIC". Cette mémoire non volatile (même en cas de coupure d’alimentation) peut m o .c » si L’instruction permet de mémoriser une donnée (ou plusieurs données avec les « PBM m vous utilisez une valeur pour Param) dans la mémoire EEPROM du PICBASIC. a x e FOR…NEXT d i a FOR variable1=val1 TO val2 [STEP-increment]…NEXT val3. w Boucle FOR…NEXT w Variable est une variable de type Byte/Integer. /: /w Val1 est une constante de type Byte/Integer correspondant p à la valeur de départ. t t Val2 est une constante de type Byte/Integerhcorrespondant à la valeur de fin. Val3 est une constante de type Byter(-128~+127)/ représentant le pas de variation (utilisable su uniquement sur série « PBM ») é g r EXPLICATION a h de réaliser plusieurs fois de suite certaines actions comprises entre les Cette instruction permet c éet "NEXT" de votre programme. Le nombre de "répétition" de ces actions sera instructions "FOR" l déterminé par Tlesé valeurs de Val1 et Val2. Par exemple : “FOR I=0 TO 50” provoquera l’exécution être modifiée plus de 1000 fois. Il vous sera ainsi possible par exemple de sauvegarder des données de configuration qui pourront être relues avec l’instruction "EEREAD". des commandes/instructions entre FOR et NEXT 51 fois. GOTO GOTO ligne Saut inconditionnel Ligne est l’endroit où le programme doit poursuivre son exécution 48 3ème G.E. Commande de portail pilotée par GSM 2006/2007 EXPLICATION Cette instruction permet d’exécuter un saut à la ligne indiquée (Ligne). TOGGLE TOGGLE port Inverse le niveau logique d’une sortie Port est une constante comprise entre (0~31) et représentant un N° de port. m o Cette instruction permet d’effectuer un changement de d’état logique d’une broche (Port). c . Si la broche était au niveau logique “0” (0 V), celle-ci passera au niveau logique “1” (+5 V) et m a inversement. x NB : Pour la documentation complète consulter : www.lextronic.fr/comfile/manuel.pdf e d i .a wutilisée, veuillez consulter le CD joint NB : pour une description exhaustive de la documentation w avec le rapport. /: /w tp t h r su é g r a h c é l Té EXPLICATION 49 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Annexe2:PIC16F876 m a x Microcontroller Core Features: w w m o .c e d i .a w / / :program All single cycle instructions except for p t t Branches which are two cycle hclock input Operating speed: DC - 20 MHz r u s DC - 200 ns instruction cycle é Up to 8K x 14 words g of FLASH Program Memory, Up to 368 x 8 bytes of Data Memory r a x 8 bytes of EEPROM Data Memory (RAM) Up to 256 h Pin out compatible c to the PIC16C73B/74B/76/77 é l capability (up to 14 sources) Interrupt é Eight T level deep hardware stack High performance RISC CPU Only 35 single word instructions to learn Direct, indirect and relative addressing modes Power-on Reset (POR) Power-up Timer (PWRT) and Oscillator Start-up Timer (OST) Watchdog Timer (WDT) with its own on-chip RC oscillator for reliable operation Programmable code protection Power saving SLEEP mode 50 3ème G.E. Commande de portail pilotée par GSM 2006/2007 Selectable oscillator options Low power, high speed CMOS FLASH/EEPROM technology Fully static design In-Circuit Serial Programming(ICSP) via two pins Single 5V In-Circuit Serial Programming capability In-Circuit Debugging via two pins Processor read/write access to program memory Wide operating voltage range: 2.0V to 5.5V High Sink/Source Current: 25 mA Commercial, Industrial and Extended temperature ranges Low-power consumption: < 0.6 mA typical @ 3V, 4 MHz 20 µA typical @ 3V, 32 kHz < 1 µA typical standby current m a x Peripheral Features: w w m o .c e d i .a Timer0: 8-bit timer/counter with 8-bit prescaler Timer1: 16-bit timer/counter with prescaler, can be incremented during SLEEP via external crystal/clock /: /w Timer2: 8-bit timer/counter with 8-bit pperiod t t register, prescaler and postscalerh r modules Two Capture, Compare, PWM u s is 12.5 ns Capture is 16-bit, max. resolution é resolution is 200 ns Compare is 16-bit, max. g r is 10-bit PWM max. resolution a h Analog-to-Digital converter 10-bit multi-channel c é Serial Port (SSP) with SPI (Master mode) and I C (Master/Slave) Synchronous l é Universal Synchronous Asynchronous Receiver Transmitter (USART/SCI) with 9-bit T address detection Parallel Slave Port (PSP) 8-bits wide, with external RD, WR and CS controls (40/44-pin only) 51 2 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x 15.0 ELECTRICAL CHARACTERISTICS w w m o .c e d i .a Ambient temperature under bias..........................-55 to +125°C Storage temperature .............................. -65°C to +150°C Voltage on any pin with respect to VSS (except VDD, MCLR. and RA4) .... -0.3 V to (VDD + 0.3 V) Voltage on VDD with respect to VSS ............................ -0.3 to +7.5 V Voltage on MCLR with respect to VSS..............0 to +14 V Voltage on RA4 with respect to Vss .............................0 to +8.5 V Total power dissipation .......................................1.0 W Maximum current out of VSS pin ........................................300 mA Maximum current into VDD pin ...................................................250 mA Input clamp current, IIK (VI < 0 or VI > VDD)20 mA Output clamp current, IOK (VO < 0 or VO > VDD) 20 mA Maximum output current sunk by any I/O pin.....................25 mA Maximum output current sourced by any I/O pin ....................25 mA Maximum current sunk by PORTA, PORTB, and PORTE (combined) .......200 mA Maximum current sourced by PORTA, PORTB, and PORTE (combined) .......200 mA Maximum current sunk by PORTC and PORTD (combined) …….200 mA Maximum current sourced by PORTC and PORTD (combined) ....200 /: /w tp t rh é g r l é T su a h éc 52 mA 3ème G.E. Commande de portail pilotée par GSM 2006/2007 ANNEXE 3 : commande AT m a x w w /: /w tp t rh é g r l é T su a h éc 53 .a e d i m o .c 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x w w /: /w tp t rh é g r l é T su a h éc 54 .a e d i m o .c 3ème G.E. Commande de portail pilotée par GSM 2006/2007 m a x w w /: /w tp t rh é g r l é T su a h éc 55 .a e d i m o .c