Styra en analog signal (0-10v / 4-20mA) med PIC
Styra en analog signal (0-10v / 4-20mA) med PIC
Hejsan. Jag håller på att rita ett kopplingsschema för att kunna styra en frekvensomriktare med en PIC. Frekvensomriktaren vill ha en analog signal in, för hastigheten. Antingen 0-5v eller 0-10v, alternativt 4-20mA genom att koppla en 250R resistor mellan ingången och 0v referensen. tyvärr vet jag inte mycket mer om den än så, impedans osv på ingången är okänt..
Så nu är frågan hur skall denna styras? Det får inte dra iväg för mycket i pris, så jag har funderat på PWM från picen och sedan ett enkelt RC-filter, efter att det har passerat en optokopplare (se bild..). Kommer det fungera att göra det såhär enkelt, eller behöver jag ha en op-amp som spänningsföljare mellan RC-filtret och frekvensomriktaren? Om jag behöver det så kanske jag får problemet med att op'ens offset voltage gör att jag inte kan stanna motorn, dvs få 0v till den analoga ingången?
Pwm-signal kommer till vänster, går igenom optokopplaren och laddar upp RC-filtret. Frekvensomriktaren, till höger i bild, har en +10v utgång, den analoga ingången och en 0v pinne. Vad rekommenderar ni för lösningar?
Så nu är frågan hur skall denna styras? Det får inte dra iväg för mycket i pris, så jag har funderat på PWM från picen och sedan ett enkelt RC-filter, efter att det har passerat en optokopplare (se bild..). Kommer det fungera att göra det såhär enkelt, eller behöver jag ha en op-amp som spänningsföljare mellan RC-filtret och frekvensomriktaren? Om jag behöver det så kanske jag får problemet med att op'ens offset voltage gör att jag inte kan stanna motorn, dvs få 0v till den analoga ingången?
Pwm-signal kommer till vänster, går igenom optokopplaren och laddar upp RC-filtret. Frekvensomriktaren, till höger i bild, har en +10v utgång, den analoga ingången och en 0v pinne. Vad rekommenderar ni för lösningar?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Det är ju lite avhängigt av ingångsimpedansen på ingång "8".
Man annars är det bara att matcha RC filteret mot PWM
frekvensen och önskad "respons" vid ändringar, så borde
det fungera.
Man annars är det bara att matcha RC filteret mot PWM
frekvensen och önskad "respons" vid ändringar, så borde
det fungera.
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Det brukar fungera med upp till 10k på ingången utan problem. Se till att ha så pass långsam PWM att optokopplaren hänger med. Det är en ganska vanlig metod att göra som du har ritat, så det är bar att köra på. Möjligtvis kanske insignalen påverkas någon procent med 10k motstånd i filtret... frågan är hur extremt noga det är med hastigheten? Är det vääldans noga så sätt dit en OP.
Observera bara att det inte är säkert att dina 10 volt ut är särskilt stabil... den kan variera av olika orsaker, så vill du vara säker på att reglera exakt 0-5 volt så koppla optokopplaren till en 5 volts spänningsreferens (eller spänningsregulator med bra noggrannhet) och kör med 0-5 volt som insignal.
Observera bara att det inte är säkert att dina 10 volt ut är särskilt stabil... den kan variera av olika orsaker, så vill du vara säker på att reglera exakt 0-5 volt så koppla optokopplaren till en 5 volts spänningsreferens (eller spänningsregulator med bra noggrannhet) och kör med 0-5 volt som insignal.
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Din koppling kommer inte att fungera eftersom optokopplaren bara kan ladda upp kondensatorn, inte ladda ur den. Om du kopplar ett motstånd mellan optokopplarens emitter till jord som har mindre resistans än motståndet mellan emittern och kondensatorn så kommer det att fungera som du tänkt.
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Hur får du feedback tillbaka till picen vilken spänning du matar ut?
Och varför optokopplaren, picen på 5V och använd 5V ingången?
Och varför optokopplaren, picen på 5V och använd 5V ingången?
- Swech
- EF Sponsor
- Inlägg: 4766
- Blev medlem: 6 november 2006, 21:43:35
- Ort: Munkedal, Sverige (Sweden)
- Kontakt:
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
D/A-omvandlare 8 Bit 1 kanal SOT-23-6, MCP4706A0T-E/CH
elfa 73-858-12
kostar mindre än 10:-
Swech
elfa 73-858-12
kostar mindre än 10:-
Swech
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
>Och varför optokopplaren...
det är ju inte helt sällsynt att man kopplar in sig på fler än ett ställe. Men visst, är PIC:en helt fristående (elektriskt isolerad) i övrigt, så behövs givetvis ingen optokopplare.
>D/A-omvandlare
Är ju också ett alternativ, om man vill vara mer säker på den exakta utspänningen.
Men även denna kräver en extern referens, så det blir inte mycket smidigare. Särskilt inte om du ska ha det galvaniskt isolerat - det blir bökigt med I2C som kräver specialkretsar för isolerad överföring (om man inte kör så sakta att man garanterat vet att DAC:n hänger med ändå).
det är ju inte helt sällsynt att man kopplar in sig på fler än ett ställe. Men visst, är PIC:en helt fristående (elektriskt isolerad) i övrigt, så behövs givetvis ingen optokopplare.
>D/A-omvandlare
Är ju också ett alternativ, om man vill vara mer säker på den exakta utspänningen.
Men även denna kräver en extern referens, så det blir inte mycket smidigare. Särskilt inte om du ska ha det galvaniskt isolerat - det blir bökigt med I2C som kräver specialkretsar för isolerad överföring (om man inte kör så sakta att man garanterat vet att DAC:n hänger med ändå).
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Jag vill ha optiskt isolerat eftersom att jag inte vet om frekvensomriktarens 0v pinne har samma potential som PICens jord. Precis som jesse säger så är det ju inte lätt att ha olika jord om man kör med en DAC.
Om jag använder El817 som optokopplare, som har en rise time och fall time på normalt 4µS, max 18µS så borde jag kunna köra PWM på 20KHz? (periodtid 50µS)
Hur beräknar jag nu lämpliga värden på R1, R2 (som ghu sade) och C? De formler som jag hittar när jag googlar har bara en resistor, nu kommer det ju vara högre resistans när kondensatorn laddas ur än när den laddas upp.. Det var ett tag sedan jag räknade på sånt här sist!
Om jag använder El817 som optokopplare, som har en rise time och fall time på normalt 4µS, max 18µS så borde jag kunna köra PWM på 20KHz? (periodtid 50µS)
Hur beräknar jag nu lämpliga värden på R1, R2 (som ghu sade) och C? De formler som jag hittar när jag googlar har bara en resistor, nu kommer det ju vara högre resistans när kondensatorn laddas ur än när den laddas upp.. Det var ett tag sedan jag räknade på sånt här sist!
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
klan du inte ha isoleringen mellan insignalen och PIC'en istället då ?
..jag skulle styra ett analogt instrument förut och valde att helt enkelt använda mej av en R2R-stege (i.e en enkel DAC), det kostar IO-pinnar men har man ändå över så..
..jag skulle styra ett analogt instrument förut och valde att helt enkelt använda mej av en R2R-stege (i.e en enkel DAC), det kostar IO-pinnar men har man ändå över så..
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
73-218-44 är en mycket snygg lösning som löser problemet gallant.
Använder den själv.
Använder den själv.
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Jag skulle sänka frekvensen betydligt. Antag att du vill ha 10% av duty-cycle. Det blir 5 µS. Ofta är stigtid och falltid olika för en optokopplare. Dessutom brukar tiderna vara angivna vid optimala förhållanden. I verkligheten kanske det blir 6 och 8 µS. Då hinner transistorn inte börja leda innan lysdioden stängs av igen. Det kan bli konstiga effekter vid dutycycle omkring 0-10% samt 90-100% (då släcktiden ligger kring 0 - 5 µS)squiz3r skrev:Om jag använder El817 som optokopplare, som har en rise time och fall time på normalt 4µS, max 18µS så borde jag kunna köra PWM på 20KHz? (periodtid 50µS)
Frekvensen du väljer beror på hur snabbt du behöver ändra motorns hastighet. Om det inte är supersnabbt så föreslår jag att du kör omkring 500-1000 Hz PWM.
Jag skulle nog kopplat på en CMOS-grind efter optokopplaren, så att jag dels kan optimera kollektorströmmen genom optokopplaren utan att behöva tänka på lågpassfiltret som följer, dels att filtret får en riktig signal in med lika hög ström genom motståndet vid "on" som vid "off". Vilken grind som helst skulle duga, men man kan ju välja en med schmitt-trigger ingång och som klarar upp till 16 volt matningsspänning (dvs. 4093 eller 40106). Denna inverterar ju signalen, så sätt opto-transistorn mot jord och ett motstånd på kollektorn mot plus.squiz3r skrev:Hur beräknar jag nu lämpliga värden på R1, R2 (som ghu sade) och C? De formler som jag hittar när jag googlar har bara en resistor, nu kommer det ju vara högre resistans när kondensatorn laddas ur än när den laddas upp.. Det var ett tag sedan jag räknade på sånt här sist!
- Swech
- EF Sponsor
- Inlägg: 4766
- Blev medlem: 6 november 2006, 21:43:35
- Ort: Munkedal, Sverige (Sweden)
- Kontakt:
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Jag misstänker skarpt att det är rädsla som är anledningen till optokopplarna
Matar du med t.ex. en 9V adapter så kan du utan problem koppla ihop
dess - med - på frekvensstyrningen.
Swech
Matar du med t.ex. en 9V adapter så kan du utan problem koppla ihop
dess - med - på frekvensstyrningen.
Swech
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Det hela beror ju på varifrån styrsignalen kommer, vilket vi inte vet.
- Swech
- EF Sponsor
- Inlägg: 4766
- Blev medlem: 6 november 2006, 21:43:35
- Ort: Munkedal, Sverige (Sweden)
- Kontakt:
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Poängen är att det används optokopplare till höger och vänster på felaktiga grunder
eller helt enkelt för att man inte vet och tar det säkra före det osäkra.
Swech
eller helt enkelt för att man inte vet och tar det säkra före det osäkra.
Swech
Re: Styra en analog signal (0-10v / 4-20mA) med PIC
Ofta är det så att tillverkaren av utrustningen rekommenderar att man använder optokopplare eftersom anslutningen inte är internt isolerad. Följer man det rådet så är man på säkra sidan. Jag använder en battriladdare med en likadan ingång, där man styr laddströmmen med en analog signal in. Jag använder optokopplare. Det hade inte varit bra att inte använda optokopplare i det läget - då hade styrelektroniken fått en potential i förhållande till batteriet som laddas - vilket inte är bra.
En optokopplare kostar 2 kr och brukar inte skapa några problem om man vet hur den ska användas.
En optokopplare kostar 2 kr och brukar inte skapa några problem om man vet hur den ska användas.
