Pulsfångande shift-register?

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
Användarvisningsbild
baron3d
EF Sponsor
Inlägg: 1353
Blev medlem: 1 oktober 2005, 23:58:43
Ort: Torestorp

Re: Pulsfångande shift-register?

Inlägg av baron3d »

Icecap skrev:Vad är i övrigt et oscilloskåp? Jag känner till klädskåp, köksskåp och liknande, till dockhus finns det ju mikroskåp - men oscilloskåp har jag aldrig sett. Och jag har svårt att förstå vad man skulle med ett svängande skåp till.
:lol: :lol: :lol:
Användarvisningsbild
PeterH
Inlägg: 8640
Blev medlem: 15 mars 2006, 15:57:10
Ort: Gävle/Valbo

Re: Pulsfångande shift-register?

Inlägg av PeterH »

:tumner:
bobobo
Inlägg: 697
Blev medlem: 10 november 2007, 22:18:30
Ort: Kungsbacka

Re: Pulsfångande shift-register?

Inlägg av bobobo »

Angående skåpet så håller jag med både Swech och Baron, onödig kommentar pga att jag slarvat med genomläsning innan postning, men det var ganska roligt formulerat av Icecap.

Till sakfrågan, jag har skickat ett mail till artikelförfattaren/konstruktören, hoppas han kan svara med lite info om varför kretsen ser ut som den gör. Att det är kopplat på ett ovanligt sätt gör att jag tänker mig att det kan nog finnas en orsak bakom. I och med att denna mottagare används utomhus i fullt solsken så är det ju som Marta är inne på viktigt med en lösning där inte sensorn bottnar.

Marta, kan interrupthanteraren fånga pulser som är mycket kortare än en klockcykel? (5 ns motsvarar väl 200 MHz). Iofs kunde man kanske göra någon koppling för att förlänga pulsen lite. Men jag skulle också behöva 40-50 ingångar då.
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Pulsfångande shift-register?

Inlägg av Icecap »

Detta med skåp kontra skop är inte för att djävlas men för att nomenklaturen ganska ofta är mycket viktig.
Jag har sett (i detta forum) mhz där folk rent faktisk menar MHz - fastän mHz hade varit lika vettigt värde.

Men till saken: interrupt-on-change är inte helt trivial i detta, dels pga. de många ingångar och dels för - som du skriver - att för korta pulser kan vara svåra att fånga.

MEN om det går kan man faktisk få färre kretsar! En PIC (eller liknande) har 8 ingångar som kan fånga och man kan då spara 1 krets per 8 ingångar, man har ju båda fångst och shiftregister i samma enhet.

Jag har aldrig använd interrupt-on-change på en PIC men undrar på om det finns ett register över vilken ingång som utlöste interrupten. Utan det register kommer pulsen ju att ha försvunnit innan porten kan läsas och då är det ju ingenting att läsa.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Pulsfångande shift-register?

Inlägg av lillahuset »

5ns tror jag inte du menar. I första inlägget skrev du 5us.
bobobo
Inlägg: 697
Blev medlem: 10 november 2007, 22:18:30
Ort: Kungsbacka

Re: Pulsfångande shift-register?

Inlägg av bobobo »

Ja just det, 5us var det ju...! det gäller att hålla ordning på prefixen.
Då är det ju bara motsvarande 0.2MHz så då är väl chansen att fånga det med en uC större. Kör man 20MHz så är ju pulsen där c:a 100 klockcykler.

Icecap, det blir ju 2 kretsar per 8 ingångar man sparar, för jag hittade bara quad RS kretsar
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Pulsfångande shift-register?

Inlägg av lillahuset »

Jag skulle lösa det med en liten FPGA.
Eller en STM32F4. Sampla ingångarna med DMA till en buffer som man sedan går igenom med CPUn. CPUn går med tex 168MHz. Om du då samplar ingångarna med 1MHz har du gott om tid att söka igenom indata. Utvärderingskort dryga hundringen. :)
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Pulsfångande shift-register?

Inlägg av Icecap »

bobobo: just det.

Sedan är nomenklaturen ganska viktig, µs kontra ns är ju ändå 1000x i skillnad.

Ja, det finns många lösningar men jag vill föreslå att du börjar med att göra som Marta skrev: kollar ordentligt upp på ingångssteget. När det kör "perfekt" är resten bara en fråga om att upprepa många gångar nog.

Men jag undrar en sak: behöver du verkligen 40 bit? Jag kan förstå 40 sensorer för att få en viss längd men behöver du den upplösningen på fullt allvar?

Då jag jobbade med ett liknande projekt var det viktiga mitten av skalan, över och under den var bara en fråga om typ pil-upp eller pil-ner eller "OK"-lampa.

Och är det så kan hela elektroniken ju minskas en hel del ner.
Användarvisningsbild
Swech
EF Sponsor
Inlägg: 4750
Blev medlem: 6 november 2006, 21:43:35
Ort: Munkedal, Sverige (Sweden)
Kontakt:

Re: Pulsfångande shift-register?

Inlägg av Swech »

Tar du 4 st 74hc147 så kan du bryta ned dina 40 signaler till 2x8 bitar

Swech
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7461
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Re: Pulsfångande shift-register?

Inlägg av Marta »

