26 research outputs found
Modelação e simulação de equipamentos de rede para Indústria 4.0
Currently, the industrial sector has increasingly opted for digital technologies
in order to automate all its processes. This development comes from
notions like Industry 4.0 that redefines the way these systems are designed.
Structurally, all the components of these systems are connected in a complex
network known as the Industrial Internet of Things. Certain requirements
arise from this concept regarding industrial communication networks. Among
them, the need to ensure real-time communications, as well as support for
dynamic resource management, are extremely relevant. Several research
lines pursued to develop network technologies capable of meeting such
requirements. One of these protocols is the Hard Real-Time Ethernet Switch
(HaRTES), an Ethernet switch with support for real-time communications and
dynamic resource management, requirements imposed by Industry 4.0.
The process of designing and implementing industrial networks can,
however, be quite time consuming and costly. These aspects impose
limitations on testing large networks, whose level of complexity is higher and
requires the usage of more hardware. The utilization of network simulators
stems from the necessity to overcome such restrictions and provide tools to
facilitate the development of new protocols and evaluation of communications
networks.
In the scope of this dissertation a HaRTES switch model was developed
in the OMNeT++ simulation environment. In order to demonstrate a
solution that can be employed in industrial real-time networks, this dissertation
presents the fundamental aspects of the implemented model as well as a set
of experiments that compare it with an existing laboratory prototype, with the
objective of validating its implementation.Atualmente o setor industrial tem vindo cada vez mais a optar por tecnologias
digitais de forma a automatizar todos os seus processos. Este desenvolvimento
surge de noções como Indústria 4.0, que redefine o modo de como
estes sistemas são projetados. Estruturalmente, todos os componentes
destes sistemas encontram-se conectados numa rede complexa conhecida
como Internet Industrial das Coisas. Certos requisitos advêm deste conceito,
no que toca às redes de comunicação industriais, entre os quais se destacam
a necessidade de garantir comunicações tempo-real bem como suporte a
uma gestão dinâmica dos recursos, os quais são de extrema importância.
Várias linhas de investigação procuraram desenvolver tecnologias de rede
capazes de satisfazer tais exigências. Uma destas soluções é o "Hard
Real-Time Ethernet Switch" (HaRTES), um switch Ethernet com suporte a
comunicações de tempo-real e gestão dinâmica de Qualidade-de-Serviço
(QoS), requisitos impostos pela Indústria 4.0.
O processo de projeto e implementação de redes industriais pode, no
entanto, ser bastante moroso e dispendioso. Tais aspetos impõem limitações
no teste de redes de largas dimensões, cujo nível de complexidade é
mais elevado e requer o uso de mais hardware. Os simuladores de redes
permitem atenuar o impacto de tais limitações, disponibilizando ferramentas
que facilitam o desenvolvimento de novos protocolos e a avaliação de redes
de comunicações.
No âmbito desta dissertação desenvolveu-se um modelo do switch HaRTES
no ambiente de simulação OMNeT++. Com um objetivo de demonstrar uma
solução que possa ser utilizada em redes de tempo-real industriais, esta
dissertação apresenta os aspetos fundamentais do modelo implementado
bem como um conjunto de experiências que o comparam com um protótipo
laboratorial já existente, no âmbito da sua validação.Mestrado em Engenharia Eletrónica e Telecomunicaçõe
Real-time communications over switched Ethernet supporting dynamic QoS management
Doutoramento em Engenharia InformáticaDurante a última década temos assistido a um crescente aumento na utilização
de sistemas embutidos para suporte ao controlo de processos, de sistemas
robóticos, de sistemas de transportes e veículos e até de sistemas domóticos
e eletrodomésticos. Muitas destas aplicações são críticas em termos de
segurança de pessoas e bens e requerem um alto nível de determinismo com
respeito aos instantes de execução das respectivas tarefas. Além disso, a implantação
destes sistemas pode estar sujeita a limitações estruturais, exigindo
ou beneficiando de uma configuração distribuída, com vários subsistemas
computacionais espacialmente separados. Estes subsistemas, apesar de
espacialmente separados, são cooperativos e dependem de uma infraestrutura
de comunicação para atingir os objectivos da aplicação e, por consequência,
também as transacções efectuadas nesta infraestrutura estão sujeitas às
restrições temporais definidas pela aplicação.
As aplicações que executam nestes sistemas distribuídos, chamados
networked embedded systems (NES), podem ser altamente complexas e
heterogéneas, envolvendo diferentes tipos de interacções com diferentes
requisitos e propriedades. Um exemplo desta heterogeneidade é o modelo de
activação da comunicação entre os subsistemas que pode ser desencadeada
periodicamente de acordo com uma base de tempo global (time-triggered),
como sejam os fluxos de sistemas de controlo distribuído, ou ainda ser
desencadeada como consequência de eventos assíncronos da aplicação
(event-triggered). Independentemente das características do tráfego ou do
seu modelo de activação, é de extrema importância que a plataforma de
comunicações disponibilize as garantias de cumprimento dos requisitos da
aplicação ao mesmo tempo que proporciona uma integração simples dos
vários tipos de tráfego.
Uma outra propriedade que está a emergir e a ganhar importância no seio
dos NES é a flexibilidade. Esta propiedade é realçada pela necessidade de
reduzir os custos de instalação, manutenção e operação dos sistemas. Neste
sentido, o sistema é dotado da capacidade para adaptar o serviço fornecido à
aplicação aos respectivos requisitos instantâneos, acompanhando a evolução
do sistema e proporcionando uma melhor e mais racional utilização dos
recursos disponíveis.
No entanto, maior flexibilidade operacional é igualmente sinónimo de
maior complexidade derivada da necessidade de efectuar a alocação dinâmica
dos recursos, acabando também por consumir recursos adicionais no sistema.
A possibilidade de modificar dinâmicamente as caracteristicas do sistema
também acarreta uma maior complexidade na fase de desenho e especificação.
O aumento do número de graus de liberdade suportados faz aumentar
o espaço de estados do sistema, dificultando a uma pre-análise. No sentido de
conter o aumento de complexidade são necessários modelos que representem
a dinâmica do sistema e proporcionem uma gestão optimizada e justa dos
recursos com base em parâmetros de qualidade de serviço (QdS).
É nossa tese que as propriedades de flexibilidade, pontualidade e gestão
dinâmica de QdS podem ser integradas numa rede switched Ethernet (SE),
tirando partido do baixo custo, alta largura de banda e fácil implantação. Nesta
dissertação é proposto um protocolo, Flexible Time-Triggered communication
over Switched Ethernet (FTT-SE), que suporta as propriedades desejadas e
que ultrapassa as limitações das redes SE para aplicações de tempo-real tais
como a utilização de filas FIFO, a existência de poucos níveis de prioridade
e a pouca capacidade de gestão individualizada dos fluxos. O protocolo
baseia-se no paradigma FTT, que genericamente define a arquitectura de uma
pilha protocolar sobre o acesso ao meio de uma rede partilhada, impondo
desta forma determinismo temporal, juntamente com a capacidade para
reconfiguração e adaptação dinâmica da rede. São ainda apresentados vários
modelos de distribuição da largura de banda da rede de acordo com o nível de
QdS especificado por cada serviço utilizador da rede.
Esta dissertação expõe a motivação para a criação do protocolo FTT-SE,
apresenta uma descrição do mesmo, bem como a análise de algumas das
suas propiedades mais relevantes. São ainda apresentados e comparados
modelos de distribuição da QdS. Finalmente, são apresentados dois casos de
aplicações que sustentam a validade da tese acima mencionada.During the last decade we have witnessed a massive deployment of embedded
systems on a wide applications range, from industrial automation to process
control, avionics, cars or even robotics. Many of these applications have an
inherently high level of criticality, having to perform tasks within tight temporal
constraints. Additionally, the configuration of such systems is often distributed,
with several computing nodes that rely on a communication infrastructure to
cooperate and achieve the application global goals. Therefore, the communications
are also subject to the same temporal constraints set by the application
requirements.
Many applications relying on such networked embedded systems (NES)
are complex and heterogeneous, comprehending different activities with different
requirements and properties. For example, the communication between
subsystems may follow a strict temporal synchronization with respect to a
global time-base (time-triggered), like in a distributed feedback control loop,
or it may be issued asynchronously upon the occurrence of events (eventtriggered).
Regardless of the traffic characteristics and its activation model, it
is of paramount importance having a communication framework that provides
seamless integration of heterogeneous traffic sources while guaranteeing the
application requirements.
Another property that has been emerging as important for NES design and
operation is flexibility. The need to reduce installation and operational costs,
while facilitating maintenance is promoting a more rational use of the available
resources at run-time, exploring the ability to tune service parameters as the
system evolves.
However, such operational flexibility comes with the cost of increasing the
complexity of the system to handle the dynamic resource management, which
on the other hand demands the allocation of additional system resources.
Moreover, the capacity to dynamically modify the system properties also
causes a higher complexity when designing and specifying the system, since
the operational state-space increases with the degrees of flexibility of the
system.
Therefore, in order to bound this complexity appropriate operational models
are needed to handle the system dynamics and carry on an efficient and
fair resource management strategy based on quality of service (QoS) metrics.
This thesis states that the properties of flexibility and timeliness as needed
for dynamic QoS management can be provided to switched Ethernet based
systems. Switched Ethernet, although initially designed for general purpose
Internet access and file transfers, is becoming widely used in NES-based applications.
However, COTS switched Ethernet is insufficient regarding the needs
for real-time predictability and for supporting the aforementioned properties due
the use of FIFO queues too few priority levels and for stream-level management
capabilities. In this dissertation we propose a protocol to overcome those
limitations, namely the Flexible Time-Triggered communication over Switched
Ethernet (FTT-SE). The protocol is based on the FTT paradigm that generically
defines a protocol architecture suitable to enforce real-time determinism on a
communication network supporting the desired flexibility properties.
This dissertation addresses the motivation for FTT-SE, describing the
protocol as well as its schedulability analysis. It additionally covers the resource
distribution topic, where several distribution models are proposed to manage
the resource capacity among the competing services and while considering
the QoS level requirements of each service. A couple of application cases are
shown that support the aforementioned thesis
Dynamic QoS Management for Ethernet-based Video Surveillance Systems
This project consists of a video surveillance system with an integrated quality of service (QoS) manager that operates online, constantly monitoring and setting the QoS parameters.This manager has two components: one that manages the network bandwidth, distributing it through the cameras according to their needs; and another that controls the compression applied by the cameras to each frame in order to use the bandwidth efficiently. The project will focus mainly on the first, which is built on Linux Traffic Control, a Linux service that allows the user to configure traffic scheduling and shaping
MSRP resources reservation for HaRTES real-time switch
Mestrado em Engenharia Eletrónica e TelecomunicaçõesOs mecanismos e técnicas do domínio de Tempo-Real são
utilizados quando existe a necessidade de um sistema, seja este
um sistema embutido ou de grandes dimensões, possuir
determinadas características que assegurem a qualidade de
serviço do sistema. Os Sistemas de Tempo-Real definem-se
assim como sistemas que possuem restrições temporais
rigorosas, que necessitam de apresentar altos níveis de
fiabilidade de forma a garantir em todas as instâncias o
funcionamento atempado do sistema.
Devido à crescente complexidade dos sistemas embutidos,
empregam-se frequentemente arquiteturas distribuídas, onde
cada módulo é normalmente responsável por uma única função.
Nestes casos existe a necessidade de haver um meio de
comunicação entre estes, de forma a poderem comunicar entre si
e cumprir a funcionalidade desejadas. Devido à sua elevada
capacidade e baixo custo a tecnologia Ethernet tem vindo a ser
alvo de estudo, com o objetivo de a tornar num meio de
comunicação com a qualidade de serviço característica dos
sistemas de tempo-real.
Como resposta a esta necessidade surgiu na Universidade de
Aveiro, o Switch HaRTES, o qual possui a capacidade de gerir os
seus recursos dinamicamente, de modo a fornecer à rede onde é
aplicado garantias de Tempo-Real. No entanto, para uma
arquitetura de rede ser capaz de fornecer aos seus nós garantias
de qualidade serviço, é necessário que exista uma especificação
do fluxo, um correto encaminhamento de tráfego, reserva de
recursos, controlo de admissão e um escalonamento de pacotes.
Infelizmente, o Switch HaRTES apesar de possuir todas estas
características, não suporta protocolos standards.
Neste documento é apresentado então o trabalho que foi
desenvolvido para a integração do protocolo SRP no Switch
HaRTES.The tools and mechanisms of the Real-Time domain are used
when there is a need for a system, either an embedded or a large
scale system, to possess certain characteristics that ensure the
quality of service. The Real-Time Systems are defined as systems
that possess strict time constraints, they require high levels of
reliability as a way to ensure the timely operation in every instance
of the system.
With the growing complexity of the embedded systems, distributed
architectures are normally employed, where each module is
usually responsible for a single function. In these cases there is a
need for a means of communication between them, so that they
can communicate with each other and fulfill the desired
functionality. Due to its high capacity and low-cost, Ethernet
technology has been the target of study, aiming to make a means
of communicating with the service quality feature of real-time
systems.
In response to this need, arose at the University of Aveiro the
Switch HaRTES, which has the ability to manage their resources
dynamically in order to provide the network where it is applied
Real-time guarantees. However, for a network architecture to be
able to provide such guarantees, it must be able to specify the
flow of data, do a correct traffic routing, reserve resources, and do
an admission control and packet scheduling. Unfortunately, the
HaRTES Switch, despite having all these features, does not
support a standard protocol.
In this document is then presented the work that was developed
for the integration of the SRP protocol in the HaRTES Switch
Tolerância a falhas em sistemas de comunicação de tempo-real flexíveis
Nas últimas décadas, os sistemas embutidos distribuídos, têm sido usados em
variados domínios de aplicação, desde o controlo de processos industriais até
ao controlo de aviões e automóveis, sendo expectável que esta tendência se
mantenha e até se intensifique durante os próximos anos.
Os requisitos de confiabilidade de algumas destas aplicações são
extremamente importantes, visto que o não cumprimento de serviços de uma
forma previsível e pontual pode causar graves danos económicos ou até pôr
em risco vidas humanas.
A adopção das melhores práticas de projecto no desenvolvimento destes
sistemas não elimina, por si só, a ocorrência de falhas causadas pelo
comportamento não determinístico do ambiente onde o sistema embutido
distribuído operará. Desta forma, é necessário incluir mecanismos de
tolerância a falhas que impeçam que eventuais falhas possam comprometer
todo o sistema.
Contudo, para serem eficazes, os mecanismos de tolerância a falhas
necessitam ter conhecimento a priori do comportamento correcto do sistema
de modo a poderem ser capazes de distinguir os modos correctos de
funcionamento dos incorrectos.
Tradicionalmente, quando se projectam mecanismos de tolerância a falhas, o
conhecimento a priori significa que todos os possíveis modos de
funcionamento são conhecidos na fase de projecto, não os podendo adaptar
nem fazer evoluir durante a operação do sistema. Como consequência, os
sistemas projectados de acordo com este princípio ou são completamente
estáticos ou permitem apenas um pequeno número de modos de operação.
Contudo, é desejável que os sistemas disponham de alguma flexibilidade de
modo a suportarem a evolução dos requisitos durante a fase de operação,
simplificar a manutenção e reparação, bem como melhorar a eficiência usando
apenas os recursos do sistema que são efectivamente necessários em cada
instante. Além disto, esta eficiência pode ter um impacto positivo no custo do
sistema, em virtude deste poder disponibilizar mais funcionalidades com o
mesmo custo ou a mesma funcionalidade a um menor custo.
Porém, flexibilidade e confiabilidade têm sido encarados como conceitos
conflituais.
Isto deve-se ao facto de flexibilidade implicar a capacidade de permitir a
evolução dos requisitos que, por sua vez, podem levar a cenários de operação
imprevisíveis e possivelmente inseguros. Desta fora, é comummente aceite
que apenas um sistema completamente estático pode ser tornado confiável, o
que significa que todos os aspectos operacionais têm de ser completamente
definidos durante a fase de projecto.
Num sentido lato, esta constatação é verdadeira. Contudo, se os modos como
o sistema se adapta a requisitos evolutivos puderem ser restringidos e
controlados, então talvez seja possível garantir a confiabilidade permanente
apesar das alterações aos requisitos durante a fase de operação.
A tese suportada por esta dissertação defende que é possível flexibilizar um
sistema, dentro de limites bem definidos, sem comprometer a sua
confiabilidade e propõe alguns mecanismos que permitem a construção de
sistemas de segurança crítica baseados no protocolo Controller Area Network
(CAN). Mais concretamente, o foco principal deste trabalho incide sobre o
protocolo Flexible Time-Triggered CAN (FTT-CAN), que foi especialmente
desenvolvido para disponibilizar um grande nível de flexibilidade operacional
combinando, não só as vantagens dos paradigmas de transmissão de
mensagens baseados em eventos e em tempo, mas também a flexibilidade
associada ao escalonamento dinâmico do tráfego cuja transmissão é
despoletada apenas pela evolução do tempo.
Este facto condiciona e torna mais complexo o desenvolvimento de
mecanismos de tolerância a falhas para FTT-CAN do que para outros
protocolos como por exemplo, TTCAN ou FlexRay, nos quais existe um
conhecimento estático, antecipado e comum a todos os nodos, do
escalonamento de mensagens cuja transmissão é despoletada pela evolução
do tempo.
Contudo, e apesar desta complexidade adicional, este trabalho demonstra que
é possível construir mecanismos de tolerância a falhas para FTT-CAN
preservando a sua flexibilidade operacional.
É também defendido nesta dissertação que um sistema baseado no protocolo
FTT-CAN e equipado com os mecanismos de tolerância a falhas propostos é
passível de ser usado em aplicações de segurança crítica.
Esta afirmação é suportada, no âmbito do protocolo FTT-CAN, através da
definição de uma arquitectura tolerante a falhas integrando nodos com modos
de falha tipo falha-silêncio e nodos mestre replicados.
Os vários problemas resultantes da replicação dos nodos mestre são, também
eles, analisados e várias soluções são propostas para os obviar.
Concretamente, é proposto um protocolo que garante a consistência das
estruturas de dados replicadas a quando da sua actualização e um outro
protocolo que permite a transferência dessas estruturas de dados para um
nodo mestre que se encontre não sincronizado com os restantes depois de
inicializado ou reinicializado de modo assíncrono.
Além disto, esta dissertação também discute o projecto de nodos FTT-CAN
que exibam um modo de falha do tipo falha-silêncio e propõe duas soluções
baseadas em componentes de hardware localizados no interface de rede de
cada nodo, para resolver este problema. Uma das soluções propostas baseiase
em bus guardians que permitem a imposição de comportamento falhasilêncio
nos nodos escravos e suportam o escalonamento dinâmico de tráfego
na rede. A outra solução baseia-se num interface de rede que arbitra o acesso
de dois microprocessadores ao barramento. Este interface permite que a
replicação interna de um nodo seja efectuada de forma transparente e
assegura um comportamento falha-silêncio quer no domínio temporal quer no
domínio do valor ao permitir transmissões do nodo apenas quando ambas as
réplicas coincidam no conteúdo das mensagens e nos instantes de
transmissão. Esta última solução está mais adaptada para ser usada nos
nodos mestre, contudo também poderá ser usada nos nodos escravo, sempre
que tal se revele fundamental.Distributed embedded systems (DES) have been widely used in the last few
decades in several application fields, ranging from industrial process control to
avionics and automotive systems. In fact, it is expectable that this trend will
continue over the years to come.
In some of these application domains the dependability requirements are of
utmost importance since failing to provide services in a timely and predictable
manner may cause important economic losses or even put human life in risk.
The adoption of the best practices in the design of distributed embedded
systems does not fully avoid the occurrence of faults, arising from the nondeterministic
behavior of the environment where each particular DES operates.
Thus, fault-tolerance mechanisms need to be included in the DES to prevent
possible faults leading to system failure.
To be effective, fault-tolerance mechanisms require an a priori knowledge of
the correct system behavior to be capable of distinguishing them from the
erroneous ones.
Traditionally, when designing fault-tolerance mechanisms, the a priori
knowledge means that all possible operational modes are known at system
design time and cannot adapt nor evolve during runtime. As a consequence,
systems designed according to this principle are either fully static or allow a
small number of operational modes only. Flexibility, however, is a desired
property in a system in order to support evolving requirements, simplify
maintenance and repair, and improve the efficiency in using system resources
by using only the resources that are effectively required at each instant. This
efficiency might impact positively on the system cost because with the same
resources one can add more functionality or one can offer the same
functionality with fewer resources.
However, flexibility and dependability are often regarded as conflicting
concepts. This is so because flexibility implies the ability to deal with evolving
requirements that, in turn, can lead to unpredictable and possibly unsafe
operating scenarios. Therefore, it is commonly accepted that only a fully static
system can be made dependable, meaning that all operating conditions are
completely defined at pre-runtime.
In the broad sense and assuming unbounded flexibility this assessment is true,
but if one restricts and controls the ways the system could adapt to evolving
requirements, then it might be possible to enforce continuous dependability.
This thesis claims that it is possible to provide a bounded degree of flexibility
without compromising dependability and proposes some mechanisms to build
safety-critical systems based on the Controller Area Network (CAN).
In particular, the main focus of this work is the Flexible Time-Triggered CAN
protocol (FTT-CAN), which was specifically developed to provide such high
level of operational flexibility, not only combining the advantages of time- and
event-triggered paradigms but also providing flexibility to the time-triggered
traffic. This fact makes the development of fault-tolerant mechanisms more
complex in FTT-CAN than in other protocols, such as TTCAN or FlexRay, in
which there is a priori static common knowledge of the time-triggered message
schedule shared by all nodes. Nevertheless, as it is demonstrated in this work,
it is possible to build fault-tolerant mechanisms for FTT-CAN that preserve its
high level of operational flexibility, particularly concerning the time-triggered
traffic. With such mechanisms it is argued that FTT-CAN is suitable for safetycritical
applications, too.
This claim was validated in the scope of the FTT-CAN protocol by presenting a
fault-tolerant system architecture with replicated masters and fail-silent nodes.
The specific problems and mechanisms related with master replication,
particularly a protocol to enforce consistency during updates of replicated data
structures and another protocol to transfer these data structures to an
unsynchronized node upon asynchronous startup or restart, are also
addressed.
Moreover, this thesis also discusses the implementations of fail-silence in FTTCAN
nodes and proposes two solutions, both based on hardware components
that are attached to the node network interface. One solution relies on bus
guardians that allow enforcing fail-silence in the time domain. These bus
guardians are adapted to support dynamic traffic scheduling and are fit for use
in FTT-CAN slave nodes, only. The other solution relies on a special network
interface, with duplicated microprocessor interface, that supports internal
replication of the node, transparently. In this case, fail-silence can be assured
both in the time and value domain since transmissions are carried out only if
both internal nodes agree on the transmission instant and message contents.
This solution is well adapted for use in the masters but it can also be used, if
desired, in slave nodes
Flexible management of bandwidth and redundancy in fieldbuses
Doutoramento em Engenharia ElectrotécnicaOs sistemas distribuídos embarcados (Distributed Embedded Systems – DES) têm sido usados ao longo dos últimos anos em muitos domínios de aplicação, da robótica, ao controlo de processos industriais passando pela aviónica e pelas aplicações veiculares, esperando-se que esta tendência continue nos próximos anos.
A confiança no funcionamento é uma propriedade importante nestes domínios de aplicação, visto que os serviços têm de ser executados em tempo útil e de forma previsível, caso contrário, podem ocorrer danos económicos ou a vida de seres humanos poderá ser posta em causa.
Na fase de projecto destes sistemas é impossível prever todos os cenários de falhas devido ao não determinismo do ambiente envolvente, sendo necessária a inclusão de mecanismos de tolerância a falhas.
Adicionalmente, algumas destas aplicações requerem muita largura de banda, que também poderá ser usada para a evolução dos sistemas, adicionandolhes novas funcionalidades.
A flexibilidade de um sistema é uma propriedade importante, pois permite a sua adaptação às condições e requisitos envolventes, contribuindo também para a simplicidade de manutenção e reparação. Adicionalmente, nos sistemas
embarcados, a flexibilidade também é importante por potenciar uma melhor utilização dos, muitas vezes escassos, recursos existentes.
Uma forma evidente de aumentar a largura de banda e a tolerância a falhas dos sistemas embarcados distribuídos é a replicação dos barramentos do sistema. Algumas soluções existentes, quer comerciais quer académicas,
propõem a replicação dos barramentos para aumento da largura de banda ou para aumento da tolerância a falhas. No entanto e quase invariavelmente, o propósito é apenas um, sendo raras as soluções que disponibilizam uma maior
largura de banda e um aumento da tolerância a falhas. Um destes raros exemplos é o FlexRay, com a limitação de apenas ser permitido o uso de dois
barramentos.
Esta tese apresentada e discute uma proposta para usar a replicação de barramentos de uma forma flexível com o objectivo duplo de aumentar a
largura de banda e a tolerância a falhas. A flexibilidade dos protocolos propostos também permite a gestão dinâmica da topologia da rede, sendo o número de barramentos apenas limitado pelo hardware/software.
As propostas desta tese foram validadas recorrendo ao barramento de campo
CAN – Controller Area Network, escolhido devido à sua grande implantação no mercado. Mais especificamente, as soluções propostas foram implementadas e validadas usando um paradigma que combina flexibilidade com comunicações event-triggered e time-triggered: o FTT – Flexible Time- Triggered. No entanto, uma generalização para CAN nativo é também apresentada e discutida.
A inclusão de mecanismos de replicação do barramento impõe a alteração dos antigos protocolos de replicação e substituição do nó mestre, bem como a definição de novos protocolos para esta finalidade. Este trabalho tira partido da
arquitectura centralizada e da replicação do nó mestre para suportar de forma eficiente e flexível a replicação de barramentos. Em caso de ocorrência de uma falta num barramento (ou barramentos) que poderia provocar uma falha no sistema, os protocolos e componentes propostos nesta tese fazem com que o sistema reaja, mudando para um modo de funcionamento degradado. As
mensagens que estavam a ser transmitidas nos barramentos onde ocorreu a falta são reencaminhadas para os outros barramentos.
A replicação do nó mestre baseia-se numa estratégia líder-seguidores (leaderfollowers),
onde o líder (leader) controla todo o sistema enquanto os seguidores (followers) servem como nós de reserva. Se um erro ocorrer no nó
líder, um dos nós seguidores passará a controlar o sistema de uma forma transparente e mantendo as mesmas funcionalidades.
As propostas desta tese foram também generalizadas para CAN nativo, tendo sido para tal propostos dois componentes adicionais. É, desta forma possível ter as mesmas capacidades de tolerância a falhas ao nível dos barramentos
juntamente com a gestão dinâmica da topologia de rede.
Todas as propostas desta tese foram implementadas e avaliadas. Uma
implementação inicial, apenas com um barramento foi avaliada recorrendo a uma aplicação real, uma equipa de futebol robótico onde o protocolo FTT-CAN foi usado no controlo de movimento e da odometria.
A avaliação do sistema com múltiplos barramentos foi feita numa plataforma de teste em laboratório. Para tal foi desenvolvido um sistema de injecção de faltas que permite impor faltas nos barramentos e nos nós mestre, e um sistema de medida de atrasos destinado a medir o tempo de resposta após a ocorrência de uma falta.Distributed embedded systems (DES) have been widely used in the last few decades in several application domains, from robotics, industrial process control, avionics and automotive. In fact, it is expectable that this trend will continue in the next years.
In some of these application fields the dependability requirements are very important since the fail to provide services in a timely and predictable manner
may cause important economic losses or even put humans in risk.
In the design phase it is impossible to predict all the possible scenarios of faults, due to the non deterministic behaviour of the surrounding environment.
In that way, the fault tolerance mechanisms must be included in the distributed embedded system to prevent failures occurrence.
Also, many application domains require a high available bandwidth to perform the desired functions, or to turn possible the scaling with the addition of new features.
The flexibility of a system also plays an important role, since it improves the capability to adapt to the surrounding world, and to the simplicity of the repair
and maintenance. The flexibility improves the efficiency of all the system by providing a way to efficiently manage the available resources. This is very important in embedded systems due to the limited resources often available.
A natural way to improve the bandwidth and the fault tolerance in distributed systems is to use replicated buses. Commercial and academic solutions propose the use of replicated fieldbuses for a single purpose only, either to improve the fault tolerance or to improve the available bandwidth, being the first the most common. One illustrative exception is FlexRay where the bus replica
can be used to improve the bandwidth of the overall system, besides enabling redundant communications. However, only one bus replica can be used.
In this thesis, a flexible bus replication scheme to improve both the dependability and the throughput of fieldbuses is presented and studied. It can
be applied to any number of replicated buses, provided the required hardware support is available. The flexible use of the replicated buses can achieve an also flexible management of the network topology.
This claim has been validated using the Controller Area Network (CAN) fieldbus, which has been chosen because it is widely spread in millions of
systems. In fact, the proposed solution uses a paradigm that combines flexibility, time and event triggered communication, that is the Flexible Time-
Triggered over CAN network (FTT-CAN). However, a generalization to native CAN is also presented and studied.
The inclusion of bus replication in FTT-CAN imposes not only new mechanisms but also changes of the mechanisms associated with the master replication, which has been already studied in previous research work. In this work, these
mechanisms were combined and take advantage of the centralized architecture and of the redundant masters to support an efficient and flexible bus
replication.
When considering the system operation, if a fault in the bus (or buses) occurs, and the consequent error leads to a system failure, the system reacts,
switching to a degraded mode, where the message flows that were transmitted in the faulty bus (or buses) change to the non-faulty ones.
The central node replication uses a leader-follower strategy, where the leader controls the system while the followers serve as backups. If an error occurs in
the leader, a backup will take the system control maintaining the system with the same functionalities.
The system has been generalized for native CAN, using two additional components that provide the same fault tolerance capabilities at the bus level,
and also enable the dynamic management of the network topology.
All the referred proposals were implemented and assessed in the scope of this work. The single bus version of FTT-CAN was assessed using a real
application, a robotic soccer team, which has obtained excellent results in international competitions. There, the FTT-CAN based embedded system has been applied in the low level control, where, mainly it is responsible for the
motion control and odometry.
For the case of the multiple buses system, the assessment was performed in a laboratory test bed. For this, a fault injector was developed in order to impose faults in the buses and in the central nodes. To measure the time reaction of the system, a special hardware has been developed: a delay measurement system. It is able to measure delays between two important time marks for posterior offline analysis of the obtained values
Proceedings Work-In-Progress Session of the 13th Real-Time and Embedded Technology and Applications Symposium
The Work-In-Progress session of the 13th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS\u2707) presents papers describing contributions both to state of the art and state of the practice in the broad field of real-time and embedded systems. The 17 accepted papers were selected from 19 submissions. This proceedings is also available as Washington University in St. Louis Technical Report WUCSE-2007-17, at http://www.cse.seas.wustl.edu/Research/FileDownload.asp?733. Special thanks go to the General Chairs – Steve Goddard and Steve Liu and Program Chairs - Scott Brandt and Frank Mueller for their support and guidance