Hallo allen,
Ik heb intussen al een tijdje een logo in gebruik met een waterpomp, iets wat geweldig werkt. Er is ook een niveausensor aangesloten van 0-10v op een analoge ingang, waardoor het niveau prima af te lezen valt. Een analoge uitgang verzorgd de sturing van de frequentieregelaar om het toerental te regelen. Nu de kwestie zelf:

Het waterniveau wil ik graag in de buurt van een bepaalde waarde houden. Nu heb ik het plan opgevat om te proberen of de logo de pomp kan aansturen op basis van de verkregen input uit de niveausensor. Dus bij een bepaalde onderwaarde starten en bij een bovenwaarde weer stoppen. Het toerental is daarbij nog niet zo noodzakelijk om mee te nemen, aangezien de laagste snelheid meestal voldoende is om het niveau te handhaven. Dus puur starten en stoppen voor nu. Ik kan het programmatechnisch zelf waarschijnlijk wel kloppend maken, maar ik kom er nog niet uit welke blokken/functie dit zouden kunnen verzorgen. Wie kan me de goede richting in duwen?

analoge drempelwaardeschakelaar

Voer een hulpvariable in: pompstatus (een boolean, pomp draait of draait niet)

Init:
 (init)
Lus:
 lees waterniveau
 indien erg laag EN pomp draait niet: doe pomp draaien
 indien erg hoog EN pomp draait: stop pomp
 beetje vertraging

Mogelijke toevoegingen/verfijningen:
* pompstatus alleen veranderen als dat gedurende bepaalde tijd verlangd wordt
(om "hikken" te vermijden als er bv. een golfje door het water gaat)
* bij iedere statuswijziging ook een bericht uitsturen en/of een log entry

Complexer:
* pompstatus is geen boolean meer maar een integer, die overeenstemt met het pwm-getal waarmee de pomp wordt aangestuurd
* als de pomp wordt ingeschakeld, is dat op een minimum pwm-getal, blijkt dat de boel blijft vollopen dan kan dat pwm-getal verhoogd worden
* als de pwm al maximaal staat en de boel blijft nog steeds vollopen, dan kan er al eens een alarm gegeven worden - "pompen of verzuipen" is dan de kreet :)

Voor het echt regelen van het nivo met de F.O. gebruik je een PI regelaar.
Voor het schakelen op nivo's gebruik je een analog threshold trigger.
Je kunt deze ook kombineren.
Dus onder en boven een bepaald nivo uit, tussen het nivo analoog regelen.

Het kan ook anders, tal van mogelijkheden, maar dit zijn zo de makkelijkste blokken.

Welke versie van de LOGO gebruik je?
De PI regelaar zit in de 0BA5 en nieuwer
De Analog Threshold trigger in de 0BA3 en nieuwer.

Op 11 december 2022 16:44:44 schreef Paulinha_B:...

Hoe wil je dat in een Siemens Logo stoppen? :-)

Op 11 december 2022 16:51:21 schreef Toeternietoe:
Voor het echt regelen van het nivo met de F.O. gebruik je een PI regelaar.

Kennelijke werkte de P regelaar van TS al heel behoorlijk. Met een drempelwaardeschakelaar er bij als extra lijkt het mij een stuk simpeler.

Op 11 december 2022 16:58:37 schreef GJ_:Hoe wil je dat in een Siemens Logo stoppen? :-)

Geen idee hoor, ik heb zo'n ding nog nooit onder handen gehad (zoals blijkbaar wel duidelijk is ;) ) Maar het is toch "programmeerbaar" dus dan kan men er toch lineaire code voor schrijven, zou ik denken?

Nu, als ik mijn inbreng zo nog eens bekijk moet ik toegeven dat het er nogal danig Arduino-achtig uitziet. Ik moest eens iets anders gaan leren, blijkbaar, om geen oogkleppen te kweken...

[Bericht gewijzigd door Paulinha_B op (22%)]

Op 11 december 2022 17:08:44 schreef Paulinha_B: Maar het is toch "programmeerbaar" dus dan kan men er toch lineaire code voor schrijven, zou ik denken?

