Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sensores S1-> Inicia o processo. Aciona A1. S2->Desliga A1. Aciona A2. Após 15s desliga A2 e A1 é acionado. S3->Desliga A1. Encerra o processo. Atuadores A1->Motor da esteira. A2->Válvula para enchimento da garrafa. \ S1 S2 S3 A2 A1 INÍCIO FIM S1 ativado S2 ativado S3 ativado Motor ligado Motor desligado e válvula ligada Válvula desligada e motor ligado Motor ligado Motor desligado #include <stdio.h> #include <stdlib.h> #include <windows.h> struct esteira { unsigned int s1:1;//sensor1 unsigned int s2:1;//sensor2 unsigned int s3:1;//sensor3 unsigned int a1:1;//motor1 unsigned int a2:1;//válvula de enchimento da garrafa unsigned int :3;//para completar o byte }status; int sensor3() { int s3, on_off; do { printf("Digite 3 para ativar o sensor 3\n"); scanf("%d",&s3); }while (s3=!3); printf("Sensor 3 ativado\n"); status.a1=0; printf("Esteira parada.\n"); printf("Processo finalizado\n"); printf(" s1:%d\n s2:%d\n s3:%d\n a1:%d\n a2:%d\n", status.s1,status.s2,status.s3,status.a1,status.a2); printf("Digite 1 para reiniciar o processo ou 2 para sair\n"); scanf("%d", &on_off); if(on_off==1) sensor1(); else if(on_off==2) printf("BYE..."); else printf("Opcao invalida"); } int tempo() { int clock; for(clock=0;clock<=15;clock++){ //contando o tempo printf("Tempo em segundos = %d\n\n", clock); Sleep(1000); } status.s2=0; printf("Garrafa cheia\n"); status.a2=0; status.a1=1; printf("Esteira rolando...\n"); printf(" s1:%d\n s2:%d\n s3:%d\n a1:%d\n a2:%d\n", status.s1,status.s2,status.s3,status.a1,status.a2); sensor3(); } int sensor2() { int s2; do { printf("Digite 2 para ativar o sensor 2\n"); scanf("%d",&s2); }while (s2=!2); status.s2=1; printf("Sensor 2 ativado\n"); status.s1=0; status.a1=0; printf("Motores parados\n"); status.a2=1; printf("Enchendo garrafa...\n"); printf(" s1:%d\n s2:%d\n s3:%d\n a1:%d\n a2:%d\n", status.s1,status.s2,status.s3,status.a1,status.a2); tempo(); } int sensor1() { int s1; do{ printf("Digite 1 para ativar o sensor 1\n"); scanf("%d",&s1); }while (s1=!1); status.s1=1; printf("Sensor 1 ativado \n"); status.a1=1; printf("Esteira rolando. . . \n"); printf(" s1:%d\n s2:%d\n s3:%d\n a1:%d\n a2:%d\n", status.s1,status.s2,status.s3,status.a1,status.a2); sensor2(); } int main() { status.s1=0; status.s2=0; status.s3=0; status.a1=0; status.a2=0; sensor1(); }
Compartilhar