Hoi,
ik vroeg me zo af welke controller bij jullie de voorkeur heeft om in te bouwen in een wandvolgende robot. Het aantal sensoren is 4 (2x analoog en 2x digitaal). De code zal wel iets groter uitvallen dus met 8kb zal ik er waarschijnlijk niet komen.
Enige vereiste is dat ie niet te traag mag zijn, I2C moet kunnen en programmeerbaar zijn in bascom.
welke zijn jullie ervaringen ?
groeten
ATmega168 of ATmega88 of etc
Waarom groter als 8kb voor een simple wandvolg robot? Het is een kwiestie van juist programeren!
Robin
Ja tuurlijk wel, maar hij heeft een aantal 'wandvolgende situaties' die appart moeten aangepakt worden. dan lijkt 8kb me niet voldoende
flipflop
"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
Robbertbd
robotica rules :D
voor alleen wand volgen heb je bij lange na geen 8 k nodig.
voor een wand volg robot kan je de meeste microcontrollers wel gebruiken. zo veel reken kracht heb je daar niet voor nodig. als er voldoende pinnen aan titten ben je een heel eind.
een mooie PIC is de 16F648 of een wat grotere de 16F877A.
als je een snelle grote en uitgebreide wil moet je de 18F4550 nemen maar dat heb niet echt nut.
Robbert
[Bericht gewijzigd door Robbertbd op (39%)]
Ja, maar het is niet 'stomweg' wandvolgen, het is links of rechts wandvolgen, er komt een bumpersensor in , en echt, ik kan mij niet voorstellen dat ik ZEKER genoeg ga hebben aan 8k.
Weet overigens iemand een stukje code staan die me al wat op weg kan helpen ?
Robbertbd
robotica rules :D
die bumper sensor is twee regels code.
en wanden volgen links rechts is ook zo gebreurt.
heb je enige ervaring met microcontrollers, of met programeren?
Robbert
Ervaring met programmeren heb ik bijna 15 jaar
Heb een 2 tons automatisch weegtoestel lopen met een 8535 en dat werkt perfect, en nog een aantal 'projecten', en met de ervaring die ik daar opdeed weet ik dat je altijd code toevoegd en zelden verwijderd.
Ik wil em wat meer intelligentie meegeven dan juist stom wandvolgen, door rekening te houden met de snelheid van de wijziging van de sensorwaarden. Als van wandvolger links bv de verandering van het signaal snel word, dan moet ie waarschijnlijk om de hoek en sneller naar links bijsturen dan wanneer de waarde langzamer hoger word, dan rijd hij gewoon van de muur weg.
Zo'n zaken. Weet niet goed hoe ze te programmeren ,dus nogmaals, liever ruimte genoeg dan tekort, dus... hopelijk is dat duidelijk
probeer het uit, en kom er achter dat voor je 8K vol hebt, je heel wat lijntjes code heb geprogrammeerd.
hoe hoger de programmeertaal is welke je kiest, hoe groter de geproduceerde machinetaal word, dat ben ik het met je eens.
maar man, 8K voltypen, dan heb je een flink partijtje zitten programmeren.
veel code is voor iedere bot weer niet zo universeel, of het is net niet wat je hebben moet. ik geef de voorkeur aan zoveel mogelijk zelf proggen. is in sommige gevallen nou eenmaal niet haalbaar, en dan ga ik pas code van anderen gebruiken.
zelf proggen geeft ook dat je de systemen waarmee je werkt beter snapt.
dan nog, hoe beter je je programme vormgeeft (wat in feite betekend, denk er vantevoren eens goed overna, en begin niet meteen klakkeloos met typen) hoe efficienter de code, en hoe kleiner de geproduceerde machinetaal.
die snelheid zou ik me niet zo druk over maken. het gemiddelde uCtje kan werken met 8/16 Mhz. bedenk eens dat dat 8 tot 16 MILJOEN klokpulsen in de seconde zijn.
4 sensortjes. ik zou eens beginnen met een systeempje op een zo laag mogelijke klokfrequentie (1, 2MHz). gewoon eens om eens te proeven wat het doet. Ik denk dat je versteld zal staan 
Oh, nog dit,
mijn 'weegsysteem.bas' was helemaal niet zo groot, helemaal niet zo heel veel werk en toch is het bestand bijna 4kb groot...
klein is fijn
Moderator
Op 3 februari 2008 16:47:31 schreef nestor0973:
mijn 'weegsysteem.bas' was helemaal niet zo groot, helemaal niet zo heel veel werk en toch is het bestand bijna 4kb groot...
Als je voor een weegschaal 4kB aan code nodig hebt dan moet het wel een heel geavanceerd weegschaaltje zijn. Ik kreeg een complete klok in bascom onder de 1kB..
Robbertbd
robotica rules :D
4KB voor een weeg schaal?
je moet trouwens kijken naar het formaat van je hex bestand en niet van je bas bestand.
heb je je besbatand nog?
wil hem wel eens zien 
Weegschaal, calibreerbaar met 5 verschillende 'weegschalen', on the fly calibreerbaar, werkend met een 4 rijig LCD en bedienen met een l/r encoder met ingebouwde drukknop. toch even iets anders dan een klok die de huidige tijd toont :s
Op 3 februari 2008 16:55:20 schreef Robbertbd:
4KB voor een weeg schaal?
je moet trouwens kijken naar het formaat van je hex bestand en niet van je bas bestand.heb je je besbatand nog?
wil hem wel eens zien
man jullie houden me echt wel voor een steenezel.
flipflop
"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
Formaat van je hex bestand zegt nog helemaal niks (ik ga er vanuit dat bascom IntelHex oplevert). In zo'n hex file zit nl nog een heleboel overhead (adressen, checksums, bytecount).
Wat je nodig hebt is een binaire file met de memory image erin. Daaraan kun je zien hoe groot je programma is. Of kijk in de log file welke adres range er gebruikt wordt.
Maar goed, ik kan me voorstellen dat je voor de toekomst voorbereidt wilt zijn. Dus gewoon even bij Microchip, Atmel ed in de vergelijkingstabellen kijken. Of kijk bij voti.nl in het lijstje van pics. Weet je gelijk wat het kost.
Robbertbd
robotica rules :D
als je aan de pic's gaat met oog op de toekomst zou ik voor de 16F877A of de sneller opvolger met usb en dergelijken 18F4550.
voti heb ze allemaal.
Robbert
[edit]
p.s. te laat....
klein is fijn
Moderator
Op 3 februari 2008 16:58:38 schreef nestor0973:
man jullie houden me echt wel voor een steenezel.
Geen steenezel, maar wel iemand die er niet veel tijd in steekt om z'n programma zo efficient mogelijk te krijgen. Je zegt het zelf al, het koste niet veel tijd om te maken. Probleem bij Bascom is juist dat het wel veel tijd kost om het programma efficient en snel te maken.
Op 3 februari 2008 16:58:38 schreef nestor0973:
[...]
man jullie houden me echt wel voor een steenezel.
Is dat de variant die de steen terug kan vinden? 
Ik heb misschien wel een aanrader, een arduino, gewoon voor te testen.
http://www.arduino.cc/en/Main/ArduinoBoardDiecimila
14kb over dus dat zal wel meer dan genoeg zijn.
Het is inderdaad een tijdelijke oplossing maar zo'n ATmega168 kost niet zoveel dacht ik.
En programmeren is ook met iets anders maar wel heel simpel.
Op 3 februari 2008 17:10:57 schreef klein is fijn:
[...]Geen steenezel, maar wel iemand die er niet veel tijd in steekt om z'n programma zo efficient mogelijk te krijgen. Je zegt het zelf al, het koste niet veel tijd om te maken. Probleem bij Bascom is juist dat het wel veel tijd kost om het programma efficient en snel te maken.
Dacht je écht dat ik na 15 jaar nog niet doorheb hoe je effeciente code ineen steekt? komaan zeg !
Met 'niet zo heel veel werk' kon ik ook bedoelen dat er meer van die kb's werden opgeslokt door de info die moest worden getoond op de lcd. En das eenvoudig te programmeren. Tuurlijk vergt het effecient programmeren van een robot constant trial/error en dus veel tijd.
Los daarvan, ik bekijk even die arduino, dat lijkt me wel wat. Vooral die USB . De robot gaat 300 kg komen te wegen en dus zal ik em niet zomaar even gaan flashen in de logeerkamer
met een lange USB kabel lijkt dat handiger.