Analog ingång låst till nästan Vcc eller 0

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
jfri
Inlägg: 180
Blev medlem: 1 februari 2010, 21:41:20

Analog ingång låst till nästan Vcc eller 0

Inlägg av jfri »

Har problem med en icke inverterande OP koppling vars utgång kopplas till analog ingång CH4 på en PIC16F690. För det mesta blir utgången från OP låst vid nästan Vcc (5.02V Vcc 5.10 V). Jag ser att ingången varierar mellan 0V och 18 mV när jag vrider på potentiometern. Op utgången förblir 5V även om jag kopplar bort +12V. Jag har provat olika värden på motsåndet mellan AN4 och jord och även inget motstånd alls. Programmet i PIC körs och skriver ut rätt värde motsc inspänningen till ADC4. Jag använder en PICkit 2 för programmeringen av PIC. Problemet är detsamma både med denna inkopplad eller utkopplad och Vcc matat externt.
Kopplingsschema och programkod nedan
[img]
op.JPG
[/img]

Kod: Markera allt

#include <htc.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <ctype.h>
#include "usart.h"

#define	_XTAL_FREQ	4000000L

#define	TRUE	1
#define	FALSE	0

__CONFIG(INTIO & WDTDIS & PWRTDIS & BORDIS & UNPROTECT);

void init(void)
{
TRISA = 	0b11111111;
TRISC = 	0b10010000;
ANSEL=	0b11111111;
ADCON0  =0b10000001;				//result right adj ADC on (CH=0)
ADCON1 = 0b00010000;				//fosc/8 X101XXXX
init_comms();
}

int		read_adc(unsigned char channel)
{
ADCON0 &= 0b11000001;
ADCON0  |= (channel<<2);
__delay_us(50);
GODONE=1;								// initiate conversion on the selected channel
while(GODONE)continue;
return	(ADRESL | (ADRESH<<8));
}

void main(void)
{
	int	adcvalue;

	init();

	do
	{
	adcvalue=read_adc(4);
	printf("ADC=%d\n\r",adcvalue);
	} while (TRUE);
}
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Icecap
Inlägg: 26658
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av Icecap »

Programmet är synnerligt ointressant när du inte anger analoga mätningar.

Jag skulle gärna se MÄTNINGAR på + och - ingångarna i kombination med utgångens värde.

Men min omedelbara gissning är att du har kastat om på + och - ingångarna helt enkelt.
jfri
Inlägg: 180
Blev medlem: 1 februari 2010, 21:41:20

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jfri »

Jag uppgav ju värden på + ingång samt utgång (är inte det analog mätning?). Nej jag har inte kastat om + och - ingångarna. Men här följer mer kompletta uppgifter om mätningar
som gjordes med en mastech MS8209 multimeter,
Först med potentiometern vriden så att inspänningen är 0