Hur snabba pulser IOC på en PIC kan fånga vet jag tyvärr inte. Denna spec tycks saknas i databladet. I det blockschema som finns är det ritat som en D-vippa där ingången är klocka. Stämmer det bör den klara hyfsat korta pulser. 5µs är hur som helst knappast ett problem, processorns neddelade instruktionsklocka är 4MHz = 0.25µs.

Hur många ingångar handlar det om? Schemat som visades har ju bara 3 "kanaler" där ovanför och under mitten är parallellkopplade. Det låter mäktigt med 40 st. helt oberoende mottagare.

Just detta att fånga pulserna ser jag som det lilla problemet. Den verkliga svårigheten är att få en detektor som fungerar tillförlitligt under de ljusförhållanden och avstånd som är aktuella. Ett optiskt filter kan göra stor skillnad. Allt från färgad plastbit till interferensfilter som är smala men dyra. Det skulle också kunna gå att sampla signalen med en A/D och utnyttja periodiciteten för att få väldigt mycket högre känslighet.

Ta reda på hur professionella enheter är konstruerade och försök hitta ett schema på någon som har en lösning med någorlunda standardkomponenter för att se hur den principiellt är uppbyggd. I bästa fall kan den analoga delen gå att kopiera mer eller mindre rakt av.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Pulsfångande shift-register?

Inlägg av lillahuset »

Hur fort roterar lasern?
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Pulsfångande shift-register?

Inlägg av Icecap »

dasset: tiden mellan pulserna anges till 0,2 sek, det bör ge 300RPM.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Pulsfångande shift-register?

Inlägg av lillahuset »

Icecap: Det var observant av dig. Eller också är ditt minne bättre än mitt. :)

Det innebär att om man har ett avstånd mellan laser och sensor på 100m (vet inte om det är rimligt) kommer pricken att passera med 3140m/s.
Om pricken på det avståndet är 10mm och sensorn är 1mm kommer pulsen att bli cirka 3us. Förmodligen inget man väljer att A/D-omvandla om det inte ger någon speciell fördel. Har man någon typ av optik för att "smeta ut" pricken eller sensorn i horisontalled?

Vad vill man ha för upplösning och noggrannhet i vertikalled?

Min lösning skulle nog bli, som jag skrev tidigare, en STM32F4 där man samplar inportarna till buffrar med DMA och sedan tittar på data i "realtid". Eller en FPGA.
Senast redigerad av lillahuset 21 juni 2016, 11:09:05, redigerad totalt 1 gång.
bobobo
Inlägg: 697
Blev medlem: 10 november 2007, 22:18:30
Ort: Kungsbacka

Re: Pulsfångande shift-register?

Inlägg av bobobo »

Ja, 300 rpm stämmer. Ofta är det ställbart 300-600rpm.
Och lillahusets pulstidsberäkningar stämmer med mina. 100m är rimligt för professionella system, men jag är nöjd med 50m, eller kanske t.o.m. 25m om det skulle krävas.
Jag siktar på c:a 2.5-5mm noggrannhet i höjdled. Jag tänkte sätta sensorerna med 5mm delning och tänker att man förbättrar upplösningen genom att utvärdera när man får detektion på 1-2 eller 2-3 sensorer.

Har inte tid att skriva mer just nu, men jag bjuder på två bilder. Lasersändaren jag testar med sänder faktiskt två strålar. Sändaren står här c:a 8m bort. Flankernas lutning beror på op'ns slew rate. Så jag tänkte byta till en snabbare för att fixa längre avstånd bättre.
Det står 0.4V på oscilloskopsbilden men det är 4v.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
bobobo
Inlägg: 697
Blev medlem: 10 november 2007, 22:18:30
Ort: Kungsbacka

Re: Pulsfångande shift-register?

Inlägg av bobobo »

Som svar på ursprungsfrågan så hittade jag dessa: PCA9502 "8-bit I/O expander with I2C-bus/SPI interface"
Example: If GPIO4 input was as logic 0 and the input goes to logic 1
then back to logic 0, the IOState register will capture this change and
an interrupt is generated (if enabled). When the read is performed on
the IOState register, the interrupt is de-asserted, assuming there were
no additional input(s) that changed, and bit 4 of the IOState register
will read ‘1’. The next read of the IOState register should now read ‘0’.
Men jag har nog spunnit in på en annan väg efter inspiration av lillahusets inlägg.
Rejäl övermotorisering kan man kalla det, men en STM32F0 har 16 externa interrupt vilka jag läst ska klara av att fånga pulser kortare än us, så planen är att sätta 3-4st STM32F0 som tar hand om 13-16 fotodioder var (efter signalförstärkare).
13-16 är för att jag inte bestämt om jag ska använda 32 eller 20pin kapsel.

Eftersom en STM32F0 inte kostar mer än io-expandern ovan, men hanterar dubbelt så många ingångar så tänkte jag att det inte gör så mycket att lägga till all denna onödiga processorkraft :)

Ang. ingångssteg osv så hoppas jag orka göra en tråd eller en fortsättning om det när jag testat mer. (Skulle testa med TL974 för ökad hastighet jmf med LM324 men den dog nog).
Kretsen jag visat i tidigare inlägg tålde en hel del sol, men blev blind när stark sommar-kvällssol låg rakt mot sensorn. Men jag har kopierat delar av kretsen från en köpemottagare nu och fått lovande resultat hittills.
Skriv svar