Hjälp med val av mikrokontroller till kommande projekt

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
stefanden
Inlägg: 287
Blev medlem: 30 augusti 2011, 23:42:34
Ort: arvika

Hjälp med val av mikrokontroller till kommande projekt

Inlägg av stefanden »

Som rubriken lyder skulle jag behöva lite vägledning i denna djungel av olika controllers, jag har ett kommande projekt och har tänkt att en mikroprocessor kan nog vara vägen att gå.
Tanken är att http://elektronikforumet.com/forum/view ... =3&t=58634 kommer att få bensin motor och hydrauldrift... Det jag till att börja med måste kunna sköta är ju elventilerna till hydrauliken samt är tanken att det skall finnas en elektronisk varvtalsreglering på bensin motorn liknande på tex grävmaskiner, använder man någon funktion ligger motorn på ett valbart varvtal och använder man ingen funktion under ett antal sekunder går den ner på tomgång. Dessa två funktioner är det tänkt att jag vill kunna sköta till att börja med och det kommer att köras via en RCkontroll till att börja med, så till själva frågan vilken Controller borde jag satsa på mina förkunskaper i programmering är = 0. Har kollat lite på arduino och när jag har kollat lite youtube tutorials så känns det som något jag faktiskt skulle kunna sätta mig in i MEN är det rätt väg att gå det är här jag vill ha lite hjälp för/nackdelar jag vill även ha expansions möjligheter förframtida behov. Hoppas ni orkar läsa hela inlägget,jag tror att det kan bli ett roligt projekt =)

Mvh Stefan
Användarvisningsbild
Icecap
Inlägg: 26650
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Hjälp med val av microkontroller till kommande projekt.

Inlägg av Icecap »

Om det du vill bygga är en enhet som håller ett visst varvtal på en motor är det fler steg:
* Mekanisk. Du måste ha något som gör om elektriska signaler till en mekanisk gaspådrag. En del väljer RC-servo men det finns andra lösningar.
* RPM-signal. Du måste ha ett stabilt signal från motorn som ger RPM. En puls per varv duger synnerligt fint, kan vara en magnet på något roterande, "sniffning" på tändningen eller liknande.

När detta är avklarat är resten inte helt lika enkelt...

Att ha en ingång som - när den aktiveras - betyder "gå till arbets-RPM" är inget problem alls, en time-out på den fixas i mjukvaran, inget problem alls.

Regleringsloopen kan vara lite besvärlig att få till utan att det börjar oscillera men det ska gå. En PI eller PID-reglering är ganska enkel att få till att fungera.

Och sedan är det valet av mikroprocessor (µC)... Jag föredrar PIC av en del anledningar och vad du än väljer kommer du inte förbi att skiten måste programmeras!

Dels måste programmet laddas in i kretsen, där finns det olika lösningar, t.ex. PICKit3 (73-344-56) för PIC eller AVRISP mk2 (73-680-04) för AVR. Dessa enheter är såklart såna man återanvänder till projekt efter projekt.

Man kan också köpa en Arduino om man gillar att köpa dyra processorer, de är ju bara en AVR-processor med en bootloader, man använder alltså en inbyggd programmeringsenhet till varje projekt istället för att ha en "till labbet". Sedan är det vissa saker med Arduinons programmeringssätt som ger problem men det är en bisak.

Men för dig är det ett krux: "mina förkunskaper i programmering är = 0"
Detta är helt oberoende på om du använder PIC, AVR ("ren krets" eller Arduino) eller annan µC och det kommer att kosta dig en hel del tid innan du får spikat detta. Och kom ihåg: Arduino är inte lättare att skriva program till om man inte har någon aning om hur strukturen i ett program ser ut och inte heller har planering av vilka funktioner som ska finnas.