st1 offset 0 V st8 strobe 5.09 V (ej ansluten)
st2 - 10.8 mV st7 Vcc 5.10 V
st3 + 0 mV st6 output 5.02V (förväntat 0 *(1+1M/2.2k)=0
st4 V- gnd 0 V st5 offset 11.3 mV

Sedan potentiometern vriden till max inspänning

st1 offset 0 V st8 strobe 5.10 V (ej ansluten)
st2 - 10.9 mV st7 Vcc 5.10 V
st3 + 18 mV st6 output 5.02 V (varierar ej med varierande värden på st3 som förväntat)
st4 V- gnd 0 V st5 offset 11.7 mV

(R5 offset pot)(har provat att ändra denna och problemet löses inte)(däremot har ju kunnat trimma bort offsetspänningen)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av sodjan »

Det första att avgöra/bestämma är om detta är en opamp-fråga
eller en PIC-fråga. Som jag tolkar det nu så är det en opamp fråga (?).

Jag utgår från att du har testkört med den första poten direkt in på AN4 ?
Och att det fungerade helt OK ? Vad är anledningen till att inte mäta
på första poten direkt ?

Varför en spänningsdelare som gör att du får så låga spänningar
in på opampen (0-18 mV) ? Kommer du att mäta på betydligt
högre spänningar än 12 V ?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47008
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av TomasL »

Troligen självsvänger OP'n, en förstärkning om 500 måste väl anses vara direkt olämplig.
Om du behöver så mycket förstärkning, får du göra det i flera steg, samt använda filter för att få bort olämpliga signaler.

Personligen anser jag att man inte bör gå över förstärkningar på säg 10 eller så, för att vara på den säkra sidan.
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jesse »

Jag ser inte att du har angett vad OP:n heter? Lösningen på problemet ligger antagligen i databladet.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47008
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av TomasL »

tolkar det som en 3130
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jesse »

Aha, ok , såg inte det... den verkar ju ha R-R så då är det inte det som är problemet:
# Ideal for Single-Supply Applications
# Common-Mode Input-Voltage Range Includes Negative Supply Rail; Input Terminals can be Swung 0.5V Below Negative Supply Rail
# CMOS Output Stage Permits Signal Swing to Either (or both) Supply Rails
Jag tycker ändå det är märkligt att utgången ska ligga klistrad på 5.0 volt om det vore självsvängning. Du har inte "ingången" på PIC satt till utgång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47008
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av TomasL »

Nä, det är nog för hög förstärkning i kombination med kapacitiva laster, får de mest lustiga egenheter.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47008
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av TomasL »

Om jag fatta saken rätt, så har du en CA3130 OP, kopplad för en förstärkning om ca 500.
Du har inte ritat ut kondensatorn mellan pinne 8 och 1, vilket är ett måste på denna OP.
Du har heller inte någon konding i återkopplingen, dvs parallellt med 1M- motståndet.
Du har inga LP-filter, varken på in eller utgång.
Eftersom en AD ingång i princip är en kapacitiv last bör du (måste) ha ett motstånd i serie med ingången.

Börja så här.
Branta RC-filter på ingången, f0 typ 10 hz eller så, dela upp förstärkningen på 3 OP 5x10x10 LP-filter mellan varje OP.
Kondensator i återkopplingslänken (10n eller så, beroende på återkopplingsmotståndet)

Använd en långsammare OP och läs databladet för dessa, gärna från flera olika tillverkare.

Därefter skall du se att det funkar.
Dock är vad jag förstått 3130 inte direkt lämplig, då den inte har R2R utgång (egentligen inte R2R ingång heller).
jfri
Inlägg: 180
Blev medlem: 1 februari 2010, 21:41:20

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jfri »

TomasL skrev:tolkar det som en 3130
Ja en CA3130AE för att vara exakt.
jfri
Inlägg: 180
Blev medlem: 1 februari 2010, 21:41:20

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jfri »

TomasL skrev:Troligen självsvänger OP'n, en förstärkning om 500 måste väl anses vara direkt olämplig.
Om du behöver så mycket förstärkning, får du göra det i flera steg, samt använda filter för att få bort olämpliga signaler.

Personligen anser jag att man inte bör gå över förstärkningar på säg 10 eller så, för att vara på den säkra sidan.
Att använda mindre förstärkning låter som en god ide (behöver inte 500) men att använda 10 låter lågt. T.ex läser jag detta i boken CMOS cookbook
'As a general rule , the lower the circuit gain , the more likely the amplifier the amplifier will oscillate'. Så självsvängning var precis vad jag inte förväntade mig just pga den höga förstärkningen.
jfri
Inlägg: 180
Blev medlem: 1 februari 2010, 21:41:20

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jfri »

sodjan skrev:Det första att avgöra/bestämma är om detta är en opamp-fråga
eller en PIC-fråga. Som jag tolkar det nu så är det en opamp fråga (?).

Jag utgår från att du har testkört med den första poten direkt in på AN4 ?
Och att det fungerade helt OK ? Vad är anledningen till att inte mäta
på första poten direkt ?

Varför en spänningsdelare som gör att du får så låga spänningar
in på opampen (0-18 mV) ? Kommer du att mäta på betydligt
högre spänningar än 12 V ?
Mina syften är att experimentera och lära mig. Tanken är att mäta en ström och att därför använda ett lågt motstånd. Spänningsdelaren och de låga spänningar in till Opn är avsiktligt. Därför behövs en OP som förstärker den låga inspänningen.
Ja tanken är att koppla in högre spänningar än 12V senare.
Också jag lutar åt att det är en opamp fråga. ADC i PIC verkar fungera som den ska. Läser värden som svarar mot den avlästa spänningen på AN4
jfri
Inlägg: 180
Blev medlem: 1 februari 2010, 21:41:20

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av jfri »

TomasL skrev:Om jag fatta saken rätt, så har du en CA3130 OP, kopplad för en förstärkning om ca 500.
Du har inte ritat ut kondensatorn mellan pinne 8 och 1, vilket är ett måste på denna OP.
Du har heller inte någon konding i återkopplingen, dvs parallellt med 1M- motståndet.
Du har inga LP-filter, varken på in eller utgång.
Eftersom en AD ingång i princip är en kapacitiv last bör du (måste) ha ett motstånd i serie med ingången.

Börja så här.
Branta RC-filter på ingången, f0 typ 10 hz eller så, dela upp förstärkningen på 3 OP 5x10x10 LP-filter mellan varje OP.
Kondensator i återkopplingslänken (10n eller så, beroende på återkopplingsmotståndet)

Använd en långsammare OP och läs databladet för dessa, gärna från flera olika tillverkare.

Därefter skall du se att det funkar.
Dock är vad jag förstått 3130 inte direkt lämplig, då den inte har R2R utgång (egentligen inte R2R ingång heller).
Jag upfattade kondensatorn mellan pinne 1 och 8 som optional. Ska testa dina förslag. Dock av vad jag förstått så är 3130 en lämplig OP. den är bra om man ska mata med single 5V. Den kan svänga mellan 0V och Vcc
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47008
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Analog ingång låst till nästan Vcc eller 0

Inlägg av TomasL »

Inte utgången, ca 2V under VCC
Skriv svar