Git Product home page Git Product logo

gravimetric's Introduction

epccs

Hi, I am Ron. I am an electrical engineer working with LEDs, drivers, and related controls. Not so much microcontrolers at the moment (maybe a little.)

LEDs

When an electron passes through a P-N_junction, it releases energy, some turns into heat and some light. The amount of energy released is related to the semiconductor band-gap energy. Different semiconductors have different band gaps, so when a photon is emitted, its color can be roughly correlated with the band-gap energy of the P-N junction material. A trick some LEDs use is phosphor-down conversion to make a broader spectrum of light. Luminous efficacy continues improving; in other words, the ratio of photons to heat continues to improve.

Electromagnetic interference

I am no expert at EMI, but I have been fighting with several designs for about a year. The LED drivers are Buck, Boost, and Buck-Boost. In each case, there are parts of the circuit where the current flow path changes abruptly, usually involving switches like MOSFETs but also sometimes diodes. The abrupt change is nearly a discontinuity, but a ramp can be seen looking close. A magnetic H field flairs around the path, experiencing the sudden current flow. The edge of everything metal near that will block the hi frequency H field by developing current eddies. The superposition theorem tells us that the net result of the induced current ends up on the outermost edge. A relation between frequency and skin depth is also at play, but let's keep it simple and ignore thin traces. So, we are concerned with how those edge currents can reach out along the edges of planes and induce currents elsewhere. We need to do the circuit board planes so they enclose the discontinuous paths, and those enclosing edges don't cross areas where they can induce knock-on effect current flow. That will minimize emissions, but putting a cage over the compartment where switching occurs is better. A Near-Field Probe might help chase things down but drawing the switching paths and thinking about them is what I did.

Electromagnetic compatibility

Immunity testing is another aspect of these darn LED drivers. Some of the specifications use a technique called Bulk Current Injection (BCI, like ISO 11452-4). I found a culprit for the parts not getting through this test after getting some BCI test equipment. I removed the structures that could act like a loop-gap resonator.

Once the resonance grows large enough, the lights do some bizarre things. On the next iteration, it became clear that our microcontroller input had negligible immunity, but it worked fine on the bench. It is important if you don't want to burn cash to get some in-house BCI capability.

Conducted Emissions

Conducted Emission has to do with measuring voltage and current on the wires to the unit and has taken the longest to understand. The wires are long, nearly 2 meters for some tests; the idea is to represent the wiring harness. The main thing that I needed to understand was that the floating wires (to toggle switch and ilk) are resonators with 1uH per meter and 10pF out at the floating end. They build up and store energy, so you have to figure out how to dampen it. Here are some links Tacoma Narrows, Wave Behavior. The long wires with floating ends were also causing high E-field emissions because the entire 2-meter harness was placed on the table.

Thanks for visiting

That is it for now. I hope to find some time for my own projects (they are more fun).

gravimetric's People

Stargazers

 avatar

Watchers

 avatar  avatar

gravimetric's Issues

Latch-Up Test

The last page of this app note describes how to evaluate CMOS for Latch-Up.

https://www.onsemi.com/pub/Collateral/AN-339.pdf.pdf

AVR 32[48]pb might be susceptible to destructive latch-up; it is not clear from anything I have seen.

https://en.wikipedia.org/wiki/Latch-up

My thinking has been that the "trench" industry-standard technique helps to limit the destructive current, but some discussion and things like that On/Fairchild Semiconductor application note changed my mind.

Microchip corporation is going to be releasing a new line of AVR128DA that will target safety-critical industrial applications. Those will hopefully address some of these problems that can occur when microcontrollers are trusted to operate the equipment reliably.

https://www.microchip.com/wwwproducts/en/AVR128DA64

With that said, it should be evident that a more industrial worthy path forward will be to replace the 328pb and 324pb (perhaps with AVR128DA32 and AVR128DA48). However, development with the current parts will continue for the near term.

When a datasheet says must not be used within "safety critical" System that may be a clue about latch-up being a known issue.

Verify that the m32[48]pb Clock Fail Disable bit works.

The default is 0. For a fuse, that means it is set, confusing? Yes! I have been setting it to 1 thinking... well enough about that.

My current hypothesis is that the chip will start in a failed mode (e.g., 8MHz internal) and then switch to the softly driven pendulum (low power crystal). However, once in that mode, if the crystal fails, it will be latched to the internal oscillator.

To test, I may be able to short the oscillator input pin to the ground at start-up and watch blink rate, then open the short, and see if it is faster, and short again to see if it slows and keeps going slow when open again.

I2C multi-boss bug

Three Little Daemons

Actually, they are three state machines running. The day-night daemon (again it's a state machine) tracks the status of the alternate power input which could go to a solar panel. The battery-manager (bm) charges during the DAY and disconnects at other day-night states. The bm has some charging modes and trips the host shutdown if the battery is low. The host shutdown daemon enables the manual switch 90 seconds after powerup or after bringing the host UP from shutdown. When a shutdown occurs by software or manual switch the current is monitored to be stable for 90 seconds and then a 40-second delay occurs before removing power. The 90-second wait can be skipped if the application will stop alternating current usage (blinking LEDs) to cause current usage to be stable.

The daemons are done so that they can report state changes over I2C to the manager. This is done by changing the roles of the I2C devices, normally the application plays the role of boss, and sends things to the peon. But today the peon gets to become the new boss and send daemon events to the old demoted boss. Unfortunately, if the old boss tries to access things again the promoted peon can at times defecate on his ostentation (a bug I have not tied to fix, it seems appropriate for the times).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.