Vill lära mig styra sensorer och elmotorer via datorer i C

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
WhiteWolf
Inlägg: 50
Blev medlem: 19 januari 2010, 21:06:52
Ort: Gävle
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av WhiteWolf »

Åh gu va snurrig tråden blev.. Eller så är det bara trolling.
:doh: Aja..

Hoppas du förstår detta nedan som många andra här redan har försökt förklara, men jag försöker lista upp det istället:

* AVR är en viss typ av "IC-krets" som tillverkas av företaget Atmel. http://sv.wikipedia.org/wiki/Atmel_AVR
* Arduino är en utveckling/utbildnings kort med en AVR IC-krets på sig, som oftas har en usb kontakt och "ström-kontakt". Denna AVR "IC-krets" som finns i Arduino kan man programmera om med ett lämpligt program på sin dator. http://en.wikipedia.org/wiki/Arduino
* För att kunna "programmera" din Arduino så behöver du ladda hem utvecklings programmet för det, den finner du här: http://arduino.cc/en/Main/Software Det är med detta program som du kan "programmera" om din Arduino med. Notera: Programmet kallas för "Arduino IDE".
* I Arduino IDE så skriver du den programkod som du vill ska laddas in i din Arduino. Eller rättare sagt in i AVR kretsen. Programmeringsspråket som du programmera med är typ en bantad variant av C++. Så det vad Arduino IDE gör är att den ändrar på koden till riktig maskinkod som AVR kretsen förstår sig på. Detta kallas för att den är en kompilator.
* Kompilator är något som ändrar på den programkoden som man har skrivit till maskinkod. http://sv.wikipedia.org/wiki/Kompilator
* För att du ska förstå skillnaden på högnivåspråkhttp://sv.wikipedia.org/wiki/L%C3%A5gni ... spr%C3%A5k och lågnivåhttp://sv.wikipedia.org/wiki/H%C3%B6gni ... spr%C3%A5k. Exempel på högnivåspråk: Java, C#, m.m. Lågnivåspråk: Assembler.
* Fundering på hur programmeringen ser ut och kod exempel. Finns massor ute på google om du söker bara.

* Sedan till ditt egna projekt eller lärande så är det bra om du har något du kan styr och avkänna, som t.ex. styra en LED eller temperatur sensor eller nåt.

Notera:
* PIC är en motsvarighet till AVR men det är olika tillverkare på dem. PIC tillverkas av Microchip. Bara för att förtydliga det hela.
* Läs och försök förstå vad folk säger. Funkar inte det, så läs igen och var mindre ivrig på "gröten". :roll:
* Goda google kunskaper är inte helt fel. Samt engelska kunskaper.

Notera också:
** Nu har jag utgått från det du har sagt tidigare, att du har gått och skaffat dig en Arduino. Så då har jag riktat min info om det mer åt det hållet än åt PIC.
* Så nu förväntar jag mig att du inte blandar ihop AVR och PIC. FÖR det är två olika fabrikörer som gör dem. :doubt:

Tips på kurser eller något att lära sig:
1. Ellära (Detta skulle jag säga är A och O när det kommer till elektronik).
2. Digitalteknik av något slag. Eller en kurs som helt enkelt tar upp det här med logiska kretsar och liknande. (Det kan kanske till och med fungera med diskret matematik. Men då bara kanske. *Inte att det fungerar.).
3. En nybörjarprogrammerings kurs i Java eller C++ eller C# eller C. (Nivå A *Högskola/Universitets sammanhang*)
4. En elektronikkurs som tar upp det här med olika komponenter lite närmare. (Kanske kan heta något med Grundläggande elektronik eller liknande).
5. Hårdvarunäraprogrammering. ***Det är först här du kommer i kontakt med att programmera maskinkod i "IC-kretsar" så som AVR eller PIC eller någon annan krets.


Men varför just C/C++ och inte C eller C++? Är C/C++ något enskilt språk?
För att C och C++ är skapligt snarlik till varandra i hur koden ser ut som man kodar ihop. Därav så skriver många C/C++. Men jag personligen skulle säga "C eller C++" för i min lilla värld/bubbla så är dem för olika varandra. Men det är inte det för vissa.

Men jag antar att PIC så programmerar man så man för över HEX-kod till kortet.
Snurra inte in dig i vad HEX-kod är för något ännu. Det kan du ta reda på vid ett senare tillfälle när du har lärt dig mer om hela ämnet.

