Beste,

Ik moet voor een project een puls detectie programmeren in een flow chart, indien deze pulse kleiner is dan 500ms voert deze functie A uit en anders functie B.

In PLC zou ik dit gewoon doen door een AND poort (met mijn input en de uitgang van merker RS) gevolgd door een merker M0.1 waarvan ik de uitgang aansluit op de Reset van de RS M0.2 en Input (niet) op de set.

Nu heb ik dit proberen te vertalen naar flowchart, maar wat blijkt, om een of andere reden werkt dit niet :s.

Kan er mij iemand helpen hoe je een positieve flankdetectie programmeerd in flowcharts.

MVG.

Een merker RS is een soort van PLC flip-flop? Je kunt dan met een bool/boolean variabele werken die je true of false maakt i.p.v. set en reset.

Ik maak een flankdetectie altijd op de manier dat ik de huidige waarde en de waarde van de vorige interatieslag neem en die vergelijk. Dus als het signaal nu hoog is en zonet laag, dan is er dus een positieve flank.

Als je signaal een knop is, houdt dan rekening met dender/sleep van je schakelaar. De meeste knoppen geven niet een mooie laag-naar-hoog overgang, maar doen dat scheef of schokkend. Wellicht dat dit al in hardware opgelost is, maar meestal is dat in de praktijk niet het geval. Een relais moet je hierin ook als een schakelaar beschouwen.

Op 2 april 2013 09:52:22 schreef Elektro M:
Beste,

Ik moet voor een project een puls detectie programmeren in een flow chart, indien deze pulse kleiner is dan 500ms voert deze functie A uit en anders functie B.

MVG.

Eerst zonder contact bounce:
Er zijn dan 4 toestanden : A, B , wachten op een opgaande pulsflank en wachten op een neergaande pulsflank.

Wachten op een puls houdt op als de puls begint. Je reset en start dan een milliseconde teller en je gaat naar de toestand "wachten op neergaande pulsflank" Als de neergaande pulsflank er is, dan kijk je naar de tellerstand, is die kleiner dan 500 dan ga je A doen is anders ga je B doen. Als A of B klaar zijn ga je terug naar het begin.

Is er contact bounce, dat wil zeggen dat de opflank en de neerflank gevolgd worden, met 1 tot 20 zeer kort op elkaar volgende op- en neerflanken, dan moet je daar een oplossing voor verzinnen. Doe je dat niet, dan werkt het allemaal niet goed. krijg je er vragen over en sta je met je mond vol tanden.

Als je echt kwaliteit wilt afleveren, dan laat je de op- en neerflank een interruptafhandelingsroutine starten. Dat heeft het voordeel, dat je ook andere dingen kunt doen met de PLC, dan verplicht wachten op een flank.

Een uitdaging: doe je best.

Je hebt het over verschillende dingen. Een flankdetektie is geen SR.

Een flankdetectie geeft bij een flank een puls van 1 cyclus (in IL voor niet een PLC in het bijzonder):


AND      IN1
AND NOT  HULPBIT
=        PULS
AND      IN1
=        HULPBIT

Op 2 april 2013 11:49:36 schreef Druiloor:
Als je echt kwaliteit wilt afleveren, dan laat je de op- en neerflank een interruptafhandelingsroutine starten. Dat heeft het voordeel, dat je ook andere dingen kunt doen met de PLC, dan verplicht wachten op een flank.

Onnodig met een PLC. Daarom heeft de gemiddelde PLC geen interrupts, die zijn totaal overbodig. Sterker nog, als een PLC op de een of andere manier zou wachten valt ie direct in storing.

Op 2 april 2013 14:20:35 schreef GJ_
[...]Onnodig met een PLC. Daarom heeft de gemiddelde PLC geen interrupts, die zijn totaal overbodig. Sterker nog, als een PLC op de een of andere manier zou wachten valt ie direct in storing.

Ah, onbegrip mijnerzijds, ik dacht dat PLC staat voor Programmable Logic Controller en daardoor dacht ik dat het een normale microcontroller betreft.

Het is ook een Programmable Logic Controller :-)

Het programma word continue cyclisch doorlopen: ingangen lezen, programma doorlopen, uitgangen en vlaggetjes schrijven, en weer van voor af aan. Op die manier doen ze dus van alles tegelijkertijd.

Bedankt voor de hulp!
De flankdetectie is ondertussen gelukt :).
PLC staat wel degelijk voor programmeble logic controller, maar dat was bij wijze van voorbeeld dat ik dat even aankaarte.
voor dit project werk ik met een pac.
van dender heb ik geen last :)

PLC's of PAC's hebben inderdaad geen last van dender, dat zou wel heel beroerd zijn.

Haha,

Dit ontgaat mij, maar gelet op mijn leeftijd zal dat zeker tolerabel zijn.

Waar ik wel mijn verbazing over wil uitspreken is dat het onderwijs tegenwoordig blijkbaar qua levensduur van de ermee gemoeide investering zeer beperkt zal blijken, als men de focus richt op vigerende producten en software, en niet op fundamentele wetmatigheden en probleemoplossende vaardigheden, die een lang lang leven bruikbaar blijken te blijven en zijn opgedaan in de tijd, in casu de jeugdige jaren, dat men adaptief is voor het aanleren van fundamentele zaken.