Communication system for embedded systems

Detalhes bibliográficos
Autor(a) principal: Diogo Jorge Freitas Cadavez
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: https://hdl.handle.net/10216/135719
Resumo: This thesis aims at developing a generic communication system for embedded systems. In our days, reliable and in real time data is very valuable, as this data can be used to optimize the performance of a given system, or to prevent system failures, so having a generic communication system, that can be used for the different case scenarios, where we can find a computer monitoring the behaviour of a microcontroller, and that is able to deliver data in the conditions described above has high value. Because of this the main purpose of creating a system like this is to offer a standard platform that can be used by whoever needs to establish some sort of communication between a microcontroller and a desktop or web app, in a more user friendly way, as by using this platform the user doesn't need to worry about the communication part, taking away all the frustration and difficulties that can arise from doing that task. The work that is going to be presented in this thesis can be divided in three parts parts, a library that handles the communication on the microcontroller side, an API that communicates with the microcontroller and the desktop app, and third a desktop application that shows the data using the communication system. (1) This library is implemented in C and offers the user a range of functions that allow him to easily setup the communication system, as there might be a desire to use different type of communications, this library shall at least support WiFi, this is crucial for situations in which a physical connection is not possible, for example if we want to monitor the function of a self-flying drone that is collecting some kind of data,and also USB and RS485 connections. The last two connections are still very important as sometimes using WiFi is not a reliable option to transfer data. The RS485 has high relevance for the industry, as the environment in which the microcontroller is going to be used has a lot of noise, or implicates having a long distance connection between the microcontroler and the main controller/computer. (2) This API is developed in JavaScript to receive the data from the microcontroller and send it to the application, the reverse can also happen. (3) The application was developed using Electron, that is a node.js package to build cross-platform desktop apps using JavaScript, HTML and CSS. This app will monitor the microcontroller and provide the user information about the behavior of the system, to do this the user can configure the app to show the variables specified in the code that runs on the microcontroller. Apart from the feedback that the app provides, the user also has the possibility to change the value of those variables and send it to the microcontroller. The received data can also be displayed in graphs, where the user can choose the variables that he pretends to correlate. This system can also offer another feature for the user, talking now about the developing part of a project, where the user can use this system as a way of doing debug in a more easy and organized way.
id RCAP_e33539bf5b9335fc0dc0c375a5b6dc1a
oai_identifier_str oai:repositorio-aberto.up.pt:10216/135719
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Communication system for embedded systemsEngenharia electrotécnica, electrónica e informáticaElectrical engineering, Electronic engineering, Information engineeringThis thesis aims at developing a generic communication system for embedded systems. In our days, reliable and in real time data is very valuable, as this data can be used to optimize the performance of a given system, or to prevent system failures, so having a generic communication system, that can be used for the different case scenarios, where we can find a computer monitoring the behaviour of a microcontroller, and that is able to deliver data in the conditions described above has high value. Because of this the main purpose of creating a system like this is to offer a standard platform that can be used by whoever needs to establish some sort of communication between a microcontroller and a desktop or web app, in a more user friendly way, as by using this platform the user doesn't need to worry about the communication part, taking away all the frustration and difficulties that can arise from doing that task. The work that is going to be presented in this thesis can be divided in three parts parts, a library that handles the communication on the microcontroller side, an API that communicates with the microcontroller and the desktop app, and third a desktop application that shows the data using the communication system. (1) This library is implemented in C and offers the user a range of functions that allow him to easily setup the communication system, as there might be a desire to use different type of communications, this library shall at least support WiFi, this is crucial for situations in which a physical connection is not possible, for example if we want to monitor the function of a self-flying drone that is collecting some kind of data,and also USB and RS485 connections. The last two connections are still very important as sometimes using WiFi is not a reliable option to transfer data. The RS485 has high relevance for the industry, as the environment in which the microcontroller is going to be used has a lot of noise, or implicates having a long distance connection between the microcontroler and the main controller/computer. (2) This API is developed in JavaScript to receive the data from the microcontroller and send it to the application, the reverse can also happen. (3) The application was developed using Electron, that is a node.js package to build cross-platform desktop apps using JavaScript, HTML and CSS. This app will monitor the microcontroller and provide the user information about the behavior of the system, to do this the user can configure the app to show the variables specified in the code that runs on the microcontroller. Apart from the feedback that the app provides, the user also has the possibility to change the value of those variables and send it to the microcontroller. The received data can also be displayed in graphs, where the user can choose the variables that he pretends to correlate. This system can also offer another feature for the user, talking now about the developing part of a project, where the user can use this system as a way of doing debug in a more easy and organized way.2021-07-212021-07-21T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/10216/135719TID:203196830engDiogo Jorge Freitas Cadavezinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-11-29T15:27:36Zoai:repositorio-aberto.up.pt:10216/135719Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T00:24:12.239465Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Communication system for embedded systems
title Communication system for embedded systems
spellingShingle Communication system for embedded systems
Diogo Jorge Freitas Cadavez
Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
title_short Communication system for embedded systems
title_full Communication system for embedded systems
title_fullStr Communication system for embedded systems
title_full_unstemmed Communication system for embedded systems
title_sort Communication system for embedded systems
author Diogo Jorge Freitas Cadavez
author_facet Diogo Jorge Freitas Cadavez
author_role author
dc.contributor.author.fl_str_mv Diogo Jorge Freitas Cadavez
dc.subject.por.fl_str_mv Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
topic Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
description This thesis aims at developing a generic communication system for embedded systems. In our days, reliable and in real time data is very valuable, as this data can be used to optimize the performance of a given system, or to prevent system failures, so having a generic communication system, that can be used for the different case scenarios, where we can find a computer monitoring the behaviour of a microcontroller, and that is able to deliver data in the conditions described above has high value. Because of this the main purpose of creating a system like this is to offer a standard platform that can be used by whoever needs to establish some sort of communication between a microcontroller and a desktop or web app, in a more user friendly way, as by using this platform the user doesn't need to worry about the communication part, taking away all the frustration and difficulties that can arise from doing that task. The work that is going to be presented in this thesis can be divided in three parts parts, a library that handles the communication on the microcontroller side, an API that communicates with the microcontroller and the desktop app, and third a desktop application that shows the data using the communication system. (1) This library is implemented in C and offers the user a range of functions that allow him to easily setup the communication system, as there might be a desire to use different type of communications, this library shall at least support WiFi, this is crucial for situations in which a physical connection is not possible, for example if we want to monitor the function of a self-flying drone that is collecting some kind of data,and also USB and RS485 connections. The last two connections are still very important as sometimes using WiFi is not a reliable option to transfer data. The RS485 has high relevance for the industry, as the environment in which the microcontroller is going to be used has a lot of noise, or implicates having a long distance connection between the microcontroler and the main controller/computer. (2) This API is developed in JavaScript to receive the data from the microcontroller and send it to the application, the reverse can also happen. (3) The application was developed using Electron, that is a node.js package to build cross-platform desktop apps using JavaScript, HTML and CSS. This app will monitor the microcontroller and provide the user information about the behavior of the system, to do this the user can configure the app to show the variables specified in the code that runs on the microcontroller. Apart from the feedback that the app provides, the user also has the possibility to change the value of those variables and send it to the microcontroller. The received data can also be displayed in graphs, where the user can choose the variables that he pretends to correlate. This system can also offer another feature for the user, talking now about the developing part of a project, where the user can use this system as a way of doing debug in a more easy and organized way.
publishDate 2021
dc.date.none.fl_str_mv 2021-07-21
2021-07-21T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/10216/135719
TID:203196830
url https://hdl.handle.net/10216/135719
identifier_str_mv TID:203196830
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799136157315891200