Samplingssystem

Användarvisningsbild
Electricguy
Inlägg: 12479
Blev medlem: 15 augusti 2007, 16:52:14
Ort: Kälmä' typ..

Re: Samplingssystem

Inlägg av Electricguy »

Istället för att försöka få till en R2R DAC som fungerar bra så går det utmärkt att koppla en PCM54HP till Arduino. Jag har gjort det tidigare, tex:
Arduinon spelar trackern aryx.s3m i 12 kanaler.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Intressant, tack!

MVH/Roger
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Jag har i en annan tråd tacksamt fått lära mig att PortD är IO-pinnarna 0-7 och enbart pinnar inom samma port kan sättas parallellt.

Syntaxen är: PORTD=0xFF, helt enkelt.

Vitsen med att kunna sätta pinnar samtidigt är att sinusgenereringen dels blir snabbare dels uppkommer inga övergångstillstånd.

Låt oss räkna om dom digitala kraven:

Generatorkravet: 60kHz*10=600kHz där 60kHz är max önskad frekvens och 10 är antal tids-LSB, fullt möjligt nu alltså.

Samplingskravet: 60kHz*10*13=7,8MHz där 10 är önskat antal sampel/period och 13 är antal tids-LSB det tar för A/D (succesiv approximation).

Nu vet vi att prescalern förmodligen delar ner systemklockan (16MHz) till minst hälften dvs vi har bara 8MHz att leka med (exklusive overhead).

Jag vill således påstå att även om vi nu fått ordning på generator-delen så hinns inte samplings-delen med.

Jag måste införa en flash-A/D och ta det därifrån.

Vi räknar för skoj skull lite på dom analoga kraven också tycker jag.

A1:a ska kunna ge en pp-spänning på 5V, amplitudmässigt blir det 2,5V.

SR=du/dt<wA ty u(t)=Asin(wt).

Max frekvens som envelopen genomlider är 60kHz

Så SR-kravet är 2*pi*60k*2,5=942000V/s<1V/us.

SR(TL084)>8V/us, så det klarar sig (samtidigt som jag alltid nyttjar socklar...).

GBW är typiskt 3MHz, 3MHz/1,5=1,5MHz, dvs här finns god marginal också (naturligtvis för jag nyttjar ingen gain att tala om).

Slutsats, TL084 duger (vilket är vad jag har även om jag gillar TL074 bättre).

MVH/Roger
Även om samplingen inte hinns med så är det fortfarande intressant med UNO ty det finns snabba flash-A/D man kan sätta innan UNO, dock undrar jag vilka pinnar jag då ska nyttja, multiplexer för samma pinnar kanske :humm:
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Jag har nu ritat ett principschema på mitt UNO samplingssystem där A/D'n är bytt till extern Flash-A/D.

Jag har inte fysiskt letat efter en Flash-A/D bara abstraherat lite.

Jag har också abstraherat dit en bidirektionell buss-krets (HC623) som egentligen inte behövs för I/O-bussen kan internt sättas till I/O men abstraktionsmässigt ser det tilltalande ut och man kan koncentrera sig på hårdvaran.

MVH/Roger
PS
Nu ska jag leta efter fysisk Flash-A/D.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Nu har jag åter stiftat bekantskap med min Flash-A/D som jag nyttjade i mitt examensarbete (TV-Scope) för 20 år sedan.

Kretsen heter TDA8703 och har en omvandlingstid för 8 bitar på maximalt 20ns, det Ni :D

Här finns databladet: http://www.nxp.com/documents/data_sheet/TDA8703_3.pdf

MVH/Roger
PS
Omvandlingsdområdet är 1,55V<Uin<3,26V, till ritbordet :)
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Nu har jag implementerat TDA8703.

Nu betraktar jag planeringen av den hårdvarumässiga biten hos mitt UNO samplingssystem som färdigt.

Nästa steg, fram med shielden :)

MVH/Roger
PS
Man kan egentligen fråga sig varför jag envisas med UNO när jag ändå inte kan nyttja dess A/D-omvandlare. Svaret är faktiskt ganska enkelt, UNO har inbyggda relativt enkla rutiner för att lagra till SD (som jag känner är mycket komplext), samma loggershield har sedan inbyggd realtidsklocka (RTC) så filerna kan dessutom få en datumstämpel (lite onödigt kanske men ganska käckt om man rent primitivt ska försöka hålla reda på filer).

