Servo zonder zender aansturen dmv stroompulsen...

Discussie in 'Model elektronica' gestart door corvl, 24 okt 2012.

  1. TheNorb

    TheNorb verslagschrijvers

    Lid geworden:
    25 aug 2010
    Berichten:
    741
    Locatie:
    Borne
    ¨
    ik zou gewoon beginnen met een beetje uitgangen aan te sturen en een klein beetje logica misschien erbij te doen. Aldoende word je steeds wijzer... Het hele boek doorlezen lijkt mij niet handig....

    Programmeren is net als fietsen: je leert het niet door erover te lezen, maar door het te doen :yes:!
     
  2. corvl

    corvl verslagschrijvers

    Lid geworden:
    6 sep 2002
    Berichten:
    2.592
    Locatie:
    Tirol -Oostenrijk
    Maar helaas zit ik niet zo in elkaar , voordat ik iets doe wil ik eerst weten waarom ik iets doe. Als ik iets maak , dan wil ik eerst de techniek erachter begrijpen voordat ik er mee aan de slag ga....

    Tja , slechte eigenschap zeker :rolleyes:

    Dat C++ boek wordt niet gelezen , maar bestudeerd ;)
     
  3. Electric

    Electric

    Lid geworden:
    20 okt 2009
    Berichten:
    290
    Locatie:
    Amsterdam
    Als je vanaf het begin wilt beginnen en wilt weten waarom iets zo gaat is het toch beter om met een Assembler-taal te beginnen.
    En zoals Dirk terecht al opmerkte is dit het makkelijkst te debuggen.

    Deze taal kent maar 35-commando's en is dus het makkelijkst te doorgronden, echter zal je dan met een PIC(van Microchip) oid. moeten gaan werken.
    Ook kent deze taal geen IF-THEN-ELSE statements, maar dit kan soms ook lastig zijn.
    C++ maakt dingen soms alleen maar onduidelijker(onoverzichtelijker).
    Ook heb je met een PIC alleen de chip maar nodig(+ een paar rand-onderdelen) en niet gelijk zo'n printje met onderdelen die je niet gebruikt.

    Dus, neem gewoon een pic-je. Bemonster een ingang en tel het aantal pulsen die binnenkomen.
    Op basis van het aantal pulsen stuur je dus de motor(met bv. een FET) voor een x-tijd aan.
    Dit programma is zeer simpel en zal niet veel programmaregels kosten.

    M.Vr.Gr. Eric.
     
  4. TheNorb

    TheNorb verslagschrijvers

    Lid geworden:
    25 aug 2010
    Berichten:
    741
    Locatie:
    Borne
    ?

    Er zijn juist 'hogere' talen ontwikkeld om het programmeren makkelijker te maken. Ook al heb je een beetje stukje software, bij 100 regels assembly is het al snel spaghetti-code.... Dat krijg je omdat de taal geen IF-THEN-ELSE kent, alleen maar Jumps/JumpToSubRoutines

    C/C++ staat bekend om zijn snelheid/effectiviteit tov assembly als je het vergelijkt met bijv JAVA. JAVA is erg traag en ineffectief...

    Niet goed gelezen, Cor heeft zijn starterspakket al... (Gelukkig:thumbsup:), want nu hoeft hij alleen maar ongeveer te typen:

    Servo CorsServo;
    CorsServo.attach(15); // servo op uitgang 15

    CorsServo.write(0); // servo de ene kant op
    delay(3000); // wacht even
    CorsServo.write(180); // servo de andere kant op....
    delay(3000); //wacht even

    dat is toch niet zo moeilijk?


    Ik hoop / denk dat jij een grapje maakt... Anders dan vraag ik mij af of jij wel weet waar jij over typed... Even een pulsje tellen in assembly is niet eenvoudig. Tevens werken servo's met een PWM-signaal, dat houdt in dat die timing best wel exact moet zijn.
     
  5. corvl

    corvl verslagschrijvers

    Lid geworden:
    6 sep 2002
    Berichten:
    2.592
    Locatie:
    Tirol -Oostenrijk
    De beginvraag om een servo dmv een druktoets te kunnen bedienen is al z'n doel voorbij gegaan. Ik wil dit Arduino programmeren graag onder de knie krijgen omdat ik enorm veel mogelijkheden zie voor andere projekten. Die servo aansturen, dat wordt nu maar een bijzaak.

    ..... ben braaf elke avond een paar uurtjes aan het studeren ...... voel me weer 18 :p

    Cor
     
  6. Electric

    Electric

    Lid geworden:
    20 okt 2009
    Berichten:
    290
    Locatie:
    Amsterdam
    Ik kan hier maar één ding op zeggen.

    Doe wat je niet laten kunt.

    Gr. Eric.
     
  7. Baggeraar

    Baggeraar

    Lid geworden:
    31 jan 2010
    Berichten:
    15.448
    Locatie:
    H&NF
    NOU nou niet zo negatief.

    Eindelijk iemand die niet alles tot aan de punten en komma's voorgekauwd wil hebben (kijk eens naar alle voerboot vragen), is het weer niet goed.

    Cor succes er mee.
    Ik heb na veel proberen (zeker geen studie) ook mijn PIC naar mijn zin werkend.

    Ik moet zeggen hoe verder je je er in verdiept hoe meer toepassingen je gaat "zoeken" om ook in die PIC te verwerken.

    Dat is toch best leuk.
     
  8. corvl

    corvl verslagschrijvers

    Lid geworden:
    6 sep 2002
    Berichten:
    2.592
    Locatie:
    Tirol -Oostenrijk
    :thumbsup:
     
  9. TheNorb

    TheNorb verslagschrijvers

    Lid geworden:
    25 aug 2010
    Berichten:
    741
    Locatie:
    Borne
    ook

    Dat vind ik ook!

    Een PIC-je is (naar mijn mening) weer één stap verder dan een Arduino-tje. Hier heb je alles klaar (hardware, software en ontwikkelomgeving). Wat wil je nog meer? Spanning erop en experimenteren maar!

    Cor, succes!

    :proost:
     
  10. Electric

    Electric

    Lid geworden:
    20 okt 2009
    Berichten:
    290
    Locatie:
    Amsterdam
    @Baggeraar
    Het afkraken van mijn advies zorgde voor de negatieve reactie.
    Als Cor graag met de Arduino verder gaat houd ik hem niet tegen.

    Wat ik bedoelde is dat als je wilt weten hoe iets werkt en de techniek erachter wilt begrijpen(dat is volgens mij wat Cor schreef), het naar mijn idee handig is om te weten hoe een microcontroller denkt en dus wat er in zijn "hoofd" gebeurt.
    Een machine(hogere)-taal gaat hier aan voorbij.

    Iedere microcontroller heeft een zogenaamde Instructie-Set.
    Welke programmeer-taal je ook gebruikt de processor kent alleen deze taal.
    Als je dus een programma in C+(+)/C18 schrijft zal de compiler/assembler deze taal omzetten naar de taal van de chip.
    Kijk maar naar de listing-file.
    Van dit ge-assembleerde bestand wordt dan een HEX-file(oid) gemaakt en deze kan dan in de chip worden geschoten.
    Ook voor een pic kan je een programma in machinetaal schrijven.

    Als ik naar de instructie-set van de chip van een arduino(atmega) kijk dan heeft deze 145-commando's, dit zijn er dus 100 meer dan van de pic.
    Naar mijn bescheiden mening is het dan logisch dat de pic makkelijker is om onder de knie te krijgen.

    Ik geef toe dat assembler soms zeer lastig is om het overzicht te bewaren.
    Een machine-taal is erg handig om programma's snel op te zetten.

    M.Vr.Gr. Eric.
     
  11. Volhout

    Volhout

    Lid geworden:
    23 jul 2008
    Berichten:
    912
    Locatie:
    Twente
    servo

    Ik kom een beetje laat in de discussie. Dus als mosterd na de maaltijd.

    Er is een systeem dat op engelse scholen gebruikt wordt om kinderen te leren. Dit is ook heel geschikt om jouw servo project mee te doen.

    PICAXE

    Ze hebben zelfs een versie die HW compatibel is met arduino. Maar het systeem is echt super simpel. Voor zo'n 10 euro (en een gratis ontwikkelomgeving) kun je jouw project al doen. Het is echt veel simpeler. Het enige "probleem" wat er in zou kunnen zitten is dat de resolutie van de servo commando's maar 255 stappen is. Als het heel nauwkeurig moet zijn, is dat misschien niet genoeg.

    website
     
  12. corvl

    corvl verslagschrijvers

    Lid geworden:
    6 sep 2002
    Berichten:
    2.592
    Locatie:
    Tirol -Oostenrijk
    @ Electric: Dank voor de extra info , erg interessant. Op zich geef ik je gelijk helemaal aan het begin beginnen voor mij het meest interessant zou zijn. Ik ben nu al redelijk op weg in het "grote C++" boek en langzaam gaat het vooruit. Ik denk dat als ik dit een beetje onder de knie heb hier alles mee kan doen wat ik ga willen.

    @Volhout: Dat ziet er erg interessant uit , als ik dat nou eens een week of 3 geleden had geweten, dan had ik me waarschijnlijk niet met Arduino bezig gehouden.

    Cor
     

Deel Deze Pagina