.pragma library //===================================================================================== // Fonctions : Fournit une chaine de caractères constituant une liste de valeurs§niveaux // du réservoir. La liste est composée de couples de nombre séparés par des ';' // et les deux valeurs au sein d'un couple sont séparés par '/'. // Par exemple : "0/0.00;190/100.00" // La chaine est établie en fonction du paramètre de 'mode' et de 'sous_mode' du réservoir. // Reçoit : Le type d'entrée, le mode et sous_mode utilisés pour ce réservoir // Retour : La chaine //===================================================================================== function chaine_valeur_niveau_reservoir_usine(type, mode, sous_mode) { var i; var masque; var chaine = ""; switch (type) { //=============================================== case 1 : // Entrée Auxiliaire : if ((mode < 1) || (mode > 12)) break; // Cf 'shipheart_reservoir_max_nombre_entrees_aux' dans main.qml masque = 1; chaine = "0/0"; for (i=1; i<=mode; i++) { chaine += ';' + masque + '/' + ((100*i) / mode).toFixed(2); masque = (masque << 1) | 1; } break; //=============================================== case 2 : // Entrée Level Sensor : switch(mode) { //------------------------------------------------------------ case 0: break; //------------------------------------------------------------ case 1: // 0-10V chaine = "0.000/0.00"; chaine += ";10.000/100.00"; break; //------------------------------------------------------------ case 2: // 500R switch(sous_mode) { case 1: // 0-190R chaine = "2/0.00"; chaine += ";185/100.00"; break; case 2: // 240-30R chaine = "235/0.00"; chaine += ";45/100.00"; break; case 0: // 0-500R default: chaine = "0/0.00"; chaine += ";700/100.00"; break; } break; //------------------------------------------------------------ case 3: // 4-20mA chaine = "4.000/0.00"; chaine += ";20.000/100.00"; break; //------------------------------------------------------------ default: // Non défini (on part donc sur une entrée en tension de 0 à 10V) chaine = "0.000/0.00"; chaine += ";10.000/100.00"; break; } break; } console.log("Chaine de valeurs/niveaux pour le réservoir = [" + chaine + "]") return(chaine); }