uC i en analog miljö - vad krävs?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
bingmachine
Inlägg: 37
Blev medlem: 1 april 2013, 14:01:45

uC i en analog miljö - vad krävs?

Inlägg av bingmachine »

Hepp!

Jag jobbar med en prototyp-design som baseras på en Arduino Uno. Nästa steg är en mer riktig (Arduino-lös) prototyp, där uC:n (som går på 5V) kommer befinna sig i en analog +/-12V-miljö. Det finns ju två delar att tänka på som jag ser det. Det första är själva funktionen, dvs att skala om signaler som ska mätas analogt, eller använda extern komparator e.dyl. (med ev hysteres) på signaler som ska mätas digitalt och där omslaget är viktigt. Den andra delen är säkerhetsaspekten - att säkerställa att uC:n inte tar skada. Och det är den delen jag är lite osäker på.

1. Ingångar. Det är väl CMOS med skyddsdioder? Räcker det inte då med ett seriemotstånd som begränsar ev. ström på ingången? Eller?
2. Utgångar. Samma sak här. Räcker det inte med ett kortslutningsskydd i form av ett seriemotstånd också där?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: uC i en analog miljö - vad krävs?

Inlägg av sodjan »

1. Du har tydligt specat i databladen inom vilka gränser som insignalerna ska ligga. I ditt fall mellan 0 och 5 V.
2. Du ska aldrig kortsluta utgångarna. Vad vill du skydda dig mot ??
Användarvisningsbild
Icecap
Inlägg: 26648
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: uC i en analog miljö - vad krävs?

Inlägg av Icecap »

Det är dåligt design att anta att de interna skyddsdioder "klarar biffen"! Signalerna till och från µC'n ska jobba inom de givna ramar och inget annat! Det kan betyda att man får bygga spänningsdelare, offsetta signaler osv. men det ingår.

Sedan ser jag inte vad ±12V har med "analogt miljö" att göra, jag är även mycket undrande på vad "analogt miljö" betyder - men du kan ju ha en plan med det.
ElectricNooB
Inlägg: 600
Blev medlem: 26 juli 2011, 20:58:06

Re: uC i en analog miljö - vad krävs?

Inlägg av ElectricNooB »

1:

Jag skummade igenom ett datablad för en PIC (Lär väl vara liknande för uno'n) och dess I/O pinnar klarar spänningar på omkring 0.2*Vdd men inget under Vss. Så det borde väl ställa till med lite problem när det kommer till att skydda med dioder. För även en shotkeydiod har väl ett inte helt försumbart "forward voltage" (framåt spänning??) över sig?

2:

Beror väl helt på vad den är ansluten till?

Som sagt. Väldigt knapphändig information... :?
Senast redigerad av ElectricNooB 2 augusti 2013, 00:35:31, redigerad totalt 1 gång.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: uC i en analog miljö - vad krävs?

Inlägg av sodjan »

Om man vet i förväg att man har en 0-12V signal så är det
ju bara att dela ner den till 0-5V. Om man talar om generella
överspänningsskydd mot i förväg okända spänningsnivåer, så
är det hela ju en helt annan fråga.
ElectricNooB
Inlägg: 600
Blev medlem: 26 juli 2011, 20:58:06

Re: uC i en analog miljö - vad krävs?

Inlägg av ElectricNooB »

Jag tolkar 1an: som en överspännings fråga. Dock så skulle det ju vara fint att inte behöva tolka som en mufti... TS! :lol:
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: uC i en analog miljö - vad krävs?

Inlägg av sodjan »

Jag tolkar 1'an som en fråga om integrering av 12V elektronik
med 5V dito. Inte som en generell överspäningsfråga. :-)

Sen så var det väl *analoga* 0-12V signaler, så jag fattar
inte riktigt vad det hela går ut på.
danei
EF Sponsor
Inlägg: 27427
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Re: uC i en analog miljö - vad krävs?

Inlägg av danei »

AN521 figur 2. Visar exakt det Icecap säger att man inte ska göra, visserligen inte samma µC men konstruktionen är likvärdig. Det finns antagligen motsvarande dokument för AVR om man bara söker.

Nu var det väl ±12V vilket jag tolkar som audio. Men om TS kan vara tydligare underlättar det ju.
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: uC i en analog miljö - vad krävs?

Inlägg av jesse »

Det är ganska ointressant att ingången på en µC tål VCC + 0.2 volt eller liknande. 12 volt kan givetvis skalas ner så att det blir 5 volt. Men det är inte där problemet ligger när det gäller att skydda processorn.

Det intressanta är att när ingången eller utgången kopplas till omgivningen så måste man räkna med att det kan uppstå ESD-urladdningar i storleksordningen 15000 volt om någon råkar pilla på en ledare t.ex. En spänning som inte får ledas vidare in till något processorben. Därför har man olika lösningar för att förhindra detta.

Till viss del kan de inbyggda dioderna skydda om man använder ett seriemotstånd på ingången. men med tanke på att det kan bli ganska stor energi och dioderna är väldigt känsliga så är det sällan tillräckligt. En extern TVS-diod är ofta lite kraftigare och kan ta upp ganska mycket energi under kort tid.

Bäst är om man använder optokopplare som galvaniskt isolerar processorn från insignalerna. Man kan även isolera med en transistor.

Man kan kombinera en transientskyddsdiod (TVS) med en kondensator och ett motstånd för att kunna leda bort oönskad ESD. Kondensatorn tar då bort snabba spikar som dioden inte hinner med.

Men är det analoga signaler så får man ju tänka på att ju fler komponenter man hänger på desto större risk för brus eller annan förvrängning av signalen.