AVR är jag inte säker, men det kanske är en ny revolutionär modell som är enklare än PIC?
Tja, revolutionärt eller enklare än PIC vet jag inte om jag skulle säga. Det är helt smak sak. Det är som att: "Tycker man att det är enklare att köra runt på en Volvo än med en SAAB eller tvärtom". Det beror helt på vad man själv tycker. Smak sak så att säga.

Jag hoppas att detta gav dig någon slags klarhet i det hela och vad det innebär att besitta för kunskap... Sedan en till sak, ska man börja kunna konstruera saker från grunden själv så bör man ha goda matematiska kunskaper också, för det underlättar saker och ting. Men det är inget måste alla gånger. Men jag vill bara påpeka det. :roll:
Användarvisningsbild
jesse
Inlägg: 9241
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av jesse »

jesse skrev:SAAB har jag bestämt mig för och jag ska använda mig av VOLVO + C :roll:
Al_Bundy skrev:Det verkar som att det är fel att vara nybörjare. :humm:
Inte accepterat iallafall.
Nej, inget fel. Men det verkade som om du blandade ihop korten totalt, och då inga vanliga förklaringar fungerade så försökte jag med en liknelse. Det är inte alldeles lätt alltid, varken att som nybörjare förstå vad vi menar, men inte så lätt för oss heller att förstå vad du skriver om när du blandar allt.

WhiteWolf och neptunus har ju kommit med bra försök att förklara nu, så jag ska inte upprepa det. Men om man inte vet något alls kan man ju te.x. googla på de olika begreppen för att få lite grundläggande info om vad det är för något. Även om du fattat en del nu så kan det ge lite mer kött på benen innan du går vidare att googla på t.ex följande:

Arduino
AVR
PIC
microcontroller

eller kolla forumets egen wiki om microkontroller. Där finns också många bra länkar med värdefull information.
(edit: stavfel)
Senast redigerad av jesse 20 september 2012, 13:51:13, redigerad totalt 1 gång.
Användarvisningsbild
Icecap
Inlägg: 26685
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Icecap »

Även jag anser att "You can call me Al" är ganska virrig - men ändå kan ha fattat lite iaf.

Jag tänker såhär: det är inte stor skillnad på PIC & AVR i prestanda eller hårdvara. Vi som "känner" dessa vet om skillnaderna men i det stora hela kan de ofta utföra ung. samma jobb lika väl.

Procrammerar man i ett språk som har en standard (t.ex. C) kommer en funktion att gära det samma i båda fallen, det är bara när det rör sig om hårdvara-specifika saker som det skiljer medan saker som X = Z * Y är lika i båda PIC & AVR.

Det som blir problemet med att använda olika tillverkares processorer är ju mest att utvecklingsmiljön är olika, att programmerings-/debug-enheter är olika men i grunden är det ju så att de funktionsmässigt är ganska lika.

Att ge sig på två olika familjer processorer samtidig är en stor munsbit och en extra kostand, det tar lång tid innan man kommer ordentligt in i det pga. de skillnader som finns - men klarar man det får man då en mycket bra insikt i mikroprocessor i gemen.

Dock tror jag inte att Al kommer dit, det är alldeles för mycket jobb dit och det går inte snabbt nog skulle jag tro...
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Al_Bundy »

Hejsan igen.

Jag vill bara kolla lite.
Vi säger att jag blir van att programmera med(C++) Atmel styrkort. Visst kan jag styra vilken elektronisk komponent då?

Exempel:
Jag har köpt Atmel styrkortet och sen vill jag kontrollera en lasersensor som jag har köpt från något annat företag. Då behöver jag bara "koppla" ihop den lasersensorn med Atmel I/O gångarna och sen programmera? Eller måste den lasersensorn eller vad jag nu ska använda för avancerad komponent, vara gjort för just det där Atmen kortet?

Jag ser att många elektroniska komponenter för Ardruio är konstruerad för just Arduino då dom inte bara är en sensor. Det är ett kretskort man redan ansluter till Ardruino kortet.

Bara nyfiken. :)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av sodjan »

> Jag har köpt Atmel styrkortet

Du får väldigt gärna även ge länkar till prylarna du nämner, det
blir lite enklare att bedöma det hela och svara på frågorna.

> Då behöver jag bara "koppla" ihop den lasersensorn med Atmel I/O gångarna och sen programmera?

Det man måste göra är ett studera/läsa databladet för prylen i fråga och sedan
avgöra om signaler m.m är direkt kompatibla, d.v.s om det går att koppla ihop
det direkt eller om det kanske behövs något mer emellan. Det går absolut inte
att ge ett generellt svar på det, utan varje pryl får kollas för sig.

