Paso 2: Parte 3
Parte 3 [producto terminado con programa]
(Adjunto son el archivo de txt sobre el programa y cómo funciona)
Sé que este proyecto tiene algunos weakiness pero ser descubierto por mí mismo o más probable que otros. Sin embargo la mayor parte se mostrará cómo las mediciones de voltaje y la resistencia pueden ocurrir mediante un puente de Wheatstone. Teniendo en cuenta otros sensores operar como una galga de tensión, diodo sensible, sensor de temperatura y mucho más.
Para utilizar el software emulación sobre todo HyperTerminal y VT100J.
Sin embargo usando masilla de traducción (CP866 manualmente en tipo) con tipo de letra basado en OEM y ANSI.
Cualquiera que esté dispuesto que ofrecen algunos * constructivo * crítica para hacer el circuito más precisa es bienvenida.
Adjunto se encuentra el bosquejo para el microprocesador en la placa de uno: este es el código crudo:
Iniciar copia aquí
#define A0IN 0
#define A1IN 1
int analogamount = 0; utilizado para convertir el puente izquierdo voltaje
int analogamount1 = 0; utilizado para convertir el puente adecuado voltaje
voltaje del flotador = 0; tensión de puente izquierda
flotador de voltaje1 = 0; tensión de enlace adecuada
flotador voltage2 = 0; utiliza para la corrección de voltaje
respuesta de flotador = 0;
int cv = 0; variable contador utiliza el dibujo de la pantalla
void setup() {}
analogReference(EXTERNAL); uso de AREF para voltaje de referencia
Serial.Begin(9600);
set_screen();
}
void loop() {}
analogamount = analogRead(A0IN);
analogamount1 = analogRead(A1IN);
voltaje = analogamount * (4500 / 1024.00);
voltaje1 = analogamount1 * (4500 / 1024.00);
voltage2 = 0;
set_xy(23,1);
save_cursor_pos();
if(Voltage == VOLTAGE1) {}
set_xy(10,25);
repeat_char(10,0x20);
set_xy(10,47);
repeat_char(10,0x20);
set_xy(14,49);
repeat_char(10,0x20);
} else {}
set_xy(10,25);
voltaje = round(voltage);
tensión = voltaje *. 001;
Serial.Print(Voltage);
Si (voltaje < 1) {Serial.print("mV");} else {Serial.print ("V");
}
set_xy(10,47);
voltaje1 = voltaje1 *. 001;
Serial.Print(VOLTAGE1);
Si (voltaje1 < 1) {Serial.print("mV");} else {Serial.print ("V");
}
set_xy(14,49);
voltage2 = voltaje * 2;
respuesta = 10000 * voltaje1 / (voltage2 - voltaje1); respuesta = round(answer);
Serial.Print ((int) respuesta + 1);
Serial.Print ("ω");
}
restore_cursor_pos();
Delay(3000);
}
void save_cursor_pos() {}
Serial.Print ("\x1B" "[s"); / / guardar la posición del cursor
}
void restore_cursor_pos() {}
Serial.Print ("\x1B" "[u"); / / restaurar la posición del cursor
}
void repeat_char (int r, char c) {}
int rx;
para (rx = 0; rx! = r; rx ++) {}
Serial.Print(c);
}
}
void set_xy (int x, int y) {}
Serial.Print("\x1B[");
Serial.Print(x);
Serial.Print(";");
Serial.Print(y);
Serial.Print("H");
}
void set_screen() {}
Serial.Print ("\x1B" "[2J");
set_xy(1,2);
Serial.Print("ohmmeter");
set_xy(3,2);
Serial.Print("\xDA");
repeat_char(20,0xc4);
Serial.Print("\xC2");
repeat_char(20,0xc4);
Serial.Print("\xBF");
set_xy(4,2);
para (cv = 0; cv! = 2; cv ++) {}
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.println("\xB3");
Serial.Print("");
}
set_xy(6,2);
para (cv = 0; cv! = 3; cv ++) {}
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB2");
repeat_char(20,0x20);
Serial.println("\xB2");
Serial.Print("");
}
set_xy(7,25);
Serial.Print ("R1 (10K)");
set_xy(9,1);
Serial.Print("\xC4\xC1\xC4");
repeat_char(19,0x20);
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB3");
set_xy(10,1);
Serial.Print ("\x1B [10; 1 H" "\xC4");
repeat_char(19,0x20);
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB3");
set_xy(11,1);
Serial.Print("\xC4\xC4\xC4");
repeat_char(19,0x20);
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB3");
set_xy(12,2);
Serial.Print ("\xC2");
repeat_char(19,0x20);
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB3");
set_xy(13,2);
para (cv = 0; cv! = 3; cv ++) {}
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB2");
repeat_char(20,0x20);
Serial.println("\xB2");
Serial.Print("");
}
set_xy(16,2);
para (cv = 0; cv! = 3; cv ++) {}
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.Print("\xB3");
repeat_char(20,0x20);
Serial.println("\xB3");
Serial.Print("");
}
set_xy(18,2);
Serial.Print("\xC0");
repeat_char(20,0xc4);
Serial.Print("\xC1");
repeat_char(20,0xc4);
Serial.Print("\xD9");
set_xy(7,46);
Serial.Print ("R2 (10K)");
set_xy(14,25);
Serial.Print ("R3 (10K)");
set_xy(14,46);
Serial.Print("RX");
} / / fin copia aquí