Hardware Help

Started by allynroe January 30, 2008
I finished up my preliminary hardware that goes along with post 22573.
I think I have lots of issues so I posted it on a website. Can you
please look at www.flycls.com/bx35 and provide input?

Thanks!
Allyn
Allyn,
I would make the following suggestions:

1. Relays are chattering when large relays are connected to the board
Issue 1: Use a resistor and a transistor to drive the relay coil. Also add a flyback diode across the coil to avoid a voltage spike. The inductance of the coil will continue to push current even after the coil is turned off. Search the archives for driving a relay.

2. When using GetPin command, processor detects input on test switches even though they are not depressed. Multimeter confirms switches are open.
Issue 2: I noticed that you have 5 volts going directly to the keypad. Try connecting that same line to ground and use the internal pull up resistors to read your input. This changes the logic. With this method 'low' is active and means that the button was pressed. 'High' means that a button was not pressed. Not using the internal pull up resistor allows the input to float.

4. Is the voltage regulator on the input pin the right thing to do, or should I divide it with resistors?
Issue 4: Are you referring to the 110VAC to 5VDC converter? Regulators are the way to go. Using a voltage divider may be hazzardous as the current will vary. If the current goes down the voltage ~may~ go up and let out the magic smoke. OR the current can go up and the voltage would drop - thus resetting the processor because the voltage may be too low. Either way stick with a voltage regulator to supply voltage to the processor.

Thad

allynroe wrote:
I finished up my preliminary hardware that goes along with post 22573.
I think I have lots of issues so I posted it on a website. Can you
please look at www.flycls.com/bx35 and provide input?

Thanks!
Allyn

---------------------------------
Never miss a thing. Make Yahoo your homepage.
Thanks Thad,
1. I'll use a transistor and resistor to control the relay. I had
the concept down and that is why I had the smaller realy driving the
larger relay. I guess adding the transistor would allow me to
eliminate the smaller relay. Would a MOSFET serve the same purpose?

2. I see that there is no reference to see if the state was low.
Looking at the development board shematic I see where it is tied to
ground with resistors.

3. Any ideas for this one?

4. The voltage regulator I am speaking about is on the interupt
pin. I have a pulser sending 12v that I wanted to bring down to 5v
for the BX-35.

Thanks again for the help!!!

--- In b..., Thad Larson
wrote:
>
> Allyn,
> I would make the following suggestions:
>
> 1. Relays are chattering when large relays are connected to the
board
> Issue 1: Use a resistor and a transistor to drive the relay
coil. Also add a flyback diode across the coil to avoid a voltage
spike. The inductance of the coil will continue to push current even
after the coil is turned off. Search the archives for driving a
relay.
>
> 2. When using GetPin command, processor detects input on test
switches even though they are not depressed. Multimeter confirms
switches are open.
> Issue 2: I noticed that you have 5 volts going directly to the
keypad. Try connecting that same line to ground and use the internal
pull up resistors to read your input. This changes the logic. With
this method 'low' is active and means that the button was
pressed. 'High' means that a button was not pressed. Not using the
internal pull up resistor allows the input to float.
>
> 4. Is the voltage regulator on the input pin the right thing to
do, or should I divide it with resistors?
> Issue 4: Are you referring to the 110VAC to 5VDC converter?
Regulators are the way to go. Using a voltage divider may be
hazzardous as the current will vary. If the current goes down the
voltage ~may~ go up and let out the magic smoke. OR the current can
go up and the voltage would drop - thus resetting the processor
because the voltage may be too low. Either way stick with a voltage
regulator to supply voltage to the processor.
>
> Thad
>
> allynroe wrote:
> I finished up my preliminary hardware that goes along
with post 22573.
> I think I have lots of issues so I posted it on a website. Can you
> please look at www.flycls.com/bx35 and provide input?
>
> Thanks!
> Allyn
>
>
>
>
> ---------------------------------
> Never miss a thing. Make Yahoo your homepage.
>
>
>
Hi,

?Question 1: relay chattering?

By looking at your relay circuit. Your are using one coil type relay to enable another relay that is solid estate. You do not need the coil relays. You can enable directly the two Crouzet 84134220 from the BX35. Just in case use a transistor to enable the Crouzet 84134220 relay.