Det jag omedelbart ser behövs är:
* En varvräknarfunktion. Den kan skapas vid att använda en Capture funktion som har en klocka som räknar hela tiden. För varje puls som kommer på en ingång "låser" den klockans tid och signalerar "Hoppla, det där hände igen" och då tar man hand om det programledes.
A: Diff_Tid = Tid_Nu - Tid_Förrut.
B: Tid_Förrut = Tid_Nu.
C: RPM = <En konstant> / Diff_Tid.

* En timerfunktion. Ska hålla koll på time-out av arbets-RPM samt kunde signalera om det inte kommer RPM-pulser (motor stoppat).

* En input-funktion som kan ange om det ska vara arbets-RPM eller vilo-RPM.

* En regleringsfunktion. PI eller PID skulle klara den delen. Låter avancerat men är ganska enkelt i verkligheten. Men det kan vi ta när det blir aktuellt. Den använder det uppmätta varvtal (RPM) och jämför med önskat varvtal och reglerar därefter.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av blueint »

Tips: Skaffa en bok om programmering i C gärna med tillämpning på mikrokontrollers. Så lär det gå smidigare sedan.
stefanden
Inlägg: 287
Blev medlem: 30 augusti 2011, 23:42:34
Ort: arvika

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av stefanden »

Som du säger Icecap så självklart för att tex hålla ett stabilt varvtal så behövs ju självklart att flera olika steg, angående RPM signalen på motorn hade jag som du säger tänkt att endera "sniffa" på tändningen eller använda en "hallgivare"? Tänker mig liknande som på bilmotorer och som du redan nämnt till att börja med en vanlig Rc-servo till gasen.
Vad gäller tomgång eller arbetsvarv är tanken att kolla signalen på ingångarna för styrningen av ventilerna.
Som du säger angående microprocessor så ser det ju ut som att mer eller mindre de flesta klarar av mina behov... Det jag tycker känns "simplare" med en arduino är att man slipper pulet med kretskort när det väl är dax att testa systemet, det du kanske måste ha två kort till med arduino kanske man kan få in på ett kort om man designar det själv. jag är dock inte så begränsad av utrymme för tillfället...
Vad gäller programmeringsspråk så känns det som att alla kommer att kännas lika omöjliga till att börja med.
Angående tiden så har jag räknat med att det kommer att ta tid, jag har ju för tillfället ingen "robot" att testa det på heller, jag har å andra sidan bensin motorer att testa det på.
Tanken är att bandvagnen kommer att bli en helt ny "modell" nu, då jag har testat detta bandstället och anser att det funkar tillfredsställande nu, jag kommer nu att göra en mer genomtänkt konstruktion.
Låter det som att jag är helt ute och cyklar eller är jag på rätt spår?
Som du även säger blueint så kan det nog vara en bra början med vettig litteratur att börja med, någon att rekommendera bara så?
Senast redigerad av stefanden 13 januari 2013, 13:03:35, redigerad totalt 1 gång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46978
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av TomasL »

Vart tog menings och stycke-indelningen samt stor bokstav i varje mening vägen.
Orkar helt enkelt INTE läsa igenom det sista inlägget.
Användarvisningsbild
Icecap
Inlägg: 26650
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av Icecap »

stefanden: Får instämma med TomasL, det är OK att stycka upp texten lite...

Nåväl, programmeringsspråket är C i alla lägen.

Att släppa löda kretskort? Nix! Du ska ha ett interface till motorrotationsgivaren och anslutning till RC-servot samt spänningsreglering till Arduinon, alltså kan du likaväl välja en µC med DIL-kapsel och löda allt på ett kort, då släpper du billigare undan (ingen Arduino) och jobbet blir bara obetydligt mer omfattande (en 14-pinnig krets i DIL (vid PIC), 1 kondensator, ett motstånd och en stiftlist extra).

Processorns pris går då från vad en Arduino kostar till runt 25:-. Dock tillkommer det en programmeringsenhet och det är ju en engångskostnad.
stefanden
Inlägg: 287
Blev medlem: 30 augusti 2011, 23:42:34
Ort: arvika

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av stefanden »

