Sida 2 av 8

Re: Skala upp 0-2V till 0-5V

Postat: 22 december 2020, 10:05:43
av MadModder
Nu är det dock så att en SID mäter tiden det tar att ladda upp en kondensator för att ge ett värde mellan 0 och 255, mha den ström som för tillfället går genom paddle-motståndet. Det är inte spänningsnivån som mäts. Det kan bli knas om du matar in en spänning där.

Det är alldeles för många som fått för sig att det skulle sitta ett par ADC:er där i och kopplat sina potentiometrar som spänningsdelare och mata in 0-5V. Det blir allt annat än linjärt.

Re: Skala upp 0-2V till 0-5V

Postat: 22 december 2020, 10:11:23
av rikkitikkitavi
Det var ju intressant info :)

Re: Skala upp 0-2V till 0-5V

Postat: 22 december 2020, 10:18:59
av MadModder
Eller ja, det är väl en form av ADC, som mäter motstånd. :D
Teoretiskt ska det gå att tajma pulserna och ladda i och ur kondingen på exakt tid mha en extern mikrokontroller. Har för mig 1351-musen jobbar så.

En spänningsstyrd strömgenerator borde iofs kunna emulera ett motstånd. :humm:

Re: Skala upp 0-2V till 0-5V

Postat: 22 december 2020, 16:36:29
av Mindmapper
För i tiden var det inte ovanligt att billiga ADC, mätte tiden det tog att ladda upp en känd konding till en viss nivå genom ett känt värde på en resistor.
för att få ett större mätområde kunde ADC'n switcha in olika resistorer. Väldigt långsamma och onogranna, men billiga ADC.

Det här är en variant på de ADC'na som mäter resistans istället för spänning.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 09:48:02
av Mr Andersson
_R_ skrev: 21 december 2020, 23:01:50 @Mr Andersson Då missuppfattade du mig.
Men så här då. Befintlig enhet = ("en 10-bit DAC") -> AVR. Klart. 19 kr för en AVR med inbyggd pwm: https://www.electrokit.com/produkt/atti ... -flash-8k/
Tar inte stor plats heller.
Lågpassfilter ? Vet du kanske vad utsignalen skall användas till ? Berätta gärna.
Man behöver inte veta vad signalen ska användas till för att veta att ofiltrerad PWM är fel svar.
"0-5V" tolkas rimligtvis som 0 till 5 volt. Inte 0 eller 5 volt.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 11:38:23
av bjornj
Jag hade ett liknande problem på jobbet för några år sedan innan jag gick i pension.
De 5 volten som DAC'en lämnade behövde bli det dubbla. Dessutom krävdes lite drivförmåga.
Lösningen blev en Op LM 324 och en effekttransistor BD649 som ingick i loopen.
Op'n kopplades som icke inverterande.
Transistorn kopplas som emiterföljare.
Signalen frå DAC till plus ingången på op'n, utsignalen till basen på transistorn.
Kollektorn till spänningsmatning. 15 V i detta fall.
Utsignalen från emittern spänningsdelas med R2/R1 till lämplig nåvå.
Signalen från spänningsdelaren till op'n minusingång.
100nF emitter till jord är inte heller fel.
Förstärkningen blir R2/R1 +1 , Ex 10K/10K + 1 = gain 2
Dessutom fås ju en betydande drivförmåga från darlingtontransistorn.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 12:56:01
av HUGGBÄVERN
Bra fråga och bra tråd och bra svar :tumupp: .
Det här känns som det skulle krävas en K.I.S.S-lösning (Keep It Simple Stupid) och den enklaste är väl nästan föreslag - en rail-to-rail OP. Om det inte räcker borde väl en liten DC/DC-omvandlare kunna användas för att hysta upp matningsspänningen lite, där en MAX1044 skulle kunna vara ett alternativ.

