Projetos em Sistemas Embarcados
8° Período – Eng. de Computação – 2022
Prof. Pedro de Oliveira C. Junior [email protected]
Capítulo “0”
Apresentação da disciplina
UNIVERSIDADE DE SÃO PAULO Escola de Engenharia de São Carlos
Departamento de Engenharia Elétrica e de Computação
SEL0630 PROJETOS EM SISTEMAS EMBARCADOS
Capítulo 0
Apresentação da disciplina
Objetivos
NESTA AULA
Atualização da ementa
Informações sobre a atualização da disciplina
c
Plano de ensino
Novo programa, critérios de avaliação, bibliografia etc.
7
Monitoria
Informações sobre monitoria e horários de atendimento do monitor
E
Calendário
Cronograma das aulas e eventos importantes ao longo do semestre
G
Visão geral do curso
Discussão sobre o conteúdo a ser abordado,
L
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 3
Apresentação da disciplina
Encadeamento de disciplinas realizado pelo Prof. Maximiliam Luppe
Alteração da disciplina: “Aplicação de Microproc. II”
Capítulo 0
Apresentação da disciplina
Alteração da disciplina: “Aplicação de Microproc. II”
Encadeamento de disciplinas realizado pelo Prof. Maximiliam Luppe
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 5
Apresentação da disciplina
Proposta de alteração
código
SEL0630
ciclo
Profissionalizante .
créditos
2 créditos-aulas; 1 crédito- trabalho.
cursos
Eng. Elétrica (Eletrônica) e Eng.
Elétrica (Sist. De Energia e Automação)
Capítulo 0
Apresentação da disciplina
Proposta de alteração
Projetos Em Sistemas embarcados
Período ideal: 6°
Proposta: Atualizar o conteúdo da
disciplina
acompanhando a tendência mundial
Justificativa: utilização de tecnologias mais poderosas e modernas
na área de sistemas computacionais
embarcados Requisito: SEL0614
Autores: Prof. Maximiliam Luppe; Prof. Marcelo A. C.
Vieira; Prof. José Roberto B.
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 7
Apresentação da disciplina
Projetos em Sistemas Embarcados
Apresentar e
desenvolver conceitos de kernel usados em sistemas embarcados
objetivo
Apresentar plataformas de hardware compactos
usadas em sistemas embarcados
Objetivo
01
02
Capítulo 0
Apresentação da disciplina
Desenvolvimento de pequenas
aplicações
objetivo
Promover a
autossuficiência no que tange à instalação e preparação de SE com Sistemas Operacionais
com kernel Linux
Objetivo
03
04
Projetos em Sistemas Embarcados
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 9
Apresentação da disciplina
Projetos em Sistemas Embarcados
Programa
Da disciplina
Capítulo 0
Apresentação da disciplina
Projetos em Sistemas Embarcados
Tipos e
funcionalidades
So e kernel
9
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 11
Apresentação da disciplina
Projetos em Sistemas Embarcados
Device drivers, estrutura geral e
ligações
Kernel Linux
9
Capítulo 0
Apresentação da disciplina
Projetos em Sistemas Embarcados
Tipos, diferenças de sistemas de arquivos e
manipulação cruzada
Sistemas de arquivos
9
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 13
Apresentação da disciplina
Projetos em Sistemas Embarcados
Processo de instalação, configuração e
inicialização de SO baseados em no kernel
Inicialização de SO
9
Capítulo 0
Apresentação da disciplina
Projetos em Sistemas Embarcados
Sistemas Linux embarcados em SBCs compactas: Raspberry-
PI
SE linux em SBC
9
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 15
Apresentação da disciplina
Projetos em Sistemas Embarcados
Shell compacto para sistemas
embarcados
SHELL
9
Capítulo 0
Apresentação da disciplina
Avaliação
4 3 2
Avaliação 1
Trabalhos práticos, relatórios e provas
Critérios
Média ponderada de todas as avaliações com nota igual ou maior que 5,00 (cinco) e 70 % de presença
Laboratório
70 % relatórios e 30 % de participação
Participação
Serão considerados:
desempenho,
presença, atrasos etc.
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 17
Apresentação da disciplina
Avaliação
Práticas: verificação do progresso do(a)
aluno(a)
evidenciado pelos resultados alcançados ou através de relatórios
FormaTO
Atividades individuais, onde o(a) aluno(a) deve mostrar o domínio dos conhecimentos
passados em sala de aula
método
Capítulo 0
Apresentação da disciplina
vide modelo e normas para relatórios no
e-Disciplinas Deverão ser elaborados para
cada atividade prática e entregues após a
conclusão da atividade em data
definida
Relatórios
Deve-se manter os cabelos compridos presos
e evitar o uso de adornos metálicos
Por risco de choque elétrico só é
permitida a permanência no laboratório trajando sapatos ou tênis com
solas de borracha
Normas Conforme NR-10
Avaliação
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 19
Apresentação da disciplina
Programa de Monitoria
Monitor da disciplina
Murilo Henrique Pasini Trevisa ([email protected])
E
Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira
Das 8h às 10h
Das 8h às 16h20 Das 8h às 14h20 Das 8h às 16h20
A partir das 16h20* (confirmar com Petrussio)
Janelas do
lab de
microp.
Capítulo 0
Apresentação da disciplina
Programa de Monitoria
Monitor da disciplina
Murilo Henrique Pasini Trevisa
([email protected]) E
Segunda-feira Terça-feira Quarta-feira Quinta-feira
Das 8h10 às 10h e a partir das 16h Das 7h20 às 8h10 e a partir das 18h Das 8h10 às 14h20 e a partir das 16h Das 7h20 às 10h e das 12h às 18h;
Janelas do Monitor
Entrar em contato para combinar horários conforme janelas de alunos(as) e do monitor,
com base nas janelas do lab. De micros (que também depende do uso extra de outros docents
e turmas nestas janelas)
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 21
Apresentação da disciplina
Calendário
Início das aulas: 16/08 1ª aula: 17/08
Encerramento do 2°semestre
2022
07/09
Não haverá aulas:
semana da Pátria.
12/10; 2/11
Não haverá aulas:
Feriados
29/08
VIII SIEEL de 29/08 à 02/09;
1 e 2/09;
19 -27/09
X SICEEL; e 30°
SIICUSP
23/12
Aulas: quarta-feira
• Das 14h20 às 16h;
25 a 29/10
VI SEnC
Capítulo 0
Apresentação da disciplina
Eventos no semestre
• Entre os dias 25/10 e 29/10
Ocorrerá a VI Semana de Engenharia de Computação 2022 (SEnC).
A participação é de extrema importância e irá contar como parte da nota de participação e frequência na disciplina (alunos(as) serão dispensados das aulas – será atribuído atividade).Entre os dias 19/09 à 27/10
Primeira fase do 30° Simpósio Internacional de ICT da USP – SIICUSP – 1ª fase 14/10 na EESC;
Etapa internacional: 30/11 a 01/12
Entre os dias 01/09 e 02/09
Ocorrerá o X Simpósio de Iniciação Científica da Engenharia Elétrica (SICEEL) como parte das atividades da VIII SIEEL.
http://soac.eesc.usp.br/index.php/SICEEL/xsiceel
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 23
Apresentação da disciplina
Visão geral do curso
01
SISTEMAS EMBARCADOS Motivação
p
Fonte (imagens): https://www.filipeflop.com/blog/o-que-e-raspberry-pi/
Capítulo 0
Apresentação da disciplina
Visão geral do curso
• Tendências
SISTEMAS EMBARCADOS01
Tendências
p
Evolução das gerações dos computadores
Evolução das arquiteturas: intel x86, arm Sistemas embarcados: ioT, so embarcado,
microp. Dedicados, mcu x microp.
Computação em nuvem
Sistemas cyber-físicos
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 25
Apresentação da disciplina
Visão geral do curso
• Tendências
SISTEMAS EMBARCADOS01
Tendências
p
Brezinski, Guilherme & Venâncio, André & Deschamps, Fernando & Rocha Loures, Eduardo.
(2018). Using cyber-physical systems in the WCM methodology implementation Christoph Roser em [http://www.allaboutlean.com] AllAboutLean.com CC BY-SA[/caption]
Capítulo 0
Apresentação da disciplina
Visão geral do curso
01
SISTEMAS EMBARCADOS
Tendências
p
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 27
Apresentação da disciplina
Visão geral do curso
02
Sistema Operacional e Kernel Tipos e funcionalidades
p Aplicações
Kernel
CPU Memória Dispositivos Sist.
Operacional
Kernel
Fonte (Imagem): Andrew S. Tanenbaum, “Sistemas operacionais modernos”, PrenticeHall do Brasil, 2010
Capítulo 0
Apresentação da disciplina
Visão geral do curso
02
Sistema Operacional e Kernel Tipos e funcionalidades
p
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 29
Apresentação da disciplina
Visão geral do curso
03
Linux
Estrutura geral
p
Fonte (imagens): https://w3cschoool.com/what-is-linux
Imagem: https://www.geeksforgeeks.org/linux-directory-structure/
Fonte: https://www.howtogeek.com/117435/htg-explains-the-linux-directory-structure-explained/
Capítulo 0
Apresentação da disciplina
Visão geral do curso
03
Linux
Distribuições
p
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 31
Apresentação da disciplina
Visão geral do curso
04
S.O. embarcado
Debian e Raspberry Pi OS
p
Fonte (imagens): logo – debian.org; Raspberry Pi Fondation Gif Raspberry PI: https://codepen.io/SchubyD24/pen/BwwBpO
Capítulo 0
Apresentação da disciplina
Visão geral do curso
04
S.O. embarcado
SBC: Raspberry Pi
p
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 33
Apresentação da disciplina
Visão geral do curso
S.O. embarcado 04
SBC: Raspberry Pi
p
Fonte (imagens): ): Raspberry PI Fondation -https://www.raspberrypi.org https://www.filipeflop.com/blog/o-que-e-raspberry-pi/
Capítulo 0
Apresentação da disciplina
Visão geral do curso
04
S.O. embarcado
Utilização da linguagem Python
p
Programação estruturada High Speed
Menor qtde de funções de bibliotecas
Harder syntax
Ling. de domínio específico
Slow speed Rich library Easy syntax
Ling. de propósitos diversos Ling. Interpretada
Vs.
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 35
Apresentação da disciplina
Visão geral do curso
S.O. embarcado 04
Projetos
p
Exemplo: Solução de monitoramento iot com se baseado em raspberry pi
Sensores (rodas, faróis, motor) coletam temperatura, localização e carga do veículo de transporte
Whitepaper - Building IoT Solutions with Managed Raspberry Pi (42gears.com)
Capítulo 0
Apresentação da disciplina
Visão geral do curso
Exemplo: Solução de monitoramento iot com se baseado em raspberry pi
Os sensors são conectados ao Raspberry PI via Gateway IoT – os dados são enviados p/
um server cloud via internet e finalmente chegam ao dashb. Do Admin. – que monitoram a capacidade de carga, tomam ações em tempo real para o caso de produtos expostos à altas temperaturas….
S.O. embarcado 04
Projetos
p
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 37
Apresentação da disciplina
Visão geral do curso
1
Aulas Teóricas
Cronograma
Programa, critérios, normas, monitoria e visão geral do curso
Apresentação da disciplina
Tipos e funcionalidades de SO e Kernel, kernel Linux, estrut. Geral e ligações; sistema de arquivos,
bibliotecas, boot, e shell
s.o. e kernel linux
Instalação, configuração, manipulação de arquivos, inicialização, desenvolvimento de pequenas aplicações
Linux embarcado e raspberry pi
2
4
3
Motivação, arquiteturas, mercado de sistemas embarcados
Projetos em sistemas embarcados
Capítulo 0
Apresentação da disciplina
Visão geral do curso
1
Aulas práticas
Cronograma
Manipulação de sistemas de arquivos em terminais Linux
Sistemas de arquivos
Utilização da Raspberry Pi para execução de projetos anteriores
Uso da Raspberry Pi
Projetos implementados em
microcontroladores na disciplina “Aplicação
Projetos
2
4
3
Utilização de interfaces de edição de texto e de comandos em Python
interfaces de edição de texto
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 39
Apresentação da disciplina
SEL0337 Projetos em Sistemas Embarcados
Gerenciamento de usuários, contas, grupos e
configurações
Gerenciamento de processos,
serviços,
administração do sistema
Inicialização, boot, kernel, segurança
do sistema etc.
Introdução a redes;
Serviços de SSH
Linux – conceituação almejada
Capítulo 0
Ambiente linux
Comandos; Shell e linha de comando,
Sistemas de arquivos - arquivos de textos, localização de arquivos,
Gerenciamento de diretórios, localização de
arquivos, operadores etc.
História do Linux, Distribuições,
Instalação e configuração;
Linux – conceituação almejada
Apresentação da disciplina
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 41
Apresentação da disciplina
Bibliografia
Do plano de ensino
• Frank Vasquez; Chris Simmonds;
“Mastering Embedded Linux Programming: Create fast and reliable embedded solutions with Linux 5.4 and the Yocto Project 3.1”, Packt Publishing; 3rd ed. ed.
2021.
• John Madieu. “Linux Device Drivers Development: Develop customized drivers for embedded Linux”. Packt Publishing; 1a Edição (20 outubro 2017).
s
Capítulo 0
Apresentação da disciplina
Bibliografia
Do plano de ensino
• Andrew S. Tanenbaum,
“Sistemas operacionais
modernos”, PrenticeHall do Brasil, 2010.
• Neil Matthew, Richard Stones,
“Beginning Linux
Programming”, Wiley, 2008.
s
Aspectos básicos e fundamentais sobre
S.O
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 43
Apresentação da disciplina
Bibliografia
outras
S.O:
• Abraham S., Galvin P., Gagne G.
“Operating System Concepts”
9th ed. Wiley 2013.
s
Aspectos fundamentais sobre S.O
Capítulo 0
Apresentação da disciplina
Bibliografia
outras
Sistemas embarcados:
• M. Wolf, “Computer as Components”, 4th ed. M.K. 2016.
s
Enfatiza tecnologias de S.E., etapas de projeto,
arquiteturas e IoT
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 45
Apresentação da disciplina
Bibliografia
outras
Linux:
• Ward B. “Como o Linux Funciona”. Novatec 2017.
s
Introdução ao Linux
Capítulo 0
Apresentação da disciplina
Bibliografia
outras
Linux:
• Newcomb A. “Linux para Makers”, Novatec 2019.
s
Projeto Make – livro simplificado e introdutório
sobre conceitos da disciplina
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 47
Apresentação da disciplina
Bibliografia
outras
Raspberry Pi:
• E. Upton, Halfacree G. “Raspberry Pi- Guia do Usuário”A.M. 2016
s
Um dos autores é coautor do Projeto Raspberry PI – conceitos introdutórios
sobre Raspberry Pi
Capítulo 0
Apresentação da disciplina
Bibliografia
Material complementar
• Livro gratuito: “Aplicações Práticas de sistemas embarcados Linux utilizando Raspberry Pi” – Sandro Jucá e Renata Pereira
Livro fruto de pesquisas financiadas no IFCE.
E gratuito e pode ser baixado através dos links:
https://podeditora.com.br/wp- content/uploads/2019/03/Livro-
Aplicacoes-Praticas-Rpi-Pod- site.pdf
https://podeditora.com.br/produto /aplicacoes-praticas-de-sistemas-
embarcados-linux-utilizando-
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 49
Apresentação da disciplina
Bibliografia
Material complementar
Relatório de pesquisa sobre o mercado brasileiro de Sistemas Embarcados e IoT em 2021–Portal Embarcados
Descreve particularidades do mercado brasileiro, o processo
de desenvolvimento, tecnologias e fabricantes
utilizados em projetos de SE e de profissionais que atuam na
área.
De propriedade do Embarcados, disponibilizado sob licença conforme
segue:
https://embarcados.com.br/relator io-da-pesquisa-sobre-o-mercado-
brasileiro-de-sistemas- embarcados-e-iot-2021/
Capítulo 0
Apresentação da disciplina
Leituras recomendas, referências de estudo e páginas web
Kernel linux
Acompanhar mudanças e
atualizações no Kernel, matindo pela Linux Foundation
https://www.kernel.org
Linux foundation
Organização para o desenvolvimento e
apriom. Do software livre, notícias, blog, vídeos https://www.linuxfoundati on.org
E-disciplinas
Página da disciplina
Raspberry pi
Empresa matenedora do projeto, documentação, downloads e blog:
https://www.raspberrypi.com https://www.raspberrypi.org
Portal embarcados
Blog, notícias,
tendências, pesquias, artigos, downloads etc.
https://embarcados.co m.br
Yocto project
Sistema de build composto por diversas ferramentas para criação de distribuições
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 51
Apresentação da disciplina
Durante as aulas
g
t experiências Troque
TÍTULO AQUI Adicione algum
texto aqui
Expresse seu ponto de
vista ajude
Pergunte
Participe
Capítulo 0
Apresentação da disciplina
Próxima aula
Cap. 1 – Projetos em sist. Embarcados
Motivação, arquiteturas, mercado etc.
Recomendação de leitura
Matéria: “ Embedded Systems and the Future ”
https://readwrite.com/embedde
d-systems-and-the-future/
Capítulo 0
Prof. Pedro Oliveira C. Junior SEL0630-Projetos em Sistemas Embarcados 53
Apresentação da disciplina
Referências e créditos
Outras:Formas, animações, fontes e caixas de textos utilizadas nas transparências a partir de licença:“Techenfim”. Outras fontes estão referenciadas diretamente no slide que a cita. Material não comercializado e utilizado apenas para fins didáticos.
Abraham S., Galvin P., Gagne G. “Operating System Concepts” 9th ed. Wiley 2013.
Andrew S. Tanenbaum, “Sistemas operacionais modernos”, PrenticeHall do Brasil, 2010.
E. Upton, HalfacreeG. “Raspberry Pi- Guia do Usuário”A.M. 2016
Software in the Public Interest, Inc. Debian: The Universal Operating System. Disponivel em:
<https://www.debian.org/index.pt.html>. Acesso: Agosto 2022.
Juca, Sandro Aplicações Práticas de sistemas embarcados Linux utilizando Raspberry Pi [recurso eletrônico] / Sandro Jucá e Renata Pereira. 1ª ed. - Rio de Janeiro: PoD, 2018. recurso digital ; 21MB.
Newcomb A. “Linux para Makers”, Novatec 2019.
Wolf. M. “Computer as Components”, 4th ed. M.K. 2016.
Portal Embarcados. Disponível em <https://embarcados.com.br>. Acesso: agosto 2022.
The Linux Fondation – EUA. Disponível em <https://linuxfoundation.org>. Acesso: agosto 2022.
Raspberry Pi Foundation Group- Reino Unido –disponível em: <https://www.raspberrypi.org>
Acesso: agosto 2022.
Capítulo 0