Nee. Die logica klopt niet :-)

En Arduino achtig is helemaal appels met peren vergelijken.

Enne, wat is lineaire code? edit: laat maar, boeit niet en is off-topic.

Oei. Waarschijnlijk daarom dat die dingen zo duur zijn :)

Duur omdat ze niet met c te programmeren zijn? Ik zie de logica niet?

Op 11 december 2022 16:51:21 schreef Toeternietoe:
Voor het echt regelen van het nivo met de F.O. gebruik je een PI regelaar.
Voor het schakelen op nivo's gebruik je een analog threshold trigger.
Je kunt deze ook kombineren.
Dus onder en boven een bepaald nivo uit, tussen het nivo analoog regelen.

Het kan ook anders, tal van mogelijkheden, maar dit zijn zo de makkelijkste blokken.

Welke versie van de LOGO gebruik je?
De PI regelaar zit in de 0BA5 en nieuwer
De Analog Threshold trigger in de 0BA3 en nieuwer.

Er hangt een 0ba8 in. Via utp gekoppeld aan een hmi scherm.

Op 11 december 2022 17:12:34 schreef Paulinha_B:
Oei. Waarschijnlijk daarom dat die dingen zo duur zijn :)

Hoezo duur? Er bestaat eigenlijk niet veel goedkopers.

Op 11 december 2022 17:44:18 schreef GJ_:
[...]Hoezo duur? Er bestaat eigenlijk niet veel goedkopers.

Ik geef u grif gelijk: beter maar niet verder op ingaan. De lachsmoelekes gaven al de hele tijd aan dat we maar wat grapten, nevenaf. Daar zijn grenzen aan.

Toch kan ik niet laten nog even te knipogen naar uw vraag aangaande linaire code - een antwoord uit onverdachte bron: https://www.goodreads.com/quotes/6305-begin-at-the-beginning-the-king-…

[Bericht gewijzigd door Paulinha_B op (26%)]

Op 11 december 2022 17:52:03 schreef Paulinha_B:
Toch kan ik niet laten nog even te knipogen naar uw vraag aangaande linaire code - een antwoord uit onverdachte bron: https://www.goodreads.com/quotes/6305-begin-at-the-beginning-the-king-…

Ah, vandaar.
“Begin at the beginning," the King said, very gravely, "and go on till you come to the end: then stop.” gaat namelijk voor geen enkele PLC op. Die werken per definitie cyclisch.

Alleen maar aan - uit, zonder te regelen:

Pomp1.lsc

Op 11 december 2022 19:35:13 schreef Toeternietoe:
Alleen maar aan - uit, zonder te regelen:
[bijlage]

Er zijn dus meerdere manieren. Ik ben er gisteravond voor gaan zitten en de blokkenreeks nog eens doorgelopen. Ik zag je bericht vanochtend pas. Niettemin heb ik toch wel wat voor elkaar gekregen, maar op een andere manier. Met een Analog differential trigger waarbij ik Delta negatief gesteld heb. Geen idee hoe het zich houdt, maar we gaan het zien. Loopt in testopstelling momenteel.

Nu met regeling:

Pomp2.lsc

Stel het minimale teoerental voor de pomp in op je F.O.
en gebruik het hele regelbereik (0-10V) van de LOGO! om binnen je minimale en maximale toerental je F.O.

Op 12 december 2022 16:01:51 schreef Toeternietoe:
Nu met regeling:[bijlage]
Stel het minimale teoerental voor de pomp in op je F.O.
en gebruik het hele regelbereik (0-10V) van de LOGO! om binnen je minimale en maximale toerental je F.O.

Dit is het. Makkelijker dan ik gedacht had trouwens. Hier kan ik wel verder mee. Morgenochtend eens integreren in het programma en dan kijken wat er gebeurd, maar dit ziet er goed uit. Bedankt Toeternietoe.

Je moet zelf aan het experimenteren met de juiste P en I tijden in je regelblok zodanig dat de regeling niet pendelt, maar ook niet te traag wordt.
Succes.