Electrical Issue: PIC input false triggering, Signal Noise suspected.


Closed Thread
Results 1 to 36 of 36

Hybrid View

  1. #1
    Join Date
    Feb 2013
    Location
    Quebec, Canada
    Posts
    67


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    A flash comes to my mind: what about static electricity buildup on the trolley itself?

  2. #2
    Join Date
    Oct 2009
    Location
    Utah, USA
    Posts
    427


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    abecker,

    are you using the same reed switches on the test bench that you have installed under the track?
    if not, is it possible that the switches you have under the track are flakey? defective?

    I assume you have considered vibration causing the reed switches to falsely trip.
    Have you considered switching to a Hall Effect switch to detect the train passing.

    As others have stated... I would put plenty of bypass capacitors, even one on the actual input line itself.

    Another thought is to have your code check multiple times for positive closure of the reed switch.

    something like... [caution: untested code to follow!!]

    Code:
    IF TrainIN = 1 THEN
       PAUSEUS 100  'note this time delay should be somewhat shorter than when the train really is passing by but longer than a false trip
       IF TrainIN = 1 THEN
           GOTO TrainDetected
       ENDIF
    ENDIF
    in other words determine how long the reed switch is closed when the train passes (an oscilloscope would help here) and make sure that your code requires the input to be true for longer than what a false trip would be

    In developing code and testing interface circuits I find that an oscilloscope is one of the most valuable tools on my bench.

    good luck
    Dwight
    These PIC's are like intricate puzzles just waiting for one to discover their secrets and MASTER their capabilities.

  3. #3
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Heckler,

    The reed switches are different ones but I have rigorously tested the ones under the track including the lead wire to the location of the new controller. This was easily done by rolling the trolley with magnet over the switch and checking the continuity. All 3 worked well.

    Vibration seems to be unlikely but I would have to devise a test to confirm that.

    I have worked with hall sensors before and considered it in concept but the most distant of the 3 track sensors is about 7 feet away from the controller. The advantage of the reed switch is that it does not require the additional complexity of getting 5vDC power to each sensor location and in the end, the the signal is still traveling along an antenna-like lead wire parallel to all this noisy DC motor operation and an arcing power connection (the trolley catenary.)

    Bypass caps as you suggest are a recurring theme in all the posts I have read. I assume you mean putting them on the control board trace at the node where the the input pin and pullup intersect? That would make it parallel with the pullup to ground?

    As I mentioned in a previous reply, I had read about dual sampling and think the idea has merit. I understand the concept in the code you provided, thanks. I will try this if external shielding fails to solve the problem. It is a bit of a hassle getting back into the control enclosure to get things ready for ICSP (some dis-assembly required.)

    I have a clunky old Tektronix scope with a CRT output and one channel fried but I could always make a project out of dusting it off and remembering how to use it again!

  4. #4
    Join Date
    Feb 2013
    Location
    Quebec, Canada
    Posts
    67


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    I've found that: Basic Electrical Parameters of Reed Switch (PDF).

    You'll see on page 3 they bounce a lot for a few miliseconds. I suggest you lower the pullup to 1k to improve noise immunity. If you're going to use LinkMTech's circuits think about using a Schmitt Trigger input your PIC.

  5. #5
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,621


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    I understand what you suggest about too weak a pullup, I had wondered about that myself, but I am unsure of how high a pullup current the pin should see, in other words how "stiff" the pullup should be. The spec sheet says the source current max on any port pin is 25mA. My gut tells me the reed switch should be able to handle that at 5vDC but I would hope that it would not be necessary to max out the current to mask the noise.

    Any thoughts?
    The 25mA source/sink current doesn't apply here. That's what the pin can source or sink when it's configured as an output - that's not what you're doing. When the pin is configured as an input you can, in this case, pretty much ignore the current flowing into it (it's about 100nA on the 16F722).

    Your pin is held high, at 5V (?), by the 47k pullup. The only current that's flowing is the 100nA (max) into pin and any leakage current thru the switch. The reed-switch, when activated, pulls the pin to GND, ~100uA is flowing down thru the pullup resistor causing a voltage drop of ~5V across the resistor, the input is now low. All is well, on the drawing board - and in your testup.....

    Que long leads, aka antennas. With such a weak pullup as 47k it doesn't take much noise on the long wires to start "yanking" on that logik level '1' provided by the 47k resistor.

    Although there are reed-switches available (I quickly browsed Digikey) that can only handle around 100uA, some 1mA most of them are capable of 100mA or more. If I were you I'd lower that pullup by an oder of magnitute (or two even) and add a small cap as per previous suggestion - then try again. Even a 470ohm resistor will still only give ~10mA thru the switch.

    /Henrik.

  6. #6
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Henrik,

    I over thought the issue and had a "brain-fault" when I got to thinking of the output parameters instead of the pin configured as imput. I appreciate your pointing that out and following it up with a very comprehensible explanation and calcs. I follow how the noise might be more influential on the signal if the pullup is not adequate.

    Thanks for the clear explanation and for pointing out my error in thinking about the pullup currents.

  7. #7
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Michel,

    At present I'm not so concerned about reed switch bounce (although that may become a later issue) since the jumping to the next set of operations in the PIC program behavior occurs without switch activation, before the magnet gets anywhere near it. That is why I suspect some sort of EMF is being picked up by the switch leads which run the length of the track above.

    I am aware however that there may be several things acting here so I am willing to give all theories consideration.

  8. #8
    Join Date
    Nov 2007
    Location
    West Covina, CA
    Posts
    219


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Like the guys said, a stiff pullup and a cap. I would also add an inductor to keep the noise spikes out.
    You can probably get by without L2 in this diagram but added it in just in case.

    Name:  Filtered input.JPG
