SCR Question - Will this work ...

Discussion in 'General Electronics Chat' started by CoachKalk, Jun 21, 2012.

  1. CoachKalk

    Thread Starter Member

    Sep 20, 2011
    139
    2
    I am looking for some feedback regarding the SCR section. I originally had each PB separated with a dedicated "on" PB (of course) and a dedicated "stop" PB.

    I am wondering if my proposed circuit would work - using 3 separate start buttons, but have 1 stop button.

    Also, I am somewhat slow, but I can take a hint. I have switched around my 555 circuits so I am using Vcc2 to power them up and using the arduino output to "switch" them on/off. Any comments/concerns would be welcomed.

    And finally, I also separated the Laser/LDR's. The voltage divider portion will just be "on" at start up and the laser will be controlled via the arduino. As before, any comments/concerns would be appreciated.

    [​IMG]
     
  2. gerty

    AAC Fanatic!

    Aug 30, 2007
    1,153
    304
    The way your "level select" stop button is drawn, it looks like any level selection will pull pins 50-51-52 low on the Arduino since they're all tied together. You need a 3 pole switch ,or some kind of relay arrangement if you want to stop it that way.
     
  3. CoachKalk

    Thread Starter Member

    Sep 20, 2011
    139
    2
    Duh - I am not sure how I didn't see that!

    I only have NO and NC PB's to work with so I may have to just have 3 separate stop buttons.
     
  4. ErnieM

    AAC Fanatic!

    Apr 24, 2011
    7,386
    1,605
    Again, you are doing things in hardware your micro should be doing for you.

    Do you have a 4th input available? All you need are 4 single pole buttons and 4 resistors wired so a push makes an input pin change from high to low (or low to high).
     
  5. CoachKalk

    Thread Starter Member

    Sep 20, 2011
    139
    2
    Ernie - I do have many inputs available, but the game playing buttons I have are all momentary, NO or NC. Admittedly, I am a complete beginner at the programming side - and only slightly beyond beginner at general electronics, so what seems obvious to the veterans may not be so to me.

    In my application, I need 1 press of the momentary Start Button to keep the pin changed - for the duration of game play - until a stop button is pressed. Unless I have some sort of latching added, I am not sure how to get my button to work. I am guessing someone with programming experience may be able to take that 1 momentary signal and use it to provide the desired results, but I am not there yet for sure.

    I do understand how a push on - push off button would fix all my problems, but all of the "fun" looking jumbo type game PB's I found were all momentary.
     
  6. djsfantasi

    AAC Fanatic!

    Apr 11, 2010
    2,802
    832
    Is some variant of the modified diagram, that I've attached, a workable low-tech solution? Can the NC pushbutton be placed on the common side of the three SCRs?
    [​IMG]
     
    • scr.png
      scr.png
      File size:
      58.6 KB
      Views:
      60
  7. kubeek

    AAC Fanatic!

    Sep 20, 2005
    4,670
    804
    CoachKalk,
    why are you doing complicated hardware when everything you got there can be easily done in software?
    The level switches and stop button should all be just going straight into the arduino, no SCRs or other stuff.
    The same goes for the penalty and siren circuit, you can easily make timer and oscillator in software, the only thing that should stay there is R4 and Q2 to drive the siren.
     
  8. CoachKalk

    Thread Starter Member

    Sep 20, 2011
    139
    2
    kubeek,

    I am just learning the arduino side and I have tried to search for timer/ time tutorials. The main thing I found refers to the delay() function and basically how that should not be used other than for debounce because everything else is stopped during the delay.

    I am still not sure how to handle the fact that I can only send the arduino momentary signals that I will need to use for varying lengths of time. If you could offer up topics/names that I could Google to handle the momentary signal it would be appreciated. Believe me, I have looked, but obviously I am not using the correct terminology. I will look up arduino oscillator as well.

    I had the SCR's working with separate stop buttons (I was just wondering about the possibility of getting down to 1) and the 555 is the first IC I worked with through the tutorials on this site so they stuck out in my mind when I needed a non-critical timer cicuit.

    I suppose it can be frustrating for the readers who know this stuff to deal with the noobs, but I really do appreciate the help and patience provided - especially when it is necessary for all of you to pound it in my skull several times.
     
  9. kubeek

    AAC Fanatic!

    Sep 20, 2005
    4,670
    804
    Frankly I never used arduino, but I used the Atmega128. I think that the arduino environment should be capable of doing everything you need.

    As for the buttons: you can either use interrupts or polling to check if the button was pressed. When one of the three mode buttons is pressed, you set an appropriate variable to 1 and the other two to 0. You don´t need any debouncing because after the first push of the same button nothing changes. The stop button sets all three variables to zero.

    For the rest, I think you should post your code to see what resources of the atmega you´re using and how to put in there the two timers.
     
  10. #12

    Expert

    Nov 30, 2010
    16,260
    6,766
    Personally, I like your drawing in post#6. It will work.

    I know nearly nothing about microprocessors. I not only understand your plight, I don't care if you aren't using the "best" method. You are allowed to do the best you can with what you have to work with.
     
  11. vpoko

    Member

    Jan 5, 2012
    258
    47
    I think I'm missing some context here and I apologize if I'm misunderstanding your question as a result. If you're asking how to use a momentary button as a toggle button with an Arduino, it's pretty simple. Conceptually, you keep a boolean variable in the Arduino's memory and every time the momentary signal is received, the variable gets inverted (true to false and vice versa). You'll need to do some debouncing since a button may be unstable during the transition and send extra signals; the debouncing tutorial in the Arduino IDE shows how to handle that.
     
Loading...