Version initiale

Dependencies:   mbed

Fork of Le_Pont_V10116 by SAGNES Christophe

Committer:
CS
Date:
Thu Mar 29 15:41:22 2018 +0000
Revision:
2:a10c8133d71c
Parent:
1:570ba62fab91
Publish of "Le_Pont_V11003" in the team folder

Who changed what in which revision?

UserRevisionLine numberNew contents of line
CS 0:8b3c6f593515 1 //***********************************************************************************/
CS 0:8b3c6f593515 2 //
CS 0:8b3c6f593515 3 // Variables globales du Pont Bacalan
CS 0:8b3c6f593515 4 //
CS 0:8b3c6f593515 5 //************************************************************************************/
CS 0:8b3c6f593515 6
CS 0:8b3c6f593515 7 #include <mbed.h>
CS 0:8b3c6f593515 8 #include "Constantes.h"
CS 1:570ba62fab91 9 #include "IniParser.h"
CS 1:570ba62fab91 10 #include "Parametre.h"
CS 1:570ba62fab91 11
CS 1:570ba62fab91 12 // Objet liaison série sur USB pour mode debug
CS 1:570ba62fab91 13 Serial var(USBTX, USBRX) ;
CS 0:8b3c6f593515 14
CS 0:8b3c6f593515 15 int i, j;
CS 0:8b3c6f593515 16
CS 0:8b3c6f593515 17 U16 usRegInputStart = REG_INPUT_START;
CS 0:8b3c6f593515 18 S16 Memoire_S16[REG_INPUT_NREGS];
CS 0:8b3c6f593515 19
CS 0:8b3c6f593515 20 //****************************************************************************
CS 0:8b3c6f593515 21 //
CS 0:8b3c6f593515 22 // Initialisation des variables
CS 0:8b3c6f593515 23 //
CS 0:8b3c6f593515 24 //****************************************************************************
CS 0:8b3c6f593515 25 bool Init_Variables(void)
CS 0:8b3c6f593515 26 {
CS 0:8b3c6f593515 27 // Initialise some registers
CS 0:8b3c6f593515 28 for (i = 0; i < REG_INPUT_NREGS; i++)
CS 0:8b3c6f593515 29 {
CS 0:8b3c6f593515 30 Memoire_S16[i] = 0;
CS 0:8b3c6f593515 31 }
CS 1:570ba62fab91 32
CS 1:570ba62fab91 33 string Fichier = "/local/config.ini" ;
CS 0:8b3c6f593515 34
CS 1:570ba62fab91 35 var.printf("\r\n Lecture fichier de config: ") ;
CS 1:570ba62fab91 36 INIParser config( Fichier , false ) ;
CS 1:570ba62fab91 37
CS 1:570ba62fab91 38 string section, parametre, valeur ;
CS 1:570ba62fab91 39
CS 0:8b3c6f593515 40 //Paramètres Memoire
CS 0:8b3c6f593515 41 Sauvegarde_automatique = 0;
CS 0:8b3c6f593515 42 Etalonnage_effectue = 0;
CS 0:8b3c6f593515 43 Sauver_Vers_Flash =0;
CS 0:8b3c6f593515 44 Etalonnage_en_cours=0;
CS 0:8b3c6f593515 45
CS 0:8b3c6f593515 46 RAZ =0;
CS 0:8b3c6f593515 47
CS 0:8b3c6f593515 48 Mode_Debug = 1;
CS 0:8b3c6f593515 49 Periode_Scrutation_ms = 100 ; // 0.1s
CS 0:8b3c6f593515 50
CS 0:8b3c6f593515 51 Mode_Fonctionnement = MODE_ARRET ;
CS 0:8b3c6f593515 52 Mode_Synchro = RD_SUIT_RG ;
CS 0:8b3c6f593515 53
CS 0:8b3c6f593515 54 BTN_Arret = 1 ;
CS 0:8b3c6f593515 55 BTN_Monte = 0 ;
CS 0:8b3c6f593515 56 BTN_Descend = 0 ;
CS 0:8b3c6f593515 57
CS 0:8b3c6f593515 58 BTN_Descend_RD = 0 ;
CS 0:8b3c6f593515 59 BTN_Monte_RD = 0 ;
CS 0:8b3c6f593515 60
CS 0:8b3c6f593515 61 BTN_Monte_RG = 0 ;
CS 0:8b3c6f593515 62 BTN_Descend_RG = 0 ;
CS 0:8b3c6f593515 63
CS 0:8b3c6f593515 64 Consigne_Vitesse_Auto = 2500 ;
CS 0:8b3c6f593515 65 Consigne_Vitesse_Manu = 1500 ;
CS 0:8b3c6f593515 66 Consigne_Haute_P = 450 ;
CS 0:8b3c6f593515 67 Consigne_Basse_P= 5 ;
CS 0:8b3c6f593515 68
CS 0:8b3c6f593515 69
CS 0:8b3c6f593515 70 Hauteur_mini = -10 ;
CS 0:8b3c6f593515 71 Hauteur_maxi = 470 ;
CS 0:8b3c6f593515 72 Vitesse_mini = 0 ;
CS 0:8b3c6f593515 73 Vitesse_maxi = 4000 ;
CS 0:8b3c6f593515 74
CS 0:8b3c6f593515 75 // Synchronisation
CS 0:8b3c6f593515 76 Defaut_Mineur_Synchro = 5 ;
CS 0:8b3c6f593515 77 Defaut_Majeur_Synchro = 10 ;
CS 0:8b3c6f593515 78 Defaut_Critique_Synchro = 35 ;
CS 0:8b3c6f593515 79 Correction_Synchro = 90 ;
CS 2:a10c8133d71c 80
CS 2:a10c8133d71c 81 // Limites
CS 2:a10c8133d71c 82 Defaut_Critique_Manu_mm = config.GetInt("Limite","Defaut_Critique_Manu_mm",50);
CS 2:a10c8133d71c 83 var.printf("\r\n Defaut_Critique_Manu: %d ",Defaut_Critique_Manu_mm) ;
CS 2:a10c8133d71c 84 //Defaut_Critique_Manu = 50 ;
CS 2:a10c8133d71c 85
CS 0:8b3c6f593515 86 Anticipation_Synchro = 100 ;
CS 0:8b3c6f593515 87 KP_Synchro = 2000 ;
CS 0:8b3c6f593515 88 KI_Synchro = 100 ;
CS 0:8b3c6f593515 89 KD_Synchro = 0 ;
CS 0:8b3c6f593515 90
CS 0:8b3c6f593515 91
CS 0:8b3c6f593515 92 // Etalonnage
CS 1:570ba62fab91 93
CS 1:570ba62fab91 94 Hauteur_RD1_mm = config.GetInt("Etalonnage","Hauteur_RD1_mm",0);
CS 1:570ba62fab91 95 var.printf("\r\n Hauteur_RD1_mm: %d ",Hauteur_RD1_mm) ;
CS 1:570ba62fab91 96
CS 1:570ba62fab91 97 Hauteur_RD2_mm = config.GetInt("Etalonnage","Hauteur_RD2_mm",400);
CS 1:570ba62fab91 98 var.printf("\r\n Hauteur_RD2_mm: %d ",Hauteur_RD2_mm) ;
CS 1:570ba62fab91 99
CS 1:570ba62fab91 100 Hauteur_RD1_pts = config.GetInt("Etalonnage","Hauteur_RD1_pts",80);
CS 1:570ba62fab91 101 var.printf("\r\n Hauteur_RD1_pts: %d ",Hauteur_RD1_pts) ;
CS 1:570ba62fab91 102
CS 1:570ba62fab91 103 Hauteur_RD2_pts = config.GetInt("Etalonnage","Hauteur_RD2_pts",2600);
CS 1:570ba62fab91 104 var.printf("\r\n Hauteur_RD2_pts: %d ",Hauteur_RD2_pts) ;
CS 1:570ba62fab91 105
CS 1:570ba62fab91 106 Hauteur_RG1_mm = config.GetInt("Etalonnage","Hauteur_RG1_mm",0);
CS 1:570ba62fab91 107 var.printf("\r\n Hauteur_RG1_mm: %d ",Hauteur_RG1_mm) ;
CS 1:570ba62fab91 108
CS 1:570ba62fab91 109 Hauteur_RG2_mm = config.GetInt("Etalonnage","Hauteur_RG2_mm",400);
CS 1:570ba62fab91 110 var.printf("\r\n Hauteur_RG2_mm: %d ",Hauteur_RG2_mm) ;
CS 1:570ba62fab91 111
CS 1:570ba62fab91 112 Hauteur_RG1_pts = config.GetInt("Etalonnage","Hauteur_RG1_pts",80);
CS 1:570ba62fab91 113 var.printf("\r\n Hauteur_RG1_pts: %d ",Hauteur_RG1_pts) ;
CS 1:570ba62fab91 114
CS 1:570ba62fab91 115 Hauteur_RG2_pts = config.GetInt("Etalonnage","Hauteur_RG2_pts",2600);
CS 1:570ba62fab91 116 var.printf("\r\n Hauteur_RG2_pts: %d ",Hauteur_RG2_pts) ;
CS 0:8b3c6f593515 117
CS 0:8b3c6f593515 118 // Parametres variateur
CS 0:8b3c6f593515 119 Param_Version_RD = 100 ;
CS 0:8b3c6f593515 120 Param_Startup_RD = 1000 ;
CS 0:8b3c6f593515 121 Param_Increment_RD = 50 ;
CS 0:8b3c6f593515 122 Param_Seuil_Demarrage_RD = 500 ;
CS 0:8b3c6f593515 123 Param_Acceleration_RD = 20 ;
CS 0:8b3c6f593515 124 Param_Deceleration_RD = 20 ;
CS 0:8b3c6f593515 125 Param_Kpv_RD = 1000 ;
CS 0:8b3c6f593515 126 Param_Kiv_RD = 200 ;
CS 0:8b3c6f593515 127 Param_Kdv_RD = 0 ;
CS 0:8b3c6f593515 128 Param_Kav_RD = 1000 ;
CS 0:8b3c6f593515 129 Param_Consigne_RD = 1500 ;
CS 0:8b3c6f593515 130
CS 0:8b3c6f593515 131 //Parametres variateur rive gauche
CS 0:8b3c6f593515 132 Param_Version_RG = 100 ;
CS 0:8b3c6f593515 133 Param_Startup_RG = 1000 ;
CS 0:8b3c6f593515 134 Param_Increment_RG = 50 ;
CS 0:8b3c6f593515 135 Param_Seuil_Demarrage_RG = 500 ;
CS 0:8b3c6f593515 136 Param_Acceleration_RG = 20 ;
CS 0:8b3c6f593515 137 Param_Deceleration_RG = 20 ;
CS 0:8b3c6f593515 138 Param_Kpv_RG = 1000 ;
CS 0:8b3c6f593515 139 Param_Kiv_RG = 200 ;
CS 0:8b3c6f593515 140 Param_Kdv_RG = 0 ;
CS 0:8b3c6f593515 141 Param_Kav_RG = 1000 ;
CS 0:8b3c6f593515 142 Param_Consigne_RG = 1500 ;
CS 0:8b3c6f593515 143
CS 1:570ba62fab91 144
CS 0:8b3c6f593515 145 return (1);
CS 0:8b3c6f593515 146 }
CS 0:8b3c6f593515 147