To do that you should modify the circuit as follow: Remove the two T77S1D3 relays. Cut the T77S1D3-05 relay contact side that ground the Crouzet relay and connect it to the collector of a transistor. Using? a 500 ohms resistor connect it to the BX35 output pin IO13? and the other side of the resistor to the base of the transistor then connect the transistor emitter to ground. Now the transistor will enable the Crouzet relay. For the transistor you can use a MOSFET or a 2N2222 transistor.

Also you can do a test by connecting directly the BX35 output pin to the Crouzet relay to see if it's work with no problems. The output from the BX35 should be low to enable the Couzet relay. The Crouzet relay require .014 ma and 4-32 volts to enable it.

Also adds an electrolytic capacitor for the + 5 in the board and .1uf cap in every IC's pin connected to the +5

rosarite

-----Original Message-----
From: allynroe
To: b...
Sent: Tue, 29 Jan 2008 6:41 pm
Subject: [BasicX] Hardware Help

I finished up my preliminary hardware that goes along with post 22573.

I think I have lots of issues so I posted it on a website. Can you

please look at www.flycls.com/bx35 and provide input?

Thanks!

Allyn

________________________________________________________________________
More new features than ever. Check out the new AOL Mail ! - http://webmail.aol.com
1> You might drive the solid-state relay directly with logic, avoiding
coil spikes that will otherwise appear on Vcc without diodes across
the coils. You show no power supply bypass caps that would help
remove those spikes, so I suspect the chatter might be due to
processor resets caused by spikes on Vcc. If the SSR LED requires
more current than 20mA through a limiting resistance (most only need a
few milliamps) you can parallel multiple output pins for more current
drive, within the limit of the processor package. Treat the pins
identically in code.

2> You can use a pulldown resistor (maybe ~10k) on each switch input
to bring the input pin level to ground when the switch is open. I
think most of us would use a grounded switch instead, though, with the
pin's internal input pullup resistor to assure it floats high when the
switch is open. You might also need to address mechanical contact bounce.

3> Try FreqOut() to generate a tone for the "buzzer". It might also be
driven with a pulse loop - a bit-banged tone - with appropriate
PutPin()s and short delays.

4> The three-lead voltage regulator on a logic pin to limit a
higher-voltage pulse is novel and should work, but I think most folks
would use a resistive voltage divider to achieve the same level.
Tom
Thad, Rosarite, and Tom, I took your suggestions and updated my
schematic at www.flycls.com/bx35.

-I added a 470uf cap on the supply line
-Removed T77S1D3 relays and replaced them with 2N2222 transistors
-Added .1uf caps to all IC lines using VCC
-Added 10k pulldown resistors to all input pins
-Removed VR on interupt pin and added a voltage divider to cut 12v to
5v.

Next time maybe I should post a schematic here before I have boards
made. :)

Thanks for the help!!!!!!

Allyn

--- In b..., "Tom Becker" wrote:
>
> 1> You might drive the solid-state relay directly with logic,
avoiding
> coil spikes that will otherwise appear on Vcc without diodes across
> the coils. You show no power supply bypass caps that would help
> remove those spikes, so I suspect the chatter might be due to
> processor resets caused by spikes on Vcc. If the SSR LED requires
> more current than 20mA through a limiting resistance (most only
need a
> few milliamps) you can parallel multiple output pins for more
current
> drive, within the limit of the processor package. Treat the pins
> identically in code.
>
> 2> You can use a pulldown resistor (maybe ~10k) on each switch input
> to bring the input pin level to ground when the switch is open. I
> think most of us would use a grounded switch instead, though, with
the
> pin's internal input pullup resistor to assure it floats high when
the
> switch is open. You might also need to address mechanical contact
bounce.
>
> 3> Try FreqOut() to generate a tone for the "buzzer". It might also
be
> driven with a pulse loop - a bit-banged tone - with appropriate
> PutPin()s and short delays.
>
> 4> The three-lead voltage regulator on a logic pin to limit a
> higher-voltage pulse is novel and should work, but I think most
folks
> would use a resistive voltage divider to achieve the same level.
> Tom
>
Hi,
I do not know is this is? too late but I have a suggestion for the interrupt. Instead using a resistors, you can use an optocoupler? to received the interrupt from the pump and at the same time it will give you isolation between the micro and the pump.

