Jack's polära LED-snurra (SMD)
Jack's polära LED-snurra (SMD)
Hej, gott folk. Dags för en liten projekt-presentation, med något så innovativt som en LED-snurra
Efter mitt lilla "nederlag" (läs: "kass konstruktion") med min förra snurra, så tänkte jag försöka igen. Denna gången en ytmonterad variant som dessutom är polär. Vet inte om polär är rätt ord, men ni förstår vad jag menar. Jag har planerat bygget i några veckor och fick till slut hem alla grejor och kunde börja bygga. Jag tyckte mig ha planerat saker rätt bra, men det slutade (som vanligt) med en hel del kompromisser (läs: "skitmycket lim").
Konstruktionen är rätt enkel, vilket var meningen från början. Ett ytmonterat kort med 16 LEDs snurrar på en 80-fläkt, en halleffektswitch ger en puls varje varv. Fläkten matas med 12V och likaså gör snurran via släpkontakter, bestående av fjädrar mot tunna brickor (skims?).
PCB:n:
Inga konstigheter egentligen:
Till vänster om den stora kondingen sitter en digital unipolär halleffektswitch (SS543AT).
Under kondingen sitter en 5V-spänningsregulator (LM2937IMP5.0).
Ovanför sitter ett 24AA512-minne.
Till höger sitter hjärnan, en PIC16F628A, som springer på 20Mhz via extern ytmonterad resonator.
Under lysdioderna syns ett 16-bitars skiftregister med konstantströmsgenerator (A6276ELP), TSSOP-kapsel.
De två kontakterna är för matning samt ICSP.
Mönsterkortet tillverkat av Aluvi:
ICs ditlödda:
Färdiglött samt test:
80mm-fläkten med två skims(?) på botten. Via dessa får snurran matning:
Ett litet paket:
Då jag inte hade någon vettig ytmonterad konding hemma, så jag satte två st 4700uF under kortet. På bilden syns även en av släpkontakterna, en fjäder i en sockerbit. Blev ganska smidigt med sockerbitarna då det är enkelt att byta om man hittar nån bättre släpkontakt.
Den färdiga snurran:
Den färdiga snurrande snurran:
Tre filmer, alla i MPG-format:
Ett första test av kretskortet (3,22MB)
Snurrande samt lite stillastående (6,10MB)
Snurrande i mörker (3,60MB)
Allt blev inte riktigt så "proffsigt" som jag tänkte att det skulle bli Bland annat så vobblar fläkten rätt mycket om man kör den på mer än 9V.
Som sagt är inte projektet så innovativt, men alltid tycker nån att det är skoj. Jag om inte annat
Kvar att göra:
Rätt mycket Koden är ännu mycket primitiv och jag har ännu inte orkat fixa igång det externa minnet. Skulle vilja göra så att jag kan rita upp bilder rakt över hela snurran, och alltså inte bara i en "cirkel". Polära koordinater har jag fått för mig att det heter? Är det någon som har ideer på hur jag skulle kunna lösa detta i koden? Jag har knappt själv vågat tänka på hur det skulle kunna fungera
Tackar för mig så länge. Fråga om ni undrar något.
//jack
Efter mitt lilla "nederlag" (läs: "kass konstruktion") med min förra snurra, så tänkte jag försöka igen. Denna gången en ytmonterad variant som dessutom är polär. Vet inte om polär är rätt ord, men ni förstår vad jag menar. Jag har planerat bygget i några veckor och fick till slut hem alla grejor och kunde börja bygga. Jag tyckte mig ha planerat saker rätt bra, men det slutade (som vanligt) med en hel del kompromisser (läs: "skitmycket lim").
Konstruktionen är rätt enkel, vilket var meningen från början. Ett ytmonterat kort med 16 LEDs snurrar på en 80-fläkt, en halleffektswitch ger en puls varje varv. Fläkten matas med 12V och likaså gör snurran via släpkontakter, bestående av fjädrar mot tunna brickor (skims?).
PCB:n:
Inga konstigheter egentligen:
Till vänster om den stora kondingen sitter en digital unipolär halleffektswitch (SS543AT).
Under kondingen sitter en 5V-spänningsregulator (LM2937IMP5.0).
Ovanför sitter ett 24AA512-minne.
Till höger sitter hjärnan, en PIC16F628A, som springer på 20Mhz via extern ytmonterad resonator.
Under lysdioderna syns ett 16-bitars skiftregister med konstantströmsgenerator (A6276ELP), TSSOP-kapsel.
De två kontakterna är för matning samt ICSP.
Mönsterkortet tillverkat av Aluvi:
ICs ditlödda:
Färdiglött samt test:
80mm-fläkten med två skims(?) på botten. Via dessa får snurran matning:
Ett litet paket:
Då jag inte hade någon vettig ytmonterad konding hemma, så jag satte två st 4700uF under kortet. På bilden syns även en av släpkontakterna, en fjäder i en sockerbit. Blev ganska smidigt med sockerbitarna då det är enkelt att byta om man hittar nån bättre släpkontakt.
Den färdiga snurran:
Den färdiga snurrande snurran:
Tre filmer, alla i MPG-format:
Ett första test av kretskortet (3,22MB)
Snurrande samt lite stillastående (6,10MB)
Snurrande i mörker (3,60MB)
Allt blev inte riktigt så "proffsigt" som jag tänkte att det skulle bli Bland annat så vobblar fläkten rätt mycket om man kör den på mer än 9V.
Som sagt är inte projektet så innovativt, men alltid tycker nån att det är skoj. Jag om inte annat
Kvar att göra:
Rätt mycket Koden är ännu mycket primitiv och jag har ännu inte orkat fixa igång det externa minnet. Skulle vilja göra så att jag kan rita upp bilder rakt över hela snurran, och alltså inte bara i en "cirkel". Polära koordinater har jag fått för mig att det heter? Är det någon som har ideer på hur jag skulle kunna lösa detta i koden? Jag har knappt själv vågat tänka på hur det skulle kunna fungera
Tackar för mig så länge. Fråga om ni undrar något.
//jack
Senast redigerad av jack 7 februari 2006, 22:52:34, redigerad totalt 1 gång.
- JimmyAndersson
- Inlägg: 26308
- Blev medlem: 6 augusti 2005, 21:23:33
- Ort: Oskarshamn (En bit utanför)
- Kontakt:
Hej!
Häftigt med en "polär" snurra.
här är mina tankar om hur du kan få ut fina vanliga bilder.
för att få till en typ vanlig bild är nog det enklaste att dela upp varvet i så många delar som det får plats lysdioder i en cirkel, låt oss säga 360st för att göra det enkelt för oss.
sen så om man accepterar att lagra bild-datan i rå format i minnet så kommer då varje bild att ta upp 16*360 = 5760 bit = 720 byte
till detta får man koda sig nått slags ritprogram där man ritar i som sen konverterar bilden till sitt rå-format som man kan lägger in i minnet och sen ritar ut.
Alternativt göra man så man kan konvertera en vanlig bmp bild.
//mullemeck
Häftigt med en "polär" snurra.
här är mina tankar om hur du kan få ut fina vanliga bilder.
för att få till en typ vanlig bild är nog det enklaste att dela upp varvet i så många delar som det får plats lysdioder i en cirkel, låt oss säga 360st för att göra det enkelt för oss.
sen så om man accepterar att lagra bild-datan i rå format i minnet så kommer då varje bild att ta upp 16*360 = 5760 bit = 720 byte
till detta får man koda sig nått slags ritprogram där man ritar i som sen konverterar bilden till sitt rå-format som man kan lägger in i minnet och sen ritar ut.
Alternativt göra man så man kan konvertera en vanlig bmp bild.
//mullemeck
Tack för mer fin kritik!
tekko: Jo den låter rätt mycket. Släpkontakterna är väl inte direkt "high-end" så..
mulle: Du menar att "konvertera" bilderna till polära innan man lägger in dom i minnet? Förstod jag dig rätt? För det har jag inte tänkt på.. Jag tänkte börja strula med cosinus och grejer i snurran. Men det är ju sjukt mycket enklare att göra nåt litet PC-program där man kan rita bilderna och sedan bara mata in dom på vanligt sätt i snurran.
Ska kolla lite på det där.. Tack så länge.
tekko: Jo den låter rätt mycket. Släpkontakterna är väl inte direkt "high-end" så..
mulle: Du menar att "konvertera" bilderna till polära innan man lägger in dom i minnet? Förstod jag dig rätt? För det har jag inte tänkt på.. Jag tänkte börja strula med cosinus och grejer i snurran. Men det är ju sjukt mycket enklare att göra nåt litet PC-program där man kan rita bilderna och sedan bara mata in dom på vanligt sätt i snurran.
Ska kolla lite på det där.. Tack så länge.
Har testat lite med snurran nu.
Med den nuvarande koden och hastigheten på snurran, så klarar den av ca 160 "kolumner" per varv. Vilket skulle innebära 2560 pixlar Många pixlar..
Det borde ju räcka för att göra snurran ganska polärt högupplöst, även längst ut.
Men, då har jag bara en FOR-sats som tickar upp ett tal som sedan visas binärt på kolumnerna. Inget inlagt delay mellan.
Kan tänka mig att om jag ska börja hämta data från minnen osv så kommer det nog att sölas ner lite. Och jag måste väl hämta i "real-tid"? För minnet på PICen lär väl inte räcka till för mellanlagring för 2560 pixlar..?
EDIT: Om jag inte har missförstått saker så borde jag få rum med runt 200 bilder i det externa minnet. Hmmm, det är ju ett 24_AA_-minne. Vilket betyder max 400kHz i klockfrekvens. Återstår att se om det blir ett problem, annars får jag väl byta mot ett FC (1Mhz).
EDIT2: Oj, mätte RPMen på snurran nu med Tachometer. 3500RPM. Är inte det sjukt mycket? Kan hända att jag mätte fel..
Med den nuvarande koden och hastigheten på snurran, så klarar den av ca 160 "kolumner" per varv. Vilket skulle innebära 2560 pixlar Många pixlar..
Det borde ju räcka för att göra snurran ganska polärt högupplöst, även längst ut.
Men, då har jag bara en FOR-sats som tickar upp ett tal som sedan visas binärt på kolumnerna. Inget inlagt delay mellan.
Kan tänka mig att om jag ska börja hämta data från minnen osv så kommer det nog att sölas ner lite. Och jag måste väl hämta i "real-tid"? För minnet på PICen lär väl inte räcka till för mellanlagring för 2560 pixlar..?
EDIT: Om jag inte har missförstått saker så borde jag få rum med runt 200 bilder i det externa minnet. Hmmm, det är ju ett 24_AA_-minne. Vilket betyder max 400kHz i klockfrekvens. Återstår att se om det blir ett problem, annars får jag väl byta mot ett FC (1Mhz).
EDIT2: Oj, mätte RPMen på snurran nu med Tachometer. 3500RPM. Är inte det sjukt mycket? Kan hända att jag mätte fel..