speedorhaste
New Member
Here is my challenge:
My car is a convertible and the roof is folded up and down by a two way momentary close toggle switch. The switch sends the up/down signal to an ECU which then controls an electric motor, hydraulic pump, etc.
To operate the roof, you have to hold the toggle switch in the up / down position until the roof has completed its fold / unfold process. The process takes about 35 seconds in either direction.
What I would like to do is add an interface between the switch and the ECU so that the signal is held for the required time. I have worked out this is feasible by using, say, a 556 timer configured as a flip/flop, so that the two momentary contacts in the existing switch act as the set and reset buttons. The toggled outputs can then drive separate relays which send the signal to the ECU. To automatically provide the hold down time, I can insert 555 timers which are triggered by the flip flop output, and which complete the circuit to fire the relays. I am pretty sure this will work.
The only problem is that I need the ability to be able to interrupt the timer mid way through its cycle. This is necessary in case something obstructs the roof part way though its movement, or if you just want to raise/lower it part way for maintenance. Being constrained to use only the existing 2 way momentary on toggle switch, I am looking for a way to reset the active 555 timer, by either pressing the switch once again in the same direction, or alternatively in the reverse direction. With the circuit I have described so far, pressing the toggle again in the same direction would do nothing (as the flip/flop will not change state) and pressing in the reverse direction will send the roof movement back the other way - so neither action with this initial circuit idea can actually stop the roof mid way.
Can anyone give me a hint as to what I need to add to this circuit idea to provide the desired "hold" control? It may be the answer lies in a totally different approach (a programmed PIC for example) but that is way beyond my knowledge.
Hope someone finds this a useful challenge.
My car is a convertible and the roof is folded up and down by a two way momentary close toggle switch. The switch sends the up/down signal to an ECU which then controls an electric motor, hydraulic pump, etc.
To operate the roof, you have to hold the toggle switch in the up / down position until the roof has completed its fold / unfold process. The process takes about 35 seconds in either direction.
What I would like to do is add an interface between the switch and the ECU so that the signal is held for the required time. I have worked out this is feasible by using, say, a 556 timer configured as a flip/flop, so that the two momentary contacts in the existing switch act as the set and reset buttons. The toggled outputs can then drive separate relays which send the signal to the ECU. To automatically provide the hold down time, I can insert 555 timers which are triggered by the flip flop output, and which complete the circuit to fire the relays. I am pretty sure this will work.
The only problem is that I need the ability to be able to interrupt the timer mid way through its cycle. This is necessary in case something obstructs the roof part way though its movement, or if you just want to raise/lower it part way for maintenance. Being constrained to use only the existing 2 way momentary on toggle switch, I am looking for a way to reset the active 555 timer, by either pressing the switch once again in the same direction, or alternatively in the reverse direction. With the circuit I have described so far, pressing the toggle again in the same direction would do nothing (as the flip/flop will not change state) and pressing in the reverse direction will send the roof movement back the other way - so neither action with this initial circuit idea can actually stop the roof mid way.
Can anyone give me a hint as to what I need to add to this circuit idea to provide the desired "hold" control? It may be the answer lies in a totally different approach (a programmed PIC for example) but that is way beyond my knowledge.
Hope someone finds this a useful challenge.