 */
 
 // Constantes
-  // Entradas
-    const byte bt_geral = 22; // Entrada do botão de Liga/Desliga Geral
-    const byte bt_dosador = 24; // Entrada do botão de Liga/Desliga do Dosador
-    const byte bt_datador = 26; // Entrada do botão de Liga/Desliga do Datador
-    const byte sensor_reset = 28; // Entrada do Sensor de Reset de Ciclo
-    const byte sensor_porta = 32; // Sensor de Segurança da Porta Frontal
-    const byte sensor_painel = 34; // Sensor de Segurança da Porta do Painel
-    const byte sensor_maquina = 36; // Sensor de Segurança da Porta da Máquina
-    const byte pot_solda_vertical = A0; // Potenciômetro da Solda Vertical
-    const byte pot_solda_horizontal = A1; // Potenciômetro da Solda Vertical
-    const byte pot_solda_datador = A2; // Potenciômetro da Solda Vertical
-  // Saídas
-    const byte geral = 40; // Saída Geral
-    const byte dosador = 42; // Saída do Dosador
-    const byte datador = 44; // Saída do Datador
-    const byte solda_vertical = 33; // Saída da Solda Vertical
-    const byte solda_horizontal = 35; // Saída da Solda Horizontal
-    const byte solda_datador = 37; // Saída da Solda do Datador
-    const byte led_teste_1 = 23;
-    const byte led_teste_2 = 25;
-    const byte led_teste_3 = 27;
-
+// Entradas
+const byte bt_geral = 22;        // Entrada do botão de Liga/Desliga Geral
+const byte bt_dosador = 24;      // Entrada do botão de Liga/Desliga do Dosador
+const byte bt_datador = 26;      // Entrada do botão de Liga/Desliga do Datador
+const byte sensor_reset = 28;    // Entrada do Sensor de Reset de Ciclo
+const byte sensor_porta = 32;    // Sensor de Segurança da Porta Frontal
+const byte sensor_painel = 34;   // Sensor de Segurança da Porta do Painel
+const byte sensor_maquina = 36;  // Sensor de Segurança da Porta da Máquina
+const byte pot_solda_vertical = A0;    // Potenciômetro da Solda Vertical
+const byte pot_solda_horizontal = A1;  // Potenciômetro da Solda Vertical
+const byte pot_solda_datador = A2;     // Potenciômetro da Solda Vertical
+                                       // Saídas
+const byte geral = 40;                 // Saída Geral
+const byte dosador = 42;               // Saída do Dosador
+const byte datador = 44;               // Saída do Datador
+const byte solda_vertical = 33;        // Saída da Solda Vertical
+const byte solda_horizontal = 35;      // Saída da Solda Horizontal
+const byte solda_datador = 37;         // Saída da Solda do Datador
+const byte led_teste_1 = 23;
+const byte led_teste_2 = 25;
+const byte led_teste_3 = 27;
 
 // Variáveis
