robotbygge "2"

Robot, CNC, Pneumatik, Hydraulik, mm
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

robotbygge "2"

Inlägg av mullemeck »

Hej!

Jag ska bygga en robot som projektarbete. Jag hade tänkt bygga en sexbent lite insekt som går med hjälp av tre st servo motorer.

tanken är att den ska kunna gå runder själv och ha någon form av sensorer så att den kan undvika hinder och dylikt.

Vad jag har läst på nätet så skulle en Basic stamp kunna göra jobbet. Men vad jag har sett så är dom svindyra.
Finns det något billigare alternativ? Och hur programerar man dem. Vilket språk?

/Mvh
MulleMeck
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Går väl bra med vilken microkontroller som helst, tex PIC, AVR, Basic Stamp.
Vet inte hur det är med PIC, men de språk jag vet att AVR-processorena går att programmera med är assambler, C och basic, kanske finns något mer också.
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

Inlägg av mullemeck »

okej.
Desvärre så har inte jag så mycket kunskap om varken programering eller microcontrollers. Men det ska nog lösa sej.
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

När det gäller priset för själva chipet så är nog PIC det billigaste alternativet, men att lära sig PIC-assembler som första programmeringsspråk är nog ingen vidare ide tror jag.

PIC går att programmera i assembler och C, fast det finns så vitt jag vet inte någon gratis C-kompilator som funkar riktigt bra. Det finns SDCC, men den tröttnade jag på efter att ha fixa ett par buggar och hittat fem till :)

Och just det, JAL. Ett språk som bara finns för PIC. Har aldrig använt det själv, men det kan vara nåt att titta på kanske.

http://www.voti.nl/jal/

Finns även lite intressanta länkar där tror jag.
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Assambler till PIC är väl ändå knappast svårare än till någon annan microcontroller (eller?). Det ända som skiljer det åt på olika MC är de olika kommandona, sen så kanske inte registerna heter samma sak, eller inte finns lika många, men lär man sig assambler till en MC, så brukar det inte vara några problem att lära sig det till yerligare en.
Lärde mig assambler till HC11;an först i skolan och sedan lärde jag mig det till AVR hemma, och det tog ungefär ingen tid att byta där i mellan.
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

Inlägg av mullemeck »

Jag har anog tänkte att använda mej an en AVR. Vad jag har sett så kan man få en sån för en femtiolapp.

undrar lite hur man kopplar en servo till dem och lite om programeringen.. Det kvittar mig vilket språk det är, bara det finns hjälp att finna på nätet.
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Börja med att dra hem AVR-studio 4.nånting, finns på www.avrfreaks.net.
Det är en simulator för AVR-processorer, programmen skrivs i assambler i den och sedan kan du testa programmet på datorn steg för steg och se vad som händer. Allt som man egentligen behöver veta för att kunna använda assambler står i databladet för varje avr, alla kommandon och vad dom gör mm.
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

Inlägg av mullemeck »

okej. nu har jag fått hem avr studio 4.

Då är det bara till å klura ut hur det fungerar..
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Du startar det, klicka på "Create New Project", skriver in namn på det, klickar "next", väljer "AVR-Simulator"->tex "AT90S2313", och sedan är det bara att börja skriva!
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

Inlägg av mullemeck »

jo så långt har jag kommit.. men sen vet jag inte alls vad jag ska skriva.
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

mullemeck skrev:jo så långt har jag kommit.. men sen vet jag inte alls vad jag ska skriva.
Du måste nog läsa på lite innan du kan börja koda! En bok som kan vara bra är "Programming and customizing the avr microcontroller" av Dhananjay V. Gadre. Ladda även hem databladet från Atmels hemsida, www.atmel.com.

En annan bra sak kan vara att du skriver koden i C istället. Det finns en gratis kompilator som jag brukar använda som heter WinAVR, den hittar du här http://www.avrfreaks.com/Tools/showtools.php?ToolID=376. Det kan vara lite klurigt till en början eftersom man måste göra en "makefile" för varje projekt, men det finns säkert någon guide man kan hitta på google =)

/Johan
Användarvisningsbild
EagleSpirit
Inlägg: 1288
Blev medlem: 27 maj 2003, 23:15:48
Ort: Västerås
Kontakt:

Inlägg av EagleSpirit »

det är bara att börja läsa på den här sidan http://www.avr-asm-tutorial.net/avr_en/index.html

nu kunde jag PIC när jag började med AVR men den är jäkligt bra. Där står också sånt om register och sånt som är grunden för typ alla assembler språk.

men om du ska göra en robot vet jag inte om det skulle vara enklare med BS faktiskt. Mycket enklare att ändra i programmet. I assembler måste du typ skriva om hela programmet om du vill göra om något. BS kostar ju ca 500kr.
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

Inlägg av mullemeck »

jo BasikStamp är nog lättare. Men om man jämför en avr för ca 50:- och en BS för 500:- så är det nästan värt lite extra jobb

Edit: Eaglespirit handlar inte den sidan bara om assembler? har hört att det ska vara megasvårt.
mullemeck
Inlägg: 1306
Blev medlem: 27 maj 2003, 23:52:06
Ort: Lund
Kontakt:

Inlägg av mullemeck »

Har nu kommit så långt att jag ska införskaffa mig en AVR som själva Hjärnan.

Ett problem som har kommit upp är att en kompis till mig som jag ska bygga roboten med säger att om man kopplar en servo till AVR:en så kommer den ha fullt upp med att skicka pulser till servon och inte kunna göra så mycket annat..

Stämmer detta?
Användarvisningsbild
EagleSpirit
Inlägg: 1288
Blev medlem: 27 maj 2003, 23:15:48
Ort: Västerås
Kontakt:

Inlägg av EagleSpirit »

mullemeck skrev:Har nu kommit så långt att jag ska införskaffa mig en AVR som själva Hjärnan.

Ett problem som har kommit upp är att en kompis till mig som jag ska bygga roboten med säger att om man kopplar en servo till AVR:en så kommer den ha fullt upp med att skicka pulser till servon och inte kunna göra så mycket annat..

Stämmer detta?
heh, ja det är nu det är något enklare med BS2.

Du styr servona med PWM, alltså pulsar ut en signal till dom ganska snabbt. Vet inte frekvensen riktigt. Men iaf, du ställer in en timer för att sköta detta som skapar ett interrupt. När timern räknas så gör du något spännande. (vad det nu skulle vara? Du har ju interruptdelar som sköter ingångarna också). När timerna sedan har räknat klart så hoppar den till "timerinterrupt" delen i programmet och utför det som står där, alltså fixar lite med pulsningen till servona.

Men kom ihåg att en AVR är väldigt snabb. Vid 4mhz så hinner den ungefär 4 miljoner instruktioner varje sekund. Det betyder att du tom kommer få göra pauser med flera tusen instruktioner mellan varje förändring i pulsen.
Skriv svar