Får ursäkta min svenska, kan erkänna att det till 95% är intresset det faller på...

Om jag nu skulle ha något annat än arduion, vad bör jag då gå på för att fortfarande ha möjlighet att bygga ut? Och hur mycket skiljer i "svårighetsgrad" mellan att programmera en arduino och en "vanlig" PIC? För den delen vad är skillnaderna i programmeringen mellan arduino och "vanlig" C?

Vilket motsvarande kitt till arduino skulle du/ni rekommendera? Finns det några färdiga kit att börja med för tex nybörjare med labbplatta, PIC osv?

Jo självklart kommer man ju att åka på lödning av några kort självklart, men när det gällde att sitta på labbplatta kändes arduinon ganska simpel iom att du har "färdiga" utgångar på kortet, som det bara är att dra kablar ifrån när man sitter på en labbplatta.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av sodjan »

> Och hur mycket skiljer i "svårighetsgrad" mellan att programmera en arduino och en "vanlig" PIC?

Just skillnaderna (upplevda eller verkliga :-) ) mellan Arduinos å enda sidan
och "lösa" AVR eller PIC å andra sidan, finns diskuterat i minst ett par gamla
trådar i forumet. Jag gissar att du kommer att få samma svar idag, så de svar
och kommenterar som finns i de gamla trådarna kanske fungerar OK även idag.

Jag har inte satt mig in i just ditt projekt, så jag har ingen direkt åsikt om det...
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46978
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av TomasL »

Personligen, för att du skall tycka det är skojigt, så rekommenderar jag ett PIC32 starterkit tillsammans med ett IO-expansion board.
Då har du möjligheten att börja leka på riktigt, samt programmera i både C och C++.

Det blir lite dyrare än en standard PICKit3, men fasiken så mycket roligare.
nifelheim
Den första
Inlägg: 2490
Blev medlem: 27 mars 2008, 22:31:16
Ort: stockholm

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av nifelheim »

hur många enheter ska du bygga?

om det bara är en, och du startar på en "nollnivå" tycker jag att du skall gå på arduino konceptet.

Det är väldigt enkelt att komma igång, det finns mycket färdig kod, mycket tutorials osv.
Användarvisningsbild
Icecap
Inlägg: 26650
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av Icecap »

Själva programmeringsdelen (alltså skrivning av källkod) blir snudd på identisk! Det enda som skiljer är vad man betalar för.

Programmeringsenheterna (oavsett om det är PICKit eller AVRISP) kopplas till en stiftlist på kretskortet, sedan är resten USB. Kretskortet ska ÄNDÅ lödas, med hylslist för Arduinon, spänningsreglering, sensoringång och RC-servo-anslutning.

Alltså är skillnaden enbart: hylslist åt Arduinon eller en sockel åt processorn?
stefanden
Inlägg: 287
Blev medlem: 30 augusti 2011, 23:42:34
Ort: arvika

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av stefanden »

Okej får ögna igenom lite trådar då sodjan, någon egen erfarenhet? eller kanske redan svarat i andra trådar.

Det där pic32 starter kitet och IO-expansion kortet skulle du kunna länka till någon sida, tror jag har funnit på Elfa men finns ju flera att välja på...

Jag utgår från att det bara är en enhet som skall byggas, om det skulle vara så att det är någon som känner att de skulle behöva en, och är villiga att betala det förmodligen dyra priset iom hydraulik osv så visst. Men utgår ifrån en enhet... Det känns ju som att dokumentation osv angående arduiono finns det gott om på nätet.

Okej inga större skillnader där alltså, det borde rimligtvis inte bli onödigt stora skillnader där heller alltså, men som nifelheim säger iom att jag inte har tänkt mig någon "massproduktion" kommer jag att få ångra att man skulle välja arduinon?

