Автор Тема: Логика за управление на помпа и хидравличен изравнител  (Прочетена 36451 пъти)

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Имайте в предвид и това, че при начално пускане температурите на датчиците са изравнени, а ако няма движение на флуидите датчиците  ще дават грешни температури.

EDM electronics
Това което ти трябва е подобно управлението на дрон. Някаде бях виждал примерно управление реализирано с Arduino.

Неактивен juliang

  • Заинтригуван
  • Много Напреднал
  • *
  • Публикации: 6 178
Я да видим това при вас ще тръгне ли (който иска да опита, де...).
DI1 e сигнал от пресостата, DI2 е сигнал за ръчна работа (променят се с поставяне на чавка в квадратчето), и съответно имате AI1-AI4 за 4-те температури (мери ги в десети от градуса), а в AO3 и на дисплея показва сигнала в стотни от волта.
Стартира се със simulator.bat

Със ESC се виждат аварии, с OK се влиза в менюто. Само първото подменю ("Настройки" на кирилица) ви интересува, другото са разни настройки дет идват заводски...

Активен EDM electronics

  • Global Moderator
  • Много Напреднал
  • *****
  • Публикации: 4 501
  • Z - Оркестър Вагнер

EDM electronics
Това което ти трябва е подобно управлението на дрон. Някаде бях виждал примерно управление реализирано с Arduino.

Аз така или иначе ще го правя с Arduino, защото платформата има богата библиотека на всички видове датчици. Трябва ми само основния алгоритъм на управление, да захапя само началото. Не че нямам собствено виждане за преоткриване на топлата вода, но това би ми спестило много начално лутане и експерименти и то на място - вътре в във водата.

Трябва с два датчика - компас и GPS да управлявам реверсивен двигател за лодка и рул със серво мотор. Сервото ще върти руля на +,- 90 гр. Първо да следва маршрут по зададени с бутон последователно примерно от 30-60 GPS точки - ръчно или готов маршрут от Уарт GPS порта на сонара. Ще трябва да има флаш карта за запомнени N-броя маршрути. Другата функция на контролера трябва да бъде електрическа котва. Натискам само един бутон и двигателя трябва да коригира от течението, както позицията и да ме държи в тази точка, така и направлението чрез компаса. Въобще много сложен проект. Не съм стигнал до там, защото първо трябва да имам готов работещ двигател със серво управление. Проблема е сервоуправлението. Не съм измислил най-добрия вариант - здрав, надежден, евтин. Сервото трябва да издържа тяга създавана от основния двигател около 120 кг/см.

Има руски фирми, които имат такива автопилоти, но код не се продава.  :D Ще помоля моите началници от КГБ да ми ударят едно рамо.  ;)

За мен това е предизвикателство, но полека лека, едно по едно, с опит и грешка ще станат нещата с лаптопа вътре във водата.

Ако намериш нещо - код, да видя основната логика - алгоритъма на управление на двигателите, ще ми бъде от полза. В Алиекспрес продават готови пилотни контролери, не са скъпи, дават ги за универсални, но нямат моите изисквания и не ми вършат работа. Не мога и да добавям нищо в тях.
Изровил съм НЕТА за нещо готово, само до го побутна, преправя, но не намерих.

Неактивен Радико

  • Много Напреднал
  • *****
  • Публикации: 7 263
  • Пол: Мъж
  • Потребителя не съществува
    • http://martinov-radiko.blogspot.com/
  • Скайп: radiko1a
EDM Мисля, че не би било лошо да отвориш отделна тема за този въпрос.

Неактивен Иван Димов

  • Експериментатор
  • Сериозен
  • ***
  • Публикации: 1 046
  • Пол: Мъж
  • Невъзможно нещо е да докажеш, че нещо е невъзможно
   Аз бих избрал най-простото възможно решение. Имаш един датчик, който следи само температурата Т2. Мисля че се казваше тригер на Шмит една електронна схема, която се включва под определена стойност на входния сигнал и се изключва над друга по-висока стойност на входа. Нещо като хистерезис има. Значи температурата Т2 като падне под 95 градуса и тригерът се включва - помпата на котела тръгва. Така T2 започва да расте и като надскочи 98 градуса, тригерът изключва котелната помпа. Аз доколкото разбрах, това е топлообменник. Ако е само гола тръба, то тя трябва да е вързана към водопровода преди котела за да има нужното налягане в нея, защото ако консуматорът на топла вода не връща обратно охладена, налягането ще падне.

