Projeto BUS-BUS

488 visualizações

Publicada em

O Projeto BUS-BUS foi pensado para desenvolver um sistema de destrava das janelas de emergência de onibus de forma mais automatizada, eficiente e inteligente.
A idéia inicial era construir um sistema embarcado de segurança que identificasse várias situações, através da leitura por sensores do ambiente, como desaceleração, temperatura e inclinação. Como tal escopo é de abrangência que não poderíamos programar, foi decidido que para este projeto apenas o sensor de inclinação e de colisão serão implementados para a destrava automática das janelas.

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
488
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
4
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Projeto BUS-BUS

  1. 1. PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA BACHARELADO EM ENGENHARIA DE COMPUTAÇÃO MICROPROCESSADORES - II RAPHAEL RAMOS NOGUEIRA, WASHINGTON LUIZ PERONI DOCUMENTAÇÃO PROJETO: BUS-BUS BUS-BLOW UNLOCK SYSTEM CURITIBA 2011
  2. 2. SumárioIntrodução………...............………………………………………………...03Justificativas………………...............……………………………………...03Objetivos………………………………..............………………………......04Resultados esperados……………………...…...............………………...05Desenvolvimento....................................................................................06Código Fonte..........................................................................................08Cronograma Final...................................................................................10Conclusão...............................................................................................11Imagens..................................................................................................11 2
  3. 3. 1. IntroduçãoEste relatório técnico tem a intenção de informar qualquer um que seja e que deseje reproduzir esteprojeto acadêmico com intenção educacional, comercial ou por lazer.1.1 Justificativas Tendo em vista esse fato, foi pensado desenvolver um sistema de destrava das janelas deemergência mais automatizado, eficiente e inteligente.A idéia inicial era construir um sistema embarcado de segurança que identificasse várias situações,através da leitura por sensores do ambiente, como desaceleração, temperatura e inclinação. Comotal escopo é de abrangência que não poderíamos programar, foi decidido que para este projetoapenas o sensor de inclinação e de colisão serão implementados para a destrava automática dasjanelas.Estado da Arte – Tecnologia Atual de Janelas de Emergência em ônibusFig.1 Martelo de Emergência Fig.2 Alavanca de Emergência1.2 MetodologiaVamos desenvolver um sistema embarcado, ou seja, micro-controlado sem que haja a necessidadede um computador. Iremos usar o core do microprocessador 8051 e que possuirá um software padrãoem linguagem assembly, além motores para ejeção das janelas, sensor acelerômetro para ainclinação, e também aparelhos de instrumentação básica como: multi-teste, osciloscópios, geradorde funções, protoboard, estação de solda, fluxo e estanho e componentes eletrônicos como:resistores, capacitores, indutores, transitores, placas de fenolite entre outros.1.3 As responsabilidadesPUC: Fornecer suporte em infra-estrutura para o grupo seja em laboratórios, kits e material didático.Professores: Auxiliar o grupo em todas as dúvidas pertinentes ao projeto, assim como corrigirqualquer falha de elaboração, conceito e implementação, atendendo a disponibilidade previamenteinformada ao grupo.Integrantes: Cada integrante seguirá o cronograma e as atividades a que está responsável. Qualquerimprevisto que possa gerar atraso ao um dos processos, deve ser relatado ao Líder da equipe quepor sua vez deve propor alternativas, ou consultar os professores se houver necessidade. Cadaintegrante independente da hierarquia tem autonomia para dirimir dúvidas técnicas com quem querque seja, porém, queixas e outros contratempos internos, devem ser discutidos com a liderança daequipe e posteriormente com os professores se houver necessidade. 3
  4. 4. 2. Os objetivosO projeto deve conter os seguintes módulos:Módulo de Alimentação: Alimentará o módulo motor, o módulo sensor e o módulo processador. Serácomposto por fonte de tensão entre 5v a 15v, de corrente de 500 mA a 2A.Módulo Motor: Irá ejetar as janelas de emergência conforme comando do modulo processador.Módulo Sensor.Identificará a situação de emergência, no escopo do projeto, apenas o tombamentopara a direita ou para esquerda e por colisões traseiras e frontais será composto por um inclinômetroanalógico que se comunicará com o modulo processador, além de dois sensores piezelétricos quetambém se comunicarão com o módulo processadorMódulo Processador: Se encarregará de receber as informações do módulo sensor, e acionar omodulo motor3. Não está incluso no escopo deste projetoO projeto BUS-BUS não contemplará as seguintes funcionalidades.A ejeção das janelas nos seguintes casos.Incêndio.Obs.: Em caso de capotamento da maquete, as janelas eventualmente poderão ser ejetadas devido àinclinação de 90º ter sido ultrapassada, mas o foco do projeto será a ejeção das janelas deemergência em caso de tombamento para qualquer um dos lados.4. O projetoO projeto será composto pelos seguintes módulos:Módulo de alimentação;Módulo Sensor;Módulo Motor;Módulo Processador.Descrição dos módulos.Módulo de alimentação: Fornecerá tensão e corrente aos outros módulos, terá tensão entre 5V a 15Ve corrente entre 500 mA a 2 A. Provavelmente não será confeccionada, mas sim adquirida parafacilitar o andamento do projeto, e uma seqüência saudável do cronograma.Módulo Sensor: Receberá a informação do mundo físico, conforme os parâmetros definidos, noescopo deste projeto, o módulo sensor conseguirá identificar, o tombamento do veículo, através deum sistema de acelerômetros ou giroscópios, ele será o responsável por enviar as informações aomódulo processador.Módulo Motor: É o módulo que fará a ejeção das janelas de emergência, ele receberá a informaçãode acionamento e parada do módulo processador, este módulo poderá ser construído com diversossistemas de motores, os mais indicados serão servo motores de baixo consumo, motores dc e atémotores de passo.Módulo Processador: Será o cérebro do projeto, estará encarregado de verificar o perfeitofuncionamento do sistema, e da interpretação dos dados captados pelos sensores, do envio decomando de início e parada dos motores. É a CPU do projeto. 4
  5. 5. MOD. MOD. Alimentação Sensor MOD. MOD. Motor Processador Fig. 3 – Diagrama de Blocos Módulos projeto BUS-BUS5. Os resultados esperadosComo resultados deste projeto, serão apresentados aos professores os seguintes itens /funcionalidades:1. Protótipo funcionando dos módulos: Alimentação, Motor, Processador, Sensor;2. CD com arquivos, códigos-fonte e modelos dos módulos implementados;3. Vídeo;4. Documentação do projeto dos itens acima.6. Os requisitosPara que este projeto possa ser realizado com sucesso, os seguintes requisitos são necessários edevem ser fornecidos pela PUCPR:1. Disponibilidade de laboratórios para testes de software, hardware e toda a prototipagem doprojeto.2. Disponibilidade de instrumentos de medição, assim como kits para os testes e execução dotrabalho, além de qualquer outro material disponível no campus que haja necessidade de utilização.3. Disponibilidade de docentes para sanar as dúvidas técnicas que surgirão, dentro de horáriosque não atrapalhem o andamento das atividades dos docentes e do grupo.7. A Equipe de DesenvolvimentoA equipe de desenvolvimento contará com os colaboradores:Washington Luiz Peroni – Líder da Equipe.Responsabilidades: Liderar a equipe, acompanhar e propor soluções as dificuldades do projeto.Auxiliar os demais nas atividades para cumprir o cronograma e o plano de trabalho. Atentar eexecutar tarefas pedidas pelo conselho deliberativo (Professor Afonso Miguel e o cliente externo).Executar atividades compatíveis mediante pedido dos superiores imediatos (Professores AfonsoMiguel).Raphael Nogueira – Gerência de Qualidade e Engenharia do Produto.Responsabilidades: Gerenciar os processos de qualidade, selecionar fornecedores, acompanharprocessos de acabamento e desenvolvimento de novas técnicas e ferramentas. Auxiliar os demaisnas atividades para cumprir o cronograma e o plano de trabalho. Executar atividades compatíveismediante pedido do superior imediato (Washington Luiz Peroni).8. Desenvolvimento do ProjetoA seguir etapas de confecção do projeto. 5
  6. 6. 9. Hardware9.1 Placa Controladora Para confecção da placa de controle, foi utilizado atmega8 conforme a lista de materiais abaixo Mais informações no site: http://www.arduino.cc/en/Main/ArduinoBoardSerialSingleSided3 Arduino RS232 BOM Parts Qty Value Device Farnell RS ELFA Digikey S1 1 Reset pusbutton 535916 35-656-29 SW400-ND IC2 1 78xxL 7805 TO220 701853 73-000-16 LM7805CT-ND X1 1 DB9 PCB female connector 4106118 44-057-00 A2100-ND LED1 1 Green LED 656719 75-012-08 160-1144-ND POWER 1 4 pin header 3291777 43-782-79 A26509-20-ND J2 1 6pins header 43-782-95 A26509-20-ND J1, J3 2 8 pins header 43-783-11 A26509-20-ND X2 1 2.1mm power jack 224959 42-051-67 CP-102AH-ND Q1 1 16 MHz Quartz 641029 74-517-01 300-6034-ND 1N4004GICT- D1 1 1N4004 1N4004 or equivalent 251707 70-003-91 ND D2, D3 2 1N4148 1N4148 399390 70-005-57 1N4148FS-ND R1 1 4k7 1/4 W resistor 509243 60-785-70 4.7KQBK-ND R2 1 220 1/4 W resistor 509097 60-784-14 220QBK-ND R3,R4 2 1k 1/4 W resistor 509164 60-784-97 1.0KQBK-ND R5, R6, R7, R8, R9 5 10k 1/4 W resistor 509280 60-786-12 10KQBK-ND C1, C5 2 100n Polyester Capacitor 146079 65-505-29 P4201-ND C2, C3 2 22p Polyester Capacitor 896410 65-861-68 1330PH-ND C6, C7 2 100u Electrolitic Capacitor 920629 67-010-80 P10269-ND C8 1 10u Electrolitic Capacitor 920502 67-008-01 P11250-ND ATMEGA8- IC1 1 ATMEGA8 Atmega8 28pin DIP microcontroller 3917927 73-672-04 16PI-ND X3 1 28pin IC socket 48-161-87 ED3128-ND T1 1 BC547 Transistor 357054 71-072-87 BC547BOS-ND T2 1 BC557 Transistor 4399821 71-072-95 BC327OS-ND ICSP 1 ICSP 2x3 pins header 3291947 43-717-12 A26509-20-ND Itens adicionais: 2 Servo motores pequenos 2 Discos Piezo para sensor de colisão 1 Porta bateria 1 Bateria 9V Fios para conexões9.2 InclinômetroPara construir o inclinômetro será necessário: 1 Placa de fenolite pré-furada de 10x15 1 LM7805 6
  7. 7. 1 CD40106 2 Chaves de contato 2 Sensores de Inclinação 2 Hastes metálicas finas 1 Tubo externo de caneta esferográfica Fios para conexões Cintas Hellerman para Fixação Solda Elétrica10. EsquemasFig. 4 – Esquema Lógico Placa controladora Fig. 5 – Esquema PCB Placa ControladoraFig. 6 – Esquema de Montagem Final Placa Controladora mais inclinometro analógico 7
  8. 8. 11. Software/*////////////////////////////////////////////////////////////////////////12. * Código fonte do projeto integrado de microprocessadores13. * Engenharia de Computação 2011 - noturno14. * BUS - Blow Unlock System (BUS-BUS)15. * Criado: 07/10/2011 10:42:4416. * Autor: Raphael Nogueira17. /*///////////////////////////////////////////////////////////////////////18.19. #ifndef F_CPU20. #define F_CPU 1600000UL////define a frequência da classe delay em 1MHz21. #endif22.23. #ifndef __OPTIMIZE__24. #define __OPTIMIZE__25. #endif26.27. #include <avr/io.h>28. #include <util/delay.h>29. #include <avr/interrupt.h>30.31. /////prototipos das funçoes/////32. void init_ports(void);33. void init_ADC(void);34. void pisca_led(void);35. void abreesquerda(void);36. void abredireita(void);37. void init_janela(void);38. unsigned char read_ADC(void);39.40. //funçao que le o valor da conversão analogica41. unsigned char read_ADC(void)42. {43. unsigned char value;44.45. ADCSRA = ADCSRA | 0x40;46.47. while( (ADCSRA & 0x10) == 0 );48.49. value = ADCH;50.51. return value;52. }53.54. //funçao para iniciar as janelas na posiçao inicial de 0°55. void init_janela(void)56. {57. for(int i=0; i<30; i++)58. {59. PORTB = 0x03;60. _delay_ms(1.5);61. PORTB = 0x00; 8
  9. 9. 62. _delay_ms(18.5);63. }64. }65.66. //funçao que abre a janela do lado esquerdo 90°67. void abreesquerda(void)68. {69. for(int i=0; i<30; i++)70. {71. PORTB = 0x01;72. _delay_us(800);73. PORTB = 0x00;74. _delay_ms(19.2);75. }76. }77.78. //funçao que abre a janela do lado direito 90°79. void abredireita(void)80. {81. for(int i=0; i<30; i++)82. {83. PORTB = 0x02;84. _delay_us(800);85. PORTB = 0x00;86. _delay_ms(19.2);87. }88. }89.90. //liga o pisca alerta após a colisao91. void pisca_led(void)92. {93. while(1)94. {95. PORTB = 0x04;96. _delay_ms(500);97. PORTB = 0X00;98. _delay_ms(500);99. }100. }101.102. //inicia as portas do microprocessador configurando-as como entrada e/ou saida103. void init_ports(void)104. {105. DDRB = 0xFF;106. DDRC = 0x00;107. DDRD = 0x00;108.109. PORTB = 0x00;110. PORTC = 0x00;111. }112.113. //configura os registradores do conversor AD para fazer as conversão utilizandoreferencia interna114. void init_ADC(void) 9
  10. 10. 115. {116. ADMUX = 0xE0;117. ADCSRA = 0x87;118. }119.120. /////Funçao principal do programa/////121. int main(void)122. {123. init_ports();124. init_ADC();125. init_janela();126.127. while(1)128. {129. //if (bit_is_set(PIND,PIND2))130. if (PIND & 0x01)131. {132. abreesquerda();133. pisca_led();134. }135.136. //if (bit_is_set(PIND,PIND3))137. if(PIND & 0x02)138. {139. abredireita();140. pisca_led();141. }142.143.144. unsigned char valor = ~read_ADC();145. if (valor > 249)146. {147. abreesquerda();148. abredireita();149. pisca_led();150. }151. }152.153. return 0;154. } 10
  11. 11. 12. Cronograma Final13. Conclusão O projeto seguiu o cronograma anexo ao final, porem tivemos muitas dificuldades para o seu funcionamento do protocolo I2C. Embora seja uma tecnologia posta, não houve êxito nesse quesito. Tivemos o auxilio do especialista Henrique Hinke como stakeholder, a quem mais uma vez agradecemos. Bem, com isso decidiu se construir um acelerômetro analógico, parar a detecção da inclinação, que conforme os testes ira satisfazer. Também seguindo o escopo, foi usado como sensor de colisão, pastilhas piezoeletricas, junto ao microntrolador Atmega 8, aproveitando seus conversor AD para captar a tensão gerada pela pastilha através da colisão, e converte la em nível lógico 1. 13.1 Maquete A principio iríamos levar uma miniatura de um ônibus real, compramos uma via internet. Mas a qualidade da mesma deixou a desejar, e resolvemos utilizar algo maior, porem com detalhes de acabamentos, mais adaptáveis ao nosso projeto. Adeqüemos então uma miniatura de caminhão com carroceria vazada o que ficou ideal para a instalação das placas e motores. Pois facilitou o acesso para a instalação dos nossos dispositivos.14. Imagens Abaixo imagens da execução do projeto. 11
  12. 12. Fig. 7 – Desenvolvimento do Projeto 12

×