Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //---------------------------- IMH -------------------------
- void selecao() // Seleciona parametros e menus
- {
- if (menu == 0) // Menu 0 - ajuste da guia
- { // // BT1 menu 1; BT2 5 steps; BT3 50 steps; BT4 -5 steps; BT5 -50 steps
- lcd.clear(); // LCD clear
- lcd.setCursor(2, 0); // Cursor LCD em 0,0
- lcd.print("PRESSOR GNV"); // Print
- delay(1000);
- lcd.setCursor(2, 1); // Cursor LCD em 0,0
- lcd.print("by Jesterson");
- delay(500);
- lcd.clear();
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("Ajuste a guia do"); // Print
- lcd.setCursor(0, 1);
- lcd.print("fio e pres Enter");
- while (menu == 0)
- // Enquanto for menu 0
- {
- if (digitalRead(BT1) == LOW) // Se muda de menu
- {
- menu = 1; // Muda para o menu 1 seleciona funcao
- delay(600); // Delay
- }
- else if (digitalRead(BT2) == LOW) // Se avança step em 5 steps
- {
- stepper.step(2); // 5 steps
- delay(5); // Delay
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- }
- else if (digitalRead(BT3) == LOW) // Se avança step em 50 steps
- {
- stepper.step(-40); // 50 steps
- delay(1); // Delay
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- }
- else if (digitalRead(BT4) == LOW) // Se avança step em -5 steps
- {
- stepper.step(-2); // -5 steps
- delay(5); // Delay
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- }
- else if (digitalRead(BT5) == LOW) // Se avança step em -50 steps
- {
- stepper.step(40); // -50 steps
- delay(1); // Delay
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- }
- }
- }
- if (menu == 1) // Menu 1 - seleciona funcao
- { // // BT1; BT2 menu 8; BT3; BT4 Configurar menu 2 ; BT5
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("ESCOLHA A OPCAO"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("Config<- ->Inici"); // Print
- while (menu == 1) // Enquanto menu = 1
- {
- if (digitalRead(BT2) == LOW) // Se Inicia processo
- {
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("****************************"); // Print
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 1); // Cursor LCD em 3,1
- lcd.print("INICIO PROCESSO"); // Print
- delay(500); // Delay
- menu = 8; // Muda para o menu 8 Inicia processo / calculos
- }
- else if (digitalRead(BT4) == LOW) // Se selecionou configuracoes
- {
- lcd.clear(); // LCD clear
- lcd.setCursor(1, 0); // Cursor LCD em 4,0
- lcd.print("CONFIGURACOES"); // Print
- delay(1500); // Delay
- lcd.clear(); // LCD clear
- menu = 2; // Muda para o menu 2 Numero de espiras
- }
- }
- }
- if (menu == 2) // Menu 2 - Numero de espiras
- { // // BT1 menu 3; BT2 Incrementa * 10; BT3 Decrementa; BT4 Incrementa / 10 ; BT5 Incrementa
- incrementa = 1; // Define incremento inicial
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("Num. de espiras:"); // Numero de espiras
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(numEsp);
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print// Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- while (menu == 2) // Enquanto menu 2
- { // // Num. de espiras
- if (digitalRead(BT1) == LOW)
- {
- menu = 3; // Muda para o menu 3 Bitola do fio
- delay(600); // Delay
- }
- else if (digitalRead(BT2) == LOW) // Aumenta fator do incremento
- {
- incrementa = incrementa * 10; // Aumenta fator do incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(numEsp); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT4) == LOW) // Diminui fator do incremento
- {
- incrementa = incrementa / 10; // Diminui fator do incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(numEsp); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT3) == LOW) // Atualiza decremento
- {
- numEsp = numEsp - incrementa; // Atualiza decremento numero de espiras
- if (numEsp < 0) // Se numero de espiras negativo
- numEsp = 0; // Numero de espiras igual a zero
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(numEsp); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT5) == LOW) // Atualiza incremento
- {
- numEsp = numEsp + incrementa;
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(numEsp); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- }
- }
- if (menu == 3) // Menu 3 - Bitola do fio
- { // // BT1 menu 4; BT2 Incrementa * 10; BT3 Decrementa; BT4 Incrementa / 10 ; BT5 Incrementa
- incrementa = 1; // Fator incrementa = 1
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("Bitola fio (mm):"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(bitFio); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- while (menu == 3) // Enquanto menu 3
- { // // Bitola do fio
- if (digitalRead(BT1) == LOW) // Muda para menu 4 Comprimento do carretel
- {
- menu = 4; // Muda para menu 4 Comprimento do carretel
- delay(600); // Delay
- }
- else if (digitalRead(BT2) == LOW) // Aumenta fator do incremento
- {
- incrementa = incrementa * 10; // Aumenta fator do incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(bitFio); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT4) == LOW) // Diminui fator do incremento
- {
- incrementa = incrementa / 10; // Diminui fator do incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(bitFio); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT3) == LOW) // Atualiza decremento
- {
- bitFio = bitFio - incrementa; // Atualiza decremento bitola do fio
- if (bitFio < 0) // Se bitola do fio negativa
- bitFio = 0; // Bitola do fio igual a 0
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(bitFio); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT5) == LOW) // Atualiza inecremento bitola do fio
- {
- bitFio = bitFio + incrementa; // Atualiza incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(bitFio);
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print// Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,1
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- }
- }
- if (menu == 4) // Menu 4 - Comprimento do carretel
- { // // BT1 menu 5; BT2 Incrementa * 10; BT3 Incrementa; BT4 Incrementa / 10 ; BT5 Decrementa
- incrementa = 1; // Fator incrementa = 1
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("Larg carretel mm"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(carrLeng); // Prin
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,2
- lcd.print(incrementa); // Print
- while (menu == 4) // Enquanto menu 4
- { // // Largura do carretel
- if (digitalRead(BT1) == LOW) // Mudar para menu 5 Seleciona funcao
- {
- menu = 5; // Muda para o menu 5 Seleciona funcao
- delay(500); // Delay
- }
- else if (digitalRead(BT2) == LOW) // Aumenta fator do incremento
- {
- incrementa = incrementa * 10; // Aumenta fator do incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(carrLeng); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,2
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT4) == LOW) // Diminui fator do incremento
- {
- incrementa = incrementa / 10; // Diminui fator do incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(carrLeng); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,2
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT3) == LOW) // Atualiza decremento
- {
- carrLeng = carrLeng - incrementa; // Atualiza decremento largura carretel
- if (carrLeng < 0) // Se largura negativa
- carrLeng = 0; // Largura igual a 0
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(carrLeng); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,2
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- else if ( digitalRead(BT5) == LOW) // Atualiza incremento
- {
- carrLeng = carrLeng + incrementa; // Atualiza incremento
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,2
- lcd.print(carrLeng); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 8,2
- lcd.print(incrementa); // Print
- delay(500); // Delay
- }
- }
- }
- if (menu == 5) // Janela 5 - Seleciona funcao
- { // // BT1; BT2 menu 8; BT3; BT4 inicio = 6; BT5
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("ESCOLHA A OPCAO"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("Conf <- -> Inic"); // Print
- while (menu == 5) // Enquanto menu = 5
- {
- if (digitalRead(BT2) == LOW) // Mudar para menu 9 Inicia processo
- {
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("************"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("INICIO PROCESSO"); // Print
- delay(500); // Delay
- menu = 8; // Muda para o menu 8
- }
- else if (digitalRead(BT4) == LOW) // Mudar para menu 6 define se tem isolação entre camadas
- {
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- delay(500); // Delay
- lcd.clear(); // LCD clear
- menu = 6; // Muda para o menu 6 define se tem isolação entre camadas
- }
- }
- }
- if (menu == 6) // Menu 6 - define se tem isolação entre camadas
- { // // BT1 menu 7; BT2; BT3 NAO; BT4; BT5 SIM
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("ISOLACAO? + -"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.setCursor(5, 1); // Cursor LCD em 5,1
- lcd.print(" Sim Nao"); // Print
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- while (menu == 6) // Enquanto menu 6
- {
- if (digitalRead(BT1) == LOW) // Muda de menu
- {
- menu = 7; // Muda para o menu 7 Fator de correcao de passo
- delay(500); // Delay
- }
- else if (digitalRead(BT3) == LOW) // Definir isolacao NAO
- { isolador = false;
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("NAO =="); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT5) == LOW) // Definir isolacao SIM
- {
- isolador = true; // Define audio ligado
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("SIM =="); // Print
- delay(500); // Delay
- }
- }
- }
- if (menu == 7) // Menu 7 - Fator de correcao de passo
- { // // BT1 menu 8; BT2; BT3 decrementa dciclos; BT4; BT5 Incrementa dciclos
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("Fcorrecao Avan % "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(dciclos); // Print
- while (menu == 7) // Enquanto menu = 7
- { // // Fcorrecao Avan %
- if (digitalRead(BT1) == LOW) // Muda de menu
- {
- menu = 8; // Muda para o menu 8 Inicia processo / calculos
- delay(500); // Delay
- }
- else if (digitalRead(BT3) == LOW) // Decrementa fator de passo
- {
- dciclos = dciclos - 1; // Decrementa fator de passo
- if (dciclos < 0) // Se fator de passo negativo
- dciclos = 0; // fator de passo igual a 0
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(dciclos); // Print
- delay(500); // Delay
- }
- else if (digitalRead(BT5) == LOW ) // Incrementa fator de passo
- {
- dciclos = dciclos + 1; // Incrementa fator de passo
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print(dciclos); // Print
- delay(500); // Delay
- }
- }
- }
- if (menu == 8) // Menu 8 - Inicia processo / calculos
- { // // BT1; BT2 direto = 0, menu 9; BT3; BT4 direto = 1, menu 9; BT5
- espCam = (carrLeng * 1 / bitFio) / (1 + dln / 100); // numero de espiras por camada
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("SENT ENROLAMENTO");
- lcd.setCursor(1, 1); // Cursor LCD em 0,2
- lcd.print("Esq <- -> Dir"); // Print
- while (menu == 8) // Enquanto menu 8
- { // // SENTIDO
- if (digitalRead(BT2) == LOW) // Define sentido CW
- {
- direct = 0; // Sentido CW
- menu = 9; // Inicia processo
- }
- else if (digitalRead(BT4) == LOW) // Define sentido CCW
- {
- direct = 1; // Sentido CCW
- menu = 9; // Inicia processo
- }
- }
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,0
- lcd.print("INICIANDO PROCESSO"); // Print
- lcd.setCursor(3, 1); // Cursor LCD em 3,1
- lcd.print(" "); // Print
- lcd.setCursor(2, 1); // Cursor LCD em 2,1
- lcd.setCursor(8, 1); // Cursor LCD em 08,1
- delay(1500); // Delay
- lcd.clear(); // LCD clear
- lcd.setCursor(3, 1); // Cursor LCD em 3,1
- lcd.print(" "); // Print
- lcd.setCursor(0, 0); // Cursor LCD em 2,0
- lcd.print("T=");
- lcd.setCursor(2, 0);
- lcd.print(numEsp);
- lcd.setCursor(7, 0);
- lcd.print("Conc= ");
- // lcd.setCursor(8, 1);
- //lcd.print("Esp=");
- lcd.setCursor(0, 1);
- lcd.print("Camadas=");
- delay(500);// Print
- // // Calcula ciclos do step por espira
- ciclos = espFase * bitFio * 360 / (1 * 0.703125 * 1 * 3.14159 * 5) * 1.8 * (1 + dciclos / 100) / 0.615; // 0.585; altere esses valores para um ajuste fino do da guia do fio
- //ciclos = espFase * bitFio * 360 / (1 * 0.703125 * 1 * 3.14159 * 5) * 1.8 * (1 + dciclos / 100) / 0.525; // 0.585; altere esses valores para um ajuste fino do da guia do fio
- // ciclos = espFase * bitFio * 360 / (1 * 0.703125 * 1 * 3.14159 * 5) * 1.8 * (1 + dciclos / 100) / 0.055;
- numEspAtual = 0; // Zera contador de espiras feitas
- camf = 0; // Zera contador de camadas feitas
- LCDContagem(); // Mostra contagem de espiras e camadas
- contaStep = 0;
- }
- }
- //--------------------------------------------------
- void LCDContagem() // Print contagem de espiras e camadas
- {
- lcd.setCursor(12, 0); // Cursor LCD em 3,1
- lcd.print(numEspAtual); // Print
- lcd.setCursor(8, 1); // Cursor LCD em 12,1
- lcd.print(camf); // Print
- lcd.setCursor(10, 1); // Cursor LCD em 14,1
- }
- //---------------------------- FIM DE PROCESSO --------------------------------
- void endProcess()
- {
- desligaMotor();
- // digitalWrite(motor_carretel, LOW ); // Desliga motor do crretel
- lcd.clear(); // LCD clear
- lcd.setCursor(0, 0); // Cursor LCD em 0,1
- lcd.print("Processo concluido"); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 0,1
- lcd.print("Com: "); // Print
- lcd.setCursor(4, 1); // Cursor LCD em 0,3
- lcd.print(numEsp); // Print
- lcd.setCursor(9, 1); // Cursor LCD em 8,3
- lcd.print("Espiras:"); // Print
- returnHome();
- delay(2000); // Delay
- lcd.setCursor(0, 0); // Cursor LCD em 8,3
- lcd.print("Enter= Nova bobin "); // Print
- lcd.setCursor(0, 1); // Cursor LCD em 8,3
- lcd.print("Reset= Seta config"); // Print
- delay(300); // Delay
- while (menu == 9) // Enquanto menu 9
- {
- if (digitalRead(BT1) == LOW) // BT1; BT2; BT3 menu 0; BT4; BT5
- {
- menu = 0; // menu inicial
- delay(1000);
- }
- }
- }
- //------------------------------- CCW --------------------------- // funcoes de acionamento do motor de passo
- void counterclockwise () // Avanca step CCW
- {
- stepper.step(1); // Avanca um step CCW
- contaStep = contaStep + 1;
- }
- //-------------------------------- CW ------------------------------
- void clockwise() // Avanca step CW
- {
- stepper.step(-1); // Avanca um step CW
- contaStep = contaStep - 1;
- }
Add Comment
Please, Sign In to add comment