OC32 feedback command
Ik heb een "feedback" commando gevonden en getest.
In de doc geef je aan dat de parameters vrij zijn, maar dat het logisch is hier Pin nr en aspect no in te vullen.
(Zou handig zijn als dit in OC32Config als defaultwaarde wordt ingevuld ...)
Bij het uittesten is me echter opgevallen dat de reply direct als antwoord op het commando komt.
Leuk, maar de Ack geeft als aan dat het commando is ontvangen, dus ik zie hier geen toegevoegde waarde.
Wel toegevoegde waarde heeft dit in combinatie met het Mpx commando, waarmee je magneetartikelen kunt schakelen, net als met een PM32.
De PM32 geeft na ontvangst van een commando eerst gewoon een ack, pas als het commando geheel is uitgevoerd komt de reply, zodat het programma weet dat het magneetartikel is aangestuurd, en je ervan kunt uitgaan de de wissel is omgezet.
Dat gaat dus mis bij de OC32, de bevestiging komt direct na ontvangst van het commando, niet pas als het commando is uitgevoerd. Dat maakt het lastig voor de programmatuur uit te vogelen of een wissel al zou moeten zijn omgezet, of dat het commando nog in de wachtrrij staat.
Ik zie 2 oplossingen :
1. pas het Feedback commando aan, zodat de respons pas komt als het commando is uitgevoerd
2. Definieer een (nieuw) wait commando, waarmee je kan wachten totdat een voorgaand commando is uitgevoerd
in het laatste geval heb je per aspect 3 commando's nodig:
- Het mpx commando op de wissel om te zetten
- het wait-until-done commando
- het feedback commando
Ik denk dat dit laatst het fraaiste is, je hebt dan zelf de keuze tussen direct een feedback geven, of vertraagd, en je kunt ipv een feedback commando ook andere acties uitvoeren, zoals bv bij een overweg, waar je de lampen uit kunt doen zodra de bomen omhoog zijn.
Je kan dit wait commando ook laten toepassen icm met servo commando's.
Kort samengevat, een wait-until-done commando dat kan worden toegepast icm met een Mpx commando, een servo commando of misschien zelfs icm een puls commando zou zeer welkom zijn. (bij een puls wordt dan gewacht totdat de puls is afgelopen, of indien de glow tijd over is)
Idee moet nog verder worden uitgewerkt, maar voor mpx comando's is dit zeer wenselijk, omdat het stuurprogramma niet weet welke tijd er bij het mpx commando is ingevoerd, en je er dus van moet uitgaan dat de waarde in het programma juist is ....
Jos Bron, Utrecht