Índice:
Vídeo: Analisador de amostra de rocha: 4 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Rock Sample Analyzer é usado para identificar e analisar os tipos de amostras de rochas usando a técnica de vibração de martelo suave. É um novo método para identificar as amostras de rocha. Se um meteorito ou qualquer amostra de rocha desconhecida estiver lá, pode-se estimar a amostra usando este analisador de amostra de rocha. A técnica do martelo suave não perturbará ou danificará a amostra. A técnica de interpretação avançada Neuro Fuzzy é aplicada para identificar as amostras. A interface gráfica do usuário (GUI) é projetada usando o software MATLAB e o usuário pode ver as vibrações obtidas em uma saída gráfica e a saída resultante será mostrada no painel em frações de segundo.
Etapa 1: Construindo o Dispositivo Mecânico
As dimensões do dispositivo mecânico são as seguintes
Comprimento X Largura X Altura = 36 cm X 24,2 cm X 32 cm
Comprimento da haste da amostra = 24 cm
Comprimento do martelo = 37 cm
Raio do disco = 7,2 cm
Comprimentos do eixo = 19,2 cm (2)
O dispositivo mecânico de martelo suave automático serve para martelar a amostra e criar vibrações … As vibrações geradas são espalhadas pelas amostras. As vibrações geradas são muito suaves e não perturbarão ou danificarão a amostra.
Etapa 2: Sensor de vibração
3 número de 801S Sensor de vibração Modelo de vibração Saída analógica Sensibilidade ajustável para robô Arduino Os sensores de vibração são usados para coletar as vibrações … A média de todos os três valores é usada para analisar os dados.
Etapa 3: controle e programação do Arduino
O Arduino irá coletar os dados usando os pinos analógicos e converter os dados e enviá-los para um arquivo de texto
Programação Arduino
int vib_1 = A0; int vib_2 = A1; int vib_3 = A2;
{
Serial.begin (9600);
pinMode (vib_1, INPUT);
pinMode (vib_2, INPUT);
pinMode (vib_3, INPUT);
Serial.println ("ETIQUETA, VALOR DE VIBRAÇÃO");
}
void loop () {
int val1;
int val2;
int val3;
int val;
val1 = analogRead (vib_1);
val2 = analogRead (vib_2);
val3 = analogRead (vib_3);
val = (val1 + val2 + val3) / 3;
if (val> = 100)
{
Serial.print ("DATA,");
Serial.print ("VIB =");
Serial.println (valor);
import processing.serial. *;
Serial mySerial;
Saída de PrintWriter;
void setup ()
{
mySerial = novo Serial (isto, Serial.list () [0], 9600);
output = createWriter ("data.txt"); }
void draw ()
{
if (mySerial.available ()> 0)
{
Valor da string = mySerial.readString ();
if (valor! = nulo)
{
output.println (valor);
}
}
}
void keyPressed ()
{
output.flush ();
// Grava os dados restantes no arquivo
output.close (); // Termina o arquivo
saída(); // Pára o programa
}
atraso (1000);
}
}
}
Etapa 4: Interface gráfica do usuário de interpretação Neuro Fuzzy
ANFIS é uma combinação de sistemas lógicos difusos e redes neurais. Esse tipo de sistema de inferência tem a natureza adaptativa de confiar na situação que treinou. Portanto, tem muitas vantagens, desde o aprendizado até a validação da saída. O modelo fuzzy Takagi-Sugeno é mostrado na Figura
Conforme mostrado na Figura, o sistema ANFIS consiste em 5 camadas, a camada simbolizada pela caixa é uma camada que é adaptativa. Enquanto isso, simbolizado pelo círculo é fixo. Cada saída de cada camada é simbolizada por uma sequência de nós e l é a sequência que mostra o revestimento. Aqui está uma explicação para cada camada, a saber:
Camada 1
Serve para aumentar o grau de adesão
Camada 2
Serve para evocar a força de disparo multiplicando cada sinal de entrada.
Camada 3
Normalizar a força de disparo
Camada 4
Calculando a saída com base nos parâmetros da regra consequente
Camada 5
Contar o sinal de saída ANFIS somando todos os sinais de entrada produzirá
Aqui, a interface gráfica do usuário é projetada usando o software MATLAB. Os dados de vibração de entrada são alimentados no software usando o controlador Arduino e a amostra correspondente será analisada de forma eficiente usando a interpretação ANFIS.