Att använda något programmerbart låter nästan som en god idé, men lite overkill. Men om man låter chipet få göra jobbet "hela vägen", varför inte. Så här fixade Barton Musical Circuits en s.k. quantizer som läser in en analog spänning och justerar den så den hamnar i kvantifierade steg. Notera pwm-utgång och ett filter.
quant.jpg

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 14:14:06
av MadModder
Eftersom signalen ska petas in i en SID ( 6581 / 8580 ), så följer här ett blockdiagram över POT-ingångarna i dessa kretsar, och en förklaring:
paddle_block.png
Vi har en 9-bitsräknare som kör på systemklockan PHI2.
Bit 7..0 från räknaren matas in i två 8-bitars latchar, POT_X och POT_Y.
Vid POT_X-pinnen har vi en extern kondensator, vilken laddas upp genom paddle-potentiometern till +5V.
När spänningen över kondensatorn, och därmed också POT_X, har nått en specifik nivå, matas räknarens värde in i POT_X-registret.
Därutöver, när räknaren har nått $FF (kanske för att det inte är något anslutet), tvingas detta värde in i POT_X-registret.
När räknarens MSB (bit 8 ) slår över till 1, jordas POT_X-pinnen mha en intern FET och kondensatorn laddas ur.
Sen är det samma för POT_Y.
Så en "konvertering" från potentiometrarnas position till värden i POT-registren tar 512 PHI2 klockcykler.

Det går mao inte att mata in en spänning där och få ut något vettigt.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 15:01:07
av bos
Vid POT_X-pinnen har vi en extern kondensator, vilken laddas upp genom paddle-potentiometern till +5V.
...
Det går mao inte att mata in en spänning där och få ut något vettigt.
Jag är antagligen bara korkad, men jag får inte ihop dessa två. Om den laddas via paddle-pot, och om jag lägger på en spänning där paddle-pot ska vara, hur kan det inte funka?

Vad missar jag?

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 15:20:38
av MadModder
Att räknaren triggas när spänningen in på POT_X har nått en exakt nivå, och den nivån kan man inte ändra på. Säg att den är t.ex på 2,5V.
Lägger du på en konstant spänning där, kommer räknaren alltid att visa antingen 0 eller 255 beroende på om den är över eller under 2,5V.
Det sitter en komparator där i.
När FETen jordar kondensatorn var 512:e klockcykel är den på noll volt, och beroende på vad potentiometern är inställd på tar det såklart olika lång tid för spänningen över kondensatorn att nå 2,5V.
Det är den tiden räknaren räknar, och matar in som värde i registret.

En enkel RC-krets. Har du inget som det går att ta tid på, kommer det inte funka.

Du kan ju prova att sätta en 10k-potentiometer i joyporten kopplad som en spänningsdelare, och mata in 0-5V på en POT-pinne och se vad som händer. :)
Var försiktig bara. SID är fruktansvärt ESD-känslig.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 15:41:09
av Mr Andersson
Om du har en fast serieresistans kommer väl kondensatorns laddtid variera linjärt mot spänningen? Förutsatt att spänningen är över triggervärdet.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 15:54:43
av MadModder
Ja, såklart. Nu vet jag inte vad triggerspänningen är, men i så fall handlar det mer om att lägga på en offset på exempelvis 3V, så området blir 3-5V istället.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 19:47:21
av MadModder
Om jag inte tänker helt fel borde det här funka.
Stoppa in dina 0-2V på in, utan att skala spänningen någonstans.
Välj shunt-motståndet till något lämpligt. 22 ohm kanske. Då blir det mellan 0 och 91mA när du går mellan 0 och 2V.
Precis ovanför LOAD, klipper du och stoppar in ledningen från transistorn till POT.
Op-Amp-Current-Sink-Circuit[1].png
Eftersom detta styr strömmen steglöst, och inte spänningen, bestämmer man uppladdningstiden för kondensatorn, och det ska gå att mäta tiden.
Jag måste prova detta någon dag... :D

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 19:54:54
av swesysmgr
Byt DAC-kretsen mot en digital potentiometer istället? Förutsatt att mikrodatorn (?) som driver DA-omvandlaren går att komma åt och programmera om.

Re: Skala upp 0-2V till 0-5V

Postat: 23 december 2020, 19:59:25
av bos
Byt DAC-kretsen mot en digital potentiometer istället?
Jag satt /precis/ och funderade på det. Med en digipot finns det ju ingen chans att det inte kan funka, för en C64-paddle är ju bara en potentiometer. Finns ingen annan magi där.