|
UNIVERSIDADE FEDERAL DE UBERLÂNDIA |
|
Ficha de Componente Curricular
CÓDIGO:
|
COMPONENTE CURRICULAR: SISTEMAS EMBARCADOS II |
|
UNIDADE ACADÊMICA OFERTANTE: FACULDADE DE ENGENHARIA ELÉTRICA |
SIGLA: FEELT |
|
CH TOTAL TEÓRICA: 30 horas |
CH TOTAL PRÁTICA: 30 horas |
CH TOTAL: 60 horas |
OBJETIVOS
Objetivo Geral: Desenvolvimento de sistemas embarcados com hardware de complexidade média ou alta, com foco em comunicação e interatividade com o usuário, em geral executando sistemas operacionais de alto nível.
Objetivos Específicos:
Uso de Linux embarcado ou de sistema operacional equivalente. Construção e aplicação de imagens.
Criação de interfaces homem máquina através de toolkits gráficos
Integração e uso de stacks diversos de comunicação.
Programação com linguagem de script ou de desenvolvimento rápido.
Utilização de serviços em nuvem para automação e controle.
Interfaceamento com periféricos de comunicação e informação (GPS, modems, Bluetooth, WiFi, entre outros).
Utilização de redes com e sem fio no processo de integração.
Atualização de firmware no campo (OTA - Over the Air).
Segurança em sistemas embarcados.
Ementa
Desenvolvimento de sistemas embarcados microprocessados, integração com serviços em rede ou nuvem, interfaces homem/máquina (HMI).
PROGRAMA
1. Linux Embarcado
1.1. Breve histórico sobre UNIX
1.2. Linux
1.3. Por que utilizar Linux em sistemas embarcados?
1.4. Anatomia de um sistema embarcado
1.5. Considerações sobre armazenamento
1.6. Distribuições Linux para sistemas embarcados
2. Processadores
2.1. Processadores Stand-Alone
2.2. Processadores Integrados (Systems on Chip)
2.3. Outras Arquiteturas
2.4. Plataformas de hardware
3. O Kernel Linux
3.1. Background
3.2. Kernel
3.3. Construção
3.4. Sistemas construtores de Kernel
3.5. Kernel customizados e documentação
3.6. Inicialização
3.7. Fluxo de controle
3.8. Inicializando subsistemas
4. Inicialização do espaço do usuário
4.1. Sistemas de arquivos Root
4.2. O processo de inicialização
4.3. Disco RAM inicial
4.4. Utilizando initramfs
4.5. Shutdown
5. Bootloaders
6. Device Driver
7. Subsistemas MTD
7.1. Introdução
7.2. Partições
7.3. Utilitários
7.4. Conceitos sobre Device Driver
7.5. Módulos
7.6. Métodos
7.7. Device Driver e GPL
8. BusyBox
8.1. Introdução
8.2. Configuração
8.3. Operação
9. Ambiente de Desenvolvimento Embarcado
10. Ferramentas de Desenvolvimento
10.1. GNU Debugger
10.2. Ferramentas de Tracing e Profiling
10.3. Utilitários Binários
10.4. Técnicas de Depuração de Kernel
11. Ferramentas de depuração para aplicações em Linux embarcado
12. Linux e Sistemas em Tempo Real
12.1. O que é um sistema de Tempo Real
12.2. Preempção do Kernel
12.3. Real-Time Kernel Patch
12.4. Análise de desempenho do Real-Time Kernel
13. Ferramentas de desenvolvimento para IHM
13.1. Compilação cruzada
13.2. Desenvolvimento de interfaces gráficas
14. Sistemas GSM e GPS
14.1. Definição de sistemas GSM
14.2. Definição de sistemas GPS
14.3. Tipos de aplicação
15. Aplicações para Sistemas Embarcados
15.1. Comunicação Serial
15.2. IHM de dados com interface serial
15.3. Interação com redes GSM, comandos AT
15.4. Geração de informações de posicionamento
15.5. Interação com sistemas em nuvem (AWS)
15.6. Construção de Gateway MQTT com interface para sistemas em nuvem (AWS)
15.7. Reconhecimento facial em nuvem
BIBLIOGRAFIA BÁSICA
ALMEIDA, Rodrigo Maximiano A. de; MORAES, Carlos Henrique V.; SERAPHIM, Thatyana F. Piola. Programação de sistemas embarcados: desenvolvendo software para microcontroladores em linguagem C. Rio de Janeiro: GEN LTC, 2016. E-book. Disponível em: https://www.sistemas.ufu.br/biblioteca- gateway/ minhabiblioteca/9788595156371. Acesso em: 3 fev. 2023.
CERQUEIRA, Marcos V B.; MASCHIETTO, Luis G.; ZANIN, Aline; et al. Sistemas operacionais embarcados. Porto Alegre: Sagah, 2021. E-book.. Disponível em: https://integrada.minhabiblioteca.com.br/ #/books/9786556902616/. Acesso em: 3 fev. 2023.
OLIVEIRA, André Schneider de; ANDRADE, Fernando Souza de. Sistemas embarcados: hardware e firmware na prática. 2. ed. São Paulo: Erica, 2010. E-book. Disponível em: https://www.sistemas.ufu.br/biblioteca-gateway/minhabiblioteca/9788536520346. Acesso em: 3 fev. 2023.
BIBLIOGRAFIA COMPLEMENTAR
BACKES, André. Linguagem C: completa e descomplicada. Rio de Janeiro: Elsevier, 2013.
DENARDIN, Gustavo W.; BARRIQUELLO, Carlos H. Sistemas Operacionais de Tempo Real e Sua Aplicação em Sistemas Embarcados. São Paulo: Editora Blucher, 2019. E-book. Disponível em: https://integrada. minhabiblioteca.com.br/#/books/9788521213970/. Acesso em: 3 fev. 2023.
MIZRAHI, Victorine Viviane. Treinamento em linguagem C. 2. ed. São Paulo: Prentice Hall, 2008.
PEREIRA, Fábio. Tecnologia ARM: Microcontroladores de 32 BITS. Editora Saraiva, 2007. E-book. Disponível em: https://integrada.minhabiblioteca.com.br/#/books/9788536520407/. Acesso em: 3 fev. 2023.
PRESSMAN, Roger S.; MAXIM, Bruce R. Engenharia de software: uma abordagem profissional. 9. ed. Porto Alegre: AMGH Ed., 2021. E-book. Disponível em: https://www.sistemas.ufu.br/biblioteca-gateway/minhabiblioteca/9786558040118. 2023. Acesso em: 3 fev. 2023.
TANENBAUM, Andrew S. Organização estruturada de computadores. 5. ed. São Paulo: Prentice Hall, c2007.
aprovação
Prof. Dr. Augusto Wohlgemuth Fleury Veloso da Silveira Coordenador do Curso de Graduação em Engenharia Elétrica |
Prof. Dr. Sérgio Ferreira de Paula Silva Diretor da Faculdade de Engenharia Elétrica |
| Documento assinado eletronicamente por Augusto Wohlgemuth Fleury Veloso da Silveira, Coordenador(a), em 03/05/2023, às 15:41, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015. |
| Documento assinado eletronicamente por Sergio Ferreira de Paula Silva, Diretor(a), em 04/05/2023, às 15:21, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015. |
| A autenticidade deste documento pode ser conferida no site https://www.sei.ufu.br/sei/controlador_externo.php?acao=documento_conferir&id_orgao_acesso_externo=0, informando o código verificador 4460958 e o código CRC F88C5F13. |
Referência: Processo nº 23117.080333/2022-16 | SEI nº 4460958 |