Desenvolvimento de Interface para Carro Autonomo
Por: Lidieisa • 16/1/2018 • 3.635 Palavras (15 Páginas) • 409 Visualizações
...
aos olhos de quem usa o carro para que não seja limitado o número de usuários para ele.
A arquitetura pode ser subdividida em três níveis: nível de controle, nível de processamento e nível de usuário. O nível de controle é aquele no qual se localizam os elementos de controle e sensoriamento, onde tudo é acompanhado em tempo real. No nível de processamento encontra-se o que não precisa ser em tempo real e aqueles que possuem maior quantidade de dados para transmitir. Já o nível usuário é onde o motorista do carro consegue enviar e receber informações dos sistemas [Arruda, 2012].
Pensando ainda na arquitetura é possível estabelecer alguns requisitos para o hardware e o software, de modo que eles supram as necessidades apresentadas pelos sistemas e consigam funcionar sem falhas ou sobrecargas. Abaixo serão listados os requisitos básicos.
• O hardware deve permitir uma comunicação exata entre o sistema de movimentação e os sensores e atuadores.
• O hardware deve ser robusto, não pode ser afetado por ruídos e vibrações mecânicas.
• O hardware deve permitir monitoramento a distância.
• O hardware não pode interferir no funcionamento normal do veículo.
• O hardware deve oferecer segurança e suporte a sistemas de emergência.
• O software deve processar a informação para facilitar o seu entendimento para todos os sistemas.
• O software deve ser capaz de atender as demandas de tempo requeridas.
• O software deve ser tolerante a perturbações e falhas.
Com todos esses requitos atendidos o sistema consegue operar sem problemas e ainda permite que possam haver ampliações na rede sem que seja necessária a troca do sistema [Arruda, 2012].
1.1.2. Protocolos de comunicação
Para que todos os sistemas consigam comunicar com o carro e entre si eles necessitam de protocolos de comunicação. Esses protocolos são regras que devem ser seguidas para que seja possível a conexão, a comunicação e a troca de informações entre dois sistemas distintos. Dentre os vários protocolos usados podem ser citados alguns como CAN, DeviceNet, Profibus, Foundation Fieldbus, Ethetnet e o Modbus.
O CAN (Controller Area Network) é um protocolo de comunicação serial, isso porque cada mensagem tem um tempo determinada para ser enviada a rede para que não haja conflitos e alguma se perca, além da alta taxa de transmissão de dados. Possue função multi-mestre, qualquer módulo da rede pode se tornar mestre, e multicast , as mensagens enviadas a rede são enviadas para todos os módulos e esses iram decidir se a mensagem é relevante ou não para ele. O barramento CAN consegue verificar se não está sendo enviada uma mensagem com maior prioridade que as que estão aguardando para serem enviadas, desse modo ele consegue agilizar o envio de uma mensagem de maior importância. Uma das maiores vantagens do protocolo CAN é a robustez e a capacidade de se adaptar as condições de falha [Guimarães e Saraiva, 2002] .
DeviceNet é um protocolo derivado do CAN, adaptado pra trabalhar com equipamentos desde os básicos até os mais complexos. Tem como características: alta velocidade, comunicação a nível de byte e alto poder de diagnósticos de dispositivos na rede. A tecnologia DeviceNet tem como objetivo transportar dois tipos de informações, dados cíclicos de sensores e atuadores e dados acíclicos indiretamente relacionados com as configurações e com diagnósticos [Amgarten e Santos, 2014] .
O Profibus foi criado por volta dos anos de 1987 e adota o comportamento mestre-escravo. Mestre é aquele capaz de enviar mensagens independente de solicitações externas quando tem a posse do token. Já o escravo não possue direito de acesso ao barramento e podem apenas confirmar o recebimento de mensagens ou receber uma mensagem enviada por um mestre. Um token é passado por entre os mestre de modo que eles possam compartilhar o controle do barramento, isso é feito seguindo uma posição lógica e dentro de um tempo determinado [Arruda, 2009].
Foundation Fieldbus é uma rede que interliga instrumentos inteligentes dentro de um sistema. Ela apresenta várias vantagens como redução do custo de fiação, comunicação bidirecional, diagnóstico de falhas além de possuir uma segurança intrínseca [Santana, 2006].
O Ethernet Industrial vem tomando o espaço do protocolo Ethernet tradicional. O protocolo industrial tende a disputar espaços hoje ocupados pelo Profibus e pela Foundation Fieldbus devido a sua simplicidade, alta velocidade e aceitação [Arruda, 2009].
Já o Modbus é um protocolo de mensagens e provê uma comunicação cliente/servidor entre dispositivos conectados em diferentes tipos de barramentos ou redes. Este protocolo é o mais utilizado quando se diz respeito a indústria, pela sua simplicidade e facilidade de implementação. O mestre é o único que pode iniciar uma transação chamada queries. Os escravos respondem suprindo os dados requisitados pelo mestre ou executando uma ação por ele imposta [Arruda, 2009].
1.1.3. Interface de supervisão e controle
Para que o carro possa funcionar perfertamente é necessário que seja desenvolvida uma interface de forma a integregar os sistemas de atuação, associado com os sensores presentes no veículo.
Na construção da interface é necessário a descrição de um modelo de movimento do veículo. Em [Choset et al., 2005] é descrito um movimento chamado de Ackerman, onde o carro será uma caixa com quatro rodas, conforme a Figura 2. A tração desde veículo é dianteira e as velocidades das rodas dianteiras podem ser conhecidas por meio de sensores que estarão ligados nelas.
Figura 2 : Modelo de Ackerman para um automóvel [Sabbagh, 2009]
Neste modelo, o ângulo que a roda δ(t) faz é calculado através da média dos ângulos das duas rodas dianteiras que são diferentes entre si. A velocidade v(t) também é dada pela média das velocidades das duas rodas. É necessário que seja considerada a distância L para estimar a orientação do veículo.
Algumas equações como as descrita abaixo, podem representar as posições que o veículo irá percorrer em seu movimento.
x(t) = v(t).cos(ψT(t) - δ(t))
y(t) = v(t).sen(ψT(t) - δ(t))
ψT(t) = (v(t)/L).
...