You can use the DIGI-KEY part number 516-1651-5-ND. This one will take the analog voltage? signal from the pump and then send? a logic +5 signal to the micro processor interrupt.

rosarite

-----Original Message-----
From: allynroe
To: b...
Sent: Wed, 30 Jan 2008 3:50 pm
Subject: [BasicX] Re: Hardware Help

Thad, Rosarite, and Tom, I took your suggestions and updated my

schematic at www.flycls.com/bx35.

-I added a 470uf cap on the supply line

-Removed T77S1D3 relays and replaced them with 2N2222 transistors

-Added .1uf caps to all IC lines using VCC

-Added 10k pulldown resistors to all input pins

-Removed VR on interupt pin and added a voltage divider to cut 12v to

5v.

Next time maybe I should post a schematic here before I have boards

made. :)

Thanks for the help!!!!!!

Allyn

--- In b..., "Tom Becker" wrote:

>

> 1> You might drive the solid-state relay directly with logic,

avoiding

> coil spikes that will otherwise appear on Vcc without diodes across

> the coils. You show no power supply bypass caps that would help

> remove those spikes, so I suspect the chatter might be due to

> processor resets caused by spikes on Vcc. If the SSR LED requires

> more current than 20mA through a limiting resistance (most only

need a

> few milliamps) you can parallel multiple output pins for more

current

> drive, within the limit of the processor package. Treat the pins

> identically in code.

>

> 2> You can use a pulldown resistor (maybe ~10k) on each switch input

> to bring the input pin level to ground when the switch is open. I

> think most of us would use a grounded switch instead, though, with

the

> pin's internal input pullup resistor to assure it floats high when

the

> switch is open. You might also need to address mechanical contact

bounce.

>

> 3> Try FreqOut() to generate a tone for the "buzzer". It might also

be

> driven with a pulse loop - a bit-banged tone - with appropriate

> PutPin()s and short delays.

>

> 4> The three-lead voltage regulator on a logic pin to limit a

> higher-voltage pulse is novel and should work, but I think most

folks

> would use a resistive voltage divider to achieve the same level.

>

>

> Tom

>

________________________________________________________________________
More new features than ever. Check out the new AOL Mail ! - http://webmail.aol.com
Also, if you move the sounder to PD4, PD5 or PD7 (it's on PD6 now),
you can use PWM, which can provide more complex sounds, to generate
the tone instead of bit-banging it. PWM uses no processor time once
started and can provide more complex sounds.
Tom
Thanks Guys! I used FreqOut and that made the buzzer work! I just need
a simple warning buzzer if an alarm switch is detected. (Actually for
another project but since you get three PCBs its great to have them
work for more than one project)

I'll test the BX-35 with the SSR to see if it can control it directly.

I'm going to use the internal pullup so I can eliminate the extra
resistors.

I'm looking at the optocoupler to see if I can figure out how to work
it in.

Thank you again for all of advice!

--- In b..., "Tom Becker" wrote:
>
> Also, if you move the sounder to PD4, PD5 or PD7 (it's on PD6 now),
> you can use PWM, which can provide more complex sounds, to generate
> the tone instead of bit-banging it. PWM uses no processor time once
> started and can provide more complex sounds.
> Tom
>
The schematic looks better but:
- the AC relay isn't a coil; it's a current-limited LED. It's
datasheet shows that it needs 3-32VDC and draws 14mA, so its anode can
be directly connected to a processor output pin, cathode grounded. No
resistor is necessary since the SSR limits the current. The 2N2222
isn't necessary, I think.

Nit picks: if you grounded the switches instead of powering them, you
can use internal pullup resistors and cut the parts count. The 0.1F
bypass caps should not be polarized since the spikes they handle are
bipolar. I would add a diode from INT1 to Vcc to clamp an errant pulse
from the Veeder, but it isn't necessary if you trust the 12volt pulse.

Nice photo, BTW!
Tom