Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis

The newest generation of automotive vehicles, including autonomous vehicles, is evermore connected to its components and even to other vehicles as well through the Internet of Things, which expands well beyond the current scenario of entertainment applications offered by companies in the market toda...

ver descrição completa

Autor principal: Lazarotto, Tiago
Formato: Trabalho de Conclusão de Curso (Graduação)
Idioma: Português
Publicado em: Universidade Tecnológica Federal do Paraná 2020
Assuntos:
Acesso em linha: http://repositorio.utfpr.edu.br/jspui/handle/1/14619
Tags: Adicionar Tag
Sem tags, seja o primeiro a adicionar uma tag!
id riut-1-14619
recordtype dspace
spelling riut-1-146192020-11-18T14:02:01Z Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis Driver and interface development in Linux operational system for sensor and actuator control in automabiles Lazarotto, Tiago Denardin, Gustavo Weber Denardin, Gustavo Weber Vargas, Diogo Ribeiro Favarim, Fábio Borsoi, Beatriz Terezinha Linux device drivers (Programas de computador) Redes locais sem fio Detectores Linux (Sistema operacional de computador) Linux device drivers (Computer programs) Wireless LANs Detectors Linux (Computer software) CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO The newest generation of automotive vehicles, including autonomous vehicles, is evermore connected to its components and even to other vehicles as well through the Internet of Things, which expands well beyond the current scenario of entertainment applications offered by companies in the market today. Having that in mind, this paper contemplates the development of a device driver and a communication API in the Debian distribution of the Linux operational system, driver which will be developed using C language through a remote debugger that uses the libraries already present in that operational system, which is adopted by the BeagleBone Black platform, used as the main device of the network. The driver's objective is to control a wireless network of vehicular sensors and actuators in a modular way, following the CAN network device identifiers used in automobiles, using the transceiver MRF24J40MA to communicate between these devices, as this transceiver adopts the IEEE 802.15.4 standard. In order to allow communication between high level programs and the driver, an API was created to be invoked by system call in a way that it will communicate with the main driver through local sockets and threads, allowing it to have a multiclient channel to attend multiple system calls, through which information can be solicitated regarding specific sensors or action commands can be delivered to actuators. For the development of both the driver and API, a remote debugger will be configured between a general-purpose computer (PC) and the Debian platform in order to utilize the libraries contained in it and facilitate the development when using a graphical interface, in this case, NetBeans. The main driver will contain both SPI and Transceiver drivers, as well as the Module Controller together with the sensors and actuators sub-drivers. With the main device completed, it a necessity to have another microcontroller to establish the wireless communication and emulate a sensor or actuator in the network, and for that purpose the FRDM KL25Z platform from NXP was chosen. One of the acquired results was the successful remote debugging of the driver, which allowed for a successful demonstration of the module imports and the SPI and Transceiver drivers configurations. The result of the API system call can also be visualized and confirmed, and through these facts it can be concluded that this paper brings a contribution to the automotive platforms that opt for using wireless sensors and actuators, with the idea of making these vehicles more affordable. This paper also brings contribution to remote debugging and modularization of C language libraries. As a contribution to all the development community, the resulting code of this paper is available as an open source project in GitHub, as described in the conclusion of the paper. A mais nova geração de veículos automotivos, incluindo os veículos autônomos, está cada vez mais conectada aos seus componentes e até mesmo com outros veículos por meio da Internet das Coisas, o que vai muito além dos aplicativos de entretenimento oferecidos pelas empresas do mercado hoje. Tendo isso em vista, este trabalho contempla o desenvolvimento de um driver de dispositivo e uma API de comunicação na distribuição do sistema operacional Linux chamada Debian, driver o qual será desenvolvido em linguagem C por meio de um depurador remoto que se utiliza das bibliotecas desse sistema operacional, o qual é adotado pela plataforma BeagleBone Black, que será utilizada como o dispositivo central da rede. O driver tem por objetivo controlar uma rede sem fio de sensores e atuadores veiculares de forma modular, obedecendo os identificadores desses dispositivos, utilizados na rede CAN de automóveis sendo que, para a comunicação entre os dispositivos, será utilizado o transceptor MRF24J40MA que segue o padrão IEEE 802.15.4. Para que possa haver uma comunicação por parte de programas de alto nível com o driver, foi criada uma API que é invocada por chamada de sistema, de forma que a mesma vai se comunicar com o driver principal por meio de sockets locais e threads para que se tenha um canal multicliente para atender os chamados da API, nos quais poderão ser solicitadas informações de sensores específicos ou acionamento de determinados atuadores. Para o desenvolvimento do driver e da API será configurado um depurador remoto entre um computador de propósito geral (PC) e a plataforma do Debian, de forma a utilizar as bibliotecas nela contidas e facilitar o desenvolvimento em uma interface gráfica, nesse caso o NetBeans. O Driver Principal será formado dos drivers de SPI e Transceptor, juntamente com o Controlador de Módulos e dos sub-drivers dos sensores e atuadores. Com o dispositivo central pronto, se faz necessário utilizar outro microcontrolador para efetuar a comunicação sem fio e emular um sensor ou atuador da rede, e para isso foi escolhida a plataforma FRDM KL25Z da NXP. Os resultados obtidos foram a depuração remota realizada com sucesso, dessa forma possibilitando também a demonstração da importação bem-sucedida dos módulos e da configuração dos drivers da SPI e do Transceptor. O resultado da chamada de sistema para a API pode também ser visualizado e comprovado, e a partir disso pode-se concluir que o trabalho traz uma contribuição para as plataformas automobilísticas que optarem por utilizar sensores e atuadores sem fio, de forma a baratear a fabricação desses veículos. O trabalho também traz contribuições para depuração remota e modularização de bibliotecas na linguagem C. Como contribuição a toda comunidade de desenvolvimento, o código resultante está disponibilizado como código aberto no GitHub, conforme descrito na conclusão do trabalho. 2020-11-18T14:02:01Z 2020-11-18T14:02:01Z 2018-12-12 bachelorThesis LAZAROTTO, Tiago. Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis. 2018. 57 f. Trabalho de Conclusão de Curso (Graduação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2018. http://repositorio.utfpr.edu.br/jspui/handle/1/14619 por openAccess application/pdf Universidade Tecnológica Federal do Paraná Pato Branco Brasil Departamento Acadêmico de Informática Engenharia de Computação UTFPR
institution Universidade Tecnológica Federal do Paraná
collection RIUT
language Português
topic Linux device drivers (Programas de computador)
Redes locais sem fio
Detectores
Linux (Sistema operacional de computador)
Linux device drivers (Computer programs)
Wireless LANs
Detectors
Linux (Computer software)
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
spellingShingle Linux device drivers (Programas de computador)
Redes locais sem fio
Detectores
Linux (Sistema operacional de computador)
Linux device drivers (Computer programs)
Wireless LANs
Detectors
Linux (Computer software)
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Lazarotto, Tiago
Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis
description The newest generation of automotive vehicles, including autonomous vehicles, is evermore connected to its components and even to other vehicles as well through the Internet of Things, which expands well beyond the current scenario of entertainment applications offered by companies in the market today. Having that in mind, this paper contemplates the development of a device driver and a communication API in the Debian distribution of the Linux operational system, driver which will be developed using C language through a remote debugger that uses the libraries already present in that operational system, which is adopted by the BeagleBone Black platform, used as the main device of the network. The driver's objective is to control a wireless network of vehicular sensors and actuators in a modular way, following the CAN network device identifiers used in automobiles, using the transceiver MRF24J40MA to communicate between these devices, as this transceiver adopts the IEEE 802.15.4 standard. In order to allow communication between high level programs and the driver, an API was created to be invoked by system call in a way that it will communicate with the main driver through local sockets and threads, allowing it to have a multiclient channel to attend multiple system calls, through which information can be solicitated regarding specific sensors or action commands can be delivered to actuators. For the development of both the driver and API, a remote debugger will be configured between a general-purpose computer (PC) and the Debian platform in order to utilize the libraries contained in it and facilitate the development when using a graphical interface, in this case, NetBeans. The main driver will contain both SPI and Transceiver drivers, as well as the Module Controller together with the sensors and actuators sub-drivers. With the main device completed, it a necessity to have another microcontroller to establish the wireless communication and emulate a sensor or actuator in the network, and for that purpose the FRDM KL25Z platform from NXP was chosen. One of the acquired results was the successful remote debugging of the driver, which allowed for a successful demonstration of the module imports and the SPI and Transceiver drivers configurations. The result of the API system call can also be visualized and confirmed, and through these facts it can be concluded that this paper brings a contribution to the automotive platforms that opt for using wireless sensors and actuators, with the idea of making these vehicles more affordable. This paper also brings contribution to remote debugging and modularization of C language libraries. As a contribution to all the development community, the resulting code of this paper is available as an open source project in GitHub, as described in the conclusion of the paper.
format Trabalho de Conclusão de Curso (Graduação)
author Lazarotto, Tiago
author_sort Lazarotto, Tiago
title Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis
title_short Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis
title_full Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis
title_fullStr Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis
title_full_unstemmed Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis
title_sort desenvolvimento de driver e interface em sistema operacional linux para controle de sensores e atuadores em automóveis
publisher Universidade Tecnológica Federal do Paraná
publishDate 2020
citation LAZAROTTO, Tiago. Desenvolvimento de driver e interface em sistema operacional Linux para controle de sensores e atuadores em automóveis. 2018. 57 f. Trabalho de Conclusão de Curso (Graduação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2018.
url http://repositorio.utfpr.edu.br/jspui/handle/1/14619
_version_ 1805305297624891392
score 10,814766