Неактивен juliang

  • Заинтригуван
  • Много Напреднал
  • *
  • Публикации: 6 178
Димов, системата е изключително инертна - когато температурата падне до 95 градуса и включа помпата, вероятно ще стигне 85 преди да дойде вода от котела. Да не говорим че в случай че помпата спре, самия котел ще се загрее, горелката ще изключи, и повторното й пускане е съпроводено с разни проверки които отнемат време. След това горелката ще трябва да се изфорсира за да загрее водата, което води до по-високи температури на изходящите димни газове, което си е изхвърлена в атмосферата топлина.

Идеалното решение е помпата да вкарва точно толкова вода колкото се консумира, и горелката/котела да загрява точно толкова вода колкото се консумира. Тогава всичко застава в едно равновесие и работи равномерно. В този случай и кислородното регулиране на самата горелка ще има възможност да свали излишъка на кислород до около 1%, което значи 10% по-малко въздух вкаран в котела, което значи 10% по-малко безмислено загрят въздух изхвърлен през комина.

А тук говорим за 2 мегавата мощност. ... 1% да спестиш са забележими пари, при условие че това работи 16 часа всеки божи ден.

Неактивен MTM

  • Сериозно Активен
  • ***
  • Публикации: 420
juliang слагаш допълнително 2 основни датчика. За температура и ниво на водата. И само с тяхно ,,разрешение" ще сработват останалите. Или както ти е удобно.

Неактивен dmitarp

  • Много Напреднал
  • *****
  • Публикации: 1 294
  • Пол: Мъж
Ако се разгледа по внимателно проблема, се вижда, че температурата в съда е почти еднаква в целия му обем, т.е. Т2 = Т3 = Т. Тогава за тази температура може да се запише от енергийният баланс Т = к*(Т1 + Т4)/(к + 1)., тук к е съотношението между масовите потоци на котела и на консуматорите. При краен случай к = безкрайност, т.е. няма консуматори Т = Т1, което е съвсем логично, при другият краен случай к = 0, т.е. от генератора не постъпва вода Т = Т4. При постоянен поток във консуматорите к се определя единствено от оборотите на помпата, през характеристиката на помпата.  За регулирането е много важно, какъв тип е консуматора, ако е топлообменник с прекъснато действие, например съд който се нагрява от серпентина, захранвана от разглеждания съд, тогава регулирането може да стане по Т4, в началото на загряване тази температура е ниска и тогава к трябва да бъде възможно най-високо, с течение на времето Т4 расте съответно регулатора ще намалява оборотите на помпата, и така до достигане на желаната стойност на Т4. Ако се използва характеристиката на помпата този регулатор, може да бъде най-обикновен ПИД регулатор, ако не се използва характеристиката на помпата или тя е неизвестна, тогава трябва да се използват по-сложни нелинейни регулатори. Ако топлообменника е противоточен, тогава регулирането пак може да стане през Т4, тази температура вече няма да се мени с времето, но в регулатора трябва да има два входа да се следи и Т, респективно Т2, за да не бъде по дадена стойност. При достатъчно голяма съд, дори при рязко изменение на  Т4, Т1 ще се изменя доста бавно, и системата ще има време да се регулира, без температурата Т1 да е достигнала минималната си стойност.

Неактивен Радико

  • Много Напреднал
  • *****
  • Публикации: 7 263
  • Пол: Мъж
  • Потребителя не съществува
    • http://martinov-radiko.blogspot.com/
  • Скайп: radiko1a
