UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson...

94
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO USO DO PROTOCOLO LIN NA INTERCONEXÃO DE SUBSISTEMAS DE SATÉLITES ARTIFICIAIS por Éderson Recalcatti Itajaí (SC), junho de 2012

Transcript of UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson...

Page 1: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

USO DO PROTOCOLO LIN NA INTERCONEXÃO DE SUBSISTEMAS DE SATÉLITES ARTIFICIAIS

por

Éderson Recalcatti

Itajaí (SC), junho de 2012

Page 2: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

USO DO PROTOCOLO LIN NA INTERCONEXÃO DE SUBSISTEMAS DE SATÉLITES ARTIFICIAIS

Área de Sistemas Embarcados

por

Éderson Recalcatti Relatório apresentado à Banca Examinadora do Trabalho Técnico-científico de Conclusão do Curso de Ciência da Computação para análise e aprovação. Orientador: Cesar Albenes Zeferino, Dr. Co-orientador: Rodrigo Vinícius Mendonça Pereira, M.Sc.

Itajaí (SC), junho de 2012

Page 3: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

RESUMO

RECALCATTI, Éderson. Uso do Protocolo LIN na Interconexão de Subsistemas de Satélites Artificiais. Itajaí, 2012. 95f. Trabalho Técnico-científico de Conclusão de Curso (Graduação em Ciência da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2012. O protocolo de comunicação LIN é largamente utilizado na área automotiva devido ao seu baixo custo e ao seu peso reduzido, características decorrentes de utilizar apenas um fio para transferir os dados. Tais características conferem ao LIN um potencial uso em aplicações aeroespaciais, como em satélites artificiais. No entanto, o barramento LIN apresenta algumas limitações, tais como largura de banda reduzida, alta emissão de ondas eletromagnéticas e vulnerabilidade à interferência eletromagnética. Tais limitações devem ser levadas em consideração quando se pretende aplicar o LIN em satélites artificiais. Essa preocupação se deve ao fato do barramento conseguir atender os requisitos de comunicação do subsistema que adotará o protocolo em questão e também a grande hostilidade apresentada pelo ambiente espacial, a qual inclui partículas radioativas, grande variação de temperatura e fenômenos elétricos causados pelo vácuo parcial. Esses eventos são capazes de provocar desde mau funcionamento até danos irreparáveis nos componentes eletrônicos. Por esse motivo, a seleção de componentes apropriados e o uso de técnicas de tolerância a faltas tornam-se necessárias na fase de projeto de um barramento de comunicação a ser embarcada em um veículo espacial. Este Trabalho Técnico-científico de Conclusão de Curso se insere no contexto da comunicação em satélites artificiais e visou avaliar a aplicabilidade do protocolo de comunicação automotivo LIN na interconexão de sistemas computacionais aeroespaciais. Os estudos e resultados obtidos apontam para a possibilidade de se usar o LIN em satélites aplicando a técnica de redundância ativa para tolerar faltas permanentes, enquanto que faltas transitórias, possivelmente, podem ser toleradas com o CRC do LIN. Palavras-chave: Satélites Artificiais. Protocolo LIN. Tolerância a faltas.

Page 4: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

ABSTRACT

The LIN protocol communication is widely used in the automotive area due to its low cost and reduced weight, which are features obtained with the use of only one wire to transfer data. Such features give to LIN a potential usage in aerospace applications, as in artificial satellites. However, the LIN bus has some limitations, such as reduced bandwidth, high emission of electromagnetic waves and vulnerability to electromagnetic interference. Such limitations should be taken into account when trying to apply the LIN in artificial satellites. The bus must be able to meet the requirements of a target subsystem and also tolerate the hostility of shown by the space environment, which includes: radioactive particles, a large variation in temperature and electrical phenomena caused by the partial vacuum. These events are capable of causing malfunction in a system, including irreparable damage to electronic components. For this reason, the selection of appropriate components and the use of fault tolerance techniques become necessary in the design phase of a communication bus to be loaded onto a spacecraft. This work is inserted in the context of communication satellites and aims at evaluating the applicability of the automotive LIN communication protocol in the interconnectedness of aerospace computing systems. The studies and results obtained so far indicate the possibility of using the LIN in satellite applying the technique of active redundancy to tolerate permanent faults, while transient faults, possibly, can be tolerated with the CRC of the LIN. Keywords: Artificial Satellite. LIN Protocol. Fault tolerance.

Page 5: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

LISTA DE FIGURAS

Figura 1. Rede hierárquica automotiva CAN/LIN ...................................................................16 Figura 2. Camadas do LIN .......................................................................................................21 Figura 3. Transceptor LIN Microchip MCP201: (a) encapsulamento; (b) pinagem................22 Figura 4. Configuração típica de uma rede LIN utilizando a interface MCP201 Microchip ...23 Figura 5. Esquema elétrico LIN ...............................................................................................24 Figura 6. Diferenças entre VBAT, VSUP e VBUS............................................................................24 Figura 7. Níveis de tensão no barramento LIN. .......................................................................25 Figura 8. Forma simplificada de um quadro LIN.....................................................................27 Figura 9. Cabeçalho de um quadro LIN ...................................................................................27 Figura 10. Campo de sincronismo............................................................................................28 Figura 11. Identificador de quadro ...........................................................................................29 Figura 12. Slot do quadro .........................................................................................................31 Figura 13. Configuração típica de teste e simulação com LINspector e Navigator .................32 Figura 14. Classes de Missão Espacial.....................................................................................40 Figura 15. Subsistemas de um satélite artificial .......................................................................42 Figura 16. Arquitetura interna esquemática de um satélite ......................................................43 Figura 17. Sistema OACDH – Controle de Órbita e Atitude + Processamento de Sinais .......44 Figura 18. Atuação da Dose Ionizante Total ............................................................................50 Figura 19. Propagação de um SET em um bloco combinacional.............................................51 Figura 20. Single Event Upset (SEU) em uma célula de memória SRAM ..............................52 Figura 21. Falta, Erro e Defeito................................................................................................54 Figura 22. Redundância Modular Dupla (DMR)......................................................................58 Figura 23. Redundância Modular Tripla (TMR)......................................................................58 Figura 24. TMR com votador triplicado...................................................................................59 Figura 25. Confiabilidade de TMR ..........................................................................................60 Figura 26. Operação básica de um sistema com redundância dinâmica ..................................62 Figura 27. Exemplo de estrutura housekeeping do satélite ACE .............................................64 Figura 28. Visão geral da arquitetura de rede do satélite HummerSat-1..................................65 Figura 29. Camada física da arquitetura proposta ....................................................................67 Figura 30. Kit DEMO9S12XEP100 da Freescale ....................................................................68 Figura 31. Arquitetura original do AstroFácil ..........................................................................68 Figura 32. Arquitetura do AstroFácil com LIN adaptado ........................................................70 Figura 33. Arquitetura Final do AstroFácil com LIN adaptado + sabotador ...........................70 Figura 34. Kit PICDEM CAN-LIN 3 da Microchip.................................................................71 Figura 35. Diagrama esquemático do Slave Keyboard ............................................................73 Figura 36. Visualização 3D da placa Slave Keyboard .............................................................73 Figura 37. Leiaute da PCI do Slave Keyboard vista do lado dos componentes.......................74 Figura 38. Leiaute da PCI do Slave Keyboard vista do lado da solda .....................................74 Figura 39. Diagrama esquemático da PCI Slave display .........................................................75 Figura 40. Visualização 3D da placa Slave Display.................................................................76 Figura 41. Leiaute da PCI do Slave Display vista do lado dos componentes ..........................76 Figura 42. Leiaute da PCI do Slave Display vista do lado da solda.........................................77 Figura 43. Diagrama esquemático da PCI Slave Motor Control..............................................78 Figura 44. Visualização 3D da placa Slave Motor Control......................................................78 Figura 45. Leiaute da PCI do Slave Motor Control vista do lado dos componentes................79 Figura 46. Leiaute da PCI do Slave Motor Control vista do lado da solda..............................79 Figura 47. Conexão elétrica do sabotador ao barramento ........................................................80

Page 6: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

Figura 48. Funcionamento do sabotador ..................................................................................81 Figura 49. Diagrama esquemático simplificado do sabotador .................................................83 Figura 50. Código fonte da ISR da captura de entrada.............................................................85 Figura 51. Código fonte da ISR do PIT....................................................................................86 Figura 52. Forma de onda dos sinais do Sabotador..................................................................87 Figura 53. Foto retirada da Placa Slave Keyboard (sem componentes)...................................88 Figura 54. Foto retirada da Placa Slave Display (sem componentes) ......................................88 Figura 55. Foto retirada da Placa Slave Motor Control (sem componentes) ...........................89

Page 7: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

LISTA DE TABELAS

Tabela 1. Parâmetros do LIN....................................................................................................26 Tabela 2. Redundância de hardware.........................................................................................57 Tabela 3. Sinais do Sabotador ..................................................................................................84

Page 8: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

LISTA DE EQUAÇÕES

Equação 1 .................................................................................................................................25 Equação 2 .................................................................................................................................29 Equação 3 .................................................................................................................................29

Page 9: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

LISTA DE ABREVIATURAS E SIGLAS

ACE Advanced Composition Explorer AEB Agência Espacial Brasileira ASIC Application Specific Integrated Circuits CAN Controller Area Network CCD Charge Coupled Device CGEE Centro de Gestão e Estudos Estratégicos CI Circuito Integrado CMOS Complementary Metal Oxide Semiconductor CRC Cyclic Redundancy Check DD Displacement Damage DMR Dual Modular Redundancy ECC Error Correcting Codes ECT Enhanced Capture Timer EEPROM Electrically Erasable Programmable Read-Only Memory EMC Electromagnetic Compatibility EME Electromagnetic Emission EMI Electromagnetic Interference ESA European Space Agency FPGA Field Programmable Gate Arrays GEO Geostationary Earth Orbit GPS Global Position System HEO Highly Elliptical Orbit I2C Inter-Integrated Circuit IDE Integrated Development Environment IMAGE Imager for Magnetopause-to-Aurora Global Exploration INPE Instituto Nacional de Pesquisas Espaciais ISR Interrupt Service Routine ITA Instituto Tecnológico de Aeronáutica LCD Liquid Cristal Display LDF LIN Description File LEDS Laboratory of Embedded and Distributed Systems LEO Low Earth Orbit LIN Local Interconnect Network MEO Medium Height Earth Orbit MOSFET Metal Oxide Semiconductor Field Effect Transistor NIEL Non Ionizing Energy Loss NMOS N-type Metal Oxide Semiconductor NMR N Modular Redundancy OACS Orbit and Attitude Control System OBC On Board Computer OBDH On Board Data Handling PID Protected Identifier Field PIT Periodic Interrupt Timer PUD Packet Data Unit RTC Real Time Clock SCI Serial Communication Interface SEB Single-Event Burnout

Page 10: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

SEE Single-Events Effects SEGR Single-Event Gate Rupture SEL Single-Event Latchup SET Single-Event Transient SEU Single-Event Upset SHE Single-Hard Error SRAM Static Random Access Memory TID Total Ionizing Dose TMR Triple Modular Redundancy TTC Trabalho Técnico-científico de Conclusão de Curso TT&C Tracking, Telemetry and Control UART Universal Asynchronous Receiver/Transmitter UNIVALI Universidade do Vale do Itajaí URSS União das Repúblicas Socialistas Soviéticas VCT Volcano Communication Technology

Page 11: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

LISTA DE SÍMBOLOS

C Capacitância F Farad g grama J Jaule km quilometro kg quilograma m metro n nano p pico V Volt W Watt

Page 12: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

SUMÁRIO

1 INTRODUÇÃO.................................................................................................... 15 1.1 PROBLEMATIZAÇÃO...................................................................................................... 16 1.1.1 Formulação do Problema.................................................................................................... 16 1.1.2 Solução Proposta.................................................................................................................. 17 1.2 OBJETIVOS ........................................................................................................................ 17 1.2.1 Objetivo Geral...................................................................................................................... 17 1.2.2 Objetivos Específicos ........................................................................................................... 17 1.3 METODOLOGIA................................................................................................................ 18 1.4 ESTRUTURA DO TRABALHO........................................................................................ 19

2 FUNDAMENTAÇÃO TEÓRICA...................................................................... 20 2.1 LIN (LOCAL INTERCONNECT NETWORK) ................... ........................................... 20 2.1.1 Camadas ............................................................................................................................... 21 2.2 AMBIENTE ESPACIAL .................................................................................................... 34 2.2.1 Vácuo Parcial ....................................................................................................................... 35 2.2.2 Plasma................................................................................................................................... 35 2.2.3 Microgravidade.................................................................................................................... 37 2.2.4 Radiação ionizante............................................................................................................... 38 2.2.5 Temperatura ........................................................................................................................ 38 2.3 SATÉLITES ARTIFICIAIS ............................................................................................... 39 2.3.1 História do primeiro satélite ............................................................................................... 39 2.3.2 Tipos de missão .................................................................................................................... 40 2.3.3 Tipos de órbita ..................................................................................................................... 41 2.3.4 Arquitetura de satélites ....................................................................................................... 42 2.4 RADIAÇÃO E CIRCUITOS INTEGRADOS .................................................................. 49 2.4.1 Dano por Deslocamento ...................................................................................................... 49 2.4.2 Dose Ionizante Total (TID) ................................................................................................. 49 2.4.3 Efeitos de Evento Único (SEE) ........................................................................................... 50 2.5 TOLERÂNCIA A FALTAS................................................................................................ 53 2.5.1 Faltas, erros e defeitos ......................................................................................................... 53 2.5.2 Duração das faltas e erros................................................................................................... 55 2.5.3 Técnicas de tolerância a faltas ............................................................................................ 55 2.5.4 Mascaramento...................................................................................................................... 56 2.5.5 Redundância......................................................................................................................... 57 2.6 POSSÍVEIS APLICAÇÕES DO LIN EM SATÉLITES ........... ...................................... 63

3 DESENVOLVIMENTO...................................................................................... 66 3.1 ARQUITETURA DESENVOLVIDA ................................................................................ 66 3.2 PROJETO ............................................................................................................................ 68 3.2.1 Mestre ................................................................................................................................... 71 3.2.2 Escravos ................................................................................................................................ 72 3.2.3 Módulo Sabotador ............................................................................................................... 80 3.3 IMPLEMENTAÇÃO E EXPERIMENTAÇÃO..................... .......................................... 82 3.3.1 Sabotador.............................................................................................................................. 82 3.3.2 Módulo Escravo Teclado - Placa Slave Keyboard............................................................ 87 3.3.3 Módulo Escravo Display - Placa Slave Display................................................................. 88 3.3.4 Módulo Escravo Controle dos Motores - Placa Slave Motor Control ............................ 89 3.3.5 Considerações....................................................................................................................... 89

Page 13: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

4 CONCLUSÕES.................................................................................................... 90

Page 14: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

15

1 INTRODUÇÃO

Devido à falta de atmosfera e ao campo magnético pouco intenso no ambiente

espacial, os sistemas eletrônicos que atuam em tais ambientes estão sujeitos a índices muito

mais elevados de radiação que na superfície terrestre, podendo ocorrer falhas de comunicação

e, até mesmo, danos físicos aos componentes.

Sistemas aeroespaciais requerem componentes que ofereçam desempenho,

confiabilidade e, ao mesmo tempo, atendam a requisitos relativos às limitações de peso,

volume e de consumo de energia. Os sistemas computacionais utilizados em satélites

artificiais requerem arquiteturas de comunicação que atendam a esses requisitos.

De acordo com Fortescue, Swinerd e Stark (2011, p. 7), a arquitetura de um satélite

artificial é composta por diversos subsistemas, tais como: estrutura, suprimento de energia,

controle de atitude e órbita, propulsão, comunicação de serviço, gestão de bordo, controle

térmico e cargas úteis. A troca de informações entre estes subsistemas se dá através de

arquiteturas de comunicação capazes de suportar o alto índice de radiação do ambiente

espacial e, assim, garantir que os dados trafeguem de forma segura pela rede. Segundo

Fortescue, Swinerd e Stark (2011, p. 462), dentre essas arquiteturas de comunicação, podem

ser citadas as redes multiponto (tais como: ESA OBDH, CAN Bus e MIL-STD-1553B) e as

redes ponto-a-ponto (tais como: ESA SpaceWire, MIL-STD-1355, HotLinks e GigaLink).

Arquiteturas de comunicação utilizadas em sistemas automotivos, como o CAN –

Controller Area Network e o LIN – Local Interconnect Network (LIN CONSORTIUM,

2010), representam alternativas de solução para a interconexão em sistemas aeroespaciais. O

primeiro é mais apropriado para aplicações com requisitos de tempo real, enquanto que o

segundo se aplica em sistemas que requeiram baixa largura de banda de comunicação (tais

como travas, retrovisores e vidros), trazendo como benefício um menor custo de

implementação, pois utiliza apenas um fio para transferência de dados, ao invés de dois (como

no CAN). Em sistemas automotivos, essas redes são utilizadas em arquiteturas hierárquicas,

formadas por um backbone CAN e sub-redes LIN. Por exemplo, como ilustra a Figura 1, sub-

redes LIN são utilizadas na interconexão de dispositivos nas portas do automóvel (botões e

motores elétricos) e essas sub-redes são ligadas à unidade de controle central por meio do

backbone CAN (ZEFERINO, 2009).

Page 15: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

16

Figura 1. Rede hierárquica automotiva CAN/LIN

Fonte: LIN Consortium (2010).

Este Trabalho Técnico-científico de Conclusão de Curso se insere no contexto da

comunicação em satélites artificiais, tema este que teve motivação a partir de um projeto da

Univali enviado e aprovado, em 2009, pelo Programa Uniespaço da Agência Espacial

Brasileira (AEB), tendo prazo de conclusão previsto para o primeiro semestre de 2012. O

projeto visa avaliar a aplicabilidade do protocolo de comunicação automotivo LIN na

interconexão de sistemas computacionais aeroespaciais.

Esta seção discutiu alguns conceitos relacionados ao contexto do trabalho de modo a

posicionar o problema de pesquisa a ser tratado, conforme a próxima seção. As seções

seguintes apresentam os objetivos da pesquisa, o plano de trabalho, os recursos necessários, o

cronograma e o orçamento do projeto.

1.1 PROBLEMATIZAÇÃO

1.1.1 Formulação do Problema

No caso de aplicações aeroespaciais (foco deste trabalho), entende-se que a adoção de

protocolos como o LIN em sistemas que requeiram comunicação a uma baixa largura de

Page 16: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

17

banda pode resultar em uma redução do volume e do peso, fatores críticos em tais sistemas.

No entanto, é preciso verificar se a atual especificação do protocolo atende a requisitos de

tolerância, segurança, confiabilidade, disponibilidade e longevidade.

1.1.2 Solução Proposta

Nesse contexto, o presente projeto busca avaliar a aplicabilidade do protocolo de

comunicação LIN para uso na interconexão de sistemas computacionais aeroespaciais. No

projeto pretende-se caracterizar os requisitos de comunicação de sistemas utilizados em

satélites artificiais e avaliar a capacidade do barramento LIN em atender a esses requisitos.

Essa avaliação será realizada por meio de estudos e da implementação de protótipos de

sistemas físicos.

Em especial, pretende-se responder a duas perguntas de pesquisa:

• O protocolo LIN pode ser utilizado em satélites artificiais?

• Quais modificações devem ser feitas no protocolo LIN para atender aos

requisitos de satélites artificiais?

A primeira questão visa identificar se o LIN pode ser aplicado em veículos espaciais

sem qualquer alteração na sua especificação original. Caso o protocolo não possa ser utilizado

da forma original, será feito um estudo para descobrir quais mudanças são necessárias para

atender os requisitos de comunicação espacial.

1.2 OBJETIVOS

1.2.1 Objetivo Geral

Avaliar a aplicabilidade do protocolo de comunicação LIN para uso na interconexão

de sistemas computacionais aeroespaciais.

1.2.2 Objetivos Específicos

Para alcançar o objetivo geral deste trabalho, os seguintes objetivos específicos

deverão ser atingidos:

Page 17: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

18

1. Caracterizar os requisitos de comunicação de sistemas computacionais espaciais;

2. Analisar a capacidade do LIN em atender aos requisitos de comunicação de

sistemas computacionais espaciais; e

3. Identificar eventuais acréscimos ao barramento LIN para atender a requisitos não

atendidos pela sua especificação original.

1.3 METODOLOGIA

A primeira fase deste TTC incluiu as etapas de “Estudo e Análise” e de

“Especificação e Projeto”.

A etapa de “Estudos e Análise” teve por objetivo adquirir o conhecimento necessário

sobre os conceitos base para a realização deste projeto, incluindo estudos sobre o protocolo

LIN, subsistemas de Satélites Artificiais, técnicas de tolerância a faltas, hostilidade do

ambiente espacial e redes de comunicação utilizadas em veículos espaciais. A pesquisa

bibliográfica foi baseada, sobretudo em especificações, livros técnico-científicos, tutoriais e

trabalhos de conclusão de cursos de graduação e de pós-graduação.

Na etapa de “Especificação e Projeto” foi feita a seleção dos subsistemas que

possivelmente podem ser atendidos pelo LIN e também a seleção da técnica mais apropriada

de tolerância a faltas a ser aplicada. Além disso, foi realizado o projeto de um protótipo físico,

(incluindo o projeto de diagrama esquemático e leiaute de placas de circuito impresso) com a

finalidade de realizar os experimentos necessários com a rede LIN desenvolvida. Com a

intenção de emular a ocorrência de faltas no barramento, um módulo sabotador foi projetado

para ser incluído no protótipo físico.

A segunda fase deste TTC inclui a etapa de “Desenvolvimento e Experimentos”, na

qual foi realizada a confecção (por uma empresa terceirizada com recursos do programa

Uniespaço) das placas projetadas na etapa de Especificação e Projeto” e a implementação e

testes do módulo sabotador. A montagem e validação do protótipo não foi concluída devido à

dependência de componentes que ainda estavam processo de aquisição na data de conclusão

deste trabalho.

Page 18: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

19

1.4 ESTRUTURA DO TRABALHO

Esta monografia está dividida em quatro capítulos. O Capítulo 1 apresentou uma visão

geral do trabalho, bem como seus objetivos. No Capítulo 2 (Fundamentação Teórica), é

apresentada uma revisão bibliográfica sobre o protocolo LIN, bem como hostilidade do

ambiente espacial, satélites artificiais, radiação espacial em circuitos integrados e tolerância a

faltas. O Capítulo 3 (Desenvolvimento), apresenta a proposta de projeto e o desenvolvimento

de uma arquitetura utilizando um barramento LIN tolerante a faltas que consiga atender os

requisitos de aplicação em veículos espaciais. Essa arquitetura é baseada em um projeto já

existente, no qual foram feitos modificações a fim de adaptar o LIN a essa arquitetura. No

Capítulo 4 (Conclusões), são apresentados os resultados até então obtidos, bem como

sugestões para trabalhos futuros.

Page 19: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

20

2 FUNDAMENTAÇÃO TEÓRICA

Neste capítulo são apresentados os conceitos fundamentais deste trabalho. Esses

conceitos, baseados em pesquisas bibliográficas, incluem assuntos relacionados com o

protocolo LIN, ambiente espacial, satélites artificiais, efeitos da radiação em circuitos

integrados e tolerância a faltas.

2.1 LIN (LOCAL INTERCONNECT NETWORK)

Segundo Paret e Riesco (2007, p. 285), a Motorola (atual Freescale) foi a principal

desenvolvedora do protocolo LIN, lançando a primeira especificação (denominada “LIN ver.

0”) em julho de 1999. Em março de 2000, foi criado um consórcio de empresas interessadas

no protocolo, incluindo a empresa VCT (Volcano Communication Technology) e cinco

fabricantes automobilísticos europeus: Audi, BMW, Daimler Chrysler, Volkswagen e Volvo.

Atualmente, a especificação do LIN está na Versão 2.2.

De acordo com LIN Consortium (2010, p. 10), as principais características do LIN

são:

• Suporte a um único mestre e até 16 escravos;

• Utiliza um único fio para transferência de dados;

• Implementação baseada em interface de hardware UART/SCI comum;

• Auto-sincronizável, dispensando o uso de cristal de quartzo ou ressonador

cerâmico nos nodos escravos;

• Transmissão de sinais de forma determinística devido à responsabilidade do

mestre em controlar todas as transmissões e assegurar tempo suficiente para cada

quadro a ser transmitido;

• Largura de banda entre 1 e 20 kbps;

• Interação com a aplicação baseada em sinais;

• Comportamento previsível, latência fixa e não necessita de arbitragem;

• Reconfigurabilidade; e

• Camada de transporte com suporte a diagnósticos.

Page 20: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

21

A largura de banda do LIN é limitada a 20 kbps devido a questões de interferências

eletromagnéticas (EMI – Electromagnetic Interference) (EGGERS; PAPE; SCHWARTZ,

2002, p. 2). Essas características do LIN permitem alcançar soluções de baixo custo físico

para comunicação entre dispositivos com requisitos de largura de banda limitados, como

sensores e atuadores.

Para Rylander e Wallin (2003, p. 22), a utilização de um único fio para a transmissão

dos dados, como no caso do LIN, aumenta o nível de EME (Electromagnetic Emission –

Emissão Eletromagnética) em relação aos barramentos do tipo par trançado, como o CAN. A

EME é maior também para valores maiores de slew-rate1, sendo que este deve ser controlado

(normalmente pelo próprio transceiver) assim como a largura de banda precisa ser limitada.

Paret e Riesco (2007, p. 299) fazem uma afirmação referente à versão 2.0 do LIN, dizendo

que alguns problemas como interferências de radio, radiação, suscetibilidade e descargas

eletrostáticas ainda precisam ser resolvidos.

2.1.1 Camadas

No LIN, os nodos interconectados ao barramento devem implementar as quatro

camadas do protocolo: (i) Física; (ii) Enlace de Dados; (iii) Transporte; e (iv) Aplicação, as

quais são ilustradas na Figura 2 e descritas nas subseções a seguir.

Figura 2. Camadas do LIN

1 Tempo gasto para um sinal elétrico mudar do nível lógico baixo para o nível lógico alto e vice-versa. Um pequeno intervalo de tempo combinado com uma grande diferença entre o nível baixo e o nível alto, correspondem a um slew-rate alto.

Page 21: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

22

2.1.1.1 Camada Física

A Camada Física é responsável por definir as características do meio físico em que

será feita a transferência das informações, incluindo: número de fios, comprimento máximo

do barramento, número máximo de nodos, características elétricas como tensão e

capacitância, etc... Esta camada é implementada por um circuito integrado denominado

transceptor (ou transceiver), o qual é responsável pelo condicionamento do sinal transmitido

por meio do barramento, seguindo as especificações do protocolo LIN. Um exemplo de

transceptor é o circuito MCP201 da Microchip ilustrado na Figura 3.

(a) (b)

Figura 3. Transceptor LIN Microchip MCP201: (a) encapsulamento; (b) pinagem

Fonte: Newark (2011); Microchip (2006, p. 1)

Na Figura 4, é ilustrado um sistema composto por um nodo mestre e vários nodos

escravos, todos conectados ao barramento LIN por meio de transceptores MCP201. Segundo

LIN Consortium (2010, p. 39), o mestre é o responsável por comandar todo o tráfego no

barramento. Qualquer transação no barramento deve ser iniciada por ele e nenhum escravo

pode transmitir sem a sua autorização. O mestre possui uma tabela de escalonamento para

agendar a realização das transações. Por isso, é possível garantir uma latência fixa das

mensagens.

Outro aspecto importante é que no máximo 16 escravos podem ser conectados ao

barramento a uma distância máxima de 40 metros (LIN CONSORTIUM, 2010, p. 125).

O principal diferencial da camada física do LIN em relação a outros protocolos reside

no uso de um único fio para a comunicação de dados entre os nodos (conforme ilustrado

previamente na Figura 4). Porém, ao contrário de protocolos que utilizam par trançado, como

o CAN, o uso de um único fio no barramento aumenta o nível de emissão eletromagnética

(EME – Electromagnetic Emission). Para contornar isto, o sinal elétrico aplicado ao

Page 22: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

23

barramento na transferência de dados deve receber um controle específico do transceptor no

que se refere ao slew-rate e à largura de banda (RYLANDER; WALLIN, 2003, p. 22 e 31).

Figura 4. Configuração típica de uma rede LIN utilizando a interface MCP201 Microchip

Fonte: Microchip (2006, p. 6).

O estado recessivo ou inativo do barramento LIN é definido em nível alto (1 lógico).

Por isso, como foi mostrado na Figura 4, o barramento deve ser conectado a um resistor de

pull-up para mantê-lo nesse nível enquanto não houver transferência de dados. Além disso,

conforme discutido por LIN Consortium (2010, p. 117), esse resistor deve ser associado em

série a um diodo de proteção para evitar que o nodo seja realimentado através do barramento

no caso de uma eventual queda de alimentação.

A Figura 5 mostra um esquema elétrico da ligação do transceptor do mestre. Pode-se

observar que o nodo mestre é alimentado pela tensão VBAT, a qual pode ser menor do que a

tensão da bateria VBATERIA devido a quedas de tensão oferecida pelos condutores e conexões.

Quedas de tensão ocorrem também nos semicondutores de silício como os diodos, tendo este

uma queda natural de tensão de 0,7 V em sua junção. O canal de alimentação do mestre

possui um diodo de retificação na entrada que serve como filtro e proteção. Portanto, há uma

queda de 0,7 V logo na entrada de alimentação do nodo mestre, sobrando VSUP para alimentar

os componentes internos. VSUP pode ainda ser afetada dinamicamente pela atividade de

chaveamento do barramento.

Page 23: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

24

Figura 5. Esquema elétrico LIN

Fonte: Adaptado de LIN Consortium (2010, p. 118).

O VBUS, conforme ilustra a Figura 6, é a tensão final entregue ao barramento, resultante

das quedas sofridas, principalmente pelo diodo da alimentação do mestre e pelo diodo de

proteção em série com o resistor de pull-up. Ainda, na mesma figura, é possível observar

VBUSrec e VBUSdom que são, respectivamente, o nível lógico 1 (inativo ou recessivo) e o nível

lógico 0 (ativo ou dominante) assumidos pelo barramento.

VBUS

VBAT

VSUP

VBUSrec

VBUSdom

t

Figura 6. Diferenças entre VBAT, VSUP e VBUS.

Fonte: Adaptado de LIN Consortium (2010, p. 118).

Os níveis lógicos do sinal possuem como referência o nível de tensão VSUP, sendo que

o nível lógico 1 é reconhecido a partir de 60% do valor nominal da tensão e o nível lógico 0 é

reconhecido a até 40% do valor nominal (Figura 7).

Page 24: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

25

Figura 7. Níveis de tensão no barramento LIN.

Fonte: Adaptado de LIN Consortium (2010, p. 119).

O LIN foi especificado para atuar na faixa de 8 a 18 V. Segundo LIN Consortium

(2010, p. 125), o nodo pode funcionar em tensões menores de 8 V ou maiores de 18 V, porém,

para esses casos, a comunicação não é garantida. Rylander e Wallin (2003, p. 38) dizem que

quando o LIN é aplicado em caminhões, onde a tensão da bateria é de 24 volts, os nodos

devem ser alimentados por uma tensão que é regulada e transformada de 24 para 12 V,

podendo ser feita pelo próprio nodo ou por um regulador central que distribui a alimentação

para todos os nodos.

A capacitância total do barramento é a soma da capacitância do mestre, dos escravos e

a linha de transmissão do sinal, sendo calculada de acordo com a Equação 1.

CBUS = CMESTRE + N . CESCRAVO + CLINHA . LENBUS Equação 1

onde: CBUS = Capacitância total do barramento (em nF)

CMESTRE = Capacitância do nodo mestre (em pF)

N = Número de nodo escravos

CESCRAVO = Capacitância do nodo escravo (em pF)

CLINHA = Capacitância da linha de transmissão do sinal (em pF/m)

LENBUS = Comprimento do barramento (em m)

Page 25: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

26

A Tabela 1 apresenta os parâmetros das características elétricas do protocolo LIN. É

importante ressaltar que todos os parâmetros são definidos para uma temperatura ambiente na

faixa de -40ºC a 125ºC, conforme a especificação do protocolo.

Tabela 1. Parâmetros do LIN

Parâmetro Descrição Mínimo Típico Máximo Unidade VBAT Faixa de tensão de operação

do nodo 8 -x- 18 V

VSUP Faixa de tensão de alimentação interna do nodo

7 -x- 18 V

VSUP_N_OP Faixa de tensão na qual o dispositivo não é destruído

-0,3 -x- 40 V

LENBUS Comprimento do barramento -x- -x- 40 m CBUS Capacitância total do

barramento 1 4 10 nF

CMESTRE Capacitância do nodo mestre -x- 220 -x- pF CESCRAVO Capacitância do nodo escravo -x- 220 250 pF CLINHA Capacitância da linha de

transmissão -x- 100 150 pF/m

Fonte: Adaptado de LIN Consortium (2010, p. 121 e 125).

Cabe destacar também que, de acordo com LIN Consortium (2010, p. 117), o

barramento e o transceptor são baseados no padrão ISO 9141.

2.1.1.2 Camada de Enlace

A Camada de Enlace é a camada que define o protocolo de comunicação, ou seja, o

formato e o tipo de quadros (mensagens) de transferência, a tabela de escalonamento e o

gerenciamento da rede. Esta camada também é responsável pela validação e pelas operações

relacionadas à verificação da integridade dos dados transferidos.

Estrutura do Quadro

De acordo com Eggers, Pape e Schwartz (2002, p. 2), o LIN usa um único formato de

quadro para sincronizar e endereçar os nodos e trocar dados entre eles. Conforme ilustra a

Figura 8, o quadro LIN possui um cabeçalho e um campo para transferência de dados (o qual

é denominado campo de Resposta).

Page 26: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

27

Figura 8. Forma simplificada de um quadro LIN

Fonte: Adaptado de Pereira (2008, p. 58).

Cabeçalho

Conforme a especificação LIN (LIN CONSORTIUM, 2010), as mensagens no LIN

iniciam sempre com o cabeçalho (Figura 8 (a)), o qual possui as seguintes funções: (i)

informar aos nodos escravos o início de uma nova mensagem; (ii) sincronizar o tempo de cada

bit entre o mestre e os escravos a fim de compensar a diferença da precisão do sinal de clock

dos nodos escravos com o nó mestre; e (iii) informar o tipo e o tamanho da mensagem que

será transmitida. Vale ressaltar, que todas as mensagens no LIN iniciam sempre pelo mestre.

De acordo com as suas funções, o cabeçalho da mensagem é subdividido em três

campos, conforme ilustrado na Figura 9.

Figura 9. Cabeçalho de um quadro LIN

Fonte: Adaptado de Pereira (2008, p. 58).

O campo de break2 (ou break field) informa os escravos sobre o início da transmissão

de um novo quadro, sendo este, sempre gerado pelo mestre. Dessa forma, quando o mestre for

iniciar um novo quadro, ele envia uma sequência entre 11 e 13 bits em nível lógico 0 (nível 2 Foi utilizado o termo original em inglês pois não foi encontrada uma tradução adequada para ele.

Page 27: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

28

dominante) e um bit delimitador em nível lógico 1 (nível recessivo) (LIN CONSORTIUM,

2010, p. 30). A quantidade de bits necessária ao reconhecimento do campo de sincronização

depende, exclusivamente, de tolerâncias no sincronismo, podendo variar de 11 a 13 bits,

conforme já explicado anteriormente.

O segundo campo do cabeçalho é o campo de sincronismo ou sync field, enviado logo

após o campo de break, com o objetivo de sincronizar o clock do escravo com o mestre. Sua

transmissão se dá através de um quadro de UART (Universal Asynchronous

Receiver/Transmitter – Receptor/Transmissor Assíncrono Universal), ou seja, um bit de início

(mudança de nível lógico 1 para nível lógico 0) seguido de 8 bits de dados e um bit de parada

(mudança de nível lógico 0 para nível lógico 1). Os 8 bits de dados correspondem ao valor

hexadecimal 0x55, conforme mostra a Figura 10. De acordo com LIN Consortium (2010, p.

30), o escravo deve priorizar a sequência break/sync sobre qualquer outra tarefa. Ao receber

uma sequência break/sync o escravo deve abortar a tarefa que está executando e atender o

novo quadro recebido.

Bit de

InícioBit de

Parada

2TBit 2TBit 2TBit 2TBit

Figura 10. Campo de sincronismo

Fonte: Adaptado de Pereira (2008, p. 62).

O Campo de Identificação Protegida ou Protected Identifier Field (PID) é o terceiro

campo do cabeçalho e tem o propósito de informar aos dispositivos escravos o tipo de quadro

que está sendo transmitido, além da paridade do campo. Constitui-se de um campo de 8 bits,

sendo que os bits de 0 a 5 correspondem ao código que representa o tipo de quadro e os bits 6

e 7 que representam a paridade, conforme ilustra a Figura 11.

Page 28: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

29

Figura 11. Identificador de quadro

Fonte: Adaptado de Pereira (2008, p. 64).

O identificador de quadro, formado pelos seis primeiros bits do dado (bit 0 a bit 5),

tem a função de informar o propósito do quadro, conforme pode ser visto a seguir:

• Valores de 0 a 59 (0x3B): informa o identificador da mensagem, assim como o

comprimento dos dados;

• Valores 60 (0x3C) e 61 (0x3D): é usado para o modo de diagnóstico e

configuração de dados; e

• Valores 62 (0x3E) e 63 (0x3F): reservado para futuras modificações no protocolo.

A paridade do quadro (bits 6 e 7) é calculada de acordo com as equações Equação 2

Equação 3.

0 0 1 2 4P ID ID ID ID= ⊕ ⊕ ⊕ Equação 2

1 1 3 4 5P ID ID ID ID= ⊕ ⊕ ⊕ Equação 3

Campo de Resposta

Segundo Paret e Riesco (2007, p. 290), um quadro é capaz de transmitir dois

diferentes tipos de mensagens: mensagem de sinal e mensagem de diagnóstico. O tamanho do

campo de resposta é dependente do tipo de quadro a ser enviado, podendo variar de 1 a 8

bytes, sendo que o LSB é enviado primeiro.

Page 29: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

30

A mensagem de sinal é formada por valores escalares ou por um vetor de bytes que

podem ser referentes a uma leitura feita por um sensor, por exemplo, ou, ainda, um valor a ser

enviado a um atuador. Um valor escalar pode estar compreendido na faixa de 1 a 16 bits.

Sinais de 1 bit são usados para valores booleanos, enquanto que sinais de 2 a 16 bits são

tratados como valores do tipo inteiro sem sinal. Vetores ou arrays de bytes são formados por

1, 2, 4 ou 8 bytes (LIN CONSORTIUM, 2010, p. 26).

As mensagens de diagnóstico transportam dados entre uma ferramenta de diagnóstico

(o qual faz parte do backbone) e os nodos da rede LIN, incluindo o mestre e os escravos, a fim

de diagnosticar cada um dos nodos da rede. As mensagens de diagnóstico são de

responsabilidade da camada de Transporte, exceto diagnósticos da Classe I, conforme será

visto na próxima subseção

Checksum

O campo Checksum, ou soma de verificação, é utilizado para verificar a integridade do

quadro transferido. Ele corresponde ao inverso dos oito bits menos significativos da soma dos

bytes que compõem a mensagem. O emissor da mensagem efetua um cálculo sobre os bytes

que compõem a mensagem a ser enviada, preenche o campo checksum com o resultado desse

cálculo e, em seguida, envia a mensagem. O nodo receptor da mensagem efetua o mesmo

cálculo sobre os bytes da mensagem recebida e compara o resultado com o campo checksum

do quadro recebido a fim de verificar a integridade do quadro recebido.

Dois tipos de checksum são definidos para o LIN. O primeiro é o checksum clássico, o

qual efetua o cálculo somente sobre os bytes de dados e é usado para nodos escravos

pertencentes à versão LIN 1.3. Já o segundo, conhecido como checksum aprimorado, inclui

também o byte do campo identificador e é utilizado para nodos escravos compatíveis com a

Especificação 2.0.

Tabela de Escalonamento

Segundo LIN Consortium (2010, p. 39), o mestre do barramento manipula os quadros

de transmissão baseado em sua tabela de escalonamento, distribuindo assim, uma fatia de

tempo (slot) para cada quadro a ser transmitido, conforme é ilustrado na Figura 12. O slot

depende do tamanho do quadro e da base de tempo do sistema, a qual determina a resolução

do atraso dos quadros, em milissegundos, e é configurada pelo desenvolvedor do sistema.

Page 30: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

31

Além do tempo do quadro, o Slot inclui o jitter (diferença entre o atraso máximo e mínimo da

base de tempo para o início de envio do cabeçalho) e o espaço inter-frame, que é o tempo

ocioso até o início de um novo slot.

Campo de

break

Campo de

sincronismo

Campo de

Identificação

protegido

Dado 1 Dado 2 Dado N Soma de

verificação

(Checksum)

Slot

jitterEspaço

inter-frameTempo máximo do quadro

Figura 12. Slot do quadro

Fonte: Adaptado de LIN Consortium (2010, p. 40).

2.1.1.3 Camada de Transporte

A Camada de Transporte define o transporte dos dados que estão contidos em um ou

mais quadros (LIN CONSORTIUM, 2010, p. 58). As unidades que são transportadas pelo

quadro da camada de transporte são denominadas PUD (Packet Data Unit – Unidade de

Pacote de dados), sendo que um PUD pode ser uma mensagem completa ou parte de uma

mensagem, concatenando vários PUDs no último caso. É importante ressaltar, que as

mensagens da camada de transporte são sempre transportadas como mensagens de

diagnóstico, sendo compostas por oito bytes de dados e usam o identificador 60 (0x3C) para a

requisição do mestre e o identificador 61 (0x3D) para a resposta do escravo. Segundo LIN

Consortium (2010, p. 59), os objetivos da camada de transporte são:

• Diminuir a carga do mestre;

• Oferecer diagnósticos completos (ou um subconjunto deles) diretamente nos nodos

escravos; e

• Construção de grupos segmentados com nodos potentes (não o objetivo final de

baixo custo do LIN).

Três classes compõem as mensagens de diagnóstico. A Classe I é usada para

diagnosticar dispositivos simples e inteligentes, fazendo uso do próprio quadro de transporte

Page 31: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

32

de sinal, não sendo necessário, portanto, o uso da camada de transporte. Dispositivos da

Classe II diferem da Classe I por possuírem suporte a um identificador próprio. A Classe III é

usada para dispositivos com funções mais aprimoradas e que, tipicamente, processam suas

informações localmente (por exemplo, sensores e atuadores que executam outras tarefas, além

de sua função básica) (LIN CONSORTIUM, 2010, p. 81, 83 e 84).

Uma das ferramentas de diagnóstico que pode ser citada é a Vector

CANoe/CANalyser, com as seguintes características:

• Interpretação dos quadros de diagnóstico de acordo com dados do CANdela;

• Suporte nativo para conjunto de funcionalidades de diagnóstico do LIN, incluindo

janela de memória de falhas e console de diagnósticos;

• Uso de parâmetros de diagnóstico definidos em LDF (LIN Description File);

• Chaveamento automático de tabelas de escalonamento de diagnóstico;

• Envio direto de requisições de diagnóstico sem simulação do mestre; e

• Tempo de diagnóstico de acordo com LDF.

Outras duas ferramentas usadas para análise do tráfego e execução de testes dos nodos

são o Kvaser Navigator e o Volcano LINspector, sendo que este último é utilizado

exclusivamente para o LIN, enquanto que o Navigator é utilizado também para o CAN

(RYLANDER;WALLIN, 2003, p. 34 e 35). A Figura 13 apresenta a configuração típica de

teste e simulação destas ferramentas.

Figura 13. Configuração típica de teste e simulação com LINspector e Navigator

Fonte: Rylander e Wallin (2003, p. 34).

Page 32: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

33

Detecção de erros, confinamento de faltas e proteção dos dados

Segundo Rylander e Wallin (2003, p. 26), os dados que chegam corrompidos aos

nodos devem ser tratados pela camada de aplicação, exceto erros básicos que são

especificados no protocolo, tais como erros de bit, checksum, paridade, escravo inoperante

(não responde), inconsistência no campo de sincronização e barramento sem atividade. O

mestre é o único nó que pode emitir um re-agendamento de uma mensagem, sendo, portanto,

o responsável pelo confinamento de faltas. Devido à característica determinística do LIN, os

escravos não podem sinalizar erros diretamente ao mestre, cabendo a este, a função de

“perguntar” aos escravos se algum erro foi detectado durante o recebimento das mensagens.

Erros de bits são identificados através da comparação do stream da mensagem de

saída com o stream da mensagem monitorada. Checksum e erros de paridade são detectados

através de cálculos locais e comparação dos dados. A inconsistência do campo de

sincronização é detectada quando as bordas de subida e descida do sinal estão fora da

tolerância. A inoperância do escravo e a inatividade do barramento são detectadas pelo uso de

temporizadores (RYLANDER E WALLIN, 2003, p. 26).

2.1.1.4 Camada de Aplicação

De acordo com LIN Consortium (2010, p. 128), a Camada de Aplicação esconde os

detalhes do protocolo, como por exemplo, o mapeamento dos dados no quadro de

transferência. Ela apenas trata os dados “brutos” que são consumidos pelos sistemas

aeroespaciais, tais como o valor lido de um sensor ou o valor enviado a um atuador.

Esta camada não é especificada pelo protocolo e seu detalhamento extrapola o objetivo

deste Trabalho de Conclusão de Curso, dado que seu foco está na avaliação da aplicabilidade

do protocolo de comunicação LIN para uso na interconexão de sistemas computacionais

aeroespaciais.

2.1.1.5 Trabalhos anteriores

Alguns trabalhos de pesquisa sobre o protocolo LIN já foram desenvolvidos por

pesquisadores do Laboratório de Sistemas Embarcados e Distribuídos (LEDS3) da

3 LEDS é a abreviação de “Laboratory of Embedded and Distributed Systems”.

Page 33: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

34

Universidade do Vale do Itajaí, especialmente no âmbito de projeto executado dentro do

Programa Brazil IP do Ministério da Ciência e Tecnologia, o qual tem por objetivo principal

formar recursos humanos na área de projeto de circuitos integrados.

Freitas (2011) implementou as camadas de enlace e transporte de um nodo LIN

escravo em software embarcado para o processador Nios II da Altera, sendo este sintetizado

em FPGA (Field Programmable Gate Arrays – Arranjo de Portas Programável em Campo).

Gutstein (2011) implementou essas camadas do protocolo em Verilog visando sua síntese em

circuito integrado dedicado do tipo ASIC (Application Specific Integrated Circuits – Circuito

Integrado de Aplicação Específica). No trabalho de Pereira (2011), foram comparadas

métricas relativas à implementação do protocolo LIN nessas diferentes abordagens. Como

resultados desses trabalhos, foi disponibilizado um protótipo de subsistema baseado no

barramento LIN, com nodos implementados em microcontrolador em FPGA, e foi

implementado um circuito integrado (PEREIRA et al., 2011) que encontra-se atualmente em

fabricação pela empresa X-Fab da Alemanha.

Os resultados obtidos nesses trabalhos e a oportunidade oferecida por um projeto

aprovado no Programa UNIESPAÇO da Agência Espacial Brasileira motivaram o estudo

tema deste Trabalho de Conclusão de Curso.

2.2 AMBIENTE ESPACIAL

O ambiente espacial é de extrema hostilidade. Segundo Griffin e French (2004, p. 69),

no espaço sideral, a gravidade é muito baixa, mas não nula, assim como o vácuo é muito

intenso, porém, não nulo. Além dessas características, o espaço apresenta possibilidade de

acelerações não-gravitacional impulsiva ou intermitente, radiação ionizante, variações

extremas de temperatura, micro meteoróides e detritos orbitais.

De acordo com Griffin e French (2004, p. 69), muitas das características e técnicas

adotadas no projeto de veículos espaciais são devido aos efeitos do vácuo sobre os circuitos

elétricos, estruturas mecânicas e sistemas de controle térmico. Este trabalho de conclusão de

curso limita-se a estudar apenas os efeitos sobre os circuitos elétricos.

As subseções a seguir descrevem as características do ambiente espacial e discutem

seus efeitos nos circuitos eletrônicos.

Page 34: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

35

2.2.1 Vácuo Parcial

Segundo Griffin e French (2004, p. 74), o vácuo parcial propicia a ocorrência do

fenômeno conhecido como Paschen, em que gases neutros de baixa densidade são facilmente

ionizados. Isso aumenta a condutividade elétrica do gás, podendo haver a ocorrência de arcos

elétricos4 entre diferentes pontos do circuito e, assim, causar danos ao mesmo. Devido à

radiação solar ultravioleta e à ocorrência de colisões existente em altitudes elevadas, os

átomos e moléculas já se encontram parcialmente ionizados, agravando ainda mais a

tendência desse fenômeno.

Equipamentos eletrônicos destinados ao uso em veículos de lançamento e satélites que

operam em órbitas muito baixas ou na órbita de Marte são vulneráveis a panes provocadas por

Paschen (GRIFFIN; FRENCH, 2004, p. 74).

2.2.2 Plasma

Segundo Griffin e French (2004, p. 75) e Fortescue, Swinerd e Stark (2011, p. 24), o

plasma é frequentemente considerado como um quarto estado da matéria e é gerado por

processos de fotoionização devido à incidência de fótons UV (ultravioleta) capazes de

dissociar e ionizar gases existentes no espaço interplanetário. O plasma, embora globalmente

neutro, é formado por partículas carregadas eletricamente, podendo ser elétrons ou íons de

carga positiva. Essas cargas se movimentam pelo espaço, dando origem a uma corrente

elétrica que pode ser positiva, caso o movimento seja de íons positivos, ou negativa, se as

cargas que se movimentam forem elétrons. Os íons e elétrons tem praticamente a mesma

energia cinética. Os elétrons por possuírem menos massa do que os íons, se deslocam a

velocidades muito maiores.

Quando um veículo espacial se desloca pelo plasma, o mesmo é bombardeado por um

número maior de elétrons do que de íons positivos. Dessa forma, há uma corrente elétrica

negativa tendendo a carregar o veículo espacial com cargas negativas. As cargas negativas

que se acumulam na nave espacial tendem a atrair íons positivos, ocorrendo assim, um

equilíbrio das cargas. Isso ocorrerá com o satélite a um potencial flutuante um pouco negativo

em relação ao plasma, resultando em um acúmulo preferencial de elétrons mais rápidos do

4 Arco Elétrico é uma descarga elétrica que ocorre através de um gás ionizado devido a ruptura dielétrica deste gás. Por exemplo: relâmpago.

Page 35: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

36

que os lentos íons positivos. Esse potencial flutuante depende dos parâmetros de órbita,

tamanho e geometria do satélite, ciclo solar, estação terrestre e outros fatores (GRIFFIN;

FRENCH, 2004, p. 75 e 76).

Em um satélite que se move através do plasma, pode ser induzido uma carga elétrica

absoluta em relação ao plasma, uma carga elétrica diferencial em relação a diferentes partes

do satélite, ou ainda ambas. Se a estrutura do satélite é altamente condutiva, cargas

diferenciais não podem ocorrer. Nas baixas altitudes, a densidade de íons é grande o

suficiente para que grandes diferenças de cargas não possam ser produzidas, mesmo entre

partes eletricamente isoladas do satélite. No entanto, em satélites posicionados na órbita GEO,

partes eletricamente isoladas uma das outras, estão sujeitas a desenvolverem grandes

diferenciais de cargas, chegando ao ponto de poder ser gerado um arco-elétrico de alta tensão

com capacidade de destruir partes do satélite. Isso pode ocorrer a qualquer momento,

principalmente nos períodos de alta atividade solar. Por esse motivo, é recomendado que haja

condução elétrica entre todas as partes do satélite (GRIFFIN; FRENCH, 2004, p. 76).

Satélites de órbita baixa podem sofrer com o efeito da carga absoluta em relação ao

plasma, em que o grande acúmulo de cargas negativas atrai íons e os fazem colidir em alta

velocidade na estrutura do satélite podendo remover alguns átomos da superfície. Em

consequência disso, há alteração de propriedade térmica da superfície e contribuição para a

contaminação do ambiente em torno do satélite (GRIFFIN; FRENCH, 2004, p. 76).

Se não houver condutores expostos transportando diferentes níveis de tensão, um

satélite de órbita baixa tenderá a possuir uma carga flutuante de uns poucos volts negativo em

relação ao plasma. No entanto, se houver condutores expostos em diferentes níveis de

potencial, o satélite poderá apresentar cargas diferenciais e poderá sofrer os mesmos danos

que os satélites de órbita GEO. Verifica-se que o satélite irá equilibrar em um potencial

negativo em relação ao plasma, em aproximadamente 90% da tensão mais negativa exposta

da nave espacial. Isso não representa problema para veículos que operam com uma tensão de

alimentação de 28 V, sendo que este é um nível padrão que foi adotado por muitos anos.

Porém, o autor afirma que já se usa níveis maiores de tensão e o limiar de formação de arcos

elétricos dos condutores tem sido alcançados (por exemplo, o cobre possui um limiar em

torno de 40 V). Isso pode acarretar problemas, tais como a geração de EMI (EMI é altamente

indesejável em aplicações espaciais). O uso de um ground positivo evitaria esses problemas,

no entanto, conforme a literatura consultadas, quase todos os subsistemas desenvolvidos no

Page 36: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

37

inícios desta década eram projetados para funcionar com o tradicional ground negativo

(GRIFFIN e FRENCH, 2004, p. 76 e 77). Portanto, os projetistas precisam assegurar que

nenhum condutor que transporte média ou alta tensão fique exposto ao plasma.

Fortescue, Swinerd e Stark (2011, p. 24) afirmam que a ionosfera (acima de 86 km de

altitude, aproximadamente) é uma região onde há a predominância de plasma, sendo que a

densidade do mesmo cresce com o aumento da altitude até cerca de 1000 km, mas tem seu

pico de densidade entre 300 a 400 km de altitude.

Para fins de comparação, a densidade do gás entre o Sol e a segunda estrela mais

próxima da nossa galáxia (meio interestelar) é de 3 átomos/cm3, sendo o hidrogênio o gás

predominante. Já na atmosfera terrestre, ao nível do mar, a densidade total é de

aproximadamente 3 x 1019 moléculas/cm3 (FORTESCUE; SWINERD; STARK, 2011, p. 17).

2.2.3 Microgravidade

Embora a gravidade no espaço seja baixa, resultando em um menor peso do satélite e

de seus componentes, deve haver uma preocupação com o peso do mesmo durante a fase de

projeto, pois diversos fatores causam acelerações no veículo espacial na ordem de 10-3 a 10-11

g, onde 1 g corresponde a 9,8 m/s2. Essas acelerações dependem do tamanho do satélite, de

sua configuração, da altitude orbital, do ciclo solar e do momento magnético residual

(GRIFFIN; FRENCH, 2004, p. 77).

Ainda, segundo os mesmo autores (GRIFFIN; FRENCH, 2004, p. 78), os diversos

fatores que causam acelerações no satélite são: ação dos atuadores de controle de translação

ou atitude, movimento de partes internas ou ainda tripulação humana. Fatores externos

também são responsáveis por tais acelerações e dentre elas pode-se citar os arrastos

aerodinâmicos e a pressão da radiação solar.

Page 37: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

38

2.2.4 Radiação ionizante

Segundo Griffin e French (2004, p. 80), o ambiente espacial é “infestado” por radiação

de diversos comprimentos de onda e partículas emitidas por fontes diferentes. O Sol é um

grande emissor de radiação ultravioleta (UV), raios X e prótons de alta energia. Fortescue,

Swinerd e Stark (2011, p. 19) afirmam que a taxa de liberação de energia do Sol é na ordem

de 3.85 x 1026 W e que se todo o combustível fóssil da Terra fosse queimado nessa mesma

potência, se esgotaria em 50 ms. Segundo a NASA (1996, p. 1) e Fortescue, Swinerd e Stark

(2011, p. 19), o processo de fusão que ocorre no interior do Sol libera prótons e elétrons,

juntamente com gás hélio e outros núcleos pesados que viajam pelo espaço dando origem aos

ventos solares, os quais chegam à Terra com uma velocidade de, aproximadamente, 450 km/s

e com uma densidade de ~9 prótons/cm3. Além do Sol, há outras fontes de radiação, tais

como as Novas e as Supernovas.

Algumas das partículas existentes no espaço, tais como prótons e elétrons, ficam

presas pelo campo magnético da Terra, dando origem ao chamado cinturão de radiação de

Van Allen. Ao todo, são dois cinturões que existem em torno da Terra, o mais interno situa-se

entre 1.000 e 5.000 km e é formado por prótons, e o mais externo entre 15.000 e 32.000 km,

aproximadamente, sendo este formado por elétrons. Essas partículas podem penetrar a

blindagem da aeronave e causar danos aos circuitos eletrônicos, os quais serão vistos como

mais detalhes na Seção 2.4 (FOROUZAN, 2008, p. 481; LIMA, 2006, p. 17).

2.2.5 Temperatura

Devido ao vácuo do ambiente espacial, o calor transferido entre o satélite e o ambiente

se dá unicamente por irradiação, sendo impossível a troca de calor através de condução ou

convecção, como acontece no ambiente terrestre. Partes termicamente isoladas de um satélite

orbitando a Terra podem experimentar temperaturas em torno de -73ºC (quando na sombra) a

até 76ºC aproximadamente (quando exposto a luz solar) (GRIFFIN; FRENCH, 2004, p. 98).

O efeito fatigante do ciclo térmico que se repete entre os dois extremos de temperatura

sobre os materiais podem resultar em problemas nos componentes e subsistemas do satélite.

Um exemplo foi o satélite LANDSAT-D, em que as conexões dos painéis solares foram feitos

exageradamente apertadas, vindo a se soltarem após o ciclo térmico e desativando o satélite

(GRIFFIN; FRENCH, 2004, p. 98).

Page 38: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

39

2.3 SATÉLITES ARTIFICIAIS

Satélites artificiais são veículos que orbitam a Terra ou outros astros e transportam

consigo uma carga útil, podendo ser instrumentos de comunicação (tais como antenas), de

monitoramento (tais como Câmera Imageadora, usada no satélites CBERS-2, por exemplo),

dentre outras, dependendo da missão a ser desempenhada pelo satélite.

Os satélites são classificados de acordo com o tipo de missão e o tipo de trajetória que

farão durante a realização da sua missão, conforme será visto mais adiante.

2.3.1 História do primeiro satélite

Esta seção apresenta um breve resumo sobre a história do primeiro satélite construído

no mundo. Os parágrafos seguintes são totalmente baseados nas afirmações de Brown (2003,

p. 1).

O primeiro satélite construído no mundo foi um golpe publicitário. Ao final da

segunda guerra mundial, os Estados Unidos e a antiga URSS (União das Repúblicas

Socialistas Soviéticas) sentiam-se ameaçados um pelo outro, pois ambos detinham o

conhecimento para a fabricação de bombas atômicas.

Por meio de trabalhos e materiais que foram capturados na Alemanha, ficou evidente a

possibilidade de se construir um míssil balístico capaz de transportar uma bomba nuclear para

qualquer parte do mundo, eliminando assim, a necessidade do transporte da mesma através de

aviões. Os Estados Unidos temiam que os soviéticos concluíssem primeiro a construção de

um míssil balístico, pois se isso acontecesse, os norte-americanos poderiam ser destruídos em

poucas horas. Os soviéticos também estavam tensos com a situação, porém foram os

primeiros a concluir a construção do primeiro míssil intercontinental. Decidiram então, fazer

o anúncio do seu novo produto de uma forma bastante dramática. Eles sabiam que se podiam

enviar uma bomba de determinado tamanho em uma trajetória intercontinental, então,

poderiam também colocar um objeto de determinada massa na órbita baixa da Terra. No dia 4

de outubro de 1957, a União Soviética lança o primeiro satélite, Sputnik I, como forma de

anunciar ao mundo o seu míssil intercontinental. O Sputnik I era uma esfera de 58 cm de

diâmetro, pesava 84 kg e possuía uma bateria, um transmissor e uma antena. O transmissor

emitia um beep que podia ser recebido em qualquer lugar do mundo industrializado. O

Sputnik I caiu na Terra em janeiro de 1958.

Page 39: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

40

Os Estados Unidos lançaram seu primeiro satélite, conhecido como Explorer I, em 31

de janeiro de 1958. O Explorer I pesava 14 kg e era dividido em dois estágios. O primeiro

estágio consistia na metade inferior do satélite e abrigava o propulsor do veículo. O segundo

estágio, ou metade superior, era o satélite propriamente dito e era responsável por detectar

raios cósmicos, fazer experimentos com micrometeoritos, partículas, etc. Um transmissor de

baixa potência também fazia parte deste estágio. O Explorer I ficou em órbita por dois meses,

e através dele, descobriu-se o cinturão de Van Allen.

2.3.2 Tipos de missão

De acordo com Brown (2003, p. 3), as missões espaciais podem ser divididas em três

classes primárias, sendo: (i) Órbita terrestre; (ii) Exploração planetária e lunar; e (iii) Missão

tripulada. Estas, ainda, são subdivididas em outras classes, conforme ilustra a Figura 14.

Figura 14. Classes de Missão Espacial

Fonte: Adaptado de Brown (2003, p. 4).

O tipo de missão a ser realizada pelo satélite determina quais os equipamentos que o

mesmo deve transportar como carga útil. É importante notar que existem satélites que

Page 40: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

41

realizam mais de um tipo de missão simultaneamente, por isso, transportam mais de um tipo

de equipamento.

2.3.3 Tipos de órbita

Dependendo do tipo de missão que o satélite deve desempenhar, um determinado tipo

de órbita deve ser adotado pelo mesmo. Por exemplo, satélites de sensoriamento remoto

precisam “varrer” diferentes pontos da Terra várias vezes ao dia, portanto, devem estar

situados em uma órbita baixa, a fim de que sua velocidade seja maior do que a velocidade de

rotação da Terra. Enquanto isso, satélites de comunicação devem sempre apontar para um

ponto fixo da Terra, usando assim, uma órbita geoestacionária (conforme será visto adiante),

possibilitando que a velocidade do satélite coincida com a velocidade angular da Terra

(FORTESCUE; SWINERD; STARK, 2011, p. 3, 4, 122 e 133).

Segundo Fortescue, Swinerd e Stark (2011, p. 111), a altitude da órbita é dividida,

basicamente, em cinco categorias: (i) LEO (Low Earth Orbit - Órbita Baixa da Terra); (ii)

MEO (Medium Height Earth Orbit – Órbita de Altura Média da Terra); (iii) GEO

(Geostationary Earth Orbit – Órbita Geoestacionária da Terra); (iv) HEO (Highly Elliptical

Orbit – Órbita Elíptica Alta); e (v) Órbita não-geocêntrica (lunar e interplanetária).

A primeira categoria (LEO) pode ser definida como qualquer órbita abaixo de 1000

km, ou abaixo do cinturão de Van Allen, segundo Griffin e French (2004, p. 17). Ainda,

segundo os mesmos autores, alguns exemplos de missões que são colocados nesta órbita são:

testes de vôo, observação da Terra, militar, meteorológicos, além de outros.

Segundo Forouzan (2008, p. 480 e 481), os satélites MEO são posicionados a uma

altitude entre 5.000 a 15.000 km da superfície terrestre, faixa localizada entre os dois

cinturões de Van Allen. Tem-se como exemplo de satélites dessa categoria os utilizados no

GPS (Global Position System – Sistema de Posicionamento Global).

Satélites GEO têm como principal característica o apontamento constante de suas

antenas para um ponto fixo da Terra. Para isso, a velocidade de deslocamento do satélite deve

ser igual à velocidade de rotação da Terra. Pelo fato da velocidade orbital depender da

distância em relação ao planeta, existe somente uma órbita geoestacionária, a qual ocorre no

plano equatorial a 35.786 km da superfície terrestre. De acordo com Brown (2003, p. 101), a

maioria dos satélites de comunicação e meteorológicos é posicionada nessa órbita.

Page 41: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

42

Já um satélite HEO é um tipo específico da categoria GEO, diferenciando-se na

excentricidade de sua órbita. Estes não seguem uma órbita circular, mas sim uma órbita

elíptica em torno da Terra. Desse modo, durante seu percurso para completar a órbita, o

satélite atinge a menor distância da superfície terrestre, chamada de Perigeu e a maior

distância, conhecida como Apogeu. Esse tipo de órbita tem a vantagem de permitir uma visão

mais ampla da Terra (FORTESCUE; SWINERD; STARK, 2011, p. 143 e 144).

2.3.4 Arquitetura de satélites

A fim de minimizar os impactos causados pela complexidade de um satélite, é comum

a sua divisão em diversos subsistemas, cada qual, desempenhando suas funções de forma

eficiente e eficaz. Esses subsistemas vão desde a estrutura mecânica do satélite até o

computador de bordo responsável por gerenciar todo o funcionamento do veículo espacial.

Tradicionalmente, um satélite é dividido em oito subsistemas, conforme é ilustrado na

Figura 15.

Figura 15. Subsistemas de um satélite artificial

Fonte: Vinci e Saotome (2009).

Normalmente, a troca de informações entre esses subsistemas se dá por meio do

barramento OBDH (On Board Data Handling) (visto na Figura 16), tendo como mestre o

Page 42: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

43

computador central embarcado – OBC (On Board Computer). Já os clientes do barramento

são os subsistemas, sendo que estes podem ter seu próprio computador e até um barramento

interno (CGEE, 2006, p. 33).

Figura 16. Arquitetura interna esquemática de um satélite

Fonte: Adaptado de CGEE (2006, p. 33).

CGEE (2006, p. 33) afirma que há uma configuração bastante comum de satélites em

que o subsistema de controle de atitude e órbita – OACS (Orbit and Attitude Control System)

constitui um subsistema separado do satélite, tendo assim um processador dedicado, o qual é

um cliente do barramento. O autor afirma, ainda, que há uma configuração alternativa em que

o software do OACS é um processo dedicado, hospedado no computador central. A Figura 17

apresenta o sistema do satélite universitário ITASAT (SHIBUYA et al., 2009) em que a

função de gestão de bordo ou manipulação de dados on board (OBDH) e o controle de atitude

e órbita (OACS) são unificadas no próprio computador central (OBC).

Page 43: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

44

Figura 17. Sistema OACDH – Controle de Órbita e Atitude + Processamento de Sinais

Fonte: Adaptado de CGEE (2006, p. 34).

O ITASAT foi desenvolvido pelo ITA (Instituto Tecnológico de Aeronáutica), dentro

do programa de satélites universitários fomentado pela AEB (Agência Espacial Brasileira) e

coordenado pelo INPE (Instituto Nacional de Pesquisas Espaciais). O ITASAT se enquadra na

categoria de micro satélites, a qual corresponde a satélites com massa entre 10 kg a 100 kg e

dimensões de 70 x 70 x 65 cm (SHIBUYA et al., 2009).

Os subsistemas de um satélite serão detalhados a seguir.

2.3.4.1 Estrutura

O subsistema estrutural é responsável por oferecer sustentação a todos os demais

subsistemas do satélite. O mesmo deve ser capaz de proteger os componentes internos contra

vibrações e choques mecânicos gerados durante a fase de lançamento e ainda por colisões de

meteoróides5 que podem ocorrer durante o percurso de sua órbita. De acordo com Fortescue,

Swinerd e Stark (2011, p. 276), estas colisões podem ocorrer a uma velocidade de 5 a 20

km/s, causando danos e perfurações na estrutura se esta não apresentar resistência suficiente.

5 “Meteoróides são objetos sólidos que se movem pelo espaço interplanetário. Possuem tamanho consideravelmente menor do que um asteróide e consideravelmente maior do que um átomo ou molécula.” (IMO, 2011). Ainda, segundo IMO (2011), o tamanho de um asteróide pode variar entre sub-km até cerca de 1000 km.

Page 44: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

45

A estrutura tem também um papel importante no controle térmico e no aterramento

elétrico do satélite. Segundo Fortescue, Swinerd e Stark (2011, p. 255), o sistema de controle

térmico pode necessitar que tubos de transferência de calor sejam instalados na estrutura, ou

ainda, que condutores grossos sejam adicionados para dissipar o calor de equipamentos de

alta potência. Além disso, segundo os mesmo autores, a estrutura pode precisar oferecer

aterramento elétrico para o circuito, além de oferecer compatibilidade eletromagnética – EMC

(Electromagnetic Compatibility – Compatibilidade Eletromagnética) a fim de prevenir

descargas eletrostáticas.

2.3.4.2 Gestão de bordo

Segundo Fortescue, Swinerd e Stark (2011, p. 441 e 442), a ênfase do subsistema de

gestão de bordo (OBDH) varia conforme o tipo de missão. Um satélite de comunicação típico

necessita apenas das funções básicas de telecomando e telemetria com a finalidade de manter

o bom funcionamento e o correto posicionamento do satélite. Já para outros tipos de missão, o

produto principal são os dados coletados pela carga útil, os quais são enviados para a Terra

pela telemetria. Desse modo, a carga de dados referentes à missão que o subsistema de gestão

de bordo precisa processar são maiores do que os dados do próprio satélite (housekeeping),

exigindo assim um sistema de gerenciamento de bordo mais complexo.

De acordo com Fortescue, Swinerd e Stark (2011, p. 442), as funções típicas do

subsistema de gestão de bordo são:

• Permitir o fluxo de dados científicos e dados do próprio satélite;

• Receber e distribuir comandos;

• Executar protocolos de telecomando e telemetria;

• Sincronizar as funções do satélite e time stamping das informações;

• Armazenar dados;

• Executar comandos e escalonamento;

• Controlar a carga útil e os subsistemas;

• Monitorar a temperatura do satélite;

• Tomar decisões de forma autônoma; e

Page 45: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

46

• Realizar compressão dos dados.

As arquiteturas clássicas de gestão de bordo são baseadas em um processador central

que se comunica com os outros subsistemas por meio de um barramento serial com alta

integridade de dados. A ESA (European Space Agency – Agência Espacial Européia) usa,

tipicamente, o padrão de comunicação ESA OBDH em seus satélites. Esse padrão oferece

uma largura de banda de 250 Kbps e possui linhas de requisição e resposta separadas

(FORTESCUE; SWINERD; STARK, 2011, p. 459).

Outro barramento que deve ser citado é o MIL-STD-1553B, utilizado no veículo de

lançamento Ariane. Trata-se de um barramento serial multiponto com largura de banda de 765

Kbps (FORTESCUE; SWINERD; STARK, 2011, p. 459).

Segundo Fortescue, Swinerd e Stark (2011, p. 462), os barramentos utilizados podem

ser do tipo multiponto ou ponto-a-ponto. Barramentos multiponto são utilizados em sistemas

nos quais um dispositivo mestre precisa se comunicar com vários escravos. Têm-se como

exemplos de barramentos desse tipo o ESA OBDH, o MIL STD 1553B e o CAN. Eles são

usados para comandar e coletar dados de telemetria de dispositivos inteligentes. Além disso,

eles são usados para coletar dados de instrumentos a até 1 Mbps. Interconexão ponto-a-ponto

é usada na comunicação direta entre dois dispositivos. Ela suporta uma largura de banda

maior do que os barramentos multiponto, podendo atingir de 10 Mbps a 1 Gbps. Tem-se como

exemplos de interconexão ponto-a-ponto o MIL-STD-1355, o ESA SpaceWire, o HotLinks e

o GigaLink.

2.3.4.3 Comunicação e Serviço

O subsistema de Comunicação e Serviço permite a troca de informações entre o

satélite e a estação terrestre de controle. Este subsistema também é conhecido como TT&C

(Tracking, Telemetry & Command – Rastreio, Telemetria e Comando) (INPE, 2011).

Através deste subsistema, o satélite recebe comandos enviados pela central de

operação do satélite (uplink) e envia dados referentes ao seu funcionamento para a central de

operação (downlink). Através desses dados, a equipe de operação pode analisar se a

orientação do satélite está correta ou se alguma falha ocorreu em algum subsistema, por

exemplo (INPE, 2011).

Page 46: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

47

2.3.4.4 Controle de Órbita e Atitude

A órbita é a trajetória percorrida pelo satélite, enquanto que a atitude é a orientação ou

apontamento do satélite (INPE, 2011).

Um satélite pode ter a sua órbita alterada por forças externas. Desse modo, o

subsistema em questão deve ser capaz de identificar tais alterações e oferecer mecanismos

capazes de pôr o satélite novamente em sua órbita. Além disso, também pode ser desejável

realizar uma alteração de órbita através de comandos enviados da Terra, tarefa que deve ser

executada pelo subsistema de controle de órbita e atitude (INPE, 2011).

Do mesmo modo que a órbita, a atitude também precisa ser monitorada e controlada

constantemente, a fim de manter a carga útil sempre apontada para o seu alvo. A atitude pode

ser monitorada por um ou mais tipos de sensores, tais como sensores de Terra, sensor de Sol,

sensor de trajetória estelar, sensores de rádio frequência e giroscópio. Já os atuadores,

normalmente são: (i) rodas de momento e de reação; (ii) bobinas magnéticas; e (iii)

propulsores (thrusters) (INPE, 2011).

2.3.4.5 Controle térmico

Segundo INPE (2011), no espaço, as principais fontes de calor são o Sol e a Terra. Lá

a temperatura pode variar de aproximadamente -100ºC (na sombra da Terra) a até 100ºC (na

exposição ao Sol).

De acordo com Fortescue, Swinerd e Stark (2011, p. 357), equipamentos eletrônicos

devem operar, tipicamente, na faixa de - 15ºC até 50ºC. Baterias recarregáveis precisam

permanecer com a temperatura entre 0ºC e 20ºC. Mecanismos como controlador dos painéis

solares, rodas de momento e giroscópios precisam operar entre 0ºC e 50ºC. Desse modo, o

objetivo do subsistema de controle térmico é garantir que os equipamentos embarcados

operem dentro dos limites de temperatura especificados.

2.3.4.6 Suprimento de energia

Segundo INPE (2011), o subsistema de suprimento de energia é responsável por gerar,

armazenar, condicionar e fornecer energia aos equipamentos do satélite.

Page 47: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

48

Ainda de acordo com INPE (2011), na maioria dos satélites, a geração se dá por meio

de painéis solares que transformam a energia do Sol em energia elétrica. A energia é então

condicionada e fornecida para os equipamentos do veículo espacial.

Parte da energia gerada é armazenada em baterias, cuja finalidade é manter um

estoque de energia para ser usada nos momentos em que o satélite não se encontra com seus

painéis apontados para o Sol, como na sombra da Terra, por exemplo (FORTESCUE;

SWINERD; STARK, 2011, p. 329).

2.3.4.7 Propulsão

Segundo INPE (2011), o subsistema de propulsão tem a função de manter a posição do

satélite após o seu lançamento no espaço. É composto por tanques, filtros, válvulas, motores e

propulsores. O propelente utilizado é hidrazina (N2H4), no caso de sistemas mono-propelente,

ou peróxido de azoto (N2O4) e mono-metil-hidrazina (CH3-NH-NH2), no caso de sistemas bi-

propelente.

Além dos sistemas mono-propelente e bi-propelente, existem outros citados por

Brown (2003, p. 161): gás frio ou cold-gas, motor sólido ou solid-motor e o dual-mode, que

combina os tipos mono-propelente e bi-propelente.

O subsistema de propulsão é comandado pelo subsistema de controle de atitude e

órbita.

2.3.4.8 Carga Útil

A carga útil engloba os equipamentos que são responsáveis para a execução da missão

do satélite. O tipo de carga útil depende do tipo de missão realizada pelo satélite. Alguns

satélites podem realizar mais de um tipo de missão.

Um exemplo são os satélites de comunicação, que transportam um repetidor composto

por antenas de recepção e emissão, um receptor, conversor de frequência e um amplificador

de potência INPE (2011).

Outro exemplo são os satélites de sensoriamento remoto que obtém informações

através de sensores óptico-eletrônicos, tais como câmeras de imageamento CCD (Charge

Coupled Device – Dispositivo de Carga Acoplada).

Page 48: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

49

2.4 RADIAÇÃO E CIRCUITOS INTEGRADOS

Segundo Lima (2006, p. 17), a radiação ionizante é capaz de provocar desde

problemas temporários no funcionamento até danos irreparáveis em circuitos eletrônicos

desprotegidos. No caso dos CIs (Circuito Integrados) em específico, as partículas incidentes

criam pares elétron-lacuna na região do silício atingida. Ainda, de acordo com a mesma

autora (LIMA, 2006, p. 17), existem três categorias básicas de efeitos de radiação a qual os

CIs estão vulneráveis: (i) Dano por Deslocamento (Displacement Damage - DD); (ii) Dose

Ionizante Total (Total Ionizing Dose – TID); e (iii) Efeitos de Evento Único (Single-Events

Effects – SEE). Tais eventos serão tratados a seguir.

2.4.1 Dano por Deslocamento

Segundo Velasco (2007 apud SANTOS, 2010, p. 21) e Nicklaw (2003 apud SANTOS,

2010, p. 21), acima de 1400 km de altitude, os dispositivos sofrem impactos de nêutrons,

causando o efeito de deslocamento.

NASA (2000, p. 23) afirma que dano por deslocamento ocorre em semicondutores

devido às interações de dispersão de partículas incidentes (tais como prótons, nêutrons e

elétrons de alta energia) com os átomos do semicondutor. Inicialmente, a colisão de partículas

desloca um átomo da malha cristalina. Esse átomo, por sua vez, pode vir a colidir com outros

átomos, provocando assim uma reação em cadeia.

A forma de medir o efeito de deslocamento se dá pelas perdas não ionizantes (Non

Ionizing Energy Loss – NIEL) em oposição às perdas ionizantes pelo efeito de dose ionizante

total (VELASCO, 2007; MA, 1989; NICKLAW, 2003 apud SANTOS, 2010, p. 21).

2.4.2 Dose Ionizante Total (TID)

Dose Ionizante Total (TID) é um tipo de falta permanente devido a uma exposição

prolongada do dispositivo à radiação. As partículas energizadas que incidem sobre a interface

silício/óxido causam um acúmulo de cargas elétricas estáticas no mesmo, levando o

dispositivo a sofrer um dano irreversível ao longo do tempo (HEIJMEN, 2002;

MESSENGER, 1992 apud LEITE, 2009, p. 18).

Segundo Lima (2006, p. 18), a TID cria pares elétron-lacuna (ou elétron-buraco) nas

camadas de dióxido de silício dos dispositivos semicondutores, conforme ilustra a Figura 18.

Page 49: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

50

Os elétrons são rapidamente drenados devido a sua alta mobilidade, enquanto que as lacunas

possuem menor mobilidade. Devido à baixa mobilidade das lacunas, algumas são

transportadas e aprisionadas no óxido. O efeito de um campo elétrico pode levar as lacunas

para a interface de óxido com o substrato. No final tem-se óxido com excesso de cargas

positivas e aprisionadas na estrutura.

Figura 18. Atuação da Dose Ionizante Total

Fonte: Lima (2006, p. 18).

A dose ionizante total é medida em rad (radiation absorved dose – dose absorvida de

radiação). Um rad equivale a 100 erg/grama do material e 100 rad equivale a 1 J/kg do

material (LIMA, 2006, p. 18).

2.4.3 Efeitos de Evento Único (SEE)

De acordo com Fortescue, Swinerd e Stark (2011, p. 43) e Tambara (2010, p. 21),

efeitos de evento único são efeitos gerados pela ação de uma única partícula, como um íon

Page 50: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

51

que colide com um circuito integrado liberando energia suficiente capaz de ocasionar um erro

no dispositivo.

Segundo Anelli (2000 apud TAMBARA, 2010, p. 21), a SEE pode produzir faltas

transitórias ou permanentes.

Falta transitória, ou soft error, é a ocorrência de um pulso transitório capaz de causar

um erro detectável na saída do circuito. O alvo da partícula incidente pode ser um circuito

combinacional ou um circuito sequencial. Normalmente, os soft errors que ocorrem em

circuitos combinacionais são chamados de Single-Event Transient (SET) e os que ocorrem em

circuitos sequenciais são chamados de Single-Event Upset (SEU) (TAMBARA, 2010, p. 21;

KASTENSMIDT, 2003, p. 26 e 27).

Um SET ocorre quando uma partícula atinge um bloco lógico combinacional e um

pulso transiente de corrente é gerado nesse circuito. Se o circuito lógico for rápido o

suficiente para propagar o pulso transiente gerado, então o SET aparecerá, finalmente, na

saída desse circuito (KASTENSMIDT, 2003, p. 27). O sinal da saída deste circuito, pode

ainda ser armazenado em um elemento de memória, conforme pode ser visto na Figura 19.

Figura 19. Propagação de um SET em um bloco combinacional

Fonte: Kastensmidt (2003, p. 27).

Um Single-Event Upset (SEU) ocorre quando uma partícula carregada atinge um

ponto sensível de uma célula de memória, como o dreno de um transistor em estado off. Ela

pode gerar um pulso de corrente transiente capaz de ligar o gate do transistor oposto e o efeito

pode produzir uma inversão no valor armazenado. Em cada um dos estados que uma célula de

memória pode armazenar (0 e 1), dois transistores estão em estado on e os outros dois estão

Page 51: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

52

em estado off (o dreno deste último é alvo do SEU) (KASTENSMIDT, 2003, p. 27). A Figura

20 ilustra uma célula de memória antes e após a colisão de uma partícula carregada.

Figura 20. Single Event Upset (SEU) em uma célula de memória SRAM

Fonte: Adaptado de Kastensmidt (2003, p. 27).

É importante ressaltar que, de acordo com Tambara (2010, p. 23), SEU é um dos

maiores problemas que os circuitos integrados de aplicação espacial podem sofrer devido à

radiação. Essa situação é agravada quando é usada uma tecnologia CMOS (Complementary

Metal Oxide Semiconductor – Semicondutor Metal-Óxido Complementar) de fabricação

submicrônica6.

As faltas permanentes, ou hard errors, danificam os circuitos integrados de forma

irreversível. Segundo Tambara (2010, p. 21). Elas dividem-se em:

• Single-Hard Error (SHE): Causa faltas permanentes nos dispositivos eletrônicos.

Um SHE ocorre em virtude de uma partícula energizada que atravessa a camada de

óxido do gate de um transistor, ocorrendo assim, um depósito de carga

suficientemente grande para induzir uma mudança na sua tensão de limiar. Isso

pode bloquear um bit em uma célula de memória, por exemplo;

• Single-Event Latchup (SEL): Os efeitos da radiação podem produzir correntes

espúrias capazes de levar um transistor a conduzir uma corrente com intensidade

6 Fabricação de circuitos integrados com tecnologia menor do que 1 micrometro (1 µm)

Page 52: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

53

além do seu limite. Desse modo, um SEL cria um curto-circuito entre os nodos

internos de um circuito, podendo assim, destruir o circuito devido ao aumento de

temperatura proporcionado pelo excesso de corrente;

• Single-Event Burnout (SEB): SEB ocorre em transistores bipolares e em NMOS

(N-type Metal Oxide Semiconductor – Semicondutor de Óxido Metálico do tipo N)

de alta potência na condição de corte e com uma alta tensão entre os seus terminais

dreno e fonte (NASA, 2000, p. 57); e

• Single-Event Gate Rupture (SEGR): É uma falta permanente no óxido do gate de

um MOSFET (Metal Oxide Semiconductor Field Effect Transistor – Transistor de

Efeito de Campo de Semicondutor de Óxido Metálico), podendo ocasionar a

formação de um caminho condutor.

2.5 TOLERÂNCIA A FALTAS

Segundo Sorin (2009, p. 1), um computador tolerante a faltas tem por objetivo

oferecer segurança (safety) e atividade (liveness), mesmo na ocorrência de faltas. Um

computador seguro deve ser capaz de tratar as faltas que ocorrem e nunca entregar um

resultado incorreto ao usuário. Além da segurança, é importante que o computador continue

ativo (liveness) mesmo com a ocorrência de faltas, do contrário, o mesmo não teria utilidade

alguma. Um computador desligado, por exemplo, é seguro, pois não produz resultados

incorretos, porém, não tem nenhuma utilidade, ou seja, não é liveness. Na prática, mesmo que

um computador não possa ser liveness em todas as situações em que ocorrem faltas, mas que

mantenha a segurança nestes casos, ainda continua sendo valioso, pois é preferível que o

computador pare o que está fazendo do que produzir um resultado incorreto.

2.5.1 Faltas, erros e defeitos

Faltas, erros e defeitos7 são conceitos diferentes entre si, embora estejam diretamente

relacionadas. Faltas estão associadas ao universo físico, erros ao universo da informação e

7 Embora alguns autores brasileiros utilizem o termo “falha” ao invés de “falta” neste trabalho será considerada a tradução da terminologia utilizada por Sorin (2009, p. 2), em que faults são faltas, errors são erros e failures são defeitos. Outros autores brasileiros também adotam essa mesma tradução.

Page 53: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

54

defeitos ao universo do usuário (WEBER, 2001, p. 4). Este relacionamento está ilustrado na

Figura 21.

Uma falta é um problema físico, como o rompimento de um fio ou um dano no óxido

do gate de um transistor. Uma falta pode manifestar um erro, tal como um bit que é um ao

invés de zero, ou ainda a falta pode ser mascarada e não manifestar nenhum erro. Do mesmo

modo, um erro pode ser mascarado ou pode produzir um defeito, ou seja, entregar um

resultado incorreto ao usuário (SORIN, 2009, p. 2).

Complementando a definição anterior, Weber (2001, p. 4) afirma que um defeito é um

desvio da especificação e não pode ser tolerado, porém, precisa ser evitado que o sistema o

apresente. Define-se que um sistema está em estado de erro se o processamento posterior a

partir desse estado pode levar a um defeito. Já uma falta é a causa física ou algorítmica do

erro.

Figura 21. Falta, Erro e Defeito

Fonte: Adaptado de Weber (2001, p. 4).

Faltas são inevitáveis. Componentes físicos envelhecem e sofrem com interferências

externas, tanto ambientais quanto humanas. As principais causas de faltas são problemas de

especificação, problemas de implementação, componentes defeituosos, imperfeições de

fabricação, fadiga dos componentes físicos e fenômenos externos, tais como radiação,

interferência eletromagnética e variações ambientais (pressão, temperatura, umidade)

(WEBER, 2001, p. 5).

Page 54: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

55

2.5.2 Duração das faltas e erros

Segundo Sorin (2009, p. 3), os erros e faltas podem ser transientes, permanentes ou

intermitentes.

• Transiente: É uma falta que ocorre uma única vez. Esse tipo de falta costuma gerar

erros do tipo soft error ou single-event upset;

• Permanente: É uma falta que ocorre uma vez em algum ponto do circuito e esta

permanece até que o circuito seja reparado. Pode, inclusive, ocorrer durante o

processo de fabricação do componente. Uma falta desse tipo, normalmente, se

manifesta como um erro repetitivo e contínuo; e

• Intermitente: Uma falta que ocorre repetidamente, mas não continuamente em

algum ponto do circuito. Diferentemente das faltas permanentes, este tipo de falta

produz erros repetitivos, porém, não contínuos.

2.5.3 Técnicas de tolerância a faltas

Segundo Weber (2001, p. 8 e 9), a classificação mais comum de técnicas de tolerância

a faltas é baseada em 4 fases: (i) detecção de erros; (ii) confinamento e avaliação; (iii)

recuperação de erros; e (iv) tratamento da falta.

A detecção de erros consiste em aplicar um mecanismo capaz de detectar a

manifestação de uma falta no sistema. Uma falta pode permanecer latente em um sistema por

tempo indeterminado, não podendo ser detectada durante esse período, ou seja, antes de sua

manifestação como erro (WEBER, 2001, p. 9).

Após a ocorrência de uma falta até o erro ser detectado, vários dados inválidos podem

ter sido espalhados pelo sistema. A fase de confinamento e avaliação estabelece limites para a

propagação desses erros, sendo determinada durante o projeto do sistema (WEBER, 2001, p.

9).

A fase de recuperação de erros ocorre após um erro ser detectado, envolvendo a troca

do estado atual incorreto para um estado correto. Pode ser aplicada a técnica de recuperação

por retorno ou de recuperação por avanço. A técnica de recuperação por retorno, consiste em

retroceder o sistema a um estado anterior e livre de faltas. Já a técnica de recuperação por

avanço, consiste em avançar o sistema para um estado livre de falta. Em sistema de tempo

Page 55: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

56

real, deve ser usada a técnica de recuperação por avanço, pois a recuperação por retrocesso é

inadequada em tais aplicações (WEBER, 2001, p. 10).

A fase de tratamento da falta consiste em localizar a origem do erro (falta), localizar a

falta de forma precisa, reparar a falta e recuperar o restante do sistema (WEBER, 2001, p. 10).

2.5.4 Mascaramento

De acordo com Weber (2001, p. 8), mesmo com a presença de faltas, o mascaramento

garante respostas corretas do sistema, pois a falta é mascarada na origem e não se manifesta

como erro, evitando assim, que o sistema entre em um estado errôneo. Dessa forma, os erros

não precisam ser detectados, confinados e recuperados. Contudo, localização e reparo de

faltas ainda são necessários em casos de faltas permanentes. A autora afirma ainda que,

geralmente, esta classe emprega mais redundância que a técnica de classificação em 4 fases

(vista anteriormente), já que não gasta tempo com tarefas de detecção, localização e

reconfiguração, sendo desta forma, a preferida para sistemas de tempo real.

Segundo Sorin (2009, p. 2), faltas podem não tornar-se erros e erros podem não tornar-

se defeitos. Desse modo, pode-se constatar que o mascaramento ocorre em diversos níveis. Os

tipos de mascaramentos são:

• Mascaramento lógico: O efeito de um erro pode ser logicamente mascarado. Por

exemplo, se uma de duas entradas de uma porta AND tem um valor lógico

incorreto em um e a outra entrada for zero, o erro não se propaga no circuito,

portanto, não gera nenhum defeito;

• Mascaramento arquitetural: Um erro pode não surtir efeito no estado arquitetural.

Desse modo, nenhum defeito será gerado. Por exemplo, um erro no operando que

endereça o registrador de destino de uma instrução NOP não terá nenhum impacto

arquitetural, pois esta instrução, mesmo na ausência do erro, não provoca qualquer

mudança no estado do processador; e

• Mascaramento de aplicação: Mesmo que um erro afete o estado arquitetural,

produzindo assim, um defeito para o usuário, o defeito pode nunca ser observado

pelo software aplicativo que está sendo executado. Por exemplo, um erro que

muda o valor em um endereço da memória é visível ao usuário, entretanto, se a

Page 56: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

57

aplicação nunca acessar esse endereço, ou ainda, se a aplicação sobrescrever esse

endereço de memória antes de lê-lo, o defeito será mascarado.

Segundo Weber (2001, p. 11), o mascaramento de faltas divide-se em: (i) redundância

de hardware (replicação de componentes); (ii) codificação ECC (Error Correcting Codes -

Código de Correção de Erros); (iii) diversidade e programação diversitária; e (iv) blocos de

recuperação.

2.5.5 Redundância

De acordo com Weber (2001, p. 11), os tipos de redundância podem ser divididas nas

seguintes classes: (i) redundância de hardware; (ii) redundância de software; (iii) redundância

de informação; e (iv) redundância de tempo. Este trabalho trata, exclusivamente, da

redundância de hardware, a qual faz parte do escopo do trabalho.

A redundância de hardware (também chamada de redundância física ou espacial) se dá

através da replicação de componentes, podendo ser passiva, ativa ou híbrida, conforme Tabela

2.

Tabela 2. Redundância de hardware

Redundância de hardware Técnicas Vantagens Passiva ou estática Mascaramento de faltas Não requer ação do sistema,

não indica falta Ativa ou dinâmica Detecção, localização e

recuperação Substituições de módulos, usada em aplicações de longa vida

Híbrida Combinação de ativa e passiva

Usada para garantir mascaramento e longa vida; geralmente de alto custo

Fonte: Adaptado de Weber (2001, p. 12).

2.5.5.1 Redundância Passiva ou Estática

Na redundância passiva, o objetivo dos componentes redundantes é mascarar as faltas.

A mesma tarefa é executa por todos os elementos e o resultado é determinado por votação.

Alguns exemplos de redundância passiva são DMR (Dual Modular Redundancy –

Redundância Modular Dupla), TMR (Triple Modular Redundancy – Redundância Modular

Page 57: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

58

Tripla) e a redundância modular múltipla (NMR – N Modular Redundancy) (SORIN, 2009, p.

19 e 20; WEBER, 2001, p. 12).

DMR é a forma mais simples de redundância física, consistindo de um comparador,

além do hardware replicado. Tem a característica de prover excelente detecção de erros, já

que é capaz de detectar todos os erros, com exceção de erros causados por bugs de projeto,

erros no comparador e quando acontece o mesmo erro nos dois módulos redundantes, o que é

improvável de acontecer (SORIN, 2009, p. 19). Entretanto, Sorin (2009, p. 62) afirma que

com apenas duas réplicas é impossível fazer a correção de erros, já que não se sabe em qual

das duas está o erro. O esquema de DMR pode ser visto na Figura 22.

Figura 22. Redundância Modular Dupla (DMR)

Fonte: Adaptado de Sorin (2009, p. 20).

Na redundância modular tripla (TMR), usam-se três módulos redundantes e um

votador com a função de escolher uma das três saídas. De acordo com Weber (2001, p. 12), a

votação pode ser por maioria (2 em 1) ou por seleção de valor médio.

Figura 23. Redundância Modular Tripla (TMR)

Fonte: Adaptado de Sorin (2009, p. 20) e Weber (2001, p. 12).

Page 58: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

59

A detecção de erro do TMR é comparável ao do DMR. A vantagem é que o TMR

oferece diagnóstico de faltas (o módulo votado é o culpado pela falta) e recuperação de erros

(o sistema continua funcionando na presença do erro) nos casos de erros únicos (SORIN,

2009, p. 20).

Segundo Weber (2001, p. 13), o votador não tem a função de determinar qual o

módulo de hardware discorda da maioria, devendo isto ser realizado por um detector de faltas,

caso seja necessário. É importante notar também que, pelo fato do votador estar em série com

os módulos de hardware e ter a responsabilidade de fornecer o resultado, ele é considerado o

ponto crítico de faltas, devendo, portanto, apresentar alta confiabilidade. Algumas soluções

apresentadas por Weber (2001, p. 13) para aumentar a confiabilidade do votador são:

• Construir o votador com componentes de alta confiabilidade;

• Triplicar o votador; e

• Realizar a votação por software.

A Figura 24 apresenta um esquema TMR com votador triplicado. Cada uma das três

saídas (resultado) podem ser levados aos próximos três módulos de hardware do sistema.

Figura 24. TMR com votador triplicado

Fonte: Weber (2001, p. 13).

Weber (2001, p. 13) afirma que a confiabilidade de um TMR é maior do que a de um

sistema com um único componente. Porém, após a primeira falta permanente ocorrer, o

sistema perde a capacidade de mascarar faltas e passa a apresentar uma confiabilidade menor

Page 59: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

60

que um sistema de um único componente. Com o aumento da probabilidade dos componentes

falharem com o passar do tempo, a TMR passa a apresentar uma confiabilidade pior do que

um sistema não redundante. Weber (2001, p. 13) ainda conclui que o TMR é ideal para

períodos não muito longos de missão, pois suporta uma falta permanente apenas e, por isso, é

ideal para faltas transitórias, desde que ocorra uma de cada vez. A Figura 25 apresenta a curva

de confiabilidade de um TMR.

Figura 25. Confiabilidade de TMR

Fonte: Weber (2001, p. 14).

A redundância modular múltipla (NMR) é um sistema com n módulos redundantes,

sendo assim, uma generalização do TMR. Segundo Sorin (2009, p. 20), o NMR possui melhor

cobertura de detecção de erros, diagnósticos e recuperação de erros do que o TMR.

Segundo Pessotta (1999, p. XX), devido ao aumento significativo no volume, massa e

consumo de energia, a redundância passiva (ou estática) não costuma ser empregada em

satélites.

2.5.5.2 Redundância Ativa ou Dinâmica

A redundância ativa faz uso das técnicas de detecção, localização e recuperação.

Diferentemente da redundância passiva, a redundância ativa não provê mascaramento

(WEBER, 2001, p. 14).

Page 60: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

61

Pessotta (1999, p. XX) afirma que a redundância ativa usa o conceito de

reconfiguração para tolerar faltas, sendo que a reconfiguração é implementada através de uma

combinação de hardware e software em três fases:

• Detecção de um erro;

• Localização da falta e verificação da estrutura de dados corrompida; e

• Reconfiguração do sistema e recuperação da estrutura de dados.

De acordo com Weber (2001, p. 14), na redundância ativa é gasto um tempo entre a

detecção do erro e a recuperação para um estado livre de falta. Por esse motivo, este tipo de

redundância é usado em aplicações que suportem permanecer em um estado errôneo durante

um curto período de tempo. Um exemplo de aplicação da redundância dinâmica, segundo

Pessotta (1999, p. XX), é em satélites, pois, em geral, a ocorrência de um defeito temporário,

de modo esporádico, não chega a ser catastrófico.

Um exemplo de implementação de redundância dinâmica é através de módulos estepe

(standby sparing), os quais podem ser operados das seguintes formas (WEBER, 2001, p. 14):

• Alimentados (hot standby): Módulo estepe conectado eletricamente ao sistema.

Minimiza a descontinuidade do processamento durante o chaveamento entre os

módulos; e

• Não alimentados (cold standby): Módulo estepe só começa a operar quando

conectado. Aumenta a vida útil dos módulos estepe.

A Figura 26 mostra o diagrama de estado da operação básica de um sistema tolerante a

faltas usando redundância dinâmica. O funcionamento é conforme descrito por Pessotta

(1999, p. XXI): Após o período de latência da falta, será produzido um erro que pode ou não

ser detectado. Se após o período de latência do erro, este não for detectado o sistema

apresentará um defeito. Se o erro for detectado, a sua causa (a falta) deve ser localizada e,

sendo uma falta permanente, o componente defeituoso retirado de operação. A seguir, se

houver um componente reserva disponível, este deve ser posto em operação no lugar do

componente defeituoso e o sistema levado a um estado operacional. O novo estado

operacional pode ser idêntico ao estado operacional inicial do sistema ou pode ser um estado

degradado de operação.

Page 61: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

62

Figura 26. Operação básica de um sistema com redundância dinâmica

Fonte: Pessotta (1999, p. XXI).

As técnicas de redundância dinâmica citadas por Pessotta (1999, p. XXII e XXIII) são:

• Duplicação reconfigurável: Esta técnica consiste em usar duas réplicas do

hardware, sendo que cada um deve realizar o mesmo processamento em paralelo e

comparar os resultados obtidos por cada uma. A forma mais simples desta técnica

é usada apenas para detectar faltas. Para tolerar as faltas, torna-se necessário o uso

de um mecanismo capaz de identificar em qual das réplicas está à falta, de modo

que a mesma possa ser desconectada do sistema e a comparação dos resultados

desabilitada;

• Réplicas reservas redundantes: Esta técnica consiste na utilização de duas ou mais

réplicas de cada módulo, sendo que um deles é mantido operacional, enquanto que

os demais ficam como reservas. Quando uma falta é detectada e localizada, o

módulo primário é substituído por um dos reservas. Diversos mecanismos podem

ser usados para localizar e detectar faltas, tais como programas de diagnóstico,

técnicas de auto-verificação, cão de guarda e árbitro externo; e

• Degradação progressiva: Nas duas técnicas apresentadas acima, as redundâncias

são usadas para detecção e correção de erros e/ou para substituir réplicas, não

tendo, portanto, nenhum papel no processamento até que venha a ser usada em

uma substituição. Na técnica em questão, as redundâncias são usadas como parte

Page 62: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

63

dos recursos normais do sistema durante todo o tempo com o propósito de permitir

que o desempenho se degrade progressivamente enquanto as faltas são

compensadas.

2.6 POSSÍVEIS APLICAÇÕES DO LIN EM SATÉLITES

O conteúdo desta subseção tem como referência principal a dissertação de Beekema

(2011) que tem o propósito de especificar e desenvolver uma rede de sensores wireless para

aplicações espaciais, tendo como foco, satélites de pequeno a médio porte.

O monitoramento de temperatura, status e comportamento de um satélite e de seus

subsistemas é um aspecto importante durante a missão do satélite. Muitos sensores são usados

para monitorar a temperatura no espaço, podendo ter um total de até 400 sensores para uma

missão de classe média. Alguns tipos de sensores utilizados são: (i) termistores para medir

temperatura; (ii) acelerômetros para controle de atitude e medição de lançamento; e (iii)

sensores de radiação para monitorar as partículas no ambiente (BEEKEMA, 2011, p. 9).

Os sensores de um satélite dividem-se basicamente em instrumentos de missão

específica e sensores de housekeeping8 (os quais provêem informações a respeito do estado do

satélite).

Os instrumentos de missão específica, geralmente, produzem uma grande quantidade

de informação, necessitando assim de uma grande largura de banda para transportar os dados,

excluindo assim, a possibilidade de adotar o LIN para esta categoria. Além disso, esses

sensores podem possuir protocolos proprietários específicos. Têm-se como exemplos de

sensores desta categoria as câmeras usadas em missões de observação da Terra.

Os sensores de housekeeping são usados para monitorar a saúde do satélite e também

as condições de vôo. Têm-se como exemplos os sensores de temperatura, sensores de tensão

da bateria e sensores usados no controle de atitude tais como sensores de sol, magnetômetros,

etc. Nessa categoria, se encontram os possíveis sensores que podem ser atendidos pelo LIN.

8 Não foi possível identificar um termo adequado na língua portuguesa para a palavra housekeeping no contexto dos satélites artificiais. Por isso, ao longo do texto, utiliza-se seu original na língua inglesa.

Page 63: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

64

A Figura 27 apresenta a estrutura de sensores housekeeping do satélite ACE

(Advanced Composition Explorer).

Figura 27. Exemplo de estrutura housekeeping do satélite ACE

Fonte: Beekema (2011, p. 11).

Vários interruptores são monitorados pelo computador on-board e servem para indicar

possíveis problemas que podem ocorrer. Outros sensores são localizados próximos a

instrumentos com o objetivo de verificar o estado de operação deles. Um exemplo são os

sensores de temperatura localizados próximo a sensores de sol.

Técnicas de compressão de dados normalmente são adotadas com a finalidade de

reduzir a quantidade de informação a ser enviada pelo sensor.

A Figura 28 ilustra um exemplo de arquitetura utilizada em um mini-satélite com

múltiplos subsistemas tendo housekeeping, sendo todos interconectados através de um

barramento. O backbone da arquitetura consiste no barramento CAN com redundância dupla.

Todos os instrumentos compartilham o mesmo barramento de dados. Além disso, cada

módulo tem suas próprias características de dados housekeeping, normalmente, somente uma

Page 64: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

65

pequena porcentagem de dados de instrumentos de carga atual fazem parte da missão Imager

for Magnetopause-to-Aurora Global Exploration (IMAGE), conforme mostra a figura a

Figura 28.

Figura 28. Visão geral da arquitetura de rede do satélite HummerSat-1

Fonte: Beekema (2011, p. 16).

Dados os exemplos apresentados, considera-se, por hipótese, que o LIN possa ser

utilizado como rede (principal ou sub-rede) em um sistema de housekeeping. Porém, é preciso

verificar potenciais problemas decorrentes da hostilidade do ambiente espacial e soluções

arquiteturais para evitar ou minimizar esses problemas. O próximo capítulo apresenta o

planejamento da pesquisa a ser realizada na segunda parte deste TTC com o objetivo de

avaliar a aplicabilidade do LIN em satélites artificiais.

Page 65: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

66

3 DESENVOLVIMENTO

Este Trabalho Técnico-científico de Conclusão de Curso teve por objetivo avaliar a

aplicabilidade do protocolo de comunicação LIN para uso na interconexão de sistemas

computacionais aeroespaciais. Em particular, conforme discutido no Capítulo 1, buscou-se

responder a duas perguntas de pesquisa:

• O protocolo LIN pode ser utilizado em satélites artificiais?

• Quais modificações devem ser feitas no protocolo LIN para atender aos requisitos

de satélites artificiais?

Para tal, foram feitos estudos com o objetivo de construir uma base de conceitos para a

realização dos experimentos propostos, conforme reportado no capítulo anterior. Desses

estudos, algumas conclusões foram obtidas:

• Os barramentos de comunicação utilizados em sistemas computacionais de

satélites artificiais aplicam redundância para prover tolerância a faltas

permanentes;

• Faltas transitórias são, em geral, tratadas via software (ex. verificação de CRC

(Cyclic Redundancy Check – Verificação de Redundância Cíclica) );

• Em satélites, a tolerância a faltas permanentes é geralmente provida utilizando-se

redundância ativa (ou dinâmica) a fim de evitar um aumento significativo no

volume, massa e consumo de energia, além de não comprometer a confiabilidade

do sistema durante a missão do satélite; e

• Os sistemas de housekeeping são os principais candidatos para aplicação do LIN,

dado que a largura de banda dos sensores é compatível com a capacidade do

barramento LIN.

3.1 ARQUITETURA DESENVOLVIDA

Com base nas conclusões listadas acima, desenvolveu-se uma arquitetura de rede LIN

com redundância ativa do tipo cold standby, cuja camada física pode ser vista na Figura 29,

de forma simplificada.

Page 66: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

67

Figura 29. Camada física da arquitetura proposta

O barramento LIN A é o barramento primário por onde ocorre a comunicação entre os

nodos. Na presença de uma falta nesse barramento, o mestre comuta para o barramento LIN B

e todos os escravos fazem o mesmo. Para isso, foi implementado, em software, um gestor de

redundância em cada nodo. O gestor do mestre envia mensagens periódicas através do

barramento ativo a todos os escravos e estes, por sua vez, enviam uma mensagem de resposta

ao mestre confirmando que a mensagem foi recebida com sucesso.

Foi projetado um protótipo de um sistema baseado na arquitetura acima utilizando kits

de desenvolvimento já disponíveis no Laboratório de Sistemas Embarcados e Distribuídos,

como, por exemplo, o kit DEMO9S12XEP100 da Freescale, mostrado na Figura 30, o qual

inclui um microcontrolador e um barramento LIN (além de um barramento CAN). Além

desse kit, o laboratório dispõe de outros kits de desenvolvimento baseados em

microcontroladores e em FPGA (neste caso, para uso da implementação do LIN no

processador NIOS II realizada em um trabalho anterior do laboratório). Além desses, foi

realizado o projeto de três placas para implementar os módulos escravos do sistema.

Page 67: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

68

Figura 30. Kit DEMO9S12XEP100 da Freescale

3.2 PROJETO

A fim de avaliar a arquitetura proposta na Figura 29, foi realizado o projeto de um

sistema baseado no protocolo LIN. Para tal, escolheu-se adaptar o sistema AstroFácil que

consiste em um computador embarcado para automatização da operação de telescópios de

pequeno porte projetado por Marcos Roberto Silva em sua monografia de conclusão do Curso

de Bacharelado em Ciência da Computação (SILVA, 2003) e posteriormente implementado

no âmbito de um projeto de pesquisa (SILVA et al., 2006). A arquitetura original do

AstroFácil é ilustrada na Figura 31 e descrita logo a seguir.

Figura 31. Arquitetura original do AstroFácil

Fonte: Silva et al (2006).

Page 68: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

69

O sistema é constituído de um manete (um tipo de console portátil), cuja função,

segundo Silva et al. (2006), é automatizar as operações de localização e acompanhamento de

um astro por um telescópio, e de um circuito de controle auxiliar que tem a função de

controlar dois motores de passo responsáveis por movimentar o telescópio. Conforme pode

ser visto na Figura 31, o manete é composto de um microcontrolador mestre (PIC18F452 da

Microchip), um teclado (com 15 teclas), um display do tipo LCD (Liquid Cristal Display –

Display de Cristal Líquido) 16x4, um banco de memória EEPROM (Electrically Erasable

Programmable Read-Only Memory – Memória Somente para Leitura Apagável e

Programável Eletricamente) para o armazenamento de dados astronômicos e um RTC (Real

Time Clock - Relógio de Tempo Real). Já o Circuito de Controle Auxiliar é composto de um

microcontrolador escravo (PIC16F628) e de drivers para o acionamento de dois motores de

passo. A comunicação entre os dois microcontroladores ocorre por meio um uma interface

serial do tipo RS 232.

O objetivo nesta pesquisa foi desmembrar o teclado e o display do mestre e distribuí-

los em módulos escravos do barramento LIN. O controlador dos motores, apesar de já estar

separado do mestre no projeto original, realiza a comunicação com o mestre por meio de uma

interface serial RS232, devendo, portanto, ser modificado para o protocolo LIN. A arquitetura

do AstroFácil utilizando o LIN está ilustrada na Figura 32. Com base na arquitetura proposta,

o mestre do AstroFácil (e também do barramento) se comunica com os escravos (Teclado,

Display e Motor) por meio de um barramento principal (LIN A) e, em caso de falha nesse, o

barramento secundário (LIN B) é selecionado. É importante notar também que a EEPROM e

o RTC estão conectados diretamente ao mestre por meio do protocolo I2C (Inter-Integrated

Circuit – Circuito Inter-Integrado).

Page 69: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

70

Figura 32. Arquitetura do AstroFácil com LIN adaptado

No entanto, pretendeu-se avaliar o comportamento do LIN na ocorrência de faltas

transitórias. Para isso, foi inserido no circuito um módulo sabotador (que será explicado mais

adiante) com a finalidade de injetar faltas no barramento, emulando assim as interferências

geradas pelo ambiente espacial. A arquitetura final do sistema (com o uso do sabotador) é

ilustrada na Figura 33.

LIN A

LIN B

RTCEEPROM

PHY B

Mestre

PHY A

Teclado

Matricial

4x4LCD 16x4

Escravo 1

Teclado

PHY A PHY B

Escravo 3

Motor

PHY A PHY B

Escravo 2

Display

PHY A PHY B

M1 M2

I2C

Sabotador

PHY A

PHY A

PHY A

Inver

sor

Figura 33. Arquitetura Final do AstroFácil com LIN adaptado + sabotador

Page 70: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

71

Além das faltas transitórias, foi preciso testar também o comportamento do LIN na

ocorrência de faltas permanentes no barramento principal. Para isso, um gestor de

redundância (que será tratado mais adiante) foi implementado na camada de aplicação de cada

módulo. É importante ressaltar que o firmware do AstroFácil foi desenvolvido utilizando a

ferramenta de desenvolvimento PIC C Compiler, ferramenta esta que também foi usada neste

trabalho para adaptar o LIN ao projeto AstroFácil, pois já existe uma biblioteca que

implementa a camada de enlace do LIN. No entanto, a camada de transporte não é

implementada nessa biblioteca, por isso, optou-se por implementar o gestor de redundância na

camada de aplicação.

3.2.1 Mestre

O módulo mestre foi implementado com o uso do Kit de desenvolvimento PICDEM

CAN-LIN 3 da Microchip (MICROCHIP, 2003), o qual é formado por três

microcontroladores e oferece interfaces seriais LIN e CAN, além de uma pequena área para

prototipação de circuitos que foi útil para a montagem do banco de memórias EEPROM,

RTC e do PHY secundário do LIN. A Figura 34 ilustra o kit em questão.

Figura 34. Kit PICDEM CAN-LIN 3 da Microchip

A camada de aplicação inclui o código de processamento central do AstroFácil, o qual

é responsável por gerenciar todo o funcionamento do sistema. Além disso, a camada de

aplicação também inclui o código do gestor de redundância, conforme descrito a seguir.

Page 71: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

72

Gestor de Redundância

O gestor de redundância monitora e gerencia o uso dos barramentos principal e

secundário (que fica em standby) quanto à ocorrência de faltas permanentes no barramento

principal. A cada 3 segundos, o gestor de redundância do mestre envia uma mensagem de

requisição com um campo identificador específico a cada escravo do barramento. Neste

projeto, escolheu-se o ID (seis primeiros bits do campo PID) 0x00 para o módulo escravo do

teclado, o 0x04 para o módulo escravo do display e o 0x08 para o módulo escravo dos

motores. O campo Dado1 envia o valor 0x00. Cada escravo então, ao receber a mensagem,

deve responder ao mestre com o valor 0x0F no Dado1. Caso o mestre não receba a resposta

de algum escravo por duas vezes consecutivas, ele efetua a troca de barramento, desligando o

barramento principal e ligando o secundário, por meio do qual passarão a ser enviadas as

mensagens. O gestor de redundância dos escravos, ao identificar que, por um período maior

de 6 segundos não recebe a mensagem do gestor de redundância do mestre, efetua a troca para

o barramento secundário.

3.2.2 Escravos

Os escravos (teclado, display e controle dos motores) foram projetados para serem

implementados em três placas separadas, assim denominadas: Placa Slave Keyboard, Placa

Slave Display e Placa Slave Motor Control, as quais são descritas a seguir. O projeto delas foi

realizado por meio da ferramenta Eagle versão 5.11.0.

Módulo Escravo Teclado - Placa Slave Keyboard

O módulo escravo para varredura do teclado foi implementado como uma placa

denominada Slave Keyboard. Esta placa é responsável por monitorar o conjunto de teclas e

enviar informações de teclas pressionadas ao mestre, quando este solicitar. Esta placa consiste

de um microcontrolador PIC18F1320, um teclado matricial de 16 teclas, dois PHYs

(MCP201) para implementação de LIN redundante, além de um buzzer, um potenciômetro,

dois conectores de expansão e um conector para gravação do microcontrolador. O diagrama

esquemático, a visualização 3D da placa, o leiaute do lado dos componentes e o leiaute do

lado da soldagem são ilustrados nas Figura 35, Figura 36, Figura 37 e Figura 38,

respectivamente. Alguns componentes utilizados no projeto não estavam presentes na

biblioteca da ferramenta utilizada para a geração da imagem 3D. Por esse motivo, tais

componentes não foram gerados na imagem 3D, conforme pode ser observado na Figura 36.

Page 72: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

73

Figura 35. Diagrama esquemático do Slave Keyboard

Figura 36. Visualização 3D da placa Slave Keyboard

Page 73: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

74

Figura 37. Leiaute da PCI do Slave Keyboard vista do lado dos componentes

Figura 38. Leiaute da PCI do Slave Keyboard vista do lado da solda

Page 74: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

75

Módulo Escravo Display - Placa Slave Display

Este módulo foi implementado como uma placa que é responsável por mostrar ao

usuário, por intermédio de um LCD 16x4, as informações recebidas do mestre. Assim como a

placa Slave Keyboard, a placa Slave Display é formada por um microcontrolador

PIC18F1320 e dois PHYs redundantes. Ela também possui um conector de expansão

conectado a três pinos do microcontrolador para uso de propósito geral. O diagrama

esquemático, visualização 3D, leiaute do lado dos componentes e leiaute do lado da soldagem

são ilustrados nas Figura 39, Figura 40, Figura 41 e Figura 42, respectivamente.

Figura 39. Diagrama esquemático da PCI Slave display

Page 75: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

76

Figura 40. Visualização 3D da placa Slave Display

Figura 41. Leiaute da PCI do Slave Display vista do lado dos componentes

Page 76: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

77

Figura 42. Leiaute da PCI do Slave Display vista do lado da solda

Módulo Escravo Controle dos Motores - Placa Slave Motor Control

O módulo escravo para o controle dos motores foi implementado como uma placa que

é responsável por receber informações do mestre e controlar dois motores de passo, cuja

finalidade é a de realizar a movimentação do telescópio. O microcontrolador utilizado é o

mesmo das outras duas placas citadas anteriormente. O barramento LIN também usa dois

PHYs redundantes e há um conector de expansão conectado a dois pinos do microcontrolador

para uso de propósito geral. O controle de cada um dos motores é realizado por meio de

quatro transistores Darlington TIP122. O diagrama esquemático, visualização 3D, leiaute do

lado dos componentes e leiaute do lado da soldagem são ilustrados nas Figura 43, Figura 44,

Figura 45 e Figura 46, respectivamente.

Page 77: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

78

Figura 43. Diagrama esquemático da PCI Slave Motor Control

Figura 44. Visualização 3D da placa Slave Motor Control

Page 78: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

79

Figura 45. Leiaute da PCI do Slave Motor Control vista do lado dos componentes

Figura 46. Leiaute da PCI do Slave Motor Control vista do lado da solda

Page 79: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

80

3.2.3 Módulo Sabotador

Ainda, com a finalidade de testar a capacidade do LIN em atender aos requisitos de

confiabilidade em relação à faltas transitórias, um módulo sabotador foi implementado usando

o kit DEMO9S12XEP100 da Freescale. O sabotador inverte, periodicamente, um bit do

campo de dados do LIN primário por meio de um módulo inversor que é inserido no meio do

barramento e controlado pelo sistema do sabotador, conforme ilustra a Figura 47. Quando a

entrada de controle da porta (conectada na saída do microcontrolador) está no nível 1 lógico,

o sinal do barramento é invertido.

Figura 47. Conexão elétrica do sabotador ao barramento

O sabotador funciona como um módulo escravo do LIN, porém não responde às

mensagens do mestre. Ele verifica os quadros enviados pelo mestre e, então, realiza os

seguintes passos:

1. Detecta o Campo de break do quadro do LIN;

2. Verifica se já passaram 10 quadros pelo barramento desde a última sabotagem. Se

Não, retorna ao passo 1;

3. Habilita o modo de captura de entrada do Enhanced Capture Timer (ECT)9;

9 Enhanced Capture Timer é um módulo temporizador melhorado oferecido pelo microcontrolador MC9S12XEP100 usado no kit da Freescale. Ele permite que seja capturado o tempo de um evento externo (como o tempo de duração de um bit, por exemplo) através de um canal de entrada, além de sua função básica e outras mais avançadas.

Page 80: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

81

4. Detecta duas bordas consecutivas (um bit) do campo de sincronismo;

5. Determina o tempo de bit por meio do bit detectado;

6. Detecta início do campo de dados (Dado1); e

7. Sabota um bit do campo Dado1 por meio de uma porta inversora ou lógica XOR.

O modo de atuação do sabotador sobre o quadro transferido pelo LIN é ilustrado na

Figura 48. O procedimento de sabotagem ocorre a cada 10 quadros transferidos pelo LIN,

portanto, a representação da figura é válida somente para os quadros a serem sabotados.

Primeiramente, o sabotador identifica o campo de break do LIN a fim de habilitar o modo de

captura de entrada do Enhanced Capture Timer. Com o modo de captura de entrada

habilitado, o módulo timer determina então o tempo de duração entre duas bordas

consecutivas que ocorrem no campo de sincronismo. A determinação desse tempo é

importante para que o sabotador “saiba” o momento certo de acionar o inversor a partir do

Stop Bit do campo Dado1 e o tempo que a inversão deve durar.

Figura 48. Funcionamento do sabotador

Com o uso do sabotador, pretende-se testar a capacidade do LIN em verificar e

sinalizar erros de transferência de dados por meio do CRC.

Page 81: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

82

3.3 IMPLEMENTAÇÃO E EXPERIMENTAÇÃO

Esta seção trata da implementação e dos experimentos referentes ao projeto. É

importante ressaltar que o projeto das placas de circuito impresso foi realizado neste TTC e

encaminhado para a confecção em uma fábrica com o uso de recursos financeiros do

programa Uniespaço destinados ao projeto. As placas foram confeccionadas e recebidas,

porém, os componentes não entregue para montagem dos protótipos no prazo de entrega deste

relatório.

3.3.1 Sabotador

O módulo Sabotador foi implementado com o uso do kit DEMO9S12XEP100 da

Freescale, juntamente com a IDE (Integrated Development Environment - Ambiente

Integrado de Desenvolvimento) CodeWarrior que acompanha o kit. A linguagem de

programação utilizada é a C.

A Figura 49 tem o objetivo de ilustrar os principais sinais do sabotador e a interface de

entrada e saída do módulo, sendo que, durante o desenvolvimento do diagrama não houve a

intenção de reproduzir o diagrama esquemático completo do kit de desenvolvimento utilizado.

Nessa figura, podem ser vistos os sinais descritos a seguir e listados na Tabela 3.

• Saída_Sabotador: este sinal é a saída principal do sabotador, que é responsável por

realizar a inversão de um bit por meio de uma porta XOR usada no bloco Inversor,

conforme ilustrado na Figura 47;

• Teste_Borda_Ativa_SCI: este sinal serve para identificar, por meio de um

osciloscópio, o momento que o sistema reconhece a borda de descida do bit de

parada do campo Data1 (primeiro campo de dados);

• Teste_Capt_Entr_ECT: este sinal serve para identificar, por meio de um

osciloscópio, o momento que o sistema identifica as duas bordas consecutivas do

primeiro bit do campo de sincronismo; e

• Captura_Tempo_Bit: este é um sinal de entrada através do qual o sistema captura o

tempo de bit. Este sinal é derivado, através de um resistor, do sinal RX do PHY.

Essa derivação é representada na Figura 49 através de uma linha tracejada, pois

essa ligação não existe no kit utilizado, devendo, portanto, ser feita manualmente.

Page 82: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

83

Figura 49. Diagrama esquemático simplificado do sabotador

Page 83: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

84

Tabela 3. Sinais do Sabotador

Nome do sinal Direção Porta/Pino Função Saída_Sabotador Saída Porta PE2 Sinal usado para realizar a inversão do bit Teste_Borda_Ativa_SCI Saída Porta PE3 Sinal usado para identificar a interrupção

de borda ativa do SCI Teste_Capt_Entr_ECT Saída Porta PE5 Sinal usado para identificar a interrupção

de captura do módulo ECT Captura_Tempo_Bit Entrada Porta PT0 Canal 0 do modo de captura do ECT,

usado para capturar o tempo de bit

Descrição do funcionamento

O sabotador monitora os quadros enviados pelo mestre e realiza uma contagem da

quantidade de quadros enviados por ele. Essa contagem é incrementada em cada campo de

break identificado pelo sabotador e é zerada quando chega a 10. Quando isto acontece, o

modo de captura de entrada do ECT e o serviço de interrupção a ele associado são habilitados.

É importante ressaltar que o ECT está configurado para o modo Queue, isso significa que a

interrupção será gerada após a captura de duas bordas consecutivas do quadro LIN, que

ocorrerão no campo de sincronismo. Quando o ECT detecta a primeira borda, ele copia o

valor que está em Timer Counter Register (TCNT) para o Timer Input Capture/Output

Compare Register 0 (TC0). Quando a segunda borda é detectada, o valor que está em TC0 é

transferido para o Timer Input Capture Holding Register 0 (TC0H), a seguir, o valor de TCNT

é copiado para TC0 e uma interrupção é gerada. A ISR (Interrupt Service Routine – Rotina de

Serviço de Interrupção) associada a ela calcula então o tempo de bit com base nos valores

armazenados em TC0 e TC0H, conforme mostra a Figura 50

Page 84: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

85

/////////////Captura o tempo de bit//////////////// /// interrupt void TMR_CH0(void){ static unsigned int tempo_ant, tempo_atual; ECT_TIE = 0x00; //Desabilita interrupção tempo_ant = ECT_TC0H; //Valor do contador na 1ª borda tempo_atual = ECT_TC0; //Valor do contador na 2ª borda if( tempo_ant > tempo_atual ){ tempo_bit = 65536 - tempo_ant + tempo_atual; }else{ tempo_bit = tempo_atual - tempo_ant; } pin_out_test_captin = !pin_out_test_captin; //Inverte o //estado do pino usado para teste ECT_TFLG1_C0F = 1; //zera flag da interrupção ECT_TCTL4 = 0x00; //Desliga a detecção de borda n o canal 0 }

Figura 50. Código fonte da ISR da captura de entrada

Deve-se ressaltar que a frequência de operação do ECT é a mesma do barramento

interno do microcontrolador que é de 40 MHz, portanto, a determinação do tempo de bit

possui uma resolução de 25 ns.

O próximo passo é identificar o bit de início do campo Dado1 (primeiro byte de dado)

por meio de interrupções da SCI, sendo de dois tipos:

• Interrupção de Recepção Completa: o SCI gera uma interrupção após receber um

byte completo através no pino RX; e

• Interrupção de Borda Ativa: o SCI gera uma interrupção ao identificar uma borda

de descida no pino RX.

O primeiro tipo de interrupção é usado para identificar qual campo do quadro está

sendo recebido no momento. Se o campo atual for o Dado1, a subrotina que trata a

Interrupção de Borda Ativa irá habilitar o PIT (Periodic Interrupt Timer – Temporizador de

Interrupção Periódico) ao identificar a borda de descida do bit de início do campo Dado1.

O ISR do PIT, conforme é observado na Figura 51, é responsável por ligar e desligar o

pino de saída do sabotador, o qual aciona a porta XOR para a inversão do bit do quadro LIN,

no tempo certo. O registrador que determina o tempo do PIT é carregado com o valor da

variável tempo_bit calculada na ISR de captura de entrada (observado na Figura 50).

Page 85: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

86

/////////////////////////////////////////////////// //////////////// // PIT0_ISR // ------------------------------------------------ --------------- // PIT0 Interrupt Service Routine // Aciona o pino de saída do sabotador /////////////////////////////////////////////////// //////////////// interrupt void PIT0_ISR(void) { static Bool sabota_bit = FALSE; if( !sabota_bit ){ pin_out_sabotador = 1; //Liga o pino de saída do sabotador PITLD0 = tempo_bit - 1; //Configura o tempo par a a próxima //interrupção

PITFLT_PFLT0 = 1; sabota_bit = TRUE; }else{ pin_out_sabotador = 0; //Desliga o pino de saíd a do sabotador PITCFLMT_PITE = 0; //Desliga o timer PITLD0 = tempo_bit * bit - 1; //a variável bit (1 a 8) define o //qual bit será sabotado PITFLT_PFLT0 = 1; sabota_bit = FALSE; } PITTF = 0x01; //Zera a flag de interrupção }

Figura 51. Código fonte da ISR do PIT

A fim de validar a funcionalidade do Sabotador, experimentos foram realizados com o

uso de dois kits DEMO9S12XEP100 da Freescale e de um osciloscópio. Em um dos kits foi

implementado o Sabotador, enquanto no outro foi gravado o código de um mestre LIN

(fornecido como exemplo na ferramenta utilizada) com a função de injetar quadros no

barramento. O Sabotador ficou monitorando os quadros enviados pelo mestre e seus sinais de

resposta foram monitorados com o uso de um osciloscópio, conforme pode ser visto na Figura

52.

Page 86: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

87

Figura 52. Forma de onda dos sinais do Sabotador

3.3.2 Módulo Escravo Teclado - Placa Slave Keyboard

A Figura 53 ilustra a placa de circuito impresso desenvolvida neste projeto para a

implementação do Módulo Escravo Teclado. Ainda não foi possível a montagem dos

componentes na placa, pelos motivos já explicados.

Page 87: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

88

Figura 53. Foto retirada da Placa Slave Keyboard (sem componentes)

3.3.3 Módulo Escravo Display - Placa Slave Display

A Figura 54 ilustra a placa de circuito impresso desenvolvida neste projeto para a

implementação do Módulo Escravo Display.

Figura 54. Foto retirada da Placa Slave Display (sem componentes)

Page 88: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

89

3.3.4 Módulo Escravo Controle dos Motores - Placa Slave Motor Control

A Figura 55 ilustra a placa de circuito impresso desenvolvida neste projeto para a

implementação do Módulo Escravo Teclado.

Figura 55. Foto retirada da Placa Slave Motor Control (sem componentes)

3.3.5 Considerações

Conforme mencionado anteriormente, devido ao atraso no processo de compra dos

componentes, não foi possível realizar a montagem dos protótipos projetados..

Das dificuldades enfrentadas na etapa do TTC II, vale ressaltar o uso de ferramentas e

kits, tais como a ferramenta de desenvolvimento de placas Eagle e o kit de desenvolvimento

da Freescale (Incluindo placa e IDE), os quais demandaram mais tempo do que o esperado no

processo de aprendizagem. Além destes, outra dificuldade enfrentada foi a fase de adaptação

do LIN ao AstroFácil (fase ainda não concluída) devido à complexidade do código do

AstroFácil. No entanto, estas dificuldades possibilitaram a aquisição de novos conhecimentos

e desenvolvimento de novas habilidades.

Page 89: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

90

4 CONCLUSÕES

Neste trabalho foram realizados estudos sobre o protocolo LIN, hostilidade do

ambiente espacial, subsistemas de satélites artificiais, efeitos da radiação em circuitos

integrados e tolerância a faltas.

Com base nesses estudos, verificou-se a enorme complexidade envolvida durante o

desenvolvimento de um circuito que irá operar sob as condições severas de radiação, vácuo

parcial e variação extrema de temperatura oferecida pelo ambiente espacial. Por conta disso,

pode-se fazer necessário realizar adaptações no LIN para que o mesmo possa atender as

exigências espaciais.

Verificou-se também que, por se tratar de sistemas críticos, em que uma falta pode

acarretar na perda da missão, os satélites precisam funcionar com circuitos redundantes, a fim

de garantir o correto funcionamento mesmo na ocorrência de faltas. Além disso, os

componentes eletrônicos a serem adotados precisam suportar a radiação ionizante a que

estarão sujeitos a fim de garantir longa vida útil e funcionamento livre de interferências.

Quanto à possibilidade do uso do LIN em subsistemas de satélites artificiais,

verificou-se que existe a possibilidade de alguns subsistemas serem atendidos pelo protocolo

LIN no que se refere a sua capacidade de largura de banda, sobretudo, os sensores

housekeeping. No entanto, os experimentos do LIN com o uso de protótipos ainda não foi

possível devido ao atraso na compra dos componentes eletrônicos, que não foram recebidos

no prazo de entrega desta monografia. Ainda, conforme relatado anteriormente, algumas

dificuldades na etapa de implantação do LIN no projeto do AstroFácil ainda precisam ser

superadas, visto que o uso da arquitetura do AstroFácil não estava previsto no início deste

projeto.

No entanto, concluiu-se por meio dos estudos que a técnica de Redundância Modular

Tripla (TMR) (pretendeu-se utilizar essa técnica, inicialmente, para tolerar faltas transitórias)

não é adequada para missões de longa duração, como é o caso dos satélites, devido à perda da

capacidade de mascarar faltas após a ocorrência da primeira falta permanente. Além disso,

esse tipo de técnica contribui para um aumento significativo no volume, massa e consumo de

energia.

Page 90: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

91

Em satélites, faltas permanentes costumam ser toleradas por meio de redundância

ativa, em que é utilizado o barramento principal e um ou mais barramentos estepes. Através

de técnicas de detecção, localização e recuperação, o sistema identifica uma falta permanente

no barramento principal e aciona um dos barramentos estepes para garantir que o sistema

continue funcionando. Faltas do tipo transitórias costumam ser toleradas por meio de técnicas

como CRC.

Já o módulo Sabotador implementado para realizar a injeção de faltas no barramento

LIN, apesar das dificuldades e o tempo consumido durante o processo de aprendizagem do kit

utilizado (sobretudo, do microcontrolador), obteve êxito nos testes realizados, alcançando

assim os resultados esperados.

Como trabalhos futuros, prevê-se um estudo mais detalhado dos sensores e atuadores

de um satélite que podem ser atendidos por um barramento com uma baixa largura de banda

como o LIN, além da possibilidade de se utilizar outros meios de transmissão menos

vulneráveis aos efeitos da radiação, como o uso de fibra ótica.

Page 91: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

92

REFERÊNCIAS

BEEKEMA, M. Fault-Tolerant plataform for intra-spacecraft modular wireless sensor network. 2011. Dissertação (Mestre de Ciência em Engenharia da Computação) – Delft University of Technology – Faculdade de Engenharia Elétrica, Matemática e Ciência da Computação, Delft, Holanda, 2011. Disponível em: < http://ce.et.tudelft.nl/publicationfiles/2042_1196_>. Acesso em: 10 nov. 2011.

BROWN, Charles D. Elements of spacecraft design. Reston: American Institute of Aeronautics and Astronautics, 2003.

CGEE. Tecnologia Inercial no Brasil 2007-2010: a rota para seu estabelecimento na indústria. Brasília: Centro de Gestão e Estudos Estratégicos, 2006. Disponível em: <www.cgee.org.br/atividades/redirect/4817>. Acesso em: 27 set. 2011.

EGGERS, Torsten; PAPE, Lutz; SCHWARTZ, Wolfgang. AN10115: Philips Microcontrollers in LIN Applications. 2002. Disponível em: < http://www.nxp.com/documents/application_note/AN10115.pdf>. Acesso em: 28 ago. 2011.

FOROUZAN, Behrouz A. Comunicação de dados e redes de computadores. 4.ed. São Paulo: McGraw-Hill, 2008.

FORTESCUE, Peter; SWINERD, Graham; STARK, John. Spacecraft systems engineering. 4. ed. Southern Gate: Wiley, 2011.

GOEDERT, Gabriel Freitas. Desenvolvimento de Nodo LIN Escravo em Software Embarcado e Sintetizado em FPGA. São José, 2011. Trabalho de Conclusão de Curso (Graduação em Engenharia de Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, São José, 2011.

GRIFFIN, Michael D.; FRENCH, James R. Space vehicle design. 2. ed. Reston: American Institute of Aeronautics and Astronautics, 2004.

GUTSTEIN, Willian Simon. Implementação de um IP-Core para uma interface LIN em verilog. São José, 2010. Trabalho de Conclusão de Curso (Graduação em Engenharia de Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, São José, 2010.

IMO – International Meteor Organization. Glossary. 2011. Disponível em: <http://www.imo.net/glossary>. Acesso em: 15 nov. 2011.

INPE. Satélites e seus subsistemas. 2011. Disponível em: < http://www6.cptec.inpe.br/~grupoweb/Educacional/MACA_SSS/> Acesso em: 27 ago. 2011.

KASTENSMIDT, Fernanda Gusmão de Lima. Designing Single Event Upset Mitigation Techniques for Large SRAM-Based FPGA Components. 2003. 157 f. Tese (Doutarado em Ciência da Computação) – Universidade Federal do Rio Grande do Sul, Porto Alegre, 2003. Disponível em: < http://www.lume.ufrgs.br/handle/10183/4181> Acesso em: 25 out. 2011.

Page 92: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

93

LEITE, Franco Ripoll. Estudo e implementação de um microcontrolador tolerante à radiação. 2009. 73 f. Dissertação (Mestrado em Engenharia Elétrica) – Universidade Federal do Rio Grande do Sul, Porto Alegre, 2009. Disponível em: < http://www.lume.ufrgs.br/bitstream/handle/10183/18991/000732334.pdf?sequence=1> Acesso em: 23 out. 2011.

LIMA, Kátia Goreti de. Estruturas APS resistentes à radiação para aplicações espaciais. 2006. 105 f. Dissertação (Mestrado em Engenharia Elétrica) – Universidade Federal do Rio de Janeiro, Rio de Janeiro, 2006.

LIN CONSORTIUM. LIN specification package – Revision 2.2. LIN Consortium, Stuttgart, 2010.

MICROCHIP. MCP201: LIN Transceiver with Voltage Regulator. 2006. Disponível em: <ww1.microchip.com/downloads/en/devicedoc/21730e.pdf>. Acesso em: 12 out. 2011.

MICROCHIP. PICDEM CAN-LIN 3: Development Kit for 64/80-pin Enhanced CAN Devices User’s Guide. 2003. Disponível em: < http://ww1.microchip.com/downloads/en/DeviceDoc/51423a%20Users%20Guide.pdf>. Acesso em: 23 maio 2012.

NEWARK. Microchip – MCP201-I/SN – IC, LIN transceiver, 20Kbaud, 18V, SOIC8, 2011. Disponível em: < http://www.newark.com/microchip/mcp201-i-sn/ic-lin-transceiver-20kbaud-18v/dp/92C4163>. Acesso em: 15 dez. 2011.

NASA. Space radiation effects on electronic components in low-Earth orbit . 1996. Disponível em: <http://klabs.org/DEI/References/design_guidelines/design_series/1258jsc.pdf>. Acesso em: 08 out. 2011.

PARET, Dominique; RIESCO, Roderick. Multiplexed networks for embedded systems: CAN, LIN, Flexray, Safe-by-Wire.... Chichester: John Wiley and Sons, 2007.

PEREIRA, Rodrigo Vinícius Mendonça. Implementação do protocolo de comunicação automotivo LIN versão 2.1 em FPGA no modo escravo. São José, 2008. Trabalho de Conclusão de Curso (Graduação em Engenharia de Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, São José, 2008.

PESSOTTA, Fernando Antônio. Análise de arquiteturas de computadores de bordo para missões espaciais de longa duração. 1999. Dissertação (Mestre em Engenharia Eletrônica e Computação) – Instituto Tecnológico de Aeronáutica, São José dos Campos, 1999. Disponível em: < http://www.bd.bibl.ita.br/tde_busca/arquivo.php?codArquivo=424>. Acesso em: 10 nov. 2011.

RYLANDER, Anders; WALLIN, Erik. LIN – Local Interconnect Network – for use as sub-bus in Volvo trucks. 2003. Dissertação (Mestre em Ciência e Engenharia de Computação) – Departamento de Engenharia da Computação, Chalmers University of Technology, Göteborg, 2003. Disponível em: < http://www.mrtc.mdh.se/rtis/contrib/Exjobb/03.PDF> Acesso em: 02 set. 2011.

SANTOS, Ulisses Lyra dos. Projeto de um amplificador operacional CMOS de dois estágios e simulação elétrica do efeito de dose total. 2010. 71 f. Dissertação (Mestrado em

Page 93: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

94

Engenharia Elétrica) – Universidade Federal do Rio Grande do Sul, Porto Alegre, 2010. Disponível em: < http://www.lume.ufrgs.br/bitstream/handle/10183/27262/000764058.pdf?sequence=1> Acesso em: 03 nov. 2011.

SHIBUYA, Lidia Hissae et al. ITASAT : desenvolvimento de um computador de bordo tolerante a falhas com comunicação padrão CCSDS. São José dos Campos: ITA – Instituto Tecnológico de Aeronáutica, 2009.

SILVA, Marcos Roberto. Sistema embarcado para controle de telescópio. Itajaí. 2003. 111 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2003.

SILVA, Marcos Roberto et al. AstroFácil: Sistema Computacional Embarcado para Automatização de Telescópios de Pequeno Porte. In: XV Seminário de Computação, 2006, Blumenau. Anais do XV Seminário de Computação. Blumenau : FURB, 2006. p. 165-176. Disponível em: < http://www.inf.furb.br/seminco/2006/artigos/24999.pdf> Acesso em: 23 maio 2012.

SORIN, Daniel J. Fault tolerant computer architecture. San Francisco: Morgan & Claypool 2009.

SOUZA, Petrônio Noronha de. A Concepção do Sistema, a Arquitetura dos Satélites e seus Subsistemas. Instituto Nacional de Pesquisas Espaciais - INPE. São José dos Campos, SP, 2008. Apresentação.

TAMBARA, Lucas Antunes. Análise de Single-Event Efects em arquiteturas de células de mamória Dice e Norley. 2010. Trabalho de Conclusão de Curso (Ciência da Computação) – Universidade Federal do Rio Grande do Sul, Porto Alegre, 2010. Disponível em: < www-app.inf.ufsm.br/bdtg/arquivo.php?id=140&download=1> Acesso em: 28 out. 2011.

VINCI, Edson; SAOTOME, Osamu. Arquitetura de hardware do computador de bordo para o satélite universitário ITASAT e confiabilidade. São José dos Campos, 2009. Disponível em: <http://www.cta-dlr2009.ita.br/Proceedings/PDF/59028.pdf>. Acesso em: 22 out. 2011.

WEBER, Taisy Silva. Tolerância a falhas: conceitos e exemplos. Programa de Pós-Graduação em Computação, Universidade Federal do Rio Grande do Sul, Porto Alegre, 2001. Disponível em: < http://www.inf.ufrgs.br/~taisy/disciplinas/textos/ConceitosDependabilidade.PDF> Acesso em: 29 out. 2011.

ZEFERINO, Cesar Albenes. Uso do protocolo LIN na interconexão de sistemas em satélites artificiais. Universidade do Vale do Itajaí, Itajaí,SC. 2009. (Proposta de projeto aprovada no programa Uniespaço da Agência Espacial Brasileira)

Page 94: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Ederson Recalcatti.pdf · of fault tolerance techniques become necessary in the design phase of a communication

95

GLOSSÁRIO

Arco Elétrico É uma descarga elétrica que ocorre através de um gás ionizado devido à ruptura dielétrica deste gás.

Jitter Diferença entre o atraso máximo e mínimo da base de tempo para o início de envio do cabeçalho.

Meteoróides “São objetos sólidos que se movem pelo espaço interplanetário. Possuem tamanho consideravelmente menor do que um asteróide e consideravelmente maior do que um átomo ou molécula.” (IMO, 2011). Ainda, segundo IMO (2011), o tamanho de um asteróide pode variar entre sub-km até cerca de 1000 km.

Slew-rate Tempo gasto para um sinal elétrico mudar do nível lógico baixo para o nível lógico alto e vice-versa. Um pequeno intervalo de tempo combinado com uma grande diferença entre o nível baixo e o nível alto, correspondem a um slew-rate alto.

Submicrônica Fabricação de circuitos integrados com tecnologia menor do que 1 micrometro.