• Nenhum resultado encontrado

56 Capítulo 5. Resultados e Discussões

57

6 Conclusão

O tema do trabalho está relacionado com o desenvolvimento de um sistema baseado em FPGA capaz de enviar informações sobre a frequência de sinais biológicos das células cardíacas para um dispositivo com sistema Android através do protocolo Bluetooth.

Seguindo o tema do trabalho foi então possível se verificar o desenvolvimento de um sistema de comunicação baseado em FPGA utilizando um processador MIPS embarcado para processar os sinais torácicos e abdominais maternos a fim de encontrar a FHR e assim enviar as informações da FHR para o dispositivo com sistema Android para apresentação da mesma na tela.

A medição da frequência cardíaca fetal, FHR, e de sua variação contribui para a diminuição de mortalidade fetal por problemas de má formações no músculo cardíaco, que fazem com que o mesmo não consiga executar seu trabalho. Apresentando essa medicação da FHR na tela de um dispositivo com sistema Android auxilia no monitoramento da frequência e prevenir quanto antes um problema que possa existir no coração do feto.

O protocolo Bluetooth como meio de comunicação entre o FPGA e o dispositivo com sistema Android é uma alternativa que permite a troca de informações entre os dis-positivos sem que haja a necessidade de fios para isto. O Bluetooth funciona em uma frequência segura para a saúde, em torno de 2.5 GHz, permitindo que seu uso não preju-dique a saúde do feto e da mãe. Um ponto negativo quanto ao uso doBluetooth prove da distância com que a conexão ocorre, podendo ser de até 10 m ou 100 m dependendo da potência do transmissor.

Aplicativos são ferramentas que nos dias atuais são bastantes utilizadas seja para entretenimento seja para o uso profissional. O aplicativo desenvolvido apresentou bons resultados e mostrou ser capaz de viabilizar um monitoramento da FHR, tendo a possi-bilidade de salvar as frequências recebidas em um arquivo e podendo compartilhar esse arquivo. Notificações como alertas ao usuário da FHR acima ou abaixo do esperado, auxiliam para que se tenha um monitoramento seguro do feto.

O projeto do sistema desenvolvido mostrou-se eficiente e sua implementação trouxe bons resultados tanto no processamento da FHR através do MIPSfpga quanto na trans-missão de informações entre a FPGA e o dispositivo com sistema Android. O MIPSfpga se mostrou um processador de bom desempenho para garantir o seu uso em diferentes kits de desenvolvimento, tendo pouca ou nenhuma adaptação. Para projetos futuros espera-se o desenvolvimento de um aplicativo capaz de desenhar o sinal da frequência da ECG materna e do feto em tempo real e o desenvolvimento de uma UART completa para que o aplicativo também seja capaz de requisitar informações ao processador, de modo que a

58 Capítulo 6. Conclusão

transmissão dos dados sejam dadas de forma segura e com confiabilidade.

59

Referências

AAMODT, L. J. J. FPGA Based Development Platform for Biomedical Measurements.

Dissertação (Mestrado) — Department of Physics - University of Oslo, 2013. Citado na página 17.

ALECRIM, E. Processadores: clock, bits, memoria, cache e múltiplos núcleos. 2008.

<http://www.infowester.com/processadores.php>. Accessed: 2016-06-05. Citado na página 26.

ALTERA. Nios II Embedded Design Suite. [S.l.], 2016. Accessed: 2016-06-07. Citado na página 38.

ALTERA. Nios II Gen 2 Processor Reference Guide. [S.l.], 2016. Accessed: 2016-06-05.

Citado 2 vezes nas páginas 11 e27.

ALTERA. Quartus II Web Edition. [S.l.], 2016. Accessed: 2016-06-07. Citado na página 39.

ANDROID. Android Interfaces and Architecture. 2016. <https://source.android.com/

devices/>. Accessed: 2016-06-02. Citado 2 vezes nas páginas11 e34.

ANDROID. Application Fundamentals. 2016. <https://developer.android.com/guide/

components/fundamentals.html>. Accessed: 2016-06-02. Citado na página 35.

ANDROID. Getting Started with the NDK). 2016. <https://developer.android.com/

ndk/guides/index.html>. Accessed: 2016-06-02. Citado na página 33.