Димитре, не е топлообменник
вече попитах:
Цитат
Цитат на: Радико в Вчера в 14:13:35

    Юлияне нещо не ми стана съвсем ясно какъв точно е тоя съд. Демек това просто един празен съд със четри фланеца ли е или е топлообменник. Демек Т1 и Т4 имат ли връзка през този съд.

Да, празна тръба с 4 фланеца. Да, Т1 и Т4 имат връзка, както и които и да е два входа/изхода.

Неактивен epwpixieq-1

  • Сериозен Експериментатор
  • Много Напреднал
  • ****
  • Публикации: 1 912
  • Пол: Мъж
  • e^(π*ι)+1=0
Димов, системата е изключително инертна - когато температурата падне до 95 градуса и включа помпата, вероятно ще стигне 85 преди да дойде вода от котела.
Всъщност мисля че това което каза Димов, е оптимално но може би трябва да се погледне проблема малко по различно.

Не е необходимо да се чака за температурата да падне до определено ниво, особено когато има такава инертност на термодинамиката. При положение че на мен се падне такава задача аз бих гледал скоростта на падане (или съответно нарастване, макар че имайки в предвид предполагамата константност на температурата на флуида от източника, и характеристиките на помпата това може да се вземе като константа) на температурата за даден интервал от време, да кажем примерно 5 минути ( за тези 5 минути имаме 300 замервания, замерване на секунда, от температурен датчик ). Така даже и да имаме един датчик се вижда се каква е скоростта на промяна на температурата на флуида за дадения интервал от време (на определно място), като избирането на този интервал ще зависи от параметрите на системата. Знае се какъв е температурния капацитет на флуида и така се вижда с каква скорост се "отдава" енергията, което е променливата величина, и на база на това, скоростта на нарастване или падене на темературата в избрания интевал или по друг начин казано, скоростта на отдаване или придаване на енергия, се взема решение дали да се включва или изключва помпата (вземайки  в предвид нейните характеристики). Така системата ще работи много по-плавно понеже както се казва има "памет" на база на алгоритъма.  В допълнение системата е по-простичка и предполага по-малко възможности за дефекти като замерването зависи само от един температурен датчик и агрегирана величина даваща диференциалната температурна динамика на флуида.
« Последна редакция: Януари 31, 2020, 09:38:02 pm от epwpixieq-1 »

Неактивен dmitarp

  • Много Напреднал
  • *****
  • Публикации: 1 294
  • Пол: Мъж
Димитре, не е топлообменник
вече попитах:
Да не е класически топлообменник, а топлообменик със смесване на потоците, ако съда непрекъснато е празен, как ще взема вода и как ще я изхвърля за какво е нужен тогава. За мен това си е топлообменик, а в моето писане имах в предвид, топлообменниците откъм страната на консуматорите, там също има такива, и е много важно какъв тип са.

Неактивен dmitarp

  • Много Напреднал
  • *****
  • Публикации: 1 294
  • Пол: Мъж
epwpixieq-1 това го върши всеки ПИД, регулатор но тук има една тънкост, ПИД регулатора е линеен, и може ефективно да регулира само линейни системи, или нелинейни в много близка област около регулируемата точка, където системата се линеаризира. Но тук системата е нелинейна, потоците, респективно и температурата не зависи линейно от оборотите на помпата и няма точка, в която може да линеаризира системата. За да се избегне това нещо, се правят сложни регулатори, адаптивни, фузи и т.н. Много по елегантно и просто решение е вместо това, да се използват характеристиките на помпата и един линеен регулатор като ПИД или ПД регулатор.

Неактивен Иван Димов

  • Експериментатор
  • Сериозен
  • ***
  • Публикации: 1 046
  • Пол: Мъж
  • Невъзможно нещо е да докажеш, че нещо е невъзможно
   Значи ще трябва да мериш дебита на топлата вода, която се ползва. Колкото скоростта на потока е по-голяма, толкова повече гориво ще пускаш към горелката. С думи прости, колкото енергия излиза от системата, толкова трябва и да влиза. Енергията, която излиза за секунда е пропорционална на произведението на температурата в Келвини по потока в кубичен метър за секунда. Температурата е кинетичната енергия на една частица - виж в темата ми "Термодинамика и основни формули"
