Permalänk

Arduinoprojekt i skolan.

Hej!

Jag går tredje året på gymnasiet och i vårt gymnasiearbete ska vi bygga något som inkluderar en arduino.

Först hade jag och en kompis tänkt försöka oss på att bygga en enklare variant av en LED-panel, något i stil med detta. Men efter att ha gjort lite efterforskningar så verkar det inte helt okomplicerat för det vi kan än så länge.

Det jag undrar är om någon här har någon idé om vad man skulle kunna göra. Har letat runt på olika sidor i jakt på inspiration men hittar inget som verkar intressant.

Tack på förhand!

Visa signatur

CPU: Intel Core i5 4670k Moderkort: MSI Z87 G45 Gaming RAM: Crucial BallistiX Sport 1600MHz 8GB GPU: MSI GTX 770 Nätaggregat: Corsair CX 600M Chassi: Corsair Carbide 330R

Permalänk

Jag tänkte först bygga ett hemautomations system med en android app för att stänga av/på reläer som kan styra olika saker så som lampor och grejer. Men nu ska vi bygga en quadcopter istället och jag har då sätt att man kan bygga sina egna kontollerkort med hjälp av arduinos och gyro/accelerometerkort.

Det finns massvis med grejer som man kan bygga, håller på just nu med ett projekt hemma som ska tömma båten min av vatten automatiskt.

Problemet är kanske att det finns för många olika saker man kan göra Och det finns mycket kul på eBay

Permalänk
Medlem

För och främst vill jag bara säga att jag försöker vara så objektiv som möjligt då jag inte har någon aning om vad kolan har för kvar på projektet eller din linje/kunskapsnivå.

Vill inte låta taskig men en LED-panel som den där är ganska enkel. Klickade mig igenom det lite snabbt och vad jag kan se så är SPI gränssnittet till shift register kretsarna det som är mest avancerat. Det är dock en hel del jobb att löda ihop något sådant och om ni inte har god lödvana så kan det bli ett frustrerande problem att leta kalllödningar. Om det är något du/ni inte förstår så fråga bara.

En LED-panel med ett seriellt gränssnitt till en PC tycker jag verkar som ett lagom stort projekt i gymnasiet.

I fantasi-väg har jag inte så mycket att bidra med, men kan hjälpa till med det tekniska. Har aldrig lekt med ardouino men håller på ganska mycket med AVR.

Permalänk
Skrivet av Kuspar:

För och främst vill jag bara säga att jag försöker vara så objektiv som möjligt då jag inte har någon aning om vad kolan har för kvar på projektet eller din linje/kunskapsnivå.

Vill inte låta taskig men en LED-panel som den där är ganska enkel. Klickade mig igenom det lite snabbt och vad jag kan se så är SPI gränssnittet till shift register kretsarna det som är mest avancerat. Det är dock en hel del jobb att löda ihop något sådant och om ni inte har god lödvana så kan det bli ett frustrerande problem att leta kalllödningar. Om det är något du/ni inte förstår så fråga bara.

En LED-panel med ett seriellt gränssnitt till en PC tycker jag verkar som ett lagom stort projekt i gymnasiet.

I fantasi-väg har jag inte så mycket att bidra med, men kan hjälpa till med det tekniska. Har aldrig lekt med ardouino men håller på ganska mycket med AVR.

Tack för svar!

Problemet vi har är att det vi behöver kunna för att komma igång ligger i kurserna vi har i trean. T.ex. så har jag ingen aning om vad ett skiftregister är Men jag ska försöka sätta mig in i detta för det verkar väldigt skoj om man väl får det att fungera

Hör av mig om vi behöver hjälp!

Skickades från m.sweclockers.com

Visa signatur

CPU: Intel Core i5 4670k Moderkort: MSI Z87 G45 Gaming RAM: Crucial BallistiX Sport 1600MHz 8GB GPU: MSI GTX 770 Nätaggregat: Corsair CX 600M Chassi: Corsair Carbide 330R

Permalänk
Skrivet av The_Donut:

Jag tänkte först bygga ett hemautomations system med en android app för att stänga av/på reläer som kan styra olika saker så som lampor och grejer. Men nu ska vi bygga en quadcopter istället och jag har då sätt att man kan bygga sina egna kontollerkort med hjälp av arduinos och gyro/accelerometerkort.

