[Tuto] Capteur de débit
Posté : 29 janv. 2023, 03:18
Slts,
Je me suis fais un petit pense bête pour du traitement avec des capteurs de débit, pour pas me prendre la tête à chaque fois.
---------------------------
==Capteur de débit qui sort une impulsion par litre==
Demande : Afficher le débit en l/h
Débit_litres_heures :=3600000 / Temps_entre_impulsions en ms
(* Exemple sur Unity *)
if re(Impulsion) then
DINT_Temps:=%SD20-DINT_Temps_Absolu_Mem;
DINT_Debit_lh:=3600000/DINT_Temps;
DINT_Temps_Absolu_Mem:=%SD20;
end_if;
(* Exemple sur M221 *)
if re(Impulsion) then
%MW18:=%SW18;
%MW19:=%SW19;
%MD0:=CONCATW(%MW18,%MW19);
%MD2:=%MD0-%MD4;
Débit_litres_heures :=36000/%MD2;
%MD4:=%MD0;
end_if;
-------------------------------
Capteur de débit 4/20mA qui via une entrée analogique sort la valeur 10000 points pour un débit instantané de 10000 litres/heure
Demande : commander une vanne pour remplir une cuve de 1000 litres
-Créer un générateur d’impulsions dont la période serait inversement proportionnelle au débit
-Ex : p =3600000 / Débit l/h soit une impulsion tous les 360 ms
-Avec ces impulsions incrémenter un compteur
-Compteur>=1000 fermer la vanne, la cuve de 1000 litres est pleine à ras bord, Si ça déborde, vérifier le calcul, lol
-----EX: générateur d'impulsions sous Unity----------
TON_0(IN:=NOT Impulsion, PT:=DINT_TO_TIME(p), Q=>Impulsion);
if Impulsion then INC(Compteur);end_if;
Je me suis fais un petit pense bête pour du traitement avec des capteurs de débit, pour pas me prendre la tête à chaque fois.
---------------------------
==Capteur de débit qui sort une impulsion par litre==
Demande : Afficher le débit en l/h
Débit_litres_heures :=3600000 / Temps_entre_impulsions en ms
(* Exemple sur Unity *)
if re(Impulsion) then
DINT_Temps:=%SD20-DINT_Temps_Absolu_Mem;
DINT_Debit_lh:=3600000/DINT_Temps;
DINT_Temps_Absolu_Mem:=%SD20;
end_if;
(* Exemple sur M221 *)
if re(Impulsion) then
%MW18:=%SW18;
%MW19:=%SW19;
%MD0:=CONCATW(%MW18,%MW19);
%MD2:=%MD0-%MD4;
Débit_litres_heures :=36000/%MD2;
%MD4:=%MD0;
end_if;
-------------------------------
Capteur de débit 4/20mA qui via une entrée analogique sort la valeur 10000 points pour un débit instantané de 10000 litres/heure
Demande : commander une vanne pour remplir une cuve de 1000 litres
-Créer un générateur d’impulsions dont la période serait inversement proportionnelle au débit
-Ex : p =3600000 / Débit l/h soit une impulsion tous les 360 ms
-Avec ces impulsions incrémenter un compteur
-Compteur>=1000 fermer la vanne, la cuve de 1000 litres est pleine à ras bord, Si ça déborde, vérifier le calcul, lol
-----EX: générateur d'impulsions sous Unity----------
TON_0(IN:=NOT Impulsion, PT:=DINT_TO_TIME(p), Q=>Impulsion);
if Impulsion then INC(Compteur);end_if;