-  // Configurações
-    #define BOTAO INPUT_PULLUP // INPUT ou INPUT_PULLUP
-    #define SENSOR INPUT // INPUT ou INPUT_PULLUP
-    #define SAIDA OUTPUT
-    #define ALTO LOW // Deve ser invertido para INPUT_PULLUP
-    #define BAIXO HIGH // Deve ser invertido para INPUT_PULLUP
-    #define LIGA HIGH
-    #define DESLIGA LOW
-    #define VERDADEIRO true
-    #define FALSO false
-  // Nomes de Funções
-    #define NomeGeral "Geral"
-    #define NomeDosador "Dosador"
-    #define NomeDatador "Datador"
-    #define NomeSoldaVertical "Solda Vertical"
-    #define NomeSoldaHorizontal "Solda Horizontal"
-    #define NomeSoldaDatador "Solda Datador"
-  // Botões de Entrada Um Clique
-    unsigned long atraso = 50;
-    int estbt_geral; // Estado do Botão Geral
-    int estbta_geral = BAIXO; // Estado anterior do Botão Geral
-    unsigned long atr_geral = 0; // Atraso do Botão Geral
-    int estbt_dosador; // Estado do Botão Dosador
-    int estbta_dosador = BAIXO; // Estado anterior do Botão Dosador
-    unsigned long atr_dosador = 0; // Atraso do Botão Dosador
-    int estbt_datador; // Estado do Botão Datador
-    int estbta_datador = BAIXO; // Estado anterior do Botão Dosador
-    unsigned long atr_datador = 0; // Atraso do Botão Dosador
-  // PWM das Soldas
-    const unsigned long ciclo_PWM = 1000;
-    unsigned long tempo_PWM_vertical = 0; // Tempo do PWM da solda vertical
-    unsigned long tempo_PWM_horizontal = 0; // Tempo do PWM da solda horizontal
-    unsigned long tempo_PWM_datador = 0; // Tempo do PWM da solda do Datador
-  // Programa
-    boolean stand_by = FALSO;
-    boolean maquina_ligada = FALSO;
-    boolean dosador_ligado = FALSO;
-    boolean datador_ligado = FALSO;
-    boolean alarme_ativo = FALSO;
-    unsigned long inicio_ciclo = millis();
-    bool fotocelula_liberada = FALSO;
-    bool fotocelula_cortou = FALSO;
-    bool ciclo_resetado = FALSO;
-    bool reset_falso = FALSO;
-    unsigned long conta_ciclos = 0;
-    boolean produzindo = FALSO;
-  // Tempos do Ciclo
-    // Ciclo
-    unsigned long ciclo_padrao = 2000;
-    unsigned long ciclo_minimo = 900;
-    unsigned long ciclo_maximo = 2000;
-    unsigned long primeiro_ciclo = 0;
-    // Mandibula
-    unsigned long inicio_mandibula = 550;
-    unsigned long fim_mandibula = 1500;
-    // Fotocélula
-    unsigned long inicio_fotocelula = 1250;
-    unsigned long fim_fotocelula = 1400;
-    // Faca
-    unsigned long inicio_faca = 600;
-    unsigned long fim_faca = 800;
-    // Refrigeração
-    unsigned long inicio_refrigeracao = 800;
-    unsigned long fim_refrigeracao = 1450;
-    // Datador
-    unsigned long inicio_datador = 0;
-    unsigned long fim_datador = 400;
-    // Solda Vertical
-    unsigned long inicio_soldas = 0;
-    unsigned long fim_soldas = 400;
-    // Atraso entre resets consecutivos
-    unsigned long atraso_resets = ciclo_padrao / 3;
-
+// Configurações
+#define BOTAO INPUT_PULLUP  // INPUT ou INPUT_PULLUP
+#define SENSOR INPUT        // INPUT ou INPUT_PULLUP
+#define SAIDA OUTPUT
+#define ALTO LOW    // Deve ser invertido para INPUT_PULLUP
+#define BAIXO HIGH  // Deve ser invertido para INPUT_PULLUP
+#define LIGA HIGH
+#define DESLIGA LOW
+#define VERDADEIRO true
+#define FALSO false
+// Nomes de Funções
+#define NomeGeral "Geral"
+#define NomeDosador "Dosador"
+#define NomeDatador "Datador"
+#define NomeSoldaVertical "Solda Vertical"
+#define NomeSoldaHorizontal "Solda Horizontal"
+#define NomeSoldaDatador "Solda Datador"
+// Botões de Entrada Um Clique
+unsigned long atraso = 50;
+int estbt_geral;                // Estado do Botão Geral
+int estbta_geral = BAIXO;       // Estado anterior do Botão Geral
+unsigned long atr_geral = 0;    // Atraso do Botão Geral
+int estbt_dosador;              // Estado do Botão Dosador
+int estbta_dosador = BAIXO;     // Estado anterior do Botão Dosador
+unsigned long atr_dosador = 0;  // Atraso do Botão Dosador
+int estbt_datador;              // Estado do Botão Datador
+int estbta_datador = BAIXO;     // Estado anterior do Botão Dosador
+unsigned long atr_datador = 0;  // Atraso do Botão Dosador
+                                // PWM das Soldas
+const unsigned long ciclo_PWM = 1000;
+unsigned long tempo_PWM_vertical = 0;    // Tempo do PWM da solda vertical
+unsigned long tempo_PWM_horizontal = 0;  // Tempo do PWM da solda horizontal
+unsigned long tempo_PWM_datador = 0;     // Tempo do PWM da solda do Datador
+                                         // Programa
+boolean stand_by = FALSO;
+boolean maquina_ligada = FALSO;
+boolean dosador_ligado = FALSO;
+boolean datador_ligado = FALSO;
+boolean alarme_ativo = FALSO;
+unsigned long inicio_ciclo = millis();
+bool fotocelula_liberada = FALSO;
+bool fotocelula_cortou = FALSO;
+bool ciclo_resetado = FALSO;
+bool reset_falso = FALSO;
+unsigned long conta_ciclos = 0;
+boolean produzindo = FALSO;
+boolean reset_liberado = VERDADEIRO;
+boolean sensor_resetou = FALSO;
+// Tempos do Ciclo
+// Ciclo
+unsigned long ciclo_padrao = 1500;
+unsigned long ciclo_minimo = 900;
+unsigned long ciclo_maximo = 2000;
+unsigned long primeiro_ciclo = 0;
+// Mandibula
+unsigned long inicio_mandibula = 550;
+unsigned long fim_mandibula = 1500;
+// Fotocélula
+unsigned long inicio_fotocelula = 1250;
+unsigned long fim_fotocelula = 1400;
+// Faca
+unsigned long inicio_faca = 600;
+unsigned long fim_faca = 800;
+// Refrigeração
+unsigned long inicio_refrigeracao = 800;
+unsigned long fim_refrigeracao = 1450;
+// Datador
+unsigned long inicio_datador = 0;
+unsigned long fim_datador = 400;
+// Solda Vertical
+unsigned long inicio_soldas = 0;
+unsigned long fim_soldas = 400;
+// Atraso entre resets consecutivos
+unsigned long atraso_resets = ciclo_padrao / 3;
 
 void setup() {
   Serial.begin(9600);

  pinMode(sensor_painel, BOTAO);
  pinMode(sensor_maquina, BOTAO);


  pinMode(geral, SAIDA);
  pinMode(dosador, SAIDA);
  pinMode(datador, SAIDA);

  pinMode(bt_geral, BOTAO);
  pinMode(bt_dosador, BOTAO);
  pinMode(bt_datador, BOTAO);
  pinMode(sensor_reset, BOTAO);  // Mudar para Sensor após os testes.
  // Potenciômetros das Soldas
  pinMode(pot_solda_vertical, SENSOR);
  pinMode(pot_solda_horizontal, SENSOR);