ARDUINO. Arduino. 2016. <https://www.arduino.cc/>. Accessed: 2016-11-22. Citado na página 41.

BORGES, F. Transmissão de dados - Documento Técnico n3. [S.l.], 2013. Citado 3 vezes nas páginas 11, 29e 30.

CENTRE, N. R. . D. Bluetooth Transceiver HC-05 TTL Module. [S.l.], 2016. Accessed:

2016-06-08. Citado 2 vezes nas páginas 11e 39.

DANTAS, M. Tecnologias de Redes de Comunicação e Computadores. [S.l.]: Axcel Books, 2002. Citado 2 vezes nas páginas 11e 30.

FLETCHER, B. H. Fpga embedded processors: revealing true system performance. In:

Embedded Systems Conference. [S.l.: s.n.], 2005. p. 1–18. Citado na página 26.

GARTNER. Gartner Says Worldwide Smartphone Sales Grew 9.7 Percent in Fourth Quarter of 2015. 2016. <http://www.gartner.com/newsroom/id/3215217>. Accessed:

2016-06-02. Citado na página 33.

HARDING, R. C. e B. Basics of core-based FPGA design: Part 1 – core types and trade-offs. 2011. <http://www.embedded.com/design/configurable-systems/4218841/

1/The-basics-of-core-based-FPGA-design--Part-1---core-types---trade-offs>. Accessed:

2016-06-05. Citado 3 vezes nas páginas 11, 25 e26.

60 Referências

HASAN, M.; IBRAHIMY, M. I.; REAZ, M. B. I. Techniques of fecg signal analysis:

detection and processing for fetal monitoring. WIT Transactions on Biomedicine and Health, WIT Press, v. 12, p. 295–305, 2007. Citado na página 22.

HASAN, M. et al. Fetal ecg extraction from maternal abdominal ecg using neural network. Journal of Software Engineering and Applications, Scientific Research Publishing, v. 2, n. 05, p. 330, 2009. Citado 2 vezes nas páginas11e 23.

HAUCK, S.; DEHON, A. Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation. [S.l.]: Morgan Kaufmann, 2010. Citado na página 24.

HUSEBY, M. K. FPGA Based Development Platform for Biomedical Measurements -ECG Module. Dissertação (Mestrado) — Department of Physics - University of Oslo, 2013. Citado na página 18.

IMAGINATION.Getting Started Guide. [S.l.], 2015. 138 p. Citado 6 vezes nas páginas 11, 28, 29,41, 44e 48.

INSTRUMENTS, T. KeyStone Architecture, Universal Asynchronous Recei-ver/Transmitter (UART) - User Guide. [S.l.], 2010. Citado na página31.

LAMESGIN, G.; KASSAW, Y.; ASSEFA, D. Extraction of fetal ecg from abdominal ecg and heart rate variability analysis. In: SPRINGER.Afro-European Conference for Industrial Advancement. [S.l.], 2015. p. 65–76. Citado na página 23.

LEUNG, M. Fetal ECG Project. 2013. <http://mtleung.weebly.com/fetal-ecg.html>.

Accessed: 2016-06-06. Citado 2 vezes nas páginas11 e43.

LINOTUX. HC-03/05 Embedded Bluetooth Serial Communication Module AT command set. [S.l.], 2011. Accessed: 2016-06-08. Citado na página39.

MICROSHIP. Serial Peripheral Interface Bus. 2016. <http://ww1.microchip.com/

downloads/en/devicedoc/spi.pdf>. Accessed: 2016-05-10. Citado na página 32.

MIT. MIT App Inventor. 2016. <http://explore.appinventor.mit.edu/about-us>.

Accessed: 2016-11-21. Citado na página 40.

MONTEIRO, J. B.Google Android Crie aplicações para celulares e tablets. [S.l.]: Casa do Código, 2012. Citado 2 vezes nas páginas11 e 35.

PALANIAPPAN, R. Biological signal analysis. In:Biological Signal Analysis. [S.l.: s.n.], 2010. p. 11–14. Citado 2 vezes nas páginas17 e21.

PROGRAM, T. . A. U. DE1 – SoC: User Manual. [S.l.], 2015. Accessed: 2016-06-07.