Inte helt lätt att hitta på internet, ebay hade dock en ytmonterad sak men jag fullkomligt hatar ytmonterat så jag surfade vidare och hittade till slut den här sidan: http://www.questcomp.com/questdetails.a ... DigipartWS Jag ska köpa fem stycken, kan vara bra att ha en riktigt snabb A/D ibland.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Nu har jag tänkt lite extra på det här med busskrock.

Hur jag än gör så får jag nu busskrock för jag kan inte ena stunden fördröja A/D'n för att i nästa stund fördröja busskretsen, det går inte.

Så jag har slängt in dom snabbaste kretsarna som finns och hoppas på ett mirakel.

Eventuellt kan jag dock tänka mig typ 1k som bus-resistanser från A/D'n, nu kommer bussarna krocka i några ns, undrar hur viktigt det är?

Jag har också satt dit en konding över knapp-kondingen, tänker mig att polling relativt lätt kan ske och bara det finns lite jos kvar så kan man indikera att ett tryck är gjort.

Systemet är just nu gjort som så att det är upptaget i 10s, sen är det fritt att göra som det vill.

Och om fulla resurser finns mellan trycken (>10s) så är det lätt att känna av ett analogt tryck.

Trycket är förresten tvunget att vara analogt för det finns helt enkelt inga fler I/O att ta av.

MVH/Roger
PS
Men jag lurar på att involvera en frekvenspot också, tänker mig att ett tryck på REC-knappen ger svepet, två tryck ger stationärt svep, båda i 10s. Skalan kan få vara analog på själva potten. Jag menar, jag har implementerat en blinkande LED för "sampling", när man ser att den lyser konstant (dvs sampling klar, stby) då skulle man kunna trycka två gånger och få stationär signal i enlighet med det potten/skalan står på.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Såhär har jag bestämt mig för att implementera min samplings-shield.

Jag lägger till en pot för ren sinus sen inbillar jag mig att man kan sniffa av A0 så att ett tryck ger svepande SINE_REC i 10s medans två tryck ger ren sinus ut i 10s.

Jag har lagt till en 1k DIL ut från A/D'n för jag gillar inte att bussarna kommer att krocka om så i bara några tiotal ns.

Nackdelen med det är mest att snabbheten beror på buskretsens (HC623) ingångskapacitans och att nivåerna därför inte blir strikt digitala.

MEN samplingen kommer att ske med mycket lägre frekvens än vad TDA8703 klarar.

Jag är således nöjd.

Vänligen kom med kritik ifall jag missat nåt.

MVH/Roger
PS
En rolig finess med A/D'n är att om signalen in är för stor (eller för liten) så sätts OF/UF vilket gör att man, utan display och bara med hjälp av en enda LED, kan se på systemet om ingångssignalen klipps eller inte. Genom att studera denna LED så kan man alltså pricka in omvandlingsområdet dvs styrkan på den signal man vill mäta.

Ser nu att Tpd för HC14 är typiskt 11ns, 2Tpd är alltså 22ns, sen ser jag att Tpd för HC623 är max 17ns vilket är mindre än 22ns så ja, detta kan funka.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Så, nu är jag nöjd.

Jag har först infört en liten konding för potten (A1), rätt onödigt men stabiliserar pottens värde.

Resultatet av pottens läge avses sedan visas på analog skalratt, detta blir inte exakt men jag tycker det duger (det exakta kan man se på datat).

Sen har jag infört lite byglingar, dessa byglingar gör det dels lättare att debugga shielden, dels blir shielden mer universiellt användbar dvs den kan användas i andra sammanhang också.

Att den blir mer universiellt användbar har att göra med att man kan aktivera godtycklig krets var för sig samtidigt som man t.ex kan plocka ur 1k DIL eller IC1 för att komma åt rå samplingsdata eller plocka ur registret (IC3) för att injicera rå generator-data och detta alltså samtidigt som alla kretsars viktiga I/O friläggs.

Min tanke är alltså att man inför så kallade komponentadaptrar (jag nyttjar alltid socklar) istället för kretsarna för att komma åt att manipulera systemet.

På så sätt blir systemet inte strikt UNO-beroende utan kan användas i andra sammanhang modell ren analog utgång med färdig R2R-stege och volym eller ren samplare modell snabb.

Om man sedan vid utvecklingsarbetet inte vill ha byglingsmöjligheterna kan man i vissa fall bygla bort motstånden.

