Projeto Mecatrônico
/
ProjetoMecatronico
testando
Diff: main_PM.cpp
- Revision:
- 33:a513498222c7
- Parent:
- 32:2a9b30e1e7ab
- Child:
- 34:1b5a00c55376
--- a/main_PM.cpp Wed May 27 14:31:48 2020 +0000 +++ b/main_PM.cpp Wed May 27 15:00:54 2020 +0000 @@ -3,7 +3,8 @@ #include "TextLCD.h" #include "Keypad.h" #include "funcoes_ihm.h" - +#include <stdio.h> +#include <string> //local para a declaracao de varioveis float t_motor = 0.002; //delay entre o acionamento de uma bobina do motor e a outra float t_teclado = 0.01; //delay entre a leitura de um botão do teclado, necessário para que um click nao gere mais de uma saída @@ -83,7 +84,6 @@ printf("\n%i",est_z);*/} //Varioveis para operacao IHM -#include <string> using std::string; string status_tela = "zeramento"; @@ -99,8 +99,7 @@ lcd.printf("automatizado"); lcd.locate(0,3); lcd.printf("de pipetagem"); - wait(3); - while(1) { + wait(3); lcd.cls(); lcd.printf("Por favor, aceite"); lcd.locate(0,1); @@ -108,16 +107,16 @@ lcd.locate(0,2); lcd.printf("sistema"); lcd.locate(0,3); - lcd.printf("A - proximo"); + lcd.printf("A - proximo"); + while(1) { tecla = teclado.ReadKey(); if(tecla == 'A' && status_tela == "zeramento"){ zeramento(); - printf("\n%s",status_tela); - status_tela == "inicio"; - printf("\n%s",status_tela); + status_tela = "inicio"; funcao_inicio();} + int solta = 1; - tecla = teclado.ReadKey(); //read the current key pressed + tecla = teclado.ReadKey(); //leitura da tecla apertada if(tecla == '\0') solta = 1; //set the flag when all keys are released if((tecla != '\0') && (solta == 1)) { //if a key is pressed AND previous key was released printf("%c\n", tecla); @@ -134,52 +133,41 @@ if (y_mais == 0 && est_y == 1){for(int i = 0; i < 4; i++){eixoy = parado[i];wait(t_motor);coord_y += 0;lcd.cls();lcd.printf("Limite de y atingido");}} if (z_mais == 0 && est_z == 1){for(int i = 0; i < 4; i++){eixoz = parado[i];wait(t_motor);coord_z += 0;lcd.cls();lcd.printf("Limite de z atingido");}} - if(x_menos == 0){mov_x_menos(); + while(x_menos == 0){mov_x_menos(); lcd.cls();lcd.printf("X: %4.1f", coord_x); lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} - if(y_menos == 0){mov_y_menos(); - lcd.cls();lcd.printf("X: %4.1f", coord_x); - lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); - lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} - - if(z_menos == 0){mov_z_menos(); - lcd.cls();lcd.printf("X: %4.1f", coord_x); - lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); - lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} - - if(x_mais == 0){mov_x_mais(); + while(y_menos == 0){mov_y_menos(); lcd.cls();lcd.printf("X: %4.1f", coord_x); lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} - if(y_mais == 0){mov_y_mais(); - lcd.cls();lcd.printf("X: %4.1f", coord_x); - lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); - lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} - - if(z_mais == 0){mov_z_mais(); + while(z_menos == 0){mov_z_menos(); lcd.cls();lcd.printf("X: %4.1f", coord_x); lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} - if(x_mais || x_menos || y_mais || y_menos || z_mais || z_menos != 0){ + while(x_mais == 0){mov_x_mais(); + lcd.cls();lcd.printf("X: %4.1f", coord_x); + lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); + lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} + + while(y_mais == 0){mov_y_mais(); + lcd.cls();lcd.printf("X: %4.1f", coord_x); + lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); + lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} + + while(z_mais == 0){mov_z_mais(); + lcd.cls();lcd.printf("X: %4.1f", coord_x); + lcd.locate(0,1);lcd.printf("Y: %4.1f", coord_y); + lcd.locate(0,2);lcd.printf("Z: %4.1f", coord_z);} + + if(x_mais && x_menos && y_mais && y_menos && z_mais && z_menos != 0){ for(int i = 0; i < 4; i++){eixox = parado[i];} for(int i = 0; i < 4; i++){eixoy = parado[i];} - for(int i = 0; i < 4; i++){eixoz = parado[i];} - } - - /* - lcd.cls(); - lcd.printf("X: %4.1f", coord_x); - lcd.locate(0,1); - lcd.printf("Y: %4.1f", coord_y); - lcd.locate(0,2); - lcd.printf("Z: %4.1f", coord_z); - */ - - tecla = teclado.ReadKey(); + for(int i = 0; i < 4; i++){eixoz = parado[i];}} + if(tecla =='1' && status_tela == "inicio"){ funcao_pega1(); wait(1);