Det finns massvis med grejer som man kan bygga, håller på just nu med ett projekt hemma som ska tömma båten min av vatten automatiskt.

Problemet är kanske att det finns för många olika saker man kan göra Och det finns mycket kul på eBay

Tack för svar!

Har också funderat på något liknande, men eftersom vi är två skulle det vara enklare att göra nåt "mobilt" om du förstår vad jag menar

Ska kika runt lite på ebay och se om jag hittar nåt roligt

Fränt projekt om du får det att fungera

Skickades från m.sweclockers.com

Visa signatur

CPU: Intel Core i5 4670k Moderkort: MSI Z87 G45 Gaming RAM: Crucial BallistiX Sport 1600MHz 8GB GPU: MSI GTX 770 Nätaggregat: Corsair CX 600M Chassi: Corsair Carbide 330R

Permalänk
Entusiast

@henricjorholm
Jag gjorde en fläktkontroller till min Raspberry Pi av en Arduino förut, kanske kan vara värt att se över den typen av idé? Skitkul att se att det fungerade, med en On/Off switch, det borde även gå att använda en temp sensor för att reglera spänningen.

Visa signatur

PC: AMD Ryzen 9 3900X - Asus STRIX B550-F - G.Skill 3200MHz 4x8GB - AMD RX 5700 XT 8GB - Intel 730 240GB - Intel 530 480GB - AX760 Platinum
Kringutrustning: Dell S2721DGFA - Dell U2515H - Logitech G603 - Ducky Shine3 MX Brown - Sennheiser HD558/Game One

- Feedback - Kontakt - Regler -

Permalänk
Skrivet av Jonssown:

@henricjorholm
Jag gjorde en fläktkontroller till min Raspberry Pi av en Arduino förut, kanske kan vara värt att se över den typen av idé? Skitkul att se att det fungerade, med en On/Off switch, det borde även gå att använda en temp sensor för att reglera spänningen.

Ska kolla lite på det, verkar lite intressant faktiskt

Skickades från m.sweclockers.com

Visa signatur

CPU: Intel Core i5 4670k Moderkort: MSI Z87 G45 Gaming RAM: Crucial BallistiX Sport 1600MHz 8GB GPU: MSI GTX 770 Nätaggregat: Corsair CX 600M Chassi: Corsair Carbide 330R

Permalänk
Medlem

Mitt nästa projekt kommer att bli en extern liten låda med en 2004 lcd som visar hårdvaruinformation från datorn.
CPU och GPU temp, load, clocks och fläkthastighet och sådana saker. Jag kommer nog att använda en tempsensor också för rumstemperaturen. Det blir en allmän informationsdisplay som står bredvid datorn helt enkelt.

Kommunikationen sker via seriegränssnittet och informationen hämtas från Open Hardware Monitor WMI Data.
Jag hårdkodade ett pythonscript att hämta datan för just mitt system och sedan skicka den till arduinon, men ni skulle kunna göra en mer generell implementation i vilket språk som helst.

Det skulle nog vara ett bra gymnasieprojekt då det inte är särskilt stort och innehåller lite av varje.

Visa signatur

5900X and RTX3090

Permalänk
Skrivet av Kuspar:

För och främst vill jag bara säga att jag försöker vara så objektiv som möjligt då jag inte har någon aning om vad kolan har för kvar på projektet eller din linje/kunskapsnivå.

Vill inte låta taskig men en LED-panel som den där är ganska enkel. Klickade mig igenom det lite snabbt och vad jag kan se så är SPI gränssnittet till shift register kretsarna det som är mest avancerat. Det är dock en hel del jobb att löda ihop något sådant och om ni inte har god lödvana så kan det bli ett frustrerande problem att leta kalllödningar. Om det är något du/ni inte förstår så fråga bara.

En LED-panel med ett seriellt gränssnitt till en PC tycker jag verkar som ett lagom stort projekt i gymnasiet.

I fantasi-väg har jag inte så mycket att bidra med, men kan hjälpa till med det tekniska. Har aldrig lekt med ardouino men håller på ganska mycket med AVR.

Hej igen!