Risken finns ju som det blev med bandstället att man kommer att göra och göra om, visst det kostar men den kostnaden vill jag nog påstå att jag har råd med och jag kommer ju att lära mig på vägen...
Användarvisningsbild
Icecap
Inlägg: 26650
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av Icecap »

Frågan är: kommer du att göra ANDRA saker med µC i framtiden när du är klar med detta projekt?

Lekar man bara och återanvänder samma grejer hela tiden, "bara för att se om man kan bygga xxx" är Arduinon inte det sämste val. Men om man, som i detta fall, ska bygga en grej som sedan ska användas till detta i resten av sitt liv kommer den ju att "försvinna".

Och vill man då bygga andra saker ska man köpa nytt igen och där ser jag Arduinon som en mycket onödig utgift. Och på köpet ska man ÄNDÅ löda ett kretskort med koppling, spänningsreglering osv. för varje projekt som permanentas så då ser jag det som samma jobb att istället ta en µC i lämplig storlek och använda den.

Behöver man få pinnar tar man en µC med få pinnar (PIC finns ner till 6 pinnar till 4,75) och behöver man många tar man en med många pinnar (PIC med 40 pinnar till 17.70). Behöver man mycket tar man en t.ex. PIC32 där det finns mycket minne och hårdvara - och I/O. Men fortfarande är det PICKit3 man använder för att programmera dom.

Ung. samma gäller AVR, dock inte med lika många val av processorer men de finns med mellan 8 pinnar (till 25:-) till 40 pinnar (56.40).

Båda microchip (PIC) och AVR (Atmel) har gratis C-kompiler och allt vad som behövs för att skriva källkod så det är ingen skillnad där heller.

Det jag ser som problem är att Arduinos utvecklingsmiljö gör att man skriver icke-standard C-kod vilket kan bli ett problem om man vill återanvända koden till andra, icke-arduino, saker.
Användarvisningsbild
Melkutt
Inlägg: 1188
Blev medlem: 3 september 2007, 02:02:39
Ort: Gotland/Stånga
Kontakt:

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av Melkutt »

Motsträvig som jag är så tycker jag att Arduino är ett förträffligt val för en hobby nörd.
Att Arduino är dyrare än en lös PIC/AVR och dylikt är sanning med modifikation!
Ett "Arduino Board" typ en UNO, DUE, LEONARDO m.fl är självklart dyrare än en lös µC men en Atmega168/328 med Arduinos bootloader inbrännt fungerar lika bra som en UNO och kostar exakt lika mycket som en Atmega328 utan bootloader inbrännt.

Man kan bränna in Arduinos bootloader med hjälp av tex ett UNO, AVRISP, eller ja i stort sätt vilken programerare som helt som är till AVR.
Sen hur vida språket inte är "standard-C" är en annan femma, är självklart en nackdel om man vill kliva upp till en större eller annan µC familj en dag, men för min egen del som har detta som hobby och lite fritid så passar Arduino som hand i handsken!

Så i mitt tycke är Arduino en bra inkörnings port till µC världen så länge man inte satsar på en karriär inom området, man tröttnar inte lika lätt när man kan få något att hoppa igång samma kväll som man började och inte behöver ödsla timmar efter timmar med att läsa datablad och rycka gråa hår...

Men visst är Arduino så kasst val om man som ni proffs säger att man köper en ny plattform varje gång man gör ett nytt projekt och att man en dag ändå kommer att bygga häftiga och avancerade nasa projekt med massa 32-bitars processorer :badgrin:
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46978
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Hjälp med val av mikrokontroller till kommande projekt

Inlägg av TomasL »

Gällande PIC32 starterkit är ELFA en bra källa, man behöver INTE någon separat programmerare till ett PIC32 starterkit, ej heller någon separat strömförsörjning, i alla fall inte i början, även om en ICD3 och nätdel är att föredra.
Skriv svar