Anda di halaman 1dari 13

Sciences de Lingnieur

Unit Projet Encadr

Par : Groupe B1

NASSEF Soufiane TAOUFIQ Anas ACHQAR Sara ElFAZNI Oussama

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

1.Analyse Fonctionnelle
Expression du besoin Diagramme de Bte a cornes Diagramme de Pieuvre F.A.S.T Le Cahier de charge fonctionnelle Chane dinformation / nergie

2.Chane dinformation
Acqurir T traiter Communiquer

3.Chane dnergie
Alimenter Distribuer Convertir

4.Ralisation
Etudes des solutions techniques Schma de montage Programme assembleur

I. Analyse Fonctionnelle
Expression de besoin
Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

La densit du trafic automobile en zone urbaine impose la mise en place dune signalisation rglement la circulation. Ceci permet den amliorer la scurit et la fluidit. Les Problmes les plus dlicats se situent au niveau de carrefours. En effet, la priorit de passage associ aux ventuels changements de direction, risque de crer des embouteillages. La solution retenue par les responsables de la circulation est la signalisation laide de feux tricolores de croisement. Nous proposons dtudier et de raliser un produit savoir la gestion du carrefour, dont le rle sera de scuriser et de fluidifier la circulation automobile de carrefour lorsque le trafic est dense. Le cot de fabrication devant tre le plus bas possible.

Diagramme de Bte a cornes

Diagramme de pieuvre

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

FP1 FC1 FC2 FC3 FC4 FC5 FC6

: : : : : : :

Protger contre les Accidents. Limiter les chocs entre les voitures. Faciliter la conduite. Informer du meilleur moments pour traverser la route. Utiliser lnergie lectrique du rseau. Rsister a lenvironnement. Organiser et empcher les embouteillages.

F.A.S.T

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

Cahier de charge fonctionnelle

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

II. Realisation
Daprs le FAST , et pour que le systme fonctionne parfaitement, nous avons choisi le microcontroleur Pic16F84A comme unit de traitement principal, et autour de ce dernier, des LED, ainsi quun QUARTZ plus des condensatuers et des resistances ont etait employs pour assuer le meilleur rendement possible avec un cot de fabrication trs bas. Dans cette paritie nous allond presenter le schma adapt par le groupe du Pic16f84A et son milieu environ ainsi que le programme a language assembleur crer par le meme groupe a laide de : I . Proteus Isis qui nous a permet desseyer et de verifier le schma de montage II . Mplab qui nous a permet detablir le prgramme a language Assembleur

Etude des solutions techniques

Schma de

montage

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

Comme tout le monde ladmit, le pic16f84a e besoin dun equipment special autour de lui pour quil fonctionne bien et puisque ce dernier a besoin dun signal dhorloge extrieure anisi quune remise a zro on a adapter le schma suivant deja etudi en classe

Dans ce montage : Le bloc 1 est utilis pour fournir un signal care dite aussi dhorloge au pic de 4Mhz puisque ce dernier a un dispositif qui devise cette frquence a 4 ,le signal de sortie de pic aura une frquence de 1Mhz, ce qui implique quon aura 1 cycle par micro seconde Le bloc 2 est utilis pour permettre ; automatiquement au pic de faire un remise a zero a laide des impultions donn au condensateur , ce dernier montage permet aussi a lusager de force le programme de pic a zero a laide de button poussoir

Maintenant le pic a tous ce quil a besoin ,il na donc qua commender les actionneur ( les leds ) suivant le montage si-dessous

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

Dans le dernier montage , Le port B du pic est configur en sortie o : RB7-RB6-RB5-RB4-RB3-RB2-RB1-RB0 R2-O2-V2-R1-O1-V1-RP1/VP2-VP1/RP2

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

Le schma gnral du montage est donc :

NB : le button poussoir relie au PortA,0 est utilis comme un button de depart de cycle

Maintenant on a qua etablir le programme principal et de le charger vers le pic, Dans letablissement de programme , on a respect le schma prsenter au CDCF en ce qui concerne les dures de chaque LED.

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

5. list p=16f84A 6. #include p16f84A.inc 7. __config H'3FF9' 8. 9. 10. ;------------ Dfinition des constantes --------------11. 12. #define inter0 0 ; bouton marche 13. #define inter1 1 ; bouton clignotement orange 14. 15. ;------------ Dfinition des registres temporaires --------------16. 17. retard1 EQU 0x0C ; le registre temporaire retard1 se trouve l' adresse 0C 18. retard2 EQU 0x0F ; le registre temporaire retard2 se trouve l' adresse 0F 19. retard3 EQU 0x10 ; le registre temporaire retard3 se trouve l' adresse 10 20. 21. ;------------ Init des ports A et B --------------22. 23. 24. ORG 0 25. 26. bsf STATUS,5 ; on met 1 le 5eme bit du registre status pour accder 27. ; la 2eme page mmoire ( pour trisa et trisb ) 28. 29. MOVLW 0x00 ; on met 00 dans le registre W 30. MOVWF TRISB ; on met 00 dans le port B il est programm en sortie 31. 32. MOVLW 0x1F ; on met 1F dans le registre W 33. MOVWF TRISA ; on met 1F dans le port A il est programm en entre 34. 35. bcf STATUS,5 ; on remet 0 le 5eme bit du registre status pour accder 36. ; la 1eme page mmoire 37. 38. ;------------ Init des feux ROUGE1 et ROUGE2 --------------39. 40. 41. MOVLW B'00001001' ; on met 0C dans le registre W ( Rouge1 et Rouge2 ) 42. MOVWF PORTB ; on met W sur le port B ( led ) 43. 44. ;-------------------- Programme principal ---------------------45. 46. debut 47. 48. ; MOVLW 0x00 ; on met 0C dans le registre W ( Rouge1 et Rouge2 ) 49. ; MOVWF PORTB ; on met W sur le port B ( led ) 50. 51. ; btfss PORTA,inter0 ; interrupteur 0 ( marche ) appuy ? si oui on continu sinon 52. ;va debut 53. ; goto debut Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

