Puede Graficar en tres canales, señales analógicas transmitidas vía Puerto Serie por un Arduino o un PIC. Este trabajo está vinculado al trabajo 127. Se Plotean en pantalla los valores analógicos que entrega el Arduino que trabaja con un control PIC para ajustar sus variables, pero además se pueden guardar para estudiarlas posteriormente. Pueden bajar un DOC, con el procedimiento y un ZIP con la información, que contiene todos los archivos fuente y un ejecutable.
Generalidades
Este Graficador permite mostrar tres variables, que se las llama X, Y y Z. Está preparado para que esas variables sean generadas con un programa de Arduino, pero también se puede hacer con cualquier PIC conectado a un puerto serie o a un puerto serie virtual mediante un cable USB. Se ha tomado como ejemplo, un programa que lea las variables X, Y y Z de tres puertos analógicos.
El programa es el Graficador.INO. Lee los valores sobre los puertos que están libres, sin conectar a nada y las envía por el Puerto Serie Virtual, a la PC. En este caso es el Puerto Comm Virtual 9.
Este trabajo está basado en un anterior trabajo 15 - Electrocardiógrafo, ECG o EKG para PC que pueden bajar de esta página www.arossini.com.ar
Ayuda del Programa Ardu Graficador
Está en el archivo Ayuda.txt, que es la ayuda del programa que se puede usar mientras se grafica.
Pantalla Principal
PROGRAMA ARDUINO (Copiar y pegar en Arduino IDE)
El Ardu Graficador está preparado para trabajar con Arduino, pero debería hacerlo con cualquier PIC. Este programa no sirve para un PIC, fundamentalmente porque usa algunas órdenes distintas al C convencional.
Para usar en PIC con otras aplicaciones distintas, se deben modificar algo las órdenes.
Programa
void setup()
{
Serial.begin(115200); // Inicia la comunicación serie con la PC
}
void loop()
{
int x = analogRead(A0); // Declarar variables y leer los ADC
int y = analogRead(A1); // Declarar variables y leer los ADC
int z = analogRead(A2); // Declarar variables y leer los ADC
Serial.print("ini"); // Indispensable para el graficador
Serial.print("x"); Serial.print(x); Serial.print(" "); // Los caracteres x, y y z son indispensables para el graficador
Serial.print("y"); Serial.print(y); Serial.print(" "); // Los caracteres x, y y z son indispensables para el graficador
Serial.print("z"); Serial.print(z); Serial.print(" "); // Los caracteres x, y y z son indispensables para el graficador
Serial.println("fin"); // Indispensable para el graficador
delay(10); // Retardo para limitar la cantidad de datos. Se puede variar.
}
De todas maneras, el programa está en el ZIP que pueden bajar.
Recomendación
Con el Hyperterminal de Windows XP, seteado en el puerto y velocidad correspondiente, deben ver la orden que manda el Arduino a la PC que es como esta:
inix582x527y517z522fin, que son los tres valores, cada uno correspondiente a su eje. Si usan otro programa en el Arduino o PIC, debe estar la salida a la PC formateada de la misma manera.
“ini” le indica a la PC el inicio de la cadena, “fin” le indica el fin. “z,x,e y” indican donde comienza el dato para cada variable. El orden en que llegan no es importante, de igual manera que si quieren mandar otra variable para otro uso. El programa solo identifica estas tres.
Sacando los tildes en la pantalla del programa Graficador, pueden graficar y ver las variables de a una.
Diagrama de Flujo del programa