Systemet skulle egentligen behöva en till utsignal för att få till synkronismen men det finns inga fler pinnar tillgängliga, jag har tom tagit en analog pinne (A0) i anspråk för att kunna känna av en knapp, allt för att jag envisas med att inte röra SPI ty den styr logger-shielden.

MVH/Roger
PS
Jag rensade bort alla kringkomponenter kring A/D'n för jag tyckte det såg för kladdigt ut, faktiska värden kan fås via datablad.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Innan jag caddar ovanstående UNO-shield så ska jag bygga denna diskreta trekantsgenerator.

Jag har precis tagit reda på alla pin-nummer och ska bara printa ut ritningen så kan bygget börja.

Alla kretsar har jag numera.

Får jag det sen att funka med viktningen så att jag kan approximera sinus, ja då är generator-biten klar.

Jag tycker det är intressant att även om amplituden bara får 16 nivåer i upplösning så är alla sinus-genereringar upplösta i hela 32 steg tidsmässigt, detta för att först stegas räknaren upp vilket sker över hela positiva derivatan om man säger, sedan stegas räknaren ner hela negativa derivatan och totalt blir det 32 steg/period.

En liten nackdel med detta är att 60kHz blir uppdelad med hela 32X60k~2MHz, så den gamla CMOS-kretsen måste klara 2MHz, vilket är tveksamt.

MVH/Roger
PS
I skolan en gång för länge sedan lyssnade vi på hur mycket olika antal bitars upplösning påverkade ljudet, jag tyckte att 5 bitar var fullt tillräckligt, nu är det visserligen bara fyra bitar som gäller MEN detta är ett mätsystem och således inte HiEnd.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

UNO är kortmässigt 53X68mm.

Breddmässigt är hylslisterna 48mm isär (cc).

Med USB-kontakten åt vänster är hylslisterna grupperade:
8st RM2,54 högst upp till höger, 5mm från höger kant.
10st RM2,54 högst upp till vänster, 5mm från hylslist till höger.
6st RM2,54 längst ner till höger, 5mm från kant.
8st RM2,54 längst ner till vänster, 5mm från hylslist till höger.

Undrar om alla 5mm egentligen är 5,08mm?

Bygghöjd: <11mm (USB-kontakten högst), själva hylsliterna bygger 8mm.

Nästa steg, shield-bygge :)

MVH/Roger
PS
Bara för att vara lite muppig tryckte jag på en lång stiftlist både där uppe och där nere och det gick naturligtvis bra, sålunda är glappet mer exakt 5,08mm.
Användarvisningsbild
SeniorLemuren
Inlägg: 8395
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Samplingssystem

Inlägg av SeniorLemuren »

Lägg märke till att stiftlisten till vänster och stiftlisten till höger uppe har ett mellanrum på endast hälften av 2.54 mm, medan den undre raden har 2.54 mellan vänster och höger listrader. Det gör att de övre och undre listraderna är förskjutna i förhållande till varandra.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Det där stämmer inte.

Jag tog till min nyinköpta vinkelhake (Clas) och övre rad ligger precis alignat med nedre rad, ser inte problemet.

Sen att gruppantalet av hylslister är olika gör bara att glappet hamnar olika, men allt (förutom glappet) verkar vara standard 1"/10 eller som jag precis lärt mig 100 mil (1 mil är alltså en tusendels tum).

Kul med input dock :)

Här kommer förresten min pågående caddning, ska snart göra lite kvällsmat och gå och lägga mig :)

MVH/Roger
PS
Observera att den nedre kretsen har jag bara letat upp som en DIL24-6 (dvs DIL24 600 mil) så alla pinnar är helt missvisande, men footprinten stämmer 8)
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Spisblinkaren
EF Sponsor
Inlägg: 12990
Blev medlem: 13 december 2012, 21:41:43

Re: Samplingssystem

Inlägg av Spisblinkaren »

Nu har jag kommit lite längre.

Dags att äta :D

MVH/Roger
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
rvl
Inlägg: 6928
Blev medlem: 5 april 2016, 14:58:53
Ort: Helsingfors

Re: Samplingssystem

Inlägg av rvl »

Det finns ju Eaglefiler för UNOkorten fritt fram att ladda ner, men jag orkar inte söka nån länk nu.

Enligt ögonmått ser "glappet" i korta raden ut att vara 200 och 150 i den långa. Sett på mitt Nucleokort, som också har Arduinokontakter. En sån kanske inte alls skulle vara illa som grund för ett "samplingssystem", men dom är kanske inte riktigt lika lätta att komma i gång med, som Arduino.
Skriv svar