Vi ha bestämt oss för att försöka oss på att bygga en LED-panel som jag länkade i första inlägget. Men det är så att vi inte riktigt förstår oss på vad en decade counter är, och vad den gör i denna krets. Du skulle inte kunna tänka dig att ge oss en kort och simpel förklaring på vad den gör? Har varit inne och läst här men förstår inte riktigt. Det jag (tror) jag har fattat är att den på något sätt läser av status på led-raderna?

Tack på förhand!

Visa signatur

CPU: Intel Core i5 4670k Moderkort: MSI Z87 G45 Gaming RAM: Crucial BallistiX Sport 1600MHz 8GB GPU: MSI GTX 770 Nätaggregat: Corsair CX 600M Chassi: Corsair Carbide 330R

Permalänk
Inaktiv
Skrivet av henricjorholm:

Hej igen!

Vi ha bestämt oss för att försöka oss på att bygga en LED-panel som jag länkade i första inlägget. Men det är så att vi inte riktigt förstår oss på vad en decade counter är, och vad den gör i denna krets. Du skulle inte kunna tänka dig att ge oss en kort och simpel förklaring på vad den gör? Har varit inne och läst här men förstår inte riktigt. Det jag (tror) jag har fattat är att den på något sätt läser av status på led-raderna?

Tack på förhand!

Missminner jag mig inte är en dekadräknare en moj som räknar till 10 och sedan börjar om.

Den har alltså, förutom spänning ofta tre ingångar. En för omstart, en för att räkna uppåt och en för klock. Varje gång räkna uppåt är på kommer dekadräknaren att räkna uppåt varje klock.
Ofta har den 10 utgångar, där ytterligare en tänds varje gång du räknar.

Man kan ju då använda den för att gå över lysdioderna, när den räknar. Status på lysdioderna vet du ju, den har ju du bestämt.

EDIT: Tittar man guiden finns det ju perfekta instruktioner, ni behöver inte kunna något. Det är bara att översätta den till svenska om engelskan är svår och pynta ihop allt.

Permalänk
Medlem

Sorry att jag varit dålig på att svara inte kollat så noga på mitt SC konto ett tag. Som ovanstående skrev dock med liten modifikation. Endast en pinne går hög åt gången.

Dvs när du bara sätter ström på kretsen kommer du ha hög signal på utgången som kallas 0.
När du skickar klocka så räknar den upp med ett och sätter låg signal på utgång 0 och hög på utgång 1.
Fortsätter så upp till 9 sen tillbaka till 0.

Här är en bra bild som förklarar det om jag är otydlig:
http://www.doctronics.co.uk/images/gt_32.gif

Den enkla kopplingen du länkade är i stort sätt ett funktionstest av en dekad-räknare, den läser inte av status utan ger hög signal/tänder de olika lysdioderna en och en.

Ofta när man bygger saker som LED matriser använder man sig av räknare och/eller shift-register för att slippa använda så fruktansvärt många pinnar på microprocessorn, samt att man är ganska begränsad i hur mycket ström microprocessorn orkar leverera.