Programme Assembleur

54. 55. 56. 57. btfsc PORTA,inter0 ; interrupteur 1 ( clignotant ) appuy ? si oui on 58. ;va clignote 59. goto clignote 60. 61. ; MOVLW B'00001001' ; on met 0C dans le registre W ( Rouge1 et Rouge2 ) 62. ; MOVWF PORTB ; on met W sur le port B ( led ) 63. 64. ;--------------- Chargement de la temporisation --------------------65. 66. 67. ; CALL tempo ; on appel la temporisation 1 ( longue ) 68. 69. MOVLW 0x86 ; on met 0C dans le registre W ( Vert1 et Rouge2 ) 70. MOVWF PORTB ; on met W sur le port B ( led ) 71. 72. CALL tempo ; on appel la temporisation 1 ( longue ) 73. 74. MOVLW 0x8A ; on met 0A dans le registre W ( Orange1 et Rouge2 ) 75. MOVWF PORTB ; on met W sur le port B ( led ) 76. 77. CALL tempo2 ; on appel la temporisation courte 78. 79. MOVLW 0x31 ; on met 0C dans le registre W ( Rouge1 et Rouge2 ) 80. MOVWF PORTB ; on met W sur le port B ( led ) 81. 82. CALL tempo ; on appel la temporisation courte 83. 84. MOVLW 0x51 ; on met 24 dans le registre W ( Rouge1 et Vert2 ) 85. MOVWF PORTB ; on met W sur le port B ( led ) 86. 87. CALL tempo2 ; on appel la temporisation longue 88. 89. 90. 91. 92. GOTO debut ; retour au dbut du programme 93. 94. 95. ;------------ Programme de temporisation longue --------------96. 97. tempo 98. MOVLW 0xFF ; on met ff dans le registre W 99. MOVWF retard1 ; on met W dans le registre retard1 100. MOVWF retard2 ; on met W dans le registre retard2 101. MOVLW 0x12 ; on met 12 dans le registre W 102. MOVWF retard3 ; on met W dans le registre retard3 103.

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

104. 105. 106. si 107. 108. 109. 110. 111. 112. si 113. 114. 115. 116. 117. 118. si 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. si 136. 137. 138. 139. 140. 141. si 142. 143. 144. 145. 146. 147. si

attente DECFSZ retard1,F ; on dcrmente retard1 et on saute la prochaine instruction GOTO attente ; le registre retard1 = 0 sinon retour attente movlw 0xFF ; on recharge retard1 movwf retard1 DECFSZ retard2,F ; on dcrmente retard2 et on saute la prochaine instruction GOTO attente ; le registre retard2 = 0 sinon retour attente movlw 0xFF ; on recharge retard2 movwf retard2 DECFSZ retard3,F ; on dcrmente retard3 et on saute la prochaine instruction GOTO attente ; le registre retard3 = 0 sinon retour attente RETURN ; retour au programme principal aprs l 'instruction CALL ;------------ Programme de temporisation courte --------------tempo2 MOVLW 0xFF ; on met ff dans le registre W MOVWF retard1 ; on met W dans le registre retard1 MOVWF retard2 ; on met W dans le registre retard2 MOVLW 0x07 ; on met 7 dans le registre W MOVWF retard3 ; on met W dans le registre retard3 attente2 DECFSZ retard1,F ; on dcrmente retard1 et on saute la prochaine instruction GOTO attente2 ; le registre retard1 = 0 sinon retour attente2 movlw 0xFF ; on recharge retard1 movwf retard1 DECFSZ retard2,F ; on dcrmente retard2 et on saute la prochaine instruction GOTO attente2 ; le registre retard2 = 0 sinon retour attente2 movlw 0xFF ; on recharge retard2 movwf retard2 DECFSZ retard3,F ; on dcrmente retard3 et on saute la prochaine instruction

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )

148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167.

GOTO attente2 ; le registre retard3 = 0 sinon retour attente2 RETURN clignote MOVLW 0x48 ; on met 12 dans le registre W ( Orange1 et Orange2 ) MOVWF PORTB ; on met W sur le port B ( led ) CALL tempo2 ; on appel la temporisation courte MOVLW B'00000000' ; on met 00 dans le registre W ( aucune led ) MOVWF PORTB ; on met W sur le port B ( led ) CALL tempo2 ; on appel la temporisation courte goto debut END

Lyce Ibn Soulayman Rasmouki Tiznit Projet encadr , Groupe B1 ( Feu de carrefour )