✅ Práctica 10a
▷ #TSCLab #TCLab #ESP32 #Arduino #Control #MACI
En el siguiente blog se presenta la décima práctica y corresponde a la quinta del laboratorio de control de velocidad.
- Recopilar y guardar las RPM para crear un dataset.
Objetivos específicos:
- Comparar los resultados de movimiento con diferentes parámetros.
Materiales:
- Aplicación de escritorio CoolTerm
- PCB de Temperature Control Lab (TSC-Lab)
Introducción:
Una vez entendido todo el funcionamiento y control de velocidad del motor, se pretende crear un dataset para mejorar el mismo, lo que se hará es tomar 10 muestras tanto en un PWM de 255 y 0 durante un periodo de 13 segundos, dichos datos pueden ser modificados en la parte inicial del código de arduino.
Procedimiento:
Nota: revisar la práctica 1 donde se le recuerda a como utilizar la apliación CoolTerm.
Se asume que la placa del ESP-32 ha sido previamente instalada en el IDE de Arduino.
- Copiar el código en el IDE de Arduino:
Repositories: https://github.com/vasanza/TSC-Lab/tree/main/Practice10
- Cargar el código a la placa.
- Abrir CoolTerm y realizar la configuración de la práctica 1 y guardar los datos.
Nota: así se verían los resultados en CoolTerm:
Resultados:
- Los archivos .csv generados de esta práctica se encuentran disponibles en IEEEDataPort: http://ieee-dataport.org/4138.
✅ Práctica 10b
Objetivo general:
- Visualizar los datos resultantes empleando código de Matlab.
Procedimiento:
- Ir al siguiente repositorio: https://github.com/vasanza/TSC-Lab/tree/main/Practice10b
- En el repositorio encontrará la carpeta completa que usaremos en Matlab, donde se incluyen funcionalidades.
- Para fines explicativos, a continuación solo detallamos el código main que usted encontrará en el repositorio.
- Luego de ejecutar el código de Matlab, podemo realizar la práctica 15.
TEMPERATURE AND SPEED CONTROL LAB (TSC-LAB)
Practice 10: Data acquisition with square velocity input
- Blog: https://tsc-lab.blogspot.com/
- GitHub: https://github.com/vasanza/TSC-Lab
- Matlab functions: https://github.com/vasanza/Matlab_Code
- IEEEDataPort: http://ieee-dataport.org/4138
- TSC-LAB configurations
- int dutyCycleInitial = 255;
- int dutyCycleFinish = 0;
- int period = 13000;
- int cycles = 50;
- 1 sample per second
Raw dataset preparation
clear;clc;%clear all
addpath(genpath('./src'))%functions folders
datapath = fullfile('./data/');%data folder
Raw dataset preprocessing
filenames = FindCSV(datapath);%List All CSV files
data=readtable(fullfile(datapath,filenames(1).name));%Select i CSV file
data=table2array(data);
DataNorm = fNormalization(data(:,1));%Normalization
DataFeatures = [max(DataNorm) min(DataNorm) mean(DataNorm)...
median(DataNorm) rms(DataNorm) std(DataNorm) ];%Feature extraction
Plot Raw TSC-LAB dataset
figure
plot(data);xlabel('Samples');ylabel('RPM');
title('Motor Speed');
legend('RPM','PWM');
Plot Normalization dataset
figure
plot(DataNorm);xlabel('Samples');ylabel('Normalized Values');
title('Normalized data graph');
legend('RPM');
Select a case
IN=data(:,end);%RPM motor
OUT=data(:,1);%PWM
figure
plot(OUT)
title('OUT');
System Identification
ident
Open the Classification Learner
%regressionLearner
%classificationLearner
Comments
Post a Comment