Mitt tips är (beroende på hur långt ni har kommit)
1. Koppla upp en liten LED-matris direkt till microprocessorn typ 3x3 (en 3x3 led-matris: http://pcbheaven.com/wikipages/images/howkeymatricesworks_127... ) Detta ger er förståelse för hur man styr den. Koppla A, B, C, 1, 2, 3 till I/O pin. Sätt alla pinnar till utgångar. Gör sedan en loop som loopar genom "en sidan" tex A, B, C. Tex hög signal på A och hög signal på 1 och 2. Då kommer endast lysdiod A3 att lysa (A1 och A2 lyser inte eftersom det är samma potential på båda sidorna av lysdioden, ingen ström flyter genom den och den lyser inte). Gå vidare till nästa (B) (låg signal till A, hög till B) och ändra samtidigt på 1,2,3 därefter vidare till C (låg signal B, hög C).
Efter lite lekande med detta bör ni få ganska bra förståelse för hur det funkar.

2. Koppla om så att ni istället för att ha A, B, C kopplade direkt till microprocessorn kopplar in dekad-räknaren. Koppla då A, B, C till utgång 0, 1, 2. Koppla clock-pinen på räknaren till en I/O-pin på microprocessorn (glöm inte att koppla enable och reset pinarna annars kommer räknaren inte göra något alls)
2a. Gör om loopen så att istället för att för att manuellt tända/släcka A, B, C kolumnerna så skickar ni endast en clock signal till räknaren som då själva kommer att öka ett steg (gå till nästa kolumn). Nu har ni dock problemet att räknaren har fler steg än vad ni har kolumner. Ni kan fortsätta loopa tills ni är tillbaka på 0 men det tar onödig tid.
2b. Koppla in reset pinnen till microprocessorn så kan ni manuellt gå tillbaka till 0 efter att ni varit på 2
2c. Låt räknaren själv sköta jobbet med att gå tillbaka: Koppla utgång 3 på räknaren till räknarens reset pin. Då kommer räknaren att reset:a sig själv så fort som utgång 3 blir hög. Dvs den räknar från 0 till 2 nu.
Detta bör ge en bra bild av hur räknaren fungerar och lite inblick vad man kan använda den till.

När ni har kommit så långt kan man gå in på seriell kommunikation. Det är väldigt användbart att kunna använda sig av SPI (3-wire serial) och I2C (2-wire serial) då det används för att kommunicera med många kretsar tex de shiftregisterna som används (kan skriva mer om vad de används till samt hur de styrs, men grundtanken är den samma som med räknaren fria upp pinnar och möjlighet att leverera mer ström). Ett annat protokoll som är bra att kunna använda sig av är UART(USART) då kan ni enkelt koppla bygget till en dator via serieporten (alt usb till serieports adapter). Serieporten är enkel att komma åt på dator sidan. Antingen via ett eget litet program (som då kan göra specifika saker) alt via ett universal program typ hyperterminalen (inbyggt i windows men inte speciellt bra) eller Realterm (finns massa olika, de flesta bör räcka för er).

I 8-bitar AVR finns det direkt stöd för i2c, spi och usart. Det räcker att aktivera de via register inställningar. För extra förståelse tycker jag det är bra om man iaf testar att skriva sina egna i2c och/eller spi rutiner. Förutom bättre förståelse så kan det vara fördelaktigt att ha de i mjukvara då man kan använda andra pinnar än de som är dedikerade. (en nackdel är dock att det går långsammare och tar cpu-tid)

Nu har jag fått till en fin vägg med text...

Vid övriga frågor hör av dig igen så ska jag försöka ge snabbare svar i framtiden

Permalänk
Medlem
Skrivet av anon81912:

Missminner jag mig inte är en dekadräknare en moj som räknar till 10 och sedan börjar om.

Kollade din profil när jag såg "moj"
Fick starka misstankar om att du går på LTH (btw rekommenderar ETF varmt om du har elektronik intresse)

Permalänk
Inaktiv
Skrivet av Kuspar:

Kollade din profil när jag såg "moj"
Fick starka misstankar om att du går på LTH (btw rekommenderar ETF varmt om du har elektronik intresse)

Det stämmer! Har varit på ETF en del men är färdigpluggad nu Gick data.

Permalänk
Skrivet av Kuspar:

Sorry att jag varit dålig på att svara inte kollat så noga på mitt SC konto ett tag. Som ovanstående skrev dock med liten modifikation. Endast en pinne går hög åt gången.

Dvs när du bara sätter ström på kretsen kommer du ha hög signal på utgången som kallas 0.
När du skickar klocka så räknar den upp med ett och sätter låg signal på utgång 0 och hög på utgång 1.
Fortsätter så upp till 9 sen tillbaka till 0.

Här är en bra bild som förklarar det om jag är otydlig:
http://www.doctronics.co.uk/images/gt_32.gif

Den enkla kopplingen du länkade är i stort sätt ett funktionstest av en dekad-räknare, den läser inte av status utan ger hög signal/tänder de olika lysdioderna en och en.

Ofta när man bygger saker som LED matriser använder man sig av räknare och/eller shift-register för att slippa använda så fruktansvärt många pinnar på microprocessorn, samt att man är ganska begränsad i hur mycket ström microprocessorn orkar leverera.

Mitt tips är (beroende på hur långt ni har kommit)
1. Koppla upp en liten LED-matris direkt till microprocessorn typ 3x3 (en 3x3 led-matris: http://pcbheaven.com/wikipages/images/howkeymatricesworks_127... ) Detta ger er förståelse för hur man styr den. Koppla A, B, C, 1, 2, 3 till I/O pin. Sätt alla pinnar till utgångar. Gör sedan en loop som loopar genom "en sidan" tex A, B, C. Tex hög signal på A och hög signal på 1 och 2. Då kommer endast lysdiod A3 att lysa (A1 och A2 lyser inte eftersom det är samma potential på båda sidorna av lysdioden, ingen ström flyter genom den och den lyser inte). Gå vidare till nästa (B) (låg signal till A, hög till B) och ändra samtidigt på 1,2,3 därefter vidare till C (låg signal B, hög C).
Efter lite lekande med detta bör ni få ganska bra förståelse för hur det funkar.

2. Koppla om så att ni istället för att ha A, B, C kopplade direkt till microprocessorn kopplar in dekad-räknaren. Koppla då A, B, C till utgång 0, 1, 2. Koppla clock-pinen på räknaren till en I/O-pin på microprocessorn (glöm inte att koppla enable och reset pinarna annars kommer räknaren inte göra något alls)
2a. Gör om loopen så att istället för att för att manuellt tända/släcka A, B, C kolumnerna så skickar ni endast en clock signal till räknaren som då själva kommer att öka ett steg (gå till nästa kolumn). Nu har ni dock problemet att räknaren har fler steg än vad ni har kolumner. Ni kan fortsätta loopa tills ni är tillbaka på 0 men det tar onödig tid.
2b. Koppla in reset pinnen till microprocessorn så kan ni manuellt gå tillbaka till 0 efter att ni varit på 2
2c. Låt räknaren själv sköta jobbet med att gå tillbaka: Koppla utgång 3 på räknaren till räknarens reset pin. Då kommer räknaren att reset:a sig själv så fort som utgång 3 blir hög. Dvs den räknar från 0 till 2 nu.
Detta bör ge en bra bild av hur räknaren fungerar och lite inblick vad man kan använda den till.

När ni har kommit så långt kan man gå in på seriell kommunikation. Det är väldigt användbart att kunna använda sig av SPI (3-wire serial) och I2C (2-wire serial) då det används för att kommunicera med många kretsar tex de shiftregisterna som används (kan skriva mer om vad de används till samt hur de styrs, men grundtanken är den samma som med räknaren fria upp pinnar och möjlighet att leverera mer ström). Ett annat protokoll som är bra att kunna använda sig av är UART(USART) då kan ni enkelt koppla bygget till en dator via serieporten (alt usb till serieports adapter). Serieporten är enkel att komma åt på dator sidan. Antingen via ett eget litet program (som då kan göra specifika saker) alt via ett universal program typ hyperterminalen (inbyggt i windows men inte speciellt bra) eller Realterm (finns massa olika, de flesta bör räcka för er).

I 8-bitar AVR finns det direkt stöd för i2c, spi och usart. Det räcker att aktivera de via register inställningar. För extra förståelse tycker jag det är bra om man iaf testar att skriva sina egna i2c och/eller spi rutiner. Förutom bättre förståelse så kan det vara fördelaktigt att ha de i mjukvara då man kan använda andra pinnar än de som är dedikerade. (en nackdel är dock att det går långsammare och tar cpu-tid)

Nu har jag fått till en fin vägg med text...

Vid övriga frågor hör av dig igen så ska jag försöka ge snabbare svar i framtiden

Tack så mycket för ditt svar!
Just nu väntar vi på delar som är beställda, men så fort de kommer ska vi försöka få till det du skrev häruppe!

Tack än en gång för svar!

Skickades från m.sweclockers.com

Visa signatur

CPU: Intel Core i5 4670k Moderkort: MSI Z87 G45 Gaming RAM: Crucial BallistiX Sport 1600MHz 8GB GPU: MSI GTX 770 Nätaggregat: Corsair CX 600M Chassi: Corsair Carbide 330R

Permalänk
Medlem

Jag och en polare körde ett projektarbete i gymnasiet där vi byggde en 10x10 LED matris, kopplade upp 2 potentiometrar som styrdon och programmerade Pong till, tyckte det var ett väldigt lämpligt projektarbete tidsmässigt.
Vi körde transistorer för att slippa dra all belysningsel genom arduinon och vår shift register, då de inte klarade av den mängd el vi behövde för att lysa upp alla LED'er samtidigt.

Jag rekommenderar er att först bygga en LED matris och sätta er in i hur ni kontrollerar den, då har ni ett väldigt fint utgångsläge för att bygga vidare på det hela om ni känner det!