Цитат
За по-голямо удобство въвеждам константата D = 3/2 k = 2.071*10^-23 или D е приблизително 2 по 10 на минус 23-та степен. Така можем да запишем Ек(1ч.) = DT
Значи кинетичната енергия на една частица е DT. А мощността, която преминава през всяка една от тръбите е произведение на това DT по броя частици, преминали през дадената тръба за секунда. И следва едно мерене на всички входящи и изходящи тръби за да станат нещата точни.
   При всички случаи ще трябва да се мери дебит. Наскоро четох как може да се мери скорост на потока чрез два манометра като и двата мерят само статичното налягане. Просто единият се слага на определено леко стеснение на тръбата. Този метод не използва тръбата на Пито (за пълното налягане) и в тръбата няма разни закривени измервателни тръбички, а тръбата просто леко се стеснява и после пак се разширява. Предполагам че системата ще може да се управлява минимум с един датчик за температурата Т2 и един за дебит на същата тръба. Иначе за по-голяма прецизност трябва да се видят разликите в температурите вход-изход и съответно дебита. Сложността идва и от това, че топла вода може да излиза от съда без да се връща после охладена в него.

Неактивен juliang

  • Заинтригуван
  • Много Напреднал
  • *
  • Публикации: 6 178
Не е необходимо да се чака за температурата да падне до определено ниво, особено когато има такава инертност на термодинамиката.
Има друг проблем - котела и горелката също са инертни. Нямам гаранция че котела ще подава винаги една и съща температура., т.е. Т1 не е константа.
Да, на теория мога да мина само с Т1 и Т2, но се опасявам че помпата не може да си намери някакво равновесно положение и ще осцилира нагоре-надолу...

   Значи ще трябва да мериш дебита на топлата вода, която се ползва. Колкото скоростта на потока е по-голяма, толкова повече гориво ще пускаш към горелката.
Котела и горелката не е опция да се пипат. Там всичко работи идеално, отделно че управлението на горелката е само и единствено по температурата в самия котел. Не мога да си позволя да го прегрея, щото някой си датчик на 20 метра решава че иска енергия. И без това е на границата дадена от производителя (115 градуса, а го карат на 105-108).

Съда винаги е на 100% пълен с вода.

Неактивен dmitarp

  • Много Напреднал
  • *****
  • Публикации: 1 294
  • Пол: Мъж
То след време и аз ще ви дам една подобна задача, но с повишена трудност на алгоритъма, няма да е с 2-3 реда. Автопилот управляван от магнитометър, акселерометър - датчик за абсолютна ориентация + GPS. Ама като му дойде времето, че още не съм стигнал до там, да не слагам каруцата пред коня.

1. Първата стъпка на най-простия алгоритъм за навигация е да се направи корекция на магнитометъра да показва чист север. Корекцията става или с формули или с карта на магнитната деклинация, за района на Черно море корекцията е около +4 градуса, но с това около ще ти даде голямо отклонение и затова като се знае позицията по формули или много подробни карти се прави корекция.
2. Прочитат се две точки на траекторията от базата данни (GPS данни), от тях се изчислява ъгъла по това направление спрямо севера.
3. Завърташ руля, така че движението да стане по това изчислено направление, като се следи коригираното показанието на компаса да сочи това направление.
4. Тъйкато лодката е в движение, тя ще се движи по това направление, но курса няма да е верен, ще се движи паралелно на зададения курс, затова се четат GPS данни от приемника. Повтарят се точките 2 и 3 с това показание и с втората точка от данните ти. Тази точка от алгоритъма се повтаря или до достигането на втората точка или до някаква приемлива грешка между реалния курс и зададеният.
5. След като се стигне точка 2, се взима точка 3 от данните за траекторията и се повтаря същото.
За по точен навигатор могат да се използват и данните от акслерометъра. Трябва да се има в предвид, че тези данни трябва много добре да се филтрират, с филтри с малко закъснение.