This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
berend [2019/03/08 10:36] – wrusman | berend [2019/04/16 15:42] – [Wat krijg je als je meedoet aan de workshop :] wrusman | ||
---|---|---|---|
Line 2: | Line 2: | ||
Het lasergesneden houten looprobotje \\ | Het lasergesneden houten looprobotje \\ | ||
+ | |||
+ | De oorsprong van deze robot is [[https:// | ||
+ | De tekeningen die je daar kunt genereren heb ik aangepast aan de MG90s servo' | ||
+ | |||
{{: | {{: | ||
- | Wat krijg je als je meedoet : | ||
- | | + | ==== Wat krijg je als je meedoet aan de workshop : ==== |
- | * Arduino Nano Strong | + | |
- | * 4 MG90S Servo' | + | |
- | * HC-SR04 ultrasone afstendmeter | + | |
- | * batterijhouder | + | * Arduino Nano Strong |
- | * verbindingsdraden | + | * 4 MG90S Servo' |
+ | * HC-SR04 ultrasone afstendmeter | ||
+ | * beetje houtlijm | ||
+ | * 10 schroefjes voor het vastzetten van de arduino, de servo' | ||
{{: | {{: | ||
+ | |||
+ | ==== zelf meenemen : ==== | ||
+ | |||
+ | * Een lang Micro USB snoer | ||
+ | * Een laptop met werkende arduino suite (regel dit van tevoren!) | ||
+ | * Extra dingen die je op of in Berend wilt plakken / lijmen / laseren / whatever | ||
+ | * Optioneel Een powerbank of andere batterij als je hem meteen los wilt laten lopen. De arduino slikt 7-12v via de power connector of 5v via de usb plug (misschien goede opties : [[https:// | ||
+ | |||
+ | ==== Wat houdt de workshop in : ==== | ||
+ | |||
+ | Tijdens de workshop krijg je uitleg over de verschillende componenten die gebruikt worden, bouw je het robotje en krijg je voorbeeld programma' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==== Kosten : ==== | ||
+ | De kosten (opgeteld van hierboven) voor de onderdelen zijn afgerond 12,- per deelnemer\\ | ||
+ | Voor niet-deelnemers geld er een toeslag van 10,- | ||
+ | |||
+ | ==== Drivers : ==== | ||
+ | Er is een grote kans dat Mac en Windows gebruikers extra [[https:// | ||
+ | |||
+ | === Code === | ||
+ | basis code voor lopen : | ||
+ | < | ||
+ | #include < | ||
+ | |||
+ | Servo lefthip; | ||
+ | Servo leftfoot; | ||
+ | Servo righthip; | ||
+ | Servo rightfoot; | ||
+ | |||
+ | |||
+ | void setup() { | ||
+ | lefthip.attach(2); | ||
+ | leftfoot.attach(3); | ||
+ | righthip.attach(5); | ||
+ | rightfoot.attach(4); | ||
+ | lefthip.write(90); | ||
+ | leftfoot.write(90); | ||
+ | righthip.write(90); | ||
+ | rightfoot.write(90); | ||
+ | } | ||
+ | |||
+ | |||
+ | void loop() { | ||
+ | stepforward(10); | ||
+ | delay(10000); | ||
+ | } | ||
+ | |||
+ | void stepforward(int steps) | ||
+ | { | ||
+ | moveServo(rightfoot, | ||
+ | moveServo(leftfoot, | ||
+ | |||
+ | moveServo(lefthip, | ||
+ | moveServo(righthip, | ||
+ | |||
+ | for (int x=0; x <= steps; x++){ | ||
+ | |||
+ | moveServo(leftfoot, | ||
+ | moveServo(rightfoot, | ||
+ | moveServo(leftfoot, | ||
+ | moveServo(rightfoot, | ||
+ | | ||
+ | moveServo(righthip, | ||
+ | moveServo(lefthip, | ||
+ | | ||
+ | moveServo(rightfoot, | ||
+ | moveServo(leftfoot, | ||
+ | moveServo(rightfoot, | ||
+ | moveServo(leftfoot, | ||
+ | |||
+ | moveServo(lefthip, | ||
+ | moveServo(righthip, | ||
+ | } | ||
+ | |||
+ | moveServo(leftfoot, | ||
+ | moveServo(righthip, | ||
+ | moveServo(lefthip, | ||
+ | moveServo(rightfoot, | ||
+ | |||
+ | } | ||
+ | |||
+ | |||
+ | void moveServo(Servo servoName, int oldAngle, int newAngle) | ||
+ | { | ||
+ | if (newAngle > oldAngle){ | ||
+ | for (int x=oldAngle; x <= newAngle; x++) | ||
+ | { | ||
+ | servoName.write(x); | ||
+ | delay(10); | ||
+ | } | ||
+ | } | ||
+ | if (newAngle < oldAngle){ | ||
+ | for (int x=oldAngle; x >= newAngle; x--) | ||
+ | { | ||
+ | servoName.write(x); | ||
+ | delay(10); | ||
+ | } | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ |