Hur läsa av brytare med optokopplare och logik samtidigt?

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Hur läsa av brytare med optokopplare och logik samtidigt?

Inlägg av arvidb »

Jag vill koppla denna krets så att jag kan läsa av strömbrytarens läge med vanlig 3.3V-logik (från utgångarna märkta GND och SIGNAL). Först tänkte jag mig en vanlig pull-up av SIGNAL till Vcc (3.3V), men då kommer optokopplaren att få sisådär 20,7V över sig och det räcker såklart till att aktivera den (så att den alltid är aktiv, även när brytaren är öppen).

Den bästa lösningen jag har kommit på är att sätta en diod på SIGNAL-utgången och sedan en pull-up-resistor. Men då kommer den låga logiknivån att ligga på 0,7V vilket bara är 0,1V under maximal spänning för en nolla. Och kablarna till brytaren och tillbaka är flera meter... inte bra! :(

Några idéer?

Bild

Arvid
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Jag vet inte om jag är riktigt med dig....

V1 lägger alltid ut 24 volt? Logiken som ska finnas nånstans bort till höger ska enbart läsa signalen, aldrig skicka ut den?

Så som det ser ut nu så petar du ju ut typ 23 volt till din logik, men det kanske den tål. Seriemotstånd och inbyggda skyddsdioder på ingången kanske på den kanske?

Varför switchar du jorden iställer för 24'volten till opton? Om du swicthar 24 volten istället så är det väl bara att låta logiken läsa av paralellt med opton?
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Inlägg av arvidb »

24V är maxspänningen, men jag kommer inte att ha kontroll över den spänning som används till slut.

Sen glömde jag en väsentlig detalj: det finns ett inbyggt seriemotstånd i optokopplaren som begränsar strömmen till 5 mA. I ett annat fall kanske den vill ha 12V och drar 10 mA, d.v.s. det kommer att vara olika beroende på vem som använder kretsen.

Det är bl.a. därför jag switchar jorden. En annan anledning är att servomotordrivaren som optokopplaren sitter i har en anslutning för +24V och flera ingångar som aktiveras genom att jorda dem.

Arvid
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

En extremt enkel lösning (fast kanske lite dyr) är att helt enkelt koppla en till optokopplare paralellt med den första. Sen kopplar du din 3.3 volts logik till utgångarna på den nya optokopplaren, men en lämplig pullup.

Det blir rena kinderägget, tre saker i en lösning. :-)

1 Signalöverföring (det som var det ursprungliga problemet)
2 Nivåskiftning (kan säkert vara bra att ha)
3 Galvanisk isolation (fast det kanske är onödigt)
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Inlägg av arvidb »

Jo det hade ju funkat bra om V1 alltid hade gett 24V :? Jag har funderat på det men optokopplare är dyra och jag har dessutom inte lyckats hitta någon ytmonterad (på ELFA).

En tanke är ju att sätta en schmitt-trigger efter diod och pull-up-resistor. Undrar vad de har för spec vad gäller högsta spänning för låg nivå? Måste läsa lite datablad :)

Arvid
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Inlägg av arvidb »

såhär alltså (det som finns till vänster om den streckade linjen har jag alltså ingen större kontroll över - V1 behöver inte heller vara 24V):

Bild

Arvid
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

24 volt - Det är väl inget att hänga upp sig på?

En vanlig skräpig PC815 har ju ett CTR som bara varierar mellan 350 och 1600 när If varierar mellan 0.1 mA och 10 mA. Och den pallar upp till 50 mA If.

Om du designar den för ett If på säg 40 mA vid 24 volt så kommer den att fungera fint ända ner till några få volt i matningsspänning, särskilt med tanke på att du inte kommer att belasta utgången på den med mer än pulluppen som ju kan vara rätt så högohmig.

Värre är kanske ytmonteringen, men nog måste det väl att rätt enkelt få tag på ytmonterade optokopplare? Eller?
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Inlägg av arvidb »

Dessutom blir det dyrt, det är 12 ingångar :(

Men nu kom jag på en sak! Det är ju hur enkelt som helst! Flytta dioden till Vcc-benet! Då blir låg nivå 0V och hög nivå 3,3-0,7 = 2,6V, och det är 0,6V högre än lägsta tillåtna höga nivå!

Det borde väl fungera?

Arvid
Användarvisningsbild
erixon
Inlägg: 380
Blev medlem: 27 augusti 2003, 10:21:58

Inlägg av erixon »

Nja det blir 3.3 + 0.7 = 4 volt om du tar en vanlig diod, men om du tar en schottkydiod så kan du komma undan med ca 0.4 volt exempel BAT85.
Alternativ att du använder en transistor och några motsånd, eller ULN28XX och några motstånd.

Lite exempel finns här
Interfacing the 3-V MSP430 to 5-V Circuits

hoppas att det hjälpte :)
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Inlägg av arvidb »

4V hade varit ok (kretsen är 5V-kompatibel), men det blir faktiskt nästan 24V (eftersom optokopplaren ligger i serie). :(

Däremot är det ju en underbar idé med schottkydioden, om jag använder den istället för D1 i schemat. Då blir låg nivå 0,4V vilket borde funka, och kresten skyddas mot överspänning via D1 och pull-up:en.

Eller är det nåt jag inte har tänkt på? Hmm...

Arvid
Skriv svar