Views: 122438
Size:  60.8 KB
    Louie

  9. #9
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    LinkM,

    Thanks for the great circuit sketch! I don't have any inductors on hand but if this works well, I would consider making a module of it for future uses of the reed switch as a sensor.

    I have an application question and to help explain it I have attached a schematic of my board. My traces on the etched board follow the lines on the schematic literally. You will observe that at PIC pins C4-C6 my three sensors are pulled up with 4.7k resistors to 5vDC. At the same connector I have a ground pin which further down the line combines the 3 grounds from the switches.

    My question is: Would it be good or bad practice to place the inductors further away outside the controller enclosure say under the table? This would necessitate for each of the 3 signal wires a length of lead wire maybe 6-12 inches away from the board itself (am I just creating another albeit shorter antenna?) The control enclosure is already pretty filled with stuff but maybe I could still fasten a daughter-board to take care of this function. I would really hate to redesign and rebuild my present main board yet again to integrate the inductors.

    Lastly since I am new to working with inductors could you spec or describe what I would be looking for number-wise from say the Digi-Key online catalog?

    Thanks.
    Attached Images Attached Images  

  10. #10
    Join Date
    Mar 2003
    Location
    Commerce Michigan USA
    Posts
    1,166


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    I'm not sure about the current required for the "run/stop, direction and turnout relays" but I notice you are sourcing the current instead of sinking it thru the PIC. That's bad design to me as most mosfet's even in the case of internal fet's in the PIC can sink more current than source. I would ideally use a NPN transistor for the relay drive circuits and feed them as a separate supply connection to the board where the power enters. I would also place a 10uF cap at the PIC pin's 19 & 20 along with the 100nF cap you already have. I also notice you have NO cap's for the display power circuits. I agree with Henrick that the ideal interface method is for optoIsolators on the inputs from the reed switches. If the wiring is run along side the track and the engine is running there is quite a bit of coupled energy into the inputs of the PIC as the engine is probably driven by a DC Brushed motor as well as the wheels making and breaking the circuit.
    Dave Purola,
    N8NTA
    EN82fn

  11. #11
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Dave,

    As a novice I don't get exposure to best practices so this advice is very welcome. I will copy the info down and study it carefully. It will certainly be implemented in future designs that I explore. In my previous version of this control board I used relay driver IC's with single coil latching relays. They shared the same +5 and gnd traces with the PIC however. As far as sourcing current at the pin, since these relays are dual coil latching I only pulse them and no two relays are pulsed at the same time so I felt safe that I was not exceeding any pin source capability.

    I appreciate your suggestion that I should have caps for the display power. I will do further research on how to accomplish this.

    I think your last remark is on the money. As I mentioned in another reply, I run the trolleys off the overhead wire at times (I can switch between rail only & rail with overhead wire.) When running off the overhead, the trolley caenary arcs plenty. Talk about a "dirty" operating environment!

    I appreciate your comments.

  12. #12
    Join Date
    Oct 2009
    Location
    Utah, USA
    Posts
    427


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    abecker,

    I think your getting some excellent advice here. As I have said before there are world class programmers here (and also those knowledgeable in electronics design) and all are willing to help.

    For all this good advice I think you might owe us some pictures of your train setup and all that
    Having a train that actually has an catenary that actually works sounds pretty awesome!
    What a fun world to live in, down at the miniature level.
    And merging micro controllers and PIC BASIC... what could be better.

    You might consider wiring up a length of 6 conductor ribbon cable to the ICSP header then solder it up to a 6 pos header to plug your pickit into.
    that way you can easily impliment code changes without having to tear things apart.

    Nothing better than to be able to make code changes and test ideas out and see almost instant results.

    great stuff!!

    now if you have a few minutes check out this...
    http://hackaday.com/2016/01/17/the-s...ur-wunderland/
    It is awesome to go to google earth and get down in minature and roam around this model setup.
    Dwight
    These PIC's are like intricate puzzles just waiting for one to discover their secrets and MASTER their capabilities.

  13. #13
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Heckler,

    I first discovered this thread by looking at a print ready version of the tree.

    My trolley system is at the beginning stages but all the track and overhead is assembled and in good working order when run manually.

    I am not at home now but I will send some photos of the table and the controller.

    I agree the advice has been very generous and I received more feedback than I expected. I would hope this thread is of use to others in the future with similar designs.

  14. #14
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Voila! Photos as promised.

    I have yet to provide the scenery work but first things first- get it operating. Manual operation works as designed.

    The power (0-17vDC) from the speed control can be routed for overhead supply or to the tracks only by a manual switch. The yard turnout can be operated manually or via the PIC logic.

    Controller has an LCD and three buttons to program number of trips, seconds at east and west (future) stations or yard termination. Prompts for setting automation are displayed on LCD.

    I made the enclosure out of acrylic sheet so I could custom size it and intended to paint it gray but since it looks pretty cool as a transparent case I think I'll leave it that way.
    Attached Images Attached Images       

  15. #15
    Join Date
    Nov 2007
    Location
    West Covina, CA
    Posts
    219


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Quote Originally Posted by abecker View Post
    I would really hate to redesign and rebuild my present main board yet again to integrate the inductors.

    Lastly since I am new to working with inductors could you spec or describe what I would be looking for number-wise from say the Digi-Key online catalog?
    Hi abecker,
    The inductors should be in your controller circuit because just as your intuition suggests, you will end up with a short antenna at the input of your box.
    If you have room at the reed switch connector, these inductors can be installed at the molex connector you have there by soldering each one inline with the wire going to the switch and the other side crimped to the connector pin. Be sure to shrink tube each one to keep from shorting to its neighbor.
    And it looks like you can put your filter caps at each (R1 pullup resistor and PIC input) to the nearest GND.
    Louie

  16. #16
    Join Date
    May 2013
    Location
    australia
    Posts
    2,680


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    another way is to filter the input with a software routine

    Code:
    reeds var byte
    reeds_flg var byte
    reed_1_active var reeds_flg.0            
    reed_2_active var reeds_flg.1
    reed_3_active var reeds_flg.2
    reed_cnt var byte[3]
    reed var byte
    define reed_threshold 64
    
    chk_reeds:
    reeds=portc & $70  ;c4 c5 c6  active low
    if reeds < 112 then
    reeds=reeds >> 4
    for reed = 0 to 2
    if ! reeds.0 then
            reed_cnt[reed]=reed_cnt[reed]+1 
            if reed_cnt[reed]> reed_threshold then reeds_flg.0[reed]=1
    else
            reed_cnt[reed]=0
    endif
    
    reeds=reeds>>1
    next
    endif
    return
    if you call the chk_reeds subroutine regularly (must be regular) say in this case 100 times per second, then if a reed input is consistently low for 64 (counts in a row the reed_threshold) then the reed_x_active flag will be set.
    Last edited by richard; - 12th February 2016 at 11:26. Reason: correction

  17. #17
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    Thanks Richard.

    This has great potential in my code because as you commented, once I set close the realys to the trolley power all I have to do is loop through the routine that checks for a low sensor. To make it easier, the trolley dbeing on a track can only go in on direction at a time so in each stage of travel I know exactly which sensor to poll. Not like I would need an interrupt to see which of the three sensors went low. The time the magnet is over the reed switch is eon's compared to the rate at which the pic can poll the sensor line.

    As I mentioned to one other reply, the pic advances to the next logical set of events just when the trolley gets moving and is several feet away from any sensor. This is what leads me to think some DC motor noise or even arcing of the pickup on the overhead wire is being picked up at the sensor pins and causing a false signal.

    I will study your code and possibly with it and many of the other outstanding suggestions here, find a solution which I will gladly report on.

  18. #18
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    LinkM,

    I appreciate your idea to inline the inductors and naturally shrink-tube saves the day for so many inline solutions like this.

    I did strike upon the idea of soldering the caps to the traces under the board because the board is on standoffs anyway.

    By the way in my searching the net for use of inductors and caps for noise filtering, I discovered some LC filter arrays in a single IC type package with 4 per chip, by TDK (series MEA) but it looked like they were narrowly designed and spec'd. for telecom use. Not understanding enough about LC filters I didn't know if the product series could have helped my situation. It was a very slick idea though having 4 filters on the chip. If that worked, it would be nice to put that on the main board in any new design I might come up with in the future.

    Thanks for all your help.

  19. #19
    Join Date
    Jun 2015
    Posts
    18


    Did you find this post helpful? Yes | No

    Default Re: Electrical Issue: PIC input false triggering, Signal Noise suspected.

    I don't know about static buildup because I never have experienced that. It did get me to thinking that since the trolley takes power from an overhead wire and completes the current path to the track rails, I have noticed quite a bit of arcing as the catenary moves along the wire. Talk about dirty transmission conditions and potential for all sorts of electrical stuff going on. I have a way to switch the trolley pickup to just the rails and eliminate some of that arcing. I should try that as a test.

    One thing I can say is that the motor current path is run through relay contacts which do not share any current paths with the control circuitry, although they are in close proximity on the control board. Boy I sure hope the problem doesn't come down to isolating the relays in a grounded case since I just re-etched and re-built this version of the board from an earlier version where they were apart.

Similar Threads

  1. Intermittent reset of 16C6440 - possible noise issue
    By Christopher4187 in forum General
    Replies: 4
    Last Post: - 16th May 2012, 12:43
  2. Noise on input signal
    By fanman in forum mel PIC BASIC Pro
    Replies: 17
    Last Post: - 28th February 2012, 02:55
  3. Electrical noise problem with PIC 16f84
    By Snap in forum General
    Replies: 11
    Last Post: - 26th September 2007, 09:36
  4. Input Noise
    By PJALM in forum mel PIC BASIC Pro
    Replies: 13
    Last Post: - 28th February 2006, 19:26
  5. False Triggering I/O
    By pdegior in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 17th July 2005, 09:02

Members who have read this thread : 0

You do not have permission to view the list of names.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts