EZR
Dependencies: CRC16 FreescaleIAP FreescaleWatchdog GGSProtocol LM75B PIMA Parameters PersistentCircularQueue SerialNumberV2COM mbed-dev-watchdog_2016_03_04
Fork of smartRamalKW by
appParameters.h@13:eed9484a89bc, 2015-07-28 (annotated)
- Committer:
- tpadovani
- Date:
- Tue Jul 28 17:56:11 2015 +0000
- Revision:
- 13:eed9484a89bc
- Parent:
- 11:8c93e0de58cd
- Child:
- 14:4963dc299580
Implementa??o de alarmes
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tpadovani | 0:999112ad27f0 | 1 | #ifndef APPPARAMETERS_H |
tpadovani | 0:999112ad27f0 | 2 | #define APPPARAMETERS_H |
tpadovani | 0:999112ad27f0 | 3 | |
tpadovani | 4:2d0c2643c641 | 4 | #include "mbed.h" |
tpadovani | 5:1bc98277c257 | 5 | #include "settings.h" |
tpadovani | 13:eed9484a89bc | 6 | #include "parameters.h" |
tpadovani | 13:eed9484a89bc | 7 | |
tpadovani | 13:eed9484a89bc | 8 | #define ALARME_LINHA_TENSAO_ZERO 0 |
tpadovani | 13:eed9484a89bc | 9 | #define ALARME_LINHA_TENSAO_MINIMA 1 |
tpadovani | 13:eed9484a89bc | 10 | #define ALARME_LINHA_TENSAO_MAXIMA 2 |
tpadovani | 13:eed9484a89bc | 11 | #define ALARME_LINHA_CORRENTE_ZERO 3 |
tpadovani | 13:eed9484a89bc | 12 | #define ALARME_LINHA_CORRENTE_MINIMA 4 |
tpadovani | 13:eed9484a89bc | 13 | #define ALARME_LINHA_CORRENTE_MAXIMA 5 |
tpadovani | 13:eed9484a89bc | 14 | #define ALARME_CARGA_TENSAO_ZERO 6 |
tpadovani | 13:eed9484a89bc | 15 | #define ALARME_CARGA_TENSAO_MINIMA 7 |
tpadovani | 13:eed9484a89bc | 16 | #define ALARME_CARGA_TENSAO_MAXIMA 8 |
tpadovani | 13:eed9484a89bc | 17 | #define ALARME_CARGA_CORRENTE_ZERO 9 |
tpadovani | 13:eed9484a89bc | 18 | #define ALARME_CARGA_CORRENTE_MINIMA 10 |
tpadovani | 13:eed9484a89bc | 19 | #define ALARME_CARGA_CORRENTE_MAXIMA 11 |
tpadovani | 13:eed9484a89bc | 20 | #define ALARME_RETORNO_POTENCIAL 12 |
tpadovani | 4:2d0c2643c641 | 21 | |
tpadovani | 0:999112ad27f0 | 22 | typedef struct { |
tpadovani | 9:e501499af4ef | 23 | unsigned int estadoRele; |
tpadovani | 9:e501499af4ef | 24 | unsigned int RELIGAR_LARGURA_PULSO_MS; // Largura do pulso enviado ao rele em milissegundos para religar |
tpadovani | 9:e501499af4ef | 25 | unsigned int CORTAR_LARGURA_PULSO_MS; // Largura do pulso enviado ao rele em milissegundos para cortar |
tpadovani | 9:e501499af4ef | 26 | unsigned int DELAY_SENSOR_MS; // Tempo esperado apos enviar um pulso para o rele e antes de verificar o estado do sensor de fornecimento (em milissegundos) |
tpadovani | 9:e501499af4ef | 27 | unsigned int INTERVALO_SILENCIO_S; // intervalo sem receber bytes na rede para considerar que a linha esta livre pra envio do anuncio |
tpadovani | 9:e501499af4ef | 28 | unsigned int INTERVALO_WD_NETWORK_S; // intervalo de watchdog da comunicacao de rede, em segundos. Se nao receber comandos apos este periodo vai resetar |
tpadovani | 9:e501499af4ef | 29 | unsigned int LIMITE_TENSAO_SENSOR_V; // Limite de tensao em volts RMS no conversor A/D para considerar que a linha esta energizada |
tpadovani | 9:e501499af4ef | 30 | unsigned int SAMPLES; // Numero de amostras para calculo da tensao RMS nos sensores de carga e linha |
tpadovani | 9:e501499af4ef | 31 | unsigned int SAMPLES_DELAY_US; // Intervalo entre amostras para calculo da tensao RMS (em microssegundos) |
tpadovani | 9:e501499af4ef | 32 | union{ |
tpadovani | 9:e501499af4ef | 33 | float floatValue; // Coeficiente angular das amostras de tensao do A/D |
tpadovani | 10:7a1d1abb5172 | 34 | char bytes[4]; |
tpadovani | 9:e501499af4ef | 35 | } SAMPLES_ANG_COEF; |
tpadovani | 9:e501499af4ef | 36 | union{ |
tpadovani | 9:e501499af4ef | 37 | float floatValue; // Coeficiente linear das amostras de tensao do A/D |
tpadovani | 10:7a1d1abb5172 | 38 | char bytes[4]; |
tpadovani | 9:e501499af4ef | 39 | } SAMPLES_LIN_COEF; |
tpadovani | 11:8c93e0de58cd | 40 | unsigned int LOAD_CHANNEL; // Indica o canal (0 ou 1) onde esta ligada a carga, para que as rotinas de corte e religa verifiquem a alimentacao corretamente |
tpadovani | 10:7a1d1abb5172 | 41 | unsigned int INTERVALO_MM_S; // Intervalo de leitura de Memoria de Massa em segundos |
tpadovani | 10:7a1d1abb5172 | 42 | unsigned int MM_SIZE; // Numero maximo de registros da memoria de massa |
tpadovani | 11:8c93e0de58cd | 43 | unsigned int contadorCiclos; // Totalizador de numero de operacoes de corte/religa |
tpadovani | 13:eed9484a89bc | 44 | unsigned int ENABLE_ALARMS; // Bitmask para habilitacao dos alarmes |
tpadovani | 13:eed9484a89bc | 45 | unsigned int ALARMS_STATES; // Estados dos alarmes |
tpadovani | 13:eed9484a89bc | 46 | unsigned int ALARMS_QUEUE_SIZE; // Tamanho maximo da fila de alarmes |
tpadovani | 13:eed9484a89bc | 47 | unsigned int LIMITE_TENSAO_ZERO_LINHA_V; |
tpadovani | 13:eed9484a89bc | 48 | unsigned int LIMITE_TENSAO_MINIMA_LINHA_V; |
tpadovani | 13:eed9484a89bc | 49 | unsigned int LIMITE_TENSAO_MAXIMA_LINHA_V; |
tpadovani | 13:eed9484a89bc | 50 | unsigned int LIMITE_TENSAO_ZERO_CARGA_V; |
tpadovani | 13:eed9484a89bc | 51 | unsigned int LIMITE_TENSAO_MINIMA_CARGA_V; |
tpadovani | 13:eed9484a89bc | 52 | unsigned int LIMITE_TENSAO_MAXIMA_CARGA_V; |
tpadovani | 0:999112ad27f0 | 53 | } ParametersBlock; |
tpadovani | 0:999112ad27f0 | 54 | |
tpadovani | 0:999112ad27f0 | 55 | void validateAppParameters(); |
tpadovani | 13:eed9484a89bc | 56 | bool isAlarmEnabled(int alarm); |
tpadovani | 13:eed9484a89bc | 57 | bool getAlarmState(int alarm); |
tpadovani | 13:eed9484a89bc | 58 | void setAlarmState(int alarm, bool state); |
tpadovani | 0:999112ad27f0 | 59 | |
tpadovani | 5:1bc98277c257 | 60 | extern ParametersBlock APP_PARAMETERS; |
tpadovani | 0:999112ad27f0 | 61 | |
tpadovani | 0:999112ad27f0 | 62 | |
tpadovani | 0:999112ad27f0 | 63 | #endif |