Modelo Near Bionics
Modelo Near Bionics
Modelo Near Bionics
NEAR BIONICS:
Prótese Transradial de Baixo Custo com Sensoriamento Miométrico por
Infravermelho
MANAUS / AM
2020
1
NEAR BIONICS:
Prótese Transradial de Baixo Custo com Sensoriamento Miométrico por
Infravermelho
MANAUS / AM
2020
2
NEAR BIONICS:
Prótese Transradial de Baixo Custo com Sensoriamento Miométrio por
Infravermelho
________________________________________________
Professor (a): Eng.Esp.Sandiego de Moraes Pereira
Orientador
MANAUS / AM
2020
3
RESUMO
ABSTRACT
SUMÁRIO
INTRODUÇÃO ............................................................................................................ 8
1. REFERENCIAL TEÓRICO ................................................................................ 10
1.1. CONTEXTUALIZAÇÃO: ................................................................................. 10
1.2. JUSTIFICATIVA: ............................................................................................ 12
1.3 OBJETIVOS: .................................................................................................. 12
1.3.1 OBJETIVO GERAL: ................................................................................................................ 12
1.3.2 OBJETIVOS ESPECÍFICOS: .................................................................................................. 12
2. METODOLOGIA DE PESQUISA....................................................................... 13
2.1. INSTRUMENTOS DE PESQUISA .................................................................. 13
2.2. RESULTADOS ............................................................................................... 17
2.2.1. Dados coletados: ...................................................................................................... 17
2.2.2. ANÁLISE DA PESQUISA: ........................................................................................ 20
3.1. LISTA DE MATERIAIS ................................................................................... 24
3.1.1. Bom nível único (tipologia árvore): ...................................................................... 24
3.1.2. Bom multinivel (tipologia tabela) .......................................................................... 25
3.2. RECURSOS EM HARDWARE E SOFTWARE .............................................. 25
3.2.1 Hardware: ................................................................................................................................ 25
3.2.1 Software: .................................................................................................................................. 32
3.3. FLUXOGRAMA .............................................................................................. 44
3.4. ESQUEMÁTICO ............................................................................................. 45
Figura 27 – Print Screen Aplicativo Pt-1. ................................................................... 45
3.5. CROQUI ......................................................................................................... 45
5. CONCLUSÃO .................................................................................................... 55
REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................... 56
OBRAS CONSULTADAS ......................................................................................... 58
8
INTRODUÇÃO
1. REFERENCIAL TEÓRICO
1.1. CONTEXTUALIZAÇÃO:
A deficiência física ainda é algo que afeta as pessoas, não só na
dificuldade da realização de ações que deveriam ser feitas de forma natural,
mas também como uma questão social e estética, que incomoda muitos dos
indivíduos que foram amputados ou possuem má formação congênita. Na
maioria dos casos, as vítimas precisam de acompanhamento psicológico por
causa de problemas ao se reintegrar na sociedade e por causa de distúrbio
pós-traumático.
Cerca de 45 milhões de pessoas possuem algum tipo de deficiência,
segundo o Instituto Brasileiro de Geografia e Estatística (IBGE) pelo censo de
2010, o que representa cerca de 23,9% da população. Dessas pessoas 470 mil
são deficientes vítimas de amputação.
No Norte do Brasil, por exemplo, a situação só é confirmada, analisado os
dados divulgados pela reitoria do departamento de medicina da UEA
(Universidade Estadual do Amazonas), em 2019, que mostra que, hoje, só no
Amazonas, existem cerca de 154 mil pessoas que foram sujeitas a
procedimentos de retirada de membro.
A mão como uma fração do corpo, possui uma extrema importância para
a manipulação do mundo e dos recursos nele incluso, desde trabalhos
manuais, até a digitação em escritórios ou mesmo para realizar gestos e
sinalizações. A partir deste ponto concluímos que as vítimas de amputação
transradial, ou seja, que compreende a mão até o ponto médio do rádio (no
antebraço), são as mais prejudicadas neste quesito. Dos acidentes
ocupacionais notificados de 2004, cerca de 34,2% foram nas mãos.
(PREVIDÊNCIA SOCIAL, 2004).
Em busca de uma solução essas pessoas se deparam com próteses no
mercado das marcas mais evidentes que variam de 3.000,00 até 30.000,00
dólares. A maior parte da população não podendo arcar com este custo
passam muito tempo sem o membro, ressaltando que a pessoa que não
recebe uma prótese em 2 anos após a amputação tem uma maior chance de
desenvolver problemas relacionados à saúde como, por exemplo, depressão.
(TURNER, 2009).
11
1.2. JUSTIFICATIVA:
Os problemas causados pela ausência de um membro superior e um
deles tão importantes quanto a mão e toda a região transradial são o suficiente
para causar um impe cílio enorme na vida de um indivíduo, principalmente se
este nasceu com o membro e o perdeu por amputação, visto que a reabilitação
é muito mais psicológica e social do que física. Se faz de suma importância
uma solução que caiba no orçamento das famílias brasileiras de classe média
e classe baixa para que assim possam tornar seu cotidiano ao mais acessível.
Além do benefício direto de um dispositivo prótese custo benefício, o fato
de ter sido desenvolvido com código aberto (OP) permite que outras pessoas e
intuições possam usufruir das pesquisas e implementações, permitindo
também que o projeto evolua como um todo através de diversas colaborações,
e por fim aproximando cada vez mais as tecnologias, antes inacessíveis, das
pessoas.
1.3 OBJETIVOS:
2. METODOLOGIA DE PESQUISA
2.2. RESULTADOS
3. METODOLOGIA DE PROJETOS
C19
Módulo Steper 3,3 – 5v
25
3.2.1 Hardware:
ESP8266:
Figura 18 – ESP8266 NodeMCU V3.
É ele o responsável por dar vida a prótese, com sua alta qualidade e
resistência, ele é perfeito para esse tipo de prótese, pois possui um torque
elevado e uma vida útil duradoura, para esse tipo de aplicação.
Todas as suas engrenagens são metálicas, possui faixa de rotação de
180 graus e seus conectores são compatíveis com padrão Futaba, Hitec,
Sanwa, GWS e outros.
Especificações:
• Modelo: TowerPro MG995
• Tensão de operação: entre 4,8 V e 7,2 V
• Tipo de Engrenagem: Metálica
• Modulação: Analógica
• Velocidade de operação: 0,17seg/60graus (4,8 V sem
carga)
• Velocidade de operação: 0,13seg/60graus (6,0 V sem
carga)
28
3.2.1 Software:
//Parâmetros:
String versao_s = "R0.6";//Versão do software
String versao_h = "R0.8";//Versão do hardware
String data_up = "20-10-2020";//Data da ultima atualização
//Variáveis Globais:
int numColors = 255;
int animationDelay = 10;
int counter = 0;
int Leitura = 1023;
int valor_crop = 0;
int valor_maximo = 0;
int R = 0;
int G = 0;
int B = 0;
uint8_t degree = 0;
bool servo = true;
bool Enable = false;
bool Cliente = false;
bool Rainbow = true;
bool Sensor_Response = false;
//Bibliotecas:
#include <Servo.h>
#include <ESP8266WiFi.h>
#include <WiFiServer.h>
//Pinos:
#define PIN_RED 5
#define PIN_GREEN 2
#define PIN_BLUE 0
#define TOUCH 12
#define BUZZER 15
#define SENSOR A0
#define SERVO1 4
#define SERVO2 14
#define SERVO2 13
//Declarando Objetos:
Servo servo_dedos;
Servo servo_polegar;
Servo servo_polegar_tilt;
33
void setup(){
//Definindo Pinos:
pinMode(PIN_RED, OUTPUT);
pinMode(PIN_GREEN, OUTPUT);
pinMode(PIN_BLUE, OUTPUT);
pinMode(BUZZER,OUTPUT);
pinMode(SERVO1, OUTPUT);
pinMode(SERVO2, OUTPUT);
pinMode(TOUCH, INPUT);
pinMode(SENSOR, INPUT);
//Desativando Portas:
digitalWrite(PIN_RED, LOW);
digitalWrite(PIN_GREEN, LOW);
digitalWrite(PIN_BLUE, LOW);
//Alinhando Servos:
servo_dedos.write(90);
servo_polegar.write(90);
servo_polegar_tilt.write(180);
//Cabeçalho:
Cabecalho_de_Inicializacao(100);
//Inicialização Sensorial:
digitalWrite(PIN_RED, HIGH);
digitalWrite(PIN_GREEN, LOW);
digitalWrite(PIN_BLUE, LOW);
tone(15,262,200); //DO
delay(100);
digitalWrite(PIN_RED, LOW);
digitalWrite(PIN_GREEN, HIGH);
digitalWrite(PIN_BLUE, LOW);
tone(15,330,200); //MI
delay(100);
digitalWrite(PIN_RED, LOW);
digitalWrite(PIN_GREEN, LOW);
digitalWrite(PIN_BLUE, HIGH);
tone(15,392,200); //SOL
delay(100);
digitalWrite(PIN_RED, LOW);
digitalWrite(PIN_GREEN, LOW);
digitalWrite(PIN_BLUE, LOW);
delay(1000);
Serial.println(" ");
Conectar_Wifi();
34
Serial.println(" ");
if(digitalRead(TOUCH) == HIGH){
Serial.print("Alinhando Servo Motores... ");
servo_dedos.write(40);
servo_polegar.write(110);
delay(1500);
servo_polegar.write(90);
delay(1000);
servo_dedos.write(90);
Serial.println("OK!");
Serial.println(" ");
}
Calibrar();
void loop(){
if (cl.available() > 0)//Verifica se o cliente conectado tem dados para serem lidos.
{
int n = s.length();
if(atoi(char_array) != 0){
Requests(atoi(char_array));
}
35
}
main_loop();
if(Cliente == true){
Serial.println("Saindo do modo de controle via APP...");
Serial.println(" ");
Cliente = false;
}
main_loop();
}
}
delay(1000);
Serial.println("");
delay(time_c);
Serial.println("------------------------------------------------");
delay(time_c);
Serial.println(" Prótese Near Bionics ");
delay(time_c);
Serial.println("------------------------------------------------");
delay(time_c);
Serial.println("Fundação Matias Machline");
delay(time_c);
// Serial.println("Código escrito por José Ricardo 3BM");
delay(time_c);
Serial.println("Versão do Hardware: " + versao_h);
delay(time_c);
Serial.println("Versão do Software: " + versao_s);
delay(time_c);
Serial.println("Data da Ultima Atualização: " + data_up);
delay(time_c);
Serial.println("");
delay(time_c);
void Calibrar(){
Leitura = 1023;
valor_crop = 0;
valor_maximo = 0;
setColor(255,0,0);
tone(15,330,500); //MI
delay(1000);
36
Serial.println("-->Calibrar:");
delay(100);
Serial.println("Coletando dados do sensor, precione o sensor quando quiser...");
valor_crop = analogRead(SENSOR);
Leitura = (2*valor_maximo)/3;
setColor(0,255,0);
tone(15,440,1000); //MI
delay(1000);
setColor(0,0,0);
delay(1000);
void Rainbow_FX(){
float colorNumber = counter > numColors ? counter - numColors: counter;
float saturation = 1;
float brightness = 1;
float hue = (colorNumber / float(numColors)) * 360;
long color = HSBtoRGB(hue, saturation, brightness);
int red = color >> 16 & 255;
int green = color >> 8 & 255;
int blue = color & 255;
void setColor (unsigned char red, unsigned char green, unsigned char blue)
{
analogWrite(PIN_RED, red);
analogWrite(PIN_GREEN, green);
analogWrite(PIN_BLUE, blue);
}
if (_sat == 0.0) {
red = _brightness;
green = _brightness;
blue = _brightness;
37
} else {
if (_hue == 360.0) {
_hue = 0;
}
switch(slice) {
case 0:
red = _brightness;
green = cc;
blue = aa;
break;
case 1:
red = bb;
green = _brightness;
blue = aa;
break;
case 2:
red = aa;
green = _brightness;
blue = cc;
break;
case 3:
red = aa;
green = bb;
blue = _brightness;
break;
case 4:
red = cc;
green = aa;
blue = _brightness;
break;
case 5:
red = _brightness;
green = aa;
blue = bb;
break;
default:
red = 0.0;
green = 0.0;
blue = 0.0;
break;
}
}
void TOUCH_FX(){
int tempo = 0;
setColor(0,0,255);
tone(15,880,100); //SOL
tone(15,880,100); //SOL
Serial.println("Reiniciando...");
Serial.println(" ");
delay(1000);
setup();
}
}
void Fim_Curso(){
servo_polegar.write(80);
servo_dedos.write(80);
delay(3000);
servo_dedos.write(90);
servo_polegar.write(90);
void Abrir_Fechar(){
tone(15,880,500); //SOL
setColor(255,255,0);
if(servo == true){
Serial.print("Gatilho! Fechando...");
for (int pos = 180; pos >= 110; pos -= 1) {
servo_polegar_tilt.write(pos);
delay(5);
}
servo_dedos.write(120);
delay(1700);
servo_polegar.write(70);
delay(1500);
servo_polegar.write(90);
delay(1500);
servo_dedos.write(90);
delay(10);
Serial.println("OK!");
servo = false;
39
}
else{
Serial.print("Gatilho! Abrindo...");
servo_dedos.write(40);
servo_polegar.write(110);
delay(1500);
servo_polegar.write(90);
delay(1000);
servo_dedos.write(90);
for (int pos = 110; pos <= 180; pos += 1) {
servo_polegar_tilt.write(pos);
delay(5);
}
Serial.println("OK!");
servo = true;
}
}
void main_loop(){
int i = analogRead(SENSOR);
TOUCH_FX();
Abrir_Fechar();
delay(900);
if(Rainbow == true){
Rainbow_FX(); //Efeito de cor dos Leds
}
else{
setColor(R,G,B);
delay(10);
}
}
void Conectar_Wifi(){
Serial.print("Conectando a Rede");
WiFi.mode(WIFI_STA);
WiFi.begin("Casa Exemplo", "FMMmecabm");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Ip do Modulo:");
Serial.println(WiFi.localIP());
sv.begin();
Serial.println("Servidor Inicializado!");
//Lista de Comandos:
//1 - Abrir/Fechar
//2 - Setar Cor do Led
//3 - Liga/Desliga efeito Arco-ìris
//4 - Fim de Curso
//5 - Requitar dados do Sensor
//6 – Calibrar
bool prioridade_C = 0;
int prioridade_S = 0;
if(prioridade_C == 1){
if(prioridade_S == 3){
B = (int) req;
prioridade_S = 0;
prioridade_C = 0;
Rainbow = false;
Serial.print("Setando Cor do LED (");
Serial.print(R);
Serial.print(",");
Serial.print(G);
Serial.print(",");
Serial.print(B);
Serial.println(")");
tone(15,880,100); //SOL
tone(15,880,100); //SOL
}
else if(prioridade_S == 2){
B = (int) req;
prioridade_S++;
}
41
if(prioridade_C == 0){
if(req == 1){
Serial.print("OK! ");
Abrir_Fechar();
delay(950);
}
if(req == 2){
prioridade_C = 1;
}
if(req == 3){
Rainbow = true;
tone(15,880,100); //SOL
tone(15,880,100); //SOL
Serial.println(" ");
Serial.println("Ativando modo Arco-Iris");
Serial.println(" ");
}
if(req == 4){
tone(15,880,100); //SOL
tone(15,880,100); //SOL
Serial.println(" ");
Calibrar();
Serial.println(" ");
}
if(req == 6){
while(true){
int T = analogRead(SENSOR)-25;
cl.println(T - valor_crop);
delay(100);
if(digitalRead(TOUCH) == HIGH){
tone(15,880,100); //SOL
tone(15,880,100); //SOL
break;
}
}
}
42
delay(10);
}
delay(11);
}
Aplicativo:
Figura 25 – Print Screen Aplicativo Pt-1. Figura 26 – Print Screen Aplicativo Pt-2.
3.3. FLUXOGRAMA
45
3.4. ESQUEMÁTICO
3.5. CROQUI
5. CONCLUSÃO
REFERÊNCIAS BIBLIOGRÁFICAS
Peixoto, A. M., Zimpel, S. A., Oliveira, A. C. A. de, Monteiro, R. L. S., & Carneiro, T. K. G.
(2017).
Prevalência de amputações de membros superiores e inferiores no estado de
Alagoas atendidos pelo SUS entre 2008 e 2015. Fisioterapia e Pesquisa, 24(4),
378–384.
https://doi.org/10.1590/1809-2950/17029524042017
Acesso: 03/04/2020
Ottobock (2016).
Introdução a fabricação de próteses mioelétricas.
http://www.ottobock.com.br/prosthetics/membros
Acesso em: 03/04/2020
Biffi, R. F., Aramaki, A. L., Silva e Dutra, F. C. M., Garavello, I., & Cavalcanti, A. (2017).
Levantamento dos problemas do dia a dia de um grupo de amputados e dos
dispositivos de auxílio que utilizam. Revista de Terapia Ocupacional Da
Universidade de São Paulo, 28(1), 46. https://doi.org/10.11606/issn.2238-
6149.v28i1p46-53
Acesso em: 22/06/2020
FILIPEFLOP (2020)
Loja de componentes eletrônicos
https:// filipeflop.com/
Acesso em: 09/12/2020
58
OBRAS CONSULTADAS
Biffi, R. F., Aramaki, A. L., Silva e Dutra, F. C. M., Garavello, I., & Cavalcanti, A. (2017).
Levantamento dos problemas do dia a dia de um grupo de amputados e dos
dispositivos de auxílio que utilizam. Revista de Terapia Ocupacional Da
Universidade de São Paulo, 28(1), 46. https://doi.org/10.11606/issn.2238-
6149.v28i1p46-53
Acesso em: 22/06/2020
Peixoto, A. M., Zimpel, S. A., Oliveira, A. C. A. de, Monteiro, R. L. S., & Carneiro, T. K. G.
(2017).
Prevalência de amputações de membros superiores e inferiores no estado de
Alagoas atendidos pelo SUS entre 2008 e 2015. Fisioterapia e Pesquisa, 24(4),
378–384.
https://doi.org/10.1590/1809-2950/17029524042017
Acesso: 03/04/2020