> vara gjort för just det där Atmen kortet?

Nej, sannolikt inte. Men det måste ha signaler som "passar ihop".

> Jag ser att många elektroniska komponenter för Ardruio är konstruerad för just Arduino då dom
> inte bara är en sensor. Det är ett kretskort man redan ansluter till Ardruino kortet.

Ja, precis, det är oftast ett färdigt/komplett kretskort med kontakter som passar Arduino.
Alltså en *fysisk* anpassning. Det du frågade om ovan var en *elektrisk* anpassning, eller hur?
Det är två olika saker.

> Bara nyfiken.

Det finns absolut ingen bättre egenskap... :-)
Senast redigerad av sodjan 22 september 2012, 13:20:28, redigerad totalt 1 gång.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Al_Bundy »

Jag tolkar ditt inlägg som att det går koppla ihop alla elektroniska komponenter, så länge signalerna från I/O är rätt och det gör man via programmera.

Skiljer det mycket mellan att programmera Ardruino Mega och AT19SAM7S128 kortet?
Det är väll inte att man måste börja på ruta noll igen?
Kan jag Ardruino så kan jag AT19SAM7S128?
sneaky
Inlägg: 1621
Blev medlem: 22 juni 2009, 18:38:42

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av sneaky »

Var kom AT19SAM7S128 ifrån helt plötsligt? Den tillhör en helt annan familj än vad som sitter på en Arduino så nej, det är inte samma sak.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Al_Bundy »

Det finns ju andra AVR kontrollerkort så tänkte passa på och fråga om det är en jätte stor skillnad mellan dessa.
Om man måste börja från totalt noll igen.

Exempel:
Har du lärt dig Java så har du lärt sig syntaxen på C++.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av sodjan »

> så länge signalerna från I/O är rätt och det gör man via programmera.

NEJ! När jag säger att signalerna passar så menar jag de *elektriska* parametrerna.
D.v.s om det är 3.3V, 5V, 12V eller något helt annat. Om det är "open kollektor"
på givare t.ex (inte ovanligt, och nej, jag tänker inte förklarar vad det är här,
det är väldigt enkelt att googla upp).

Sedan, när man är säker på de elektriska parametrerna, så kan man börja
fundera på de mer programmeringstekniska sakerna. D.v.s hur den aktuella
prylen "talar" med omgivningen. Och där kommer programmeringen av
t.ex Arduino in i bilden.

> ...och AT19SAM7S128 kortet

Och vad 17 är *det* med detta att göra? Är inte det något ARM baserat !?
I så fall har det inte mycket gemensamt med AVR, även om de råkar
komma från samma leverantör (Atmel).

Det var rörigt nog när du envisades att blanda ihop AVR och PIC, men nu
är det en tredje arkitektur med "på banan". Spännande... :-)

> Det finns ju andra AVR kontrollerkort...

Ja, men då har de inte en ARM processor utan en AVR...
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Al_Bundy »

Okej. Då vet jag.

Finns det andra kort på marknaden som har likheter med Ardruino när det gäller användarvänlighet?
Användarvisningsbild
Wedge
Inlägg: 1026
Blev medlem: 8 juli 2012, 17:33:33

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Wedge »

A-R-D-U-I-N-O.
Användarvisningsbild
AndLi
Inlägg: 18419
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av AndLi »

Al_Bundy skrev:Okej. Då vet jag.

Finns det andra kort på marknaden som har likheter med Ardruino när det gäller användarvänlighet?
Vi har ju alltid BasicStamp serien, men då är det basic och inte C

Sen har parallax också en Java version.

http://www.parallax.com/tabid/121/default.aspx

Men idag är nog arduino populärast bland nybörjare...
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av Al_Bundy »

Men vad är populärast för dom som har haft många år på nacken när det gäller att styra kontrollerkort?
sneaky
Inlägg: 1621
Blev medlem: 22 juni 2009, 18:38:42

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av sneaky »

Hade du inte alldeles nyss bestämt dig för samt beställt en Arduino? Nu vill du byta till andra lösningar? Har du ens provat att skriva en rad kod ännu? Läst någon dokumentation? Googlat på något av det som sagts i tråden hittills?
EinarEnfas
Inlägg: 166
Blev medlem: 14 september 2012, 21:19:15

Re: Vill lära mig styra sensorer och elmotorer via datorer i

Inlägg av EinarEnfas »

Känner du att Arduino är för simpel för dina behov?
Skriv svar