Небольшое веб приложение
Опорожняющие насосы включаются и выключаются датчиками уровня воды.
Изначально резервуар пуст. Как только вода доходит до датчика вкл1 – включается первый насос, а до датчика вкл2 – второй. Выключение – как только уровень воды опускается до датчика выкл2 – выключается второй насос, а до датчика выкл1 – первый.
Нам известны расстояния между датчиками включения L1 и выключения L2, подачи выкачивающих насосов Q1 и Q2, диаметр резервуара S, высота рабочей зоны (от самого верхнего датчика до самого нижнего) H, рабочий объём резервуара Wрез = S * H
Также мы знаем подачу заполняющего насоса Q в каждую конкретную минуту суток (от 00:00 до 23:59).
Она считается по формуле Q(х)=0,0087*(x/60)^4 - 0,4578*(x/60)^3 + 7,8989*(x/60)^2 - 45,912*(x/60)+ 168,75 , где x – порядковый номер минуты (от 1 до 1440).
Нужно зафиксировать время, когда были включены откачивающие насосы в течении дня. Т.е. когда работал только первый, когда первый и второй насос вместе. Когда они не работали.
Фактически первый насос включается если W (текущая заполненность резервуара) >= Wрез-L1*S (уровень воды – выше датчика вкл1). После этого резервуар будет заполняться с подачей Q=Q-Q1;
Второй насос включается если W>=Wрез (уровень воды выше датчика вкл2). Резервуар в этом случае будет заполняться с подачей Q=Q-Q1-Q2;
Второй насос выключается если W<=L2*S (уровень воды ниже датчика выключения второго насоса) Подача Q=Q-Q1;
Первый выключается если W<=0. Подача – Q.
Дабы не плодить тут свои маразмы - пишу только исходные данные.
Код:
<?
//расстояния между датчиками
$l1="0.2";
$l2="0.2";
//подачи выкачивающих насосов
$q1="150";
$q2="200";
$wrez="45"; //объём раб зоны рез
$s="30"; //диаметр основания рез
$h="1.5"; //высота раб. зоны резервуара
echo "Резервуар пуст.Начинаем заполнение <br>";
//загоняю в массив Q подачу в каждую минуту
for ($i=1; $i<=1440; $i++){
$qzap[]=0.0087* pow(($i/60),4) - 0.4578* pow(($i/60),3) + 7.8989 * pow(($i/60),2) - 45.912*($i/60)+ 168.75;
}
?>
//расстояния между датчиками
$l1="0.2";
$l2="0.2";
//подачи выкачивающих насосов
$q1="150";
$q2="200";
$wrez="45"; //объём раб зоны рез
$s="30"; //диаметр основания рез
$h="1.5"; //высота раб. зоны резервуара
echo "Резервуар пуст.Начинаем заполнение <br>";
//загоняю в массив Q подачу в каждую минуту
for ($i=1; $i<=1440; $i++){
$qzap[]=0.0087* pow(($i/60),4) - 0.4578* pow(($i/60),3) + 7.8989 * pow(($i/60),2) - 45.912*($i/60)+ 168.75;
}
?>
[COLOR="Red"]Личная информация удалена.Все вопросы мне личным сообщением.[/COLOR]m_Valery.
Цитата:
Доигрался я с родным универом до состояния «полная жопа». Практически под угрозой вылета из-за одного предмета. Спасти ситуацию может один веб-скриптик. Если я его предъявлю во вторник – мне простят мои залёты.
зачем нам на форуме эта информация ?
или вы ищите дядю энтузиаста что бы за вас написали? (тогда вам к фрилансерам например)
Цитата:
Спасайте! Буду всегда должен!
можно поинтересоваться чем "должен" ?