Här en artikel jag hittade (slumpvis googlande): Is it OK to rely on an ADC's internal protection diodes?.

Här en lite mer utförlig artikel från Analog Devices om att skydda både matningsspänning, in- och utgångar:
http://www.analog.com/library/analogdialogue/archives/43-04/process_control.html (sök på ESD så hittar du de relevanta styckena i texten)
Användarvisningsbild
Icecap
Inlägg: 26648
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: uC i en analog miljö - vad krävs?

Inlägg av Icecap »

Intressant!
"Note that diodes, internal or external, are intended to prevent IC destruction BUT not to prevent malfunction in normal operation if they conduct." står det i första länken.

Men som så mycket annat beror den exakta lösning mest på den aktuella koppling och då det tydligen är en hemlighet är det svårt att ge svar. Dock finns det ett svar som gäller generellt:
* För att säkra stabil och normal funktion ska alla signaler vara anpassade per design och ingen "hoppla"-lösningar ska planeras!
Mindmapper
Inlägg: 7110
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Re: uC i en analog miljö - vad krävs?

Inlägg av Mindmapper »

jesse skrev: .
.
.
Bäst är om man använder optokopplare som galvaniskt isolerar processorn från insignalerna. Man kan även isolera med en transistor.

.
Att det är bäst att använda optokopplare håller jag inte riktigt med om. Att det är enklast att använda optokopplare håller jag med om. De som konstruerar riktigt tillförlitlig utrustning undviker oftast att använda optokopplare pga att lysdioden på ingången går sönder så lätt. Och att den komponenten som har bland den sämsta tillförlitlighen är optokopplaren.

Förmodar även att du menar transformator och inte transistor att isolera med.
bingmachine
Inlägg: 37
Blev medlem: 1 april 2013, 14:01:45

Re: uC i en analog miljö - vad krävs?

Inlägg av bingmachine »

Wow! Det här forumet är fantastiskt. Överväldigad av alla bra svar.
Dags att förtydliga lite då. ;-)
Det rör sig om en modul i en modulär synthesizer. Enskilda signaler ligger typiskt mellan +/-5V, eller 0-10V. Men kombinationerna kan naturligtvis ligga i hela matningsspännings-intervallet +/-12V. Vilt kopplande är liksom en del av själva konceptet här. :-)

När det gäller insignaler som ska tolkas analogt så är jag bara intresserad av intervallet 0-5V. I just den här modulen är jag dessutom bara intresserad av en upplösning på tre(!) bitar, så ingen stor noggrannheten mao. Här behöver jag alltså inte skala om signalen - bara begränsa dess max- och min-värde, och utan krav på nån större precision vid min och max. Hittade den här också som var intressant: http://cds.linear.com/docs/en/application-note/an50.pdf

När det gäller digitala insignaler så antar jag att jag bör slänga på en komparator med lite hysteres. Även här kan man alltså koppla in vilka signaler som helst - långsamma oscillerande eller t.o.m. brus. (I det sistnämnda fallet garanteras ingen tydligt definierad funktionalitet dock. :-D)

Utsignalerna i det här fallet kommer bara vara digitala. De kommer kanske driva nån lysdiod, men i övrigt kopplas till den stora stygga världen utanför via mini-tele-jack. Här behövs ju iaf kortslutningsskydd. Frågan är om man behöver nåt mer?

Det svåra i alla såna här frågor, för mig som inte har så mycket praktisk erfarenhet av kretskonstruktion, är vad som är lagom. Jag vill ju inte tynga ner designen med sånt som inte behövs.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: uC i en analog miljö - vad krävs?

Inlägg av sodjan »

> ...med sånt som inte behövs.

Vad "som behövs" framgår av respektive datablad för de olika kretsar du använder.
Är det något där som är oklart så kan du peka på det och få hjälp med tolkningen.
Utöver det så är det nog ingen här som kommer att tipsa om ful-lösningar.
Användarvisningsbild
Icecap
Inlägg: 26648
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: uC i en analog miljö - vad krävs?

Inlägg av Icecap »

"men i övrigt kopplas till den stora stygga världen utanför via mini-tele-jack" Här kan det bli problem!

Min filosofi:
Regel 1A: INGEN µC-pinne direkt till omgivningarna! Aldrig! Ska signalen lämna kretskortet ska det vara minst ett aktivt steg mellan C och det som ska drivas. Det kan vara en transistor eller drivkrets men något måste finnas!
Regel 1B: Spänningsmatningen (VDD) till µC'n får inte lämna kretskortet alls!

Regel 'liiiite lägre prioritet': Har man ett 5V µC-system kan "långsamma" signaler begränsas rimligt bra med en resistor-zenerdiod-koppling, kan det bli negativt kan man komplettera med en shottky-diod för att fånga den del. Men varje signal ska analyseras rörande spänningar som KAN finnas, deras hastighet, strömmar och krav, sedan designer man efter det.

Detta kretslopp har jag använd, det viktiga är R37, D12 & C16. R33 medger att samma ingångssteg kan användas till båda Typ-K termokopplare och PT100 - men det är en bisak i detta. Dock visar R33 hur man kan ta ut VDD till t.ex. en brytare.
Sensorinput.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Senast redigerad av Icecap 2 augusti 2013, 14:39:34, redigerad totalt 1 gång.
bingmachine
Inlägg: 37
Blev medlem: 1 april 2013, 14:01:45

Re: uC i en analog miljö - vad krävs?

Inlägg av bingmachine »

Tack Icecap! En bild säger mer än tusen ord. Och 1A och 1B kommer härmed också att tillämpas. :)
Skriv svar