Citado 3 vezes nas páginas 11, 37e 38.

SACCO, F. Comunicação SPI – Parte 1. 2014. <http://www.embarcados.com.br/

spi-parte-1/>. Accessed: 2016-05-10. Citado 2 vezes nas páginas 11e 32.

SAIRAM, K. V.; GUNASEKARAN, N.; REDD, S. R. Bluetooth in wireless

communication. Comm. Mag., IEEE Press, Piscataway, NJ, USA, v. 40, n. 6, p. 90–96, jun. 2002. ISSN 0163-6804. Disponível em: <http://dx.doi.org/10.1109/MCOM.2002.

1007414>. Citado na página 33.

Referências 61

SUMAN, R. P. UART: Universal Asynchronous Receiver Transmitter. 2016.

<http://students.iitk.ac.in/eclub/assets/lectures/summer12/uart.pdf>. Accessed:

2016-05-10. Citado 2 vezes nas páginas 11e 31.

TERASIC. DE1-SoC GPIO. 2016. <http://terasic.yubacollegecompsci.com/GPIO.

html>. Acessed: 2016 -11-28. Citado 2 vezes nas páginas 11e 49.

WEDRO, B.; KULICK, D. L.; DAVIS, C. P. Eletrocardiogram (ECG). 2016.

<http://www.emedicinehealth.com/electrocardiogram_ecg/page2_em.htm#basic_

anatomy_of_the_heart>. Accessed: 2016-06-04. Citado na página 21.

WIKIPEDIA. Eletrocardiography. 2016. <https://en.wikipedia.org/wiki/

Electrocardiography>. Accessed: 2016-06-04. Citado 3 vezes nas páginas 11, 21 e 22.

XILINX. Field Programmable Gate Array (FPGA). 2016. <http://www.xilinx.com/

training/fpga/fpga-field-programmable-gate-array.htm>. Accessed: 2016-05-01. Citado na página 23.

ZEIDMAN, B. Introduction to Programmable Systems on a Chip. 2005. <http:

//www.eetimes.com/document.asp?doc_id=1274457>. Accessed: 2016-05-01. Citado 3 vezes nas páginas 11, 24e 25.

Anexos

65

ANEXO A – Implementação do MIPSfpga

Para o teste da implementação do MIPSfpga utilizando o kit DE1-SoC após a alteração dos arquivos originais foi necessário o uso dos arquivos reset-init.txt e ram-program-init.txt, ambos fornecidos pela Imagination, para o programa ser rodado no FPGA. O programa fornecido, depois de compilado, faz com que cada switch acione seu LED correspondente. Por exemplo, ao se acionar o SW1 em nível alto, o LED LEDR1 acende e assim para todos os outros switches. As Figuras 30 e 31 mostram o programa em funcionamento na placa FPGA.

66 ANEXO A. Implementação do MIPSfpga

Figura 30:Switches SW[0] - SW[5] acionados e seus respectivos LEDs acesos.

67

Figura 31:Switches SW[3] - SW[7] acionados e seus respectivos LEDs acesos.

69

ANEXO B – Execução de Códigos em C no MIPSfpga

O código em C utilizado para demonstrar a funcionalidade da execução de códigos C no MIPSfpga foi o da Figura 32 que pode ser visto na próxima página.

No código, os endereços virtuais dos LEDs, pushbuttons e dos displays são utili-zados para acessar os periféricos. A estrutura case avalia os estados dos pushbuttons, e no caso do acionamento do quarto pushbutton, por exemplo, os LEDs acendem com o valor binário correspondente a soma da variável cont e osdisplaysmostram esse valor em decimal. No caso de ser o terceiro pushbutton o acionado, um valor especifico é mostrado tanto nos LEDs quanto nos displays, no caso o valor de 144. As Figuras33 e34mostram o funcionamento do código na placa FPGA.

70 ANEXO B. Execução de Códigos em C no MIPSfpga

Figura 32: Código em C a ser executado no MIPSfpga.

71

Figura 33: Exemplo de execução do código em C: Valor 144 (terceiro pushbutton pressio-nado).

Figura 34: Exemplo de execução do código em C: Valor 58 (quarto pushbutton pressio-nado).

73

ANEXO C – Módulo UART para o canal TX

O módulo UART desenvolvido para funcionar como o canal TX deste tipo de protocolo foi o mostrado pela Figura 35.

O código foi descrito em Verilog e possui duas entradas sendo uma delas o clock do sistema, HCLK, e a outra a informação que se deseja transmitir. A saída do módulo são os bits a serem transmitidos a uma taxa definida e os LEDs vermelhos, LEDR, para indentificar qual o valor está sendo transmitido. Para este módulo foi definido uma taxa de transmissão de 9600 bits por segundo. Oprescaler faz a função de obter a taxa de 9600 bps, fazendo com que os bits sejam transmitidos de acordo com o desejado. Vale ressaltar que esta UART descrita vale apenas para valores de até 8 bits, ou seja, valores que estão entre 0 e 255.

74 ANEXO C. Módulo UART para o canal TX

Figura 35: UART-TX em Verilog.

75

ANEXO D – Aplicativo Android

O aplicativo Android foi desenvolvido através da ferramentaMIT App Inventor 2.

A ferramenta possibilita o design do layout do aplicativo e também a adição de blocos funcionais para descrever o que deve acontecer no aplicativo. Existem dois editores na ferramenta que são essenciais para o desenvolvimento de um aplicativo, o editor de DE-SIGNER e o editor de BLOCKS.O editor DESIGNER se define o layout do aplicativo e nele os componentes que serão utilizados são adicionados. Por exemplo, onde os botões devem ficar e como deve ser o alinhamento destes botões, onde os textos devem aparecer e suas fontes, são recursos que são realizados no editor DESIGNER. No editor BLOCKS as funções de cada componente adicionados no editor DESIGNER deve ser descrito, ou seja, neste editor a cada componente adicionado será descrito o seu comportamento. Por exemplo, para um dado botão ao clicar-se no mesmo uma nova tela deve abrir ou uma mensagem deve aparecer, as definições destas tarefas são realizadas no editor BLOCKS.

A tela inicial do aplicativo Android desenvolvido foi estabelecido no editor DESIG-NER e seu layout pode ser conferido na Figura 36. Nota-se que componentes tais como notifier, bluetooth, clock, file eshare foram adicionados, mas não aparecem nolayout, isso deve ao fato de serem componentes não visíveis ao usuário, diferentemente do que são os botões e textos, que são componentes visíveis ao usuário, mas podendo ser alterados para não visíveis.

Para a definição das tarefas de cada componente adicionado no editorDESIGNER

Figura 36: Layout do aplicativo FHR Monitor.

76 ANEXO D. Aplicativo Android

pequenos blocos no editor BLOCKS devem ser montados para que essas tarefas sejam alcançadas. Na Figura37tem-se os blocos realizados para cada uma das tarefas específicas aos componentes adicionados. Um bloco que merece atenção é o da componenteclock 2, onde nele são definidos os valores que notificam ao usuário se o valor da FHR recebida está nos limites estabelecidos e conforme o valor da FHR vai sendo recebido pelo aplicativo a cor do texto se altera de acordo com o limite estabelecido, ou seja, caso a FHR tenha valores menores que 118 bpm ou valores maiores a 165 bpm o texto com o valor da FHR aparece em vermelho e alerta o usuário, caso contrário o texto apresenta a FHR em azul, indicando um valor normal da FHR.

77

Figura 37: Blocos do aplicativo FHR Monitor.

79

ANEXO E – Arduíno - FPGA

Os resultados dos testes de hardware realizados para a comunicação entre o Ar-duíno e o FPGA estão nas figuras abaixo. O teste utilizando o MIPSfpga implementado com a estimação da FHR (142) e o Arduíno também se encontra nas figuras abaixo.

80 ANEXO E. Arduíno - FPGA

Figura 38: Teste dehardware entre o FPGA e Arduíno com valor 15.

Figura 39: Teste de hardware entre o FPGA e Arduíno com valor 15 no terminal.

81

Figura 40: Teste dehardware entre o FPGA e Arduíno com valor 206.

82 ANEXO E. Arduíno - FPGA

Figura 41: Teste dehardware entre o FPGA e Arduíno com valor 206 no terminal.

Figura 42: Teste de hardware entre o MIPSfpga implementado e Arduíno com valor 142.

Documentos relacionados